0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-11-27 18:36:26 +00:00
OI-codes/S2OJ/1970/data/seq19.in

3 lines
964 KiB (Stored with Git LFS)
Plaintext

99777 99938
817661692 281602618 681363452 623476077 638390395 205564137 818151515 625190572 413293267 731797387 198004015 781567133 6605403 53257107 658915575 301362253 230022397 729495890 106705888 659977422 76686504 21656086 514848790 870759315 384907182 314437758 241469909 735254421 723454311 756570731 938376928 62146513 193303057 926795078 981512452 372157854 999313155 992139116 934576106 966122641 768753318 741034412 603658790 71871646 27048404 512517438 638583640 486922875 753380597 339665795 804039084 5341597 977239915 258378859 687562322 694927786 373448664 544792150 957134187 683048720 356762801 95126010 869553835 827827158 719751403 962261679 274992932 582004353 747526615 609663232 565585564 63305139 100403392 49444205 826132663 706695194 984621409 563127617 845880868 209012716 875751363 983381326 139252795 962852607 730664117 526818011 283839144 669143599 694347960 646903310 222574733 382776220 446083536 969857732 941044618 159400992 615405479 920819584 729657590 797035453 185155979 443770059 163393896 150767022 710111316 651497547 643982900 368945406 41037578 66675953 515655804 722977396 972253303 471423469 60037177 815874758 277461990 53046979 616465562 291189047 291398745 413987238 42298027 781097494 268732604 455989256 267685247 283384610 113750535 554604917 471431695 972061383 253640657 740312610 885905538 210536245 739768045 235843442 982605738 977330375 14920032 520654224 898105505 371979965 47906590 956861662 501793432 54993833 565974233 388475036 845757072 98184830 246353217 121789121 285008204 775135583 309635632 836048905 254033458 696999316 813122581 33355888 326512486 968494822 430327378 482460704 573113147 258305356 452703953 986657491 20412743 478412986 136512660 150091315 294656134 409783517 821912160 860109849 476362866 511789515 821397768 16308946 179374816 209368198 702852758 737037736 203051919 87067250 407606536 799897543 321651710 451811199 872270136 52701342 701443828 73380382 799756419 879694604 797647752 784561830 532640375 683552744 386044772 823435242 303322734 88667075 147835808 918301504 7802250 245463680 635819829 50997238 968672627 178537693 18035077 197725624 750767207 894105289 688222590 596409654 462000551 794386623 799609509 855864655 531297822 293964406 425898281 39673745 494549443 937686427 592882007 651800218 440284856 216563663 689598129 754058139 41629880 989683396 889910766 114870131 165162992 493307393 277650798 874056131 798503078 135745826 461969130 680315022 44587849 661222320 597339783 939185473 902816491 829850607 251244431 133646362 176135473 904832231 835868786 127221019 1099875 585552180 713648231 543309271 113723972 986788217 997603026 282038639 570928157 547536428 838992448 350655351 591280947 118778032 307256334 99606907 849641314 415754444 77169952 475780655 632011066 995401394 163735402 297065257 604933854 70985891 55580208 702257521 759822304 255952292 484725380 542583109 329129341 403022984 349624145 312444496 714088646 350487965 260297743 735222125 82174226 253125332 841684326 325203365 810390817 878080156 333101942 238731444 605207048 102868943 405522032 942421077 482677485 481168403 953246890 859276152 213719033 165276523 344006593 283637127 872282604 663294498 757097034 605347239 598713950 925014234 835083113 407868758 916082814 203100630 824525426 196292722 596276344 329359513 464211188 573799491 531555328 384104002 481258432 973818633 796643725 816631760 681906896 900469911 981478092 848458858 947970145 859911561 951073828 819909570 169345109 676847083 429025199 202770717 502709469 377411848 634194010 281214116 767871342 537640316 472006398 671938287 686774232 489774131 555786957 910348726 21859380 130365496 715556982 105022193 347747208 515915259 264107337 136320501 495443814 315439976 5446757 812583361 93719975 178166298 113200692 574177251 345059028 63385782 55652858 831954174 498376169 995289826 304083413 987201101 230198110 603374380 258929011 728282174 925939314 183573886 252904380 80582009 423839194 409176398 124508376 862693 549018273 41819162 762681725 839877303 477680710 477530716 78106798 821798393 365964336 755696614 197723980 39529966 633759630 935681126 163513877 724267667 446641272 191370086 378148542 446638525 599602285 886130969 828291237 737623950 636055003 477900256 99160448 833850106 168821667 146585850 140722730 349689626 994590420 97679643 913411985 859993870 497333556 963418235 460632371 816721971 294278254 961938778 911389145 741241597 663797485 918594109 905524239 979323952 653571167 813037705 173921017 875143502 323013486 852989986 505420894 884285235 44783547 255869634 927897089 971302423 230108012 667790346 408568977 22160020 909559388 279849110 135840132 283059611 185054741 885570326 863958144 576171810 68102695 829385796 20794073 341300805 622000377 419592376 53073396 394120472 700840206 404164629 881725000 432114342 721665222 240205306 866534713 802385166 621702296 955882126 533983805 402344186 774932454 98406519 221850780 550210346 380137673 287512359 310770504 448503286 759954141 336021577 158794796 304706368 553461333 489037052 87136508 602416409 768603782 300750886 30763324 820769333 66956105 51124796 65788058 151430904 453251070 116985485 112276258 774435133 242773452 516071766 472817019 696070906 579417698 802496086 470048420 384724548 301553009 383152994 106485555 239154088 323562935 204197842 768276402 732102930 932084093 402435970 3805283 918951963 308395018 685046039 673903843 496913146 796520673 405067996 634880759 501808999 87151972 390596391 133326470 491674787 127165552 519073668 89010942 180242283 541903753 118862143 227326544 468591164 416208579 875619609 827996750 273108930 411105010 606949979 235584558 546524738 853437138 318258532 893107442 453394862 103506054 925407473 724443970 904061206 954166944 813113028 675143226 467838073 648293369 653951032 965084924 703198554 561343254 589510641 472701912 63499120 235092872 822770512 253910222 609445996 792632934 909502540 665542610 457789926 166231136 615494979 989134965 56912571 760912993 863774225 733626846 984575859 951760546 924504444 785262728 594215353 111526773 281511399 376420843 989796480 697463324 538763073 625790516 21144074 612507738 342672222 238239886 587731113 201681753 588852659 339629945 613917484 425333628 821432749 213425418 914133 305346639 58529145 772237308 907683237 512514052 430879168 894726535 289666430 667047958 459165320 838353346 390807626 857073227 275179038 552874616 984926680 284023657 34245151 677884843 697662127 46176998 30931682 359834557 965627793 483962908 212045299 406201336 182058778 281143168 929871737 397159208 908949546 305020612 651135548 698184226 748695221 269350325 93255699 272010161 834391737 172100684 805219853 77163247 920216612 242417277 530228833 898598420 366435380 709740153 709505970 413690031 188118801 252198393 850171813 592653866 786890272 264576924 389432512 13429008 291191168 946147661 575582039 769239115 666394691 854585863 941741136 423848597 306242010 164344652 342537015 562505782 917294597 129588401 739318148 761132871 672054677 339378969 659003356 631896169 82690142 840790308 270927278 248858540 454595714 221476732 612588794 36916085 109814344 24102504 177912305 342664684 873379122 117046182 900155366 586599109 457573832 573503353 212003981 423687294 242302691 562724485 63207842 914272054 548971356 319836732 372950712 452372431 997839166 871943364 115569513 996248473 38131636 700126773 965863579 339189540 541254465 462385903 762310687 62908625 160495883 827757060 119887216 190641843 684814083 320085867 749755295 106658706 631073525 551974099 309645295 98145460 347638157 186039618 725588192 672208561 143277074 638787853 5437699 172611022 607430483 38274734 776915744 496328747 377444680 245369390 218090601 535374874 284215242 966150161 663419320 940492563 509929156 562817003 569043675 307923843 264321892 410118467 118030425 198065686 488150879 121980174 632235995 860452870 716497565 32489602 750688138 851599672 656359622 860021774 141616462 631600704 693770127 604118072 949667407 783648013 151296178 836516880 72681953 167868088 499669037 798440430 601370614 651348515 44849285 865759000 828346837 437361217 711117541 691360181 99915126 20508621 974780210 850855209 360609124 160401146 827060662 919272041 906846030 169291251 99458090 698407922 571531788 892719431 854285466 752839277 666094098 849148914 839921394 967915081 652484871 254013338 131662134 374614417 77692527 361817057 757058096 969055069 537302688 870297080 47434637 703177366 305867319 746208487 836099326 722136780 141213930 897627298 670519908 933090208 91678940 146510557 194119663 496135884 657709230 544956950 944400661 56143131 255382869 995676320 685434455 125578915 503840150 470382581 534879794 679459306 36341246 812060093 199367801 594508928 946654895 842636928 200212373 872772722 920539307 239975424 631102422 195164295 947576957 920573632 637739244 541853049 553936185 193263632 968222725 75486160 913810128 128679326 666163083 431627189 794067693 157879059 758088234 486604633 487017337 228036516 660440464 666017349 635009777 815991566 563226530 740077096 331588014 906264619 786450624 538665991 542847971 534573669 976087243 330828382 154129689 616652933 646877343 234554186 791395721 281760105 64218011 277015369 889697023 136063124 27891789 651901036 355938785 167997699 815571538 422749144 268487286 654442098 867628542 980267339 655044203 758071360 596644655 811744603 965978784 466018464 554300544 865750733 683727184 486198914 286339776 31839482 198744244 854882427 276654846 454296313 554138942 865207908 781053644 739845221 538814787 444063855 19420818 822228304 989287044 461978997 370156249 731055533 743927591 576445298 516477761 176313922 347740986 817955483 862185319 686416026 767971151 695682634 859305921 296853761 209562413 687954672 283919621 806931813 561778337 363410104 636331096 428289413 720195416 652640002 329678517 152461290 284977229 403315846 101070480 729883723 356128369 752232277 886972185 692542446 308942070 291766950 699722601 214903254 104724526 154852503 797313312 545150951 32205711 693378955 625664710 484433051 258941853 42585785 778493501 90407862 47654484 353485117 772462785 120849423 411192239 293966739 794906436 96009333 950643846 950048848 137507601 953107893 738464462 686736845 533247546 70158106 357329878 11329924 87832293 208594990 977200422 879806388 770861988 842445335 980555418 710448902 782087496 588139155 595466351 102834329 700814157 662718013 687445751 322139145 600237032 930700561 886033222 163143525 545319106 668326861 326689331 577020716 703259814 678785399 617056810 213481118 879917196 909009525 911105475 435376211 969420 134782819 473017950 972852138 152159755 249953586 959059321 457021018 542479362 100389452 124038520 434383403 608578647 712427679 73354441 942554915 529507598 39616774 598018542 21407281 663019275 547380605 503676801 152054372 506133789 580635419 377486132 696835808 167326782 158567380 617411206 670631425 348972730 993543336 542547468 611402144 351355457 505116004 551130496 958092980 666473543 496438992 786195997 340598154 447345300 993587837 855245532 859276741 618243168 302795166 963417012 973259858 693221181 716206572 2647299 676422800 892866931 547391145 516980446 336493566 302396943 661021271 135983472 835264996 992750095 657428077 950794606 412043080 143642435 682774925 926632106 430828197 176759577 797440352 775548556 773946215 274934196 335010252 531053164 186357090 836575495 154776487 128823992 668250502 930795863 834393205 719909853 741163585 885943502 268561674 75280463 768852432 241830807 49421579 191452781 932591137 845237290 921085319 64839158 828004570 395924860 680739627 339844450 595483058 880701904 212428734 538626877 859683433 514876953 824770341 972404680 998344956 987904483 785771335 790150566 173811386 83165263 104942246 82138067 641917396 396827157 158702934 478365839 763427946 460230815 704252553 135205320 774050245 471786665 64438561 722994518 388701524 668659390 939328729 917329190 558760929 28586423 805660938 794144531 499715770 182143273 675971539 690614843 571699708 987723728 988894429 955680731 626561791 267065083 514266690 30295843 173369745 713358354 365291273 238977160 533553747 455360982 135952839 25915622 658987266 36598396 274513418 166753774 895540434 99332244 792473531 391949428 37117006 821876226 486125260 643973872 364944760 337911887 632519922 474804007 987879954 913663619 176553819 899701720 531555459 333660393 348942457 5230456 608344827 874531921 417431941 139600490 915914234 160051111 324719040 986320363 989901354 640214670 118747859 825259684 398638117 729789488 557880323 454938966 122595557 93676602 784648141 172605597 758327491 545711118 523353586 79020750 334650806 793501854 160421022 814344079 497693023 898767949 995885027 560280241 160501458 577756472 314254929 554502111 498795262 495562631 641642809 278904454 133426311 37335073 559940087 427320065 879887216 722101823 704448570 57420717 138491939 374089554 619855076 647273014 747742088 353693276 120417167 182122032 270762142 469869841 490337421 637852216 35212686 823606513 827919485 614198435 605532183 570872462 489180895 228182244 97005092 128264308 719735516 998385360 184081698 370389460 525482012 219364223 344929232 630645201 850499004 38563733 470030337 389144262 120361150 423046761 822226168 455546763 55098987 317838568 525495476 377665968 586520724 608157590 37126908 219318248 550192750 89685394 457245681 331383393 784019126 973613908 867053880 967231031 648611854 14940726 425770328 627560054 911314452 342461152 817740408 917416034 740668714 8972225 207154553 134990264 204940962 804843417 70250506 983447912 41324321 707449355 6753976 233568573 45635235 671978738 463551529 261776835 733972256 917225930 439773577 267196113 70278536 187031899 958263808 866772788 455897146 387639565 608333254 251081910 944543031 412694309 273391424 130454735 938819245 920060191 769492557 784336520 788988409 77836090 601246065 283049109 869488236 565799922 329175503 204814337 164806245 194440997 950635281 173093069 67922949 848302969 452951875 731746153 384598058 124269742 899806862 903808784 715102387 309205093 744474673 75311701 95595513 709189811 685970094 217213512 359449001 322518460 224502752 336322609 307213517 611708670 336686200 422381382 104144117 902904389 45741902 969629615 54245951 664249769 101064569 179030918 172865772 23238804 669563303 226287155 837965346 503085103 372478801 18592917 110787070 753292142 669538908 379858283 530731317 469066695 949523390 436923954 875132015 583574640 67617717 474058726 964859001 606821938 809949180 792730592 406432732 283417352 45761213 727669843 248481791 893477978 333677553 277318092 69567439 982356931 55816369 408198094 125381371 585922760 523207827 204436836 799152711 443087115 406285008 550949692 42418691 558308408 817940376 995442624 759052036 264039923 519950657 48347864 930688827 855745660 848967699 260882958 2169369 578797757 80197789 464452373 770838947 997979708 693903359 640656297 294392142 291849580 129091999 439933592 37103196 546017188 467496948 288737968 799253378 480790664 170620254 764912187 40633321 136318430 348710134 272090546 969943422 526366196 710592047 969128524 676638227 384454638 380616319 991133792 445022529 829462022 473314025 318583826 466766372 999445391 277910791 139458797 960768598 405909340 240997577 261670062 454907288 187945592 392250836 578643949 223418530 977534889 281210535 698642389 956794664 69004878 129488404 529719416 758188979 357549327 174486275 700651074 391587261 520728957 764099999 377862294 958325088 564401590 81121393 326490824 281253111 50427376 71469472 711485902 784556920 597750926 279556790 992419525 288884089 482626275 473953415 559550779 249398120 254543940 201572524 791886371 344493048 261207448 609936640 123396210 103590454 227277496 465312661 975071098 212703349 163666200 516627609 704474183 955695991 663974408 551278492 648593406 871080863 468263422 937582934 651336896 53318096 236134260 420911253 134624739 572920005 641623652 5830113 853754306 426126432 588719435 497509812 660786293 327729083 118737209 850068757 604339849 54755881 123140222 380262700 794138691 8712986 273906447 779291744 757603698 968320711 688695517 502957920 380298053 386966985 75919363 817701410 478406934 128421053 598528786 282727751 705555514 889338370 78161268 473493777 268452864 653043506 128467513 126161041 35417144 601800258 484684098 881194683 380105587 119408295 318578906 10119528 30288909 809552539 857526073 330770125 302646397 233943066 470238693 256482498 767449754 971494972 183290618 922710846 795605525 957248881 34343671 140211099 583526115 420501109 445906919 37562294 468545351 885505414 79361216 634064475 785132694 51343823 115744553 728771768 318723844 487302767 58237128 455265917 696620645 904640882 222327842 990217305 355648562 644782692 47936681 811253415 686507820 732991461 936487122 559898537 317529238 667287451 766342603 598914006 138080724 332293774 817214056 938354615 846131942 285399771 28773793 578482192 7493269 971191211 727529166 410364951 733033832 97572380 476301945 152605800 100992371 718211453 239486512 984118374 652135318 562611315 877392516 543686282 105515984 493473899 184028562 523823315 891596232 537463414 930990127 689197108 94682894 56653365 797081850 766628689 47387331 564777547 697591757 874017720 867867299 461824355 557563856 952962187 196486832 921515257 579025955 201360790 25804990 568303232 442635714 120895575 459534783 565546977 220416008 249452328 16960235 616915074 939932625 439349426 36688303 446898072 372040886 953764262 773803940 130947425 491607739 265107966 198059754 103593840 33952467 400255724 227871934 649928351 15035341 502721962 770873100 899694693 940913871 976461375 593916236 135019771 609313111 277345797 714777355 801486260 296416383 496601639 704175313 632399724 922278172 299796429 570412767 261495306 527232518 367276111 871800090 920919680 710041312 64983815 254255751 339702275 282001213 358215271 15281173 33115384 996781458 570141823 995399696 471715352 888387344 927665306 637955132 926918556 176432058 4039465 745845150 998701821 81880128 153618382 492995220 210182951 699896814 48871490 826246607 799115691 671041600 763024593 653878293 954273783 950722268 680762506 578106594 459745023 302159724 980395062 403134505 388958030 500317235 397902512 722040566 438311636 15581618 320702963 746335758 677427264 479819789 203771647 208835767 951089803 564232960 376574544 254336254 12073144 680216526 310107769 415414887 172322776 870162665 999621198 178833125 277687969 46682902 478373951 216946339 961352005 481637943 522260325 479318194 617605461 281309280 629095862 563821160 597848968 942780387 549312933 14028036 839932313 859438334 311117642 758507899 851746795 121184582 383128931 502517219 17637739 464649578 561401115 23975817 672142131 527230094 654637450 35746919 439583740 494343234 343647630 256076695 47428223 14491181 391825280 936532197 933697631 179616567 448172870 539638321 20461034 396882866 991860589 878387445 60393302 861061257 420230665 186775358 935254153 823498333 217578432 623407476 705287239 380381451 165457104 890027316 445157953 307434478 143229222 628902179 322089175 606090934 940349919 800718597 826001273 661349003 848450490 702724208 516316722 267053948 272650948 217033978 489970180 255087175 198560463 630913060 34092113 385922683 316055506 890196696 974854582 725096797 363869696 721698251 277566012 371437803 765861500 572726374 428405207 287832277 395762417 408276245 16331944 161514087 783245038 161240361 798145978 376877472 485794616 696044563 263730666 567303691 220232369 91328806 967624418 254620043 443836210 720072886 601668029 562342811 277581514 1957557 178599880 242456856 856393104 91769930 422950675 909188324 570235470 919810065 675987157 57177703 385798580 591331349 854016526 67050259 966901274 227433839 184790203 402030011 692497521 695092200 18207758 870241814 200769985 279122449 633881843 894408949 748471218 756966674 978459067 343326998 914866085 808291321 278940663 118365689 775064240 574165140 282196541 262781986 366230085 647674240 936218706 149461534 556704649 484093038 90748509 276467733 315292538 420500136 542690024 520037644 904496335 409047901 225231120 604774895 708172553 143215305 353190116 177850979 342691725 800047120 289415584 860812205 920364136 572314829 760234523 864858712 146594056 553517714 546260351 243364261 413981255 183868826 443004754 711814588 846863061 524642977 32577564 611995943 301973297 425360263 782122339 66116706 30997562 213640399 726333847 655059922 388058878 229430212 250731290 303882386 652111033 421184878 200073497 25564547 656360518 305660257 531753514 947972501 622452485 541453018 277806090 112286151 712168336 157006571 96470840 97998463 532933579 148865895 742071028 843255249 796500030 281459776 524900492 981127006 278844887 956948198 627296079 864586132 543144775 626505036 958363727 427372801 630532819 666074303 432563909 830746784 709476527 718882255 610584804 866948598 57698389 390116053 527552595 113444660 976169746 542180942 770117080 321382467 705646801 343060683 847344767 640230592 286937150 985492705 164933842 744987747 973322146 440333741 185516591 364534593 255368377 100476452 790305989 681128459 378868111 701767861 620410421 162370212 593115904 443789123 785031571 303467537 212560540 239893572 215045145 546458514 791189225 163831902 296689469 790596736 898898429 212871733 760125943 591718163 305872308 229767635 734896460 188263712 157142758 414698822 60671260 963216208 294043348 289940841 70095502 571412612 858165141 277474799 463852302 725114202 684153497 606851361 734115366 365231331 42601443 319554736 268648477 740621898 753532255 407066698 759886463 617532627 775319475 76198073 691498197 154471316 936215642 332525298 99666079 535786337 986099659 190430548 508066489 611701593 628398679 952494598 626153945 567098883 157058906 294508021 952499646 260115281 836079936 392754295 753844131 257411300 332062581 940173292 133607381 680077146 522221607 159739081 407794664 338997645 459475956 181469513 239372998 401536323 659497664 672761027 247361272 508018726 114956301 79723211 696926958 162838571 479288586 444687896 308151565 433087811 363815629 596904306 677268990 648648770 807495487 968475609 850576179 689100077 457400593 535983827 684519466 82382056 735142534 705239964 475076041 242600668 380858976 292408604 438556507 637748369 527421576 35782495 355629848 836321496 6804496 109043417 719833901 195110316 270355119 842856319 139245327 979999171 525164878 375380829 690786071 239758251 591731833 262759719 138919712 61296451 2283616 550866249 883609083 902928266 178454694 102799552 299340729 365413873 786597404 518226493 682804050 915404722 506744940 512841665 298233000 452459325 396199092 202091753 902918927 313660718 838883781 961142355 324630064 298163360 670218852 476989054 824540911 837963073 800873804 849378548 711321669 579604306 861851318 547036045 35165636 330940960 685548930 925407592 645290283 362194608 208403369 323130045 602278640 752599847 37195320 513785962 706369897 953261551 981024572 568812005 252169209 635320475 442282442 713075664 956562160 634702188 1710969 373929676 49364279 586628122 336847949 806498788 944245509 267875479 753675585 904370531 108936423 944365341 741858189 94154726 263086168 4605511 252153689 181752473 145089350 486776365 978549790 100395528 610019473 593923968 233789469 735317858 465488725 537456491 246958558 429810263 965993476 904597800 678448160 428088448 221587149 55484934 785664550 771961178 195451795 99969784 759406097 908781086 44551407 890110385 685070500 520341117 68521563 280880052 858182764 352599209 635096478 312758194 795429224 140275303 503901292 872169614 905527225 679025194 958236492 186692305 86791715 776663702 418258688 113488982 836035810 319262233 751137283 491279160 385124757 811122435 998652731 769222010 633456636 373492761 64555385 14986425 472786752 638365120 40454125 512987225 42699562 410278746 400334944 318471 20068938 459437901 232937821 158335652 575807007 233456367 575552333 579131503 73309476 905574433 978200552 628952567 101939779 975762469 953011055 880988765 915154126 49492657 159216993 960434803 525437093 85043205 798144473 109186128 938323563 2746964 321539308 154932415 54691548 531389178 789902094 156290148 213824227 726258094 637909419 580165545 857931009 967447937 343143543 810827333 266100479 553329512 98540459 958947975 742249126 871234888 983804598 25788102 81446547 63535031 691198238 65502542 684566168 339317312 32777849 130265861 47125805 574760844 229257116 867181912 406093583 913079745 598834993 469540443 149868403 188708938 547243579 467619128 246708164 623067761 923475555 911015673 796250051 36576001 441077526 176107459 249529061 330401651 849033321 231004569 452589085 639017809 485041828 631403916 772975981 231585105 195870510 124888668 545330343 727815782 535537905 150653329 881816055 460356901 593003949 724475071 541569242 893586428 829533783 539265256 337808347 719757130 758431475 121423559 973126534 13037830 739537834 400749080 851485686 401777795 621851205 288750610 915041427 781128307 99198138 855361605 266690749 5302390 257435111 469697322 371614999 547543922 424680861 748375251 934269308 88610490 226459461 689628352 685509472 386950598 469950539 86404468 594703141 835735686 812663541 12751942 262362912 367511291 794096985 541730970 965433428 194013893 225278389 804612371 6600718 937041447 463670748 331020891 855023600 100269113 597371 224592109 647048722 708431546 200305073 2447032 833298718 146874305 499313570 377469540 399360809 2277347 229290329 559112046 267706566 961190058 221036449 513364961 604379992 814054108 532755839 490786630 642669230 970496464 978517876 623441244 750975679 761390816 825908383 800921719 470525643 285118360 707532390 655499386 559732533 573156390 474661669 502830670 530615226 166467419 542467313 486351839 743164414 524384490 627574661 379085546 788518516 373790037 729108937 778462237 831278692 867942437 453629372 593340817 712622058 902071712 43965987 974425769 883957625 366759272 947031859 112689813 904925788 389932789 30610957 825539067 832093768 386173251 535870814 475253623 105373294 194126732 542651989 431418098 547620846 589559095 733703377 197719106 110164028 254797624 333921090 559315678 568158500 191131694 737800359 877699758 887664477 188999531 191244509 124074203 986981022 249771526 711251173 310967756 552040913 939711943 994930164 508068051 134787929 767420421 919118423 40313064 990696184 86395192 878648063 65427161 621832240 742919666 319752467 331371027 237461858 951900949 842784006 464318272 642349502 823374265 163834149 180927520 374108117 207535215 801121621 331988427 495913967 275680204 325524219 891785003 186818820 448015325 655612718 579185775 693418725 361251127 585729418 650964128 413102543 638808880 278057198 989724275 288821353 73167060 371174820 696981091 503213184 96034747 792954037 549049773 864017698 931467232 907798326 49219139 40970459 4649351 404556109 755080489 943637926 237669044 167669697 427932987 569173326 100641357 538688559 465501309 907332071 321532391 133441202 223711665 483988344 835950327 185822235 55832571 661879972 267853085 892594754 991685245 591062555 404667338 480796644 924425126 991398730 82013843 519403221 644727683 80783727 240918244 739533191 913894671 294764598 643719918 146675015 82866755 650571973 682209760 163717820 664229819 324172398 404985285 337663972 630719522 415917780 170161278 721976749 722839251 557494957 711379405 72609412 240679585 745393306 543681145 930762159 338728699 137963555 284145464 1799429 322107208 851239949 812993219 382473658 231895800 328795819 295273990 516256895 13638517 476929539 223912416 54829974 917573603 826620863 652713067 846846620 893894118 121189310 279628274 564571995 490955061 125915882 652154999 936661949 947073497 380134117 766420128 335818400 24566379 931423951 990374845 625465319 983600572 826379377 317127987 835224507 577000273 811205081 929687331 385960892 409458206 957099258 605892919 334164635 395790409 527928672 370226979 608201248 572089835 234580595 478537601 210817545 515537344 105419630 471208961 14428697 542662000 268111079 725567541 663114703 634453405 631951413 278664740 684773261 307501372 63812641 823797597 341750608 292587654 483079481 337457063 615875334 767244111 89711574 295335013 597124263 514113626 324660642 137648214 670735610 302039433 748435139 805865667 626948910 369967794 831562618 937294408 99208785 287875269 716603036 810950918 364000438 96482112 139562091 697365237 524088409 502997982 332930603 382598221 800979601 180654558 174755721 817447927 853791286 74698926 853513945 231901511 63758326 942927332 191803219 235221114 271703458 701042274 794605361 157259441 357943188 622655792 565436883 737030505 54284574 393629770 548314954 299283076 100945895 873645348 358600664 72299024 74107440 945231208 691824578 62842876 985103827 293950086 753501198 126171488 400415327 120085399 246855235 482456642 31638734 781491908 926873355 627678878 962640348 59495276 686202486 233289750 166322687 197409097 21653291 134658740 99615620 772629508 759007900 937345643 360506323 12212682 190536957 405363598 953986542 505645887 449536379 426555368 476754661 182938665 492686411 936491524 164509263 270816750 467383430 681956689 903467222 306330963 876124801 712465548 73010182 853466734 28241857 904657098 139193651 478936776 702383748 471246977 724094395 461976046 607704936 542027772 555019524 927163388 616308469 478583907 192259106 663845637 504861391 708681162 453850169 350036177 939408051 750691488 944714389 401388097 382718389 290679732 285916844 876350257 503487741 556913908 424809356 550466679 932083737 688957349 54408578 812954685 817747569 262661039 205168818 493701712 581953548 990013786 587011322 3823250 588794247 793573443 673615718 909251432 274752726 427185969 404160841 975066594 554713855 612705019 242354617 723702611 43799849 782420373 980081118 863197034 321912058 737099857 141304006 58255857 86525908 396751383 334942668 261848895 291556006 932891125 770873480 125951821 545071895 99155658 115175258 578874318 175612083 358716999 596416967 427224304 748859722 120832446 409724080 174014371 787362056 713909847 872296489 688600024 234087935 352668715 924475934 396120548 837368679 385557545 883209071 796550575 578675088 47655875 947990759 861505347 242785866 33207383 530419233 736245903 891733168 689173710 604561541 592862368 63332118 115867272 24133271 768893718 833812153 945867081 509815578 242106733 795889191 829343691 768416605 133076922 714008687 300714620 561261049 72911400 586315176 731639770 691805247 357884674 495567475 729002125 26211434 973942119 288931256 774686874 48243065 662433592 45342821 485615885 672832174 33882146 845083848 831007174 805688801 389225355 778492593 39611551 928749135 844011589 308184185 995916086 683445223 603074686 519337359 765143083 824345748 401617809 557781286 345115219 267419016 198590158 207590062 601075789 423588245 541683174 284993389 504413214 845366524 625087657 435413059 728093252 194170034 649281182 511217316 695062154 940817263 846539354 453419026 273800008 146479762 607016407 259709235 510169463 489513538 433431970 824397533 833013191 121794044 914247805 249256284 732606611 141565564 701165568 368357200 645805838 217370187 570005563 369784377 958665177 662191790 167984910 961266853 652521756 831620322 11722515 66447607 756913100 429350286 997181793 96578799 706049463 92810934 638766696 142230735 133347220 268555127 787845002 487219382 767144512 610608864 960160413 140437985 707014771 758171018 906055466 859783288 829396686 453397591 540629159 347986470 172861516 641163662 651897691 993524031 141308803 560716621 338096469 26773504 468288481 919649856 203345359 591621777 635628370 174409910 300406853 183719941 705349807 47847000 87960056 73728685 839231871 421859864 492735998 825663949 320482127 318387678 526160250 318163468 205534565 60652220 793493391 329153565 448797659 245853032 123548020 346385276 677832054 447741023 664042555 550315015 143540866 320144752 92469651 834142124 844346963 657027978 844044436 518606140 977874267 286585966 140233595 218616802 187093434 252988087 668818251 691778897 982525813 172536720 881812949 332545370 959739216 713638917 680364135 884897881 498221625 487881122 650866264 517106549 413142746 35801581 435820344 629369397 435295364 396133207 80157069 800626949 508843299 204522216 234930558 309600394 517206707 359410869 454401979 497511808 25346633 193677617 367944006 520918686 521485612 138463449 580951114 582807334 115566113 841920011 402876266 252667543 48456986 952985451 441490993 700032242 500386135 210523657 49668463 343175406 134656957 454402214 608742042 420643668 760946206 202944309 338121590 449635323 967547003 436860182 290199497 291539538 614964166 168718485 917809085 821135555 441874198 276126221 246017023 422871810 963691997 871229739 607733696 617499728 541733560 31520902 922350015 56429734 584860877 472991543 826243938 733019101 809379116 886246219 567341527 389322882 869787630 725932059 41495711 741862883 238793345 247949628 757277207 287681253 782072242 352342321 179044601 779847267 254265014 238266306 951178016 636958343 774716195 979926840 78483506 925405672 966313747 932152579 506639626 884902782 787725618 732733697 341380624 254184012 962605418 906487219 751718355 623893546 795075797 876339818 118497510 999094302 995603389 598507889 617133930 62914096 771323304 606159512 227857373 929916285 355549343 267509136 606432564 379057865 29491274 294696755 916753324 643904797 159127479 353653865 226124199 238150856 251454222 802220256 239021881 782755750 505252697 712300627 342399539 225861238 686010986 931691173 236496153 636515715 156162320 529285841 169312963 73416040 240072115 568963775 171621969 882304382 965761756 694281575 613926585 916406683 197592647 296709406 274916708 201496240 856785080 263854597 108858338 630878597 71147640 518718907 985776979 424638694 848033062 54395546 524040311 464754652 287439838 780971822 666189096 498221093 723097483 17507225 953535016 489478612 74622295 828165046 200981985 11585728 168374955 428632608 573888360 794556648 430398664 373394987 630388389 440503791 453586993 8970296 935393267 900850208 769735815 688879364 902130662 830785032 473017681 245766444 565749220 173703683 948313483 182291864 387630506 828893058 897936183 651957272 533503220 458367638 365143895 69016606 124955690 337782371 153818687 689759237 703541633 669649137 330553517 637835429 928615850 668099625 480951400 88251823 714238478 690714653 751984511 943114548 992972752 772143432 910135471 18878895 49966689 447708454 420895411 561021767 298382787 337228937 991449090 356083532 915216453 461466984 962718151 913509904 805026937 173438991 100141659 330937123 389303316 79772452 559658784 191769085 607619608 588320960 428903676 855153343 806304694 802238697 677332100 927071084 463426420 225667067 523201074 18802808 113908919 667372011 29798513 616792308 847672135 907415052 897756193 521434916 215498847 723332693 227598380 801395704 914615616 84027621 181608595 457617903 671674017 429532950 337105083 813569750 36620740 827894671 638528826 503969652 247392037 636571148 331271713 76469795 395954959 804911698 322075849 662432310 654834467 138337310 1850905 826668100 977836562 651926496 425712413 344713046 781446442 446197069 751687725 149697604 762230128 384558830 465127520 943134356 770892441 178684965 634611681 695467670 755093197 44783399 920455524 914239373 317367178 829050829 697120205 498934419 534042153 515244419 310758205 287898070 108956216 32614604 590995477 395682528 665842533 255997752 315820197 73476072 939506167 28658154 250563597 52719029 476663964 693848621 623455398 820628389 983001401 514789415 440067237 466415007 960427913 629187377 69877913 27456087 428775959 519045205 38644315 244646945 252335581 316570417 914110671 40607521 186579615 587008490 586229324 562397018 520801033 943307124 131555329 354469771 426988308 527089924 390919447 742581137 301834523 789638399 422393625 693568161 64154626 450277145 30095687 639404334 31190030 592677281 655542037 418171081 960089660 557602266 911038000 72047262 775123175 303688067 616469044 151419863 906649792 258308617 931442720 604868669 489697399 156053455 857868041 699839548 67273703 548967179 13813898 554026061 183593657 255077351 325851776 825267467 303717286 991745990 5947293 857237891 12550647 14252060 438354074 527812029 478970403 513029526 254591348 802864850 340364952 424264592 626798009 721730907 346681366 355482863 728605117 690488741 589382216 443892432 81845394 89094829 927743582 699902547 524630815 258693137 718667176 600416774 769101502 37594593 656807823 417915179 191773789 624119952 839113080 331354061 681049259 704280333 319049420 300948058 385788508 802285169 873678775 510932471 305544591 801811507 957571146 446109022 858858864 796050040 730678329 348395278 168549136 570603131 644330799 596155084 985144280 409716097 279539266 421438098 659060064 667944530 661337534 710243846 966972954 969434283 166044370 325567437 322780078 638295668 712057521 632182527 463083827 358441051 644148847 504013974 887522315 347374825 662587151 606694881 357630683 348261407 969680853 585992223 540050749 101084472 813509084 682303859 754409843 248262556 859643116 188253739 125373482 482082994 153585014 680796221 945900971 842014414 296426799 492454462 792267506 730669974 767708571 47050233 548003895 46464098 64584136 437448911 464771618 999861927 216966286 294556781 522127672 552314944 245596429 442783729 601940112 256853458 870798533 260968681 745162813 224742228 336961365 857735185 236009239 301016680 44774738 497461332 496799901 986847300 159636184 407247694 795904653 559491316 351807657 533458914 342876471 473122498 935194430 59726236 268407295 895545178 804959023 919327588 653637091 793229875 17422764 480744776 187880046 463885236 771844450 92349238 713121694 936392702 205700480 842483703 531927290 849311596 287959327 191655947 603531532 242545613 295852832 432470261 964610543 875862512 185446635 625575270 844986139 232555365 69409957 649129025 797320176 831091044 748936890 671830646 306914744 987908670 226786131 613585871 615069091 105815907 288602869 681704101 996941209 749219475 459424230 673795985 733160894 951618495 913811733 352074524 948885756 447486023 62485087 574917218 891455176 583922397 136216317 10191254 472337711 470694582 613031030 724630017 568117498 442364382 973244439 52111320 994944160 851216618 648004807 189650780 354424152 113156294 303526173 223086634 84762937 137542471 796319670 61404076 675504600 206153582 764786070 216293440 325702961 244109310 592925410 153126660 971145691 108421670 759377162 803775292 545487055 676409175 488774494 141472950 165337281 205966529 451103442 844385037 781057793 548095716 405719540 565502688 959443946 396545508 224726685 170046289 14102298 962159156 916852191 499499000 283967888 394427869 237877346 254153429 100532256 203017251 39012808 420963921 32924553 997591805 940472089 771422584 553142137 272178341 775771806 201108789 24301129 371370392 434882881 365907582 72747507 782767415 955182880 784893610 457431515 641596891 459945749 128796658 480907515 966306988 188875193 925968605 357738908 956018587 294334655 110654853 26121283 37257285 636584476 860005904 590842429 357135164 965446714 559327223 358100614 929097981 488539803 188756742 386693926 881647218 101727841 996535778 292154776 66834970 19937275 746286726 413165366 413652277 16460435 507897401 18103963 496062661 993127543 669767750 122615847 592109724 89207734 838092204 770545242 60339387 65896505 989059049 642793088 369977378 985470718 506444306 484854525 373785575 700266745 63996134 28474134 229465944 70925871 525656293 7108536 904116838 358877780 604735179 184086476 707881203 245073465 437402164 511676882 786309737 874510530 952817613 755874383 980520101 64418623 545777006 296117370 281087492 914352374 227358782 108909514 791423586 907253333 121230117 926801088 115486930 483107959 87295366 442537330 738532687 365280828 567732832 446397216 858407168 654512017 26666846 489807572 871878824 783167644 232926969 278101406 234004435 331065724 318980317 442006976 410434876 828191616 790195438 31558023 42710766 566329214 57599571 207858140 570371715 441434590 455940078 172064933 532313846 429595148 973354419 688814634 623708095 809006753 429170954 931269753 138132014 158000124 178971988 482040938 760030253 737836541 579787659 213883406 10388038 925170333 390568407 628598466 171456894 160885271 174958328 431232166 24399049 487758019 732917066 982578037 595088457 321805627 718332347 56707898 893315128 266321247 217819107 717155744 788618977 406029422 386681965 735138335 998585406 786765952 506776499 508482082 786568766 77054486 226577318 594203469 203833280 584206052 214251891 875649590 784636775 388235625 854307633 91657796 865136819 65206030 844639366 400614283 822764574 125886694 755151833 85100172 535959499 116900427 446757023 970859894 273895973 8376185 685552918 324699458 889341860 530224130 578543985 616044588 483379597 129991722 900124246 126622547 583291218 193827224 714659061 628051245 145325337 405686261 664626774 533679646 94122292 274149355 54040177 673431360 779810909 652644329 953109389 446345602 876945437 744755339 436459121 402137563 935837255 183948696 256226491 118679275 892720730 824767526 241096271 697941130 502445174 12439996 728610832 298872034 350589174 575590033 304194671 674321526 248319056 484453073 346658001 774042219 467352192 487540932 664201747 99795785 637327139 260345155 380572980 726154461 878780025 264673342 387814926 586348462 816477857 94740104 839547791 84228155 253892447 272046867 704080538 867158529 932835055 227772652 206986744 136945065 769501532 351011102 959978084 55012035 969300660 255936403 530057250 741343100 439545505 383972684 35154063 862121208 153400839 647426509 835870032 159889867 425491123 140732265 746631920 959669270 740143484 247839874 911863795 442488112 446560623 616296509 316654002 616720335 137427255 209876379 950116574 22167946 48710040 519454137 849984470 17488643 787954389 410985521 875546 841767260 241882704 456664932 268314085 419476858 178028225 126206548 867922537 145716630 642270502 635415742 649000917 589868547 609154191 11928407 332966385 905802600 938302976 182825808 428086543 337898282 135090044 359124668 279930436 429520384 648763065 234348806 959026193 180682331 958067445 775742306 740805415 715807075 984392802 121430289 120624401 852638210 908585593 416419048 87526855 711574319 455824954 185660402 127656570 449058212 553571740 306702316 413098153 534930961 373190921 833723274 771323977 84813515 564841084 507011098 693916245 797345307 274645399 54222652 797862792 643019021 92676006 244995365 759160269 107259633 410765797 928594134 242355483 335468838 842356072 493742883 562892152 111432886 100240806 46086094 269457320 951230457 999150208 116589966 381149417 522378771 587264187 131553596 828654006 354880157 12440191 194904999 609143834 737082990 718843079 876815796 881191212 173721037 513384318 192562577 556421193 540568825 498119085 437986377 649040879 878765304 711920709 880575058 439621120 560192683 338691837 875347706 573987704 113517220 426350481 528334901 388269530 603905875 744260736 429605265 483427396 12622045 278135498 951832838 927572918 416972872 547155840 176400141 491716202 446550700 258097812 382904811 118084295 275261065 877000632 748856559 248097288 949340433 966176134 689685942 873006876 582298783 377562223 669500026 496235788 89633355 87414026 728886189 716907483 135661906 436851521 191575739 762961845 406470402 900579049 513526164 159691398 48199801 264736113 47669624 431213895 885529336 346831180 661226753 786035492 266249057 675708487 172247586 117711662 148265282 686611019 126265701 462637323 346651457 44174209 271567029 876474133 220777218 844604303 872511766 689277706 472581946 612603769 791040064 858912693 590629356 964872063 395893083 500918331 743989081 510375420 651450684 504840110 532572101 539722687 472287397 143514179 195938325 870016363 750789516 405346935 603225502 632353683 929729276 337086567 773757132 980777165 725776481 591545391 711636143 847736738 468921629 316818022 379092665 214735650 491482409 49468909 838928686 54421184 214847022 5143127 134617106 758724299 694596692 734081304 568880296 480105128 192428689 928318316 321830721 40836749 164576447 322509319 101132730 478221533 561461848 663180415 576736531 560288726 651345979 247402555 199389016 947052881 369555908 103181455 286569282 126852211 145591973 906353654 631989587 127591307 561881536 393459416 719606478 822401336 456197382 919365984 197037006 701211930 422071985 414662695 795095571 615379289 227358866 184876106 298658999 172035763 430589832 123300284 954125833 673787848 488228341 15863803 897820444 573385244 907623968 470657383 486707134 867712178 258904187 75731082 414066458 997806700 913271566 332910491 229189028 229254083 722611972 495133618 758872649 964923719 673974532 734107997 266115843 368541019 883886410 648958513 639506898 862984678 462856587 353990976 142635486 86943120 888662081 212087929 862224616 393970364 328838640 773545819 36998812 723066381 239649958 869254118 603177394 314555533 752799450 981989381 968420398 308026475 588834427 979915457 723439626 380882325 277451457 999956160 512920868 37816341 3292533 280666530 326268730 805580677 102215247 172885301 770311986 322018537 875237315 206770297 50267392 869733900 475218580 443485187 909056381 499955467 381092147 782583754 661981262 383052109 322758613 655873247 610093952 154744547 513910960 516878823 774952552 506752165 58349615 987139603 397543764 976621225 386221122 863354935 331317785 446705649 621115222 609168247 541109183 591119781 159582497 779977149 614152766 898836044 496246257 368051152 588683576 728924376 765684399 744733604 420408150 790755245 280241429 302010405 9057513 494238731 642525215 569907384 734180760 356239239 103162388 761568788 19918526 398555099 924627450 941849739 838748175 649545159 623682197 785994351 871863000 543726457 381522905 902006699 623325435 744593913 290919292 592081557 463716597 619683042 801161098 824749036 976028487 660490449 858730935 436378966 970633875 682684512 8467212 141737874 120274213 725591559 223574106 395816383 774787362 572820919 698310328 769882753 806137144 412866106 94411476 361051493 597902270 128630958 682029662 165153375 410552817 523803261 610472577 35491983 565602709 492430937 533199158 342163059 880880108 929979675 212511665 554589327 488010723 111937436 331772738 440834496 764415447 693837269 741347862 175927072 893005449 227369491 147827029 895267582 439277672 991377885 484451690 242356108 213462925 343537730 160276209 592166021 232434354 708837900 706687129 863121756 50687619 728683837 792333690 126949991 239461584 517524808 455902164 739944312 518655616 289589508 356573545 724943338 960181867 783020838 792844236 741739106 177922262 225692159 130015938 186299662 47923055 969172708 689588891 953510671 931362869 587759492 323694477 114773487 767326267 467045196 304858667 308413162 880525124 558235987 161040056 407179951 743473050 930732787 773328020 150582357 294832306 658694849 334881805 211067877 265360732 57455451 396203998 27980983 304805539 481844130 11863111 7023853 692010835 992856852 592202350 886652190 790674596 892371970 180839843 909654487 17118459 515244067 323404022 856811586 92135525 622251235 454058481 642874683 343856992 867843534 974885633 504091562 341858083 295661147 578594118 924487623 239150519 166501456 765097026 736912847 834676944 152442878 839807499 77928868 886931899 280494561 453978046 423288958 442382714 757652786 664672049 717326118 135490555 11683073 736683597 935794851 285074563 661274438 35199062 171075195 737557294 23950116 88888829 361390862 825726471 125886833 424748236 985204932 317123443 188021411 277100370 81991399 107612764 532170170 948925491 196633172 512479068 90291281 546803381 308306415 209257114 685384949 563524253 125728160 628472891 887552689 657041261 953040106 868584359 698959555 264441555 238288015 280344846 461211877 611520840 622047717 96188769 837238417 804584441 238301262 409928193 122579513 440032665 368725011 111600262 228777484 19874229 695649435 551500668 779299955 40446385 740954660 87359689 628334522 903264649 843051778 954837882 467962775 405277642 5070033 154195406 3122453 34205194 375968582 767932570 748954867 239218817 61115468 291315155 338277461 884741117 568366329 584229298 827731696 36357184 65580415 461385368 493597510 205803847 525460000 962958831 278340026 66836184 230430606 332726352 892970046 21022628 987629166 363651110 763224955 952510250 764841623 152451672 835260759 63556529 668062237 402079533 279191418 742682584 70373736 438649905 887560088 922871681 510535612 461842630 662212716 218716952 976777905 201122857 323981840 790225343 651196802 38576389 587680908 352973809 74505772 551968079 75118935 857561784 65834204 904797421 774424636 709083772 242818635 878764749 407732944 982602728 887100037 162406957 35389349 61346929 22382051 588588126 786246892 328140856 886878784 565967114 465109554 826396145 488652906 437084558 261169305 170897082 81823122 958960638 148043563 234379656 123433952 878752759 299648485 887783452 899885282 815429618 927380168 858977876 844075281 268106055 268782844 460787134 671303341 388648688 164445739 34872580 603232326 332870785 970162693 591660343 469967516 271376123 256587705 210853360 824847690 213293875 979376366 305312785 16295500 556576239 321473561 432115502 802367165 251928947 578818325 113572531 59649044 19171267 680969150 216991855 569555207 960854013 560829978 508211988 889282465 568891704 655875329 528899954 78129102 198782551 976369393 830004381 553057190 205758575 612837766 165412649 188078146 726842807 45284991 805505861 623538396 143166718 453599566 721337811 295301235 273712506 692781295 203689416 993637398 627702197 671425265 153647111 626202831 644331751 10679332 440814113 728411205 328644583 160308393 439211597 649108326 239614308 123279727 92586999 390878772 367180877 5468029 687106571 66007292 493315050 744324354 233147640 42040077 578326366 313585515 76048997 512168423 34716697 848984223 559136636 529377086 198835823 230379837 766370088 992888032 343067972 490252891 18386577 350648882 554159236 104982607 995823611 745552855 669554030 995290458 110084185 940604607 227029628 981254312 746475432 475771774 666930048 791951259 720268669 332986814 674915589 264712813 341266101 433459956 41080894 562390741 853209781 394547989 919269420 867845142 767799864 262288424 489016097 619874318 776048591 509393263 190878897 359465252 842902649 408936403 864648805 124242383 381113464 174475117 215638228 125184801 973623707 613466376 537380209 845023213 804553996 129429808 922779573 771300627 522177799 235408664 931679594 452543947 788729910 346460878 638524128 209260433 937942837 482658578 307203114 894285807 598743138 231193148 639169467 28915858 527259778 190989610 391667984 71024229 362110891 263199638 634428557 890835556 408290508 614564076 254526193 237744824 95324382 728576375 524964308 192384618 644037821 416550504 779921456 748737320 649940288 777102812 91776853 666664368 176170472 311626752 675889026 634319466 578689971 764390742 449587698 318730179 261299549 984755461 794640083 854439520 653064543 502749824 711501541 697603382 415225075 761712521 208239207 457329362 91873489 434495438 953580894 293472804 713423688 57640897 547696048 118210912 492652637 412296373 841946608 514037179 776694879 309521852 664220513 380145462 965083781 863923212 273779156 404487792 712423421 502895118 791834062 473191750 208483600 713478734 18492020 306683963 732190341 698593335 874167166 237196133 231177935 618308748 155919939 70955954 730613698 480462693 214486287 91028421 392597418 223119086 475242774 790852374 205776272 541889961 397128707 322433993 639235787 159569556 403332385 850187527 959037838 681004885 321905825 441837137 951298892 982785917 260701183 197374199 698922992 186692057 582819558 247021991 148059477 273836236 430642063 702452191 749786903 173094386 97519393 222326216 163549591 263445158 986156693 174396683 509672471 645072467 257626712 612401036 155757944 543473585 493173211 83603920 413208342 737825558 883651324 705538827 369544004 57794209 492752027 82551589 638197231 58835343 368720526 302015072 927799796 316300982 556768376 791240735 521939667 828666543 418690047 115695312 745217860 220924744 838788662 584005668 158568711 739421203 385739995 966683462 867478078 962937063 944897718 708016642 745225344 39271329 975918289 576187449 955864106 589763445 372629015 592351313 56957756 858767350 988742360 99761388 558445015 554336743 396650583 799008351 738023957 503813894 762606913 297729710 777347327 341925963 342255876 925596828 226513996 10945660 559559616 963264476 886717550 90892128 435911698 543207988 387362623 789616685 962608364 85476360 83177120 747915210 948545608 332842951 539588767 500690474 896669781 186437581 99792516 635696980 755722862 474929220 502144414 497987220 60820324 265571674 911116302 162475281 387975554 351574071 51304319 919550693 409768369 279619779 470285100 330769293 169816651 692315339 24774032 375172607 723632110 934226237 132346068 741932652 83921664 890157443 710484466 488150135 586871203 612455211 357328342 785598646 577722990 687165850 345470732 610600517 486594607 860720769 357563502 915374897 40436260 401542837 944759623 240572488 57046630 154572965 903396284 245850641 723350284 297592181 480835716 656428722 21849213 231309103 372171889 649034447 849823723 735729416 963344747 699043116 903478152 790761496 932265939 171497392 453630216 901499440 382106624 651817002 439660382 113315413 302331768 747048793 952769090 393676432 470657726 152449273 320670151 160130077 725889056 769503208 646191070 281732968 697874637 475182878 287760654 365927686 571542233 438813142 372116067 845616103 219875426 997058834 989881692 973373430 859658555 250510964 192677008 478849909 675215224 638095167 377950462 214261204 714177005 321587343 227841660 177232784 44563844 334167043 866701997 219413094 320664189 514417254 668876698 463241089 936359947 266829125 617344101 707951619 824058166 205542320 248524549 30609578 947761373 825385163 132936975 762286081 467559252 470271312 49618972 282549638 115543130 584186037 801380876 165885502 756212587 337504284 819024728 156679026 285018665 765647289 964166628 992597828 871737181 250205356 430256934 525822086 589569875 609834320 311211577 552879381 125480937 392385137 835614251 241338793 276322734 719995927 440747981 23552583 928155502 378903465 659968431 576931270 84079742 36918250 113826600 565361540 763424031 832543551 599702864 494440221 932385314 255548374 817410590 377014980 171449191 716308861 873265556 572414506 576549988 501235217 771600489 530995395 355663522 939998629 462081623 270956369 504676051 86655097 27041131 975952153 749769693 580767744 162213391 752398520 137902307 767299977 324786656 495168475 116464984 630529842 689087663 285309163 705121570 289315204 277519798 771958209 616553588 766752855 856540092 673620594 383444009 521419044 627668012 704990048 28292732 603142442 553501069 114076060 508680434 286242858 771554416 26613393 331793339 481416970 223974055 615744729 237526199 628636580 385943248 439390036 15160473 512576205 619458295 353365443 674536190 305144271 569655300 344756173 133858707 31113172 79988160 194038553 358946861 637143690 783018509 890963157 646678188 192872018 945343806 191934295 388525281 730756685 691998372 832505582 488644554 948021355 898873726 766947469 505290702 237653166 787145562 796870829 643785376 502649212 907462246 986788318 507400741 431289392 900484927 529496619 546005142 799401894 420559166 963361704 725116515 924275892 441771170 168573675 851973013 641056423 153894866 119706291 188761182 903157306 560846717 8245646 916378895 158246931 216274379 235175371 852884440 517804570 270724958 821504824 707336352 179445927 719219683 743866774 874777473 722549430 961882747 212658760 340966154 18158897 551462454 663551066 487815988 233029976 518643769 368009558 706391398 435061222 816163571 449370254 874987663 88764035 709882682 737583489 744400299 999243123 878225467 94233859 412040485 638252446 703324705 441544182 586966668 462145548 334220176 55504873 834984140 698162148 880367878 651383671 605533118 466914803 524102172 590007085 124224692 920396684 126234348 521570721 884647254 809319952 307619989 487869250 349620002 918631615 748860987 717718632 182584467 989686875 399201249 928732383 486133581 294115800 543731656 523054717 844258290 478587551 64357371 258006874 346934120 801746734 453887561 27572633 208071172 726492899 703997268 574637654 921445084 128369756 398937924 960819871 266549606 579472460 933235067 938628216 531039904 896830810 104465327 190426466 728515896 918561894 969765193 861441393 737354209 332479852 573119714 782927618 391768404 235453231 493417705 348461894 220808954 883162892 767006596 89976166 488300662 638236158 45721941 445977983 365320316 903693973 828491821 980911029 590273138 84667792 130047373 501784672 67123875 646866267 307185725 56765336 829943704 524449217 98702945 259850320 196135364 624123368 569036546 32434641 299159901 681696182 865081034 147841135 762187822 710124639 475024800 937419458 747712606 993127349 338866433 30259482 197317191 643653228 157326157 939692112 858014494 869739710 450876597 909191876 454810032 641407427 740145184 967391530 76692546 709227853 386402839 616586698 749512383 607509407 966234378 4698863 144848054 335053400 49384656 434075478 48528912 737073109 671782747 937516970 269572976 418500602 197702483 168139114 98100312 507385948 727015168 152441136 656030898 817096764 66509199 440358388 448506823 474770936 190655607 25003967 745404940 228135834 413876152 87902793 263572610 966927733 40114464 348977640 334460875 853293723 481899863 49870950 726592810 697867676 75199189 556968487 321159043 717772154 451604628 874397858 317209747 659464482 545420609 945478975 155380025 686955256 41875466 268024493 354287930 195012548 430985514 313377853 436070552 24630435 417063187 313328546 688164316 822004296 126241865 889396555 546853379 115072957 673065726 175580644 114102601 752840193 759918042 505232376 35514469 832145516 640054609 368400761 645729051 857147417 516185824 34545096 50859775 75109456 917548206 33384532 727565836 380574589 864416293 739999075 777610557 578253875 264590507 643992026 93324942 727356374 193814575 360584945 450757390 297772446 326179691 324979631 783732702 823364515 408902457 148324782 997236256 850970046 415007962 227400098 392726608 51489080 542865539 945380877 523655077 659625741 241285771 416799848 359902354 975973677 845722419 933092283 318120032 321433672 624581903 37739652 499309560 586357789 641058612 162609724 337215528 450544821 430391030 691372184 516317924 817400086 804210877 721557541 650843247 868123521 442746436 637244562 885894654 595581841 247883527 608922803 92086180 502073941 859841253 491472461 850704952 774780051 383331299 338022891 856530723 973166506 252958459 803524093 317231041 445161964 16904320 300392026 99965133 715736809 492053616 641956619 569977569 986165595 234349531 981697421 110377249 590404810 520862663 392248495 768499761 128377302 835658727 937815164 228967593 456909563 456881513 279312021 408210381 105267024 961979631 784927548 781120208 276104660 747745276 441659371 687334384 831880127 457078459 793132543 218452599 157490447 645924187 729163100 281082049 393762926 588209435 794301113 419084302 26058807 293472963 920847241 797747321 179314914 114234070 968475766 843973726 204459769 972827271 39468691 203987225 544222976 962874592 814120665 335895319 242137363 592442004 176891294 252622308 299205168 263162940 494715733 27174893 247601440 536674671 411693775 394074341 634963290 895165471 425941696 447509201 790853373 384200134 966001135 232198293 717421039 262832234 662477436 461747374 918324570 634793972 813265175 410343278 279106544 775934007 581827088 173033664 226625997 346187668 359018624 556943614 373267064 795600895 378407073 506478390 449936258 809777138 464458096 525076102 944938799 110535955 10896528 341225164 616667557 846283881 794239639 142941834 992342566 967916861 796132269 814340537 257326718 807129132 413168034 156033745 558409562 330569242 926145509 394043355 199900266 544222718 399891139 263040617 220508939 343543803 121026670 243113669 800943381 209833494 268990782 406480646 776049242 183352284 643664970 38001196 261132871 512925404 357400399 9037126 751686378 439754576 933510367 224884308 601654907 140115366 716994314 52750273 463640843 476601318 678282456 911131818 259973637 382023793 854906817 182792261 214503395 346413250 773606168 708815265 381317983 616154119 319649123 606259902 143657341 540028828 483991201 964919079 196205873 256704585 194813970 306710562 996891298 375080800 916829347 106545285 744951563 773015933 943733548 228308836 568568322 994401275 267099334 434463990 497493282 980746425 325951627 376156474 895094524 565512064 304310743 679368835 737963965 355582669 214920061 436125706 873906302 498350724 519340098 885827697 311746671 88239595 617159437 834051511 111116005 420510422 477203171 39757635 247702361 110212479 965197140 358062702 771920513 716711331 881645817 646561268 581401784 637744433 325846899 64549608 886408863 817778031 535387400 386318361 198578960 316001758 965830838 997966285 519822776 906142764 737637373 188314730 357910986 890958293 888131092 35616126 79479766 796260767 905366583 425278674 382699270 376474652 101306033 220057976 528740500 786004099 627585730 925670909 925758881 945277719 951012924 214083161 872141277 568958378 531430151 889477035 595139890 530327428 906611866 842193915 54370749 680672372 873522861 739260788 670264072 415472927 469899951 512075276 298848887 292272475 694319177 792650287 190647137 649238968 479165865 520265075 230500758 405337970 542081805 468880774 401712242 231538427 948766783 531199150 463777372 639299962 188894700 10755438 623925028 75221967 233739456 106997306 442425737 497372386 501877101 89244281 628362935 960726597 269142521 575688305 398020664 729995621 221493115 288526024 134653414 43329810 323254446 848060741 814039756 310513003 385950727 683259306 602552736 335130153 750132855 10990957 618456925 191364612 987465340 897228751 679313143 39681371 990153592 619104939 536795578 439594977 309159121 36088857 562411213 445741323 63306822 204325963 392161579 851807324 930993517 448278488 928784102 896951608 808598734 932858564 920958013 274354138 730718075 863674921 706016152 570366100 739081526 468030817 624522249 697222685 611532028 716228165 682151762 274190708 143032602 579617869 553616032 643588324 855335268 186786548 666000701 176264000 458233430 364815197 523535205 466266826 940278969 780741179 424609506 304504901 939073605 510946359 658760094 874304152 247764910 227130079 440870083 123323985 239921887 517303407 48679364 494486860 721640004 946327189 563104299 477392022 761366069 888649798 209370894 371533275 100724210 756275797 32457113 369308173 929939005 980499709 319393951 607139702 330434079 235365803 756310010 725392073 457108710 220904360 191557658 734312501 984059221 842617693 365777644 672038608 168058333 231788437 719536500 633867689 544003158 393023548 820272009 425703657 202490378 226459083 781484555 475369634 428906724 39196418 703456332 51283035 981472697 492299056 744482555 439064962 540398982 543110483 196009301 775552898 896612515 550040457 788366697 784468460 887693708 27451168 391642574 341731061 800529465 882027417 443130577 404795165 291270066 810515051 140906033 552575201 853266349 626513034 146827362 908542837 177666147 69950151 644086024 127570643 129942576 372063161 815262068 521779191 551580300 360101128 13763875 49158496 262031166 850796768 297609341 986376081 879982253 262863615 160074635 244129383 328177274 292848849 355315659 821900681 176940331 913271700 213301304 186357252 8563836 407037201 78899382 472506203 714105549 865356149 788144759 69101532 542332982 141207243 790712562 537379301 13762570 133781650 446635152 605841994 317410582 822664169 420105763 140935126 525175993 621161424 711847899 910178875 46598178 237074835 940546185 869889331 432616904 445470989 834636996 755965042 477900293 40595864 507924770 837476594 300348342 854932445 427965587 167295954 299259717 433683594 745711325 496398559 576733609 447176143 858931839 378252214 357545105 707498709 768169102 488746414 73468804 52596146 69473673 402910376 162633458 322523403 416050899 292489300 30161844 119239834 379466506 780410957 258914067 596196997 690686122 132241888 885645266 780262234 557919359 771733711 661873461 504616942 48880857 216264130 39374732 13143581 491244359 860395541 632444287 862716951 996229235 702232919 973817796 659722655 436317601 764777413 955245653 163313943 462868949 319121136 357517640 150955171 389778884 253447336 813500908 354213626 563977726 326481882 395218155 165735623 10765811 959832897 841526495 683202399 218283126 930168774 335779717 609921426 296665955 67461322 44815851 772052976 804973345 863086719 664840972 541072666 70452317 996511358 71203264 586872659 770621689 245727887 694590835 284397790 839600973 447885199 935491207 789518475 681122343 553517724 570532866 140623021 628378187 864021916 871444013 671983459 319297147 452307683 920302270 821036001 570697754 153762131 146542395 66126000 845288448 186030462 118545643 689899127 640934630 910892155 329971294 985643915 415198464 724882295 433541145 256158093 942858727 340314548 2405677 267595421 998351638 17218767 550919097 404076773 7109870 395650981 54658421 261273641 512076532 802850728 949701997 359370955 587626637 99485601 434061088 950169867 930715218 839486679 509486382 459618386 166469163 478186372 138501907 868548121 384053326 347514710 912971771 892476932 283830525 345932521 277399618 283465334 721601180 44273408 695161001 213598234 461162766 865825986 839718742 158497547 141273236 274137506 86513 149606909 146480929 316630679 478854294 862838860 490128365 432407442 44883086 903194965 181060463 78911045 952277477 883920343 318389397 275975243 627420624 964131849 12403862 508595806 368978519 515856889 907024185 531090808 564230089 945995695 912385115 112930671 331209811 50370624 824959563 865283829 40630034 902216171 614247174 237657118 781190990 654643841 944590294 349624642 191751515 830783721 617796511 513277373 372507633 296910456 291417813 451518665 805122523 497658663 64015745 806515475 851001704 606687623 630380203 632036518 407322969 442439037 874766696 688677024 999227509 721888453 721963445 295398188 807813538 228846047 480759491 47462708 232151163 785727891 875116182 732279922 427475128 719612913 60942163 767723956 267583371 178220287 32764015 43225167 328555555 906230333 398030265 430330368 667078642 311565809 917816917 234630063 208385772 269134673 860290815 661218506 819738211 994817416 672290905 426037482 606259738 78451232 52498202 868406714 318185253 478149669 524495152 916156682 444812980 10910046 909103134 79099481 560768027 299155823 938252472 518286597 386780368 963016667 66530260 8671055 557601868 752831798 13807338 704983844 624299250 529590178 237187590 516576220 613439953 513636289 493926612 387083769 905243359 565677020 435667667 634578825 648442213 123228083 759334810 125184217 325988841 922209618 96679327 864716866 934302067 811258733 855734047 24338125 839860054 963603838 323934155 123067179 373440961 182334405 206152527 418413724 647558900 655153969 814400253 902354049 589731968 343622924 909585086 55335766 368794797 404733944 207693342 253020925 289978106 867570992 127594715 306501027 8215324 445079574 207478906 883735539 251555864 548514964 440392843 983678659 962734529 504342167 537095595 217143816 356647631 43915490 362751260 963906039 801289958 467302265 560025279 263723500 600427268 568765218 553184192 819698831 649232378 401596874 353911714 154296800 970741331 517008122 160050694 458657157 135466881 60215362 635804461 288805596 795000606 547962425 948274470 109176947 816380023 489725709 30617040 397387216 207535359 203622200 581084100 501070645 160238318 891824891 812556847 253924070 757254334 996147274 159753309 666558095 206331647 885286652 397894961 872406032 897209973 231472232 977591174 780223870 466780866 376707695 616635226 167886701 953892286 633835100 817025044 761791286 218677005 987406878 278508757 612641474 400971404 517677365 949127726 761154676 706025756 300096918 272111006 812493447 72221685 607857347 105999462 95031725 698405064 907637443 222066892 152216203 845161159 460581853 185110214 574979903 484368173 23602726 728736682 243026971 775481397 390608286 649403875 4341893 914453981 520171395 684630590 957366011 383705630 895816420 148646641 221118647 648385044 944884827 991697908 214836085 487302190 729855423 672792698 761294123 33999638 221597810 898115057 239945556 124495169 183552924 416424939 795831813 191580722 12065455 8076537 285094166 891599840 64415055 182948841 429376392 174980813 456888455 833303536 223731965 68622086 675422800 800150149 638971557 267879874 838551482 674215529 521148089 663268968 746797368 435799762 210409951 702028897 247463091 355496184 516516117 458184076 629013837 699912233 935267582 997953156 808802973 823750506 724537572 72752371 612377236 328173526 327826268 733617620 866635686 813330452 798962440 453738565 846086949 192214662 479516769 569243657 875720609 183158925 883025064 382033566 675292443 950147453 864396416 340392311 850686307 799726924 583119578 750018358 177816522 117128107 363505372 964018040 837010354 689029473 767983695 393937827 138712243 682230714 283166754 445433733 219461784 278584506 908007907 115002414 120540429 551798428 285771929 914356680 217703180 501957874 612901686 648076512 64005716 719899300 270982865 765728782 411408446 310903253 758651793 117674320 728503353 253770292 844109386 688178703 294631364 86871438 576511221 640155792 661991355 166532504 36993071 212456025 153993489 755234456 11964911 895386702 450479089 522606619 506986291 499641539 411197783 108952075 841155851 619351154 900341594 295770591 505600772 32316382 320657044 358955613 836685990 920766000 964910924 970170741 699514922 305966666 634433512 177089168 151420929 451872034 911425969 390882056 518282652 358507066 669383159 393833902 336583204 207596854 213028674 175003959 456851149 148343034 530380354 750990904 974467206 97064727 18324313 986255958 219650787 908856376 228006752 685300654 101423131 343293491 426870529 284799869 875546618 189798803 788882815 917553808 322152016 851971226 37879514 202769412 525012393 843106691 619045101 325718090 31926528 909466253 606805133 572370949 125949755 28945213 916176420 642440163 158816400 703634568 592179371 931467614 475296407 143802133 180308319 149468115 160198923 894198152 339901913 116234867 419532089 350162260 721615003 199883358 212167062 994304149 818536727 825035649 493191424 404867614 343669308 874337951 76165060 867537850 353418982 370090864 154463381 422867360 341298563 919167325 211520613 976906442 328658258 911994524 557584429 429759846 531538269 320986824 769830776 457860388 82292125 294011633 287186212 737112491 852247201 663738923 947203668 923816860 701902190 873294295 651617689 851271608 506003420 227954587 921518593 558401149 882661059 514211099 760127829 571231028 926378377 771994725 201251449 184690717 605095138 514439045 566041287 379670768 936878904 932283303 364079649 456176889 838687661 544500441 329150904 278860897 240939648 604653847 151981043 854715160 123174540 733544755 791227744 67442846 26796242 829542335 450484750 141174740 134955938 885394003 185746664 449518272 827963150 505147332 926303752 160452079 619653471 118200248 361935198 44262110 588755264 823989539 161694629 983038287 301941007 771449222 831166170 336711000 361963618 598157654 812186029 590640968 351200794 349853441 572718256 66232611 767575419 202863250 760938662 82849828 675941141 590643256 949925611 769019727 747979641 396988815 374720591 533046666 660949081 988446741 713188150 155652957 60625181 901336844 387032253 270153364 81677213 349815079 582955010 788714894 660200195 527171618 234704750 246593881 814386035 466096053 937930164 835344950 189631259 905268966 949408741 920999832 315768150 623099498 156354793 964311846 284547788 213063050 819341283 877637868 117215939 644786979 78114003 749360391 330173613 728026041 231740290 397636766 234924623 572730838 235713942 847757178 631696902 631038605 982418681 476931562 340502127 297642056 639797607 858124092 42146369 529575037 405665596 312320248 656090809 790616828 557951357 645911588 240476425 988927821 222824877 999772717 356415337 800769904 72713763 257574391 423660636 376896475 288976733 376499855 813910758 562268013 848678679 897368239 134359723 681431374 463666013 129815126 528469406 945136409 369711990 767539441 277756312 394780277 197012896 13296959 663676292 156779300 969572164 796403099 954352143 707983940 628375644 544557751 228314744 721457000 158724054 524799187 366778235 825182178 522082693 441087241 616693838 168235342 113262785 690227355 956210795 517570269 243115985 812638726 908815832 140855537 655604667 188796961 349404671 297907704 732024909 319398298 955336942 875292794 951993943 644673275 414814161 813661231 749767766 164174966 566708445 180316501 637456715 640789314 238294986 387684213 810460567 672030608 521906727 480939099 258888412 863968399 446636879 997355766 638277883 142903670 923091349 838684313 449515289 554010574 237433543 331047153 226896034 71077714 445337709 296979423 955209740 903107100 940144379 786021712 890916154 576301531 555486792 196665930 890252781 902604280 887803396 924535166 32656973 406142309 733416808 433454694 835261136 940111802 771739277 459395967 970561082 731248227 152156516 233877539 630455454 504599111 203426654 879866229 410365551 433147754 390979046 977769654 377040104 917096627 513303572 734781955 435616756 474950199 630001863 93813784 452650076 511192057 739273954 938186412 911749010 230021002 203078504 817460642 707617557 635170137 10907185 987286171 613275505 414894054 149069694 698312387 258822718 935711974 526764425 22783432 998231386 98525012 651853745 648964322 330155890 358126730 159294141 567835805 335801848 309299803 958585530 365573157 141950981 105950358 786028772 44669293 779483797 553761986 732854858 828309887 532589298 255031613 883528960 456578162 906163922 363409890 788661439 436287294 943920390 607163962 903137319 387673904 314902485 770426109 676164431 720226540 338674266 956183224 195198136 944967736 822603873 190204640 612164923 944193584 83961393 352237068 484120071 315876674 370256029 831166815 685308957 241757471 315527288 372572759 605082911 960616854 95079749 835573922 147867061 665345151 383988302 288157298 172786013 264391458 761843668 459706899 756203903 804304744 629009095 67228679 642180138 405561875 860633088 504057587 817494787 847415211 616474581 185522394 323689084 642637751 712692876 388095178 321471971 745817312 143732006 661340109 902055962 476402607 460787640 223369358 998132798 245280511 709987548 206479425 8415342 394307747 572374469 836773237 820292388 94309668 680063126 104178586 558844892 59046737 149005050 16898230 377459249 853992290 919988365 27881170 149562796 823740293 43249112 323333575 712989959 141125683 33964963 579211470 937273990 970454591 5838222 413049906 105449056 131464879 437400666 573978883 84749620 616692248 669739167 172208765 832287243 999389417 46557659 239643732 683554024 868914341 385218955 363967766 542948935 179013720 56668066 450532472 574081655 520837669 861669231 107359778 602602017 432579279 773504458 595021154 855862699 212604748 654318649 467394210 973198386 862793037 335073116 76743487 865061241 927243863 922601684 375755236 183880489 698563767 547937504 429853403 518780307 717081660 551981283 869171423 366035831 536431139 773651018 309895241 244279498 461688713 15059569 198075863 411001455 356838582 35099885 73882353 47383474 761306022 581409800 24740371 243025158 329076192 477617698 141888411 976529498 380198868 74429357 390458420 294089723 558859112 714730248 38138668 72799321 388939632 252985369 17574092 250304184 811312880 696189269 698728499 590840844 640090351 158120105 683178764 155732827 483528053 309270147 692628258 144151684 770687243 967722758 398549585 340998587 870871752 161688483 19446095 580867623 156929429 510569059 397886944 921227639 741227771 627128989 631146053 952526728 107757339 941747329 773555015 957477136 897944878 957386084 373433154 862041250 861406531 987813600 413235706 710817471 55863757 260298019 715785526 326608586 20969119 757605149 911211846 987584493 541836731 274942564 819205209 883397446 108330185 975099201 49830836 822179412 754027285 738557011 487709690 510000753 10952683 611869417 591199377 295688097 49020974 567755156 780086037 890413765 183448592 115485927 44939767 706906322 219539993 491269444 683607840 46948559 519594251 4059370 872405081 957478208 162661688 558181850 987263661 242278908 928532905 213854230 342464422 540086939 354030649 333093057 374809544 419285495 613264320 799537674 821523467 241081629 369961865 408177444 135075743 725673256 424874734 52222794 82300356 383786742 226209241 803215827 13936979 973760072 125535610 188254054 553145470 326496525 266907964 399911477 422230276 62609632 171360884 386927986 381895902 769101555 570724452 294020955 828707036 324040125 334557126 847124917 599481100 5254049 194734135 260622763 747136576 134796986 411589468 212825748 342587609 949531597 412180518 879096599 613404951 247134126 182376151 373023839 244821008 234895112 511679989 273621811 302043250 757769104 512858939 228252052 387834354 159558716 836440408 426677064 96640730 635000266 893847997 20854054 578587554 425372934 116364381 565542790 195240351 43645609 139108423 448345235 152208464 696460442 976521796 50803498 554459126 762107201 861063588 782904781 703559141 30779877 57080893 354061967 646911245 743436784 15405654 492669948 401663049 685691400 874579144 917748981 683734650 810120726 107465829 305677928 702246940 860788875 509882740 369148027 328939664 23079256 823563580 138969463 163336104 817344103 271301363 68195671 918796847 137629165 214820951 677211934 878970409 395905903 143031806 237840307 293199541 997255399 419944689 470412579 564092400 385069315 96923412 534593686 287714280 135411957 942475062 540839055 232348533 337462510 309293142 182495962 424053253 985583319 997920276 247434018 616917363 961401685 270058116 424734374 84566216 391231071 53271512 437425784 999722263 184183390 856384929 98101170 920348488 826519502 352301676 187328864 688125724 71659937 233079420 682382306 899226323 891235119 968199967 148976389 994434080 303590226 182761917 272009089 468806700 693279423 59148285 208399331 989663118 921352135 456310762 587337212 511626854 724049967 505500068 196177282 885986184 560537280 61108814 422737829 104591078 821192139 152127507 850321914 726935582 170923540 95257013 998952171 195284555 963351593 444944622 86148237 579137697 304685130 1355032 415723060 401123862 614136965 367205732 113720761 478879454 439677005 966585343 54718954 219944341 647733318 564126652 554663209 447714241 289062142 568529705 804543428 386893853 473869404 878746029 911891720 42604937 294651884 519931445 124603227 369666447 508783013 863302851 546234311 959020820 789500337 321999849 568418777 366736024 58602313 980464492 316321295 768993173 445044799 310094727 360512114 830604332 195247544 691525767 629849422 460340604 327621374 562372939 479778783 71939168 360377476 673351102 178882071 988727811 439014839 980919962 492379136 802982491 743619200 462961567 889969402 499574523 13791449 180420486 208356294 638318186 456633510 622893749 537221531 825243735 433463876 877597933 312579330 526689038 274592433 368615631 708923685 637803706 5066806 945214610 455137851 723975237 381302192 458621672 333380951 947602815 270808332 999284990 19626745 569820444 788923196 221815188 622200672 205915432 925284815 903933649 731491215 582213038 797843805 404919942 503910933 137254803 727571648 93037162 513936273 206550860 929569877 14166234 476099535 686176724 870825011 392762845 721526860 129556456 152964065 714966453 746188668 735841036 314516148 819522115 421708154 900380265 130117286 932655433 685860547 800544367 48575439 541199516 799608684 430270817 833233061 383526775 510064742 34806119 391470963 516270273 392084126 558949549 863858359 435503636 832227085 84908182 183859230 281652186 658340738 162200631 745219314 299447522 43592919 239768734 869105439 665873859 909597824 246873821 939857363 639685564 522662693 954837181 134012733 19240916 729109648 247958154 190511009 228737942 786195103 368840843 62418154 836884826 579604866 44815937 858655472 267800787 576522889 777731866 874794753 642953363 54826002 59716386 295453831 313740697 132366715 848602747 444011417 368737366 843895625 97769983 141469341 445471689 210090605 164817509 416838212 234357756 550917707 785969262 229451634 271252244 872829645 611655019 786391252 228048396 343711537 261067584 486947365 655320668 65822353 635418275 901366842 537999355 749681990 105213614 722003156 936210653 590156824 729038430 921032812 785667499 626516376 48165496 897279420 254930505 502190744 127106276 498188670 346748193 577217960 539560635 799381731 200633628 119100498 572733994 442150665 315106473 138304088 928393279 999267261 991606056 52445751 965748849 258273739 441203245 281333640 251189655 97836356 815365295 370602980 882864710 297398938 318371881 176158745 889299674 638181147 808585526 784124059 697530779 88794947 164457546 608849751 191083826 174074763 32882038 557386127 775843033 662444080 456562948 716415975 393466356 79604261 683025772 574392091 453270320 519923310 615576445 883812932 981037017 880785558 103230535 918917523 198981530 24789397 412270164 198008828 209133119 911204133 728056351 747403997 350081989 39044099 643009777 735094969 154977032 77494178 954566480 6959676 990440273 961170963 309026345 180374624 902586525 631246192 805419702 90665171 1387530 659563271 891666761 696503562 366939435 353782203 21098944 639611870 623717944 776785370 440367626 848704035 264550714 191793911 136436141 64984501 136750264 898798644 303469583 783050672 367039553 649365594 450260097 267436855 85920813 98005233 149894748 512070744 671102649 784094031 700267866 88602596 12378975 157804475 367486939 164795088 74411564 583513859 527138028 904333273 387741222 801900638 270744503 46756483 355294049 727863382 269058834 865179847 161368740 477413124 600335619 503516320 541802003 317167770 535986582 801792025 33940898 457099942 16062752 629950532 356524160 692049521 919518948 875333079 965697589 7091919 55407159 854342717 821219058 931884161 621433275 942136505 367372120 657330702 182675805 634246673 161758251 935556097 822880138 951452063 911067218 814964365 442463322 518299224 122787298 234468584 565582680 62540242 540204428 203867891 126506353 563302013 329596763 820774342 813231835 991271376 291523342 650136872 532958515 973627583 346951198 968474824 277594574 973586283 591310470 34982763 871057940 528618903 351320980 387522794 948093965 904408948 49045428 974017145 104555279 41449440 131314816 728420400 338125972 524688695 221261575 538769316 359212498 774399598 327695249 48958579 623172579 120790595 578053170 948602696 234289842 672253600 243654939 882010306 283471880 374571842 205901746 844288460 119565956 218944989 436266530 813417046 398248743 826213587 848793824 670059869 293073661 88461978 725185352 694324982 393947207 892118137 675974205 252216098 567805418 113710488 519822201 873422035 739574395 763715769 423640965 655094516 121782354 970954674 749442594 375844562 256373659 966523457 778593433 677584082 691006871 604875385 543664494 90095377 333790556 685808196 813591761 948155279 98796477 531472688 449474519 867929753 943350750 963127725 892577378 689773974 7353933 795822787 360456936 451054767 407259557 889986149 934058468 313939061 937131302 994894313 735950491 454365958 544879883 444637280 115022572 804663041 96236435 709271882 251423498 381042548 400198330 714310254 581079556 61059785 34904664 230232916 187426335 941387453 372033220 916535149 790078740 446965915 894051655 849625628 285523730 785744778 876551900 63998056 497206044 979128970 384903739 596373460 738761691 291130406 385287742 426899637 214208392 815900170 465754937 890736684 416337611 727791583 301735705 65417038 304246790 252818918 580444912 896521278 865276961 43148655 838327609 169867554 49596691 2695002 908843849 99169707 166216147 68298747 853968610 607078945 911852008 107872726 616585858 814458868 993821069 816938608 826182535 827831227 652983522 590085111 564804455 426438977 212680926 345694100 426544187 54523271 8202324 152199891 260933250 743499226 784299347 74527390 61026429 137715961 571346362 922035448 891224462 758335388 367266919 112498345 879777928 188531526 54729159 217133881 737042007 312798144 365740031 638318588 346242991 898088031 551700386 421091948 841128744 768073066 586368893 480640598 638589639 363570583 12857614 626969871 722761528 776479688 919114049 704744764 412269062 741470527 284368291 344033115 52993064 408671199 276859230 183145585 714011841 316739874 898477434 851748160 918760602 626214146 72799070 228755237 237595324 417311068 752373258 134732670 846481115 615219862 529473750 643632559 830312461 956250034 805809394 124918118 533967534 881905808 411663872 963500090 816490410 268316613 379130710 720210933 344784026 554421037 923582242 659884108 981516165 64261883 899384898 493208245 471699178 378878103 144635409 146400344 353256402 224427498 10223028 550960947 165058390 775288869 976005155 98134588 799240332 768100445 372142539 155214290 129355678 338731689 383651237 322483666 437531256 116250272 222418797 288327895 64729933 662748529 463062564 662173919 30879046 754805173 479016664 984160170 293721361 918700805 58923597 808860248 886387213 475044277 557040972 623965333 62031451 512201866 414453522 551120997 125765296 434769616 52211351 345471780 143300464 341994807 843829299 763850069 3460511 813275724 636318517 948425918 149305441 457734627 993755044 923463906 208456957 416358230 955807829 691833429 825120356 267314553 307033120 84482549 631308311 78156437 224192721 85974054 400413366 628626847 815667121 445940125 643226801 32734182 145372047 915103864 152862566 622908148 69769136 451248932 13536128 839778118 23719317 184208555 483796601 200947924 709348392 810058089 120590912 431951896 430593391 224554326 120483352 637729727 396002780 138145797 164587541 101822201 555137643 890197095 739254174 618750926 748390874 535098945 724558322 310367390 744095742 89156451 327315380 312054450 188646984 897338849 253748184 557201742 795666448 366795427 440977434 719732580 589728022 625896224 994156530 607518092 221617638 406689816 431336411 601779305 450756453 68876860 668267262 643769504 960255461 971214149 925761485 25959172 115124630 424399475 144429447 431864628 63355274 652724048 96168853 351333773 912488561 792913312 972996201 979894958 448810144 185240411 866623680 728770619 372803366 257169270 779200003 72857295 66592721 997324633 51737913 262464024 703305518 83001647 484943153 484403373 429037907 524756506 444885380 417274566 615916980 553738491 737145997 46869260 456141515 675985951 272697235 204570432 813405145 949254429 119622883 856025491 362518087 573152162 233406450 81764880 722295804 311763247 415393650 193273325 978594082 429315561 952753184 303853057 917907301 427431502 351001651 288693167 971478067 77638210 550956459 349837088 992547401 230959046 940925572 322702151 245824375 364824714 918323960 422162089 124552928 98998316 321736308 93687968 687471214 924522676 212517343 95583997 944537037 983943276 554300995 575153026 57476595 645551284 720808612 816194397 370179257 568814266 436456831 427600993 923095609 17009148 167307303 418376067 641555306 974405980 429926681 751935761 390005733 177690316 855250039 272681339 241799781 639477199 957984819 369371288 640418182 938822145 939176816 983352954 889847223 167706560 399735891 653182162 458860075 593787323 491309706 168330139 32893457 698453110 153566953 688739608 145060735 996132555 798353207 533007644 206047362 638799125 590050712 779314890 99140560 832380410 653490415 427559506 344973043 219014726 210120603 431648058 40940473 857371054 430345719 136400485 902491323 969071211 589497760 527422439 453893224 559670224 956286802 101005139 806579114 907312241 348387652 693951747 576443672 718595997 710825341 577931993 839627201 872235055 349250341 122599198 18563398 839173278 28585373 839460264 100010712 336142797 232294675 720444124 456472783 169645746 40277743 802530987 884162032 474781118 193662707 308492750 30201377 195219536 204284598 282689030 804432490 861995802 525565174 815333189 627850707 534369678 354495661 668629566 402663645 588975105 484387166 5322839 801239596 388084814 68503561 915451060 499560460 467772581 468538087 701382528 760904377 46537401 835070434 28271865 715378338 660516440 513066562 301138786 928885785 396550671 969568561 977808430 166165342 444818785 262512496 828677838 265298073 467788386 489355509 642356039 829698470 242749058 487404021 908305947 361918641 759931519 941121823 875835610 39860357 538525411 996809810 696905862 469935925 768662390 546285090 31141483 512375113 199439223 139232036 754560209 561636445 174359221 919303422 808052704 672622603 868579666 412839698 980023702 871394259 161492236 873363443 395779572 821687991 40167820 97473366 227070945 859642940 897998403 989111800 506425856 11183479 106140173 23898427 593898931 171138611 352923033 915908057 412947675 659191544 282422422 214277985 301539884 647779956 625337007 100473765 720713472 79954803 590169588 249604280 352404285 825208492 484884125 714869657 422763601 132543780 564764185 993334978 550289515 131752505 626774266 454626180 992960021 466379660 678242398 719108716 124556777 708105092 789136349 641168685 685673181 406024576 184735661 307228351 371925046 37774133 568229182 420522504 540170601 321257307 458656228 382255057 412625922 955830645 354147484 150496567 877191003 678817111 595953791 938450877 866607731 62368412 902596175 835725794 400356070 279477934 522049480 112248684 292454295 749379028 620122105 154304238 841122015 359597654 934560133 12588336 384806295 78465878 516929972 129129316 609292056 827526896 192168159 581885262 360257505 413541342 609285758 517863609 415661566 484410858 492172215 717946208 771826410 642604948 172576029 435693271 741156322 633571681 459110039 601507097 538247147 48753649 306917050 580723279 637626841 708101674 433596518 558634033 703372450 222078137 192841316 481660118 178779601 246531707 213813728 239032784 906661915 763872396 728708440 940043148 639625256 996672789 741597095 660318013 412871040 156372905 39847075 88720585 217149717 228097371 159309844 219042753 735421636 410188895 300159618 855369878 240964629 285281772 650611880 62274732 66413292 309518026 749547687 786646875 563600093 334717649 611826590 991921152 58019270 149643363 547030729 356353384 381373874 581423696 796728065 463795764 837904147 130693483 436358297 792298844 829461604 182463091 269299110 625119298 220793132 767045396 821451185 137549951 834941045 683342693 964584184 129481077 48191166 435422817 738969391 908506870 343909480 776600886 870605962 906494955 207662010 762263828 93541117 56299852 203103958 790909601 131973799 329147205 477021337 982863700 940712842 633373 729750813 591115167 696577539 528824871 275427905 90369175 270438240 959222990 202981378 405503518 603411277 857590761 879453050 593138503 476934587 22126430 167679169 976891060 566853892 897553938 141182525 950348096 591358487 53647484 785355308 199140076 997699185 460574665 406831225 866184506 944459408 179583859 579020133 820496720 693995232 433788400 502078682 422287121 529855521 921761062 936608189 697849353 2623619 316552964 378288587 999428129 645297685 251073245 834419604 8047232 17156639 976326383 562200683 377534438 185797326 302354780 54519451 987252611 292922421 689707363 986882023 729785677 685375519 531330467 823756656 849053252 662949538 212482201 89835308 623650003 693777621 347921259 216609708 259946686 867285616 254882541 293709835 766355192 799195606 652600735 881643683 381171617 317359609 229246957 820206423 557638209 228061307 467132412 898628412 335286351 676271049 440674248 484173370 353432134 703275495 105503249 163708154 390007069 693830399 871188158 551919629 972022571 825528715 315898571 885468626 245241679 621722366 109635637 318106374 992910842 814202262 487946447 382411160 82711908 47852664 349927671 284574299 558374834 855473777 954512339 883559790 757897941 458063192 968839501 62273863 967740772 103167859 380702313 945339888 660744355 405890257 631823319 713337539 525156278 416197596 310725825 659336483 759544980 490655019 249550873 235021827 9375496 823803820 747775050 864053370 598538544 263723686 63315936 993146889 889721728 151021388 162583288 129454212 841692653 178149220 125280667 374525956 490509941 317842530 599287888 612168155 520736032 445255070 938693309 708170789 515967619 486542011 444030085 205474884 643619729 683683808 703341017 867678656 786111329 587225558 317472761 271681155 43638310 225300085 789810124 883676302 829699184 659195215 759765950 639534524 663963273 999156139 231998340 820118233 652360687 162046352 609872124 702225095 112108810 519415050 274780773 157825243 375188217 995603141 172096754 43861381 812212685 940529299 693682779 584841367 921417168 915360410 374859094 415228915 21076880 417202780 496373948 436395426 273644851 623877568 491111072 621243985 722786120 632910328 744418759 181197424 863022471 299293651 661410088 7777867 329400474 752353509 361769477 587460617 270882158 592303187 782451588 344175484 933736457 613252155 766969384 65901279 565846046 838436392 138827441 616517303 526523408 621836823 147071331 425399715 317481935 630032421 931399339 438567057 144310967 377107642 91023430 871958613 360890238 180020563 60088845 953656336 778062 527049236 592690993 3317604 832192647 330091038 465693630 144884358 327376497 492043599 49479934 709570032 479839327 177246074 591472112 650564093 224961459 812670836 339338592 704335402 143005481 37064454 896347202 239374241 298710037 254834068 443837526 287490502 256612764 282724300 401858437 152146971 906995280 951683635 57842695 338649936 817461549 418706565 223964521 767933692 232252411 186587311 422723230 646929419 634278801 757064650 436799048 375548066 866275469 287401262 359721841 838341775 540567450 35550173 549903468 838119192 943266552 336900947 318069348 825079207 293207823 163506446 88288617 917433628 159951455 696050895 317370188 934908315 929776104 414542759 540011542 863358048 179939405 349205923 753754255 353013545 378002453 146963615 204144095 372148314 238964454 26207109 313445663 80736024 508780054 173326166 833299372 360927016 649022795 935722982 738167365 64001170 350807318 889632427 123742736 639359503 479572736 236765344 129855044 650580668 130216882 970895274 213308772 772478284 251523806 928595036 755968745 529235607 48847476 633998157 257233926 738959585 97102692 325463559 53127884 309093437 493879130 621530241 55353956 731653557 862524233 547259221 753238923 466755517 177948809 471580411 225911629 493716509 806509250 270931328 448165986 481935581 470509414 568808324 861848587 237576895 37603740 766904206 284155213 474950448 482602031 666588682 638779220 383102877 841844822 787050689 714472902 761433465 343431702 226688175 934056840 258377128 4017206 722113132 881934633 188679691 830093931 988227475 50523167 124134068 347807996 168279444 777087737 633655255 132446305 362288769 495095115 461326968 110467821 404272395 408559616 381347257 725827586 378224414 893925881 712315800 538532935 560319918 972663324 141294749 201592076 146029170 202292159 394240636 52285636 479941345 186011192 508440874 919185347 341683335 589098316 859065235 944070327 182065202 998691073 956500312 322440690 481280689 697823554 193333550 831824685 516279510 78156959 250182613 438284006 121545576 935207325 600018865 701537302 332121294 789210695 521031053 507239297 309156232 526071829 768911425 66711001 954801594 961382952 333420636 395980937 62671612 701360568 125689239 450951555 410581752 151902529 965342506 608289833 865593534 870517673 741543740 92089784 614460002 686348806 872398932 585109036 982956605 651058183 480665364 369106798 985647485 353188305 754018464 161541138 302993785 863446868 505606808 311784476 534345710 59641870 592055981 271907996 544877282 64507786 315043777 303220937 202581295 666331157 965319459 672526726 292912386 864854710 768252418 424224581 238140324 759530691 869187366 185492047 831690895 672093675 137590689 943195712 93489755 717340471 662900770 985142286 534784501 423165788 156698197 656266706 269624701 261058694 970623838 4119550 903567658 764032605 336604458 486584456 679339475 351919073 316774667 55291487 562052187 423442391 783681687 658021228 665785504 518859646 714716876 308400584 868018100 959626781 572003817 332145358 454173179 660275629 854212101 180327943 917194947 38035603 436250607 920763449 293835075 397883845 465258493 547883143 207860939 168962029 723898240 753568405 986566102 680115421 786587314 774022616 676348496 775909718 632127896 616991779 485072801 958516744 627565036 468841347 38986820 346413068 113307012 379448325 991662596 715763058 88385134 515559612 896868629 248092094 326303068 219859476 905535797 310325441 63989982 4571744 380440457 305243087 546691440 39317558 867492927 694328952 890823657 513111179 425943712 809369091 157885312 540753971 906994903 941591943 403895923 630706968 724979645 778147456 971604330 513575899 49075120 154735110 105758090 61070100 271401380 881175493 271855860 116548601 52733301 780933629 657075950 680573475 362709897 654959742 113589056 953853654 615356227 673952390 600174093 241209780 570699083 8635211 111391566 367415481 941764748 236909418 807877880 92578212 251919154 394722778 602171347 824971415 83871199 187449692 546272669 988507866 737275255 416481469 982617777 566382823 832965340 740074708 159314424 914725453 899004956 423513308 707895436 274067848 552022861 984535410 541333120 3329849 585035114 879727223 29477801 926775127 904227207 763038310 724061659 642794368 608182637 399121267 257814309 262607671 603594765 381511503 828926120 386037301 231379688 455351716 251209426 753795617 905271320 560466827 410965139 69797822 962359861 520473920 263030656 990683325 305998937 948021222 897019165 140960820 266152417 792098317 293928535 404913550 97609348 276020560 611122576 415789076 785053629 234076464 721686364 125901258 873192047 324539747 833561757 147989803 875755594 163557321 26856312 330446425 441442255 763408750 321649065 713784421 133318180 344304062 306377781 69303355 795026780 159781870 634693794 870916786 901110914 831846077 613530538 889680254 950007120 877889145 311129801 710013658 89045516 241991812 768964198 37884795 445497797 677645481 347418022 959089511 860974829 57758785 619868114 591952467 328626455 529029864 810948594 899683924 35691771 747333198 932199717 912841492 398374612 734201588 867737090 748057584 744240507 320522277 166828354 512189752 295211497 537114632 625672130 933419347 124653911 697437023 374107778 171233374 778733757 979693160 335461662 921152668 734384428 233632622 959989152 592768458 910371345 25288955 734404028 851991257 870878442 608551384 210081434 587152081 758807337 10870893 736687583 88795941 695267941 188491825 617397828 19317226 205445795 422511919 727978733 892739547 211852405 168491961 372475824 950839288 52289175 648144686 46306306 48461050 916871737 205539790 460895944 250721169 443029138 317940814 414266948 854483369 695324623 711560114 920117901 694204458 584241162 146250775 333651166 234116874 240933584 561132664 995730820 882167322 111497027 914542762 478036700 533687160 476403317 95522778 523057778 151926121 668344269 5849429 433737059 392822395 835951974 626928682 562456262 770097812 377739891 9300628 300663653 594840381 721395051 869110184 202718861 878149771 792639014 652319227 432049555 773284907 625034119 320148171 178231151 305613913 105166083 254175473 876398262 602316692 698826500 615525179 151562328 560706217 97556997 350766843 963268674 831702740 75559770 220970490 366633657 134101995 84854698 581638075 206660096 171359685 924250190 357430972 37689166 566935728 509841714 605446944 295420016 636881399 232760177 947805036 797572547 60981193 584596139 287813953 636045420 359193182 722993679 177299100 512393334 65109969 965484225 620061994 777445103 855009560 8458158 129294289 733690178 192041522 379765014 715766000 940723246 717261750 927380457 153732262 763541482 305861281 741049976 47956959 972413666 923761533 943388434 668343561 464546091 244809369 489434413 298317038 861547118 618925137 839427853 760683260 939551843 57481691 604673931 578821703 843949957 905928135 99948840 725001541 389345854 834220109 378205996 29043645 197070768 353949185 537474063 936977272 146228633 351576171 292622750 586891828 929400821 276748355 469503265 59423713 895859142 419868741 201837807 118482914 60169452 952641578 997104309 390255171 373496358 321922943 929612065 260028770 629930673 269642470 913409349 540930154 362005997 955170523 902406655 114821609 532905225 514471723 552700274 688787463 209448637 373671728 456578971 368985834 721076976 652451967 829138253 438378729 780426087 258692610 401043914 48963273 200267566 864328493 692975741 682417744 784081256 386563802 670362740 156010470 115823377 573499885 697476380 797084102 185831387 235292024 367069667 530191284 31724591 593912451 103030489 624793694 53546542 244448019 131359502 363964086 854402804 582877821 375989396 21042053 335560261 637509618 56576969 268159644 298685363 488574918 629834536 168703771 51583921 279506784 52037148 470167433 927617503 884770664 105178845 761159881 939929875 377020098 55761173 860795878 354420669 66220236 736686138 971530221 371862734 672979811 148734061 248956487 697232560 686062434 589950545 763511125 204817159 909139496 296334267 3430607 722556378 994326737 55024547 49293842 205774294 138480052 972666186 501281510 45985889 115776574 103618809 479780803 464009893 305874217 133866510 507197980 876790360 887817216 972177613 377932088 846464225 624189075 737983794 998185924 466216085 729723858 72615762 628400319 101275170 435590422 242745613 689089611 485218789 571814124 282839282 783543660 688775707 978944955 162957299 357439522 418497080 315763022 373446143 813153867 739293331 811041826 770585893 494997822 602119323 687709459 882251750 952448020 482541575 755063757 750315369 10667664 731104112 731270114 448062210 185262625 401552095 316678959 860294700 880967834 910828724 525939593 302973615 867030029 167804858 476163345 56269210 106253035 912990724 212613566 405824143 837659860 284335131 979452887 900720348 324367586 621193735 324433417 33783966 288431440 795601075 722401091 599229719 50153316 413258562 104666503 282842060 496435691 14119457 865548203 119018710 23464039 574631850 135946188 148217059 257029614 218823151 913906628 899592414 585532827 856678295 730707402 453762474 381782438 514059034 811681828 742459308 943858650 848060958 539049850 142177816 800780445 261948915 577330239 534719943 266851930 522356196 305848956 584780431 446803990 862765967 988272850 540260598 969523395 550563121 438671118 703107040 766822542 980040148 79044958 464870879 952513479 18633577 657406542 891602164 504291870 837244166 418131534 672983140 19925404 289844282 174055371 278837374 216682561 607442711 382418429 829492249 109819393 581815662 995315863 290121702 790469843 633102646 475418319 425827201 949785551 163611333 517644739 753531624 872346091 581517509 660158307 529554512 855358511 781852793 570871089 570730987 619335593 126232777 695945948 745225783 88843479 142312868 782757694 371918182 499518814 629896523 309034540 638466625 833011828 15184893 398287442 716303161 130028354 138065490 780135937 895810872 252537783 667299365 618691646 706562447 18983770 621209390 273726067 846641082 537370622 731305209 953091535 559860753 404028102 393809137 340305778 723277136 423968895 405895937 91751144 648570687 526916854 677806264 741129404 625363287 255698529 118955441 157897679 134593532 642817638 84096770 286387870 570710189 151487781 723044175 80608508 382017734 287037843 99701643 965716813 518631623 906468084 629975250 362111945 564922905 601607279 673994877 423458742 131924113 246885332 247909298 645740537 787112298 280825887 881622440 321467940 910147823 294028868 815356253 136734977 164379460 973231890 327650497 935104274 555826049 633043713 216557129 598056114 912906877 14033431 55467009 978008496 129722809 17114910 921540475 949602621 322265016 737019471 552305382 179971576 154583998 986664567 916782702 183752155 203325105 302787845 305868022 483375095 799245113 770933563 838200731 3083014 359553480 565377164 461444934 849817762 612534624 78818434 969001789 675058124 350345772 468915138 896400279 786096813 387735440 458411751 871540281 394187416 966086162 104155378 179305911 810972819 814521459 304517578 975962171 657054628 857193297 88534678 163040248 407081327 203281565 902331727 92226198 972335243 719625778 773382555 234717722 517621679 728726777 118621037 363601677 848043202 557990605 260461858 412227954 498741237 933677488 477596023 546781361 709476670 301395824 265876621 158455962 347694426 142712208 246319374 648042894 328375582 78053230 151311154 443296396 605517437 57983975 541670663 825690972 200289940 651871666 858198029 775511105 466014906 42585226 192120853 605247206 297497661 572915407 309285177 643168913 186011306 753843735 327932367 172039129 201945753 713450839 726285199 599838038 450728654 421471323 686162847 630155399 374527103 42128870 225501055 910374905 469225150 908721291 577611109 152045519 853837520 209610290 291734620 727623375 19325807 379341744 324450528 967411942 670163073 725611221 519537973 707311551 142333570 826798538 203334260 116985747 837000364 64206705 144094386 510240668 289455342 224284980 572219094 186766050 702065626 514000631 126969512 33957894 562941821 743074015 845938830 886679387 363670179 350924365 750886095 777735027 1890939 166035979 148550960 944607176 805745898 849550963 246870798 950466588 802868750 170025708 844281583 770677913 300770546 5718088 87557862 737970973 849144006 806222419 255288327 175320664 730113255 888252716 745881966 942516976 692411701 498348482 670130633 423193551 225567120 725089239 980235463 415751024 909256737 297362970 832713143 255154684 149546634 26953975 69449005 515346707 833700564 111955671 283722363 269026520 436803285 700600174 947989903 647969222 301355707 482888472 826392743 137617744 337386451 534823736 437392143 112529375 227244809 154678741 776273646 196519459 941295739 603993107 44946025 41189901 46239706 24389800 603976557 780250336 198896850 135219381 443997260 386129164 652392275 847643277 281526905 184251981 412024462 72096722 27512620 379669553 391470063 135661817 254700789 715818975 6704421 16759164 515986837 809886625 271823873 892815862 596887341 93431808 399997906 451980133 731003862 554383378 798324641 669437254 321653498 691196097 945918600 304815051 909410925 605704080 143679861 984424608 824007750 420826164 434536538 189984956 279629988 622261277 609211434 616036456 860299983 435089438 431258523 684335010 818927081 702384728 899320045 465643943 476319162 920397363 681443342 512971289 250454099 841701252 462804523 863713445 616050415 398930247 612540875 349839913 851124608 44115820 901599360 616386742 502290624 389408894 473788460 668563609 129412823 117418357 890618220 519957396 227184358 262638667 195972966 203044307 711139766 552239890 45763934 128097337 191971009 175355183 436286192 582259453 95319198 676278259 6423897 532502073 69398382 366320984 616218774 85135173 465005574 716225681 286820219 476968689 279543765 593327066 4671325 69575618 236158056 93748234 230291548 270029330 135940852 217994628 552491521 872529371 820475670 857453230 297179358 546626168 769063427 829473830 604647832 865294194 53519607 729423549 911411910 27379364 356404832 143777358 702630561 554367402 9475440 691955612 242170911 934309693 177655781 318913608 861161579 666267656 726519091 842147494 574985495 315003157 709315214 7129478 382149319 659606347 591428079 206968711 814918217 636466748 995901238 986478228 783122521 837163839 403417341 52693353 908247204 814033615 233182646 639396425 953151016 599446354 928959634 218418314 908278846 882845706 117746524 222165219 806882030 836913644 267957580 173538153 410203138 347182393 637003537 424415267 92531177 933389470 12386455 913910032 312624695 84523474 625618249 732702989 377439894 345122615 816571551 779659019 335682956 974628937 613703273 835161798 835434992 287481654 591459196 247539070 842199659 207090863 251810711 659598378 561616232 473532954 489885887 846058297 662567527 837121388 608839766 464555940 811507052 380809497 947311319 346301729 47388364 413525196 595140621 225683794 459664573 103306953 356883069 183932337 747236920 550642827 991705410 455401972 722702519 959401701 187576565 564094654 250675177 785383388 963717418 29908276 142937790 511872809 628610959 4020871 186583505 249561604 203715677 42265018 708422155 183932473 890478667 317203710 869523196 415194946 821453901 354336177 642102822 609399220 455281608 501915626 585329305 354868596 214224143 536405350 304303742 326667285 757305776 360963238 757440777 280271698 279343425 34286770 30109798 319842905 245130906 920448667 485752552 894185949 548961424 111078402 338072432 214271577 139059865 675336062 741136156 121002003 339485615 567029178 52365144 781462345 729948315 677290531 88182397 447742178 415618404 235680878 262129659 724589087 469397649 457584502 165993064 625555061 423509770 63896415 746836953 996724657 545678115 557755153 923461357 678714110 941110303 235701092 980377181 997236968 530789183 891066123 526833864 530849530 53129272 144603726 65606959 572324720 563128704 588043181 614379604 358280634 323279043 558761289 874486250 226001089 651054737 926422943 317510971 332946164 534830817 61532885 970961431 341171041 705539136 940664171 289914086 205131970 304833581 972818497 439415841 331591082 19460108 875953522 748333422 168578092 482303038 465872948 723942468 846577629 174309503 678262272 622147584 211959619 733921967 673387990 818573671 848792902 213948404 749850826 141207512 145047706 282140389 375875067 388730309 846272272 801192963 141857218 255762797 251680250 125069430 746580355 2379006 47739071 63092469 192014151 698429524 748724651 263586874 75659774 662767711 832751739 756140371 994574332 686016855 704652339 935372244 467598118 912699911 637015292 449630530 221304061 197568073 565665992 132766351 179989843 159879053 507311051 301281454 789680711 406370036 307272213 756512671 167483683 878364696 106769231 330928655 711028090 220675952 536898027 169346187 876919589 564103667 976824850 823588029 383241462 496897003 162606501 502713125 675876940 584197546 277989234 827684637 941850006 749441501 411756494 507182578 560633642 954553836 804294348 46737787 916488285 257097711 313264244 755568637 408487038 774762074 586128764 454407349 971784257 227210454 127191097 205916572 659874176 913068417 731898517 727741335 220412047 857616244 337993403 642569908 656840476 167526839 373952163 898657217 8388326 754426906 540388975 923788556 754124858 439137344 168756807 7038621 453578086 61191618 91953722 967884792 236211846 441351182 543663897 496492563 991289943 182871953 134498194 601242722 756672364 285181467 238216559 336690467 161274187 280497971 786706023 800367331 457073391 471000400 533479830 652919570 822570426 569080343 246221241 326344445 270178585 760354147 731794128 4864268 356370015 420352627 96124990 554814569 828477312 684669610 893335127 371553369 273159462 531416837 737002771 641041379 249322310 397369539 351467525 45384143 727009205 177919651 65227054 231842431 998364330 699270179 466047860 398771114 365222765 565788344 193615914 512673545 30333559 742928987 891422699 909633966 244942629 594350307 372396877 519785905 48617962 753636171 797453760 135106528 874651856 65268340 171744529 412376041 811743925 329240744 815235639 785553575 932440501 778373266 470587701 229998980 296389119 407226095 926986912 666189432 870562051 560402598 659617065 667432508 88759489 495735040 549019628 476348797 445870456 7057135 611928199 343594346 677916451 808831904 636367635 657420717 743591228 726676189 601646899 775644482 435662831 186346467 323620560 128531730 780552061 295703299 604553825 159407672 264889232 882075741 717860911 74022942 878725243 965541624 502274723 658911357 185516910 829568168 785860687 955905538 619986071 377509012 53796151 135990212 233613024 908260883 756953581 544222210 280643429 284339735 647949172 185201346 846338886 370060248 294210114 559065743 844975497 257128084 828521268 451092657 390918999 907266600 448926231 196158653 968079751 992362355 50785171 472468311 165000525 37886148 841755328 22509873 786697604 176077818 638116814 879624866 572698047 46031769 101024360 121701347 119504224 204973963 702143962 900741084 779123108 933493357 380115530 479348028 160614717 826641198 870785555 196351733 182998418 157469071 694062916 845925701 564501811 604381884 847892197 37293474 617930798 104835927 433816243 739117290 799586531 618346852 508248343 137604898 768110448 556683751 583142411 359897824 60545320 429404902 959621393 458641416 155122494 235641006 268370794 342625229 234159647 176016815 976280097 251530117 587109455 170479096 57580296 393515368 580099073 406387602 383988292 309626016 451189136 515218816 601209910 990284409 706701927 475106490 819292714 972429263 903823147 544751981 393061774 775734077 510149002 870186621 950733937 959487739 137647409 604534090 23911253 684394576 978850961 397170318 698560356 632857657 659895227 756634715 107352078 161737797 52513870 478902976 717096507 637154713 272221605 635454002 555824649 677371144 581267201 924317035 60135941 556905449 325669761 598963593 477390629 59347888 140278575 58589593 549853883 503877581 321512611 647754483 215826177 615221590 31303753 825234461 799324227 385356830 378951537 112949802 746430100 864113469 387203995 939218618 724994959 654208776 399000825 749448700 725857820 464194455 610839702 465784208 917202491 148317637 674854285 927459913 542826529 229951412 828240449 126524941 381559463 703224488 949523484 288299010 962144157 158168069 879341430 363934506 742537182 118012374 222267946 531227982 992347388 519959708 600676715 637996826 453664561 663817103 365577430 852956072 689328543 957329065 762825987 832665230 740194368 430054802 831574062 858894273 970043675 793401190 510119906 506566723 968180093 880122445 592637257 56980642 240315825 433341226 32331238 99989 775260385 401957204 187761549 388758643 590641398 151826389 166887494 614888993 726725454 804857788 783293691 615872950 930395065 567668044 652217814 888129159 427873757 302191108 36276334 594523439 369335187 282963183 552880435 468769575 753071673 981853478 919614288 752855975 96051132 782763519 967826046 537519802 685755640 220728707 71526214 444009890 992343501 968650493 68707108 539384868 882290774 369091923 18377353 399348826 127873422 478101721 631883823 201589077 300552603 719930132 997808948 113970654 114076955 820873865 68047450 729867701 740303606 593533311 290687184 592409132 646482259 674199607 750669842 666843805 409690189 689779257 67459478 309128415 217211298 119435629 981732120 873753232 920391820 966948243 70491249 434907891 195518864 635520954 192935126 793770691 595233459 99627476 611407658 142565062 722502034 375049807 230330092 257794645 885942015 891664829 653824739 639571226 635280512 457961007 338174022 6092089 634436544 116935777 265394013 93505167 826279661 284800531 483453312 192496409 701243536 630913180 22252493 261013612 144359667 516236249 961144901 767570551 621044488 453661997 772966596 684003463 134964032 52590047 68004122 211091129 791201043 891920866 470501200 664777865 441500594 67720420 873501993 78977718 727840094 136973678 562782961 438206662 209495572 415762547 650969026 153201811 935486656 405732773 437784822 22337500 989571525 79869675 186130051 321562027 267222707 412572311 20137157 755190512 151468435 882067026 221338506 159259092 606046302 529547830 721451637 919772426 451889294 588639830 455811921 298454434 751504020 266374495 12406568 145157068 957172611 658466555 581285567 172266422 462188433 859089255 123591363 65751074 31707634 514696779 623148918 89371355 861173977 102927973 789386197 290503639 863903152 208664989 457940581 839887046 49244684 325620066 225825818 7795342 434405020 667178246 275839504 944179869 59210703 991643994 582841493 39118481 311413687 733820135 313378070 598269726 991949937 204277529 596289764 233776203 422703629 238377058 964793864 52291978 871512121 75705148 284221486 412857189 228814836 166965513 772762065 755413217 833757382 453679094 670695745 574692922 597644979 271100432 608641661 260971479 792733539 13569388 899645802 775968685 272370970 824628318 151683175 923343072 987520073 661160683 522364827 814857808 164423551 856554458 343807263 299949438 227542238 65884454 201141198 586297029 914060609 135734135 560362652 618410898 902093627 883574348 711015810 167969403 219301887 276957117 510460592 958591396 524018463 525687733 837016219 735538241 18943745 857348969 489787648 948348737 518681749 871690126 508015607 754295619 484818989 580580659 951870541 811676479 229354446 700160017 913863862 824395539 985114470 654603412 106241694 803203759 75014845 875556648 965270262 727753021 999241056 416635987 159820021 736725829 901914682 960592580 797978164 388027426 11590869 181929533 708855176 397108841 910479561 978649204 377074672 555010638 600236998 463997061 608237455 916960827 954564976 464167154 137050674 300095932 362295071 622850933 783323612 980341965 541665008 106696057 33674893 7228579 818943183 412801155 923473663 87352142 334735449 849660654 764306183 969227508 34289820 702096152 918939917 661847524 830167851 790233032 434777848 205862020 29484308 538320579 458169352 413912776 980707576 238372771 443420967 113173843 599823749 616786670 263112038 840568358 870917596 684703656 85240268 656948490 190370479 656508528 360215079 498695927 926991233 763207471 984862078 821629600 460702278 645243328 855371175 926864986 559333199 3482030 765999072 183934160 574863441 643538577 315408216 3742820 196961788 450984636 202837767 279641368 135384660 953981232 216142110 845698676 831441431 925644060 835683764 404474497 118755266 699994842 757637174 91976905 430252040 365636072 16947801 629269113 266420683 174267955 120225949 137890466 771069211 377744718 108191471 446553992 50747043 900805424 716816597 23168564 825026989 631296715 716067170 958078401 800132799 295619429 569360805 667925092 683856991 294033899 40875230 960826515 867517201 635821328 973612035 368577751 291449884 482644577 994645005 519304651 180332842 21240386 923905874 334102233 406665254 486082290 938867430 667672468 69439094 984391981 177762333 748419159 838837533 422641482 488577784 658728345 372778211 672530930 899425145 396840439 233843544 150697549 508205397 126463222 189998408 145864886 589293157 718574183 347096196 619909008 639941953 56112300 941408085 536912347 591122092 422161878 867855941 921333284 576804014 200039643 205338998 456615929 242648640 84920611 373643175 947699134 705673983 522818900 732646206 248550455 998944210 144596031 620925043 367542213 789922880 677981930 888035419 92826501 472847910 438385265 157114330 965013853 111578308 762188273 557174282 42368635 55204361 821122450 670565177 234763745 675201239 700630058 483109637 204158883 825010425 997145231 738610259 908058551 689903491 662202346 106732385 539129203 140693110 86651656 20336351 548415561 340047933 960555603 265665788 933619665 470312780 773347362 588813684 124692146 96757953 882536472 904457777 303955228 641763082 956732688 575877306 617047316 761794971 32738902 482002294 130341449 473976592 480235223 22863449 335943931 401777907 483046612 758202396 962651216 566556679 876965078 902094607 316128267 582480015 625551030 130635567 91081899 503155291 366320947 782841590 153446995 858852350 322076662 251138578 653217723 634957863 429353030 553731144 635019097 12479122 590241119 115139319 696997089 356898391 234316617 223005659 222450487 137756986 412463713 821523042 306027128 275275309 968370614 801859029 837180508 503514797 774908154 771103392 903273132 468919979 816008156 598717931 278159002 114797950 32430751 379721135 880746345 618973879 788255285 284386551 548450845 557340304 475951762 740129472 387214375 924401725 986191809 96211222 873160856 354955628 426787801 994177490 517991228 545031806 61025397 195100485 583609247 500648984 211341421 705848832 956798610 83314914 299464854 919425001 354133800 91858382 998501424 145598207 977428048 585578960 292882489 112097533 750162615 418342062 45029523 33090254 607551914 597037924 189987599 37391425 324524638 867145843 359857452 482870054 333181079 703480058 176799455 89320433 892081706 328766212 385910745 761910304 369929575 829885188 523700206 656897577 596281308 265614890 459973130 510816078 586199718 410034655 619313185 386208565 585779435 154991888 594813226 139351474 220111224 954705964 721567607 304638616 681235900 12368151 244656458 985091418 103327155 785732852 58676585 814597467 203136872 467644345 463895252 49853131 180973755 93508802 730947228 972137985 632610973 514425769 468729935 358424134 525278625 784262401 985517567 283381743 817961678 37531952 117026353 617815313 704966650 156787502 817800578 825200048 92588621 441571053 709173680 40910923 468487167 378074563 433726817 734885925 513919387 693401400 579587049 550945176 538082356 670476621 893554690 488150318 535982908 419098330 837653737 869358999 492958029 624106326 361552340 558628126 31797012 19620572 927224828 93371580 458212069 104849034 238870831 685107202 474458612 252264791 384439890 363448815 930663143 638806818 171178976 509294839 767169706 609157400 50499350 779471092 290021950 317759591 66414240 208090977 115526503 636641062 81616049 219620908 130101810 380391036 364536655 648794565 773397373 700452407 754327643 617042233 451342691 217955980 582660613 649096643 595829677 628715728 528218852 37343805 348908717 505713149 155578378 122622075 305033475 314969075 464126464 179875518 842324555 469993138 570210575 924736567 575364656 44361064 93569829 889180913 944174055 769135766 788615509 167908649 468382255 337084752 355151539 60747683 295586976 728047847 271967075 952338678 955006019 59797042 912567483 609068687 350982101 978415055 496607825 601656000 534337222 430428745 191237832 203692138 640160814 421098139 227078063 737223954 738132658 119711656 936158262 878253066 538403950 173709885 959129325 252232927 917929089 366234655 250801948 388902800 206625537 142164652 938487116 303546358 527269224 112583027 553042029 614740176 317207988 224278048 697409550 538288370 591030729 440214319 499604677 94202061 345288509 105708433 544408762 109413638 246067626 603497884 113648471 144842484 354113920 63592783 521886911 779097927 465570914 760426434 841387342 147311750 249633337 150776735 998949839 875143706 111895632 348312529 52106328 694969148 607338027 636210409 788863772 472568636 299837215 38532649 536376298 741668189 552721217 805838914 556618163 327972033 956811615 299831396 14341092 383720444 150371682 878000164 683137379 969052845 85755410 101519699 593045581 310104967 458098163 736337647 119416354 643018093 906132805 574917679 356767500 31843823 580713596 519612454 865635908 363824382 451221018 966044132 338234003 130030926 436315470 546490142 678512841 631164226 173839878 877733462 339131202 396420873 678387788 200651489 694997691 731716837 271482869 342324786 321896375 838417889 927174985 103153720 8738464 453524942 794124617 472426810 646440064 566905437 12183336 752749246 163004599 647910983 284934731 343498869 408862524 66957647 396438314 52514076 468787736 51082544 644207043 796106729 315402976 582716681 552940135 868373386 70512983 198841045 942474736 714520546 314791850 629894065 996580792 814220392 3108218 732813177 365681292 163239534 559000422 633536239 555566591 260159623 498701396 345348097 386579654 482538811 654722949 696549505 639741516 104518892 888567604 167379664 769135565 838865566 534552731 777433284 250057267 444631222 853492315 223162527 410950884 495307460 415400594 425490328 682091370 515413489 504989283 372611721 294262256 897404657 528777300 755119075 525031439 517933184 532378090 962561242 511061206 138098482 188244677 102614560 992494654 206069724 905677808 423842680 527851257 740331988 781697700 498383773 557296378 954833018 133341719 302543036 686930302 211073084 342179239 835640840 733870765 613604409 603580870 458628941 574850402 524292445 292316888 666158824 195607553 638062991 795148045 196956077 217107101 740005013 569393788 969738035 732148913 798385736 60473319 780096405 662104020 21289686 576040090 609700750 147253145 336198806 38717881 583343564 598498408 915491837 310502914 178011105 994771495 248111085 735403005 349318937 156880528 55883860 422675689 231104374 192031912 545964998 482710984 897332254 286396161 105662397 439941961 341775132 562985849 408048414 460627273 944971690 557082534 995216147 771487528 423602470 656876028 600593249 738160738 504365646 152551044 678987186 870440147 84412401 634234140 522111531 406549709 307731874 297218126 417521608 287012501 676179542 233578840 573804329 434388491 358447598 849852714 669896623 369271314 301832684 592761671 921904897 291436794 958559979 117122371 37649517 842418171 807351185 311573459 131581203 182390139 32481589 510851013 34011709 183712230 130556383 611670296 331175315 18210446 130716026 607492187 35883303 385870596 905333255 955520308 456979805 340490161 321797135 639480958 689261259 736342026 545341434 129102421 229387715 926636749 437602125 746746648 74026751 866122703 782974908 202250593 429186493 14308400 374009608 876640228 971058878 915533947 710889012 253005489 874642864 168633683 282340060 354068935 87202112 212357344 92190564 167203057 275473222 215982405 648053405 87883754 19937629 386771571 862060424 812692919 59391277 46135897 185939194 41257824 498425719 877680167 561738389 697467914 496759976 830577295 584598502 165689490 48883081 443325741 847756419 736761343 420336229 889956007 884284626 264648559 399504695 576269347 534673277 771326942 621367780 126510351 65511295 326372852 846912674 683473976 503808638 866247952 51913060 102091161 726591184 432033722 262768241 180009317 261730974 211766338 677582575 897184073 873171376 5900840 658353085 965091626 558634911 543919442 210990104 493029880 872443436 229008692 774944320 165229415 777838291 807099678 430567373 533610500 281427915 191449641 751076739 203531282 484111389 810632260 215874691 220693698 821231119 566112096 189068810 811073457 759909667 955635566 755982278 919510394 801865336 235287521 937794354 425529578 429975020 29336745 277505543 759789317 929528744 31674419 560003092 369257084 870823437 691978628 472043958 889205701 164558459 532763501 720529754 274335315 579962950 761448720 61895536 212483629 199810032 607197043 239862232 709205679 835966691 676520615 963517032 682288917 462866014 8580675 208368534 116346461 265331078 510911583 583690802 193136914 442957739 997302132 792601193 595139236 479181939 917138916 894970642 840650346 639199636 152811590 609000803 238615969 229208697 475507374 60145087 983974818 8848997 735380174 852701559 50199445 449457436 933682330 303934348 481499608 781560392 147355456 249350496 243233820 307192132 277964192 520981796 128454858 42010643 972309504 403958743 601560706 370109997 150776770 32086231 462530954 697870615 205215410 327179527 117459612 352963896 868297811 622378009 243990281 656337267 494076122 297103076 718963283 88715807 227745966 477007599 785495999 195729499 217358559 278546786 147554196 26311501 56339016 391103631 421502950 306760936 408034159 915154809 325330761 767445729 564061369 249088456 113882705 739431102 869119645 904633986 845732887 595399003 365669800 113392165 164136628 93812059 398190266 136500438 388258822 230394762 881770401 959657790 706005844 476598117 429049829 506921939 42323524 656444007 653313300 377127266 551724093 444227140 243970575 455161553 366816235 318466275 858524857 391397762 804215082 368344443 820374276 490203223 388202531 577902032 266313 515729584 457713790 716474922 291188632 151264081 227632894 609157789 639519343 715293177 717879562 762999544 354062420 725538890 657774059 439337977 893602631 787671866 15260981 470757693 77587401 937957041 770878848 774171864 266636644 555588332 387507519 54877540 33072943 322390310 690410995 138361674 844757123 107146074 983878037 779629579 523386255 158301201 312898508 923293200 541199975 156623417 542175332 229679622 783733363 574345890 25323308 672080511 415501866 584099937 492630451 275135156 111259741 245974290 77588031 280731236 52325699 975968241 45730470 6804875 95698783 333970667 58569650 313759927 721839535 608456288 468600122 400768252 510204644 134859058 969696221 516911516 502425421 416677504 763838785 160860971 643325087 83510438 219398862 245091937 712390429 334274159 344819943 54171522 702344652 531193399 18552484 911608188 733640665 66387457 557033169 479272193 713249232 473117104 979933422 483802404 404224677 131999465 697361461 97379574 561992539 837570469 154280674 162626838 50738079 558587410 473309537 461521719 893216575 878349158 539340806 746254004 103890093 935198693 391870395 674604477 200271566 867019108 931372345 221365171 757721777 628260050 867687445 3964067 7927310 438935204 435625673 416040271 316812327 267778573 355944958 723382874 559081759 602146074 834038670 755388551 812945276 151590161 624694440 415081743 993127510 651315526 447148659 96490959 550285858 425877326 927103481 613731982 857205188 68309152 392325293 908137040 386853421 806230967 625618873 850090608 595541472 112991423 787187088 720794439 899845192 811937082 920863017 96218385 15843853 969621054 744418889 893380888 989874075 352155229 251520134 278631058 458530286 829259171 346718591 266452806 619745027 832804257 887265425 842078378 255151464 407956653 872617570 994404416 704367468 17230125 135252510 870039040 745724511 118504242 416240726 714013244 909520729 146133972 605464859 723067752 226756961 381668015 984269038 383353584 712595076 845387947 992569772 921117650 695396130 575337424 538788467 900171492 918756145 978179633 475586472 305132349 230757296 991345174 685771152 747410927 902333550 262872823 417509030 507010734 543476846 368015802 17548634 327228366 525620808 298094738 859349946 514654880 187696307 404663676 633494512 978625126 926339674 937765125 811338013 158781168 656746878 434756413 75515567 552242325 408304501 886228845 209387487 306008019 903454840 396126497 584534736 941395119 989588677 949845705 980929339 13925080 782327970 811203141 563625446 884833808 417223134 341531304 764358312 648826930 500607735 84759122 654471360 98728039 681831680 450726699 434650686 780907547 966525803 31051976 999980758 674407043 599722143 504716670 520371769 680177613 471506377 773092184 13254335 293509607 909376246 24800925 445026853 12141357 265326751 977516209 290416235 622780477 55396208 950419989 567236351 407637450 500942691 230211196 175129228 370019840 585147332 455793957 858367761 537719073 413101589 406257517 781692785 833062709 238292068 68931476 140058295 972724244 371830121 329375974 368126870 762271926 170633382 894838078 788366628 605761504 610753192 681305402 960400433 235990838 187966566 144180934 50872367 409922329 144902225 933256439 400118491 831554721 845115439 651282605 970976720 379019945 236131176 641730919 541444509 964975486 58153505 17715072 622099308 57799096 601812195 17856203 944917734 752144481 989126644 957356515 587010849 245225518 601388071 685430053 244888817 418264110 311368481 287046420 472861206 197711770 434600069 997396819 93534448 482770112 315688894 36645775 616345089 743680098 878464393 175537048 774458719 301922432 380993635 5517306 426167823 929179649 699971761 707713113 156640901 898768691 391409207 125953646 363547993 87620949 269945320 232593824 482296543 732648200 830339306 333067324 496045802 451829521 975009050 845602180 780893865 896812964 163861879 681057474 271553070 590698639 373811499 898741942 932271693 890725304 111499983 231734927 437528075 767317202 780658452 998396115 900733533 432612879 133731783 543337125 754701116 330945427 490444903 12512072 616129798 842902482 138545259 580722748 465052036 670647250 344042717 649693773 371593132 36826719 55523401 106644796 274991817 204260750 308318191 756578756 677444538 477982748 36506792 776263941 423346445 136878144 43899826 847467718 596430728 600927531 660545525 60279898 261811878 8401805 198814151 15499549 541448337 781750719 113417004 723598097 56306777 271084626 752055134 107378842 854156905 696937013 186213153 602503702 571143889 457912490 55999273 153178616 848018636 625523505 447709539 479148952 741388990 32310994 744087919 696290653 276626758 494876673 771092469 110143001 412207412 142715570 448387860 144291757 643947247 599762511 285243069 572895881 159074566 220819972 637191063 481313841 568745198 457988139 584970998 978275546 796040130 885349602 53032959 400495466 968338816 638974280 116727538 401772866 766673240 719377330 328631131 276140074 778943867 721389627 678270733 137585306 528827462 291307876 440937577 631064069 402294170 294269120 102396519 93939727 841014953 176726029 343288425 252384394 466613895 69940425 856421376 57812922 305161043 12741921 352812306 256662384 303831444 293650127 452411731 661982258 110415934 549679786 438783586 484286104 469460284 186190406 962519361 398816732 681279512 117908534 776359210 366818576 531897292 467222967 265184870 449753637 160344808 650200832 550055615 317216809 712486722 279805773 743605828 675692934 281568829 657036940 431628896 268727733 905986447 270523295 40273530 958261110 80192340 533681182 152432939 591866766 546888795 399836828 982896677 34398586 746373532 647602049 388735005 18280982 448762933 357455477 561673742 429718644 654671546 973438564 473466995 286304868 635615019 609009426 811179906 563733616 346466932 730599044 208966299 607556174 124958962 755873026 143571758 721429931 209218213 83850922 339820955 99995307 901543482 975656600 60698976 967678821 861431106 432889440 134233533 502022691 795952737 906109916 869396069 297763997 921972193 893846498 114074275 362481975 113424609 927107626 886309890 581287718 862006208 76483530 704968603 615104955 78613060 65329972 519280387 23805085 230107132 346455258 491045805 628244668 761545600 663335014 231005935 183421493 857209007 94305040 377295557 892548821 667702862 994671558 106287200 413848742 935195986 964240589 201124800 605932971 872302768 99589271 83559634 645607494 822542998 15514887 812770464 90083633 953272040 417840768 502548873 747977296 231701686 730648180 784772057 993628229 110839713 248011772 416577782 271674419 377869421 764619680 209973759 62416561 57118006 311982837 912478836 811461322 217169969 278538844 259846968 458289585 748305651 920419802 319734984 328707754 614715386 835669138 339442531 979149442 96719752 860918632 712712558 473337473 300307656 474322123 250626083 519045864 175490673 276078368 178584255 775894475 430360350 269006430 628813008 344256779 507472282 552124467 192611540 210275903 399078627 499111253 472653249 219578345 398624929 640263319 273282793 394751765 955998071 305455486 110952541 369236264 844119865 468440647 858168083 381953330 941866149 254570152 727812460 808430632 437593668 856576094 280604290 110953833 315363028 770665384 921977807 580318469 412185027 334406405 881614061 788426627 350381675 615520989 684871258 614784192 547560935 930132139 119918194 175670228 147960424 695276680 842912119 128475221 675337228 556480236 933775834 431990121 817037325 619667183 148686435 681937464 994659779 451819814 756827927 809267563 656281379 317833618 60790999 813921988 337772809 436813123 146286514 45589130 160819164 63005871 641956565 270521830 86845243 464440904 410489417 39213785 696970721 492365168 788998470 373047397 646189809 319887075 783375765 208099830 865642956 739746086 625835275 727382146 737202371 676598259 798344130 74543922 665266838 13369802 477407799 921248829 343340078 81997581 970174709 235049334 926858302 187617299 746327968 795530987 751289972 296878854 771766333 169862144 233125449 894654207 666123918 263756811 292115659 512225941 164746245 439862215 407053828 845065661 602584084 70140678 639175448 264732699 358200680 686878856 655345596 828607044 950379472 487045224 162673472 842254397 308867213 819859183 873946797 517733749 447992636 393253245 581044941 566043154 201687795 868572156 162483402 17273646 61478107 55326361 972234767 24885881 154308470 144268180 881865992 257356540 256294087 152948310 47827886 257580595 961596380 449212637 64444543 468710003 846386064 543396882 537592467 588714114 964516135 990303223 789727110 950732266 18292159 263257752 127132707 869471348 825034329 399021566 550677090 376278131 123573413 975772851 715356151 700594047 276782812 942354618 872253960 532873627 591254019 156627929 102592562 674497588 677574191 50063364 767889124 710510709 208116760 751550296 285086036 178802345 401270229 162069501 870234643 219019183 655752110 884077381 911687278 133335714 181551572 582868808 198577094 590283325 917318530 530807583 335981480 157330343 967077412 114902386 962509209 148345709 325126867 271549421 410183643 209801234 366937299 639996897 780948710 811775898 734796668 613527315 791424909 662628215 69390830 760331987 646098792 809414911 46384004 817707572 456979519 231034493 399805936 256843630 275614081 172139839 246809729 947592145 60353913 162377408 910318642 569334767 574397784 257245257 383044641 477648025 131412713 427497163 355928567 113988738 202369779 103873642 488876135 636712914 376715596 810693390 795992666 232364173 554776420 523016894 801083030 411496439 392048415 773671900 502561231 763356004 876738022 291260313 186504657 888844070 998815733 323893860 285423382 724619912 387629721 744000572 447676920 906230510 428166840 288023754 125857864 723773288 371935098 611494070 942758532 131191200 945350497 975579974 374369440 748149489 126766839 160569691 272791793 796514946 642428860 844067557 557782048 361664881 893024210 262647510 108492581 762663205 610747417 359336190 441611478 402003257 305874065 275603285 842929043 939858786 288378955 36336440 410745048 623005053 393696485 860902425 359738479 949189249 928089242 683402672 996652340 500419015 433317196 257887095 505020739 381406510 583139072 221068620 982195219 185562260 53476971 375075567 634180050 489068987 441859791 150717081 122239217 764317760 593607181 422436765 737384247 800264192 398615357 136993310 633594773 63261297 925748875 570995232 706323918 230887233 122914527 340903754 937054548 59101315 223825509 811290484 66289113 890732462 473664734 749162082 61613721 263368 24859197 293193818 733156172 805749551 26618176 881430053 818591384 905660213 178023322 680930587 283667361 452243210 842361662 777302477 412832113 652806355 797221989 890321883 484236782 927454216 17492963 656087738 983114921 370248513 286280465 122749426 48371310 30125381 481708531 272550287 299119116 960664993 449867776 980404281 625994855 257747611 108152370 608171454 216544840 427757741 676526632 851977688 606158723 159849734 597694859 128431329 818821549 95695103 978394905 135861164 219813953 848499497 44985852 307442249 908682302 330963680 935036888 384844856 591005740 30931912 20671368 278463102 698012719 878096273 94876572 258867480 355904809 691443116 901371462 613667678 507799405 780190496 39484899 45204835 304423582 573758674 919344061 242937731 711492154 723450764 311770316 859893415 546945287 538850791 274373623 330428759 587951083 887593740 793988370 55510175 722709615 35644546 244231323 852204954 176494287 501030598 726791772 391204236 675880314 878147494 977656040 358109546 508419181 763526979 644599252 101179785 355995181 616985842 642003359 690137684 206244403 800142714 852842017 360489321 679799275 858981652 213890511 442508824 529644546 531118664 580287532 509325162 961661006 515675487 637124855 208890506 266644418 849946434 782826272 482504320 721574069 440512194 732598626 146736421 51000504 826910107 451145823 574987097 372614151 817097877 88499694 222554494 471361624 80416974 510121343 360019084 514822280 999236237 48557185 347820978 842709230 873617357 129417046 397157003 173674497 881979181 666995042 968400385 250959028 680847280 310868535 909283393 43288227 278324108 486138598 460483386 141304340 673178809 65703843 523546172 586017215 267377347 177197573 371779537 846557932 470700953 814058527 378936051 517609237 735620297 118770774 944424902 86758344 846659399 220976888 687141178 805642718 296764778 653807651 869553163 975452234 680456729 166001155 256039538 117552696 487602933 847132221 554581775 563818201 731667192 652030168 571939039 724024180 143893262 806906285 445662943 333861920 908397731 873879081 413826083 772293855 816562710 365011911 488965174 284996813 1497074 191273049 266824886 437086554 485544140 27113138 245664620 648077997 634060536 162278052 162698181 72826550 581861403 826814178 347396724 445970591 893786204 394704731 48578078 412556526 852393884 840945931 793854619 697875468 30586786 12242150 290517075 20952588 568305118 669898335 560807761 433669143 178067164 979194853 911997551 367379278 135841040 665427182 583839586 121383644 174972666 530843015 498253640 253022249 438396245 152366301 236947157 46526903 308858973 696732282 115327800 521079463 756692997 526917006 267908091 168868936 603308186 5281996 740952310 891406718 453262356 834389819 956895312 631357228 957348145 204967642 618744234 903071355 892695221 667085771 247712413 207332535 925202767 161103875 2507527 522548639 474712784 513418967 264373853 903986080 522626236 247701976 165746034 840528167 142266045 317801602 642543767 427123742 115865217 950827202 623053 220704250 256348469 942505839 422011629 819530192 716931408 859021474 344454538 937846034 395997427 449613453 439874198 241187466 299756917 738555350 184589595 602298474 801571164 109550360 604926229 420995854 464084461 106711088 747366660 861033933 904073526 558631773 540246159 356602919 892785825 783770772 550125494 258621422 769295262 378148835 138164197 677514528 300810989 473824040 219083400 529982304 781343785 931110272 728200039 570387497 639494094 562935109 306231482 622714328 858582328 265596690 728546590 431127989 548461243 906234517 545478885 151326638 124583570 837909418 545403377 60416406 392104429 706615512 926267977 585741755 852043323 155755648 797770445 18490293 352978473 525258915 853698990 867137353 516637840 513072214 239204107 71062347 428337952 711034451 502252547 546043439 265280222 313571747 72619000 726701276 225622710 977510708 762698851 3265917 985293899 317464708 776176169 191816807 586013412 727862124 545713032 192906510 621571831 28224781 963275373 152807155 102503682 775765189 630959097 662157420 146676157 306653780 131321637 471588970 890976500 52816372 720935633 269328352 25874079 745579772 158638654 201826301 240991278 141043928 723561460 255930222 119954983 384844445 267512507 98060034 419030905 747624840 674097532 411514246 900117794 443804083 771173602 60848741 758715504 343481218 790932376 829784708 263506283 387100926 597990841 370432559 147458591 52318902 330160860 365432225 824426550 907792484 508591618 855179796 445841451 673323263 54406319 339297641 822026325 205270985 688681102 550887970 913485974 420873654 527475700 718015576 270787191 129623805 885706347 772389139 933503022 891444518 933708408 826358175 399624607 598905011 924584748 414482418 489022178 797546682 351971627 72081856 398487064 57859194 449410526 697252599 721415524 229437780 58240656 820197715 760810364 187351985 733337611 193652355 668361595 869253807 836320588 586654978 939816716 666560051 923238891 341939657 575325036 480156959 507813324 388157118 266236759 920793083 317681111 725168173 660045980 190129351 633560259 935617435 85181419 548788738 122434004 613403021 610997324 214568136 473606764 327716547 744871753 78368092 171198468 789672672 431400560 592291218 15373156 284191003 759609808 110002684 845719639 212795419 120520199 204623396 608777183 549290485 470994516 619191707 726333747 180518008 316762201 92229888 529824212 188606792 667258668 209655369 856340850 886809028 96793556 240494503 599705659 267682236 706450103 694336452 198819549 812578224 907694633 853349942 43563684 732646583 165321483 750716071 696531741 418404154 301239553 112451718 129409376 765955028 957587233 341434979 416088555 420753164 898731293 278295953 927758185 121434662 943967640 673792731 128679123 387117888 376125605 453899365 354021957 290022659 208891098 511363313 422863912 603704897 63225525 464234883 114347973 672827278 741188509 761843359 128615584 392646046 149379409 268568294 41873372 335834719 190973748 882813894 699512721 786688493 51641369 628777500 367793169 100560941 689753978 920552774 156274644 799195662 931853070 270699559 491411858 667845283 377831097 659307324 416934581 660410853 140503610 716563997 18692654 958980458 373759642 355008189 390763966 473479878 263660690 163857083 894290569 247562055 199855754 370428940 179489635 688215411 429837545 289538668 156931402 521199839 942284612 760723197 97022178 698178081 27439656 394754125 257965199 74960599 133494006 509220322 299772880 67108111 684425309 639882910 498228061 850893756 9197255 517850153 88712693 360765437 539251757 832963694 67499153 244902409 302603746 120470606 704199868 967032241 304095589 947081034 766671486 556320510 596782939 505924408 828229608 415573821 504655281 913778378 838240940 40188120 131709375 656068525 666719620 973122403 334490362 449948291 369195787 717115781 430122096 942143259 483031568 783017160 135437794 904144697 334576929 96834208 178937186 657067040 472405043 30383675 268204399 401828585 615994189 311229756 512048957 410964458 817209106 726226187 747888297 793168116 784216709 949913824 317072277 762224403 956780524 66922361 527307073 159353624 553613598 561512185 565552048 865798915 389582230 914404540 258730822 130682572 420382384 88994535 264274105 525617836 674853768 987651422 26286955 565514011 142660176 509357060 249197916 168759967 287917495 362243586 640226328 541238792 703801608 247465105 474829431 203376931 330635274 745209428 734550603 929511654 680957055 842308093 183627638 444800149 709486786 456459848 276075444 435441883 756783920 973418977 443622983 254461803 512862612 259895065 404092526 15945763 729030620 204372560 669624985 654681001 950554570 997604912 845883934 460839250 905562886 432388644 153664581 693850474 999571606 357092033 72596223 541176876 824047346 61900452 558560493 498090285 32270665 904585415 417351841 368494751 168372299 50927256 723357707 236543540 309177027 536073217 755894585 162402818 957965712 725814207 620680979 13399324 744106022 845142832 643684981 376793876 346360453 348266114 576364540 830188175 755819771 931579560 685704083 771510934 87496430 320680441 322654307 244746067 315700981 417179407 410590038 727889312 779158887 298183257 771290603 954194359 238910262 331863272 485975189 560871601 733271998 757322130 385938765 535191048 405855740 516577412 268676904 21686722 301636509 257716229 302626577 368587500 910144133 874750843 982343249 692363828 963474884 284140442 979869866 966928257 572390760 523748390 90107520 474375483 161243076 793632759 198605773 738480517 184689970 402294839 562644452 73615375 406174780 12965009 468848422 786937999 157097892 835655312 654968401 960080437 330532778 392715015 42406893 229894717 431511888 117327138 561981049 504995814 811485170 988854607 441616066 213486164 342485826 612290092 984535120 912690458 945777192 714182159 214185626 706189543 517969563 499163472 673916269 883556699 596998625 940477443 314395851 109104369 442444967 87462102 515800853 147622150 617442553 70684324 922281196 78598243 870036176 803786240 202276953 609989741 98979682 298186414 949726702 302498444 895555596 44801716 895952949 899355565 840851169 372907472 403706142 279666549 973987821 999124164 799399952 511122408 673834856 960025481 664627623 777170778 173772894 593326287 370390408 818906381 690511595 376852545 367219302 865610495 872683082 688225850 814316948 583916773 527335947 621376747 904605993 999189331 484112084 126983502 364374334 49252235 40634222 590688490 566021110 614543369 667526046 262613148 25040255 612398535 21161573 604487125 275735592 25240763 873159170 336059364 488963665 79117051 699674406 247845979 834400216 342315243 669779305 35313841 543050362 59437854 841389148 88871631 708436858 226494256 410998036 888900654 221242734 127071042 766291566 166774840 17360819 725837281 236016768 958038017 242633214 289544625 947507007 988950365 560358668 864930587 626700743 348900244 126485605 929822584 211491070 166892215 579734203 359952373 791653547 438647545 934518820 5430758 101227714 747941673 334040679 58591084 610605545 375799454 240193537 322485694 692430836 789788062 905061574 844832511 744192807 972372203 866042050 436319307 721586011 362349053 291380661 388179513 388429371 751364818 16824437 217931160 634182369 938029891 413561033 628919222 262818274 703020061 293123453 12024032 17509859 564478405 734996857 187107306 802556190 901032546 551240443 98257974 380425875 353637627 263348380 626638107 235086626 238336110 685914509 634554091 733957069 878784649 982037930 880229613 733156830 549025776 898154652 442072573 618693068 700957640 719872014 537585174 547526948 407103095 559244677 938114259 689906285 361810829 942589419 623165731 98850201 799776849 596536051 310371004 479607190 375406228 243340624 140942387 206011128 854830932 579052587 675196210 818511408 461545527 177516952 826047412 795485020 412852011 627128175 562153586 511277469 425437335 100203580 454508508 414022733 479272340 985811306 670650853 594677666 465720888 350352695 987089640 921950429 929019815 64787780 634126898 995732850 850295928 474568019 792673984 674125620 90986996 114932503 152748090 164248567 829704079 890180029 67497232 719583393 397984135 34903450 285181652 481481556 173150407 293347931 340951755 708814292 520329561 495930181 232435741 420093929 942061898 9048174 574951667 241061476 131425782 862821949 324662589 111191735 314804744 966284465 828279758 93666170 625072610 867075955 235657449 33500449 412744709 38758249 171264131 920134103 419638694 884617637 935763896 167254956 651502795 385314124 199335909 118794140 484057580 964235518 528400087 486125151 194370603 233784544 183544532 134473747 690635270 478331085 327972931 981119235 738061696 871273729 39741074 60639314 237536951 64849717 483324830 207951184 391698882 965791756 419155392 791297282 484103454 48670909 629438192 835656461 964495295 578384669 450619451 772696515 190055750 816986386 269065776 501330665 401245135 591522662 824931794 748228069 869275068 425667722 304194307 793614057 298143943 175762701 368846311 736977273 124395014 35417839 502235307 628822422 226306669 227287522 742073582 778974675 84187656 709242465 11135626 704137872 170624065 511022629 953454819 147571855 645004704 791797265 399229373 467701574 500549500 467455887 318468055 355356828 583296776 584103496 781791644 443882393 451460249 506966978 259044245 80384934 215819926 251640617 727161884 509735126 48332975 523688090 344856778 708936141 711449470 946709132 332634281 108272472 435777542 166414731 619976134 845925094 873905001 664444883 648907223 440939897 287285114 892355539 67892715 176386158 316904501 876523280 343434668 188035281 81913038 107832929 431450573 752075900 416467176 91442705 281383307 292208070 247597687 400676207 547350294 827532516 713896450 784590510 761997366 678056222 695436903 311285573 951458856 485545031 312509734 292229293 364843013 574739154 878256225 664508158 661502018 143507106 641899535 248156634 816422684 876633701 184611952 279960008 887454884 775302149 141279937 145380117 456705122 868278738 293667952 346522047 456343946 977557103 787093866 96123722 57690609 740151259 256200065 459561166 649277885 530151860 63484220 264392666 773703645 358262162 347211368 490492813 946979810 597632359 735753222 981197290 109312614 739273948 709480681 593140764 709853229 229044482 818871669 921874097 717321201 108555466 610672978 7268418 54691662 233146608 940768118 177030526 234708014 731055086 899131016 498793596 481741348 760487058 989382600 141447990 616444035 580856246 164605949 729065027 44600537 898267164 327165964 324994728 972043977 857016005 400259731 165055212 802176427 396087843 465739356 636586409 132833930 141858817 997684664 507436337 359702698 525808630 401645474 620553344 235828299 645341462 83865957 551793270 424118554 418899562 511006576 895128066 211789725 462261506 260320993 666801968 503870434 46731136 41215988 14030505 541654197 792808007 595793630 774859600 308931826 438541177 709573562 430958376 313949964 383178748 879076963 326968393 485876676 898111888 466277084 734285822 258061131 200034509 571317044 922360476 4840437 947070553 668846484 210122145 457275170 268345210 384696389 142905059 596605299 641720137 250641159 46827910 613688862 83923259 137981174 94337712 611418567 643235979 185168401 200636661 925233709 36511999 246538090 669146349 111600092 330499769 553777797 284217968 506586341 546234947 211371386 77091562 503193441 118981071 154869040 645132078 702335877 61500621 387618849 573541597 149447666 738691481 23022092 11544398 781891424 575366875 734252765 709683908 11758954 663803970 150807023 365572969 790474074 807947935 79472010 734234320 882240763 69227221 913637346 663061248 56058873 512488877 387547150 79123089 781208411 710677579 316253852 881357758 451601666 981899245 7645571 639424052 147493713 896598015 366184021 317632351 697394570 649803072 451174609 456418427 67021555 43702737 667174979 382040697 640856718 489101228 105727734 88130372 701281545 24662612 429716199 258825255 716820979 602897096 773523290 715832412 364582719 422207290 340986533 614848764 363216615 157715796 895769711 707755049 711520135 831476341 764331796 383064241 465735532 100804727 461100989 339416194 67529054 734949068 868798740 85963027 555860774 470936110 752728881 77610129 340341692 910173014 147670362 914553618 657559139 571256865 260807909 370387262 90817806 703046729 522708317 166330787 565683460 642442200 105158116 223998314 914209185 597202456 684437103 197860877 68769043 166942009 7210596 533908734 834692886 934184618 253274221 411386519 11328208 163383837 558567399 36223499 904134171 327462705 365995658 754811788 729873052 122681273 395051427 935112738 399402593 525893392 477289515 56540698 175491241 377288444 322937900 976832837 356463539 743016362 768927189 474511726 559603676 290118403 959781178 102526187 626242789 333836048 892920172 239468289 306632335 908889141 267056718 883963480 39886105 611111807 886881611 511138924 486600585 67869028 823905603 789331571 518997766 636817450 925369327 231853185 440314627 61022002 720827267 152569999 558819853 183020014 594041246 878574017 55110964 665515143 101300083 945672552 89917076 669821645 558271672 927183242 969949293 1342181 601444868 210111901 554597128 318698127 145172207 891595397 521701109 503538482 694519619 532196179 395522453 675834685 465783776 24784482 806123291 68334537 228627509 434414142 141859917 116495291 873127570 38266383 662738703 198700733 504841591 538647876 21724203 508616009 812025718 224716056 186455086 361222211 200437577 457568302 740614093 306071188 827164230 646729478 524487871 81937736 938620777 946539420 149079453 181062295 829239099 339743919 463458290 245912856 654616600 474648191 207099947 74001674 696981163 992671372 714625207 125726650 792315035 272523758 151237330 929970328 573495114 821096622 336179736 197493965 284280791 44640077 689196113 90074557 679277564 544395299 681573118 442324827 1761566 125091069 89388087 321222504 335494156 983651011 193431148 870833589 664493083 682389878 2842284 359710889 672981249 632557954 751282464 924043192 775473756 422717578 513082768 879447249 471941933 391380198 372252074 689371572 457690044 365711103 5783869 415953356 904522243 825670766 480027389 74316913 139509119 426370304 393422346 84474705 395299320 573299308 782872663 112853152 823182611 633234203 400840113 428954943 380244575 536406050 941730648 329908132 335577211 663461242 711885917 629964956 765502830 423627667 346954263 344867542 823873873 970386100 866399641 28222412 95149697 849545609 83877960 120391117 213740767 415237517 559240126 706694597 682118832 586317515 926174147 756479025 362155438 128861115 580009099 591865179 270074833 7940805 732083153 938094474 940387213 812578746 572262764 291143015 469158747 348603311 566590950 783938418 570631115 404561091 616811403 830022970 211296345 846643504 959504006 646733429 545488492 545575235 853627536 450496917 878098631 248072841 477425579 512958311 907309691 598349523 877197302 429439650 441580110 32658367 149075159 740196032 135563615 768610757 404842754 169992532 902368272 727480598 448037338 551228636 174488650 628390537 755925582 890988012 698789690 30566720 139892613 429687880 460016494 948161430 688077923 585673214 291199902 256051143 558468911 855790435 997516036 416628538 811276745 630646565 45055981 827167160 320061608 938725179 520240034 508537780 874425849 872312754 661894339 455853036 564874400 102984484 823286983 708485521 90717695 473619552 930354573 125867418 522295237 146111507 113220045 329641524 554824121 649707459 89768262 235976444 272520497 519615527 104547897 452234986 226540827 81224381 576951532 309189867 856874957 524270188 800732921 844778789 775171624 265412536 311411400 275707357 325282831 689453923 573572118 80473472 59631615 757288408 971039119 984186686 824763276 327244900 129820786 446515564 563584988 184511976 258182882 770878786 91845619 564058293 202890329 297882241 627077334 560568780 896270086 721938644 784091673 825703701 762894244 866035936 822249205 858788606 805142555 220755616 171374080 326651383 907681991 902266882 13216774 503364328 922537355 920486417 349461783 594628673 799816878 659112585 899707268 882835885 154536784 601840992 616673069 302993651 613521736 965319760 776289668 466903383 566903956 20774627 815717565 889943319 689127980 524674427 891543649 365123660 852757110 182653389 973792882 889444700 632314033 528440192 736429587 768938284 817152045 586996411 132777883 588549319 110023533 656008669 34702700 372745405 621960404 274986244 487489187 888142395 542109362 537308659 487871165 814605549 114482178 344065833 327409445 246239256 304114920 888998548 967379339 3730520 612844174 728799637 352591916 654222142 763357503 423493827 608463445 905523075 46969568 85965601 661059531 827583727 113143327 658290980 273332170 634758029 843448914 744800399 138073982 952553178 328597537 630209803 199652527 652355835 82156417 872634365 806516320 134110203 253154948 71346264 778456775 263415869 131193271 336006410 739240450 456527585 688595945 5268812 91779979 115927640 772570871 955093125 950948876 472340390 531414976 542615325 956189115 437580742 82474414 250354877 726818092 231577590 247412146 405716085 432828905 565323884 660212554 401135651 395309089 324275433 357796757 134808841 288423116 997246101 564248289 859750658 852004094 250600092 53261291 682563623 657422407 692176832 377239218 149396330 281171395 49873169 532364712 768061691 873635023 995193451 448636438 921359683 478077490 426464731 885945185 285903540 512750787 731275921 221321805 537789064 227209137 790150622 597149218 124970892 406223849 529900209 162453070 626887727 842328003 219108884 869215058 816043933 180134734 242581817 58726570 331390371 285875102 931564607 825521734 85416152 896652183 17948711 293287248 184614572 290272209 419578392 566086433 809772170 633121101 799053423 396778114 805408598 43641095 251655247 108685490 84049937 602148424 752572765 661043226 374709873 511145827 940662503 506538814 992030259 842111796 481169785 997026430 227429316 419280842 422485435 106218741 730163685 143567916 226954968 414959696 303242308 756258216 776949747 896652474 627099385 759675534 675614645 833611939 737286282 38149362 223147112 710815695 265033783 1790713 491132812 560769039 661513116 326681023 360446800 537976522 540345757 493268999 792343004 830188519 22568675 969828388 559740279 259988016 585658008 651348632 544996173 47952824 594282085 96186536 267533828 555588209 428150350 61674858 944351708 535774869 474236934 759532947 659200700 989860655 200302660 289239440 256768271 113537371 927255858 750221221 56764041 685576310 18578026 394339246 317226207 423020037 625071634 58663796 964403557 821268442 929800569 678936309 960533276 220780515 28192510 312184182 516498126 196280905 256024835 321529468 856932540 392579162 587288911 32261311 930313632 920855646 622766017 990117800 584607055 748148547 541709308 829363142 170204929 669739955 651252362 178172957 155151533 122724812 778672473 712344773 92768811 39252701 172245554 22492846 489277183 848942377 745304683 984699278 225777570 770811164 336598085 579828597 638739402 794084313 386228649 740822771 715348770 236321962 435177308 468458773 507944208 678588068 306530484 915130719 290940458 845014569 469054530 671887004 243931120 715822319 627942178 935129129 739129189 591564750 791678435 118524852 842865122 469997178 442940329 601282557 238795865 113292895 72856244 370494614 844655080 107796787 767961639 73080073 29061186 842206567 6643167 128012550 968305866 795541173 402917108 12309651 621120018 245959889 284155897 493378827 817365202 922839100 81331570 615585644 482195991 62741956 871368171 704526713 253767781 115817922 137439533 594492932 44100513 1827504 22867536 638108917 693215979 860891601 688141170 135812256 145858406 275103677 89444143 884233568 305529462 677939961 203951726 663272744 790054407 917224818 447898910 388044384 360215186 484368929 205389006 970104841 72653619 706481323 877531609 114551379 853545749 343376774 269701401 698451092 858197860 820191207 538252187 408480983 202868544 931356056 498226141 281200606 328610610 723144438 450969186 418386299 137998294 150242346 762676160 975253237 700096939 108632212 600147788 47659511 362501143 41244175 208075023 651694633 164597347 10662847 293181274 772966677 832759868 995655748 597233305 74026510 282787574 710959530 276280372 930007372 187621705 786631935 376741219 4617128 755258782 545271834 255961804 281245934 819499542 84062208 314709766 96126824 555090093 761695716 360865662 832462191 127065949 838806817 374055861 556959648 663229112 549506725 551764990 884727049 392169259 637493904 430119932 744961246 561556821 238334785 173118054 504066279 962227751 405076075 720761792 823553931 684501651 243473902 651468196 606668109 109991470 466582809 424264840 239599539 115725490 256110515 988876127 527477137 501527843 192411081 790057923 135039531 458357745 187267049 458791840 892143910 918519336 295450127 837281121 99539041 704602745 619813355 31772237 276960368 296438453 504534294 700969735 36620194 801938617 347394740 614715196 88636112 266137032 636109809 94913944 279000111 16125559 860414582 270926780 467690112 3156700 435667537 307548502 16443766 602334502 629988411 321414194 889391292 610336146 326829878 827241378 747264096 235015439 92634441 366895764 750958452 75813879 991303945 939221698 566744711 18221620 799756690 192515149 47389094 985932818 534519949 827046377 83417015 795992888 903052860 568748851 729194856 575364275 229055698 608874074 10060714 489044069 328905593 411816064 381602178 690805882 539003510 789556012 630477346 498200810 536351638 888103494 45268776 656343355 602547984 358619304 335023334 755548232 318522907 688324337 188931596 325218098 626737054 120047404 983016661 938394934 829522177 585465300 301855645 889063065 166788009 546119098 792511703 241662600 364181136 569858716 774872110 327989116 918408374 356229172 571436134 271262684 518706874 784241421 623542554 279972413 900935403 334382398 397092572 657989127 746638077 652647933 56348973 169060890 836422922 128598043 213765978 531424051 34788685 135855154 971619932 176748030 687614551 388593008 521451001 354290486 385841758 613498032 696532760 187202312 408616996 118043354 650270099 664570666 819345130 331161464 283460175 693545049 310460122 459474138 878145970 13851420 186118037 465168512 546658851 598387610 611307356 367744839 985623260 759292738 236161754 377063004 308001926 148208457 158785502 151016650 614844707 710113388 477343064 924123310 636574247 136615828 131342268 747207338 226800450 405168603 373861885 100179283 258431863 752444032 186620797 127036670 652649554 938619081 437755750 259882293 663561486 127081269 364072368 600799728 599629383 166277760 500677336 265395937 257306733 499443679 17278983 637135588 388542634 749170375 411073772 805414720 589105511 108668097 567081055 790095053 259841883 690512990 4532315 41792534 469845608 636775183 71305472 372224559 228056688 924307582 979966957 643306011 27908665 127306471 344646670 887005156 381181902 225262376 307859859 737530405 847238042 562361646 11539306 105453103 756252069 747868227 406037945 813999107 749682151 960675811 535167295 249082723 473204290 809472859 826083179 660737232 353719266 458191169 902202515 623982796 186288808 909307706 791475360 215012770 767355842 223092058 671686024 685915204 756853268 65421251 567242171 154222196 610510708 836339085 329736970 51725364 413543781 602112889 139429839 612361734 976550157 68891376 417210895 894574821 133266540 88844732 868160866 454621492 383773222 816122985 375556195 736219782 334064458 169892619 809474094 392936583 948030949 55482453 249737495 889151927 64022813 32058932 291244406 179955093 243540618 874755628 454677726 342063423 20960734 629063059 472786437 168224946 752523131 973413092 77205512 979500616 482291607 490917764 832385568 614929336 159429499 762529964 775710164 86919844 995805766 717197436 505190846 919351865 471995031 662443886 582757874 625095920 808740985 129669773 750395286 617357387 136110981 483662619 448179017 288452547 111531562 762045898 924700663 698949128 257476481 302677689 255582311 652236315 872375376 236491422 763550649 974217138 480599255 690598403 405642262 634486827 232580534 465741076 18748474 682031457 449896359 953991544 298237167 991897353 934326700 51388397 814448014 984695220 981876265 825502633 714468802 752035574 653842694 526990684 65061584 748901615 861990061 443407328 687802484 580882145 219991869 84468250 418608830 362603530 655924009 467247271 138277533 838652727 798861526 196976537 697789055 819656013 16706412 935906199 319451101 758487915 695189503 892405830 772213932 173864532 76781880 563836704 392977756 559218226 21444794 314904568 568047564 338765050 942645202 830907154 636021598 586008424 447349503 966911545 340698848 231311089 141233596 655310813 376804171 332770076 937040517 517758365 147301434 573397043 142858742 456347207 67949653 216149874 420275288 66532230 652783997 231849438 443745178 4085157 110147720 58147221 513302043 163546652 19222982 298318455 876546803 194609943 306369424 937890025 339001916 68168270 296475510 382285061 328775819 720403415 482539546 569873644 340874366 404368511 737492581 318025068 871402056 223222965 485099674 677331307 729392156 978608679 410512846 942956591 749143875 173123322 627182046 250444291 676312278 96216151 395168899 99035451 822418597 956977732 144872245 502108545 575825579 420623489 416288518 488419950 567321494 659544574 204760158 961260004 639905583 232331134 688243474 24629727 216036234 676375381 355145003 358206654 563310845 907083016 179204809 815851045 730560118 755007909 263822154 872724893 76639061 137305871 289226974 455242131 465654318 221661760 249711676 13388696 283383293 247541807 832111374 844664765 136729111 590242969 754895780 960692642 559348582 381585630 208914516 575059862 553756190 186557529 404271995 210619035 794747056 751710116 711080574 366915139 520040252 150862764 913643376 309737220 278014670 633834765 851367906 393179737 378578612 195259762 662842701 704823745 861736116 629850898 303842715 972206096 959319454 121594073 92520409 955318861 393894566 431905104 760379699 481974042 436187487 168146319 251258901 791367768 962813447 938647653 353579768 317702124 379198875 683538281 253363702 608456413 888488764 736348071 789469796 253589261 946681066 778832995 670543182 924654466 265042351 1003209 291446981 41630794 735535047 275431584 803065539 76408057 620177121 380360284 51841413 278942030 165399092 138734220 86053595 811701959 169167978 950102863 459592591 823469224 36776077 482562142 718400503 896224300 563504677 573172968 111916468 849873283 874911962 68170785 328779504 691014755 803492038 977099778 68986630 996648731 833260036 128980190 922324190 731704404 182848128 703823968 384307466 634745460 503426862 532876892 538641906 459625837 222966948 591184536 706555906 757439554 297413454 824593059 81756584 107944228 40886631 536734668 972448181 652736931 992491143 941710879 167987157 879770322 834556981 212565717 1729123 500900013 357446281 897218198 268648908 866955189 371054391 815515660 354582604 598598374 387422201 114517322 872467029 196983783 545001156 254925109 423664017 236585084 311400188 337076586 252838670 509014706 334459712 673541687 118812355 696583702 778080602 322379467 92316469 375226943 681936767 525332651 135473451 679341595 918700848 926971603 669737703 121987075 760575271 899456452 47214723 829032045 609556596 178659464 839819353 387640361 456119251 232426231 902872269 468854249 680089323 792411227 889329045 455377523 345480713 666652367 979425422 449567935 604175451 493837871 680249953 997024967 826262453 724972485 775815798 985894716 530930061 783579056 331159063 731027251 206168554 739365863 866746267 743811162 502921436 539121788 723383489 530765206 405071241 369687794 108647377 675620105 215461538 561254326 453460056 707630710 609559800 181377335 998505078 97355670 680226451 923568524 484857178 209927635 91697500 402641108 936023773 145653119 269918678 780022561 378351945 752988721 145520937 541695547 900433748 46076500 482965144 530423820 625737100 557665436 679979920 454463570 413624530 850511325 832153563 625231150 390297225 821995786 228929223 383438639 777111734 671904541 299277822 652444759 64854547 398467031 309273275 359252964 121165642 312068679 50073428 365406110 197030916 18069884 465810159 269220327 128380584 356982289 25521148 199937383 979867008 501735724 758819806 414770219 192724266 621194562 114422074 335359017 416458715 809169620 192563442 436312483 528375502 465790686 119336315 550598549 131463638 375779893 517929088 289332504 177211959 605518930 892251018 618531350 209337475 11708058 963494522 813250958 690568386 910756454 4202937 614979944 524151212 561057387 98517002 527027208 608855665 535370059 894319872 321996570 587546385 986447205 567144970 94318575 396747576 40477881 273219177 694965090 157867993 94936638 770135387 109144626 787420591 302208548 29690769 348805283 655112655 879188427 75969331 149396124 232478540 331269305 830041127 649549778 592002234 288699517 121842851 179652735 18855587 892979788 209200453 83809282 263509592 472699307 195681094 643500466 921570879 88653069 591642927 534030602 531864036 758991472 521023440 671927522 468592558 145582881 40914472 568629708 263944360 83367684 680734060 780451363 506837513 381364362 886863265 377207983 17865005 681059094 706708791 8525278 675685300 822350115 664730980 541140024 362151848 863964363 160659663 912292907 699686377 287475649 449796597 840105908 792351504 87098665 6884661 716816908 366899748 917211443 914881150 575265401 268102804 439888050 17024583 11489865 990588245 739768072 892297853 482009456 679797728 324945798 103306549 244607286 551803792 301388435 761972135 827016267 339572590 191901211 989069756 253139144 115681383 730025855 897000758 953895025 541976589 390682155 239531992 878390992 493251828 485128765 783304539 300961655 1929042 221615731 937234807 879269433 854140156 353258175 672130686 125837806 660402930 898418166 807511643 331031488 348036583 944982624 928492678 389208958 859954397 551197242 669035214 345955317 634023366 656861482 239772853 432394591 99307483 366440802 734833616 51348841 743584903 669079803 790662877 972090849 832150326 638652249 242323222 566305775 388180940 420584423 871640897 24366018 980610167 665966579 809041008 282476191 795290116 289261005 125695277 814646992 950448923 555200188 58779779 892842033 403894830 589642163 839786278 200684775 288937906 843350325 608724654 203992929 782764647 463136762 354847240 930324757 281520463 909986320 374653296 893036387 674913108 240924386 965866650 963845075 747487697 468204310 271978780 772430278 750379237 348875782 827087626 674524130 724264649 571586470 50730884 999231325 624168877 305173518 816467368 767294212 991318169 899992568 279119635 276278268 317150215 744033577 434000168 293502238 329422955 547835394 30157704 848384493 621589973 194098051 39773149 325414937 266427153 784497426 789463543 19812625 750550850 101486450 508180822 45147806 677695815 27809698 745719202 129435629 524008185 346410518 582929514 977562394 368696778 62065729 190544070 172845245 713651504 801026795 855479046 522142052 177479229 324753768 397695479 998588409 137526410 382723954 874993872 956077930 498303538 285144698 623870422 94328675 245346446 5569694 664500615 762543487 47150539 213337504 429046799 225794178 631386326 878624845 778807396 971605593 715660202 749308945 857608437 617345254 845362319 895016606 2198408 873247552 647154117 254283924 600954669 306805293 457205605 829217321 269996770 421953823 113317051 915768131 614103218 266745549 354109395 820688254 491809559 820155253 54199113 167777196 979542605 192562645 460085226 725410312 980141460 590619429 529145863 230288985 142108607 669489261 530248749 765077504 817139039 874291173 205880702 725209350 784904104 870597518 11868152 92738903 914444244 94456444 2814278 834877737 833423113 403179348 308684543 875183749 516726057 747607771 634942105 568202642 151177816 363171591 379548067 840694703 964458927 651792837 682091312 797765446 377500437 247128257 343818046 157431759 132207845 658961332 900937671 572604500 37988453 775370868 254639664 326510905 607466137 355486490 614426124 957854195 802465272 582927784 567412102 901876153 507057461 433810468 554324225 643271801 920684639 195863569 856208207 121130970 447203865 227148265 81002538 27534507 857887003 65722303 605545213 239815906 715229234 622548325 557605340 950222814 288055710 682829898 901348206 868996489 306967556 626922008 378688023 284944865 284185685 860212220 695765288 853144381 565336953 280271384 50755973 987388065 599161646 565414092 743199094 132610058 190871165 244100790 919438010 213675735 281946134 847409158 367784361 408375641 363190145 993448614 428251069 138533472 562143038 719199621 258026003 698867838 664764187 535984518 801854759 411173314 358182712 58547420 335583853 850027976 11120844 68067270 977268349 83629996 701869700 195047212 433628117 761306731 565691743 271827540 832879413 377948072 191888259 218142067 263134718 47244391 615585000 818837942 12798252 17954720 461549066 669437557 730647470 293939053 948791972 17455989 663172524 166242946 305519974 760968166 420070534 391693816 15974377 540031986 212497911 625363008 391514848 462753054 255334147 635779448 876163055 807426548 147294564 599854035 585721486 11402277 688547789 964670106 134201880 929465858 984504437 913416838 257384249 389361916 889023279 137065821 340990761 784790983 285992565 202614247 680835603 431967542 999879062 540618983 864485313 96934476 824463271 793112581 518784098 256500393 958490006 497831470 708356576 644973031 623388030 627415248 698235055 395882499 937626997 613639469 447575479 592200814 656937933 105025400 656516939 118890285 596911717 62081016 884466660 597421793 780814516 885839681 850523258 76691617 330245888 375939414 912137702 335103055 12279128 978143607 127337144 138768149 132025627 915488911 93311651 887132527 647143133 914109087 970170296 625946767 145489696 326971941 126662771 639528670 633709925 629127360 398142254 604016777 83711936 750770741 307400337 428071721 919528669 521830649 36257857 703125053 33565213 193940959 107048567 961581089 191346055 204451041 680513666 991330691 601582548 244758383 332677068 771204784 825592821 502836503 364495896 487648871 602985127 480370111 995270088 450207721 389946826 708226764 853063019 907393749 419358816 836003589 188947798 597101794 838975970 124301496 419080553 910443731 110552303 674372295 183091076 916483309 135172889 266949928 828893360 393494810 621071023 661006252 59499690 278251224 279275061 519098558 930753441 509211328 513358397 688901545 893298786 10531607 161533384 152746429 145234198 638666751 915456256 223648762 99758017 863880139 350377973 870552776 281657598 890412803 51282595 295418010 782170287 477703424 342625259 471858952 908872783 108925008 516894933 253827942 169912259 304557520 50453954 434985426 260238483 576885769 853231058 967855316 441451556 523344911 299190458 512092198 636116602 48282284 359883108 814117012 910364171 511545895 19353271 788377845 774751250 946203707 817125825 8903034 581607602 903743828 131914745 177485501 99582045 798692242 785245000 945689545 742847390 290026332 709678031 926512454 129945576 187294005 661037722 305976411 625498299 887386048 522502953 361415808 906239430 942469528 139734172 482877798 311243829 171908272 327909008 873195912 176713380 355629825 698004961 294241981 685513267 406398133 342935756 544600049 775210799 209573283 213032589 296180926 720201721 214479189 152815033 510544060 755429849 978446457 959816104 145579948 686173111 63192322 709349102 83136523 986659943 5738795 13111818 831945931 329506421 84635983 157935041 565360919 10215892 24483678 487954995 358502160 997773316 361906841 566397864 146201123 900804787 423272167 802604759 725892094 365984455 108329393 496813230 913457188 348655534 901853595 868798588 195040209 144887560 524451747 22840583 152372736 27247854 890028749 200505802 308504132 374206639 874077733 861850548 351017007 281700523 889213772 249574365 304429715 241008878 144055335 282337070 579012003 774037539 701048574 428903338 894112984 920154955 319738383 220801632 181050629 494320608 868617428 131842263 880444269 982827253 341596496 690708928 144478789 745142970 192535733 981608135 613390204 254841814 815572099 18001442 693774997 710957946 653639450 854059144 66665046 441578670 329520773 715188689 585543103 524656090 25040289 786455719 824429913 194254490 394275927 13685158 474440616 36728286 977923541 948275207 366350704 167404236 836871775 805891410 712293884 749793191 517883805 675460494 375395408 838103680 589198522 832411067 123304938 385134110 286150891 167359625 214661376 730660744 347586346 145839388 156012432 556062514 83329137 125935383 276769595 767572335 819816328 836849721 204978460 365121974 844165493 749413108 89288148 417443637 712709821 301377054 689812402 171976821 234474376 485135569 52289836 943194426 966996105 229666841 984906824 463266522 585804348 737992249 418566994 566703270 864477277 448901151 516675057 542780574 845117118 944062444 582336250 485999518 855004293 687694905 147845949 159469476 805881876 232609484 899478527 694585046 420208096 142826481 689191887 70058526 645966955 842169146 390701119 963391382 865000329 312478787 353395047 399994725 336189754 757486928 548653203 806426258 677656431 154211465 652817824 988335939 179955837 138513438 955112872 524025296 77498580 24574245 53437892 444643683 998947926 683323571 995326995 989940336 719929106 473428139 911286928 309860790 307572953 944452816 123054710 448751088 574771474 776247966 951091145 147926353 857496535 617188546 758933587 141047185 145597421 742055863 740250097 531234757 303622160 766538925 260166045 847349073 514408802 764576041 143602771 305502826 161196200 952479508 385130914 838276376 971490458 8650007 146532043 378538024 144100945 603237174 695493744 389625670 528815562 867921464 623717868 63310084 501007424 935413457 725308849 791244750 116247665 153227060 858077828 699103769 423133427 19481609 835657062 102199508 285259130 971396119 973377721 596464217 733283754 122352471 457082679 450486653 991891779 107335839 537315732 465702588 762554389 140189448 387336881 3503405 710258995 763981979 906136522 701201562 678453517 515011055 749737265 177443119 331590035 684335122 309906707 766506611 342459427 203099919 17626041 925300097 464695065 742290640 684064062 360344406 17977138 361527837 169383204 64836854 661422216 638806921 361391184 742697465 895032558 887237182 692041742 994005990 494741550 377693472 735787831 984252501 583038924 581562033 593478009 526863423 802431603 322154811 177057456 932851916 383178533 377165428 712958908 999539903 44733347 598730997 864854605 583237927 365642319 472620230 985360656 115566628 523572624 786132132 932622343 392535116 65241616 897022 625529494 580900971 125519713 819209100 604825413 304363193 620189436 878613519 733442538 670812649 87853246 601589329 83012729 955449782 259592470 127655665 571984301 150600733 855895995 240799381 425055319 245420945 661477794 493654112 666475943 128101823 609312204 890966569 734952498 771095921 649247063 60586420 629510157 129816091 565177305 572981322 693359797 180861375 184823930 366021131 5396029 299925659 453628218 566496761 710235390 363072099 569096629 223939694 232118167 993551859 795710274 739554595 923939692 706281715 110338641 744045582 756136391 19399968 871799544 242501378 358472613 43376870 481449432 353231855 433199391 434701746 219307985 799259152 45445904 189064462 208274227 136765041 617682822 354442236 823075654 834141813 338283450 722644587 712795306 272674321 881195111 523012768 737490925 867602693 708973431 373186822 265693450 572227087 43941512 378000520 214343581 805652485 618554249 680806268 883262844 358080191 298770492 977743972 677335717 268085720 462400130 791604391 332754196 429342116 740645604 828153355 607751762 381977622 864619544 853530390 502811675 177687370 548543802 225513051 984841166 929297111 21642465 778045816 102420761 128576701 62610414 107429909 728204406 305728109 621997156 342621533 245910189 69854409 710961683 258643489 676452155 150506622 641594658 184662183 655275033 882271689 945552814 775219194 422759427 288795215 51385396 866633873 850265811 732666109 18771833 158097970 580536864 196341909 754422577 867065186 922310387 774066148 892421493 31611102 157395598 954460293 760600952 918996061 763580247 838214402 776698790 798186378 874587675 22112378 162308974 70192023 60599936 874206267 849330300 179155064 429858140 384592724 327519920 340118073 28050212 779801048 121234439 278423152 463382868 383680795 249022784 536154151 860336374 767889245 322749905 91557270 95881961 192818421 950053403 400980086 691572418 311116101 846625865 480265017 580000271 969075004 836397588 803906694 969119540 913179320 996736645 13141156 22187584 261696684 50356646 14405415 969371610 978307725 46301151 295156659 904190565 358611354 330446648 418548273 682132694 270546121 242067193 933756197 51925539 918155250 36902048 607495944 724282588 852631120 557574781 865895250 592163367 731979906 777243472 18016586 961045600 507637385 26372499 927659641 49124854 390291880 943505731 266948151 876121688 97502646 277184823 56125503 859383224 97023096 129001994 139325135 199964978 839120331 85806761 670084388 669221907 336133159 994569893 69339538 803142563 710724775 405352359 438687400 957825111 887719522 650275700 510134150 953915954 972330960 394622595 36336599 704545342 393616084 374662924 196093654 605867763 873288103 673004627 715799548 913016133 65740805 614272673 732175677 680543754 188966475 569912705 98357011 830900123 226523324 575635898 103008691 30564617 385060896 483601867 287375953 617785145 647131664 263174847 900404402 250766962 360380032 764636616 235290063 358747346 269562106 620807100 893448095 292749634 909791467 914215897 141755290 949063109 936968588 256303202 340462823 564383187 356660317 414079563 880394343 62580096 834307494 692487603 846059769 316666536 35803313 14051292 633348099 350897173 97747 825865326 674925330 262623974 511228228 585836655 947239062 332142437 3853423 248353233 975937741 801417569 86519894 463976292 395780354 23147628 100326143 247561248 8698489 326184189 670647270 939029413 241498071 34693210 944766786 305971177 303873963 110088019 364145490 993771666 725595753 878168541 478262988 570041780 595655216 203633479 841334564 69649009 814466224 808374160 489293509 844622707 637156676 16021805 791909410 676122899 710803854 837125131 304784354 988282208 3071195 327296417 703203900 800141391 173096074 907948950 70362083 778566568 531394386 871762350 20328704 651536013 156396068 609879377 516336209 265974789 177987854 967348757 191020635 409606048 417532887 21284217 454474154 204431707 281725639 342540633 685150919 371766880 299533846 64931787 501724092 101294964 646495040 341539362 678073517 843767144 908581050 796086693 355335101 787094683 740216194 813468595 811011165 271395799 890640484 276470736 972366563 741233855 327308430 241488447 619436256 305750492 958926735 346798018 618297628 252136695 194111579 495628096 867952498 683206912 763375193 954970650 359167761 64016539 469109698 916289230 426499591 111438972 272416273 775682351 553911536 109179113 173499239 313311972 869001930 293198282 954412637 814980492 967819130 93563961 987739429 229765346 288442396 719713623 244636771 425751066 640178656 623678496 971369030 216542326 711771100 143117914 219472655 421533676 531913223 50243345 243805020 52962713 291036123 235228818 738066275 94071408 381891203 849053863 244138002 446376158 894507024 681864257 611645460 238931988 930482431 249782019 911265772 170188729 906247400 538960715 555691853 462478233 185751826 576166939 860553182 257640182 64665487 480420015 664564195 242287182 710372780 747967918 302615152 681944364 894483389 346642602 420665640 286237305 698234563 62582915 924885583 158988727 134416582 422072312 74098370 544365040 369934054 50757024 963150320 103421972 781121178 438636896 92744113 384237216 529515782 225795709 469954903 957541515 737997988 133626053 909935358 330545582 724381573 908719967 555597610 529015991 745741721 149734416 167458153 15676410 302540179 555909282 362243205 552619415 791182743 145730193 902779585 568586496 916290424 7048857 30921836 313133962 899529771 153283024 291776912 87089707 20487127 265015029 853722907 695200519 82445706 86146057 288410761 427023630 968234501 293712900 936502405 403575330 253570289 576038553 191528100 34639226 75781435 541233956 420478807 273712233 329191930 624096770 872046000 717992095 911620605 644304892 79234344 747956785 231109602 751297547 402796624 612523753 14576707 868788305 719466378 803924234 290396527 521724505 998056316 192704969 120808736 75101789 969622845 744481609 491121822 240707214 808151645 172591700 471482139 842121242 233648559 211003076 515980736 580463818 415919042 287535435 837669519 717788933 173602109 566633796 600477915 16405911 609464898 41931931 569435004 354650479 207951147 628838133 348773200 529677933 751946789 330252482 857607429 422044255 587366485 365933293 825157002 768511210 863989284 174386431 183889059 259270895 703393778 424620220 655973105 944315966 678595150 28291242 785883183 271936560 472181961 606177887 538028901 628324714 103298796 14293302 74641871 294412777 81497464 474147261 864144138 202220122 458305789 742689052 936113037 626158750 629621260 583945596 760863325 994856947 199216288 154816601 709247775 427666971 56202680 903706325 706333301 860051542 857071179 540168002 706922014 978831793 354769520 889606341 165372808 597234303 305024968 920337588 661479936 86258004 328234147 183648628 815354174 691026377 951701901 385114651 654639824 468642608 47242507 352701413 281928975 3774332 46188253 492328088 706436094 324447212 438534351 824276221 18266928 319670209 935218541 513019151 797582310 946792260 235086780 885211714 573776810 463245721 309740785 939210175 91099156 30805560 105846979 362517053 469087476 429443377 498002042 790511483 421156177 338240562 684824782 862078348 197636797 962235529 56286739 275747475 52362902 550563377 552615103 332635305 219889364 930624159 853797299 318282841 228028329 735999700 684193950 603176808 895605432 493988736 471287453 563677508 113409819 57684672 830951210 772612949 660541774 220131594 652252176 671659564 267308278 318463154 711773664 400652800 307757983 654544633 295275096 388218970 274360714 238129754 103608037 139265687 873579668 29022592 161570978 30479716 669699366 239269993 176197401 635201654 71696506 426319672 397283698 879847336 840726025 576056393 255821598 573462266 271607514 120876933 584412703 35797162 189245250 426380337 572152497 76691892 887956522 884820794 936131333 127403240 986630776 888805920 187600721 392812274 452345518 132558208 65207664 74315147 347704471 319365765 474570837 249380424 412317124 260232028 898659812 311603529 946739567 595464209 776354876 716521062 430672163 539164659 137153147 404036683 873806350 140051524 343798628 148114438 738306007 275347106 621612518 503907395 72601936 593471113 735942507 460082321 393917955 647781346 28223292 146318814 87543492 663884715 51340449 138219010 527457468 325139846 805663123 58245260 174789168 757069337 756321678 199905626 554418504 500756734 669584621 429414229 943498352 448713935 316380639 320729358 958645294 470656887 249944021 987366468 810827116 208050372 846190621 721936576 804527766 454693214 600070627 287479725 225561456 875569038 88620585 661438009 35712829 625806703 213086776 913643555 214505283 649313723 384388018 547804537 321051746 352338815 354792635 713904890 666240216 374561298 727731692 307908428 381050438 32615738 246760460 863223897 439612090 754108832 135566489 3862349 344451185 128220264 995799592 551988994 235832659 895255306 634773274 165061937 953271261 430251061 982537234 375704024 81116596 778516469 778047338 669752486 451510080 617290423 941310126 474356288 163104003 156346838 412909245 240110860 111445557 172397898 228379223 372991557 52140984 668446887 180944424 223330117 684598636 947912416 522375439 517035723 535419081 811971795 28802321 114405661 471099168 646704412 43087956 846939466 632612720 936135868 620606952 820818511 443013329 845398425 419283693 389840580 478259414 771545949 802951834 736185438 790097524 765710439 325936434 591262494 841144479 186349719 336023438 802940842 573382680 457888213 78676236 29663614 746160780 490241193 927330668 173013730 877831356 629599769 167544809 957518855 672051826 966854744 125188944 320350524 98928874 472563018 496564147 76356346 17262470 874370225 337396003 681010553 108976403 588350692 505520949 528535192 436760483 103931870 233269471 983318219 167665387 186102897 702522900 300367814 590819610 938662235 213928796 447131134 420834260 300859747 512966911 360133371 239930061 213753920 375813219 59661890 166744542 829819542 654888097 881907608 803296428 767990182 2540416 513993898 578519541 534922961 217575681 195830203 205392967 298396642 112686266 102176541 234443694 723898985 155237928 663987491 601152673 282986316 7378447 659562476 64362912 659002578 284144601 807140290 170038569 88009799 755028497 461019576 99762148 8414729 596825451 33555369 890426441 343150617 766961503 270922050 756358971 213492136 682346783 667619854 645217516 238744398 864636234 747190849 224429609 243197857 95669796 265850921 490617161 954446859 454471165 337239213 333760551 659000833 728857214 586875775 842089415 615081992 436871967 367865085 210718145 578784938 625622424 602997073 538165325 839179002 425691314 233714757 58728030 483059130 185552718 291146944 198097070 320229136 261660936 484351571 161579341 525864210 263995796 778313671 423986241 567225284 663554188 483511056 521461949 94957828 593321666 381688636 615835570 847482397 526697700 886034235 323869471 62347643 805601527 242588509 958508353 105995189 85111144 17998553 719717367 237264884 385741921 88033360 483244081 769202771 444709668 142897240 568417503 815170871 665108299 219196550 473124112 308975377 62165921 568931646 696168175 245341340 706282047 823886061 858237033 88326305 907287144 488790724 182857731 736039220 186696757 141594123 443812900 623760488 704121642 941261714 710085374 832900079 552379727 953909701 745646000 239859700 8380615 819022915 891321014 961315043 771427876 80845660 591465279 930301557 636259216 882933837 109022946 345533537 496482317 18882507 477344702 197829185 124805765 410267726 438645801 858072003 316887938 60415085 199483365 94128577 392973876 248440987 678427374 189282475 998312407 7436664 530808858 673102117 404745548 882465966 936148450 776596036 155935052 951375773 241164634 936672293 230950715 895702171 269808365 401110409 119240158 475707358 47185988 884307996 888913205 748760259 731366564 874875979 4382442 747311705 3348735 714786443 92450341 903031649 502216319 304395509 221994597 519913821 275969226 548510656 488011513 188559448 550792674 701968522 496030063 927136911 486914184 836069482 193175959 111810291 836882485 113219726 533889434 831702804 988075646 812551354 734140578 261367405 249682576 90446685 308604233 403327068 39209116 277894078 913074993 764212705 813827316 544482491 181310800 804808063 977494231 376906440 64651138 405767164 437232761 509052292 206886423 404970124 433505541 499640991 457767199 416220397 367010395 95149842 696765158 622959627 996996200 768337986 842970196 936323645 64372427 465908784 648456369 321434341 612853352 133700391 636843932 602460693 97467201 256223719 659172406 641576077 405093845 261306427 404163910 360771217 735460245 462535657 703712130 192488124 735417698 131995957 61485993 555793355 127887835 205956307 855501039 965758533 914101209 702000130 847639019 931114469 698843315 115642795 857691831 448751938 857793700 530572179 311609621 758529032 615442356 299903903 281232551 708745822 370830308 512172738 571308712 746329232 882952605 66373800 260215002 924150197 215513398 773447346 647753251 63122833 730166374 143507958 670437936 290166951 371134184 80107042 735818830 310099010 588531155 751380768 14474470 838205912 403740311 381400297 114880828 644296251 627798228 407020614 817557216 679807351 568578319 51654062 889768833 504437635 417085817 55766746 968801394 682012066 723473785 210411842 877423168 523288123 37514675 764723689 811408932 159459038 207545280 420055217 55083990 729061310 515244651 272138587 552043884 326106174 413960676 920556443 276171152 751659669 349851198 611404028 559180915 698673307 744675180 83913249 306238706 633978046 436200775 546906944 399740956 431260619 667238803 443155704 783534189 359262347 332595402 618167593 219112340 450610329 884876593 606963768 57013982 183034173 16726592 554606849 383504545 309957398 625681789 967572189 849599367 376311257 43136922 331446458 838300049 900434219 624891534 281432249 204172401 300146557 216922958 636054563 996803065 857806331 666981755 692739470 534090592 500364152 657680437 592759807 713438229 360970504 604413366 947834470 636111158 132650508 244268230 527877540 420803216 171738191 717449973 287146260 653336099 100194538 449484108 576095921 802580574 646989664 657478289 326172882 529370165 89890041 989529899 612424174 858194313 601828321 148935272 554929488 775288069 562934023 165242268 658993721 15992088 884963291 370931042 649051717 683445239 169191856 369296428 456731884 290900041 318068282 465743337 199273839 604965595 736604036 450545483 737086846 905832624 157141513 234439508 366619546 531344333 573363958 920563052 978936342 400437514 272078074 331825809 907110802 187428511 979533011 330671588 455560603 875177435 238217099 163499822 723502717 579095125 452415298 44454389 428036580 482660088 580175821 119802919 587189074 455147960 285488117 141056668 749647154 920332051 807420826 83335598 616775715 803550831 386441768 414219263 823181339 53473282 867527122 574575396 604476336 674388896 79072806 626381516 181293019 4958807 735616378 673760946 882407225 707109847 942342033 980051786 511918418 162949563 394481905 284213841 791782005 997349779 639146366 376559340 784497123 458186098 772444252 204086204 932676236 371879220 439404706 739518284 320357181 468372030 320126162 944093267 450268681 237732605 586552896 152420757 410370603 391110047 787878580 991383755 427317053 772140475 557828759 179177224 330374979 203965229 104139843 397732024 274462115 853921028 418706669 634691003 883002067 761654092 853630265 478808693 363689054 547786329 13581992 710530266 736239192 418866701 506869309 473043802 157013183 908884569 355808213 864441491 143541158 350369517 856478961 499960481 250023064 271850390 166701404 199591437 907855597 189606617 663590421 474138534 772825063 122270537 476849608 780262637 416251123 571672821 454353259 965890275 752134821 502451578 307214221 500131660 145905925 940097028 887012386 886217552 943522960 655016426 776160140 513694201 119361511 35561837 883331454 436125360 84570714 255425178 65625709 124474447 70943772 153096795 414642531 220135736 615169108 354194553 323874525 606326078 5492304 727463624 267579404 387694385 756303069 369856068 868621012 619319504 133279809 261845700 883875990 577503771 124393094 536309739 688689336 762660799 581513019 881097594 745124430 745160717 211290300 529637880 943806127 567791115 473685272 309665762 856054204 941117646 584700634 853104402 713248568 550783410 36485945 697605928 984645354 604363263 260860450 920456987 783654020 706740392 235275280 806154276 220952871 591168405 825221390 473973597 432641862 910124582 611468310 358836039 794675973 444540094 576699508 320967258 584936898 575769314 953795775 891337914 728743267 96190046 313855710 517455522 448000690 189303301 769233519 305349959 780120432 28748902 867392790 51392833 231376340 130322152 109935965 486244752 799883660 817361620 191220944 755938343 736632777 191537988 208544274 766093576 649224180 600926982 427009804 914837179 505002158 633115100 589465382 864533404 761711902 288398809 793941338 178654779 123957079 732055739 712416859 104043048 172274657 472209277 74646451 284236478 738175313 129855694 934827628 234182615 356724051 135432755 135126123 602182001 629908154 515593622 485471659 602713374 465360342 245792027 425661007 625555358 425642141 206269432 586399160 234843655 123862135 408155914 870835540 564304648 178769546 949821739 91211301 66267070 589091574 961029587 230352607 865920765 80639334 452864909 444208122 73708766 244159566 380041751 317231475 682208631 194999953 22414366 439941669 130678200 25908021 892097744 336121403 340980625 747349753 424344361 597252317 357269736 253563658 630386964 918386861 117782560 72072995 627151574 449682603 315515373 257441805 265896388 665398126 146804774 821330489 333140529 245608131 710827324 501486188 944120053 769652585 456977321 378714845 895711786 60067499 871561412 947936690 784365065 141254231 221853893 538168495 652093224 741819013 332158786 549064452 868419583 708229441 359572819 428154463 766262143 830667596 247081407 299174585 474955818 675681936 561066349 360966320 55871596 743605216 313728219 30459318 350238716 296364606 99344084 198162191 599759601 164110429 675848116 293640948 538361121 117071782 324529236 263103932 345055522 973937390 267444214 524277543 974008354 287023173 356725432 518406880 588908561 685601940 226214577 539133140 308315219 515525983 818190900 906239576 200871725 443590898 980361800 68574292 577643723 389580011 558487364 890534502 525713340 555743508 927438801 224139952 676716320 338681754 579492258 516029181 163536619 108800196 577840202 951020678 65369390 622374431 111408664 67551289 698011678 769172567 80044009 943097336 609896163 390113419 879991335 558062102 758783880 628755158 969855930 797534358 431801084 845882116 157015053 268872088 481445800 875974983 331436429 907210627 970632310 743402545 101127902 741911998 720277869 275381188 969986079 732198149 200437482 822751791 408823767 290200721 947651106 146512010 527593361 612006705 837861282 177695650 821935676 700880840 163885427 470853439 336117849 42894975 436026324 942334603 589557062 654811770 418037596 94421959 64373685 103492728 773952093 608893555 937280135 51052983 613361446 655271981 186330269 723797082 385554232 420841267 310332241 693525327 461164824 713418060 625747164 574349202 13077378 133759534 937468291 962528996 952756199 317168444 170705694 993070971 169873055 155532 986443210 361363217 641995578 705787913 970362812 204066944 453775774 26719092 707042108 917884789 634490841 551897796 419250459 329285306 353641028 509551280 750487882 295712887 102711191 947606039 975515355 547163033 991435461 91607036 852815857 988485476 421408943 34990316 150176295 804381887 543257484 297130717 680672302 343067293 304849676 687573118 540036676 579779805 373145061 541207571 339909776 577270045 317199125 500152925 106502182 541081526 985303628 135197836 874047721 574575726 578427012 50140461 625640897 158412919 554374969 788667795 726967614 573055380 190674433 593462488 400485916 977609353 193269685 503201878 755601715 281667455 429093844 46098166 21572981 831162464 944625269 158628616 144691134 998538387 822934259 510578512 560853405 400460884 371068503 298223347 202644367 277076235 165750881 530375817 793880712 120805899 722225811 630540415 670717215 897022876 554171083 985206846 887459914 727196872 430984496 794880051 595612319 458557104 135522332 85071412 335851360 511860873 717575538 150148748 567143432 249567605 626776132 564566418 701444481 759669938 413161717 446565196 83735398 277548378 3981895 36886114 538932959 595380123 799960051 403160290 772245012 87618357 521745262 989787376 623297586 376037773 638376796 912247651 384039740 500300571 34013217 798007445 793280569 383958299 152386152 114365983 420042870 243162044 701427011 333337916 298491902 937551866 839037522 787843561 373706893 299476649 188748485 4508117 88652120 730230293 459066843 942942807 560774594 244676067 594049566 816029979 771142371 860529323 967152887 38503327 637059462 949639317 437622892 205649951 967395655 933304512 814454818 246554950 781732681 5989509 655149631 640130044 127440779 124440592 265868603 968692118 347645970 669273342 186961367 133126786 308347012 39447706 351862586 225379679 229589312 649531037 874770819 302460436 372637839 752409809 696220857 907563485 286743479 229609078 105028325 464590192 177692640 337961332 163532802 402771399 23365695 857181654 378213092 511548724 743761692 629280707 46142044 406655328 584463554 969484221 909543999 63455 638891669 168420771 845116740 715982710 196410782 11422237 570019461 190847732 213782601 976052509 535418869 524171294 85477702 144461697 838497895 45964293 79528791 991107224 798721928 112472030 98442062 431379085 823175292 24764090 228376723 91266941 545935905 623528451 619037567 953005496 983781388 530574472 982976832 444788333 463794758 270122599 440429614 289307153 707697240 357107587 38148089 858255501 211505471 74025006 747864033 367068974 287311001 250728937 853560755 521838544 542450065 6258772 855941696 58188679 758318801 652085615 993968070 298021445 27812704 338680090 609391037 786288405 991291528 775483176 958669387 285916270 124308250 852980601 39687467 500068980 774467759 506027285 22150609 389651495 627220282 797324803 676393347 294755348 213510411 632003782 876396012 462499078 434237658 401185421 185532423 694819819 62296954 705017893 927516359 668276009 280438104 469333589 274457318 228725939 804147651 279810454 861490654 193420808 926420160 403403805 964493536 852818386 828468349 236445584 812633361 386469439 350677595 754840769 307280810 673291960 26506403 503399047 846083831 290082935 693472093 595387857 86215971 167762229 27472274 52000371 180308909 602177977 523892124 211786218 794645358 48541159 953412147 238648692 532941906 308401515 894056265 399449869 707677033 595444856 536080346 152046259 318632584 938480232 336688094 586997566 432361264 591500920 753269260 962031700 471216319 366386666 502147350 611701522 26560828 914851869 541066613 99547993 433190767 212790970 446994321 491601425 20481771 232440322 658380216 654142556 191299742 186193191 191890437 799002266 506309114 198766315 591727437 276211983 437177699 385580657 945163614 133729286 620108743 349844128 766135442 550102170 894233597 702602211 462557143 527136558 903940882 33167203 88358208 427254537 507358862 383062538 674771680 505917204 504463758 743442927 280770102 751163724 24802401 990792471 978309159 164112432 270789460 417831056 327843012 580204218 700699566 769685951 241476145 662624539 470472863 730287363 168547488 375605139 854870735 679395621 126384364 334437679 716715372 289248287 871569931 940493682 411416479 935219275 25812551 866956834 914356151 632945779 138435540 613244651 126958607 840393661 769322759 586351103 162253884 982273878 518275648 445791730 952699136 192680208 343845330 718213080 520808435 104786791 627844010 165862327 497962072 367315829 525573086 571981774 145312721 839048638 414830857 590127583 855086291 270404891 772949243 897954371 775278255 667814955 940199492 755891233 525488262 935725417 489198669 791267313 532022996 394654006 20023297 988821922 39823070 870757042 719448013 587330024 718237389 798783625 986669246 129322132 586951184 124009840 64967711 574537905 950153253 631707667 59616640 389598167 23764008 939867234 954192080 384216742 847232669 715412792 302994833 804086308 682067630 179724185 352915492 511877615 352776047 112953659 934979939 407940534 424371376 389359825 843553590 226917434 388735436 234747982 344978064 608213743 36818771 766008305 974081342 290175587 993242887 830568305 891393646 886090066 991873449 831266755 940357809 995256462 507457078 72432930 11966208 250224865 904464811 129220807 570450100 606403266 141006233 793181526 302274589 635974993 314296657 458655444 741712951 485769081 84638862 532852422 213340793 22188302 579518123 291689434 892856580 911403794 893680048 948023494 550436524 609150027 517321276 141507932 479408219 110910041 477985378 588387793 591122598 7471613 991167981 209444341 434263119 226996587 101480735 899066833 565275380 233129106 621302906 680306505 395025646 319124743 57263717 256960677 481000979 643797534 758713482 584761855 327703755 243410578 283199492 899283129 204199926 986415755 942593507 735466 518791466 835977807 809918049 509303115 659785217 329328464 330366210 544499699 769549722 954208342 346719926 105853021 179936415 442859450 34104472 792677638 346104605 196265186 894074249 382388727 12835794 387967812 331688850 496041019 327019676 942896715 51838473 286211168 471338710 930035560 558199132 758328232 233527753 235608069 635476269 287550944 185984441 244415537 482418931 633124762 91624858 890017116 422687510 928685799 152397194 841151017 655887712 112973595 189314837 391348050 410361139 898538569 615369180 825062541 797721549 442597977 133112909 761965398 846600348 150912618 949237777 13832113 127987430 933837410 608453732 463219708 600489815 193876930 14779411 197906156 418127243 663595412 385459404 793779746 617319660 146046693 805242537 159463963 606814859 706011358 18711610 219996682 789696278 122922370 915185413 106004975 427719477 632678512 2965293 341618468 649848441 324388699 235383681 928583120 789728844 442072920 358056527 704599513 89922340 153421604 206140721 42274731 933844418 937384807 198489080 161615238 129004023 255393875 844528074 310192238 459667782 806173218 318184601 103513902 806624061 926740822 538952813 723668396 179829253 167747081 251977627 245701137 446747678 674263515 806638067 870270058 516679840 288796181 177627747 351701009 741760495 864933805 531247328 423321074 636066506 913159648 649642839 372239244 991724607 237524300 847569237 63643996 860256075 774184098 795875212 949938084 415707636 90805748 435318985 804716566 435728592 668662232 418471404 892662943 344623739 89125237 687450406 327997138 349580493 792538204 909430103 923277431 631852973 156415300 225391479 23460619 695034740 407243505 1045325 518914344 938380173 293402155 82603036 444240651 381743307 435753964 117710543 917901361 867246997 659187503 961320345 772149495 379848637 229821492 203000970 276601332 470220950 303761178 29166785 414941259 891163513 779828327 631300308 540949964 928961645 778731737 431110722 689372674 947441014 839424898 997661211 203413933 860348432 355699942 274889999 41738219 665435629 593162029 54268333 456816326 224012625 959266551 833801315 321530081 419065937 250028096 599885929 313434319 792050557 743941867 224291676 626459760 470546940 163694357 405097652 78452548 26848130 607781670 23930812 650966689 629896184 121284025 396993097 235072414 132161043 736044334 42412806 99912624 865530410 487311379 807103671 417399038 279431764 416641809 211760793 752754369 608136374 610679046 77101152 431172463 409849313 552088616 730657439 467456886 204152460 524757185 993204428 220748801 382882353 300186577 185052696 818861241 88576046 525167914 678182015 930629139 623115952 895967905 805987079 296536976 789058702 115575387 508244833 662214424 29520494 104435624 847068418 244801552 103543795 564283634 799797084 582449469 288014977 197304988 414099864 329054056 29201689 585022408 146971017 375626723 867291613 251584419 377516349 765590282 701737068 789250759 112706117 73755677 978535887 189181313 843749941 744648168 558557603 483481246 820777276 623875853 744015440 516978856 122595519 818342149 201955376 257931518 424306846 649895304 843844927 498742818 445405305 553388892 489131639 254118916 812629358 135902088 903942141 178220663 288938563 343539772 561264766 575933128 180984728 5903094 365614685 944763 440234305 432652865 658612913 651354787 300843986 694518150 452423685 112490997 870473950 374866068 876125694 349941357 835810248 638486235 887588252 650492276 935345955 108246821 553383270 390072769 922081604 966215791 782436573 881218679 183952146 303806867 122897905 208988540 754225668 502346365 136975798 151969074 450827931 339364228 685889178 234397910 346627319 398840385 79573799 788501204 65056740 807537070 968069265 936434784 880952209 298317496 878473513 69370057 479269384 504201509 739874267 592957158 118212998 283984891 959559684 177868778 664030083 26260080 990376068 694016391 76092384 869061162 872250965 897301116 381140193 954383808 951351149 138473115 987308426 212644746 219271387 561801935 568888559 279906450 20528439 612573795 966237994 190325297 534701481 574303735 978719922 39043184 144389291 417066893 281609604 806683589 239339651 65661043 234333336 587624383 401023432 527944177 90230201 759257240 115729009 246356622 114103788 803594356 878751468 511406840 408622763 184088204 953663564 76364344 348310104 882531370 251988861 887462235 960727877 763392642 217245698 479845265 849866220 846758213 454170099 397635328 973877145 938951485 531333113 674970649 439031993 117033107 722752599 557602178 651533591 487141717 29818775 369547911 165359260 530554666 868348964 926340536 528888830 290663542 618497821 475929077 891936203 468459268 75952581 294459036 677281453 574870793 855079597 98155218 105749351 662000731 139539224 800798065 384499127 880256265 531427376 328918271 778104893 650744521 543094564 117363157 49019625 577781738 181970491 155036603 944500774 514336503 577824392 817885913 871928828 986668140 422782761 469606303 169605571 517205978 794055687 337390697 334393088 678633895 187929266 685750143 817230746 867701355 250950009 570181407 758696307 936143742 951192343 742315932 310635779 354508592 648059845 585640293 401298009 106306080 52048880 852202077 362755190 910396002 97366493 530605232 215810008 892446384 34026143 322556064 862880220 320576265 782038644 618343614 788588251 100820517 599539575 480662833 838743003 589055153 798183886 490458532 784572151 40313261 839576424 36840263 695906552 240286440 770667915 276511137 316027832 821494737 456602274 520309403 996668518 162021407 982098423 749764334 678007476 89209151 802311281 846789298 232797921 644038053 315666535 879620935 796073626 717794410 880073557 117929039 899097042 588445220 315714649 603864726 751865075 83685510 565863750 9422325 849041962 882028766 428765343 101970645 183194618 37182047 213262397 600997278 876475703 420922704 604293553 428947693 561012662 86146331 417880437 300147126 593807137 631402419 240176349 567009798 994944155 41137611 381139520 758912617 748086805 91651885 138430590 927539048 885260884 88243087 532576695 886330824 460139966 632149358 649616863 236486691 144835294 6659906 576033865 386952985 36634991 168387889 377908717 247245603 961081573 228247787 672234282 117157239 68454065 694052400 701991244 622707882 683126206 187030847 547137580 854815738 343613449 685621536 692521699 87832928 167295305 52514968 109787903 705482849 957721482 440664916 718262021 764016769 809832595 839558742 680677850 618381131 688915448 619247196 442119066 842686679 441830625 970509012 84839785 968307874 331794190 57733965 977921375 315904610 686860319 680085648 907614917 610985622 703812443 276966462 757801338 677898245 647453847 525680371 174200752 749738029 895123756 267884465 134104660 51246021 532258786 79237501 231545492 317704815 977303047 700975717 767865543 651757760 456575957 433457079 366073085 416157410 769404437 392064756 794200204 266865293 289543930 126833340 6163222 677968954 162020297 935365185 769286938 127488018 332165481 51126966 788148286 219010345 986760605 238708226 357433848 511335095 85535089 529423562 396694778 401784666 642173303 764799637 741512241 155841106 853855365 534362589 758575731 716178736 526721553 42532804 794742108 78490751 327956979 585317279 99855384 766001343 653637772 835034137 322358165 233156281 79964499 331316762 206954729 933486753 842313294 849659971 488907583 953226893 415870516 496200219 81745077 872435274 659871345 623731402 826350337 903970990 24368260 504348713 308425095 725746009 107596594 400556531 952552514 12155078 478264856 957217170 554412278 599522476 632324826 108258085 932966907 571087919 857324109 965979758 349122626 364765153 946422077 727364346 645189023 618599167 201831466 399656545 798787462 337494437 955832204 637605825 322874131 427398000 904840571 364582186 168750169 354592844 121143551 215865193 40551443 922740861 42783275 325377879 997654236 50472170 383822525 986156239 384434422 588966847 576338820 561215988 523301920 897918703 117833066 47420387 569479705 281407677 768941357 770971756 36509138 756284144 639882641 450633895 865082444 531985174 920261793 964347929 677134739 399318747 797631424 237495706 942178663 960162727 986369797 337142266 24166163 708074245 681711795 517869382 816347274 296048151 609500145 489183831 454394710 778756171 251110582 983083543 387455016 922605273 703944904 171312236 117172344 849500162 343755703 75103459 69304842 495580586 151314068 463338236 209151710 264379194 824101964 341991080 421019239 566841880 809372780 953513684 543099507 547996439 226963069 286302858 157661313 932870292 467605509 412553417 983652126 666502097 161582146 159875342 345216991 130272784 879657312 404181126 957373147 444959709 178443509 721010253 82636187 141954719 830512377 754387524 440689782 724742955 134723651 423240124 390411843 738650283 519586101 899213487 783615859 373132829 991513290 51330203 940612501 395360871 919263218 886018087 997101561 718834264 273973632 746361168 20362488 391555016 967181504 499678513 383748382 510786756 41964864 909995039 253225481 862630288 422094824 504188760 91971699 519097740 860502280 664599004 155720555 848771964 663593484 254314476 354266846 293939993 730221577 83285992 665249574 601704766 983895269 118517870 334934738 705546642 880982559 433612506 930279654 727336728 679647355 970331330 116451414 710801309 195410840 771916630 161617337 337169920 741669905 880430261 456858173 452339947 914686765 272222616 522125858 400760077 102474378 571484056 603619262 265229218 402143895 336713201 238748635 698973674 99892059 448520919 792392598 561793267 103325926 573197455 12370486 303125232 420204615 962895191 174304955 460314550 265231392 463758326 890219744 831164935 52330983 457180022 657178811 236033971 424509073 96771899 121773085 248421090 924362205 770602918 670319867 569988696 947189690 763731969 93091654 323686510 885868424 767878478 460413532 434415295 900364406 249356511 59237847 596061497 182816284 929042052 865600931 346001289 390843447 805050854 816876515 764997874 105827002 583979666 649977667 440192167 823850289 790319077 513282615 73157113 629618357 179626299 276794146 979982216 479450939 532507368 377830008 229286650 9791120 396983596 895166278 103144813 232152804 771555197 96197419 5081259 874456568 564953398 356689965 861258718 895356137 429567630 202834816 441607525 212621074 743878055 889800387 831138332 95132324 223444812 772007372 577348254 675396559 738192407 163090826 393718335 667412660 822000429 813122668 476473193 557437144 44517801 415012578 174996955 424455450 399778893 127506966 824974167 463206007 452371291 172742274 905823683 702742474 344790800 916296786 907865703 442113376 936824164 985158252 343081277 232981132 844193753 193306635 286527502 563067659 797851582 396923309 416526256 170519792 433046926 872253015 51970570 683880042 2904705 301743255 827697041 156163180 73260588 292996985 718465424 927803321 358559003 309612113 567043888 979131168 629703953 608418288 757649782 403207770 199122493 71179018 660677995 30686955 367604620 467188768 771429321 711226721 19831299 335165972 71377657 625115271 189911490 429210894 385641343 75004 578552026 383845722 643761103 96189664 826609683 916576167 362822519 207655504 364682390 442910460 424933134 336207689 237834738 236839321 230625771 943709616 483511400 269522050 789388044 251472337 406452041 705866672 603839153 213348572 870648565 871873866 156623298 149126604 478164919 287372466 960091604 259278228 868256007 286572628 998863941 82859426 720298606 214611494 399357838 765673464 916149108 553709657 863778105 191339306 274274381 783917209 890142846 517381887 657950275 69633600 162793810 190286088 379958277 259936067 857460692 871449042 959879954 840618655 43294573 249139247 637541555 410430553 979126658 688200490 701081018 227921897 687745541 561010979 299723790 533279373 70986442 144441898 282856830 915982420 851126952 429525575 906161256 662640127 333196824 646890346 955762473 276881192 710140967 200200679 146056282 638872502 42231994 265325150 503481783 813998609 631569424 372410163 260815902 108455530 107108126 17881017 987021866 653252065 506961232 85480681 525965657 402150875 985818392 804978798 38236504 426353608 388596114 406657239 577574993 711971314 292507791 982970239 887507016 65837421 526074891 538626100 668177726 56343167 327939080 584238332 169623730 683872252 264343696 569179333 912802734 605009964 428446312 835214765 266129248 392922253 374101788 465571546 252436791 765817220 908472218 22298609 645920742 581095637 12443067 643404231 263772523 818943625 547962997 590796421 236015393 442824007 641239744 326631241 420936774 444537137 7329117 427057426 597595360 953789078 883018991 294443714 934617266 693346302 389797522 663658230 955408185 462396732 386232719 537424326 685318264 807724001 753190580 562973363 343840616 735061105 928043219 493012240 403334310 569259066 319833177 549224015 895273194 917688150 911885865 617879104 951985766 195593350 850769428 421739786 627444100 930029951 459159370 548947614 436002821 171953137 715965348 294436493 438876719 621575467 851095578 498994707 764407901 604103674 887257574 163514405 219821025 747108092 913474817 382612361 19955342 889726536 176151120 332278636 946605385 335313209 998944408 622781429 731587213 160308592 647460629 566291660 624286794 878166736 723458987 265758940 97190768 344302779 582879637 252645732 118194815 788249532 472068420 737507077 772547888 105258269 185452358 719688461 253132981 348965982 603091608 632578783 678038906 794427892 858257955 516274813 915296821 546917678 367263837 83830609 426217852 977584090 683923093 450028400 345074898 464650010 580813214 99830548 546027141 566514552 30031010 571210540 227820715 152389217 451990803 530410411 698278044 514856374 970171184 434305953 461278466 664354412 12286539 82939073 201522200 614704739 283026895 23777596 377014568 720142671 394735472 478631358 764467952 645685558 581638723 773522450 751837460 830039945 351416505 832073781 940224861 855756422 522926996 604328173 716112389 353760402 709159296 687439633 351477496 710961090 428868972 975487815 664661098 533498629 243095095 510202187 723610715 836224912 300074648 667302685 80618304 283625374 132957223 410644301 165135735 105951464 137757179 803280212 409358358 524732004 754904978 843673053 902524986 949147794 553572030 375562305 627736562 909968426 386544499 733379766 657256965 595672259 294369642 387994072 547523584 98320497 957607290 785323866 172522561 180483409 130046351 302899695 880897742 766931334 221015794 725440172 695704671 755179337 69806489 591095116 936718665 693250739 844641201 136339205 347397341 903876558 941577408 100263093 321954345 260734364 917224062 89400083 826127934 175466454 502422821 879950366 424928032 63478086 276723854 142949487 739092378 772129249 354157578 35936375 521413760 43682160 173847489 688718766 68554767 859382871 95466700 110524597 4026817 779940304 539969246 979030511 342668834 227085359 78437085 606713742 802483475 980819091 143182736 192923305 997501686 575562682 36505825 290206014 118105500 530744565 200788020 363651309 577760231 156974523 229338837 207822121 370473092 328660304 763453786 969864486 972517123 851205547 643852164 290659615 350423595 484245380 434017718 130992704 126960571 540843678 88859238 406213134 326670480 960214293 915107656 648748903 882486818 328761766 227294814 568578198 814059020 720906506 906118615 644012570 342575062 903464849 255401556 48542203 417400758 697290122 944786603 943906082 37726155 225657522 418975146 280230470 457800605 602634729 650206162 980839600 760840201 975185464 679929591 961637964 549550925 77015469 410514094 751498030 72782817 489571493 686417421 804994664 813580888 305386152 439078247 390101218 257845005 317711552 565322378 243331807 340030556 442709563 779741326 970102299 616232051 902035704 91098315 864323885 922163420 98631113 219692060 921419142 834815288 209205590 962813145 274606720 38981475 477178486 213551062 115054276 894011072 891970162 926125709 381506843 58312056 966132646 377836808 181554468 171549429 852103453 920120160 580567121 497008532 259714764 491008557 114395061 88004090 64464226 135864578 529340705 34506304 618582187 335034585 913449095 298216835 864758955 702274027 859714476 938005038 443899534 201476296 860547212 819132305 977301444 398788851 705935315 678162054 72451046 194221630 956830494 332814901 924759511 65600879 882533233 780489790 294205337 51637201 132177324 955960209 88389661 796970398 605333904 992072577 948513272 681774960 319149546 485995960 224299431 383355229 982638916 295042418 551246196 907465117 236770811 589533081 842120155 451457325 797708447 704863794 631601296 736723192 912328493 233542035 693478462 277250180 63381341 160189694 373666049 919721703 361166896 127822111 380447849 221628291 769899254 585198240 244270764 480438352 12361085 682779671 752522198 835475108 390854906 942764785 865358664 252203288 132082694 525751722 845181429 861134850 681855352 917061426 854682056 432482546 746403480 263604445 757655213 838377139 90668891 995460839 387207911 760306663 358634811 90511563 325348486 294034581 788283808 278840201 631356960 528641950 771385837 649010559 57520494 760859299 958772316 371572665 599861932 315959571 789937443 715952579 529261774 33305725 840640049 406858402 616117790 790516545 116982719 500283995 670434569 679041800 623099532 631355433 234777963 341657165 539123140 102656021 98143855 139457669 119335227 200280428 767142806 635757604 727481267 420866153 700552065 689781388 485821461 689276666 758271022 849391948 342388911 91158023 228528759 434808049 685353904 664121324 462977724 689571223 740303937 546808956 215184843 944465257 917747277 430030730 441712288 852871622 758716610 53527451 890188783 870040517 738640226 2950212 450598487 158736636 2546510 877675286 913910028 584723219 338994420 122000218 361812251 649974660 492089562 836531638 3876092 65979400 58881113 315999893 703641976 555997849 743563719 168012089 669400943 536294919 131311575 568343094 771160343 594553142 549642791 321456511 149553232 21978972 509510838 362635575 337486320 153814604 206167049 644160474 359826581 325501094 536129 468592956 608183272 361832684 750123347 474961566 18157328 805969582 411958873 262718824 493555451 105872697 202138539 927390642 70731396 762668231 37786527 124622349 800369507 97783991 603783454 103407408 888522536 902082291 75968141 677001690 438051245 875894581 391252416 306587080 864234596 980367455 99993522 149579154 913681483 176417548 850514913 377465194 145376797 807080966 405937634 639785200 147873711 112937257 733254869 489601286 585551963 657837094 385074530 693947055 818609715 909218407 664999991 277590380 484395189 920389572 965000064 56696548 964875476 766695269 542967937 901132032 574196210 530265527 969719969 455245178 154290305 530166162 5158395 893166376 312229451 116127238 672800969 999632135 896443679 94767664 52987190 157279151 799476647 262467931 555971918 454736904 45933533 273534900 538009973 773029517 521271245 231044423 984522181 701254044 920323560 330886463 180444325 582923352 456390196 323275132 929613201 675094396 790333316 439994267 773714195 701195464 121036570 352087076 903783673 260176891 212704166 968455210 38249320 315223202 125516377 669393500 189183064 871767992 949297085 261402566 739272647 662528583 267038002 782652361 162785073 555193402 62765911 560224323 662550785 22244075 969337360 118222894 575631157 612909876 738459324 520379298 314481531 794318848 605892177 402777804 923782479 811176683 556480794 906005274 698609574 895430062 307019539 699978903 899410253 72365150 278919148 860546820 394389330 246294081 980704074 109357439 841481885 802450122 200711615 870498363 921975605 869169357 587765264 41476034 567782884 230316305 720335468 455351533 990013293 928141223 610186650 321828878 625905530 465854787 376110663 45150170 29296762 436604290 554065460 946018521 183279982 744954113 351496336 935705058 410489110 598704807 326366391 514758849 46521686 715257847 474194887 233899916 159096887 482976833 523688040 485084711 999034340 952205543 832536045 670943138 916688587 240990387 254475088 461771978 97092045 606052840 841534301 4689067 608076430 216446581 45648248 126656523 633265473 55715776 827492588 369168900 698533595 436069625 528265928 37624989 755081901 596063104 536313793 505063564 124424811 588961623 304897709 770604099 311366480 445334742 548477414 523565896 797940514 44256184 497356785 834959818 485717039 161811659 614886431 378204783 830543950 704878671 359427517 951334728 193814454 169466704 724144834 72810127 980932753 244157887 243350644 88316518 806283779 298851357 367862187 533987578 502194530 241297950 477833983 269668925 738947178 701568320 426304763 626236996 8829667 175374450 431101203 485738346 81236146 857316490 682332592 62480919 352724446 133404398 545214086 89961982 622536995 288475007 476441691 48700517 828259946 526523276 592440400 139405350 7053626 525960154 575992425 96490485 141586904 583279091 45056642 559883619 509293564 637658155 675085769 306540438 882690607 498598470 713311712 95723727 150214888 86232495 926760463 975517367 970053890 648753995 57916024 160092146 701886360 247640968 964032858 969610098 330661108 442698149 958027143 552534774 314618621 92697233 712269454 634889335 890135871 488888657 619618222 615078759 920808857 234665266 213519643 165835410 963089801 919285007 890485634 94299224 145953228 807064944 749082720 847844308 375828517 197751485 345661241 240125348 364960039 213232903 700264695 613084547 802963770 554137510 399425940 625551262 286305692 995328504 452088803 757469154 784180024 15736860 306132261 492045921 120838898 511940115 361730591 213082853 602880899 877213152 805815629 465124354 439260599 435270458 121521808 745680982 920167476 875184996 991188843 768335295 588050172 459622956 468794645 613098190 899610430 493200792 614904990 399653377 337324125 867855092 307379505 35860518 986808793 296104341 495661438 500413238 116157552 709044333 701715407 780455141 786685443 926782568 302570340 163011927 375691707 455672669 918730343 703447465 717643949 883180050 442176660 49849791 772520071 6227368 362769280 222543067 899431585 20244329 619386256 119261157 381216591 915308268 323869756 317410938 392404667 720331587 873590290 26259448 252199610 762982166 403656479 512390800 134598790 712830305 480927863 686157693 87793512 451395814 657538231 256283502 17051943 207493500 123136423 222706985 66547738 687490406 722326877 211372883 530185411 550542986 641573526 563084451 201659683 382074393 378998119 244094836 660758670 105143914 244289838 73407969 698736741 784008688 240035699 408140102 310408145 309998457 356628594 954675867 882350252 117586567 195922881 964004956 111989418 318210750 984483600 777955495 695446512 597472171 8798948 90836601 611917838 423799034 926878128 486565550 831202149 444166930 640816478 638105532 630662936 701368456 990631926 362891922 493448787 262794395 703856385 412903516 872950632 350101821 680323087 289460605 531360967 325030025 101623949 673221014 943991108 710657645 820941372 376356067 850047192 303829524 333233549 509811521 209203899 179784635 642542952 637873875 548503955 308360276 636680832 546863349 291990143 697349004 193072874 103099123 806313519 241446306 471868082 917268293 218951862 418671670 757094391 29012125 260641886 429046610 675110901 151637462 261585879 435121075 501716317 554916619 542863368 569160978 894034328 6456143 592908097 766442 461907423 979561827 33480562 569295184 403159769 123286528 429592701 926718244 428825923 360857650 136533062 213752698 625047486 536448482 460587104 684137782 849319288 222503338 307459813 152643972 373087327 625428809 786583257 11008675 98876651 241530840 114205061 902082820 3687948 596044386 162182918 828391634 720793487 683993848 955541408 247550537 30108325 6579842 874280045 432938086 79103768 510166302 754952827 397851085 121356783 408613480 151407407 395823088 27617611 37731727 934556952 205875377 963430471 672101777 778510175 8145892 807407511 445828162 339590556 329846980 320083118 8026994 302254714 777538695 880792977 584269018 442971049 242495184 901734531 906151819 150463850 741643211 225145822 318260365 305582617 85012630 913254835 376531815 91081092 163804908 62473825 229545830 476016376 851131110 717784160 445290277 884150036 763323686 417801817 198901974 719615918 18858704 52764983 460704494 387776943 673031765 719931270 838578495 671556245 408526218 870325627 956342606 816496914 295121681 769433373 280131057 280789969 349388300 229243770 405162542 856554668 569566750 576541845 835492568 108308099 372361821 736366236 414369047 869845984 564864359 631654659 216218423 36346016 800690056 254252201 845747464 746922379 316096104 290423586 342587408 556737201 617797624 227897592 991350952 455027440 487561987 236883168 955595629 36574662 446013027 178814894 685034795 637169235 851090282 199459195 65639708 525351104 238768887 450508264 80229311 83294619 200714322 449961361 28572274 883057847 798649816 590900706 757796179 38953266 238754644 187254983 46775737 310858209 457438712 867874946 792209836 634591773 872883572 111783089 829410843 202378401 283351772 954795692 119632801 873637070 184825333 892088118 51549977 813181170 347477818 737814646 945861959 961310415 794185515 560653372 726514260 474096547 404860363 373702921 419752576 965403252 83232759 634155127 130299780 529385102 789931310 551600691 58827897 73578498 63379461 843588688 599562758 591831556 96364642 282879127 646376719 102424831 82646485 471078113 615685010 923694324 410000009 748332267 166922846 20133585 971400657 711921375 148062614 92779339 189758068 182415518 269512369 64890066 570625929 182970731 448799373 982590651 878804058 307922385 709234056 1716278 572866061 797604274 733823850 905907090 622262034 598653357 451752719 479220138 959572894 997019630 211527773 17271595 738893917 454541113 761684950 936447359 371306841 532029478 618004313 979848728 819968369 508695677 615591735 745914991 171249063 33361004 224405918 351486533 564706172 293241783 465468833 417188628 533117232 576428321 972575249 852980503 719231430 943062974 285611446 980252948 2364447 845664267 189470406 151371120 324718794 793010753 762268108 155277621 799618881 698041968 903958232 702100275 837905890 97447881 529976860 743105586 897200069 785608277 885751729 52771123 623574160 565779824 727203314 858155242 386716259 587454077 361493023 515321556 449119782 244510901 660749700 973681355 416573584 260050499 797006544 993340446 625735292 37271197 654559778 469147478 723578279 553914803 440975666 970921198 659416588 485465064 863628012 604845064 239172932 808021364 502394100 188539028 491470935 671911550 346654282 568740096 577288238 450727847 287405833 842108902 568652680 688776653 524106317 211119372 331602204 162729938 55131762 492164150 255581403 711093910 432338164 480315145 685402311 716009999 883085615 883855853 948468223 522079878 317649565 789420019 115955169 365264555 708661396 203235233 238540898 947333097 713888179 160007999 848206851 661883015 980836663 733931539 48210881 420938572 438090556 617586298 745805595 866067942 304868091 748675986 979937042 170830412 203968818 76245443 509725317 640022629 546972315 455318524 248046326 645062140 919634256 393900505 341870345 14183080 75358599 722117588 807827246 661386155 222611981 721962203 746352759 303314866 673805230 819701150 226894391 120916928 490420918 273021173 998811261 366835070 454188636 960479691 420550967 265137319 500722614 401667657 872448008 621211973 384145834 739932268 400992546 897358122 889475065 196655922 443041123 299026612 16562687 547320741 873762587 826027879 379361109 999390093 706687487 204707265 715203585 693668870 54376950 533061169 124614244 868362138 688781382 63922516 702758218 974645082 920979154 946989692 98792231 878679038 794278929 843813209 109726030 896163930 233834207 641461902 597947128 603842043 308609768 97054752 237473745 147336492 249546189 976569348 20578520 609671674 684801847 39759924 8248695 748110630 673215368 599021202 721926844 623461134 362378304 173857324 687144846 395044140 123339720 725288689 700466138 408318461 435713976 296625181 823649940 634473515 214571543 94646865 495347003 444591106 708973922 990675465 760214050 825200664 352484234 859899203 638939032 383846471 188652858 67919899 792725458 766153590 739943127 258374294 262550868 398190479 371239956 966459653 391449721 206787286 776102906 599316602 501513743 260708099 22488202 859804114 841368471 585883680 695898679 618227888 491546336 818521322 333021517 432426787 380600504 440557231 319054599 864390906 726400959 929964405 561027503 650674491 71627225 987306368 401049838 470622231 483166681 812345492 871891963 266928155 773590244 321533115 987829615 606191370 73161847 839216439 69085394 785927200 939760317 837879544 285503134 505775845 772729443 32853505 514369371 65325162 264048053 648039196 595020811 172990480 800603474 354265548 995595691 879496683 969066924 661242284 342648371 18223207 437304562 952741147 397791551 243188180 805881008 712090642 585237156 686799296 552858977 747139430 241432444 955655530 338912898 658064803 351665724 496448347 775804458 329434640 684244699 530840987 169611687 766002564 713101598 536211313 989667550 501328208 774661016 299726820 801614646 37421550 976351899 936469161 326094664 245652918 66801880 595042740 755133306 114558672 435567479 629528169 901198109 625379112 399867038 521991674 405631203 458719849 237152681 423256172 978041444 665157159 413342994 603386562 76123816 97687641 371622712 798687931 595931075 998923430 800567974 682508043 321070459 145471369 445284040 143271404 89046148 782301500 634242475 710907668 49241650 831223426 645934657 173905529 702177621 478665742 582691090 169708331 712251053 159349451 847998168 99958772 218042151 186998385 440169067 821414514 874606471 476627843 414315339 100873671 173723788 758883781 951831421 377262783 707796377 251162122 117730691 557374481 853334197 351145554 375306599 670786730 207194575 857363865 997008944 343513515 494245999 486412842 467059338 453638793 993851435 291365164 789040179 534483880 233974578 455956987 769598401 736327982 667572206 129483004 884585541 959288885 259313893 666894844 852069290 278439393 271230267 198334463 706636250 298917353 347008288 519424618 232512297 431646121 55831384 234087858 48865139 64987670 825395628 125161136 362790884 368548122 9086882 125288104 718656433 297693563 188471560 537253737 815948103 181611873 561377011 225204797 440380403 237063752 308390112 382753898 863861544 484449308 672344624 608747036 841285004 959633098 961687577 480311329 813506617 304223124 328785066 67043772 34578338 247590001 930312834 576964375 818394723 919018423 976291555 411766748 709752410 238639740 441965280 879271287 564203638 330550775 828533326 422802527 678297556 983641740 51189255 660888658 429137345 115260602 765142356 91867076 596040766 142281166 941197435 953078708 970535609 838435501 460056741 551719131 901689102 561325765 329425367 393490389 268162388 697593717 362828772 710079551 749832819 769194904 393696952 195862908 810274834 810606040 212591223 308387369 302772151 511880961 797851397 140207012 903455196 735426941 444596963 983334550 644125489 912280290 946668046 923621236 959246973 965741509 91812096 217765356 886030960 443077214 660324640 175905456 228044590 490657785 628432257 116977708 661617690 804371493 796625448 93003931 271961144 544915345 892203442 136420201 258561539 288710269 324017001 666613404 495235459 677764577 606058543 450099560 918367214 139783462 685828232 100334577 873700566 798221614 816875375 326559081 778973832 159053682 447771865 313671398 438999470 799571351 974753853 766639773 663689688 100910783 46631972 229554070 802213772 666071328 107623385 176816754 630529463 679763573 670255144 175214833 934598175 650269320 791805135 361601505 284286986 478685168 487970375 887270147 854703535 568201760 822152548 700626705 103339212 811277172 750015081 200100098 433815441 60915565 24285758 521231379 762294162 183873776 317284883 308875293 38416977 353004787 883359070 770538227 122473954 496779988 588350063 997553041 155240447 550147351 492898198 842696916 19484859 81424340 704632808 796149122 4185532 7628445 41888763 682737347 394836486 885467463 712638554 319258317 857105174 464186089 40960733 802185632 807902392 614516830 370911351 281749156 953043558 104272821 768982935 76064717 984290011 252414909 365150184 782597542 944407844 38340957 675810701 688425342 482150875 365957951 384353564 773586679 912231652 967607579 339055309 924903700 959525632 961337171 547872005 813062066 407688569 248136309 446762484 511910381 463137818 187385790 137139567 571081541 542449173 918283270 581584808 509970053 817392706 53744058 956447336 242444219 369293081 477341706 948058728 479824765 490913378 321541202 435386555 209975722 988308941 196854883 255301780 917130678 686590721 320905234 979702092 728236869 258903930 937532170 54297174 20929191 621978927 23412037 607914003 382263808 966715246 576682438 813455320 131855080 543929369 916090489 501229825 902660058 544718236 916573405 701205919 585061263 791045325 306196093 480665700 491773305 874119669 358877291 974414665 372789885 244758440 376355990 528829828 508518459 76092085 356785240 223459618 62728382 780827631 144570047 101040468 465786400 960104523 434644765 910482018 666600108 653501755 771861689 409067438 818049055 353207291 22676065 51837325 368625248 114936839 197188485 787014366 29736617 136902579 376483886 656981269 415988480 332642580 216019611 262503211 924681620 668973170 972038437 402872589 151732232 741549137 899606582 412978700 214687061 542306536 972168635 409093104 390585049 80901767 146896706 827528480 302371161 140350175 196757638 363732217 734744137 345518737 402535563 312538827 151892936 832345494 152758352 781231719 588482095 571116461 566947853 512553542 128216246 955140605 48682376 988266566 311158490 636846309 386323288 694423576 926343936 501093827 968607997 778783332 806394797 905602845 112314591 121182360 223834503 796274534 524179003 547588520 797525839 276086066 351772808 509607791 783363344 727160606 96504772 914211902 963754815 547975713 281086298 297637697 194267107 142496924 30002957 559778458 435367389 388953125 706895096 378815205 285940800 609004150 84306331 588409610 992090816 120276208 950454595 840761342 326705229 255085126 789391482 986642622 744114082 336441283 855064196 319630096 567932314 114951911 275105793 953168868 423343280 573064931 509044024 556426093 279120972 929542760 10759950 525514482 112162326 44673118 196538961 326729466 449166855 40730666 157833537 152589627 43340412 691611364 517926196 130601529 864090954 734273572 567613835 812437800 636377101 830209023 736238286 850706688 9975461 386878271 410742709 939566926 502155342 320043535 258093531 742660549 781319494 10571594 931961035 700152272 988379287 799362055 572943645 558291704 962679744 426855661 286907849 613970410 407441812 67219586 311451631 247301090 518210635 491590821 590532047 956531538 637594230 295544384 4466218 383848068 364709116 845892340 278909792 959010100 143122611 987837532 52785036 844522385 764521906 793768522 679306771 135237246 529998026 276988868 738272688 415422097 666084981 628685288 416492250 824704234 370291674 805494406 949999446 986179801 811950440 680095459 61867067 498439879 354921264 979072170 488154510 261917221 942301496 134472247 136220613 74878432 826259648 644876962 275348810 980828344 447206291 593813916 607649780 113567742 14967984 936008694 767106112 611876781 275956095 360262760 140625008 57211871 708368465 193213035 494479047 281734098 677823787 309383022 752062185 625254368 665555797 817831110 212886174 681224535 730150436 245270825 47027693 8031474 37335197 485556614 165242097 241979053 173670326 876564200 260009611 283828508 571473750 629912861 624712750 174817207 38428724 249797728 112452638 397541111 301230593 329056293 187816735 708056223 650870791 574373 753612918 538361304 585870692 733007615 709681768 645680665 538839526 828069085 630751889 646324625 933205243 120849512 88969741 647148904 586661544 979680290 250645310 606472245 96991345 344662578 196836886 528110104 256005169 723946832 332318606 573885199 828626097 719387817 678667980 78305315 84331641 871322255 911582859 823951116 252923422 199541225 873965165 832549877 556835145 84129864 671042979 990611387 466657100 238287496 319190239 730578094 151580742 34904366 347144682 661956968 942183798 855991684 59430402 988178499 347944580 634813714 408107780 592749467 507257239 345539183 259839547 157092398 176087343 989567140 272602201 101864257 95734063 95911241 696341169 744023913 978474182 512738791 598577272 881442405 86004631 667280973 324930291 924383629 139931693 426801975 365754767 815875681 143021133 255065437 708292673 259415723 510826320 880565645 828055310 284374118 951802810 968425784 883804726 927755270 918097841 624103530 915345758 172375277 472033569 74422126 138242455 393462020 557944175 813478174 211864913 981911197 554626229 315837177 241922632 541436186 613175066 452500998 204795300 384808919 343869827 913042194 66449426 885825086 897923567 411413859 211719689 977593962 362856821 592526046 147756495 128309390 435812146 674466735 887203103 745094727 979095328 903886084 826875756 263564350 250245257 154736492 332549393 765882288 395213629 268196820 648873564 401471798 776188610 165799641 456569916 635812984 122652196 971499397 128629725 789072876 554210203 600797613 283052575 340343821 757663789 390059611 875903589 206507376 385267892 383685388 622410294 259111287 783492002 385328932 339896925 393124251 38974287 914646914 792647777 523226051 944380599 41668876 781953240 781306702 903827029 911186199 4031553 532452356 162386669 833694988 37319501 30169836 563944843 110147170 493559670 922365969 770430693 373889435 843400860 180638719 890085767 797696342 577345278 242389656 702277804 444739231 751547236 848784631 814212521 926891593 33991581 153179904 29198840 318788976 271089448 4487029 684168357 758024712 488733231 659806609 971531535 328260719 167746471 741835176 388273651 178691339 784537597 357907819 368648387 960608959 41589685 686904021 52723445 813502625 238902745 571762222 659885090 346265050 632835248 608732294 87686883 734407186 208075067 521510937 795311913 403209536 330935813 165592510 332866564 400239490 254143522 849215279 747567555 926261707 47321034 572149691 49629596 843087291 197938005 767428948 443137338 909031446 335892065 769281926 389895052 421276396 759797796 316326575 122508030 531180411 769218147 235210010 254374081 318506021 715220478 434812096 899584111 622965868 744676690 246394172 992805873 276061631 396499965 986415028 245935132 991769496 132002744 726434362 399938603 674528836 468984638 597108205 381020046 641950119 295761177 359551664 374290588 187120261 847415465 801144934 196600960 506569674 986178626 77339158 918937513 416823252 663769293 458509257 407127771 818715499 160706598 82670721 347118599 385346130 783662778 231174637 278278200 130125606 672202602 626204992 876696869 252153502 35638026 569772866 300641779 826697104 342890271 52136063 310276428 834063193 827502006 460738158 14041563 977868777 821595033 559533263 789239406 335362820 513537366 70003493 318600434 290014480 116212668 814934 334946833 849687860 620537171 14273247 913172489 729882143 741411732 98824145 400276120 631880304 623683233 574594657 808898072 199543450 956941548 286631240 37052187 539038383 425241753 527903326 521670665 598507750 924608478 677320097 705640365 662058199 921748382 136156216 769164406 503443224 312057914 651837814 785341253 337766129 64333261 439028582 580436000 224558277 179163578 649926270 899102817 911078806 539196141 510343271 926643290 573251192 29695106 73032118 442754922 151971668 14374422 677877182 747201238 84441946 622037135 693811706 950709560 63993305 759401370 375632543 409339701 733090847 717258661 298385471 798488706 756996322 222327261 780916128 85094849 755398538 370327791 997952908 973904242 124346871 250798857 58001337 648992409 958463299 249392781 554081181 536368520 955895294 72051141 340161542 681449742 166064875 95450714 585279540 190893398 110229892 579585445 458820770 466716364 772155784 391991339 116828019 243167769 898308202 213054285 230136911 926407138 690630860 108638500 199039369 22877914 967864234 779311546 289793424 390887239 756327028 783489862 100339142 500924096 193779367 949123626 977702458 150029781 530741650 544818806 577519580 629939118 310984942 332102024 535176233 878212983 299322600 751090336 120939471 70465136 752554047 568430003 501466511 932345191 441147226 783572179 912144529 642135195 956044639 775605431 331966690 478471448 462253132 602021528 339010609 780691959 439270528 146784704 544452058 271269295 450612159 237726124 899489825 413396794 973220838 984967060 954092761 248436846 341716278 293482581 719400160 38130739 638206249 88074189 995437129 474061817 341937356 209118266 225044675 728209178 1390652 93829086 78928163 597785430 353391079 662105183 32856523 579110657 11029710 127285947 546239631 958140608 938274177 274705262 719043044 484885094 959779213 734522772 865176046 610415728 106713296 253747299 189543472 960292404 646903074 568695470 572809202 345927608 771773285 108903394 459944148 390314674 863317085 259415991 233540252 501698384 251401491 575534132 422805187 247664167 128438154 502696896 271476792 223403092 816114996 660251070 114513206 566372062 210437183 148198897 892226676 729156449 531941102 308844174 580864017 799585752 318345039 833020606 71524128 801440985 479954832 339165610 961597424 79192844 361770009 863202262 636511566 116790739 104090600 510668403 713843401 946071200 706931069 652787647 792724892 851647626 613312773 620404871 553635426 684208564 906021238 599166654 505063326 690932411 840643741 656014312 927999759 156828273 995121145 624384686 116842175 459328953 822404528 99917443 435337127 688072072 586519272 25626354 583844130 528631873 443364579 157821874 360260548 805438189 3294382 850274207 137625136 144087388 139105253 730147528 810131988 609662022 822878242 868149232 960237881 972098198 903868564 343794468 187208781 388205395 20744261 410286335 772046507 711294060 543667803 278734371 753354406 343424749 224425639 326726465 223446970 373504172 909488380 142506685 824457007 116492420 234544650 122480453 341752642 73437317 455529696 833098713 766878654 55392698 783970843 694113598 650996402 645843449 771579617 732261825 756998110 471791505 712182394 914311566 223315561 25250324 571963904 947576814 409641165 622649171 375058941 613509926 733288666 41421216 469121571 291018242 189725110 347547983 846885694 186166373 608340945 832753892 349159592 872513745 490047097 9731840 286322421 100450447 249720295 238606613 242336172 929389042 38570274 419462570 735933091 358692614 496735406 119017996 747495753 284062906 537427431 656176521 780101560 197827301 164000320 116916391 321717735 734874548 478510120 584215025 468029043 109358120 907167691 510538125 613109233 762086163 300276061 252047512 550018144 585292267 990079647 436391852 583894544 57306873 333504862 906603635 351686619 900464138 792026554 305345159 814617646 872783464 152505736 324907491 113897504 436256486 414612828 280159172 657615778 652102063 342756460 370108578 512174096 379595046 388994943 757142307 765946020 169430385 310095734 223120424 45956456 104403478 549917265 457505436 504870818 169710347 583121766 903643622 860884389 206168908 666587723 51649847 334545323 202891616 957961705 817691650 218458358 510844406 412535244 694243843 972964280 560151453 676220795 963432566 527718631 746313516 445982566 503474210 307624718 328957889 23893843 85002484 39889361 436741906 936144002 866145890 427690966 251112223 919641691 698328649 29349233 870860202 863293118 42348392 631691836 975286717 46654941 822184086 69313284 176601233 350438986 281636379 793963682 780323326 260612929 941936772 533452467 736097951 203794209 557294569 741655254 798146858 72387064 291711742 455157356 197205785 405256288 204535843 671733501 472618312 737290448 375713062 72328020 330406872 333796749 729147484 700579758 545140571 952904088 286989977 580303490 744652960 337885513 421103346 768271864 256179034 965321955 47390875 65574460 854133744 593088588 764364074 753173789 633203976 268181674 802804953 928036284 215792231 192693431 430323711 847416550 4405356 377200382 17563841 75241238 278454786 618845904 131025556 646199860 956062583 412511250 928316263 195482795 661594606 403673021 368940866 646401661 415909662 434657504 586134337 83918728 830810298 77109358 839978210 322808908 694544324 350567422 623442901 289472046 941316542 989981138 57073631 881885577 780239876 466978224 559839876 240496693 544353236 517702443 680571076 851349142 263302850 211489106 126508311 102750590 623478165 384808007 671293067 41205629 771476044 803295080 453057584 849096632 581526282 39896015 254475692 424669580 173893352 583449338 237640137 503700175 41682098 329599053 379451647 737664433 31941497 456920192 756877658 889754316 536718578 985587007 992308194 220292228 792084304 463327940 962717684 716621599 975474306 342252632 883809041 155372766 945885528 379491519 241058672 685554135 207314096 36472382 659928972 683972898 380156861 568182756 332619681 800819298 12106834 726976887 701780603 496149511 81661957 685119572 534453036 29807578 163248421 345634943 540284504 915985150 645952875 471833959 911532801 542495939 591659933 192457751 162017175 551613703 308236149 689198852 841517947 847914840 695465422 857114396 28383622 954115139 406102847 680738146 287443297 559639749 455568712 59998564 59014456 336848284 180483854 456795934 43551001 636183984 877195249 575346732 301387813 927215498 504582190 870025597 868637311 7758534 680847951 655925208 729086245 796740090 606731369 35137205 92054169 253877532 469558971 815441778 595271793 737047656 50518336 25217067 42766550 201106443 795945527 949614534 365943080 429823106 326458164 62710312 306621623 504546047 263345290 246527223 386420913 703003487 714006272 405183698 146952983 800580206 150893750 58526059 926157044 586869212 672758150 546085110 900630186 150524989 919010014 96233973 641262988 840168233 361141709 303204373 523630044 148480966 240859233 519672018 295172957 578721132 14411597 814818747 173522459 870692645 770376143 881514719 911578242 510968445 94268489 385238535 612994164 888490996 910987823 134603352 563939422 622760065 695787659 133685377 834421039 385349323 987137956 260923842 1449658 368632383 199736855 146567593 369210357 961998547 781252287 469905012 775568840 706357014 119371299 721870377 831228461 505113818 507597950 388964105 716990025 746433528 679674522 921791776 738031677 21402014 858010582 851775958 64445983 754074718 735822185 203006814 467056433 522996691 280349593 603382275 619329474 560894624 257693038 593438444 311807087 262412623 324315950 794988097 591032417 462073407 937768974 226609979 833738884 534335584 957675456 156918522 867632052 387140156 788996976 238441356 104983219 558191792 328992156 765134020 360069209 547592503 225480325 263992817 539683464 655226248 292291200 863983838 976676026 309142141 813966074 968575163 191238581 978649729 707680209 275960587 114896957 342891016 778242020 127359638 923279551 780146027 671296452 206638597 278334184 884199006 775346505 614918371 348903560 903739987 109676927 170861811 259795081 528032498 307862038 859356773 919473794 749821590 588106098 710639723 677941209 61641613 733667823 931671379 295848541 981681802 299448581 893826223 859615928 409297128 252948432 230663445 354901152 309922429 722640227 224246091 908301343 377123956 464230058 293198321 311075961 144280584 366940166 959850559 18785326 603809188 451658981 994247202 433172777 104180652 288926954 97889378 97334898 754240147 530149227 482236306 603460715 379843630 291947030 63405568 74775499 869035039 913533821 95644328 883950233 78502346 368471650 545235711 545194569 956955715 691085412 417652354 733043739 952014806 195790731 677550919 210112151 940983615 567926239 22773396 884364755 672899340 889132513 827681358 715788795 898299630 96876588 754539395 260976139 551071084 100082066 521295969 793839388 814286786 653169269 628272557 509490034 634532566 111257101 488069337 966151618 121375836 668739383 307667199 229609562 260261669 724630136 443423053 917192636 894968986 440839409 992927933 446095085 791780708 876040803 515361729 163435251 669023374 469708680 896374345 126876616 940787973 522973417 346703357 527666908 633154191 891598046 101470655 830112495 731181855 468605850 595499638 24175832 839437927 535236387 146795797 630588095 686952706 94431770 588268745 304752311 865175275 779077246 393828698 341231736 730929486 558913003 323548957 56518656 522210686 342415066 666307347 334660144 907456494 313372788 157109565 438727490 399731149 857929869 960743220 815668633 243765807 910983194 199470692 815505586 887162247 806055876 408241904 28854917 345754023 914761333 863682493 78518607 981688104 635388033 144317031 573752124 70856646 22533094 422570646 27870609 678856125 585792019 460680822 325532524 958606150 388001496 536957863 931529630 331228810 925566058 336062133 878134828 425812567 27254033 194963336 593465037 104293326 163469701 535055358 379560951 219346293 502451236 728573090 587949728 320435687 367949029 858443786 805610328 857170675 861938935 23797626 203232159 720718395 216110670 916971181 813215055 506407667 857635847 772924554 891692941 708862882 873965242 95997507 147557376 826401530 505353641 103621269 346379308 944985555 753397213 66393911 593944080 650890339 479774848 455975546 401431784 693787029 751088852 594468636 813705117 780124731 308996075 535169762 907176857 400295387 974796465 173929594 851390282 37128280 460159035 324266947 363972042 419856439 168597004 131297417 236808211 358920200 762840146 357706686 256068065 46871724 862935231 652096786 640486769 950821450 128330852 838801873 374711813 327057291 525978857 304976974 113849941 288655209 189118242 62383839 618692018 695405817 204336322 388932439 86078910 468212264 973764831 805273820 200876566 104496128 979716574 945101816 579126333 382579055 815676924 980799895 490646836 101945421 704881679 186704383 331807293 336419739 141214818 251964417 995805629 225384752 735202816 407791060 445680604 145481690 852996134 354826923 388777383 892643090 18878826 485641881 983403818 889238312 696020278 971126450 455503914 621481261 184197508 155325097 657161538 881843434 867257379 370947720 856767822 966604533 919367056 1330476 118663075 966938312 234146608 323950496 895216817 491207524 817438932 433344291 242943338 918914945 590237610 735792175 409607624 344608807 807599465 658927917 49741121 307341536 26474539 562402640 99033908 684367546 15425345 832539489 205011124 811064039 345473770 384426107 568556026 12536202 275576894 753283041 830229958 916808435 150720932 165985908 536779269 977117879 970634691 773722054 44388150 264565732 650234104 12970265 620004647 352387122 22166660 305541278 133660074 87490776 759036205 881569936 848986080 598343471 44380333 185043379 731411822 210157067 653818547 720147200 868720180 955353675 694893176 135018439 100603902 523216428 621651766 248614972 793879484 939399557 336454312 66008499 895733768 741680832 56177362 3816163 715316597 102951938 206067937 173690941 259120305 802938399 659078194 453780998 712727286 280215716 601747028 181617140 443393772 10819406 719962207 367132377 138741101 196551534 551011332 803788253 993063190 128822651 297471882 163212333 889443293 58758672 368844101 836854797 660220700 105566145 85977250 373510740 157799347 96418770 668517416 72638476 643477432 794388299 380253089 165828858 674620423 902184139 608015769 938449788 331030303 651646228 147195018 219903214 180181584 576017133 278551361 147687525 26703444 678172063 274792116 237397383 179437472 719775135 966930506 316075530 458534571 23657181 554181798 223058950 110645288 52597994 692111163 665011526 965422296 938087397 347433089 81166171 95276888 66999436 251095419 106596302 717247456 619738835 723974508 407323150 13395082 740260464 572721570 881387327 719265547 311441426 494135943 701886077 177140206 338823920 705371621 450123043 744880920 410118784 884800862 667119077 919201591 911780030 797825149 364436908 216234685 277476535 492324985 118034436 13187467 740868124 536532455 409122995 171694264 969230530 409295918 688600239 992684751 779937512 273219099 558307586 947289105 364381199 332683600 59377472 405863453 856530242 448171949 299796253 414773447 57267109 966104838 689060992 603419942 444698721 772618142 60648524 645449410 678128050 279921893 517400661 622623344 251327550 157317223 174612404 155207845 712053299 682627591 55524881 213030378 336131496 528947503 95738541 231116821 9577023 68421630 84412388 646536495 649817902 252050306 785283025 81322879 918872366 20789245 142989188 416293429 895535888 896574066 473893984 135413849 977777442 478699611 703349972 466884573 753583211 608042225 563063378 155361543 781508475 952024836 62059869 473903695 746698101 472734100 107919414 464627199 458743524 150693964 467586232 586383777 101168432 474212745 667616556 751231627 508003635 682506017 597221133 960619316 952089134 345846477 911282749 324096985 534641948 837248187 845916856 661652872 339359200 991577663 178725462 640998020 757041 790050803 714657521 398570540 672887508 557495013 307398322 874983080 57946202 514870427 470934367 834001348 313196919 531960169 539968456 754253787 669398070 647763708 299160618 998271676 364935205 803535484 922147803 293828925 512384661 107968327 77684563 32724115 37516752 837104707 514917608 459844439 245299701 999274466 713014167 787152531 662278838 576901599 303544729 323307870 639098100 412132272 53138276 951598821 470053990 772824101 670187997 558422289 183697218 755711434 11104597 911744027 460235161 583844120 972360057 57189415 56248720 798706490 251839729 313837338 912309579 919033438 134839436 633195187 434949304 471028157 279457470 747087888 149134223 692253206 863529459 392711469 458270601 233715827 593310452 688715227 805997029 358547140 606872122 257148676 73096013 692109858 375149705 661277627 487161543 249287816 399881081 365700313 539192033 170413966 525040777 761795933 542121646 766718193 57630418 65618104 821042847 846644089 637844282 977142335 498158866 926100025 761603655 934003459 498132429 176020323 790132784 52562040 453764490 445194360 935940408 356269047 111831969 467528317 582593463 282533917 634099048 417623502 789184523 129985551 984371822 871276437 913259352 373920599 151173769 291867080 567542647 680803458 295524250 732870867 936560923 104903813 188549536 782368562 341816036 108839312 638095232 645141427 907970468 555886142 420589830 625638442 445513955 235691416 276157056 10106975 931631582 338502121 449155860 709016935 574696989 257863682 631338567 715824184 312211456 555489288 497957985 257579751 358533221 474037549 433042881 826942326 152609949 241384008 919650831 105026668 830475814 944580333 333981509 182764308 18521589 880956470 185579207 475255756 754564444 606964718 696575098 197362815 366157488 618372659 178741577 297748605 538104962 244777726 28774185 599844812 464299032 662959887 530097934 145180304 940882923 551856987 369026722 54687966 574475692 491796906 777250232 122698879 983913410 366190470 569435639 839476080 643987031 118239614 233878306 469693386 182312126 336261079 576443813 670012428 769746570 339771216 59597078 156703151 679087390 914836602 877683817 295339019 713575448 19216534 984014495 740775440 445218242 451656189 559219103 994603210 354056471 647906241 494153008 609827816 321871103 133068226 365241137 943512665 186613014 600751836 353947893 862830888 59615882 532579786 141692678 929460426 617292224 57943985 999577666 815588410 561043065 500328058 423010561 265195342 269011175 299788066 334116807 329032910 532120415 701491542 855822773 486882538 603161415 827043696 207744027 869793720 899240727 993390204 890407017 944661693 989706687 106638013 895804520 482290145 979161649 527022161 607024348 391336001 100406627 159912325 332112072 632445561 136983954 92608662 105409169 656058422 136620797 863332534 978383348 502901279 652940611 593302539 883580942 824999990 509139553 769682008 115021280 795292931 155637535 224208054 395113901 219072585 453928478 331939420 493685753 336705218 400386588 371981659 725040495 725115632 844642653 190781745 844122379 158765189 278381722 208036640 765081535 584463197 857874624 518217942 570125876 596018345 539411008 169260245 931490164 772850200 873250077 423895137 311482092 311315640 485088917 573122564 384036989 137228633 782608590 26594062 204620736 484304715 253756657 844529317 987106503 160174240 414898421 725625853 351851776 365819306 283323015 852510201 46786172 361718522 798191765 642109816 894219430 343489387 382861131 70931337 652378750 881982419 289907079 138859498 17960732 758091705 905001767 961890862 644698700 372309409 724648596 46070048 112317750 80556409 48503482 309723 186350203 333458001 249654089 668146706 172502031 746762326 215001583 9441162 904486415 148424098 623337013 352651943 117709370 240733203 642793191 329399358 318893996 644331984 627480088 440606056 974053186 714365809 225429961 907225840 492371456 660824564 69688979 377634060 297161216 864501442 719029823 73844714 866259004 134983381 499018330 175926647 166271541 700428391 319940775 433247025 54934730 403998008 121079716 664882762 308538401 312492219 472088813 102574094 843522327 240133097 173933126 819974756 667138730 22036089 694831367 130249605 534584545 599098895 62565886 988314143 22525997 675083140 773694743 21480905 938892414 156044014 927076629 919886836 462305533 895586248 140803442 333342025 159635737 570060717 403500554 598451953 979921904 513293624 406796933 882491894 504611634 23393726 202161077 126556763 615090345 315844836 774006374 600059098 670240067 348715234 925942014 723374265 499841139 416173161 861103139 145773483 533613030 645330280 210767572 407726578 384222010 794420618 453141695 211126048 414973136 849395920 212671991 804435436 331677848 261216005 757461090 132711672 220799766 67147844 100878754 838680554 108684724 415409523 664667003 428427154 746768607 726878322 670611268 645572114 664757933 862670861 346390872 63837834 729532610 798841230 59521901 135202706 820074445 726110289 592743441 963413555 900298021 288640998 187478272 763484816 958890651 973590110 709776666 38620023 759700564 286708068 178467774 563142170 822378993 534394182 18621512 644225202 867574958 716949479 223301220 610318002 860475523 710891413 710611140 235052227 581918620 682032943 346988522 283376546 234512338 255754854 983397739 711580849 700625764 97457692 321511901 532806766 38276042 272187484 141372975 66615865 711630702 578446051 179477443 890250485 37751336 977376790 680557138 44785594 484734130 691430462 875717138 508768545 12229821 961366108 312978124 564377309 210873215 239313606 505337438 185374786 638082946 152860760 134440350 488082939 144196637 488011432 285541020 182655349 934277436 594294502 407709447 452433385 781107007 392896604 489438040 781204045 990486659 686060424 414621058 110290946 558515772 505353052 340644314 719690507 762805988 90401345 106396466 685307103 679116278 110778279 17191144 617486623 349096359 828477483 873733016 448080607 428895785 452552503 974052197 149513895 878921589 988433182 224434343 149714492 808066008 496718389 545779386 409795906 358918123 998333537 982473440 747324870 708684681 596630736 228547391 477583612 254356913 921092930 312249163 280223116 651974278 105030751 943442109 463837670 58174348 141655061 969816125 795350561 600375226 841767655 550898266 123726007 873039183 929918029 346409899 595803663 31840901 269485000 631668111 137067954 393944039 87682350 584632538 255981738 216768833 957252981 395847898 509952750 485943970 86271959 894322525 439342426 961626440 276553134 894978807 771855203 742878295 317043652 432211665 177446861 342311639 189295363 429180405 129841627 252532967 347923489 474976760 278206749 876683601 371249944 861563897 927493786 587420443 608416683 336397989 410311380 13363821 284489879 819831493 681345338 631633644 437887246 254761488 587762115 278135977 324745547 854812493 875168603 462643348 292268386 588384138 949903569 987206170 138642415 189519970 662667523 326791509 621031111 59083816 514702087 838246427 732289249 538521940 398533078 746552104 29408746 33149528 752414543 304971531 488041107 717001575 865377557 580036090 101102220 717119643 258135295 317752150 873884490 801669531 13090326 527901362 249817926 71906839 804010242 776509016 778739985 36856852 512978469 456188227 761988045 268202293 850479784 673496199 311193022 426990971 505525716 531242896 813373085 191731545 808996469 702287557 343923643 882809304 927862989 968250962 811288865 190709192 311134619 11380476 912480025 536753156 298678465 956765846 565990918 117171002 160920630 678434265 946384994 873850608 211269798 391324439 820206398 818508187 311236775 674522704 107919944 417716974 858490552 300167401 918791097 476704137 25509309 620849200 532217808 191208342 750389564 222076806 258627154 572663121 909695292 867392480 165270134 255495872 737586171 587548109 227760063 883145973 166726645 98734342 340545299 983670899 754467289 553588895 833677501 489409261 198143882 600131840 947887344 959424535 90734147 973465888 833563578 599691394 84244236 283027405 585880751 486544200 903913135 16593838 383105858 11517431 2864984 999057037 986029627 52626432 699902243 963004610 141894067 942929988 391397235 153339587 864731658 813035502 588570288 767607570 635651310 894299800 696414438 833182419 324431392 127757454 563862993 148595015 608568261 86173987 597875503 187726141 256199175 675068921 758470058 600376509 37023643 702414290 459210880 399621817 898144136 228335477 737705705 315169232 750083992 497601261 102685479 850433974 801321041 788548276 371726469 34037849 468700421 259108545 6100482 206499243 966798911 652420669 388427917 539685464 211952676 995474079 764298094 300804615 253565633 702169893 748150202 45743481 79063878 251840087 492071441 615798874 483690746 608350597 422070845 54536675 801597496 658687837 799078435 16948148 425475551 662103473 16726150 961293940 523539511 68476873 495108967 334615077 484748018 199567154 471563841 501470012 102773290 11160898 414513663 829494637 453218605 630476712 974923833 47924991 387320953 763767110 455655259 370916040 144281488 378937558 883128532 752499277 672845575 248604354 2879267 199744214 378722223 336444511 500691022 485597074 18071260 683613777 777501149 777473558 736533299 785664256 665462288 995026268 51252022 660369719 29569737 130856441 618508475 980621596 62548012 976677830 651278477 590752019 372276181 204081762 798028870 26416881 997169870 682535813 818442061 512826228 726521359 445599165 797823330 451097687 254124092 273436000 357692455 746264762 348611890 541187356 835779982 735336830 373945096 64207790 388450303 289254475 721800485 100815326 488533559 546391358 670659994 561169902 100516967 844466610 455390131 920668839 651949859 71217236 414700729 65865886 549686118 176407933 59000347 208536627 891023545 326640477 776185305 250427587 161441834 57778886 383407676 30702008 738940541 488760896 55405070 111728936 488202914 584403473 153193348 811095660 223644472 53220174 420160438 773354928 854862781 259419452 509925743 567382854 410813637 253410121 534580616 858299741 118027305 875103155 911513194 785698780 60608057 180801009 238897893 716980067 932079518 575458983 299614738 192992602 102868313 234716650 970331292 719740683 935088434 759355652 792574017 807517982 781292930 699406424 629088520 798760448 603539799 618646893 998460256 666928080 19195513 71096433 417383647 340452888 345405419 556468616 570821653 627933982 683377711 664161840 837068084 903925778 641304817 295322423 697353044 872659974 460712064 260855628 324351154 752376346 346106126 233943525 601956083 176306970 478101253 761450939 659496996 336330537 634953623 11465804 303026134 557893103 700756790 737115910 519689673 473157189 486602523 291320164 51763697 543810661 899006600 421104181 19808599 178669307 731975865 749891195 907236626 240933083 260215402 136183490 905377921 678076712 439561971 87377079 178009321 433741420 55790554 616522326 988041576 53247134 217067322 110061054 151945623 317479506 752123883 287590490 95431247 8638899 694986638 502304278 542120888 587868330 828769505 293835254 886443797 927600403 73699272 551084046 380655032 872587242 809845979 520631295 241452590 445987852 523301276 380031501 168814474 251349415 128970154 702908942 900176341 619003435 927663164 414343274 375769737 880977052 159622187 16436364 992115426 129138773 146348023 651030119 599279592 479015529 206880488 320539013 590312899 933308962 998401168 594300381 238004245 327338598 982051193 649115959 782103339 174180463 84607632 237509351 803395026 559762774 884735467 995850648 56645031 82669895 735890518 782134012 23382823 566220012 993646224 80246652 526598080 312579609 921809820 308320009 741894783 812636646 905408930 256962288 223046153 292583012 751838602 428915892 63069211 652488215 197825109 799210291 310315828 921946105 140985422 797829522 415388550 157029146 401336410 282256925 314896471 704237823 73933570 145502260 937092621 37920332 362536570 209940009 232456283 770787610 256093922 312252183 541890525 980575528 696538050 518010688 184497879 693174785 921630137 913162800 97258367 424899643 353364097 361748389 841047365 392352214 615706571 15056492 67166214 454821894 543600030 336076425 77040915 91191727 565441626 340741004 818054804 907118338 656617472 732433186 52994744 707070792 163748277 174440945 64346046 12139219 200177030 197202348 536891244 263575919 510800818 232922727 526377214 669054469 118823722 65479050 588847109 102131250 910621090 752595282 11115717 900552137 429785912 872015237 631756513 663389730 430376444 609477777 410551139 676841406 94775188 35282205 76779697 507486217 757854774 795706825 294926996 604978849 904517247 50350141 656406854 741093698 35368851 29922739 57660646 575711789 304666554 616879249 702241066 776250842 484900220 395833942 513919731 77508109 633218374 372919670 609821641 421693281 954701491 429793190 625036924 21686870 617608578 13999616 814382667 801915076 787616003 464003055 607651015 595958920 454790223 803132112 475037620 850325053 151001101 871985472 216796296 616490438 174051802 744458741 955610461 674654352 316255782 443895081 346066793 131253918 975062348 230320456 443610025 137992471 951153490 126836697 191248512 823188037 201453544 869785145 570047610 878192854 994226 458926836 114747967 408864987 636657198 964467170 710468723 135555423 822878396 733599630 642122198 425701893 795678551 545581491 576796893 781082941 769272558 662519254 640715476 902088521 819348290 265129224 546139918 298314061 399163874 249846825 529763129 429983757 91211124 749342434 452139288 834818797 935401560 542188262 830676221 562727290 324298740 528036439 357986071 903878849 133726426 962322726 680927475 498790750 361285635 768267546 872733853 186691138 389194287 135002026 252047432 630485567 148716746 28440464 251007991 60981994 891537004 597098373 876248108 518752577 940470764 908016675 190818322 470566477 876241991 488396328 474132828 168963720 373654349 59620745 233898620 328096041 216280633 918057943 786712203 254375573 460330207 396035559 313094238 711458756 664647996 377385236 823359877 286713778 914207016 278313171 441283534 311649694 44200364 876186863 322744970 663111089 952661976 619371752 233167841 897439239 71687644 46817378 334923732 174005682 206951844 175942060 955048360 723554481 493410877 742241759 488053948 575376570 926147202 827558570 521896038 82528689 943863936 163322123 991336075 139197981 138616776 194003892 170928655 258971587 41805656 282558678 108569508 753225514 476858311 704850464 930884725 865574826 509712966 430114942 526973007 266148243 771151046 871616821 751894431 619803491 972249689 623598427 95341185 242022925 429439409 38784939 537274619 65101441 910989684 78638199 748376660 526137858 331776709 59378394 713862953 256058635 137750244 359037518 122890117 782105235 905761977 505701259 946169131 18241872 137053974 448905541 653423252 237306394 432769402 624049281 435489813 739888592 201381903 448221325 349101306 548716172 478450086 619352230 749305145 48564203 667707328 955300793 256154161 815170637 511059590 283693606 743454110 241340859 224483974 422764595 409135544 179654827 529717040 341163206 517690840 232655770 664452963 462718624 878917191 949691647 663750567 215935818 383097802 637929593 942418334 996069240 253219288 910935412 926858566 371155347 620355910 828590977 664048590 731207799 840381915 416166545 439583291 657583429 63697385 531724578 406358928 708363518 225954948 844347137 303240100 850476319 337042973 166059576 143423763 501507258 800845538 129940003 221894368 664357028 942206602 70540402 163336419 420823920 895674945 429924275 110922035 200158817 97481453 496867210 938788716 900086461 401920920 996112539 753083540 934654764 646888877 472834317 292572731 142936418 267924517 486171985 445034421 942322989 730391688 400853874 632800201 970844992 405324307 755255977 761767300 246759506 399334819 888637302 943952868 330938578 825346603 832733335 187145056 762715087 970819610 280730937 827147084 673267460 525474035 630031509 636052725 122194063 181314775 799861826 648227034 612395912 440285503 562877590 709491495 156515660 353756036 879369531 768320183 370881876 594172988 670130837 633651465 163905245 826601024 491272466 785888506 576104571 30471525 169204648 838382147 722090831 776985805 192513416 625261632 375292148 398685301 846262364 222944945 917105144 54301879 671237744 161558908 810622642 890977179 659692165 111118082 791771743 472113373 949628276 670826097 920408156 729232677 860957464 556012695 829865322 276059762 408004910 330000561 558151575 910881258 875583282 727839427 474169229 507043760 149915693 142268362 839018381 11230583 78479382 443828124 628465469 424348377 516275283 639927785 316986102 920899366 209805999 361418316 841114273 525596061 427357472 606890831 88396830 992349058 490929833 466870169 110638843 535876767 28987044 626480846 14729577 712218290 798731437 957027253 876439508 937682218 595549348 303331348 485747778 641479024 992753229 955040347 252773209 42623715 529371728 814978299 484235997 761325344 441971522 962552538 93663237 872636439 873830691 485100108 957648395 437283881 313124317 422976265 893868794 484264511 220738112 210383536 622547848 695548717 589352451 812440478 681991866 23660542 779537623 321551989 326269857 413273758 837160229 103985607 208133616 355856639 894792978 519326087 337812380 561397997 704005290 612164314 162583585 884194492 986069855 382148513 303285118 713062414 1555400 150115664 931319691 398920672 780081371 895000939 850268853 801651267 379550419 924921510 3928880 260017120 543933302 32680884 173103853 917305786 229483809 906028527 779232898 813355 61800232 780709448 979310829 721309062 505822593 443682749 869009587 432310493 138115316 196683793 426484208 314293940 934000227 520259252 183948791 516452741 219816077 671593053 427600631 48580333 84696897 754614140 118117699 466754731 730095653 742337689 924653840 874053160 975015057 360829667 834348373 682647890 346963366 936890719 562593063 617218636 891587977 409901538 779790773 55012721 765219094 802872515 529742784 136942247 456293899 383406345 156191824 998103498 18414762 87423064 790642399 179458200 348677948 124036581 520940746 647122945 906323058 604382517 235386687 556423274 768653922 949907309 444263593 896646667 459864970 735254181 480470638 564625537 862220439 28984680 532776189 447944732 293082925 997431137 411788633 711558122 110202276 877391654 861144598 987500726 128156258 82421201 796562953 67446369 621734284 341694673 41781185 93953636 230463580 25260263 171400322 440077103 385954596 874413001 782512148 102486865 129806644 465695496 978277066 424363573 923881056 22126313 211283778 350608984 895321948 643973980 314020453 885920555 527974334 393630548 796805268 177446253 126033435 634291037 585540414 470494450 154510596 946386244 162182143 8274223 973028524 607757146 649883251 618581033 841857793 421795519 126721337 369843166 662745798 239784882 740940753 110901722 863145482 947130790 183447738 65807063 510598272 814759343 716213851 954896707 144766799 67974304 828304 713576538 515992015 230854254 376981509 837701218 318876994 225942240 127211926 296097613 673826148 386449353 695760424 842207211 804016392 552627199 276887015 553271549 841872707 622632717 90829941 374489690 287816447 460170160 733697504 170762771 649900573 810250406 873874306 266973524 138978360 930634914 49402882 44320246 791232873 51215091 246542007 287503670 471898329 660845222 40725224 693922008 549761614 461649121 742272016 910097728 925301587 886535453 982262918 899092656 147848432 21846028 808296760 853535806 101184839 826237892 967812230 820932801 452572408 878652551 802678879 705499578 989472545 562898530 823134674 677886546 196248246 388545128 571188400 199121462 489186865 611524934 133191871 375118208 698324337 723520785 890742239 425251708 933006170 787058589 274113891 206542245 157527652 885094218 690115686 11483408 594968167 682281351 334687100 92244685 117929000 132390957 39667889 322425780 258725954 327117766 57534021 325503515 905378148 572723513 238643881 987876481 243075491 938314929 360489652 769554849 487702334 422815349 628295759 821157365 725486298 568420534 911657811 576142246 9450524 426672212 435265675 906693218 31097855 893434225 680475174 911375977 462519723 52179679 543170500 742502258 900981367 169737974 605495669 133462904 379558920 503481224 160206176 809202977 185238278 635639139 758982720 657078624 893744010 249927378 927150832 75086784 698852290 448820481 300735935 25673633 982539245 694392261 672169714 709527699 880028153 251638350 859317889 515096479 29159541 297848806 952361449 644429634 64627939 332803219 516151677 182998277 97330779 424766224 783934478 954932848 671202725 244801040 49425841 689403398 733790657 400940040 522969837 852600332 203736813 350737558 928613651 882677446 848850034 797992387 783850897 86419320 927844402 261036137 360593523 249889471 200682812 456524795 895262767 621430986 57859258 607966613 459641459 416253921 582566100 360730687 433567693 83449429 480448250 809554105 828928447 527490782 497335123 530006076 888933557 714077166 801575565 76463772 26933340 658714320 54915610 88764679 5886320 810439283 998729280 800798641 857542010 401617321 272999212 38762276 189551205 208962620 113293327 251244048 792688837 787749312 465065393 357712343 520125907 437232365 564821861 978414188 979078415 641817478 500581816 893349652 52553658 558174091 906922178 106981977 340817524 580829424 938779706 671214456 445790648 794932104 362047577 405810208 133509881 414110710 385637010 373951116 709775246 151642007 349626420 871507227 283522525 282868788 255661908 810701572 845616546 22359061 124981333 372229409 200595361 614830897 332700121 741757766 112411323 538197333 765347680 771925062 850494232 7738330 778626966 202560307 88878807 495051081 422377010 883421683 50524976 506910514 609593779 609625049 266328594 620095051 315334855 855417273 553976285 736014265 921008404 433577896 980212320 530045069 998536497 921069412 446975264 597513205 328036853 319302838 532380084 674430660 729232426 415785834 782925526 288540800 455580744 142311096 29565339 453556349 766891290 757953782 77271829 726658120 196113540 338292162 528838170 754058976 598488446 958814196 830869134 489345767 390991154 186440586 199171285 808143090 157471421 639541172 159545671 377226213 819554794 107776548 372562249 883318656 707169 862345362 651972759 692283537 327087975 372174073 17064157 211322707 762415511 612854284 332830127 5465144 763350106 241409702 271685186 218875831 513322424 662624624 638958755 651891436 219917933 886182003 489499079 279781268 732247986 532521466 570906701 694103694 296827437 836790286 821519490 825176332 513585107 706232414 364509565 572102564 352117110 237491417 902715242 55176514 398242134 791984078 746507595 506642621 224303533 687165707 555523673 956384923 138015706 147692700 95043936 497677990 696656966 631549406 288944739 927637114 806976906 861022774 344838373 130315908 854051443 507812959 996923086 469179051 303860188 685132506 721019776 513628726 823016411 148101943 857671492 227285370 889851214 331914666 347933646 538608718 601256412 812893920 464815241 812500098 653870347 121441013 202739231 370030844 517421684 28714708 60202494 715968347 771351698 700429958 541503781 626862933 413425982 480493526 210337802 763277018 797350575 971686553 102096295 920236337 956199122 844463355 835886012 783328039 672064902 610215934 214922648 303873070 382956721 606624807 745648462 482472558 62313817 432605319 645673389 679205078 588692449 89602313 995474153 911890565 651379929 307922322 215895989 896084208 139838107 785318965 68955117 774246495 481818580 54508158 265055064 669046104 920337154 320108406 870388057 267209048 661631862 949445737 198711503 877730604 355179331 780015223 489981208 768785710 895220811 153222981 359683071 850833273 846815810 68686729 603343312 598858070 916621593 282694996 331451473 368677715 35594528 937727231 703365950 208802180 916610984 78820110 79290790 990469050 95923387 479066857 711026032 378425557 918288463 202754470 534432194 10808327 271262382 592143019 271182989 156481751 918326463 836483707 541445938 216707345 159491062 217502344 856221810 692595138 50990929 21631802 283694223 479260463 921339799 201869849 539835148 365384364 556024756 529152191 241934614 740076222 16199100 784439814 871637365 352078528 666019293 385375367 302330131 259741146 288122276 803174758 739620839 800700849 410033764 564742431 413558240 661165332 485205975 205058282 254487465 597039897 636805534 965155843 598781748 612810138 772318883 63350568 44946448 907265951 825735278 3680494 586293616 526290989 628708204 501129405 660324160 291574439 900193979 169028179 268212859 55275410 211828511 598669057 778114415 33359282 961507940 993799214 860532805 613327495 230026457 567212941 309263944 25616925 393047240 86380463 804171244 25136976 349986288 621550393 836495091 524130328 113860756 692209969 755592602 932533078 975871680 825845322 717379823 282432992 422558339 283887930 343297799 740086842 476596351 264891806 646392593 325257268 687474234 707562279 290620485 129644099 590495590 173380612 610286701 357262796 709504127 681779908 852592961 684682965 792682524 711795549 962082836 836647455 437678526 292495212 533662951 875088814 89508693 915547658 602258331 359059015 367969850 273450384 21190551 398196695 57061207 614508851 499367060 903029926 296760618 275536615 90647540 781621593 812827362 470435091 402486996 364544824 239825564 349679543 872869800 276412141 331802271 469349311 538457407 678846254 57375878 224215597 534492545 760043148 770813077 618345852 912417784 750862765 526532194 533601027 740201498 419481536 169200851 98182386 943244877 837932491 547751950 731356198 909739886 876821651 531146051 544527791 468367532 501385025 700382780 714767273 184559248 949878325 49810497 851223108 142670675 494320654 940179542 934833108 309809336 694452476 855614232 920479634 295040305 539157165 887651340 690814233 302230002 768593518 728462836 699993537 70680677 589674196 200455962 572924203 565201107 715684696 865793624 165130802 553227852 889785379 728429372 522521904 3814973 189810671 625243435 957103069 455252060 898775977 542835689 265794897 552042420 637156029 554160949 128678099 528160982 474337080 729119981 134426260 455834596 96375815 429460165 380453341 18043324 595395207 739052629 48512534 381304673 289406037 567773718 138846771 141760756 77131444 470221478 954550073 97962214 312089763 463516314 390896183 982102315 101001068 768865391 399075735 599638817 299607407 398665487 688275277 935467722 274363985 80110058 654258414 358090805 868741615 986280764 704915817 633589616 52980524 233527911 35689545 67988221 561976394 870153027 87666924 344627524 410613300 381286916 866511071 21509140 212786310 825282654 400063462 186177435 539328 219306647 380391416 613708498 241616247 33777472 418517592 184405632 209233204 814168893 235805926 684778233 429346166 428900284 142844535 117678723 973301633 531113914 968157376 778389163 834808774 61113521 725010113 164215268 647050139 760692920 217078001 919241002 415962778 813773983 745209959 415018680 392735020 26857586 86702266 836419583 640877707 999882413 857224668 345748713 157980552 331293721 776554591 420581477 439714562 970005395 279365256 957741666 837785699 19366057 811516599 435573906 56727947 308021303 421896729 731201035 19976170 973822385 823621960 699226334 960287852 816190887 361852673 41887724 919738452 81143765 380601430 964286194 903364972 170154312 97316824 703853478 512794652 270655603 250409651 587171755 347617613 418003981 483705247 340382890 424819914 108047607 840066129 171406386 532319863 889617234 859979862 513359009 300907124 100999107 907738083 106605605 385339015 928455688 534837129 804822786 251607833 215706562 66771284 126814242 40778788 696098928 644586290 462048674 200739659 166104616 684547721 508099820 11873429 825390976 380228459 715155139 521658979 533452502 48643615 386317983 276801209 505822627 751055021 128714317 533713834 753026718 26220885 801996945 411174817 451582045 50088033 27576770 431982369 4660611 315500257 141047099 217116214 836775198 179929945 172072154 135291493 812633815 647077314 696886638 466949487 803661918 655817235 70334903 894464636 670393583 708568319 801875015 910723317 995098655 698253610 639490273 430786603 885322832 41820643 781824866 150114287 259762133 836725046 550280466 327749118 843821283 927035029 35051304 543808856 65658841 347362769 153759771 260833895 549515928 954389686 378288962 222096870 651406920 302909908 68953556 456943042 932509298 928739279 524476329 71655716 179827792 325041976 481398808 257053594 788600226 975676766 53792002 864904436 594589797 351054426 864836476 273820094 330621204 611977730 585960287 649379308 364834094 412824908 650412920 225615141 407273852 188669717 946526746 537734890 160893158 712467102 60523689 163240420 403952854 894117591 344485664 539746729 306434832 986064228 885789142 221534275 880299557 513498090 352571993 468608193 370636311 480172511 912600779 79655052 592876813 774771220 130391161 467530953 657243910 943363096 699061996 727185302 675124735 662652387 171716132 768310293 305680021 622872671 216350588 7384201 676905547 876232033 678090761 531911145 438685990 999702940 988870470 703602620 179696950 665516137 750675700 44532188 348871212 304195448 682902993 811382109 836432837 483114851 330469302 206079247 372977601 966787394 891689850 674931905 572604835 240844286 252777584 203074282 179790593 264134736 238714125 487252322 979714502 414247833 201200229 197946067 666383565 630792233 243266413 296288023 866579297 433935390 827941351 416173866 74580464 322037647 835855069 468833301 796294515 665493154 410578679 983854306 892209304 905270395 762956856 736308055 191283082 386475793 853591594 956471905 990814277 817285404 300878191 907954373 564341474 339851520 501123764 164689716 203533240 859485569 9200769 256681059 939340645 994062419 122512569 726079242 747512275 776723167 608194091 812703898 94789446 184404408 672487848 649587528 572868076 370933970 446880042 70057622 121587787 989867122 878036614 839470100 319210787 504450788 722667366 131302199 64675281 170896789 50250762 65953268 605892809 259199364 949476410 275855635 503788504 173070362 256334188 776880000 865442722 143975074 247053805 71422790 519426031 61563331 115877237 173877256 420986326 293263110 863296779 558172121 318508095 571465593 876357905 295023145 222493484 642741926 772763460 805863872 297744313 837415937 922309402 180753419 354518714 214991825 284223614 543015227 429668756 113837011 179167665 30159061 659255063 136526025 200642569 90812519 288513076 795198589 809309440 991136123 321757161 860407014 422869306 987021057 495812369 422320819 2330640 638213627 932746180 90956774 682204188 825787466 467505682 439555203 306534766 268458945 288486649 44913131 962319350 387334521 185434061 863398518 243455942 189208631 67450752 883109079 989753505 135213890 696718459 805222811 79766205 581688401 852579118 505321104 879372087 388381888 371990876 566008834 95134560 574788031 117385345 124430078 456219224 236162231 158157703 520386644 737210681 926586135 604715099 857773528 281018183 219162202 324826676 284208612 510143048 999011600 953488570 210482455 275567419 43858046 749947657 912653894 593676593 804324685 155048389 489848569 194783959 281981336 272183533 819083855 551662121 12726706 954991470 765481663 873688068 927348680 765608610 28068268 35057008 661262086 656007942 350065603 223084925 848431890 904907879 455932615 271831019 716546129 679442736 521284510 219567831 729586827 571037223 568373025 797665104 786362118 130256700 726718889 10953438 147686642 783295293 397827873 290621624 351277824 273056206 496559403 569830306 900691685 216163938 509347577 472319077 788446481 4705176 587226859 926441251 739853542 558371205 123971645 312229845 486544781 335136404 632683652 903431090 775774916 446932998 580069218 339230375 17207173 755702772 772898607 668522216 235434862 329550242 12262308 391256284 729074075 396655821 212589975 994642331 603164781 852931010 677824962 622215276 936979820 992146666 658680341 771282430 378856564 286505538 841405220 613431647 319850447 685403229 365451895 86285610 152714354 122827969 308649135 539388115 438441 293810333 146508590 748279652 850339433 332918442 636575803 750467973 934979334 485633987 858039625 32199086 338558975 208795605 758789896 475874521 773885185 893485370 332061394 200933267 143884326 255201630 626177756 930585647 451770680 233849768 714109531 526575380 375539434 851904322 241021373 423554312 352702979 630114315 466322304 533754310 863798495 930728904 474501967 927580051 228676988 130850516 372213696 474706216 307948010 316069412 452687239 190269295 940720523 21504326 135041659 690703898 551075708 533321714 886681971 87761272 156077129 901095901 1300564 141467837 73640763 773911227 994703987 670155350 835468147 670113413 564121082 379630732 540831926 297915285 141626118 964559760 575593499 793909040 969034703 716153602 238181088 811028564 353126851 521345423 389221831 486910409 187719603 429570214 225089992 761084436 701913457 684165687 632816021 168577171 463424052 817847311 820286494 416660284 563378704 12242119 769072852 820590936 192042216 587536549 560931825 310047464 292856782 930177205 371515215 36153244 125105686 21640987 198753276 4763516 742101186 327085131 18269436 449152379 506435302 893977726 257083865 999667086 925564899 649603311 382286521 379093776 194420751 265052385 28746364 393513313 871643204 751477270 538367342 989646039 816488635 481825748 601631804 626867223 162918951 472367848 127742630 40590837 450269847 691631489 835163257 496669998 330108388 968200840 880159060 441022356 895778422 438914419 247262527 501349532 106255954 288764925 407579772 696936948 438986071 324637012 572803435 836504620 875785464 230464445 950231073 605861309 624298949 554547051 608387880 95924489 551760343 46014861 205131976 169802721 208637557 149247405 377081073 633537645 748988412 490497259 584896026 237652287 325596551 760207379 466370139 850704347 716787084 812154576 348845808 121938259 784930925 587967466 405873876 315371346 771764826 760165023 914895371 811412100 673805700 902026814 315618521 810112754 250949056 5038419 541205518 246704527 915688350 230390981 256032348 355009775 35700778 35693405 605047406 829191310 631008926 896895986 138015105 233897016 416592710 660837681 94695259 969992117 900555618 382938038 188120505 214323983 49789765 463613962 361039981 267367996 217878303 256147585 430954348 622149631 921963615 778969947 313751905 301145757 786529513 529761910 308192278 809358484 88139482 757186635 626339609 186996337 680110376 969065262 267706545 230323540 173249825 124223065 547546090 816391368 662896812 503829280 348192522 952754264 642155081 659238368 924425619 467166166 715337809 641519985 671087983 62107936 866080415 771487124 141169961 224600143 720948441 505140265 997296098 717478315 111864887 388999473 475657925 400824776 243179830 281356968 566060806 105137877 920935459 221060115 925357074 980352541 110553717 573378951 791677044 939672571 747583521 754061269 537555762 716252840 956466492 908152514 128079216 813171578 423640435 841270969 404609960 96988355 824274595 164631357 186707071 89149826 304293924 322229624 64828990 222009503 983203728 606457567 233914892 326812765 328144667 200675199 189412800 618874695 41029075 138688607 478484696 747693131 147769500 831436508 697759764 703353727 296803972 676036175 270981028 787394925 779159912 430977565 536697250 481488325 868787905 940348262 71972430 302683662 19281282 889425402 917533759 494899834 489096084 61577087 279071955 856581124 807429933 738703181 107877959 337113988 916990533 148432641 282628968 112497038 442096578 70242249 39042186 89264369 800887072 640160795 890249189 993642790 937698110 29274274 43141062 220234845 624222296 869787862 152796730 512273562 558207766 242702995 741559629 286337876 15853091 814747126 561480980 968345024 548370449 571143874 613428220 787626963 740285316 783250396 119147355 148669049 824260512 604933543 996532760 678511184 979055464 141812011 691107174 400290811 426436056 97862800 977403150 635570098 954091276 814786553 196428617 894775267 34196710 841950823 657159277 241789276 114583595 536428633 544598204 206319724 977798953 89058392 310684 814553239 350210053 617890714 903997506 315159613 207597452 680001449 921063947 242601648 947474863 139371572 596512009 9454889 885680840 968935655 678419712 123407237 993228722 187814761 248204465 871841402 873453968 566589512 941678129 136378368 682031856 8096669 301998819 187808695 410391773 300479551 352055490 675607430 52572408 6277194 45794733 702917377 899559293 781890536 118107432 693884313 401381153 960775699 262310539 424322804 503768124 259663849 377374444 63315986 372497458 585162409 768790644 357361457 820040379 265594958 710890951 40899339 581884564 648436241 618891955 386166561 756301467 951592391 605369485 658890895 493615746 873880658 783223442 874254471 164768938 660620650 603229828 19170391 947112911 243221472 722065250 363680867 263488184 677548857 104679892 661699362 699584045 240917630 509503086 321056890 456262211 28170473 664296276 167406479 554840363 873323477 481852977 935897678 943514864 577319189 368665582 759533935 589260097 325372331 105586845 731232442 910690467 133706394 124366452 890498659 506576803 695819486 591814675 548514865 8969067 692975173 950661356 559613310 141802446 452372239 996686016 784589326 988974616 977983332 404165195 988476799 442731183 577376469 605746283 25990493 770451840 847795828 246525070 249256443 898360962 200172218 688412073 909359889 598899613 968554928 906750771 401387714 464886019 410956700 617060769 440146508 697869656 495710348 263470758 101354818 62105240 194637164 724572848 897564863 99115584 191643639 864936782 607264518 363738915 593844671 572733089 25198322 94023458 507924700 303378934 301271939 585330602 501787791 467402919 589445421 45834454 615089076 901254448 463970864 113270836 79943030 488484202 431921388 120632001 938884313 820055774 630985226 118014017 317281468 897637584 975873173 173297947 228265957 544022261 459342641 279931158 735781735 172735660 701676002 221260536 947572952 228032982 143303901 119481216 489027188 868165910 616112863 347353863 256773639 619363585 167658895 224854065 820587992 787354814 525201751 631110445 530905600 514031347 352932665 763537306 393057100 630921883 965889849 109905579 345943030 747777794 272788702 961136903 641046383 264029446 394520849 577263361 648973235 822673990 570120440 829589160 374931571 572823217 24783470 405556509 938181461 555311804 520643207 682373390 603597623 850903107 483209007 385939845 877923766 948707619 161981942 11961300 601117668 427688581 898519630 133624154 174033564 597976254 784268557 365394271 847885232 413975304 601379088 361357339 358292685 278540433 147020911 518888667 66254282 644876136 847184727 132361407 167243555 9010022 720880400 514142588 262964745 380015049 927313239 987450012 320408360 383841240 153853176 678081021 924431636 962614753 93840049 930680590 455678601 462599326 493586034 654706922 564377750 829111644 324084709 904133261 407585742 209311913 700210276 586656395 299893223 538051782 302199700 65338779 262120002 356325277 184958217 339659120 843535304 222627107 268353555 509984911 856697979 49551887 707246379 602164419 68388212 967007932 833635001 389101867 693738002 349753274 750193934 919093219 683448659 190982151 847191913 289948918 128576737 189229981 924976573 991796988 321169766 14940696 697504030 326488126 378872953 504483247 714626828 531084209 260658954 198788350 522937613 208690414 981270858 771367944 592743681 617176153 507352586 455741770 524669870 720697182 77169752 337616710 643415784 753140269 50964551 702980826 614675563 577690466 553569979 374088814 794058334 908148731 873083991 442890780 387922021 249990231 320567522 850348335 344335504 801007446 213323480 471310421 608403913 714816773 5673742 193207874 37203078 309586533 914575104 857490612 790378181 141711933 172201189 708487108 19010602 230658779 966421091 101684929 587557973 275925370 864362843 51910361 773416162 373678336 774308525 271195843 513439926 910354850 549637657 928612072 201232681 506694606 726417488 923853400 812407046 645921408 692697508 276783670 935307671 797893901 810717562 267596043 39871356 331183108 74596399 608634 759436817 325261599 93516078 799670927 554282416 389187074 296128348 769695642 484152896 651434346 338507018 430082416 182650865 270868658 849415293 610948512 973257993 815683357 217553704 778869268 994500707 686664230 834846372 500033742 243232100 271175261 953334630 634620883 270902521 186630196 240920574 555048949 91764234 166800600 207766234 663469080 907604554 218794135 444410805 322379587 883122320 635844392 937684436 49051522 333880130 217357760 366397002 834482282 718991721 5203308 375309122 589411618 543557235 1121872 693354508 758122897 511956917 672055434 65236225 21465466 437148442 879795100 358152226 891302805 693792590 880664847 860360138 888205558 817033735 764420823 413542948 938697388 660403457 951424941 137437863 315514338 410575746 616992494 422860944 797527987 43656366 268613292 575142092 789673323 800701901 509605025 260883113 681670748 819145361 526283429 124944647 843561607 653961813 660954626 453536900 262523051 697905234 680585936 719060045 326063095 533024836 983311338 11367816 506466152 476476604 865869832 440887724 526982618 229975537 258331967 441305679 603816112 883003184 816896130 948433846 166832801 775390393 818286859 254074342 85357271 904669709 471297695 696842701 581850756 187692045 966110191 507330651 754724054 572518457 194466454 403648819 355034906 612638627 981410645 780658293 792510289 840985520 263557858 635298676 959610112 527879929 676344217 426177912 358779839 543575579 854959803 757639049 16829002 402383228 279425804 191303652 954213826 394104002 123548454 878135887 753022848 442794923 847194728 879300812 181850697 220311340 860436081 410902995 675413977 527492715 199893841 651527527 359852472 394766022 190400981 763010275 127530652 694764857 305886021 936798476 882563141 273367920 109109629 647192765 170552743 416373162 707169783 814232514 5120788 348353347 803300745 324809161 935108507 431871469 318927680 995870843 918271151 93288015 610349147 486252460 679246571 676196986 173678885 859130905 684692260 3964810 151516954 672783467 552606987 246877598 641978366 686385026 924896694 321546002 802870031 211601032 537788057 396395094 79258484 790790119 361063886 767441174 9044981 292188044 844723246 510809450 144168500 32603752 308807654 300552616 657713994 390902455 806862578 217762401 991850949 575657046 535564593 670563538 717857610 437471581 680767486 319920046 15153455 639597890 748900346 963341926 280955601 59643833 531585330 629392389 527932082 767243477 291323699 250488828 160509777 782733916 557253100 640789170 601437001 548921553 50280063 177928146 582960834 979482562 198990143 761524537 999341870 536626137 138543768 692883316 77129743 861766523 977928420 489978737 365622257 527689640 313041657 998873345 793219222 298616968 910241111 274780574 653659542 859812161 391022922 978741235 928690871 192277909 413595165 443178486 651645319 972815325 762586526 56416868 987870982 460622758 183152830 520327864 732101267 355912437 668017289 677316761 351552219 660756871 514863862 125136974 354166254 636667399 582662966 527261600 723276977 467501697 458466481 3420153 532284915 770159620 729388312 644234621 870351944 373674734 138404401 324752617 774622122 431270461 421395694 685957976 129685858 948836804 610950816 566178908 874573257 13960030 914631442 371550836 200627280 16674455 983074216 63368362 968415549 729674565 634968002 137470017 908834691 518906608 19217949 685359383 106430006 816907152 180440841 258190819 23347884 715888597 453581896 747841008 370928249 75981758 98698970 186683359 183107967 814184146 658217175 494032723 589763391 624236454 445622056 783366957 304001205 392304233 752575265 497101200 505250989 438448516 871810526 633301622 199331610 321238791 180040133 306152928 789589949 374414812 591004239 156709358 152424150 743873401 694454883 462055771 663794994 712984622 19964805 134125131 583971927 556028029 387133659 178857303 103951237 256759328 795030948 32189577 735160126 484765461 347005063 598611014 15464179 719185746 874691228 546285846 947369865 641126 106559945 122614251 386917146 107886460 568235702 191929808 865891492 636873941 341063970 156567522 822663500 595663070 941477044 16508764 882664367 501364758 251459976 862258777 713646357 771223494 775581421 585343677 66998181 405045268 646691353 235633271 4360561 705129714 795441120 191088541 307102146 798552138 391407543 606717301 595677445 472773062 940374208 351075101 908152031 567075438 944756896 406376317 578878204 949788316 10799249 223967652 321489431 686115298 999148370 788735537 98102701 390576620 647824162 467936672 483833452 308626272 679822394 333791428 481915979 224549174 338326335 778542258 333936279 360308258 121685516 471118637 531504870 856820928 374199033 193416077 810348584 173754577 306698718 512478639 667911420 627465807 466932906 377125621 557696026 842501311 458606399 133476295 390919991 920868865 906991291 589894294 356740528 901223409 953880985 817586969 773249921 699716503 400135836 444367161 750946346 759166655 16114094 677227946 33226292 631276422 241644610 275812245 911692744 827020561 246924862 662551485 970634899 6667496 266870460 600937686 538061747 780263200 763648900 53690805 796559142 830869611 817378239 540721625 250474164 682669954 392887893 472982408 437517061 751173545 199517362 637877269 947004858 703791163 767734479 583818088 465870695 432086471 248912680 557531748 417589172 648665865 631518912 797940323 139013040 300569372 804880501 104891776 442256321 323496837 858029729 190195585 71123205 429538360 82265143 766095140 378744063 646855658 607684120 642177780 552252157 162006948 388094156 912804549 666779315 730911956 733756832 828858303 66517985 576874419 827635097 549799342 278805780 769546682 100819901 514684897 80243504 934747108 260170847 969359 353131488 104139110 73200753 728081491 433855383 794443683 694180089 276027694 513288066 964692954 84037080 512657692 925106784 426978368 546542461 18467794 451228261 467790928 190426131 17589179 126694808 93299331 570971535 486193273 789328952 693758841 716705034 38604114 566902475 282172901 499047274 991583511 865064300 977238779 254463399 628998303 816981831 212944940 747397337 701624225 278358656 389326463 455022900 250456884 845353627 7167087 369693769 308859777 92004656 133578832 387897242 981498529 503297803 390336575 594739339 676066756 636280118 625450406 589025263 697802010 113656606 702580959 818583888 987629387 504954883 702429382 415700042 865445376 91639353 883783456 352221982 825286561 409168353 1587894 722072401 341472554 274812128 96666657 775320675 867943146 894171823 529076985 311208173 461309997 770044383 580861855 473489373 679018969 456303956 252728950 501593883 881722788 331957610 91286771 955536539 595517376 48290935 941972725 721316960 752585182 460212092 951538625 531906195 931632564 13646009 866534088 601042705 189408260 445049108 757365989 557957735 350055104 931686558 965935395 693275781 455179286 409939778 996045930 573362269 958402275 922478806 364142602 615549554 239084994 286450384 213997994 629367339 750152100 560177154 632248465 99936185 582084946 445425406 544575610 417020554 339892070 589628752 361811657 122676888 335105585 403514502 494906805 217307437 310922536 107535154 479016452 469750484 131958105 373643094 442701811 309140698 610286806 330539876 257225681 814562469 834218058 434486533 551565972 734154556 407433169 887639277 987328476 286817334 503641870 207666466 646627390 426046035 193436597 691832430 144364507 737155345 35642827 154629718 39400314 482461147 281897027 281588312 53647649 921393785 960273871 543469254 851486598 722982431 299021422 217165049 118710957 736369161 545501705 229973531 242033231 119977646 56789509 508147394 669032746 351935354 611723920 313548206 547067131 931687740 697979863 503972806 593417074 719157367 750929447 734418509 287433597 699919416 597648684 324852672 165451285 592358226 180736092 984288870 184056518 158737830 223388786 880412398 562808860 613140362 691789268 289929657 53018596 308616867 764744767 236766508 643993726 961159719 165172691 595673622 870265584 514250681 155728641 98680536 224812925 388530354 421428185 375934776 138362138 198118022 428275031 979793201 951191561 653674093 587053602 562197201 473109210 141176747 434138557 105180328 588607483 407933877 320198628 16750080 125601828 760271364 610396167 339151424 979253680 149856722 44388203 334658352 600228536 890769702 924698630 49283961 430888269 473265398 139930718 970588877 198722381 603423936 110106430 219667515 7205048 965368325 290927181 634907626 308476790 667366828 543737814 494364309 392992125 238835413 440436920 918957261 702751442 895952421 83740049 988087585 364012304 801447091 816136362 338544562 607731937 205454136 988628998 814474494 924103878 791955196 244874383 194176239 489302651 504750634 513906661 432857154 411333938 302664926 878229265 451312275 224360594 938928889 111951502 919878611 293618120 830999270 993541546 383650877 495954585 720087277 28567435 758257451 174130647 881082310 994557823 829867499 353209286 254310587 466157689 927952165 165203267 974803457 220438482 799015237 974529106 359018091 744964573 936865959 857213295 9071485 761440074 780501055 716253155 940992387 130398110 742730768 87669239 471488350 825091433 99427339 35856105 554921148 728865140 293806169 572579195 720789487 573972623 190986241 906110358 926489691 10321206 55008987 454743616 777035486 577754906 252021301 20822039 479147271 373026537 976576355 448098448 530486043 153452877 394907578 872949310 484528153 615705833 705365104 417159213 655622412 206916080 63587440 384016717 471941674 667628197 784394391 950006346 74745313 358720268 477795749 467200127 45506301 914862442 115888648 343090871 294144266 850186463 559186540 405514432 787176184 719307266 927453577 447815398 671780375 750855933 158055533 617125163 219080810 931580552 46971863 77010801 192217256 889770021 481524938 459279863 475448529 962663007 779425427 617425916 770934877 141251244 40729615 927048075 229136038 733205873 661874264 101231903 602388279 97161136 971018315 743641285 938709305 15019779 244455902 936379058 189202189 573535710 107064540 50606710 918783682 312789544 700754782 129058666 517929981 823013602 205109873 766680735 290846266 377519872 364417901 332012215 152609666 395522465 3798326 925785798 296766023 388320175 483765679 602384808 767246467 924530174 997600165 307897207 498701122 382188193 300794297 376901238 971163425 97721827 318143178 611079904 28117135 248679958 685284146 506187652 316642388 104881998 277566849 51643015 771854414 814617342 683198399 909045529 731898151 941166801 855302339 792038531 270187289 483198386 529431966 852589705 18984421 532268214 904533978 135456960 133809170 10483105 294087057 211285607 341265454 906900943 69446194 281338149 17499007 919129821 57447759 692908425 457383444 32033796 960054518 786468377 884497688 990090533 113447300 19971275 709846505 665180552 984693265 616488478 956335513 846972723 164442381 735420227 993956862 530252625 511701438 924421218 478349723 585188384 682119763 783182376 91658496 474942901 733288144 425579314 199026279 832913275 424713304 528097624 474288906 164375745 934314277 774003316 510908932 93212817 509232538 92589724 974159040 860890082 753759020 317471722 745400147 465892786 586600803 132152667 481859967 421012405 66077398 897620213 284280382 175446224 102973129 900283612 449762916 925073874 426873296 795189448 610859977 522355631 288199376 640758608 88432328 97907557 299078983 754112111 294989091 233373231 210442186 422666344 749164034 685147622 714056014 761180398 687368918 840070507 384575016 159590975 873922987 77491422 389132336 832369728 676063606 877827411 176112650 146799105 144975607 898737167 489399434 238584325 954769735 552775634 696900598 509853792 419959536 165386936 493746679 375083737 81374035 206262042 165712255 955620078 857521046 411123994 340144321 647480963 109274836 97103281 97725488 277597805 146433327 75926633 408657905 937806931 818300792 315161822 503242586 861096046 874690158 661741399 859098463 956838219 548327647 101215800 902217987 479599241 197116594 636042224 813569641 742421535 630142926 173339719 314519298 622551867 188458188 469543890 981957360 714519600 136735336 475215836 670083154 113418626 814351796 790489067 471052754 755252322 336930524 949074590 292559142 200525712 187506914 296887182 383028602 501130268 738299195 815394934 625619866 471290386 544218869 662926940 888406832 5097547 223175081 747218815 983970496 145601684 300854739 815881642 724721475 418046648 488854163 725933628 102487541 364039897 793382964 720349585 492415568 869392276 635001077 113947221 907597146 38771211 461064888 655505977 672605097 901029155 564478907 51399095 659517488 399216294 210633248 380264242 266094329 244985526 853912 810140559 527754615 896719970 282099941 405682083 480395585 884774597 228070095 363224284 54471719 279029347 20871948 71538742 218650753 125887752 866238957 767546566 826849676 14666002 117393763 519313211 274475392 1229164 576127845 848514949 356141931 891453212 80426857 291279154 562069579 228045131 944503258 14270876 449110411 126766741 328038457 549333114 187626829 523762135 836665472 988139656 541797552 806054308 9950589 497972465 421904047 639961205 595038342 609162369 843439034 214936551 501500296 79812404 589851419 733947716 938945116 324347333 646953392 594063115 417342772 861104750 215729509 89591985 52770124 486258844 750146238 260587623 17189815 727692134 543487234 332217439 783664274 484508353 578266822 63944027 653189070 506877016 738507369 731086079 976333526 723900311 204804627 482044210 691174684 945793304 86366694 175079874 880727745 622977789 959008501 583364459 34102023 510502336 720817004 398210157 26042341 677729309 455538820 30891224 17763611 54317054 839159447 235032532 989102894 97996051 793165680 122570110 633580020 736122877 372770684 458724956 865265306 692824021 552471619 89826920 354679002 854076414 184342761 22131351 383210240 296777453 736316904 342666175 852596500 719375526 528447786 373455733 983966179 998569186 400347334 922216723 970884886 797563963 935726152 445358214 534441323 807171863 101756897 799624229 457152578 359416796 345469435 917386705 414021710 575119339 717068547 613898826 542794653 381455284 455216375 869439114 157281123 35483694 205486976 891323589 870643491 103513670 995621206 427574577 602210533 454257522 920776106 751523278 103006961 261045666 192728969 102186974 110854325 158145078 230622089 854679461 376872262 293660554 610152940 23348838 232253799 6737919 45768440 5433236 17978691 244085137 395210782 135039225 854447684 877355966 262836765 602787610 108073054 953056049 525669838 78268788 973759178 656932315 289868934 762346091 664112364 178683462 256888997 806170593 242425723 316307945 127729310 83704936 352172781 151242042 573002747 91267814 65413986 594597524 780675279 759093635 619647387 879412834 94409654 445579682 242273453 559386579 226812054 919942064 903029608 406829194 293142621 651424633 581621139 288891236 945942784 63702328 758469332 592497236 641487393 562527912 684739216 908210586 345666494 58519541 774148256 161586226 716390235 553596622 537083753 574323703 746301732 264020048 908588763 412433834 739515983 773706764 88145367 32161050 344402374 563562726 478361639 90107121 159020258 843184759 90171881 820124175 764136713 983873555 912304713 850440794 297449651 607738305 407518775 471846601 580206419 519574734 156623407 290402471 373392606 863578954 226334400 316502579 454020898 938516620 541825282 662067776 326446382 169178779 632966402 653858371 267254544 640250152 319947658 410762916 341438095 517119462 453327766 602960639 651114039 803601951 861773398 511605761 70703254 390105525 282610702 303385756 340685878 372325959 111747158 832705869 419789295 386174893 406630019 216263717 116549474 613189976 961276816 793408068 739926552 408251173 473085331 789980692 951399700 480408175 75547612 786369950 139043138 931924480 230843082 887586015 44772991 162545052 738078045 549672042 963597635 790302593 607902204 417626753 194121943 910296780 319080330 323385289 544574405 435352355 63651633 617651457 554171996 456599112 191275754 281031307 525093506 949242386 576880187 50148905 115003352 939049060 152340166 961038204 686434247 461482705 869350310 138555146 244060983 169691552 395123161 491074095 890055723 660630351 618842934 708722954 369099841 697735539 247976763 809091681 956331801 632404082 296684528 651647750 203697862 205880299 264282150 267395554 297971319 532885042 770092491 65022101 231003305 610988636 254206439 903727214 609464950 47687876 10992096 567880197 418381115 815916425 515698281 438153923 814602292 502510716 639459955 874844321 998186020 27356434 456402414 421044971 895329432 147424871 393403932 768835968 463117495 643715062 471313322 344917835 644895901 62968832 773632741 143597467 380180193 684836115 858673673 34141373 55855690 195614095 29862704 17649958 508816953 106313883 880613048 385566733 112644003 891513004 294206142 449053540 682237233 688139105 369146446 330716370 252240502 455618294 885935161 824056268 709382704 549239609 736184450 478764684 427475917 62240189 85299302 631695217 521665443 529744549 282587042 760495453 160043449 890367452 671508983 420568041 993417671 708858230 705803329 463206923 622359941 419043515 288823349 188108395 539378401 683382054 487340955 483591591 187529492 708718597 37892164 813723307 479141487 133388746 192160300 592644722 399725229 249036194 281227067 837772488 540825908 525660964 256146597 90507111 358924621 884532538 560320549 817714385 804209292 161281813 579851167 816717596 278770791 157043717 896200855 634359286 223346377 577115859 18626354 494668835 790324691 408616314 625979849 9493620 481669896 382303548 270114834 173114675 870878087 6524293 229231737 757000914 856182843 115967863 346656115 740540054 477094714 564468729 390185203 944191160 47734443 192719875 786578397 854852230 621372155 329182991 582453763 637674596 882818221 761687321 714952100 320565895 441830275 919962078 796953577 103793682 586064099 786908876 256499053 297446071 825807610 626736726 326908958 932449342 285462747 898984580 591005379 513284923 953469305 692063707 358720078 308649628 547764126 386753592 282955705 524652342 306444662 297491650 592960316 225944651 164246061 615287991 325068337 741208505 651430620 555370160 640532267 598382082 770325745 904928002 86329068 221381728 822549601 90120056 639450344 805930155 714566835 475024207 962916031 843078398 855062119 891118741 891990048 475229030 405966335 481124093 559266712 530481290 678401759 341292783 922733740 399427259 138455019 374868517 179813098 937780029 638013253 94689104 365209015 947475564 126061927 137125427 252750352 777353287 478398455 961321278 296920254 570830368 888869841 827147019 723133224 458317954 640541110 55707369 335173818 851676651 427897402 810761527 116001717 713518677 878126462 343642591 391798245 990274971 888030048 606174328 519336447 893578876 823283888 253727685 278041524 673909068 707197529 739838344 540402081 709654842 589508485 907509462 841323785 385882449 845215109 955184657 585147263 201262370 595896307 400884096 700873114 110845956 397601093 414529077 872661105 657131364 814427142 62843201 549852385 621728670 392174153 946472459 438708495 340422743 521411252 547088550 571012567 523396534 868489640 648901962 848026959 924148013 2160615 641468948 18637747 559434929 742263781 489948486 396572642 668278105 890975663 393174601 388182214 343185270 8837561 529350562 513137324 513945941 61203027 701161421 733211528 588188219 342416559 936961558 829038281 400872432 652757657 824406608 274410851 231947595 51514899 99035261 594325179 967862242 733627809 651515554 286457759 153737639 981275468 193431141 340567221 734090624 310201720 184873996 195949270 112287220 775362046 554540834 920703880 53211741 133745864 842575847 631023829 318490324 819512255 490486860 563910133 452723614 473501920 740006162 686872207 172178371 786175791 590583378 767851992 566384281 207156712 537347317 638836350 828694226 811498902 264553251 563126149 176062711 68114046 932376863 122180091 233689125 34243276 461411916 960687489 12543765 389216954 674109732 173220536 895729721 105856170 190882603 392736573 668901562 275735872 201899716 637277005 862120437 587392085 542174584 577498135 31237785 362935930 594519369 304269810 476177627 759495778 869646145 679497685 326572311 708812296 356853184 542214884 817922803 458443315 448485259 704296719 488293949 252715043 810729758 955139229 440416594 655437211 676546558 855439350 734476793 419984093 559420068 57602847 505242838 538818225 98578453 838175608 325521377 462653745 580025490 452332062 298196827 582529599 171707572 496453339 262695370 806081222 845062246 454276802 567191597 371630858 283780100 661321231 278225164 384952726 784856393 329759277 408915349 231755641 99207095 767677496 304820937 980338259 456414719 718093083 858922983 464657605 594255477 31308210 131401738 333578036 499349473 211339446 959515997 430841510 976711271 417261665 680219341 555184399 607373948 705056246 786267442 231195851 493810567 615018867 185401546 932377218 116646299 557380063 651818917 89351257 506455808 382916137 636909441 655425549 854936255 304006194 678912198 810142812 292046494 232066221 33789782 984095808 910876513 436246440 539946268 863345122 546159154 878386331 361622465 96024063 350320854 703994600 648379026 914542233 834911144 586710890 351860855 443091624 132681286 65028964 770837911 753306870 216764614 683698488 778267554 735504125 518506873 278081992 431096480 491424271 777928777 68324038 529535829 742437910 410693933 885095026 474969683 203220377 988954784 75063593 47728995 223528310 331197014 97038211 454685353 541454594 906824550 816461215 913328337 163966793 387112890 855266855 481338153 944480552 208943509 237144951 890272353 672278170 705170318 333477727 710616023 892962758 863516409 313993589 333260436 836117774 931212105 598838290 661991499 648895000 542951155 14946492 716114149 378531714 787524570 390189203 631735209 682570921 548480967 999342113 445573330 517564308 271473467 746486405 93421711 11554854 507227818 965849866 392731582 407439117 212499619 492175210 572072285 483797298 207291821 317666085 144432872 515476213 221156897 13278464 366459948 708706896 77598372 265084428 281589787 217736247 649003794 768385101 378694551 204076421 139115362 15933486 546182231 428461472 780542894 556548091 3241652 407414399 14829920 693147697 649350020 34313216 159502490 355755751 434776040 58702443 908113708 646839619 778851866 148180035 801434312 595451737 990586314 649705875 840942584 595205665 700142669 953767402 48422443 667811910 274493362 184737860 132291213 432746613 408863745 602567459 813439193 780140589 912343519 412035243 626631332 288621605 120884518 480724851 603396296 453227688 793953754 159719270 44319913 719803436 957469476 355247520 234386065 136636687 967371846 370009011 336223727 796120679 987749435 781224436 387517520 399575660 267541276 59056522 332636122 411689256 917154561 450997135 170113019 665896259 767383122 48337172 78069315 345568923 464232742 464304416 162067667 388104381 841951194 814796356 471175509 205382366 790804355 938163612 26376861 361114599 681508805 278424802 192485172 197689703 82093671 919146756 436094757 790273989 110419950 774089584 400321303 301476293 607704544 91209957 344628336 372140111 733596991 883724037 25252560 34384551 795028780 778659710 193428369 44053011 89953531 214252808 219406597 640667677 931526350 362353865 926895168 333769444 182095620 71881506 936304250 777215653 68061491 748904970 591602097 885486986 904291929 139038205 785891988 601280850 186096977 392994646 121051152 764705523 217102216 543171837 127150979 542068378 920785069 96738792 696493388 488033299 775541557 226774077 963696483 126087435 860308601 531563643 158443832 507781802 962595561 419465448 75229367 951402355 648217783 623794403 760544674 772442005 355682450 224396657 864796934 476038140 724452933 28397659 626553538 99956747 506990314 351306732 582195024 981171265 323165539 165654406 830042389 29874074 354760185 178957865 940261347 348734829 917190295 713625282 898045463 824081539 784719368 257406504 784132498 678490021 313112309 557513936 781277851 924453350 74204382 261249448 196674668 101626947 797487881 501924780 542714081 421645743 474312360 535353162 695204145 715759421 523403078 624186990 298519595 12612267 200570113 597697967 216758798 330970602 653010033 142681833 860123340 193768082 241213247 178809537 564422737 187785224 691076872 93635740 660117238 407006375 52219149 233413110 457270028 517475789 755453953 631096523 146884187 751971813 223424549 887173147 350524832 196415561 528292762 416337528 816521755 593864008 169746455 171350440 236127412 507070312 723179938 980410900 558991303 709122604 821501220 534602912 543516183 59792878 340901056 438816237 946581673 320269013 933417760 158504113 296777921 979857344 105143772 534038288 885820454 273167695 382737779 903275217 193504079 936632343 500571461 461442676 441614885 490115598 320460642 637040425 33021387 627164676 426737015 160343053 886027724 925918591 231299559 734596912 39753079 520630736 296424692 415611993 582121133 945656565 648333203 494839973 262779753 614400004 330816951 816821991 957466539 902157747 977234641 334184656 551966185 244006736 383450632 613715993 644894472 212342047 594154747 702813480 322640091 213014779 399840414 725318144 924885916 830215208 290770827 29903748 720506868 310992711 471357579 815754540 427005799 239362492 724232335 246149977 592092699 136195295 136000713 182305481 692206043 319139355 106643353 480045244 877906196 981765524 572840546 956053581 521948156 452200491 405176011 852915198 599441071 685569283 906450323 830161392 840030100 186094758 490207282 822455708 777704681 308886240 881180279 940322418 883985989 475137251 313504682 22674794 27105694 128811006 389059846 805781589 649881081 853128523 541102573 208037181 368353909 760877483 649434765 324858089 525424256 850071303 355707314 527941234 370641936 458097901 339243083 563331939 993086278 265619713 365238673 152424240 142567711 191994947 211355254 830446402 600345836 453285315 762728508 831425736 63083078 651455767 756067077 183830721 536592887 210558864 819632507 308726604 165649891 963723953 548388178 653153711 605132381 692136857 830832654 538777657 981812506 710531733 457884873 927514468 144166714 828130931 845466269 672269822 574414862 413239916 724651992 795955562 411987923 287145553 734016169 132479805 965604236 877234155 883572224 529275578 721392570 861097457 767474633 212982082 534951662 719744633 902395844 618739308 817918721 547735148 269330050 458885280 388524750 26133553 646859537 180331114 487578478 799285556 954766876 660654595 119463723 396292449 752055343 475689046 834031957 769397736 71291613 532560117 538456262 670001041 740415793 15153725 280287394 213607487 692222568 722274728 704520230 336493886 129109291 890566748 475112503 71364880 106672455 839427796 746717981 260914963 611347370 406700174 134946616 116742276 406306116 760165870 6686674 863835213 929990713 692709666 777535093 904126918 956613281 916807842 679377623 898352208 985123788 368697234 277136976 85671891 776669152 574671579 730279362 99492911 487537406 782292425 692618568 137227172 442644863 696796412 26930553 299182000 649599116 356029893 449689148 550327674 610598792 873957020 76922629 530739057 180109996 443084844 186053680 576741821 992882979 72262244 287161529 993875847 449135569 372700252 264346728 274151786 535135013 594034642 940409633 860909488 279254996 981668087 567018351 697371291 397017291 192468535 669681285 98312712 706274138 540060396 745577330 504734140 546617322 544918782 279993345 444468446 344600224 209547715 45090510 316455454 27564760 419523863 443490952 201245335 775923817 826493055 526631431 305952757 749669414 302053596 583144171 6394093 437131641 503069016 810891157 944632350 562161923 782919055 22158482 717154763 72240919 250372854 520127410 565347733 975393155 283565948 132166063 357739921 290207303 209794662 775829608 274209289 313244542 508135085 432369767 760065181 678753627 839464635 216112755 656138304 473223580 816533782 395644150 306075621 248670749 870377577 938126844 926126715 573885342 933966171 783348369 155935136 399444869 611185207 678822952 946678378 802013596 399004964 732624202 138662951 776875270 878274992 562699393 993593451 85900364 83289966 117549390 319264235 282417802 102736389 545250809 651418914 537007610 232744858 212191527 762576041 558319707 775719284 66094432 63690250 475941615 439110874 853798356 182054222 580671897 956435514 175543263 218644448 131540503 772243756 807327988 829763093 436352712 930458862 963821212 264680024 904763281 201639415 428554302 493901810 182942007 315236069 749915286 816630783 673351981 771443678 396610789 828946910 566210344 300479305 379469382 347504054 261964744 621042927 326865124 138133627 141972690 224939743 793282846 449904188 883480765 963000103 170067341 381177602 424933815 747505837 658617987 824221076 581793723 397720131 30130942 524573466 11832046 459025400 632953504 914563382 645518030 386556182 345121786 974428827 548523407 375297446 822261965 910793936 815091187 113789143 444150961 21413278 551558515 168464386 757170472 347865795 621049801 786449478 655363260 706806554 552480036 299738667 721907381 510410576 715731700 723395783 771922510 625637042 391048069 441274348 656233321 651690587 112627819 350580836 68958275 318492375 371539041 217281328 949889311 712844450 53732859 684929844 976220265 985272440 983247015 73269848 738975274 441309093 789163949 648648860 600504107 370680070 963469793 354284941 382152805 504465227 65924996 505170123 232381815 144313800 423810252 901254249 232725914 800876455 92924764 614902780 218684121 343951717 450294060 310721301 868542772 355855045 398551175 397615808 852334193 299498260 849726663 87926995 231345917 479111989 559229454 123449723 64492155 908300878 838120872 51712059 886400338 154804660 300014150 652935601 360313891 377160204 830795408 265361110 942548473 763097133 747464396 408110515 328963491 56322354 742152231 571741534 714733107 846911832 601321354 8998172 735435656 557842364 148052105 225836817 205950397 974673964 785020815 702671440 948253224 445979081 57127713 56976094 341236586 266540309 738692176 234808702 567589594 413659744 793360360 483577022 510235907 473557674 16584901 374031585 2600704 581235760 84627238 411269561 761961463 897768286 162660073 786951769 439084904 143969759 347017894 502372404 920264714 797981176 98530306 440590805 61779758 5223369 539289121 995938222 240699660 727158506 116524178 655658158 819611640 860547281 938988586 884600951 863764937 667941380 212860024 126419655 382783119 396126605 677491428 360635364 736304292 723489667 557721334 276705892 247749948 239937710 131711033 720337668 90769973 171861819 133323059 39924914 688632954 538456953 629187343 157073184 108736829 373929720 394184142 883604387 215907153 888340050 280247357 776350478 774412493 237132171 494121722 844189693 854262261 789123043 140470180 993969330 333777745 983563566 6909862 119158242 341644999 394032877 943395653 486462711 757753602 307101740 353197804 635431520 2872131 927457656 905347953 473885211 607155486 612887653 608826600 710549891 148230693 425715519 172362188 724386970 216764766 835316839 519473479 285541039 505101346 762757623 640970728 331642989 805561327 216346372 608514389 667897977 973029823 30052878 609244990 245206078 598450041 906941109 28417601 495842546 262837194 174496756 324336527 888413253 861057034 100027097 471301286 572128790 669594418 155594252 291614542 302808404 374110576 340997818 632256159 404920834 149944895 339568644 665349411 665524306 887150404 865760073 621047482 877395193 168889889 810519063 701517778 428476518 724412409 528207090 534460080 803946580 505536837 467743042 638084920 935693178 190191019 807593920 858039042 653870741 14708207 562150030 984548217 445617951 408124137 100622744 157840981 88874607 989167559 218606289 588569574 949389104 617068993 695591629 635344223 819434559 195906666 508760391 736378219 861307355 457443667 31598526 409360154 300868663 700905171 769267299 215635683 376596604 728214087 343683608 524380411 333253685 994162115 941469011 972918666 352985875 484232306 939087649 749104814 960758505 185626096 179439850 937068334 273155753 341788693 966318782 843994401 620879625 685957486 772678260 334564339 497290342 156173648 54447163 726363895 414945223 583922627 769815663 181266856 665921674 351311156 288748054 152203962 846583859 227126666 834229066 608868824 407645365 39393482 447401971 726053726 622641880 278476020 332588933 109224932 802254343 910525348 910409622 876467895 491958523 401241993 731759415 529074727 818458976 466214026 40276348 116440006 780228517 281374366 943280344 928464151 586485600 421517623 525355365 662776032 57561697 325982724 37577045 150456617 600416174 217226695 273703197 908854185 624474097 666152203 66346112 599118458 378030967 293822036 578634856 700511039 815516312 265387188 633972259 454984243 341176481 932803360 287127842 400258379 402310458 94750422 369412601 225121862 260604729 212996287 589391404 89766035 167586686 876672627 462191144 694120989 848750876 516842164 585796388 486070579 173478407 241017268 754591803 39117677 237358214 744229879 488980688 144555851 58621788 155571887 59633582 758301755 810253932 622747500 15396442 114027220 551932132 645110141 928982232 767243445 399590331 599707293 608895372 355925009 250690461 93315990 554063938 288744295 289077401 432975213 242247886 402029730 849726292 216428957 898572048 320250284 180700545 624501690 555258098 827767273 602740318 689145576 918979889 739442758 849667289 109726959 552033103 503791522 168064119 743015827 330465080 675185687 163533054 671657646 686051505 466678632 242646573 547877095 893685685 915560372 178425670 828063901 587292730 796797041 965865494 344547779 965736202 844560015 799670976 612468771 568550945 533079464 784175480 820142718 51649863 644358974 595224615 592220306 458847559 923643384 356040677 670885892 654229128 941633716 182560056 120979758 293757215 416396123 593328914 779423337 784541795 886093529 770167964 523092469 502842137 578454440 695836166 721194092 493270937 22612335 833414107 668052798 244293185 974634545 281825960 858855362 973852381 445809173 174999332 914077431 437634405 710121236 549002364 721498012 579557044 668510155 743941143 147069836 583316747 907555312 2962348 515515543 878428364 539965501 285553618 653416099 874035728 844827175 185637727 310505106 670552813 889124832 972619308 425534991 46428865 754948949 376723707 554016835 592668806 424553475 967886696 361185772 560228424 861442492 936525659 780317674 187051487 512210429 342553204 508679006 863245189 87586101 857972307 896126124 111705258 311048861 436061221 82218340 961759876 448180867 615918930 440280214 321169613 1128108 429116042 666529166 7809904 721389380 817861186 171525816 285400659 934644221 124359108 743826684 244736057 667718758 52197688 856559043 962931349 254344977 911057853 903879292 885009118 611392306 787643981 479800369 296550833 730377669 78883600 234049482 962764211 4589172 654599687 525556727 268707576 514678824 890831275 296556257 680115150 843803705 948732134 460247433 129519476 470327610 715091698 381448835 329769613 210559543 59382673 312247607 665627410 652734155 655010297 430126424 988817265 208760623 92687391 701208049 476628669 887810672 688947051 339142559 546493487 502577534 804042718 968208335 764089751 555506697 714310569 428941355 285430680 591368531 892412390 623790674 623175168 807445414 198175363 549145037 720696657 511163973 634760409 970057598 119084093 746661356 187814640 781412052 682005016 263238895 908548601 130788983 476386015 779441252 426378014 730484811 360641286 586333501 670388734 890724503 752296891 574868009 452113351 100913935 640299149 36350611 959244929 279539188 288658803 298746296 154409860 76837939 980137245 205573439 610151779 635026469 368684184 671974462 11168220 225095683 767608411 296700048 157255306 441516522 680189438 98622929 791066978 302252860 637141448 31185277 270013172 233646961 290556033 962705061 991256453 3913388 157081638 171270694 161293215 440500460 789967372 968133487 963938848 204752696 214558384 554948633 823106456 585627794 930636440 754975964 18613727 236573216 975560241 165444774 37457067 321835245 799424017 292044198 34612684 232863439 620945926 101108115 774327359 523639142 459255971 493593693 75914372 991195338 504932032 581203700 605645810 793379333 951569543 700196217 527710166 424168055 794283276 222146837 835100292 855686295 632308412 369551678 870498669 625721489 634511230 846713030 67438224 299604975 476176524 317396067 23422458 975050155 506713460 873541639 698260226 603277077 153352464 942408711 85400478 678091666 942817460 455341386 117520201 106426446 815075266 871478249 441518734 895166197 906644550 815411973 798385621 967237353 86407809 206393286 144532077 97988170 62416991 440681286 614308870 925862425 898915477 528712305 979774462 25866047 576258513 864618318 795715146 155484611 743103970 145411551 563314077 208196092 406075049 614452360 970551051 725428874 448383287 713729998 760586976 522616653 647975972 695868759 270718679 251103431 337411109 91954653 610434990 156860278 861082682 836674383 604065087 656109293 509036370 619006623 203847407 509534193 749156357 163063000 420856716 742366216 387557708 762221229 336920184 416902590 573589358 803992658 467017203 869778682 23172830 26433186 189733974 464239059 243065015 80323918 373467205 932921898 648008933 870766319 663773295 325043342 762234249 2019174 809515087 658280507 698571141 123569616 831838071 212854582 543759823 39679026 252537759 838202787 103397003 819986445 308831978 803549826 514240768 599118698 48153768 174528786 78340350 620688056 274807140 872550452 632030053 271258524 212883876 623167016 792377473 494721888 337648187 86797578 828590028 364023798 561738072 817725682 617282986 378143713 481560206 963666841 585272822 794709108 682032076 149405522 893568291 359412626 860002609 99866761 901678334 411701038 895197961 728276646 532346887 469619077 759796548 912750197 391967684 115811398 921732245 483116811 518105900 20687869 231816923 903543870 841623017 393179259 478157008 779231858 43550004 907072313 478846849 836214598 612085754 446110437 310199617 552115759 419031812 356399951 975276327 757379020 804902878 54358568 515928530 994995689 881366270 169434685 4592113 569413548 745874606 835342587 516496939 605694270 263462376 832097056 778475951 60235130 483015167 210125156 768361675 194547768 777259766 789124550 980663391 377770985 969435288 731742216 12598998 417217589 967001093 564244060 810130258 293931084 412357320 317112669 429066760 610428213 363263410 452359913 82858198 325813780 462830956 796435852 701692825 172447360 57843842 369459014 457513110 348445913 933143917 539955539 632323033 847188373 288477003 44834222 153393975 129620010 326379111 321012160 219814736 984710018 875617048 225970142 956131386 148290562 724077347 492748121 213590197 260080092 232206559 844411577 656783625 578281757 967441513 871625137 485562776 736288606 398978643 275351740 730541378 371591040 741532911 774411450 190824859 514135481 803693629 135626241 922171549 715872827 185532679 920594559 163415766 348402691 295778543 592739994 248527820 77673224 395617057 492497299 798890745 98071405 633797328 843938469 297495022 634119586 546328506 693094702 131309899 136647391 877762451 709259190 107293281 289575927 971214267 193780482 919994360 268250689 1558336 804507527 919300605 182763770 13853885 220292062 659099991 697956296 738551569 376169463 92004448 593015385 615553848 345576442 992875713 743956461 494244766 195332469 639939926 260740705 298761044 21437783 410882240 968507906 708191034 2175587 790469298 162550896 239915140 50807839 672962790 3767125 822140975 337530155 889217037 356642696 363603120 119449737 548526275 656660585 151971519 371313255 275395690 470841289 816177336 994853752 756157107 953022447 909609257 270717535 297270734 928588743 57593741 769787429 969083684 709955040 574034427 585615370 425013972 377724620 793193360 131236929 366340138 648142935 896383356 207784876 875356802 176523251 55160001 933553836 344606192 658054518 449020536 734673394 484908515 959860368 264736526 398593276 612366199 829769774 38106562 374288127 769156514 239665308 745379678 822197487 710846506 839275354 92449917 281918934 649912191 927126649 444949964 461448548 337355850 295527382 472688715 852530412 658495648 240522816 942129657 593026214 662410415 264287549 426964713 148899488 250829556 166569792 999827419 278726481 726837421 190420004 698850178 565666105 913347002 93685997 760132974 440544361 588284423 421722152 67696362 970132407 242307902 942168708 847260057 448124815 143787293 981624471 428399214 619472784 725163786 276859206 415107413 354306278 516787765 660673290 707144347 12294781 764520037 30258435 139936254 417579483 658818214 342998745 372754973 319545625 32327657 273378093 471325224 628629355 34659737 829943468 697882337 879044867 899026601 83441139 847173787 421715673 346017920 437790891 756327411 438710717 281026658 928444639 433488642 826538554 867083446 510268584 546001693 833011953 130276170 861809183 659464392 607359291 859219347 628166515 86284852 869961695 122214012 665873727 797912451 834695643 855696578 171319564 946559706 793277421 873115783 470987083 266002331 243785483 89351928 764439279 906926555 575146246 517590833 617584262 590223062 239763326 824310944 201449848 939499187 186419365 125571625 216808736 626358112 450928463 137425756 971297322 920351829 664610931 768059463 898141816 209043997 796501591 418030400 214977740 767445231 536483504 168014264 717110290 423077173 883861695 60071926 944680827 178299843 878799044 190159376 669250384 156589363 608890254 766666897 903919439 9917613 781327458 263723618 947532138 478495856 628447359 513160064 509210254 362984395 372020273 36592287 163506795 743848357 925538913 666090866 461929835 223103712 713460683 824816723 727845644 44688614 342361596 810012771 727024835 205163997 100697400 472745568 655071266 332052720 537509548 101183868 651583750 207296287 809714503 755189810 810748188 320033342 855204155 230806002 310627860 799015270 639214405 388480002 89172583 101873335 250586652 386998596 312667850 149690503 172803454 405989370 91900454 838535166 461010002 171387053 182691119 621134886 464102417 28978859 220049141 613127761 810079745 151970317 787897383 503909746 839490224 880783168 31067738 582415493 246994916 519932061 881177000 464474097 600364705 183056742 148101555 274855072 376990587 259141031 71714921 970581961 222561394 621832057 852222924 121146503 453715684 939732014 540746473 71055280 322907342 807116887 18446487 788479675 16348268 835383841 429202816 583924829 419976031 217841372 401765139 948099496 980055529 204194491 709303381 999540400 257228695 222906880 223611188 824015011 907118415 996276624 67699951 376964052 162396533 423457692 560622536 756063978 950077982 686101085 853713939 484934006 687274641 402809348 211194915 193298624 577633442 510928660 227013378 983697723 771184770 574052423 723633027 805361780 162829315 42789056 268389328 124427162 76595167 565554200 282129657 424230734 566444274 956376925 727542846 401467758 71585174 426827500 204512183 223526225 292324763 764919047 618042263 325829382 371888361 602426537 540840788 284931762 283093361 19735811 135483626 986481556 441563670 182373967 591561526 158527879 4250616 375207160 510012827 745799281 362431759 970815783 432390406 360101070 790684737 557428195 774049676 593986848 511476793 848478894 391740553 455636100 529255784 948363265 857133356 525593929 902151610 275575965 290669750 506711350 89275144 426377519 121723429 20094026 786668967 475380872 515601206 330536414 557653287 91878868 957126354 398418712 49293750 526587356 14291261 131038371 382028987 651863446 580008738 102339146 287689744 433281715 148541832 344595301 825545999 702642695 544192597 773658894 279127638 499331426 724133189 245371653 893085446 532164681 465095040 533733629 501250279 299827957 839918930 873340691 809089838 829604172 965245565 170017497 946772574 249955936 46488262 454342937 83656874 257869034 560934183 765321954 913950114 403694039 761685602 740026272 2918525 800106443 694981377 250791999 419858904 497815007 265690922 376902630 964987228 50407970 850768755 726231340 907718440 728334640 34873202 626918632 726302121 384773958 361427554 920201258 283970151 457304969 604053588 325922776 999307502 136668148 540958882 512816353 422236378 461765629 225208599 172449452 153002528 444660824 786089498 420097741 4694156 464880732 389823109 569585562 601995610 953684476 472649320 855841336 291566583 147486521 473862549 79987813 663173788 289878293 614618921 710538103 333159018 930907286 154770160 296578669 899446440 768980429 478792732 556317664 253695450 328705231 915366441 164594556 933872858 38778604 581783023 473374270 953336418 28962136 475452610 509438469 617281515 150173274 672707617 306944030 799506831 651155006 913152847 177495697 377117867 604896367 403685690 805583337 317731601 235608392 858174057 470066542 130069474 234707053 582594511 53386496 985289121 330366094 656757083 581584856 127181559 827306355 742517259 814238193 126059349 575014801 277320986 578888236 375795674 464766027 46115328 902492182 115123016 985083215 772312522 298081831 455584507 270031251 718167840 913384520 742328196 874108012 627450620 357685438 348358128 221591840 791081531 79034995 274913608 272341951 4891396 559008090 553338479 84580261 715683639 176220366 608652141 811557772 465640922 555268853 539221191 808461114 718984162 569656436 655755193 157985393 884050839 171689739 568872229 726883574 134135347 505215745 220375080 264903117 49923702 987019779 936472772 420693481 568902155 725911413 396668052 662998814 337305488 106045748 306652127 171510806 702360931 576577681 307561489 453802328 708201457 599766002 450368256 165188084 616481286 425956423 865393562 179673784 417679263 832321004 913665403 643449226 868838362 398542648 240231319 190575896 329438073 331320180 23890502 990186775 649493607 987749854 182166377 418913396 734492983 80460804 716615934 935913767 153515245 445266996 502220040 401280643 414349833 492168915 498309187 414971727 943295428 89162681 859883752 387739802 596173325 471339110 645668675 427955876 19759812 162045642 108260887 459756805 868913732 944579558 157604728 833875596 59358189 131482260 733550366 846526862 902787598 212639817 92117827 314019277 47465075 742511779 488410926 905037804 780120512 79668997 104033177 20931918 209220416 47241115 457543817 684219947 964662260 852285685 1795989 113188372 888386503 229315720 4427858 370705838 321272647 895570064 729916370 486107328 133042584 859542127 655085083 820017071 936712417 820336585 482993528 972756443 719384548 487885291 244252296 240589248 913328117 157168533 35154009 271058010 721124375 421862861 295367664 352303146 498443025 867426464 964982380 674048440 208522595 996975547 445423593 733956301 107780512 224789858 146801481 794402410 451031282 434655500 884420501 455469555 149627445 704835649 79266543 560327172 726693491 784100878 95961652 193480354 856283702 149968425 345127953 795595720 727433881 567222115 612158858 862450622 747780252 349897360 488296898 18731075 907919106 16453775 678568939 112142616 979777947 70030071 149820468 657595868 628055291 145003239 383525592 274693117 946641405 519866873 238070839 292135418 521915895 615122780 168585235 504027222 851629343 842777350 436515036 485836799 235591473 709594476 840477679 882688751 978528660 567865395 236447764 685913731 180185833 479820597 253105506 248090312 616950913 982527061 435540808 263664788 208294484 296123584 94473144 676278387 112356241 919803265 903223413 846961734 589734574 67591935 805029035 699007111 274146274 406787656 820769334 567712389 529290279 977213518 564744769 99574279 845174265 50403961 867080993 387227733 644127216 855732012 996324203 479337652 588851231 776674650 991079023 886565703 624586603 922911282 514361791 163379209 861293353 105575254 3489263 823786533 797360095 580282795 323932834 946320351 601179153 880919009 790124077 190062674 577211758 923355648 506126121 661437964 144242917 889930347 582494173 543653938 243945542 206329597 399268835 166502207 516581269 630891214 37627437 593169061 128115264 732046898 63360088 828083068 211241019 349744052 396264852 7838290 324778135 714152111 686810223 657935233 835085025 496809653 130295859 360393399 771777298 891549413 813331713 203970999 404557390 15684829 704798543 72862111 388274557 171449369 825054790 601120119 40453501 471196990 481282396 285801824 888891921 810932426 571981725 933260490 878508160 167644716 678374599 636321216 950328126 55428517 88878024 371459522 343663091 83333575 848565424 388844940 997375938 673912243 543861646 906471934 499102807 160009149 869026386 245580544 144893106 425685841 635466124 949009033 947672275 126401845 40287984 396005948 784186590 243715615 573434881 603750107 742072519 515769071 56019632 668647741 448869165 364627470 508248798 194327835 241110825 735767959 203500757 818776956 657968516 42785445 757517790 237644611 379518863 596810674 873220291 484845350 386078365 522481701 327695353 512585202 404001507 40719585 849117457 448103918 5843942 327408353 984654950 760241421 691630513 653817022 689872096 354081849 28032837 908493214 600383275 210096713 393052721 26655115 287891777 938570679 328748723 678160730 544444857 570370477 96017427 717544406 932353185 513272387 699495831 215828092 725927185 906234422 286772262 451356276 836409321 706004240 646057767 529416268 495127689 562833183 36862198 328260422 885593811 876439634 648633232 502557661 534226635 593664942 316485497 797107211 118855649 842316858 346453956 662614590 530074518 113906974 140777469 201365007 25875746 502553337 72082455 292010518 948524467 202408844 168774855 703706502 938606085 923415930 241652914 424536656 431997536 397519912 257274907 149384985 386664511 318214784 167556456 575217807 649490154 217284917 831396875 92507260 811386032 424094840 133922864 438958981 186011325 861223052 233227166 865328423 550058009 385346285 448185493 916274607 261193011 599828039 255906285 233403611 622509737 392788151 746512872 455783 824183284 831602927 134232833 736267957 358797284 151017706 791403964 7762999 991260924 445100438 707991046 480503315 297697439 431959275 422753178 879571393 811122840 196090980 20872299 192287021 928398068 493441108 571459402 284772211 181194970 131922971 925107 923690238 467999905 176325238 229145545 404162727 74621240 402840978 417107115 875048255 43687323 149698152 981061846 941537812 505302967 507523393 811041233 371421287 935905807 577019924 152003535 601776082 193546277 731870802 717834252 19912158 507073148 454794804 18024992 227722719 623675354 559331627 345401566 308978292 958288603 343154402 632369911 827485939 435352094 384236794 137863544 776002365 69104606 802219336 399907494 415936153 122204016 649759809 211965409 435147545 904300904 51132599 222223402 291818717 119998078 107617739 696015751 596174241 109544092 846950770 144946125 804162671 211726443 455756570 897371981 843198949 192417498 916791253 921291383 32798017 283796391 110504813 62102584 352077597 33846987 670016895 90736767 633045292 914667311 591957564 656781997 792410892 690433442 483780390 404975723 864927326 386027542 49301635 978471602 11648529 143133148 763880185 976511604 193814668 577370957 816630444 829949213 511663945 399246418 350236070 4334927 562361961 430383358 531822965 774175737 485290642 984924560 999983117 76845914 579548409 823976824 293652401 73497551 46680837 603146933 395205798 702627283 987530624 427262350 692380321 186052163 99332970 338808023 661167346 62670572 63721823 992439961 304963846 587634422 277289341 498692686 860857 930323045 173109002 935719625 632650176 933893956 518738047 133021914 995856369 53195121 150785770 844043498 831635175 687095826 94805029 818811245 608855284 340901358 592443462 63663960 502970952 417890890 299491006 374015366 750295553 984754258 198337889 920043184 642086470 238153086 361729503 491097792 190107194 551017641 955976074 970714337 221761100 815482744 72841129 238951624 677181369 790731519 625087534 401895911 830186533 900536798 817356682 265104398 628759663 186884887 934536619 136278950 815661712 881869117 877393767 124256675 815623107 482730754 230615206 245178143 389652871 586044597 145957111 377738401 483667896 773503539 822024095 593748082 63966408 695049738 951641675 282278869 54424021 443480599 219260382 773723225 350013738 397317234 667935466 805065136 18417263 865118949 281847681 774249144 471512992 186940594 25776128 887521276 9571201 887273091 805385579 13783829 86538543 591998204 987046692 450610733 482477013 212906740 298328635 133372325 376378903 465064601 674825276 572482154 791483933 897647870 43530048 634636735 266679880 618898825 332611624 608190300 985025002 595173572 189648697 644426197 601271405 600150407 477814495 654556520 21134569 69931055 949092714 967757710 508796645 829995702 685700587 17315582 152951534 319910077 176637799 359592581 185380021 119035410 82326539 928386413 816242635 911746 872924489 79253325 674442838 113177167 626878841 429673832 379639325 587986880 303790754 58299868 40936583 248930095 457249530 400410885 920017190 100581170 948789138 963078459 742164378 625874543 269698791 615151008 489808444 291241798 418098156 525113773 270205499 694229396 501250501 797019057 578115689 821147929 306804866 185877250 489184334 398805395 595479978 744578806 803433520 914997273 800001975 853263497 80734503 878785254 746833314 626684510 993899277 947032442 558444639 15936507 268462529 953035437 471165110 943268668 790102221 507518866 282800823 903768226 936202367 67108407 561350198 418191862 835303809 523510546 975208617 753811691 341517297 345654843 972595463 20579441 921543920 442077599 248979438 819105550 676496861 788617714 757014589 702195141 387870645 695975805 472430995 507940127 119382249 490552712 689441963 561989782 196567960 334310255 987915354 625296840 252997988 389492184 712330084 737036304 122854702 74726903 30125997 143858174 426188027 285621938 244880183 119506727 56872375 983383440 851353767 66701779 487474026 461291372 553748915 575696898 568923579 125510342 83317036 904119636 430971666 498864239 100490278 235639913 880006559 721937874 475552566 364638020 33679482 138808715 753962172 322197942 142070934 162795046 479581158 589014523 398582644 462326727 475918568 5661663 247910680 594360648 409681766 285415936 976484576 355788264 602580232 23891613 136462571 347709453 666712253 973837124 643937754 931158576 981254701 56123165 949999697 456570107 924585530 115337840 693539926 134103811 602433089 477921545 850542548 81363377 954642139 691390562 301331458 601751695 152294618 324117456 586245157 954849909 184273080 393090949 684650068 673462646 193250349 188431923 376690208 551426056 230405624 842180433 348196336 502294494 933445751 830741127 846012028 453303442 36512714 191096613 440863733 187675149 234541289 285086670 578817906 697325144 784372212 989542234 139832714 171910743 844859574 796135659 204094908 361309748 462318636 311712734 806046894 361856020 834479018 700780178 281862835 77858608 237192558 151313358 706248862 818165033 115849567 462740554 269999900 147509593 269411605 199441754 204034585 257507826 742524884 295376833 119521501 91475682 712505633 871706159 823291512 795044802 305214055 664311861 663980234 671433758 459328169 304269104 442500033 186937837 897582536 401470321 597733022 122586016 397799935 27298923 281396501 494744127 387717395 853874191 551358511 304209667 13066679 176747229 815227257 695539275 672092464 667430028 936721635 793907940 82667087 622032035 130577644 805923968 508467875 803428208 894418463 739390836 663340758 67705137 856731162 316601227 226867332 531518131 657472203 735357737 303963111 323716346 395221314 120699506 501142863 112008004 418587307 450710097 596123091 741323077 508058866 422662247 824144749 186700336 727102612 877145753 593837747 455241289 515014023 121917670 632118180 855265276 484477092 986881938 729960108 110376801 731794056 605083893 312688930 173272577 529657033 154826706 133635039 881352311 90320376 130950417 436069576 824959716 339545756 131982960 570528973 266472919 449115040 706848931 183777030 950087370 206459700 333893744 474077172 173738173 532044218 304611614 738886914 910063105 652341774 170515737 61511494 466576049 954559447 250545226 78171141 578256788 533543025 190432806 963765857 944071368 278218740 145303065 151140443 922725269 637526858 138263639 991584559 761877782 903215045 604269730 886291852 155292058 492914080 168528757 367185213 84936903 280582283 678233127 940417364 885911726 174536179 151852676 999723624 582243346 750990979 2786026 361242040 103952622 236098128 746973389 365845823 119049717 590931440 533668325 346207560 570247885 383216149 708351604 423460970 975148561 206043124 925128747 11582718 963536127 855575416 473833172 308548943 678736219 38955526 191442705 78528666 355309655 138054238 219353233 459489096 567503026 639964929 932814144 502241579 397005572 909680216 576231035 222353257 732582843 253385785 415810588 783784203 725672479 670443729 168862393 585656127 687831944 583120756 403195769 666687592 314142478 699200942 633493809 469932433 453324401 463102534 516092575 420257312 617260222 501510349 650247392 922930128 836414658 312669711 296800532 318071467 203325859 957534327 963156080 531266905 332921054 478287422 881099353 599665305 606151567 857212315 609073926 816703029 180090941 251093710 662791986 560020874 27086707 54827430 394205609 94860583 923511858 681010525 895438510 600089733 227328770 625065153 974701473 975680177 315410650 662803084 6970120 843111991 868225525 141723354 623857064 771213606 662321908 420559068 704011504 121354348 537301165 887015853 609777050 393726964 918178120 584977636 670446044 630806779 267209294 652204478 251505895 354879425 75941883 591535946 120768722 336133372 9508745 863104923 929651745 215999305 595084084 382601308 102865241 874466702 429521089 811389159 795440227 756761377 301141652 107019084 174847770 942064545 912563652 685467888 992083603 839410944 788648260 295269769 316560256 985593865 994985363 232139536 952261309 578470448 858750046 689606542 828295753 246113197 665467470 865052715 666102220 383873718 717973895 258967490 968556683 556704358 77679047 889580298 979669506 596935497 812501075 68150151 453324349 240921012 676052969 958591884 607086716 430654013 14218249 936246646 931696329 75616665 142142384 871664893 218237431 539157434 554886851 807006534 201433502 252934719 76625615 73173050 732498021 788907121 813063629 105149436 503933622 329190313 658084695 121199949 256879400 444806450 447019750 636381825 999829013 112904511 260563710 606834748 708939267 115396493 659338579 722377401 723923912 321816826 371869523 876014840 991414620 698668636 202475077 464113609 548302513 891418161 272454841 501346097 560676450 337082216 560513392 908645150 991224643 738573595 866476136 981021563 462635850 513906437 306659742 555625381 850357618 683310367 659385360 73218875 908092966 279862615 186060293 723463921 288609627 54138503 612236838 796242518 519264399 238950479 310957821 932190404 152292343 859048315 10278853 523864771 637575404 483309524 72143390 118527746 833314225 935868922 409246350 222116891 69453498 558935096 221683487 891207782 548536111 862548594 330371923 136095154 79579621 334924130 24439561 132166920 219561472 346233446 23184336 395210741 225209413 290499534 67348444 682033617 390203489 555494195 263395550 240329991 581214631 399748441 192646314 180287829 809517287 510805648 903150014 994819849 308569617 604460813 72941805 664386316 315634904 724037631 269013752 465560567 89280284 598198270 109503307 197844551 944358573 457505605 886752002 836525456 756079810 779274621 664673894 496368609 943092726 808640616 534176072 946412193 317171341 457578561 399609813 670653490 802193046 537224001 757986373 535249130 357812479 897552521 963574195 932090286 299722139 505016984 442917214 368381323 537639167 276853693 849275015 892824422 615445102 92037579 322035101 385498316 654170772 761922626 93413670 9184317 812486527 131426210 683754767 986330906 414529867 553200731 340574227 295482486 441496857 614883054 323335770 595065477 834941426 740797733 769524348 504757751 13557109 648740386 934138668 738466311 442928659 693653098 642541846 912758171 180054920 666302290 8374476 441770605 301419158 966971504 805081651 798790069 206627765 112132393 99292200 304242516 191078992 972055287 964755702 319650378 29244562 476550805 208043592 739000614 172268675 632818401 256619637 118451770 378394184 1183613 588320255 247317358 385263081 539462129 772821362 562077023 772672282 549435185 405424838 6281971 229935137 24081738 758095311 240400412 765919386 746918455 401699794 606385636 484977807 931473195 601384768 145205042 956523573 269749595 168488228 323655948 166932119 854326108 252475795 957113742 216469566 39004269 49619658 55860450 922467559 393057789 393277373 356733802 121978618 614826869 906937823 481552949 824376071 789737249 695876142 305909882 179426101 566482581 796533601 66823779 351715064 783415534 398775222 768958046 862050187 504363943 7490142 65380125 618278312 685731359 579525384 310182416 489105625 507567900 584445388 850923469 773507319 159809025 114728477 533555774 95691844 388636241 813156490 620949404 725077761 597891722 473808553 898326947 137566682 182932343 819345874 775663165 234423350 387392429 645075618 568353409 340160652 968889713 51987142 326982313 756214241 92709584 703990878 901933837 134720411 918113162 535383715 682669356 457518662 823053154 387453914 423929358 72423075 442614482 486689379 786030513 121476767 212603628 112219116 696727658 712069972 767662801 450465362 567863706 183018458 129579459 11372436 530009687 855444832 563217703 74172496 667142224 770223960 721399755 272748322 157265056 187884305 965620464 943182937 893919138 244754945 185773883 915016058 132129721 592667306 135191042 194669419 593610233 414479444 36784258 550309962 572256129 425579929 733690630 632767237 297319584 796666348 241413055 48718475 785576109 202748910 303760084 16180316 601943331 39839426 541329729 902727438 254627656 413341294 271438192 737041105 876809320 646832774 869414203 71421230 54994799 88352806 590012820 194308823 100738798 587178622 952417091 279295296 79198625 540538154 264675530 233272760 338035491 348368044 649620187 279902366 132331468 529547988 907313833 868950957 230287616 971349121 984174059 828186989 305798001 117523046 30387286 412939711 407901895 853084121 853161731 207258814 379616495 315835807 587375847 606219105 554316073 343422769 308964998 239521689 924601318 37910048 257297404 101227270 947790985 92284835 214224718 785769031 796134759 948151114 867630442 773694058 291144774 688415485 422361847 320924172 338367995 396507761 921635560 695175595 805069256 53038512 96082513 112985020 600085278 700527011 125031399 579214844 544039482 47915819 690853852 230725492 865591741 683955949 207104453 628236702 463444244 633150009 930365204 957416297 833420665 499599890 735985077 709008937 505541986 215533148 445372342 525598824 378299708 610931812 408753300 484220140 259546621 632527662 349027365 214139888 323318599 197530299 115308017 978896099 880369807 774740586 906514159 487232170 50355864 557962316 317688070 26153876 504494742 134077256 747328516 149937391 106551758 642371333 487313080 715726351 601635206 216502637 877170782 375451019 425212504 604771631 259982697 734246558 239133308 544110871 397495776 827204845 886121787 859802311 824934782 983754246 34274516 627566678 14064687 724996389 844188434 124379224 418325165 904257896 209600335 955085036 173963864 727998483 996220199 51829891 552415138 711293556 366905882 579222901 935754467 186435713 35923827 381175666 739953119 381849285 96501423 720417512 28945008 248109185 233558305 99755256 845276832 167155087 222099876 680508730 616028925 487718237 196989401 410207131 750358532 382595893 78284834 886453620 169918636 60175737 473779748 847050902 852000531 95960242 297999064 742128960 26818805 767384575 600237254 400894970 92625704 790254583 785256097 137251105 878388984 444622100 980227525 973975437 970947778 327633948 665118758 566846068 38792554 147669701 564128731 856549650 531359477 325289559 242636463 983276748 281426894 527507331 904578471 66111647 536553210 624735693 3265724 89037428 174675237 590015748 600796493 870199256 207380272 838059202 737201639 864249456 940741087 85039154 1470143 71642584 594696961 986376343 917475512 251150951 793212941 855798795 784902631 949837492 891000846 311268979 322866640 387262759 675213445 481232275 140117731 185091564 293085592 5303251 1992282 1389513 55173433 176625275 851626915 490806409 700077532 924517568 444203286 841887286 814353896 321146086 378896201 719889139 58358695 469426919 903896233 65594384 52608443 870786621 319127022 606115880 742444243 78441345 189472968 940672216 628964285 767571517 153671609 988600450 230462557 332796024 209104395 634307773 234395501 688435560 167889387 400772716 796052014 393365024 524832028 488810587 538228314 256820846 789987214 388869845 531491512 416040245 705458320 47903252 685172506 742130626 158543171 888049457 570677388 102194487 823852130 324916469 411485359 61694256 530676045 650541307 191957236 618146395 930735111 314743301 815126901 242917082 580169161 498917948 304045067 401512144 82685621 684194442 125575763 811549021 524640806 419102285 293588468 524986464 319777774 186380589 628807752 737010293 752129710 405703542 370970536 726206162 24797201 440633341 90499415 669064811 728002029 242897182 881546682 672306394 193673466 618627439 654911788 136582416 205031312 204173061 999870202 953219946 332083971 673795357 790518977 737041697 107435726 775565360 559584017 916363804 258784668 737840858 91180883 963525128 942287611 408292753 167496613 960322083 843708574 994802943 361519470 928254019 146195841 632515681 585675548 727364849 534353235 312977186 69256728 112630928 259609651 243660178 131058761 944935517 430715994 80355638 798938681 928994622 280162172 631877223 392583055 409983302 952091724 480100196 614946725 711131587 340984526 925412884 714761916 985730544 805138013 918085453 487930991 835226842 659473361 759828656 342164911 229970190 394445615 423800138 818070003 719819045 196351310 66364785 235930331 236973473 626405046 105959618 839282354 990613966 392752380 793627724 121885849 161526148 13381117 85128212 111412668 53703890 540529768 718930563 322850762 612217913 162920307 6809677 367713827 736504590 376378999 389394321 251515810 407376104 948110885 57703983 424134489 355965690 498421786 181702726 823729893 303860975 282535594 390106763 398259637 599316462 222344080 919664962 655238157 133621781 271033446 377234324 980711557 648817193 679144823 163481831 888908829 59346433 547467634 65003432 212622951 350463398 702423892 837912729 735378929 275566597 451677050 724820397 918138763 473547924 534372868 516375813 57919420 248277189 160112049 103993787 345150290 229968790 795300911 654013692 457361181 212072126 944174462 391106571 570825920 302530363 653674711 694101065 655253590 115882657 269137198 121814457 631335092 845128666 972177483 884159626 52368938 396097258 378748835 55129343 446506714 323675520 366413741 72520985 460558886 343291985 658103786 359797777 369167951 19186660 151530935 451339103 15597741 264090668 740808552 953366746 899552029 397720265 242654409 644820031 450386990 956546564 361945231 334157836 727439113 538860923 821243590 583123270 462762763 117661128 10261557 860407137 962750815 816473763 677034074 772676256 430636707 165436821 120527831 816065014 523954652 225161793 789344768 636031590 876610602 644674190 20480086 399920025 145216496 991358817 838376657 586916617 635016964 622004312 625886045 630181626 447301220 627620847 338660092 285426381 231470790 447066174 169566478 736132718 251147077 870216482 881394347 574258624 56925703 584907582 516022088 173578365 489089496 860680410 395850452 314785305 376070058 584648017 229506203 244552219 604114888 898116739 852814344 139689130 396305615 739319482 267448560 961122003 530525810 438389113 364645992 474756194 690917392 413780523 380026895 372379344 986629150 330646413 992287158 663865714 712095895 743839717 21082432 329629378 53399340 34697381 308299571 684497050 818449172 451471421 934643650 393347047 495384700 141273680 500615686 579047995 486156991 213635590 26170845 907689714 958037378 682570828 53251386 177238170 15865966 571266343 477528522 316639736 992576885 760302020 8762208 345644890 441377571 914196869 185070038 901037373 708127856 431889651 186175059 479381201 332033349 240148298 405898103 904980427 211656798 823581850 740436005 433747162 107180418 704688831 841008480 497232135 293204986 760217720 722054015 536112671 801488308 925411741 746053236 649735814 696378134 494000906 704719569 313362466 654168131 853334904 694834494 449459437 542705184 277248463 876117859 896463293 282614596 143222733 890836540 734173652 915024075 693664639 435400927 332011354 118285090 484522875 568171593 685537816 504936851 663102664 167633321 228616219 487222440 858541218 592365120 753333821 606849644 492557292 53073450 600302907 869688046 906733807 437079000 106926209 278795595 275732866 790484455 850911529 651212504 548025331 584925869 313849570 109617623 270723767 742680588 331316983 472191887 717390199 314408698 337121240 564638108 509464422 337967083 996516053 636239621 812519060 121368076 500378028 848930579 364646490 203485892 700576990 999084106 329073832 928188649 199264968 399050146 897778932 573940880 533204532 487755159 168984301 943717285 958934471 322267255 461280060 702825895 259111423 150595759 357205707 877759030 795794523 61032122 384204209 315816283 353214144 357395934 72234924 149193442 560377044 394639215 266008644 161140768 714082160 263004987 972479283 609515509 746085046 570583576 956297426 322217128 39139769 38017941 521970450 578703667 689718464 657878996 855921826 138316775 843806208 174521257 272581142 387789211 353120705 368098636 836088207 702897141 991312459 775390762 189044195 894381342 211526521 938641437 160563207 205300147 181631383 124373876 411393134 154391228 516055646 817205910 18062805 642095690 359388049 642595432 556184907 883825011 108283142 143332872 201347135 469500022 757775476 923260801 28932975 66198980 133168710 570444911 503239724 763765167 925166814 820084940 335486313 230350950 673185038 233182463 170782787 163134710 635093509 221895169 245782337 295852195 327231897 598652341 285725761 993096725 869621122 491331235 152347923 712049425 978860911 425367772 281051397 46891174 162219335 354185142 118555648 1097853 265735922 594755531 449984542 551244570 885380020 441849415 433158305 464934380 226736717 922386643 4168882 629779363 447303447 84460035 893087611 981411470 511434076 527113881 840529328 537155268 608537726 79119849 648648027 493538037 705081742 38041343 13730661 173274356 336213659 518491714 988039135 578566409 812860022 695922942 311058036 213187704 249236484 530653392 159241205 966467025 317769158 794340885 912360187 320275464 227199006 985353444 816936614 436225888 965003483 631795712 722149802 442794781 290109944 116825684 194545955 290633617 463803988 801268350 516764352 723234573 36858133 49176323 438848179 973762586 432453412 294273492 696664208 740290820 166228601 509214649 51341365 653189805 427424168 908275650 130314967 859989721 567713620 953370720 437646465 328304103 563524881 268626517 22752056 61152050 131457236 641408245 977064198 487858819 103563147 844229417 422366058 234556195 110946004 548989049 283841021 743460241 47353636 145357827 305955662 196739609 2289759 970251110 80212628 985375498 347643396 655851273 405388823 687103854 946117829 441515702 943451602 332710720 986654279 932689468 490149950 699962434 237266251 544541316 990694770 852794541 719270418 133661422 990878204 144091044 834405846 931522414 327181311 548759988 946723683 720141457 459231683 398956896 130723956 166873589 20795021 10888080 129325687 622214982 929088107 540001678 569944463 297928706 187497691 272958483 703094550 700672795 957043467 716890390 438167 593449900 288445855 117513862 607828456 624615700 222986317 317709576 775697929 580787263 541272088 355566612 365769924 96779435 909908026 984252521 132379483 29067407 229295836 585335471 608678766 390107698 90233793 666588681 75988344 713153933 287863531 795604817 447308792 444895459 406810454 137876409 240653645 107899210 277354272 334377791 548042829 604548743 898419219 991680109 521574661 855512356 581036480 373564663 264860223 40492386 605780403 635892325 338477545 756239774 962880690 942315482 765297304 44389820 183150937 260117972 964702475 975637904 628216232 636060143 555487127 430328771 766070238 43879131 489292080 829255613 602986719 231949801 915221248 552367302 392025888 52850793 814261584 350937005 207758158 667560239 180298581 682381520 86249541 916348623 248976008 617548823 400957707 47372895 960845580 65924641 931276948 14134059 878474147 459794975 151616630 669230946 387561937 203343886 280574042 189480989 402955904 65083210 179059563 283094887 857985426 843292676 964301892 767340519 197942695 156581199 477900583 598254158 947901655 380728345 286225016 723043898 411013677 919194484 377894478 41850546 828653196 57137327 7286964 496940618 995394160 739131132 749115957 561964160 718891891 618897252 738784802 399866804 23653139 873055502 751242876 968226773 819543490 359367078 893898687 523301320 621207674 338841625 846172959 31360884 407845370 47385498 613829413 276029918 20136073 879099476 989524918 210411115 952466374 409302813 309035253 160429067 627596492 559107908 137901032 501038318 813413449 461050306 469230774 545423 955516400 142588018 680843873 130975307 53017261 735489777 507315668 251160428 343938276 62656005 67268908 773325878 333765410 140313314 238555769 391057331 343824151 982146752 243545556 756720583 528780253 74387581 197188861 31548526 195257084 760294966 989940456 667564028 242909969 863617641 904128224 687157204 126750469 388716872 630934583 809503275 901061889 980483841 665828505 813405318 149510454 555636583 457084755 817303696 927316712 334083764 50873077 142160975 105972356 213073834 288019425 218991105 891502859 900555313 541776043 749529219 184203503 595630951 571613529 42305379 718826099 203988037 987534291 766035780 859073725 874725358 166339628 400888648 32876297 866473796 862492261 551741517 224308363 663516723 891267514 960911584 392916826 620418071 999445659 640567076 631158683 521332375 675665398 196649730 975954327 167287092 338298197 346983631 860243730 429071560 588094671 504531988 373938766 467487296 62923230 898914096 610005512 713384683 215527905 116793032 183579128 602216542 412631187 956138658 303541379 694028079 866606030 705853917 309906840 137921299 594544127 495559937 395737229 744414819 385899855 205766927 188467654 870488471 277379513 8880494 417936993 858668876 186016277 8557763 737770122 363793158 573467956 316500891 789314170 637937342 799833682 24092503 127894727 12869690 735486301 204259249 74913077 227663529 805014548 493822563 92558930 513632066 97276259 85018751 18962276 475953135 356181624 604452629 214683288 819472674 63590566 517535737 353572178 223710400 503359097 471593540 303256283 944973053 728208112 293545148 242226563 417619414 229479079 99176709 931804842 109409155 745304375 730634273 714374986 72976532 947036591 874676550 980460387 328649934 166172249 202422530 343407194 214791712 448881084 179377240 568563793 466272454 561369335 990835211 336510886 589135631 143526763 14269033 941000951 396229784 847935730 493546350 327005883 595002527 692767854 754459586 686214920 285862088 936209771 652665360 760402191 623207756 157872603 515072013 60653872 819574086 85005874 361364828 742741400 587409192 349298852 125286758 634321089 794113287 636494812 966467445 776307128 976545763 275643801 135819055 533815533 762550445 254450173 175605768 946640845 113521293 847046014 714740488 857909975 611611362 595363229 425532727 494344622 926940047 836407802 523939572 121236252 790799946 812469976 361967774 190612739 103384103 404371094 283031070 508899631 916515956 605089004 941776561 898720340 571318001 184364956 437538997 304453063 921387756 922674447 15849825 990402776 813677762 819971372 499123651 351818330 939799975 48061015 665642016 562142326 72580785 424641755 474930146 540325125 361738696 304981462 662269956 181335912 41921129 404468890 775255886 572954609 189242609 93585505 765545832 433958844 708924269 62826171 155301950 989976073 897997355 620117925 421639829 359888059 925355035 100226288 311540209 727010337 938049661 836232667 776188657 908823509 142462987 273608894 48108815 850281854 20785146 13774986 636829956 184971125 404780279 178167182 578632779 793975773 771788750 980679628 726985155 421871226 963147572 91193275 226852175 583200489 450162537 791113572 152980813 805628866 754149808 792221418 192677744 222246410 140306657 452905940 759415580 564458202 532616770 593964702 622256114 903915953 622120340 794289858 218788976 138033236 419363585 711585994 648802105 497417337 602160349 602518414 255975841 916834032 762926253 468816951 219672003 628355176 234126108 287826209 861519065 942817640 45051307 478961821 580745263 492847085 37179542 169794501 175182156 181143036 138955932 801376380 971305545 131759705 418862166 35237019 106774435 951218299 344364195 430494451 815269333 55978275 66842191 203118362 689188105 38414495 791775961 334224887 618261839 427521908 1296548 268589646 995517339 958546252 142774648 905009241 534047753 341296099 986116312 719318779 251796254 552290506 648230039 790909625 869963793 311498391 460333763 961924551 341166382 102453571 812652989 723090318 276973107 302703296 824939233 15335472 498621590 123269063 357620414 438207320 247615556 346550340 888119781 456588935 338429367 983235009 206835315 773002023 467211848 574060125 56605145 227329317 118043047 749972756 635410543 457163919 779736131 481073952 408583004 623330489 385834969 515957541 608191759 340589487 302019749 480295775 822954380 633743682 861091894 967251209 434643131 368508222 880543103 264619400 499297684 86298277 957017329 247428762 746684535 332391801 764483902 725038619 354347581 995128732 402142682 106067359 885608321 740436999 406163423 173278934 41161734 624697250 489919410 537918349 6845960 49157470 212881083 454946791 558454412 698503722 815927605 869151775 768032694 906305422 591878697 573822073 929837628 604459240 383472906 390831274 367480433 283138105 16935736 467149157 152145534 693246793 765628636 560121369 566672635 202125751 330439463 475545768 49374129 336218514 976396204 786757091 711215608 675175284 68439076 569810125 41249651 116349354 403758070 716306880 792607449 63512536 682727404 774049908 960598982 242659923 541147490 979926519 171338770 424586244 423158205 148754555 337333227 99928697 150024048 6942256 248305262 900140396 44212569 8301057 687997869 828856088 389980139 799045518 933884306 434593663 788875474 855144935 100308950 807096153 154306234 931986111 199935414 112852314 356618481 188092722 336092010 16786355 374534984 888157209 484082360 54753282 114859867 877398587 399607976 389825969 300607916 939771692 984472206 493420839 542596007 977565191 60137045 125625092 8706266 603000250 610179832 670701206 775928675 172435182 945140612 270174475 590670764 478354499 960371433 450505158 565500129 904917042 878852244 291172618 987702050 421481053 756140879 245486053 129411369 570658968 857004279 769381372 885997974 822906749 371892348 119005748 215446472 278679449 837474281 403073737 85788003 878352030 794214702 379775937 268364988 862024889 235994946 114033071 219274272 686352936 820690363 502998066 901203121 562690685 46979681 858279576 414520556 652097835 650528583 43174736 833384629 46602393 506432475 407274769 499717033 576642211 873969492 97989894 814423661 139846490 945331568 5796552 769011576 723946678 475041402 890443044 244304187 688907187 133220335 373577223 66631252 549601866 399485094 746934154 725442367 974777727 26413283 768949670 626375076 512817697 735322122 555796003 308062638 907916848 860695309 463819560 964459259 271759112 760122468 118484269 14591118 24233243 216482865 60602671 613318785 707520968 362846833 252918737 785170938 367508884 811692851 965222040 164513231 450929579 311566201 358646356 13710762 894749646 651225847 790528024 765888484 243675631 46778557 198791053 577207114 813354323 234841318 887734134 765315672 418354475 723089952 254110285 962600487 499660173 442517989 912300387 670566573 240489442 24849179 272147052 787848965 543796515 199923653 346891349 360912777 205690126 551292727 518849486 164999492 36030730 685148487 288723448 693611805 490969429 704451522 995797989 203521751 238109823 769089228 544189989 748198785 960535347 543845403 404776256 18066040 894991955 953232849 190855675 799512792 94322728 257784955 749835851 24163400 418276111 556378826 11056598 648001207 698056815 293988084 832319350 908675997 267085138 610896783 245395090 556709522 710298730 868084954 854010383 734667500 475687609 496412128 621849749 362274103 485387142 280962099 575390365 953927566 799137762 7664624 96258653 917237655 962379618 257247475 610686645 782410037 457827594 493296722 984243882 218128767 823134279 664701480 93992196 748346578 601446693 678250913 76560995 557006170 138483741 510484768 73692687 89597458 327217907 754004959 237913199 481660348 808605190 903308220 484528136 721069314 141388289 231102444 919923992 935336524 578794182 886290249 573988361 393496049 515095386 917276557 663648228 643761096 208500148 815606410 530740754 158061847 796453159 906916380 456526201 31971220 43957040 314119410 24527097 478868989 428606695 788544323 687614891 514548701 186885480 637320112 846862565 156556807 757989919 672590440 907437980 423042071 29024209 371455779 230806776 135890154 632040845 970681925 220810649 520018917 547128684 173221155 778339110 64415716 345278754 684444489 457989026 300298710 428797346 957260596 319242772 661915608 385333383 640655974 888782543 178585401 35986246 793722869 72211327 760902908 675123911 699610084 703096673 643561085 704056217 294613823 198503020 485207123 965005414 782226678 831160028 733049261 320896834 697012931 401821856 401935402 485004701 963862695 982293921 685262353 431568838 182396344 82182731 572767369 815866935 617371537 860739361 270780859 383632626 170359980 143609414 949202562 78434853 397744123 267975869 491216001 451188656 434740921 917408060 2392349 45164580 725701287 747830881 94303472 254054391 376885855 550973476 915488483 443168348 624411000 841212735 667388071 786358075 521806744 86323249 458223661 127274373 567988101 389361128 457836479 993656485 6247530 889502228 775074601 204442435 749607056 109345550 305382322 894273312 406549151 582041523 387963745 601195408 474062086 487931471 367176910 305412530 151037643 680622339 641600836 884620145 32565347 975520567 31875263 452138241 559030166 450793602 192399494 468945029 70549858 178755551 728824108 12220822 117687181 802345654 774541466 742481991 302713366 522174706 477623406 879430417 102099334 841029056 282477187 446787597 7078714 229647403 671997700 182869655 637280704 491095538 96111036 929739240 26018550 973425475 73140792 635012818 301361077 543774564 16365435 886930772 440074296 51382251 125431714 454957448 282869495 379727791 337170313 935875569 65600444 850589612 848041773 492695731 253172102 1500760 355692154 57994045 506928192 787665530 714643631 1394915 570402266 958421283 933941816 388329485 950142461 976851934 315992739 554563094 919950828 130884891 445991386 102624891 734138804 21086619 689171658 33298867 854918864 912352414 923018902 892381614 349217569 430555130 140802856 623156863 257734384 663168839 810880362 215630040 748605552 565584869 201178201 869780357 394668174 215071787 414054433 635286335 294164706 580057315 822721510 467469675 383495187 866375824 424989283 47275043 922610487 73034839 187277020 197838488 392932431 394989832 948978477 975218703 286863737 136034165 519278112 147031094 751237629 167151434 379453100 335832119 52196842 299031070 651654496 649584872 394516535 622920309 448415389 566838244 521566735 265873567 863964253 623437769 305938756 644958253 865896209 542040861 376027537 27661679 378662047 744191909 979128715 31359062 828674968 335886404 326265080 683311825 22598730 68141346 456608828 844196774 885678324 62882773 989017074 795228603 538991510 315590578 58069603 555681278 573959955 337671574 272634775 993570750 717005022 317516436 271783030 875883252 277272144 369718667 308469139 931510341 881540941 507669466 274611295 591822902 816782813 876166470 919162774 575061600 144859905 139532755 48544081 177802969 773571355 928496825 10208921 262516667 10134680 822811544 528079650 53287708 329818465 849323887 728984440 445907074 325983775 779670971 150314836 90304400 326226989 526000407 653210781 554070718 612098045 322149220 858628489 24404873 166209161 319466093 309099706 389239676 899113874 137223973 441515414 423343046 412747001 963719832 355988762 697947403 714774807 643371605 341178614 769290195 852258572 190533309 325421102 251793256 741784760 100008134 498734675 753190724 708936272 266687699 600745557 982645193 244237545 258201327 818388102 453455344 371166853 292374877 820406372 546951715 209388798 973513070 787940558 536588290 421188929 797090336 419070693 158846835 733221594 900353073 14860762 557560609 920175739 862044908 717815123 164840637 336429220 758384803 140898428 697749173 336832840 889816475 467683971 404832851 427139767 825134081 668858573 998849256 716189784 555859228 925647592 688469897 175643743 461371831 609731573 104448051 218656672 775523159 772584611 401381893 956391790 220388262 739414825 857650773 713504486 534336388 331730861 504875640 643204898 802487042 947062823 46609075 143654737 734262427 568910062 317815575 299171806 322314364 563143152 264506077 538191601 887240392 274669388 418084643 223468951 167762904 314364766 821549259 817652259 400802869 32941406 187617590 583206494 334423922 608005635 140506174 361955115 278600059 197315303 916742677 837733688 668987256 568031856 107314835 110678875 341674240 829069399 858696721 467932102 262662082 332943800 477174000 258219002 706946 652524471 363764634 264414210 915565560 773115354 540234258 372213474 657264739 802969710 881062196 803790571 402600311 386830062 272892276 878307263 287228591 11292517 846561813 954376254 357139943 430321888 74633830 891649199 395042025 245611562 232876280 690243610 795873797 976703293 413938998 853414242 888395506 591454530 493783966 893055583 78683556 744602660 747763292 285933867 624301722 442689065 943914143 779009308 85074412 52407615 440348560 976580703 723068893 364177155 223062815 959403413 756421650 980452094 405141281 367923679 992992940 853615999 19337991 655431504 679759373 156494196 263887199 173941754 929998064 639846396 131908361 456236785 924685113 824441391 293542016 538545736 43479338 937569834 721109744 639454248 172108037 36823680 61495761 197920487 133957879 574239629 751046049 218364775 317849001 240809636 188551183 753435553 3608609 122140902 490252863 783282567 840210010 702887214 31572624 538842720 716445216 861993635 29383055 935441420 316023707 512587581 491211674 30213391 90649968 878092651 256682105 446807020 511985318 546422637 487382171 899281963 332125062 109532872 14503149 362184097 231301116 169045763 413667898 412320931 623432476 94432396 389879513 907920354 884743760 890580409 367385270 90921666 740311696 251290638 178715088 807263265 12454409 952917426 161373682 254433816 758438969 206271551 921617839 297134798 953047886 615406140 141822290 42931257 765461035 223925055 177207194 557615301 768347414 797467887 533681795 336944066 452345103 243641059 211750224 618094699 429712759 983311380 492701437 857094624 977224578 807579769 929801396 707421028 99442209 649156662 561691007 405826996 220395772 764688647 728493364 437509370 914430693 909475048 134953889 362939032 43887925 884146348 630639364 558946343 248535992 31781526 267665177 783432110 469682773 752457468 15202457 767105212 559067769 718619309 598787493 19800523 512644946 218453045 13020082 670614746 329567885 262802694 505736584 602207467 712681484 993671743 107206096 848106098 203053563 570056633 390878103 602860646 148164612 881775809 235278328 576211346 193346697 828529360 820204970 854577673 685551182 144353066 513045117 652838376 154809740 761846157 950206820 635867560 542923151 768937432 259219845 434494534 609695326 568105653 963032171 107907676 306324489 109020410 395115296 502967059 886871302 323339562 862082927 949014054 162161081 139932742 428059432 418701460 276558073 170545568 800823749 641700326 658425239 968938916 304149029 15384311 159788909 317894793 221554623 771425041 848003963 719182272 213737578 57192063 319006219 195772687 956366426 744937062 401121814 36689702 655832032 73258402 355407392 153694915 641416957 916226422 391373688 887854320 574339319 23982264 426887037 787955816 533957435 849161989 558994411 234168312 145856014 127731736 407437473 799243348 746554717 584865583 179031782 702769361 814591260 352287322 945590878 120043323 86321649 306976041 302806596 189873399 643550193 285682487 617415445 580125295 860178623 338545855 198881964 863009519 74063295 225763799 795610172 228379988 524211846 664918369 181024370 312915636 856999029 875984589 515768474 911328481 6207314 920240226 747610952 44424139 678597421 553559528 969292110 821327323 571131950 783545692 620602585 861408970 982061724 288930894 225137872 432168706 398061083 403820339 262361851 769899386 460416887 867972527 855402243 639325810 892364113 390898106 351565348 589964732 296378468 412533593 992764746 64580573 15498361 255285492 136476193 529899267 967774945 603736986 746753252 957075208 416085949 473945655 273187046 141468638 173886127 293365054 850650393 123941361 531086182 350750428 926059201 232659772 107707921 54888086 709047048 386402116 328973630 52292816 625941132 347768836 562005149 329914276 908632771 489929776 720671299 831639035 700344630 763367996 780183854 813949485 16710918 731227182 835407097 352441053 489956419 388999053 966287021 100302069 761223957 189211497 988559800 367937712 560879737 721926358 308533982 115897960 664205072 440338536 572623589 15442737 154611513 865771895 242164322 353153618 92693286 767523490 89989043 689571273 940997203 558148946 465747496 940106912 999521146 98195573 144507332 392009827 972606397 83361032 145018586 169688571 110186802 288933381 876837536 839667539 723691641 541599077 416825458 649543736 538434973 537629287 965797836 452421394 601754895 275199965 811704537 809839940 87358997 956582745 54598096 857195054 329700976 931611467 980974118 385184561 650518063 573767912 320518288 944796277 214539981 116636079 512297006 665542767 912907844 220677529 467941710 981575782 31052127 338292195 784799519 768270092 249612398 299380260 903265949 344498031 513775623 90718198 261098966 573076422 602841323 21392417 871834063 320931601 884224976 640196517 641805847 75161614 808117416 105336398 161713560 620686048 299980902 408706378 691045292 101749625 2117551 660732042 281564358 279744182 711074750 868605970 799941925 647724936 414136562 861944630 431054036 870730058 188945488 106577849 453023016 845080033 948740032 571640469 763077706 750206417 484983244 880624750 232905193 198394555 605182456 50246304 32439572 584287449 326977092 112855486 679210765 773926840 972385703 771341297 357266065 844837159 799837823 657568511 545787606 417857416 221826879 48153073 547476242 813614874 666066211 885577698 449167602 112318976 757570687 118889099 794846710 120567695 162146860 48555586 263691343 772090015 835246824 879918289 470274618 549599590 236569566 270951655 651289281 497724924 390125117 684203121 595600888 321902878 137581787 879753759 861525235 473774802 223129188 343108514 882320359 807326347 945477597 289916422 272637285 920153791 394118054 950571734 450010304 241926899 760276816 844668949 114272392 996339133 760792574 128665151 181531714 511083244 952766591 561951225 375175545 906022695 861764203 44605483 884212293 420775617 924358898 663957713 664794664 847459890 769492252 320233747 275561047 940084357 409474398 315629703 639733818 315321743 327982607 77771878 231011386 909831707 611451510 113890321 540837930 42513652 353286614 565089554 519501560 330498988 863109283 752474833 311627643 580456587 360531333 280120099 493536587 588943808 69133805 727206148 315555190 592952709 932987020 963551659 227568677 282034259 831573699 941523825 728225179 543383587 508732309 465696373 356210244 634956143 208364113 737603589 398921863 832394523 892861084 197840688 301917904 564886427 570665902 919572931 24183351 633994826 686945567 593957093 183622312 786186351 170785911 652006564 356306169 788044790 163590202 887844074 740148329 823586036 517910618 666957807 642064792 702065845 823591119 517078081 955301229 606757334 359212816 445857575 325310084 217039659 899406099 496589995 690066482 990840422 387736847 963417334 961469128 341591975 927505241 750403274 817798643 818024109 73811834 467509735 413008232 329198489 278755667 393511263 203915286 764205335 372715743 422088401 656361889 962240439 80675673 846312683 136293181 449656508 770622787 792244503 452718014 221534119 397994600 815124791 676105780 496724639 491834788 691484896 834939013 955995174 148423570 227579223 914749000 857911822 908456505 339352018 807041125 420961892 252688548 505562195 898812560 517151047 186933021 677273572 107098103 283033227 927556823 508266793 29680288 273470202 861663250 933799086 447822889 176722027 60431995 993685874 28975145 651110909 177647048 88080813 465088002 432391876 228524250 827943242 532125279 32836134 962885524 721353786 280603616 21947419 935565605 715259988 353905966 598914695 169643018 271724112 773536580 205884232 487540481 167698261 255718595 768579168 756870743 679512071 820358870 430679079 913888711 721493715 294899991 27632741 895834200 259811858 596011508 66434655 431024271 568545908 524863148 528917997 40051891 260167997 956001490 567265296 755784704 703217216 599535453 515758190 512856321 414672079 187769252 44860599 934249608 89174772 70661880 328396373 57045340 465494662 216068350 669564877 463209302 398614382 645438549 11196187 301706571 193040661 947345490 959601135 178854230 953026216 631773262 74303446 855684689 170087492 760171765 635153012 6860695 505806079 918071697 247548492 541776565 550915254 809132198 12417842 979302701 446216162 589515597 569003612 314498257 712100124 752078816 142949899 980612942 711991326 466233009 660136688 142991313 187567004 877889952 689226031 401439224 82406404 468484598 448270139 690083894 935790902 479441317 362812157 383493501 504139148 652567432 398043882 887084180 697990245 66125543 526034755 804287044 9126587 424076847 974758800 125516164 430388568 584145755 287260752 805032083 609891503 41507644 679276180 991418606 374835245 2884129 782511495 128439171 918076459 816667969 145159988 966584843 547047336 998440276 173299311 25228232 36992805 293957083 635113327 350728217 488747244 756231250 862076277 281732106 926377435 318767923 729809330 650192649 401698880 295427823 408069460 256016307 428814344 75164779 678732221 269178595 917439672 766026536 933341364 672450801 84471173 366726066 816761919 279638484 702084234 248908921 554162779 224704687 460017345 620655135 688995745 791798698 672610089 188972383 917571232 89473610 84013928 694138274 705208559 584277531 441400804 811951224 816554659 82958897 355911873 674898863 870549039 122592404 991985214 988985684 797181440 86476918 950589990 979217552 884074171 771778398 422285397 720084720 320992972 320825453 99234503 662842091 659390788 88848500 633677065 437553387 860404855 469212181 444889210 855553659 901507627 668131732 146309054 305987599 809388161 456068173 274451253 673892090 251617255 263162383 533995191 851537442 836449187 547023565 570447453 611921200 527342250 650269282 768910654 969575667 341850128 73004580 255116888 817432336 783124818 201208505 279440107 831162619 634356886 34355386 15592602 232686421 72770132 647788245 891674127 429158661 235013982 580414961 15492562 421666468 286062474 143982935 466739111 902009754 172988762 260290596 88780415 656899607 499937311 252573997 709770387 666939778 659205595 631298326 941845250 285876196 763463545 536852719 575619252 807739816 32678505 19243029 609723572 369305397 667281826 865483073 557495287 811152583 824612879 349059949 436831921 440840923 149449768 448711893 389401371 511313866 616826187 179862626 355651816 298199892 512977387 173501053 4416945 169007049 304787231 590783299 107668780 101662697 200777713 651307194 464223035 114577009 651198868 392881481 99397817 2626188 713335926 72907129 194417390 566169409 8651554 564100402 336833227 486484721 484111033 839229255 275247253 622333077 159434528 941088049 794025460 62946767 629371700 751216533 160982329 406527763 256773067 107043011 239861231 785386736 186411227 651601057 568596053 32611865 84969680 616122908 432884396 466147698 324106750 332731935 945433766 265686784 665814988 446081716 604021887 350961358 126603688 495584310 723557902 131421932 540875579 775340032 513915704 935727303 85515931 724424241 235127338 714502280 622988931 38189756 191164569 609416184 822573819 650792156 136001307 427099185 380435318 736500867 662830580 895653512 52765113 234227006 166395443 138645751 932951850 727389198 280822164 520500241 287428940 431432241 506233886 243640221 434295498 545906170 986117870 656545989 670999399 580370661 721382124 33971684 491321103 635975984 848151867 321144029 396464645 674905738 624921491 224522877 973021377 85660273 290355580 690621858 967052642 288308090 331405521 612399794 171644629 273012086 334723084 101374828 86050126 571564252 866955281 944781389 646275075 674520726 253119799 342880169 614049163 844110183 452046201 670633784 805296335 332734653 914043904 939548946 912661470 874789119 265113894 411746707 792805449 264533669 16592104 842895445 750819213 507537904 463622899 935000648 423994906 748549343 967380966 859032240 476519716 581908449 624132082 962492146 705581167 583802172 992064050 657021439 67558634 33767214 320141804 468626652 453198726 982952662 220997658 510267567 63988918 249649187 359775019 332773389 792051222 678903422 486960476 603703649 96339254 283214868 306998048 982852934 133279453 721363570 250253315 5709925 961964693 684411832 363252733 460802488 800150131 653522074 487795687 788761512 349631145 230117272 844111889 939912386 530707729 264483401 398424948 4975118 234085461 2070797 37375004 901268863 488358469 656624603 441366251 883117973 888628065 22081884 200794908 40574869 821519425 544596460 520083640 37753760 148751706 12965304 887954568 755384878 834673590 661043664 667518200 690129810 223587569 208430071 60889053 19753057 669993855 564253530 747705293 162179890 683409142 76071424 230756455 705816726 432877624 994998438 715088597 330406954 801171400 994744235 613363765 872256376 88356583 67697021 684445711 494333985 10958183 992244781 589569604 143575444 399335060 935872047 771639284 407292243 868398519 666241258 832612230 970582914 570499778 196803190 241629033 688037665 327089848 319441369 150619098 131911910 808292091 899593242 899414561 391434748 826056179 641445927 492217244 570947530 978438709 960548791 504691011 566077905 397302450 447071104 647225120 731928873 564275183 350330785 314133520 221622110 525895513 376132016 745013770 602752002 446842807 99451730 8881664 541742068 969132419 700476022 27239799 343930197 188476978 214983657 549132359 885331604 350787503 364919170 384321954 677047051 535565893 873828070 209870049 282698302 239946891 335935682 425587267 742208210 926545977 870852727 739733866 53796286 838922573 926897498 784117555 236359017 760576927 462857893 112704587 815247320 647799697 986285961 205296609 966451496 247848355 213215027 81502430 434720415 912704686 946614536 270527928 954418692 315561530 992625076 23545583 440807872 712462692 451851898 102715648 743499047 980006085 735774216 721229563 238417092 9917628 303801053 630202965 419275810 103724836 320525363 999328464 605424368 867354309 529122991 326422150 86527648 17112492 462788589 394861508 247665482 500419495 766760415 773977819 930982400 992899632 750288987 329680757 818156129 379890711 564337331 730707279 524254882 676773424 576835736 431919595 315768465 395732706 652674548 831975728 686227955 188737164 231788649 197173645 101374654 56411267 372080078 509304891 111654251 109136511 491347911 70783710 785206053 632687406 481286258 175579611 709467137 947728649 216466356 89055612 4803876 347190410 120351253 883914440 924223369 634407114 65640633 843456205 367580823 980005814 854620723 205067199 297651307 45915261 888031842 791087739 205036854 863101729 625081768 258837856 307580767 245897266 496649354 545922165 330865884 748291545 97718619 102176119 226940538 942236185 743499602 827341407 832491466 322974823 68399565 696804005 470021064 251668849 654572128 213923588 383188400 595326117 20072937 391283230 728793217 655944066 243012972 451803288 896125221 55849350 697024480 725709755 85368746 808340535 746311461 169350288 729663663 736305776 873435931 328052044 678672341 316330819 260529398 198533245 678635296 49288984 415649144 261938853 170609021 540956821 272243726 505198390 322490863 957748329 765943737 598955787 577039088 484253799 530306939 153543467 734503577 443955092 701603861 87713771 724874000 468807476 26041428 351211461 65924496 140766120 118246730 627923972 536319255 359430336 373046441 103368945 454744989 725877762 36659776 657168837 848773137 741520984 706902148 854445262 943787053 18534271 571996893 718621980 798312952 102075070 597681331 86653290 60158147 922385719 76974635 868699606 554635729 396108394 105715910 736686839 549046989 805930172 734582411 858917842 18397099 232325482 122193103 729265794 748397840 51071607 856624062 775362895 676038348 685079843 730629770 514396658 143742658 73428318 767507135 544683294 882546818 514156530 974870930 972550806 17392343 943986630 258353108 231508879 418639872 986142023 348971698 146326603 567595753 396860555 403493437 889212169 151203014 372871756 294837753 991988607 753974254 458224079 150112527 885362188 396112477 186066726 597699560 118885729 643870002 368796724 951859979 917816128 271060913 720908123 707891993 267262923 521514619 480726306 356980639 636640818 386590577 501202575 839970833 474818496 37654053 549806724 752191416 540171787 138508789 731012344 437257420 1533999 943900858 356794627 642116829 590629451 465292887 831176983 393673952 899863236 3910530 361859733 345338238 896760128 463931473 995606824 399036422 117070072 434254098 817646786 112867438 597731973 729107825 673903780 787400310 78473373 834108298 20926658 704052084 637217222 970793185 4556827 122822616 236063849 254236748 740048275 904856741 911982315 945675533 163969051 112749110 309768920 896495827 759133465 991038530 771510041 35776429 81228478 733586447 937730191 56321766 150848024 361355156 871862349 828737207 302994635 46656126 205405086 833854688 673409982 961144565 711009008 876861247 66340390 681734551 899599451 793712565 919590524 657384559 748278779 577132429 40102656 132495731 867821792 264078372 153405897 948788570 700347486 264953830 473129589 886907920 131767066 79130514 68840010 793958080 13372633 808340927 102563481 598576923 789820009 619513940 327909862 847872534 249656165 453782272 812360862 858442027 452567737 920118362 153442475 909389852 283585624 725424273 906878815 236920753 272741974 55405796 249164604 27833760 470670206 982641038 135660650 460213473 687201701 735005904 863618162 795586379 544423598 778525296 402422132 817661674 147632729 31859278 343179376 880758115 523905479 107356566 466722823 804305971 203087992 336163860 31791251 981019791 178064306 405959561 15258567 34234892 250640528 241205515 500429765 593473846 295984485 683371290 131983897 615259315 850357217 672672800 666729145 440423889 283880910 669008382 813253405 516261361 898941604 659486075 564517078 710434124 455024371 461514201 749357431 565890772 185629282 322324310 296434219 487255254 997249660 9758672 306591594 998310916 809565027 436499214 487570745 63239401 164189786 399939473 953507913 763113355 904962232 318847917 302684590 904942029 198109308 875306158 954176468 303428857 617629267 343444053 104438461 546502294 289776296 695328269 445844998 871773171 752060464 702963286 191974457 404262877 810799431 881610324 66881028 229494159 959970930 906915290 637538558 834216058 555686475 811315764 70691668 737878660 118323553 487293245 239288949 403317761 871065473 98891097 897157101 396565812 484172277 309084147 394357476 120753732 472532212 838565883 662637244 128087468 23899369 720402490 983340366 657565675 11155489 286426373 210119968 249548570 622335060 718489627 855430666 764048916 868132011 340246250 379610467 729017913 760938672 246918581 653257778 911423432 364609754 91730417 313614737 779184352 558822142 254900319 550153031 943165462 513589361 968677348 295352621 152899932 722489373 701420674 586087336 976029961 499116464 169190706 59414057 349574551 491722292 514766473 593926754 898252313 498287942 46787532 780410461 845269603 270040383 170438905 85350002 740771189 639314464 925332566 942919535 1285598 140718915 555105038 648494996 718759492 806735545 808591487 477091752 831060277 548120902 8079535 308134950 971840076 215511321 964853118 520016125 53887932 674076951 574512903 782665047 531493429 775489921 173344682 806259142 181721352 247316595 565413993 811305176 692871037 741068516 776343530 899003453 637310069 867616587 71540432 33758084 205100165 961439088 723952041 555478028 907233738 839786611 329779524 909214573 220600090 853484465 4270986 281524570 363636070 484739942 19359542 49231681 511486266 29317690 214861912 97569907 406470136 825361261 552020135 562364843 586544249 623887710 718997932 221527091 717960108 864583242 275755281 340198663 469634928 3568582 283702331 467322019 264911133 643143604 986193030 577044943 343071821 384532822 425758561 993065030 86505092 931216349 593820808 70236304 847505550 900388553 274105964 155856511 677105169 570637571 278580948 183563098 112332956 272397424 14442679 827696965 584167758 679814041 693869875 984897961 56506367 620302724 886354961 971120270 450874718 469850254 295608403 881846113 635316870 810652545 65502099 950981198 414205375 171924724 305842376 584332020 455097253 772178524 242788713 237677172 710023354 817417561 145272339 868922476 311399003 815503365 188919975 375177245 922755751 653221445 972077087 844142365 226083467 455178637 362573698 811446468 216648877 957845080 562892590 885259432 184088770 831751719 422417668 926455 993023908 520933113 379082222 300710570 984608467 927288844 188511664 136014993 348056210 870365201 300288626 418050506 368347392 377017575 979034308 428022023 125154598 881832356 728222506 829031774 512632857 460057407 836240823 6980391 740137452 674711326 970643155 194235009 461773610 715602049 9468115 561644551 237866587 853747402 738234405 344597752 190846647 407711865 862386080 815325465 834670172 16144033 245992918 941140175 416797962 61934541 864612162 461599153 308459953 539971677 709567328 868600604 311087178 616494813 241553427 273716075 422177688 707753503 588539431 994271909 302879466 84722249 805333699 308823553 879945189 638795532 537490494 348958391 479845406 856897937 146032793 347311134 921497308 169553936 543937224 839075744 772742562 200109722 123530810 305113108 426624595 447138015 268020635 512325576 815620543 92599606 357833237 623026244 307019444 408586944 700855065 946800037 794558593 642835951 843819286 181149408 143725034 336668890 24541880 69360043 762651442 864768090 461871541 350805027 335964070 250432023 796313708 475087225 709038862 944901560 140977600 480027939 683297786 499970597 831198845 337697300 204914355 429126614 259186725 405073078 440116050 216489221 556609530 616614628 157543545 226020284 114348502 770023038 210864389 506551315 324641113 208598114 61296629 302071269 608711328 575308871 873681055 421929997 365131229 116847873 711632260 520022431 139832693 452090189 974634081 693055349 949665969 72922491 709400827 13365377 382402381 613552339 223891521 646523853 15926822 271844579 279384282 861340328 301487401 214035632 68164678 253969073 681950772 673293991 791401436 549225498 351477493 479837180 31861238 667952472 226842365 716238126 587872092 199157066 120862397 325343780 541994311 239005757 748872549 285948847 589980879 965287457 708544177 822394665 329616204 456999985 196958144 389209651 521829686 576441538 932950431 143432882 801766990 614739581 998292903 253415225 141813742 508032841 86812755 969447246 606384676 332917703 884170047 974916841 425441779 87516116 584085693 188445215 851983590 975546460 339653300 293426809 548680783 863441344 61101266 66389916 531150380 137210255 14905810 610716003 308868986 810973967 695974249 968987432 889144099 15166227 610110982 95119092 176899185 754802834 72988116 843911043 566598821 642857563 52634247 818767009 426890959 659207161 449247975 913721966 499433406 128830237 310933424 305858805 987229775 88970246 973535659 791459730 808280220 937125789 982636299 766298042 670145746 807955376 203558642 161937966 193953977 378636684 800338643 910374110 451051953 87737836 40769840 510445382 568823834 475123685 558981632 762717044 110451909 800836467 960789041 240973606 328549174 840058436 41904702 545606115 653645916 105173744 421466546 413392935 968319694 270478483 806043589 997822432 339278800 447390736 48996494 624313041 246807127 426131834 943386746 817412442 585629252 316793601 86428120 828930139 549483032 416032778 419243096 655613357 11634372 590317683 6556978 775464698 287763092 26684760 383899210 664320988 348789360 685657368 416341745 151352218 982902389 271701413 225088910 151198555 43225501 668279705 910778154 158496159 105296718 635777053 369750680 554886589 603708634 864572244 632262064 328339830 388604552 987477585 798477136 793706857 48061750 472251724 926040308 602077618 487254162 847876529 572613223 512377334 512380303 853302423 515522771 775480889 598350146 535917556 836808590 415126893 880457841 809581388 825768194 369448874 594911192 780635076 73597508 443992693 791562980 669090139 268777162 189847108 700950414 673290409 250958792 776830574 505875236 791838373 675562896 579697001 223995452 861277459 586116613 979203783 718006531 95583518 379244728 80665253 693446139 818121325 795580653 718423941 578203813 220378122 363122388 776896315 436913421 451837826 817962477 332409348 366829227 458998985 942797921 607314131 58664775 143162062 526928700 770143726 982963173 526044128 807491961 910679587 467481094 974871221 51774997 683074860 436943247 726614017 359281736 792920059 595168240 636754332 273543585 700783986 299203910 657818179 969019337 856576998 974888080 158466006 749183084 62155462 378322558 525878670 585831393 937468066 207539511 12376285 359319684 882776572 907465102 618177782 927703752 874016597 700242345 741150811 73179866 447650455 386888368 811869398 128906003 986143607 940167520 536807616 839514954 542298915 271448835 654156928 62835331 226283190 357306312 677036595 817908608 806138352 524016870 964684354 24786662 944438764 513797893 65302672 760322338 238014392 519056967 138548635 834635183 822528307 344017573 858754236 298068289 487040563 880851129 569745879 591388863 216202437 349831443 333519510 945673109 317638338 774473979 74913904 94705907 555991727 261128638 334223215 381720855 486268118 174375882 967508235 796125479 197714061 107749477 436872980 381404679 484644838 711343114 284916043 605185601 141690002 596156164 763926801 62812569 666998563 883525519 333211657 268478842 863698487 495387196 561740874 699802588 683193779 790110342 520716097 265182952 762113654 859695819 301658474 357366958 342689803 836138449 984448163 446639660 174885112 893409738 602922439 243142936 502106626 222416302 411343973 128142437 577265902 625753217 924306710 129380228 397995735 935349876 438430345 969354066 990537205 87977340 628912096 443400556 406505506 566139724 439546308 920641151 530674773 864267619 78513119 451980843 813573300 390340193 160926454 771629629 224275857 857859675 928392198 754186080 228750315 917932412 809764895 821089654 424351891 566453424 4517341 325895483 692458124 939322361 716660434 562465570 284267615 341184691 393124989 576824984 103058719 342432165 819151644 709830665 514037518 655788365 342905893 274598446 419688259 597168929 842378346 433691865 67299048 76886339 326191775 49345253 652521618 518853074 801497821 832606607 132786861 689947285 951202758 14937011 713993436 393197969 14504854 790021614 891465186 322082317 387529523 346707273 677666834 472228862 73574779 557901336 652919434 663453088 660289486 281144890 998995742 535986369 821829254 929602707 965779692 902624584 699771823 812081002 870339184 473623300 227556960 650981762 23343552 422972431 401938587 726343817 291027977 568472369 342084102 452913455 313922750 963819258 270309012 945874466 476540890 102498489 891190208 336010338 824924042 277403290 553504180 966077160 339519995 280151946 825226302 267867171 958473225 325106355 197678260 25552469 138586695 946329056 308593646 238294932 593672868 760989883 737458714 69818590 381961646 596030355 935305383 425169634 696762479 389818339 33387943 28227598 118320229 414312705 294452355 445567486 445692570 809372887 762519500 771188642 222769128 801011046 858659578 769244797 275084588 250641146 668457421 670818297 887309078 693922635 414886278 738430198 10451872 173411151 70069607 447346507 644448805 510757533 830521888 584393879 719946644 723950947 842924709 529962208 779578183 461849237 798349359 826214679 96805721 498492697 502879707 72114393 305940417 925065034 807339833 844804490 185157079 880597864 322706169 40241648 89037566 42574393 830100558 49679313 255846543 473227501 815120516 897847380 863393817 978921739 43343704 463962103 563325549 736849258 804951185 519871687 925373246 762875654 971310751 794825151 626783510 609751520 216920410 725103320 210233722 705067836 851656126 62972948 122493588 629515464 237415109 238105765 815897056 418980765 514731301 442572969 660664704 386289658 105903839 122219412 456029928 44006089 366029956 369779557 284691270 462546467 687467635 762255471 938719055 50521945 729669069 982137354 673946406 329644854 165384292 964920390 578340200 216866280 886622529 111403566 27264862 456357277 953774882 658716589 313939713 235889343 333088919 233696918 12929101 978750907 534897915 875467891 874859414 818940825 897485723 768941553 691411045 717981444 25734156 621856607 553723072 908165024 860171389 54398582 133901010 974911558 260247736 216234384 237668790 902621047 984451029 855511939 922228508 505719416 663259256 636602397 541040051 329942445 28247789 816476248 715839293 761008186 865452771 670412726 294658980 84930077 268949769 33796534 416912712 649261343 613944340 366632285 492693993 484142726 464284713 390366825 308888299 640338524 532332157 640768503 763560935 611178350 802162566 53880184 830273255 758481802 589276781 402077107 927995565 77993055 247398816 432210923 223495480 829128051 440280895 444252089 798410658 481160865 126596437 383501923 183324500 268460325 713803014 207330341 960178951 357050090 211607826 943892042 840435546 269977511 64441015 465075380 916120931 4104792 569250353 896379346 600700033 373441191 13040959 771789462 596802150 115275110 846056758 804258024 66084857 449894624 317978401 997148212 855243789 228679387 692597111 850123851 97983629 357090842 683217778 545601262 949376583 42654544 449963337 518311283 495781356 153763735 462556011 645590690 706183118 821830644 490927435 79966881 779766105 447614421 133083023 161791619 412681917 308852228 900192641 78400296 481902022 601437901 969472794 109434625 409686801 697721558 364878634 799801520 976417442 82329022 803934891 68434186 607528208 7360514 531225171 922200871 634636534 411977722 135827340 273562010 897427580 947264964 150314673 836113490 699415367 812167074 515699467 129488523 848609711 653758119 280527154 488878959 324198983 350247664 748375171 604204504 600698861 789025021 56767124 445192596 963988428 465466402 675661293 663105815 986616616 550447128 864805130 434752228 488482836 446698420 917560986 274530936 575371402 420912662 33368710 862340601 356035312 555817223 345237974 245265301 980546715 417641815 31383163 414392439 196696171 324692275 765780742 657661894 108410546 10237940 236210296 18868019 858938708 882156780 370320506 137722924 938984085 296872154 386198952 314763233 378495311 921531322 590100769 210322003 309742537 20545775 767413013 531359559 886215596 239175825 261738653 803403709 611462437 291626262 789540863 151738449 373923294 366011833 834868320 213383502 966282969 878860541 241180842 623523014 450332185 613351004 639820425 466532983 356840608 468146271 614875942 985866179 90416162 375436222 425224460 799960272 649618306 973792162 822455251 591801363 903461320 427776401 897691354 757204963 318237424 463044733 480671126 263287842 334082538 304652044 842586913 154306620 484687864 176207600 577746926 438224974 114582458 932753751 115739924 529496556 876463723 933533277 192695106 767380118 82469371 494353323 11271524 408579066 245654805 545578633 261443204 627383222 216893593 844517497 851516151 866502134 626655594 703839235 535307950 321676943 951013588 478898104 581683945 849489591 980647555 63621977 392457337 748393270 214282958 528735708 604109886 943022131 151952311 972531253 648895196 738576540 963763743 867674828 365259218 43154859 751461526 827212202 663638927 378749908 332775674 851400063 763415825 697077036 431127807 668722520 490134344 795508959 759490791 760729471 944008755 877189190 313852112 332560001 410430561 827436218 539930282 996303991 338168113 335496417 614545967 651714451 140356980 183614897 2844093 81629729 594732748 748863826 442305155 490967801 628834407 421933068 661925154 683037582 112941642 449544812 882219878 992812965 747138390 941276060 936864736 11582877 965530729 531335902 240499104 927745441 565796162 787901844 870217579 156721767 333465185 755423486 142844521 308966690 206786633 147300116 77905898 91529398 699669307 636832433 178099148 780198173 350911064 971030116 365170366 253708198 718106842 8854706 951703691 590343048 273744261 985897713 437348046 93837956 209621221 267662802 13993316 913999139 697073386 798266855 506342848 632942859 829069202 662619432 941399843 964087209 436606754 388639102 87686624 660725861 814828597 681172231 823625531 19374963 605401102 751259263 433438005 429708084 451318623 2597290 713971550 277383773 226994639 502774222 317844184 285766056 866825955 671180269 251263683 935578768 68675942 601606480 204327355 397542829 924922269 467083205 589832024 853661988 892831767 304835254 177985506 553583131 667987959 834533142 873196434 982291600 875953528 864490738 641273138 511222881 5811319 998081798 414612856 758693657 387133605 992299762 785744180 76560103 197377025 938285942 581029317 345160373 236408674 413299517 165848047 143282133 890269216 497381327 481977265 302248239 398021618 176769784 63624567 440851361 908352477 67340819 328142842 553408813 187908746 688953209 288477465 441459805 99526509 137320307 879451721 870919439 423927358 393383183 858757043 805465961 788294761 837789223 482318456 369148204 701473777 114273907 665000916 592590158 400110099 300504353 640807180 35956172 224705925 144768732 573507257 608883370 530963079 694244656 812945858 929034534 271390699 553975609 118226826 961207404 189743268 175372914 506881135 62618926 336105381 702833273 626141971 25875698 700500936 810263760 414785521 776207095 5885035 323189677 46635712 683286237 341168927 632899837 244916064 664683963 773431875 626595021 130954000 84914260 706984649 271304608 413733758 514719885 333863393 819419497 903158070 868107269 59785411 883945864 124021396 109786315 467146853 607022556 121611002 697981874 469514188 938399700 426321606 418906745 942419765 177211403 630723715 393722293 574252774 971285003 582552693 146001696 635205720 39813018 916186295 22673220 287247673 210350024 651742882 900482004 449628993 140692292 572835571 259601118 808788488 537514076 96685280 987778956 899538892 839916310 204740710 91280574 634449958 736519447 748139522 27799395 711326519 420487543 822991949 332842029 803007145 581750909 946459463 89806252 754259835 452754168 471927338 461956081 139241082 17637302 417731515 236269024 587995693 696101351 320151937 643212081 534367677 937145246 779636091 373572204 2098614 709811358 957535498 549193105 107757182 237077602 352017592 792380948 924312318 828638366 492529474 500746541 76293734 915665542 828184726 382157355 613752422 345729257 66458324 169053518 403456533 854744068 564608604 572859459 779232820 96285001 75762436 90252885 688124049 797004385 64485396 480051703 129393973 333104076 457653776 146510185 532927071 668669402 789401033 318919765 284749648 903979555 739715956 676621320 193411043 268388779 897900517 468330780 432738763 854487520 257378293 384182977 256408176 862489381 606520248 45666260 405192292 454387340 953624166 227431985 996940479 772962302 435011599 430799077 833641548 436907904 878392647 596661059 245083864 309123642 939875905 192399493 205989732 140445137 503563624 483366590 416655424 34870255 442037753 157319396 590055689 299715057 329861254 78858658 511024359 929213107 265420533 488232524 673406811 813585734 64933498 576559637 568901100 13951717 188930080 260383565 331295546 636904860 976704310 97729436 313132553 702146492 650577399 106792530 205430956 358676389 226347634 623802697 106785106 563370653 998608720 495474363 627253921 950900644 415505501 311555424 829465660 432859400 182076618 116527015 579974625 491893892 736913494 852661093 132664196 487269820 527292261 459758514 29927901 952946632 112337111 491593192 293308008 647966796 594894997 183262548 805982814 46824215 258089085 501550907 528151033 697470084 593532925 508759761 195180395 895184026 382923329 449694231 277402871 751425412 496732563 299012570 174913844 355862692 205007449 181785178 764011427 3618400 755707150 635020414 191438471 172815684 801189625 807853103 626560242 922219982 3404790 548978292 975114262 990068446 700305081 347992007 410898459 172063396 183508020 110398067 93051559 217224226 43819704 266425092 499098921 729951724 345381735 353169709 575905874 220235078 45468096 333991004 371490099 320231848 614647296 329710069 101759196 262504474 50604847 366552038 691359973 198543796 776187685 744996515 426687872 388401326 715821610 150057077 669717835 369253837 957249407 657078869 399319123 411989018 876108269 180795802 602159268 40649071 450566705 566460861 74301311 438295578 883932905 979127732 712003604 264537801 811576393 853123346 810145824 669238386 776241967 291222309 564899114 547415090 816884249 528314262 185305852 460956706 216710585 151513207 350543283 340422159 702878985 860015572 340221475 169922213 93913469 33924057 852496964 943220558 496031985 623172857 965473012 255952686 240222390 633513628 307824701 954496524 459728742 885052659 175762636 568001320 856917903 814940336 836244490 416580058 189949357 997267436 457080830 639670153 749606819 951066186 421928838 764455449 366432254 391969825 240516290 152137645 664578691 589299079 620038205 239329097 517544423 793727124 256419669 275143893 631482508 395437810 529721357 27927365 362131984 776004479 311088240 84040571 256232920 852919448 339819642 591100152 761603647 863859334 510265556 335935549 64106551 187184258 79727485 133943384 25863898 784843846 841627291 938785918 174603193 621892067 925760187 36744146 666233103 697571224 919029507 931526806 497942286 814697449 2758745 105619678 209936018 52983666 821087285 404475784 52473045 14645814 389115624 532178744 423885959 671623167 628669244 109119220 760114574 971889609 915839992 537337534 929581974 310625708 935394625 759850798 316730492 169050952 190958771 792954425 469616906 732882049 180606202 289962512 411813507 991402782 350403150 289814393 385521107 332920705 82748723 707949852 65604549 146405938 225298663 51654447 281289880 800546499 852885468 821579924 841633873 854382469 60353016 477880692 801678578 149738552 261019094 799159661 264645639 885426923 101241152 130506342 845029554 183386206 644646941 229125581 708215559 927315402 286004710 422427182 64200782 327470483 10184081 526480950 470347789 569357916 618497005 583556946 873477671 643825567 322410216 230484390 170715268 58179035 392913028 653371285 834347369 736866980 708448070 46443417 15878657 268824254 780674230 669665085 459994877 287433175 921664323 338374818 899862850 420483120 359337943 769099283 857284267 897629605 308484413 120368315 441360155 586262760 359530095 632572059 250861888 973476454 153955949 108603256 644869182 10163511 828385686 830041614 847153933 867827053 327501471 581739004 120407474 797427276 995879593 333634803 673158018 422504607 409436867 20518226 217598018 701474421 51507256 108317362 632814284 539656588 288265220 381254716 828983211 550241054 608284516 539356062 635088140 841923825 235674860 456473329 201919749 289668220 142695172 917449080 578930807 480406118 70151243 199974606 150928374 62281888 296402192 127598953 906233091 422456613 780047251 676984595 842141164 413038389 496981943 969953618 78061626 363476774 348876561 374853124 101627536 469672041 630520181 123951852 323029100 933450718 772813733 765671460 79535143 661969173 531180785 403728797 162512879 175649030 51949031 534957056 479021147 311250060 862557212 187502633 272567938 676930504 656073368 228969710 733139465 422057248 88074887 131143136 341819563 511474139 300147260 133459698 109961769 685616081 203330813 510781634 412063727 202909343 908514390 194861394 749938377 727362571 46093256 88824880 142478163 999385203 697355205 673613338 605217455 27890967 236466714 90339369 790239851 235692584 807792764 756334460 335159224 401143470 328286093 420447232 502800881 472465162 278206132 305124848 670242122 412841907 902705539 128214561 58173634 924284356 819033548 468914862 177945004 719498548 880788003 609571924 462700333 657893244 913243365 50906741 536902793 415113060 264372953 312419676 593545205 69704334 753801189 596715793 437785133 905114932 60871265 877529236 762226768 50101931 193250682 660489725 978756815 635219048 862481323 107415029 382841386 712812442 960333229 599154221 536143618 771503795 443030094 194674088 661724106 306086054 714227622 366578265 72234510 973755651 586009126 376817660 600227181 884489114 9905837 250963292 947839855 473370725 775431406 59258742 283299700 802264530 137307857 632496954 687653853 747246980 905353397 85133257 140326903 51611418 348072737 74298499 776934729 524448363 195982702 589625598 343404434 477950406 837544674 460704055 158280047 795741013 652371663 585419013 481411263 669084926 379799392 717072048 611864891 900363844 923587036 63759975 845663023 709800749 73074380 296738223 235953018 330860186 114147717 860805897 976268819 654916959 801713684 619452189 525658975 120344027 110778625 682295459 377536774 839769435 819533763 180014259 999398527 721401739 365408156 265129318 40812836 789616567 771445528 177412783 683550111 4971945 24817168 591326382 237293544 602910261 866992014 41903400 480734046 901817967 352625598 743554011 235237559 98408429 884062461 15139580 949925786 546030260 764184319 879821269 338079399 366304067 188605418 625717634 481052277 529168471 57844446 985065800 181390690 286265139 567134382 314115506 873457461 927334359 204113482 915637321 520863 426734240 303638524 668465529 454930378 931403222 629404856 496624891 961466389 19454125 933502999 386313671 328977060 624479662 9036651 754408719 913670177 57046907 548361094 92173152 837846172 883475774 253626100 868780802 20324350 387270928 161610204 199426328 630473993 152450204 442582366 979324827 267760765 907403964 864657951 857712300 784923877 206924456 753255528 502012792 435695198 409494199 654362538 267858150 634817341 521585754 356233019 719616891 569013914 981172097 846294280 274048499 567107087 928397786 383451110 769022119 421883462 225965284 178554216 736353095 354035285 630603654 128374703 192148872 576894993 499120321 934982775 745730063 50246738 62676051 969133573 225054204 806859548 80013898 993410396 626540350 727641399 143637316 737870476 770322534 736621145 175409260 712961108 355785933 69600302 283486179 913478899 473840594 582141389 187794016 494661953 915364887 960268244 43301583 994384688 821085445 356290693 408985125 60063282 175321273 171074814 814032354 378938036 939938402 478080132 170137920 887756905 33354198 301872648 792342926 432368303 195954589 334174750 354748950 522295403 971308332 541903313 677994673 193571376 285166022 66387732 112843411 67517414 941148829 554002917 855691955 395808191 502750624 960503177 699016305 748055363 87779540 324469282 573190178 218250894 762898708 431334262 144090176 760191978 922949599 953354767 483080345 404345582 300505237 677562313 317733658 606684980 226571501 350680807 547973078 90329709 535783409 637847672 462032076 49137065 707092302 158995211 506814620 143386026 271625802 834165823 115320857 378499887 645528686 140891436 933350741 393575829 194014518 292669393 367953290 6773405 65476628 61721335 107719923 928910765 488125057 850743945 47239002 393281177 603663989 819265556 141879235 39899878 496617092 542082483 35959751 331922245 346706121 951970340 725281415 708742093 202925019 721188377 134027057 218297949 578466880 945355236 982413871 291329538 308610054 441351275 237459971 562317023 853234229 264876886 274434563 961429644 990064722 775381016 910418814 742156313 930605326 618758733 783775642 881362595 859444752 392342903 702461678 686919011 297256227 986743410 628513711 301050427 423993614 139159259 467719955 860488157 614877736 269024425 138222177 516876845 683630860 936407405 189366713 795287933 508153205 175882595 318286971 668931937 281988980 314484068 700836359 795175952 780487720 535992125 449558805 242548427 899212159 631193757 845275566 283718562 998153169 52699053 220959161 249283348 509790266 959966516 370584661 298946761 494154173 216872203 734548004 602829315 136867982 526724448 891845202 683072858 622060211 594355701 815012997 710530904 78959620 459834489 386978765 987350832 590471104 748562278 361895313 807863454 35975778 818358596 396563937 136059542 842525368 947553448 773587944 261797620 163037818 667536235 925196069 608695309 816851691 512391436 32707975 487646735 427107527 881839220 198737099 438335400 358095278 659044550 444017064 114083207 273788071 480312940 609979446 521615362 196630488 379887149 901530396 29038602 603013163 299670301 702665789 973987882 190977536 643334722 307800782 281828639 793621393 198133903 578472660 611436824 488182988 669372735 592864270 846600315 245398309 214709664 735386935 69325246 508766141 550551009 45703563 608493108 827567157 541111403 996111372 216544333 538290609 478122928 189506129 993150480 820369882 251670403 695804124 56121349 159278386 377389601 463271953 112317919 534987847 444897056 698636058 732525534 494166191 711060600 876158790 337057060 815212197 190178985 983178093 75281595 570582076 253893506 517902117 391128825 185440130 558222323 36874325 554963107 848470564 742663213 669821078 131733448 573952477 659930108 848956183 475688930 869209807 670996234 368233002 334206184 787018775 727635679 207912241 205016434 933186834 918354937 564725109 180827912 671080410 866644804 717785808 598588018 833503538 556719910 726659495 976969912 383617872 725285815 795568873 817748325 821657065 532438354 1754524 30558123 263605145 92118480 121275189 249812392 220402564 83753830 728189667 22244847 941150862 289948801 604329070 426439261 754412535 725656360 785487610 580676186 336396954 765157920 400184953 166653525 726205462 376414697 578498485 678318019 909435071 378881731 802060328 531176272 138578118 801772034 215482788 199076395 79972254 157583054 135644629 582151567 181680935 650772618 999251518 948638866 194626299 843602212 292381521 596909767 803989667 6950524 927274188 130053958 357037154 556109999 889501104 967808396 498476372 482629515 968571081 812749437 297224016 302328867 175611055 342815830 562294388 616712298 122516294 155440710 579833292 473699374 780079611 795107046 346294839 645191186 908438995 57224997 653626049 163289787 79450528 706220016 249022255 124269107 508409407 740318236 589124122 963979796 176055627 979844242 293130748 341890924 485424299 362265157 366975051 76798230 829864012 981816632 735800967 946267280 263538221 544641217 975076867 607967729 177081171 435688953 45982734 553437611 534867251 671833319 1530466 400790171 515812570 740729936 364129171 16652189 866846173 435923919 44164452 90989163 62319712 573862794 207771650 546455868 820042454 929556818 382070685 889549931 88376272 77136177 722553955 889992241 214037542 502639933 750299658 10753856 723114564 630814683 215950126 600706310 83036417 728375834 182686211 574853776 95586538 399347352 387980961 361783518 388180181 127650457 764626933 271877328 203079497 5417817 114228922 852519914 292141227 969086013 749595495 523928777 200644720 123547662 715781357 386875473 995530745 922567841 759538980 206951142 946162576 65292843 577017109 840036844 83259651 404806828 203762458 399880217 780043428 248108306 200164209 482380434 281726675 910719533 901550612 770085519 410851255 672654293 461404584 138042261 768312850 512576825 841575238 940950099 47397811 686479964 780516814 557513099 65005263 27826743 834915409 150179310 843408446 986905615 832640247 988725349 899371583 701472685 556002930 297277403 224621051 254109201 516963329 753322972 600985009 637200188 464785255 553617505 291211357 873453321 121925645 159408995 689978229 138870061 996009150 314175860 833107058 507332818 308043297 564513882 80362554 145424429 371706547 56058046 886456841 17161395 740585961 839386519 33718948 842537131 117436405 14554089 116911292 671336830 336914597 646294156 913422111 48052433 970386342 549782131 292215896 547957225 429805253 982668333 535932463 757044726 417689176 838148022 43795447 734686610 823510239 320521027 474753661 156804967 338484456 196660681 399972519 793868437 898995526 976574504 912644937 405142904 836855905 691002396 176440855 208108343 335113163 292696305 229797547 761752383 305587473 158670153 811641977 233199662 914829534 759736616 168646984 588122143 732765105 56012409 292682691 12903977 985178793 858963081 696860204 308950948 852694460 453532062 200480887 144309992 594233406 591246255 446158393 304865931 895713564 420073843 251054675 807304704 215614545 201542281 223106455 119044654 953034023 815232203 909801066 490214840 759090884 228225833 254787849 168535690 191711786 544011475 812911821 705919638 768594876 852131997 145580134 224564421 957878670 734671059 787913033 989952505 731574672 307248687 888911341 685491582 641026085 896110135 859935625 145305674 978084827 853467741 671324896 112867829 698264559 592362539 519214290 710850790 44562835 932212231 75040196 35401364 261719466 68142446 89372065 865920242 52894862 225466150 974082276 162688592 849628805 476675107 242886330 969603744 664060252 495407376 107449623 195966526 4640252 559069978 458598904 26512274 998123142 426240981 243551581 960573353 934686868 581444221 250802764 278348079 821988622 553151307 547559593 462977993 295188219 729666951 726235277 795422955 691628550 157368332 848865116 322107553 302220533 868607471 777273217 327321773 270903203 361237807 125036559 853937081 781755868 40968950 775538607 105357291 124324923 523735991 249905734 151655063 71109356 183665481 160681336 135557452 400136708 772843505 977583517 553187892 715811458 292459186 507824522 861811995 876687091 133042678 962029448 417404737 519632195 187562105 308189519 241005224 465088500 472769346 657268262 250818094 357131641 911865934 570733982 786760163 754674705 607627126 624110916 744305173 72697047 942722442 715874360 122234475 579835709 816659314 343736102 327868470 270865183 325365523 639465888 577074590 356712206 739063858 472916829 441905856 609656113 304598043 870074997 522086800 570568017 820902113 794210988 410330723 79687366 52927208 58010870 560459834 946241108 135578372 230928501 900821946 206883475 966086366 1590924 879939869 406160370 803037470 892505721 383071980 989229712 480765347 368400859 328664691 623355209 668345410 267472130 563073737 756328748 319328813 43378562 136942624 414983948 60769041 539937821 779940825 556747231 40010216 493552749 220138374 368647379 239490137 334121000 232965608 949017557 221640366 648343512 396977687 678054329 85771844 694779843 302002550 859553830 599832585 333229030 303809324 375436128 770698342 154064287 821458039 382658131 135717840 953692918 20778371 107479014 586924044 830614426 342077714 840518189 835379411 822508371 794754008 670873416 730160666 823646104 856114266 254360479 642509203 506183632 779161956 47982033 154762439 161993507 549336251 396193940 102435447 860844527 725377816 762190660 765986133 212098094 308373931 394384019 644803803 903091360 352358611 889251748 85678673 954702229 757987000 92811352 322878369 611164483 34063917 720236310 815797234 401157352 612602822 61299546 989325593 300591973 898773115 855506124 363861419 671638563 869069550 475121291 993877762 115549002 892565197 966185411 609478963 696436369 874567791 861798045 922758204 406086132 256105554 242025059 516219491 347257627 403476275 557490517 545745747 871457283 301966641 266905558 454817998 396162308 241599404 466242455 209413057 226260617 171058049 134275544 286763890 862978789 233140098 764446055 608706023 482757996 317521965 793348808 439686263 708711246 315274858 899247678 606320124 22022718 226599540 821612390 274126983 478604515 210281342 948438591 172137991 786782142 346565893 7151383 434182504 448713421 859033082 890900013 321900721 735998439 330252481 293999924 992955533 633647605 29333361 697945804 721625622 592564883 34829015 645299125 792536250 999870768 539474137 234143461 507768837 434824845 313948921 585550885 380469119 898874151 986143701 596175964 375138020 241789743 825565820 163192230 893290993 209713580 491231787 56387750 527473260 15292479 17724918 132250835 759303648 284855521 933860798 233927055 922039008 171133360 700128302 318329598 711249886 231475215 302751553 31886958 405729287 727568252 861889355 153939954 870609676 616290926 320221828 798814208 381312362 365028500 181982391 521343584 382881969 994479951 800601129 363082305 313953313 116055232 130255747 865266520 736932253 492494524 873394979 823002700 610662385 313377846 477883431 663050743 716981817 903547642 929512736 520626363 272101987 890386279 180114844 437468744 699989601 691579235 870227476 109183888 182336418 743124812 401358462 37375794 704138282 427431762 974804074 651764738 994539341 736020604 788623164 99656872 552575633 529126179 95863574 305724827 391683792 74893001 498862782 890468159 275803459 550995406 136600036 850465777 517577215 837814008 248530170 600017270 429021532 177363827 526261457 212837769 295185032 292527694 557764897 70979376 192585790 462916071 612744220 139704220 658224603 938148687 206405179 734064319 64766828 672576256 36834525 484472846 842365613 909992696 576451960 373241768 246251377 869887700 703091488 658476014 367480766 212155369 563066246 665377945 83134324 879335088 923627242 225690824 628032016 355179452 632351949 799279169 891404297 166411377 811402255 874584295 638749465 277125900 509254637 21103125 268979186 672466444 469353852 824067154 689607904 569663716 898933697 465637442 686602686 732306737 58808699 264337244 901723111 932430601 367756869 575570663 515647043 238421528 761524140 969795648 655004888 450439299 120037319 218944733 526320129 360137069 204118669 102088694 53478887 307164883 213462265 634579975 203644336 34025885 514955720 29317793 724704130 483790469 218450866 355787965 856113665 357943149 767754517 139270528 804687842 248276435 91863758 43162348 639735639 453414916 606106269 34341901 416527187 78115934 140164933 948623925 806862563 241112619 637551302 463132508 297683949 560444637 930620336 279144869 673347568 876595448 469906965 953847406 436266888 885113663 73872169 927498909 100747078 362205844 774260843 899476292 673067776 634400199 873890977 805844972 52055285 406702274 926459646 581190593 894871177 225955607 656220144 963194752 178749216 935242094 141371407 279356477 229136992 620269568 420939732 636157260 152087111 843007751 956804953 659930167 260817014 567340693 62905595 359637861 799016980 135985183 978468200 681193268 95715008 873787034 654331494 405774278 400862624 636952345 843691412 212339655 482704743 879128839 323589778 186361469 701228980 88222495 88052058 86075909 531641214 527053777 810754443 338754664 414376680 147295435 70114839 132647491 918588201 475655458 794215733 879340473 973396591 939291582 93536045 51277837 485951330 642257536 819572019 882582632 913697110 341224910 841958456 275662404 686107283 650086401 682682729 469653929 646614580 140075863 233428118 575354920 304857818 218453081 885235975 925975195 294109773 264342986 627387357 26052185 802026633 283643721 147284561 84176117 779987417 797685527 555998500 113100117 740940951 308897280 950821688 617176920 836677270 839011083 901195225 422345629 120386852 770045243 636222597 621645922 982139488 247348043 291721289 216002437 611839303 8045099 142375070 433591897 955686885 262157634 146847363 685669960 730069886 296123468 887747268 368425756 958005326 575543719 655209289 327055658 653335941 786822107 925832713 61455468 762476938 589507000 335193815 113102282 459909135 662780257 55966056 458625380 402561242 398991839 911855334 255607079 522249687 790615862 549265474 460143150 153606184 863523855 950991245 671272569 991732971 670937891 572645227 427561301 515674623 535149387 796203670 738584724 635469913 600456912 253834890 986514007 28557928 262253015 784048172 591872458 954440791 486008144 30598296 850571941 606930329 805966188 643876284 410768044 345922927 932804415 564922042 376136496 492188585 397468317 791027558 843682382 523328621 167335407 284443849 194745324 448763924 555576704 25912897 367243874 263855670 157526339 22402918 630987759 202643004 332475772 131322192 361585125 216666045 899590975 495398044 545401972 176452545 503488315 409341268 893515088 646812429 81043009 505893887 82700762 942662476 831556520 575475609 950301075 51803460 304622386 806912758 761778977 468263472 523194800 663491376 933335827 575485555 990334964 652336169 814631440 37525637 497574916 413268678 272241027 97158809 891925780 620210438 813303713 893914569 998818743 385370291 947650722 487639032 139365534 563920815 720361738 37132971 665949224 716538114 461141701 689300680 663907766 115894802 620652497 998801263 873705834 19307448 818457077 482095432 58311170 879219324 154831383 607788411 624872422 782655357 609066649 426182130 941695640 366334871 246939783 963271353 107070809 3357982 14028916 698569536 547044764 937816244 392615343 566115650 449563623 135803606 236130198 480090677 304124138 905104285 215953990 659603108 386981543 990086604 980668129 960980433 820873145 796262722 361662227 845145164 771180922 372446011 167974685 906625736 600160802 108735944 822156646 88124452 746454684 390577353 824211783 671415623 458243795 675828969 307805197 703533858 18043505 786173856 178978467 605006267 402588067 780843545 201964582 960360519 156692219 787546314 631987794 935020888 889387151 705264051 641650895 704726598 899318632 411459057 684856804 462382837 686104494 132439263 192583377 785485558 285772422 656031798 832662064 168613293 516077328 603997718 874558746 206365221 274115293 57525997 932074355 660587634 356505292 356565927 717545542 757470552 394658377 416763057 713568676 390362985 251473416 982186349 883216104 494915600 555659322 3998482 965232958 602536024 124140953 187593183 847071046 471443871 294752097 721217143 167964687 349013310 51037483 949030594 767143269 603683315 555337123 399225901 29858172 796168475 478368557 827654463 635307950 226730637 861884039 876620950 517037625 80335933 953706092 378909954 913093619 675039064 922021592 580446875 140358509 439882726 807025238 179613059 400126406 340790639 57174411 366421600 835583984 419612744 775908016 351030573 839099967 995645932 490779111 602776593 821293562 651214596 452532821 18481153 432352947 467614119 343884235 524365407 604747851 100289146 968949967 709142903 140215982 46423180 662338512 962471866 616367204 472546314 641054657 207263721 336060236 534366500 264466208 186410721 597655735 732343269 952347557 399801584 223043639 479293969 323311384 552291443 869824458 619225200 255469796 972455296 347399143 669907128 661262636 762858591 214629032 613291394 214959189 114942604 165421152 579537357 622568639 566283659 498473057 65547396 898972128 241421670 39702442 1757 765755813 179990849 640821300 322310732 428818135 869725410 550655009 94483704 163369752 911432766 293966393 223494427 912656903 748908217 501795704 725436937 165214713 986211960 948437287 615012772 397757178 425765929 56385516 929365761 384222149 111514630 113320842 5786624 245809801 73035270 801502587 723183752 449059327 430062290 325326593 988830157 750140381 550067841 347682889 867159640 965018273 230872886 202383746 161256769 532838599 380378384 173532798 736179948 306054351 584919705 767925651 573450008 291688277 420289946 90856493 978873578 18930915 273618280 38366159 227591447 711067898 777502766 236530141 247762355 684296943 325377028 477407027 61362865 394241379 944450802 29192953 509299570 550153883 333670257 116476926 532973682 796505134 952162117 287630837 3008403 372410787 108920491 466517035 151894951 342078526 524069904 902802830 214605400 829783634 811419439 323098980 785131662 59848455 417030434 888497029 555514783 502323621 177898267 661513540 730644807 609790586 328038521 731868774 922154801 296846190 19309009 761711795 877353832 508939984 363231109 839607698 849331550 445029915 246134113 375456307 866650713 839858043 387887976 491065253 311130326 78290629 803271173 588139252 56445917 468436298 331968591 684279679 971063346 894569745 239863892 349554434 246685508 103809425 792833453 575944968 61784272 513446462 710090052 56248071 123979433 253703882 110551938 960091969 299796269 113305638 700258374 253626313 885008084 780978693 830021799 826507218 712600652 860500150 578879396 3709312 685388135 992391974 335368850 855109021 901500538 789237298 301295603 78209366 837870080 897257515 37846070 885301432 639709770 946381250 528389136 959113572 640997307 172111910 672243373 895525563 72855557 28796320 214756243 601536752 734477344 143758382 40693137 604566044 648911923 993432075 336444804 666662828 270496033 533740113 243630301 371102940 145720780 990917065 161178204 255788708 533437046 707516481 3532491 84980236 386526636 861681463 574805957 1519628 741386148 159935724 342939358 744717203 713320658 442056585 677592536 945485304 517516846 877500620 903857498 176278333 476359530 546433279 186929660 997415266 926724128 208952671 768795760 872806615 734086787 369091660 406521210 911794695 107072504 984460579 289042809 78274098 248699470 221862477 466600305 433512429 825073664 741832406 218433434 64175938 583071919 339321859 172615706 620665000 131631049 29082609 788411941 566160008 676147990 396946779 502421165 550030084 911975148 361879119 923729107 852930687 459532454 256479217 339476159 809717099 894279057 538057061 399678882 714197236 554464082 364198773 745241044 991734258 930636974 761135705 593600797 811817276 547597957 654435055 72056309 94963766 891196806 298747531 654968429 574040988 617541815 387215559 504204315 105979805 471328188 208297088 364746281 453390834 4226982 104868709 343396608 265803880 199779668 518833098 157011787 613179342 4746620 746818862 339656238 510814644 613493541 111772965 760968186 366968047 758996393 517963714 245134447 837650123 795726485 917623821 575149702 280798805 217759627 878558447 412689030 830949354 427107626 271507356 867104647 598056774 978761374 510563227 518258892 552317134 493078423 256450647 877998483 874739055 631554561 275273471 701636787 377471207 595892064 338522588 437956863 47428881 485678711 718941060 638535765 320466338 134307328 543062571 939420752 445505877 438090112 940111156 289274570 54182524 998633269 833157806 99587235 60834385 849253181 755354064 448244593 55413773 24261457 935419047 787779206 730366184 521292322 43305144 750888312 464431084 170220908 664672600 266206070 273524470 11540950 467790 986903252 812680739 342653300 665951859 589237717 733168424 742515952 91372122 551779651 713044388 232780421 821145014 571861071 862759185 365892549 159789032 117341626 941642691 588460941 111025889 950072115 997201817 707944602 985045718 959348012 605478340 342170375 725614835 228259825 310271334 116217259 573505339 379485535 448180638 759438260 501119833 678093466 66949356 69947573 498754080 770945032 926480964 251697152 184914484 818241834 926635592 686342930 447320734 919120166 729635250 321231170 803689476 815376258 11299605 63279908 710815122 457871416 994516978 230779147 788526846 797124931 361665044 135957563 618944901 835825196 914382046 811547261 268353287 73103378 348039503 783783277 55954694 338063056 619667665 611000471 121903066 960522105 173236789 127635488 108764805 39807741 531773480 591025699 983337873 637525987 86467034 10904703 790650325 510389545 180241511 455039450 914498789 924256296 251617040 247986181 936202606 13497090 496229363 333416045 521248608 739337311 122217716 977674175 904967290 248826632 606302581 557155813 612386983 8020322 88720422 743714623 723104416 104307965 350208485 169280735 657643654 75146465 866875644 923447369 153991018 208664955 648415460 468688447 442985616 514278265 704879597 980933901 815687110 588602433 985186534 458496863 304577905 9031049 798263951 829110932 72335465 670971304 448297837 556297864 786406851 20447189 402127881 841856316 869617322 441640449 464691185 831486870 306957535 601844901 612638520 299786361 126080946 553262551 363771283 999269308 943086649 759451604 374372641 674618726 785682815 346633987 756498492 215118438 255045371 387074313 142325921 199713596 101008133 660450659 553804899 534074225 138964627 737210023 986738959 633695540 300491667 253209067 621811493 893214633 857921824 486392330 173834740 856352863 92557371 225720144 271178350 961008650 256443765 394639973 957068596 387152095 130719652 266071910 693825536 33745613 963094837 314590810 515862702 396495552 469705876 240195870 794428732 682650841 148953850 282906354 161250608 706288355 238967399 618564262 366768932 173310116 262807545 368138396 161821545 267256457 950480992 28125297 557040336 226541470 846572428 550796721 895381665 807467915 432449005 219146192 874527536 573078807 118720381 493345374 87534675 532722440 725549763 906379897 137523456 519339142 943083119 475335636 19505065 307532713 137163904 108287380 498851505 931258297 13985059 605601743 575506436 633346550 913295512 594356553 759763333 864585140 438438947 548688696 219606590 108273088 125961773 229704404 746893817 239156887 942379985 725553234 315507995 853799324 52799500 974789878 909673073 137846186 459230670 122380979 22025856 66224109 383083121 827625657 359633382 418281280 373812505 658457393 11156457 156280933 69997831 863324598 156192898 614772311 78347558 924712210 834874206 85026738 813525986 369147398 502351422 612765328 996268811 225504188 129753767 837841867 855947127 571849793 291238605 43364998 535895830 303353812 793757485 182386638 88390930 925125318 537012383 699536116 8765728 35197655 594499387 401899148 455174000 977292875 262451976 758129142 714514924 674865600 565345040 582687100 3191513 493998489 92643935 940586565 78077704 546859943 362378837 886871844 699565600 345860418 709912042 172621652 430066366 136660223 279851735 564090066 241830337 984610171 219891982 578551491 223313492 850144141 554951703 281673563 811761024 234333022 3579247 261885564 566405842 543029766 910831517 29843141 48684483 878862375 168672879 53575920 467523388 612546814 206449423 667308725 409432463 235462311 356696163 406483527 82186789 586183647 959385079 817652794 194980247 195466519 315682699 792971748 891308639 564539156 152821829 807424455 782586447 977365204 181720844 755063748 887025963 308476279 933658741 24032654 399268887 564646580 960634900 342123674 10221581 232141298 47044279 385675401 358244939 110365832 70746271 151856643 844327719 615635917 836388002 107646317 973757590 416393881 360639655 247337390 162649244 646604159 215414127 635762119 768017768 657765526 728221332 414948344 122491589 791519226 242074442 86848439 348951837 733980117 369652786 787152208 601837205 385593431 726395203 538865313 120476515 733959972 351600443 888989702 936776859 108245435 751715942 126813672 980543025 470597723 378954704 971144107 464752216 945969016 770732055 535803411 374208407 258535105 439730683 255033113 578007106 853233101 137841803 48527759 691082519 116288838 881489090 835705458 866506966 74816939 364684765 521007662 933877756 221042331 714904360 446631988 365518715 988857105 821039555 666216391 509254982 917430784 226939291 72561176 249775939 596349790 837349186 108342617 343077917 223694845 272863384 648861394 993103888 657354992 588987463 457879664 283705210 892280759 682685472 50816505 720848432 649356975 814170456 973693720 315931670 39380783 112005180 340257801 128287209 306254285 448647469 778207018 16906869 915709708 533909595 340995605 678527574 109393488 793143368 847344218 996035730 645596814 163503831 157747848 744238040 653027662 438720576 180405374 390708169 655183274 87928630 904195038 522106295 255867213 177114566 728720406 134482834 267972438 296643870 7026088 800438615 714784925 49003269 900026648 328100535 340883176 153807555 594432641 763201653 551178694 387666426 436514979 278486737 363538890 333159870 218656196 168417975 677177946 855429747 139317078 821661733 511984442 767836151 469157766 396180466 86638242 280443002 849659324 555990897 150717299 324176800 746478756 668434268 367579585 810198440 564129724 238367043 264476997 662876440 655939561 66465610 79551171 168091778 17443152 766529301 132074625 468209762 29662689 623496157 126072873 684336012 133809783 98389980 638664290 167020993 431886794 340531509 69245777 121759945 47809097 478983955 568967820 981700768 482459602 145804688 553025344 685827236 287324901 451110914 118037722 320674625 475225988 480987634 983601167 231833101 571574235 938316058 516575959 956053218 152431785 915198622 764873671 390439599 196768036 417025205 571139723 368646386 72183559 5833714 294743536 286369232 56426285 770930018 429374216 784167053 903019290 399697263 308156486 555767601 381624589 780866940 853170110 985470015 169444726 86082147 344284722 318058469 572800612 992105885 874384396 563225433 170428896 599647734 648464185 524754442 595884883 539991200 490188476 198509153 693244308 693169137 490979385 193468673 666053698 968152126 403322386 612349454 387695701 812444261 330279720 910445739 574183628 332151760 77578204 668410877 854904589 782224624 262220043 366866696 448055096 956454030 660650973 729260488 190291075 735019664 699061396 794296945 496153038 886089981 225562586 938802364 86480458 422464000 297720944 729365666 974832715 821597107 483512559 251662082 856095469 579040289 843325981 255967744 517912760 199853176 608883688 545559917 392247778 20899076 524357202 474242115 781096132 39985843 821214146 268340132 647641539 367911180 113598371 388027170 485115182 604178216 105841691 589555469 774431975 547493168 126437471 714616370 894532649 237736491 122714176 960869686 928229318 422511640 179912358 759873871 687381588 930741499 708020282 401518825 660381616 463646234 833538444 665711255 957808691 170609306 15448700 686425201 7595179 651712414 770732388 341101143 723537262 288431035 634754595 15278925 307442479 899816451 227378010 554597428 912734668 643078625 444181495 307142389 409425567 493651991 214100464 647695979 594938709 475669208 316074618 236075773 719916064 391043986 557020378 594510194 893437298 919230608 627820566 445743010 576064523 174257594 972164776 743650060 757770256 435394930 307922710 92118552 829935765 934206064 620131288 407910252 204734131 275056880 116117580 741134590 392500214 892925185 703756216 957885565 650571968 893235595 884673863 512048848 350359674 651153543 375178394 617118637 810499967 559976610 922062590 46234105 24036981 277624738 558051500 868438322 714545945 977585888 152092018 46635218 647568733 66187307 850710536 268830064 744952649 719348330 426313986 985000758 448136699 248449178 586533036 886641631 991536365 260068538 994688508 857415707 252995154 3693548 55011584 929055647 578978208 233786986 600487206 537969340 678016693 820632195 636841777 818373574 966239841 635770546 192732817 902781780 856264676 232398142 202706614 419191765 586886157 548891028 945916653 547512107 444265800 703809013 841732393 360159434 29527918 659626086 571836669 398921423 682729500 609610672 574631557 300970108 450876409 866432707 168697677 259967485 360447475 969038942 830579125 103884180 973937628 621064210 318893058 794996831 810580837 832821718 139033 720991065 734811132 335164227 465548572 59631254 627157973 694438804 509701223 155749624 859242763 462228775 884397686 512911980 240851501 603688226 629025436 265215069 576689546 871310445 706290672 209629215 390695262 811169805 219615180 294807620 307129574 807799599 247168208 571155201 112709457 600440390 402341489 708167361 943214234 185916613 163568134 875848750 21502198 396180354 677114406 218495792 306552843 797569596 94012667 411472964 34606561 641663152 344655523 216764970 603672167 787364121 186906976 303954689 717590601 327400536 438720529 110167284 17936189 181441370 300006976 22584571 229186967 79759105 742853733 674020059 492091180 505184271 782298474 447698079 503127088 704086805 772737848 273805378 922623004 451898475 817218891 270266453 623757517 541928560 394696394 999954505 541267778 81085458 182698655 618389590 880544757 286765320 304812046 194938854 397483605 838953767 716537387 296900125 936717802 89430802 465755274 744038535 495349018 28261742 725337395 584473927 213492653 164147841 375856159 891443581 290166013 243265928 330879938 186131093 719881788 454841712 33500856 974071050 465676407 544394109 887753207 550849327 314858515 773826605 229721113 690813531 726388256 120463951 828613126 176219003 177315151 610932527 718080762 625127551 956372944 249164123 564212952 608324422 388172228 709926516 20097341 540263014 380255534 68414993 612304192 457295851 529302678 315944968 489020117 532169008 13600811 552827336 336014260 503561136 693683220 830353656 368124070 255722506 425048834 72306311 28479278 393539064 708890989 304128234 146644910 72217485 473598401 440766338 553229710 346288884 187097762 896497652 598963757 375294594 27166195 756870190 903157040 309885097 876684571 724275987 781531278 666683455 721800986 176643840 547361140 4296171 556054465 532532865 966839708 458191393 302046564 824734030 390090852 34126256 760304263 965725144 410080416 651648687 374473954 259102785 321588293 259464503 198642849 481783696 488250618 467208608 726370507 368641105 799557545 925440565 755038148 626625822 131891396 282984568 990634857 478346277 912194766 408852086 272230635 902117060 749810999 953034134 879431772 380135132 297094079 421702118 685129113 361104672 928366199 866430781 404685992 508313099 37598345 579094627 114605352 670584727 910427720 495254420 615609876 59670987 81434465 228604248 502232976 422521275 1903731 584292183 328833537 477796292 390297739 220919471 764701563 226970127 934725348 602691008 870501963 398838924 384832622 148461026 638699699 410688231 163601265 509077917 932536469 201667406 195369605 192350266 389880141 185065809 660679131 65443541 522288233 665145293 265029670 1991832 35123042 403910677 994081061 973212746 368985301 94417742 536577161 429988007 269042721 364044015 970005598 449817441 177674959 37891214 941363178 891754650 248992598 815882989 648152497 518809959 227830951 674503297 635224883 89801563 753943764 135258291 450444623 918242992 916032457 879110007 237485840 800671894 539938707 247714735 302398054 103273720 85677552 989592973 936852157 31946601 792714139 672142989 58789155 466413336 343744412 87968953 833642304 977050325 97217704 293276956 592419540 512289477 249856503 267636378 826120515 267911750 710599984 659837559 736059015 976651873 298353374 643884561 794907029 800093877 632280610 306463133 94290613 95316873 693352537 57236304 599934971 53528188 806459596 368309942 487464537 133634696 695486532 193854038 485150378 776019268 926120496 157690446 871847527 509739968 103918428 58526527 67622536 78461663 194499714 464996054 81306103 133103172 379792182 725107884 742035691 185115309 933523401 423028683 234891964 624921154 276615104 949298566 216360698 555274248 410592987 639361879 545672475 325219212 436604292 556069882 850818339 221393249 648689895 60175237 327846487 528753015 715806808 685360087 621716032 724016206 686018192 831291345 960772579 799451563 475533050 957483835 714723150 886480469 354078431 304530043 533208644 864406058 663400998 494450229 914089190 962956971 460698498 726114769 453966480 549803505 279388228 74462032 590833898 956607286 583263815 832845932 425878892 603548708 984610096 392881649 88253823 946800801 29408155 918620745 397358146 803713269 304111870 974887055 819731210 761668730 201138727 614794892 849971636 81780216 281406904 527466832 552016834 428832056 727037923 13070312 550516594 226274766 5917037 891450303 407808017 83417411 61079521 415672477 836991926 519517822 41314233 480158092 795129477 331137219 831234729 948954057 420047832 412880871 524430365 976145894 600644288 246287946 316528598 493404161 410703205 295695021 712799244 497604575 369541099 241592773 275038360 452889918 221720784 702942114 453378863 298281100 295209719 202177710 769000510 264359552 98125493 977020927 621985491 149651893 645473212 554045528 832453770 917617622 169515562 929507978 406242803 679744944 340702048 911357511 770677427 769897102 904343580 804100457 211187105 289582669 102046088 711715731 888593532 44850667 58338056 25129274 710570643 133211968 559444098 993902087 457373443 989918451 729292315 822694405 270078433 590806750 725952244 528209849 449294553 458052206 604850199 268075355 146974820 664788913 667310614 855842595 838202607 951570464 34981502 28199686 764667250 235777718 607047358 716049844 955316512 92336369 758319711 81322797 51862422 908736728 300281927 79150538 844728582 854185971 197140238 50112214 797683436 85660986 858852636 963768600 150723578 45720165 711440960 224966291 466227634 992193489 48227785 117521713 511113252 970052242 991306015 570688599 332316005 651961018 234993647 550448881 820330542 493810906 940527227 441065580 724592629 977402712 566132259 948696334 816533925 616404221 494531955 255918269 731768600 43465127 669744490 37533157 739741848 13627513 167309954 793085514 577252250 501855804 731374648 404269791 790023390 685040012 668101574 809821666 676384713 857448301 947048268 359715733 68383060 885544601 853249032 905327371 819473698 310282578 897616390 945788800 42742377 219566903 935087123 790749167 750008146 287459402 100419237 830553874 349439113 94969196 389017437 330499096 93482119 642255265 709810655 231078119 985594584 524541152 246295242 680018842 490398571 435473272 828011436 186027591 442248870 107790197 403966673 263592699 938633690 22979254 323201676 555283686 501628552 993203003 365413440 140076318 577753030 169836273 110919483 617545494 601305333 530415848 988956698 889311635 381991642 931199718 18843714 486977605 657379946 16752505 511118342 985958180 586365433 76258125 581769532 502194268 63158217 916455153 938843676 646945863 624547225 208623553 640548015 662376402 782016163 155452095 236651260 408518741 376618590 458228676 992106996 412644777 71765791 18252784 959192234 106302953 848568543 240805442 845134246 607160821 577476092 473618202 957923510 964549173 869321930 140817031 895916064 159778705 838402984 988570210 786987530 252290780 872860911 424667690 793725950 835878296 386192280 964681952 169631188 380283273 887789045 541354938 647582300 75979227 201114572 664120733 622652100 51456006 322694065 925821237 771487040 80216332 932279650 246358734 867856537 876367176 570087189 128221037 303500947 472813750 149846509 354786487 107676678 913671186 432554365 254316517 772438635 145664005 368399440 635963919 661095995 117569605 205791750 286482862 702498321 914571387 248759735 33436913 993598698 944658155 105575867 179796459 706358522 730696887 247139160 6287084 142277631 201001158 806958907 97135134 257408163 287028784 901261179 517699238 167822652 553758151 508541611 621767332 47922323 515958586 527448610 869235557 260915373 836593803 42934058 83177368 759970326 897859261 644282607 221745569 646252156 548105563 165792080 340155196 731912631 470672542 439712774 894626184 189737701 669365552 445377986 86655529 661733855 637090158 267393170 844600415 82000382 48606059 257973763 40361380 626476716 897954366 202335443 789245550 390494649 477174180 431468263 855201860 608145963 199633988 767475998 242714003 641493591 885698941 829006275 217173175 574868752 61487179 65716403 656495536 364058344 556761279 577300158 144027139 948898265 895906470 604510676 282528713 946116165 911251095 655304993 965407864 638263647 441896273 330895235 337039920 361611671 620802836 925856848 545827737 175591929 647705039 387386899 842370495 314687877 380948114 286841219 456884012 734861261 687918111 539838734 888299328 596068425 512897699 909048432 950878742 448788324 136709440 25981271 824144769 635348303 482835974 958320904 625446339 943368970 750171965 126924756 739229673 553774833 115359548 673342333 173864952 749235033 738132456 817227383 660181080 621830954 816799455 491392791 987953985 425800718 450979305 198064214 91772333 471301685 162699163 166099580 88501669 795741815 545582372 612605690 420897708 14127583 776745240 496461535 272055750 61737723 985444189 908631930 971886662 746426213 846145630 800682777 470033580 103225382 289008905 910750991 464055690 28850053 506581521 166503109 750724133 785052407 431934403 3888246 169006615 611279933 522369320 980069778 388620857 47935771 365173572 808746346 792735531 673674084 319245678 867066526 524458079 373251934 282057361 13064076 299062928 417147562 531593215 347130465 731323493 88648160 343841222 643136712 633651390 264481050 107206854 351048522 182369568 136205023 903982687 288757718 196111095 431421302 937242336 492630516 861545066 389944666 356549044 777734143 309269656 471828213 40124157 752202717 336688509 88260956 260780639 121793394 840683041 755496366 596196207 261520670 170541022 206603413 847449121 271648088 59581919 838352691 996826624 62533495 36256781 245740560 297106963 36363386 215210039 113239688 227474629 430105582 46462103 285352386 732428167 484204863 311209375 496467403 565718081 894587986 988736853 187460411 844112526 994750711 861050147 363160320 691415728 931774424 776566735 159475654 477619463 35578530 510352157 878829144 265388204 477942440 343830964 827511503 317870433 809191623 388165573 386326167 431976251 564080266 579125155 921843739 357658223 321372173 222729597 991225785 722249360 281885154 404157204 96461117 250787248 962605361 626804079 103193649 435094311 185642390 230222703 921515855 822086272 719238755 92788198 468696180 215040359 690732336 545828076 358183705 235530324 514738720 192129256 996986431 980113783 658658352 563901682 697876222 298097591 321800698 838174827 184722250 576800441 754321700 537016034 263154468 559868594 44565881 227849348 725362098 180958802 124073447 541739754 624938086 472131258 581977248 669956876 211233613 127772022 202120287 843507828 1995822 554744712 134442446 390749443 47702191 625544880 42961914 196463946 164422953 658948361 972953800 599292314 721177595 613020549 559095962 123786087 991272319 562958533 459587888 574294391 877925838 842796743 419119374 809316482 786912641 521957783 863296868 844223706 533801111 885346517 892896846 46573487 917382793 74068837 450477763 316157833 240224145 617681803 32338845 725418529 770822042 497586538 427918024 800290665 959246122 269747035 46738055 222664481 979919765 398442074 712839682 35437970 925829188 560270647 621165257 868416979 185145816 709301044 450581758 747416794 111569438 301323049 876039850 911488371 554952045 641493179 499310528 429004010 870355027 818772739 925535701 839886815 965155147 797298634 174443611 742904770 876029215 831423456 143723686 147127591 768126060 268946744 462818853 642554233 241935775 490235100 729293850 149431752 503622430 234097287 942681388 304863103 996350026 634237518 976161820 49305190 44827711 88267578 693438058 524079772 615370852 839669797 343397731 955081444 837285618 392408689 117131469 680449928 442484007 289885587 669766036 417060806 107819504 788021533 977275464 668823264 463893339 694246596 376146833 730228545 560826234 88896168 25810978 247913299 224496887 521973690 168244778 212500030 847222846 278997931 589990284 400227801 423255738 396239037 609754002 583364667 655882432 637416836 652736486 119221226 653663903 274372061 140478499 930771334 435181303 799109039 483081770 783239632 789205403 524255861 408674158 461967332 50136806 394569661 440071138 619686499 135001380 934800629 937359676 106275247 497836159 716529450 863978493 445331552 104206725 592551182 191690265 945746950 982838431 835355262 923443299 979156293 714279214 133411125 595297191 555379736 857155657 909585803 47785845 803465266 963494476 655188308 393465881 242325300 656993670 335395766 409843922 408899061 770175829 173099741 537789733 904479347 981919640 517281270 541646345 443143931 326703774 409641985 423189886 398325478 888064750 300694001 206081655 609161469 41483312 882681730 92204922 140296665 165112618 425446774 442382514 33638926 579073767 677569284 734339939 987768272 677440178 43878364 275179707 473414521 548162420 425841792 425839122 13908143 613027855 541466036 672697137 909965264 6770124 730424662 599330353 646039446 209541452 531859358 758939009 725526791 212231328 494755545 237507654 15546079 69430903 413361613 643808882 792083422 156893374 816574100 206889329 412061364 502048852 508509473 157596711 603648358 775123201 695337321 425197025 300768869 246621950 451374426 485477621 299225949 38880010 978721123 342692743 636664911 286295289 995789168 504834059 692842380 875351338 500455708 13453669 629778023 119948087 378963571 720881058 316993263 353022419 204612607 763902380 879263893 515585390 398410776 866665471 930437652 578248047 373478537 198969634 427151647 760249301 756679148 41906607 803739154 694579450 706146050 7566575 287837667 468153616 211234780 735647069 958954392 238206138 242937762 516108872 528911541 622245881 522048283 103905096 595380851 187383260 873704526 234377027 77940832 996950399 354646130 28275016 709474640 262405437 920375028 281982188 846386167 337749825 673472992 536475069 53998475 294349861 8414502 466182115 606212886 355200281 716992276 825516849 338164812 729912263 385164594 973127514 430792332 994275837 325736050 479055470 609428916 103148728 896748211 927505319 99787291 850352622 439949050 94138866 20853939 95758857 926886515 197157304 202067964 108637506 429738543 958105278 40092940 576687968 342597031 229883707 163911210 495862990 327395994 656933564 146821441 944836511 528981080 715658777 396415178 918250021 307495653 861857092 461155751 501475864 695875730 650305847 494673589 550248372 111863121 763679942 391588318 429658095 841599720 538526572 593361672 902563549 808911506 904964839 729588351 356315717 828533368 519769360 882188668 414486229 297284903 374555301 138117237 384956202 755800906 657468851 382577039 982229900 368052629 383932296 463394711 81963566 134005462 941786575 988981768 90778349 277164442 285724575 478293871 149433816 90437886 111059226 527603592 79060387 39094894 214053530 592377969 664775779 905120808 478158072 433258470 147052910 74989857 482881015 541892416 858794209 308605208 950370481 525660067 399147895 283725571 812688680 317378154 478693288 723382960 472043893 148063944 731777258 69538642 197184038 615417536 161685328 496237459 975166245 717710451 119732274 433169797 143749102 777242970 889375994 781241169 778295484 566477988 25719363 868621715 13220864 719067667 412571311 840450725 981141287 598421102 580409105 364875091 325222005 739981779 812026095 398831821 950964350 908926755 258065360 795628331 929669660 489290224 4535718 568562088 157963366 375314615 521163908 750875014 784491239 58312742 665985384 47028272 862773071 710223813 837296942 432741031 898733773 199780437 62630610 361972851 80028667 964667459 30632463 948846150 897601160 628596046 154397456 809112182 35614730 236994886 888323401 493780464 649361457 431444875 676512834 549425629 708140291 18562122 109312634 494733174 842308216 216953659 203638805 180376590 216199425 972703102 563414989 927352012 550094228 938928520 895888852 714242935 942719077 753859362 601944060 940098140 663817599 903863370 276688567 29713717 722976187 935967621 447086011 915420297 704540973 111949980 544782752 66399904 461252840 653218895 814455958 339575833 8997834 316242475 428408911 918903865 611779323 282939573 61619552 836961680 163470616 133025575 976152175 457696354 514550569 777211914 425768203 147947454 226688155 446228083 383980750 165744686 731886985 883920484 84757046 932204324 840218117 772949860 580022743 16529810 309599891 1237116 725204816 463957509 367656646 201444103 581044641 70108256 188337217 559091128 989905506 627791490 14206688 102104371 96283434 766284289 78360750 818800179 86070408 507763959 149681282 193184560 486723058 496310900 166245632 672304846 176308671 547644326 593815497 770875329 280849621 112538108 645077251 595795078 69281835 288541501 677250463 847168263 513879499 984424014 588340966 493202069 170012586 822487779 535602695 148465479 551834595 686610217 875277764 417920083 369951456 962538333 720142351 112691003 367861838 201262238 310701805 6537646 734532371 387655344 527918835 455847789 717331136 231219338 492456644 899847180 74826230 136437137 562743027 64079849 750434192 532638774 824114890 9597000 641231814 762283563 585925607 519860420 14562917 838781512 966789252 697959341 283778784 432857794 982934813 145364748 599007912 625338831 757434281 547297760 847545890 377959788 721944904 700793592 617166860 667938870 312661142 781074273 360940028 896228755 968154564 33381162 792874038 474867634 305695949 280519457 572791799 945024545 220524619 743861419 909791624 82250330 312773708 526028476 916313266 539520906 524824185 234998277 63894714 723022353 970057761 73529054 755987824 851210459 76149474 121426872 117029445 629626872 200194943 799431161 327910500 79077556 63004101 980900921 916597965 764297392 83880249 238329338 406161877 563631713 175311085 55174683 41709330 329467270 449739270 973962877 141798769 170762785 984979346 227439620 150002171 641070085 706645414 725951835 842098351 487094795 494899041 909561950 454070575 146168172 76556490 427551071 473867893 582044384 522290404 759475782 842276371 149568542 486023853 801405200 356035588 687159668 654640636 302702 638356010 267492751 270499113 724242536 115421567 200269025 758006824 436391954 105219469 454755472 468020363 349255848 770712880 163713716 377704307 753838455 205345549 715848386 497539485 588233633 997397774 485843277 320572715 598573523 47179336 934775870 684392606 408184301 735523231 189678152 75138302 488515402 981622422 268353506 529188601 565604104 764306058 275977032 438375193 436318283 229088709 210695076 247526824 145953501 993883203 662808413 476045117 425843592 953099831 23061206 962181779 743700481 56005832 59036550 938098963 684219888 741972213 486238367 698997902 762227583 365458613 723205332 810940009 75576476 170795746 458225290 226783389 771594301 840222086 800078543 945739380 810067705 818571665 306859628 102040113 969692640 414284694 262337555 666890527 139175203 582580368 759322030 309158937 385194517 407985907 872390051 517336192 203983652 199625660 187131780 850708014 692024901 607821769 174826808 584802550 450013951 281830613 416423694 232706149 343630281 631819104 160946596 360329443 754253363 559168177 901631083 654199133 14202464 885890848 663624560 844681544 28010221 862320157 665288090 784862003 779189511 513097679 632239413 594411778 257494413 963398686 645156992 339499884 215170172 498985700 206202349 578509090 342911181 214208229 951850433 511794336 800099558 989591868 251511374 882906667 84838537 202036982 962708057 59276342 635220093 295182873 885142007 334129287 920437341 567050005 525039773 513496707 784949642 445104865 583912183 520785640 872452098 431751428 321541839 179550816 393455281 833499417 450343943 596982314 726881122 351846721 569717277 81361416 597780297 180046912 772498124 294151001 387525167 665809891 484947371 920404566 219517139 96871877 308299776 68835143 612300723 38742118 722163606 626790077 359631156 25324526 721739890 935279133 209152895 212209763 348139418 160185762 919864676 367646461 442619497 430974522 952100952 287293516 591446761 609288052 630707309 923954592 659436238 651798451 332261668 716674526 716975455 742235399 371501066 466881913 462881406 410687743 390363134 917388746 187930778 118622659 984693926 814674789 550071718 977536993 471221248 363740659 448187376 285786172 931213508 643137848 93805111 680796677 742186016 638619229 890054331 994842766 342398694 55346039 431099652 354595890 167192947 537668498 875995281 732443880 354937844 59337734 157887526 20845839 714358875 443125390 692062783 939527467 793717387 531104970 432988739 492580071 958122156 818276801 725683408 685825656 287406452 841183012 341423606 570183952 534900975 745373324 465299625 272045262 718615305 896698037 223151633 428046271 391411984 654017469 58129019 855461075 40819643 431030901 705538864 399666008 25557708 170964994 249853712 937700901 73618587 512287782 530630067 919863270 542290149 886553674 150924651 50761526 976028619 761833931 130392006 744134747 498029794 603216168 306808115 861600596 193318559 778760345 339121809 956947219 649321686 800334580 527240965 97774993 923726253 58845619 302901691 290654996 503386772 109031598 325193627 891555424 613725905 500390812 434543491 932291989 982705986 502192027 881633299 867506075 20787876 92438722 949767647 457741601 789227401 83419995 446086288 540726130 803081746 373494840 873752846 916047642 935577849 598254167 743357604 85963160 138130569 428613581 711355825 328888505 392467806 172948412 208955516 822321125 688474056 210308773 435285682 545861523 350622221 401780645 295684277 959314459 479460349 179320577 870242822 543057059 751656023 746967691 894195944 443747366 24126528 540106178 533781760 55194545 877993052 155338678 888905806 148584362 344550943 256518681 496720810 652530359 364384547 969580810 90974018 135656598 219790346 149143906 942326370 122658770 246376579 168030370 934791400 850481311 660948895 628104076 904329023 45430959 639233058 101283445 204863830 486960768 80305006 760128710 415869406 450364400 64920232 605086619 642379960 925259365 227323823 646025306 34851041 20519225 857864 74603832 895115180 841177133 398422761 88567864 325205843 577246099 635389230 973740448 484610093 953842094 16327399 684926991 149957642 597491744 45205997 635747323 158932839 684790279 887122428 65829747 545035130 11021525 438528191 10110441 460093272 60006477 735466523 862703862 144268924 201552569 271968039 968094007 43116207 302471929 997486268 84114598 174387676 377321988 138065102 592628596 296043848 655811785 138280578 274074157 162660083 114893241 510338134 581613976 947977808 631290342 126526341 170200184 222664014 195102874 904346996 393084137 966939419 621752207 707699217 481843443 932956538 525682830 705558521 932578192 355429530 978318395 34552961 942128560 812582754 286923235 856215241 28633285 310891414 760258260 230263993 958328282 785340605 250577383 901625279 574564021 877220604 67938870 925471526 446610849 120942488 213099901 756656527 255398648 756478419 333026522 761525342 731067226 696116885 246490542 633910620 709259609 566964038 578600710 384418509 59118280 353418954 228011534 941988917 534028501 673100322 673887290 536490710 644896298 5532224 587788684 191155269 451911508 776786707 938118529 344115031 379788358 283701162 993517068 589567547 703214374 90265701 127820853 648619676 572233193 489266632 115605282 935172965 30212637 331198651 965679575 180751071 602136494 163070232 849138848 927778777 315886970 695904111 751637308 148247425 830730536 873098334 604725546 394522632 737912027 934137332 116170941 323303835 657783356 496606247 128744043 746883090 222738572 787319949 61641512 612660217 410132890 900132139 836035698 777593216 846748750 430928622 200470990 861086273 552900452 503311261 418429972 335684876 739679555 615183265 536007801 364464372 78622354 528251838 526550826 651746563 157634298 642334198 154541837 355655872 287003258 851631756 749688594 14223476 965381099 644436470 208512728 635585085 579165916 177195817 816448730 55596299 493324739 337743958 726472995 692219262 84318655 361156560 21897230 936711464 938178340 191952506 701562882 272849178 119224623 554067171 589102506 825300874 655898259 428393706 693599740 267489071 450585839 250127911 121813574 668263064 419594870 680676772 893068315 205333284 437965644 30169799 55200860 393010101 400708160 296988971 20966270 299980500 777642078 675714795 568208073 666580083 997008728 589104988 570647911 424901327 551637668 428131865 366670355 632991547 277372832 2543535 825485311 666455643 906886645 914317526 391843325 101435971 892342597 568903401 351606961 213531301 725361112 288939029 824743835 197988594 439183143 959649011 875413816 183234143 491550118 127633078 97479699 891900218 963915382 640667269 115592572 956105670 331450457 589733006 545866344 474759933 886549420 242130217 575475598 887956050 693518347 236564774 226169728 582019721 661690277 453630281 682297390 773616687 741130485 868560229 93113132 489594913 283199266 897355846 418441803 743590834 634454697 266433334 66333779 18304829 593144717 926642049 636059232 772398929 293968551 625685360 70468883 816494037 713785600 398148992 506271953 586827047 307862522 834400476 835452333 375576547 1335768 214341653 813160290 397225930 774507784 330537532 507789234 367582865 963365130 720816940 831195357 23349730 580075475 625808200 476754736 320187979 227613754 485871253 546508468 718374238 35507740 877660076 914132798 299964260 859925778 962212460 470646316 144751503 544498530 820964326 241112857 235229126 77150071 376761231 364992898 548120083 357777478 282394367 688169340 536319557 625606960 754760576 783943440 162976015 470044978 370544502 262667191 168748094 490100034 343765170 68100888 380115442 701657499 226191866 233853017 870709581 956561525 670965731 175245918 738701296 134438869 73047554 219491783 658224098 446390170 535231567 200849953 801019640 524164620 929854626 240020676 71155324 539369938 59729355 329695657 580517991 444637240 735657471 532183392 722735676 149330519 285563295 24553856 899295949 598039163 2829866 203950039 412356887 718127701 175821906 563419672 140729078 742476928 10696411 212275643 699166785 625070063 634419785 693046119 49830896 422206330 596537843 161680346 619352143 654136467 756165088 318188337 223246768 490136459 920477942 626603625 224364493 258489593 875107367 978748249 649043452 436053945 774358091 591770403 962168655 461438300 524644838 270368034 697500774 24551688 505252895 121477773 714388081 119627461 400388017 440560011 791558179 810058609 641242414 489679892 277403330 919337598 150067914 946776964 635745132 809586 327278899 329000049 431889384 688081648 171626322 365127986 624556693 715127290 726367931 330469773 225240438 153872786 842777542 706211701 328337027 835325296 64425730 350009476 668547501 788488545 535674769 88308296 747509988 837564559 719105091 473169587 338802066 996046604 703493819 866356713 729176438 285068497 645069505 814078958 472920002 625153162 514497310 538419464 359522157 248271050 462157771 80171089 922056159 829186325 782231708 312761958 283484075 94503236 50994481 844138487 690866123 4705539 569069498 573661510 399505926 474881013 505687844 286946208 819274280 822497175 891635386 771205329 796271785 217887868 657587643 773764169 236209564 160274488 864776769 675771642 875151992 187395080 31388904 59327478 993812661 886158043 740216898 261612901 30086889 430204471 61042864 325059269 101036991 234100872 263105342 397372639 876817113 95507483 454497534 644395513 842218038 992193361 511233152 770666638 898474954 112316806 40199115 170292456 552770155 250719714 448256625 996495525 216949148 586542392 36932578 412263419 96467030 593752401 395031756 489675374 446227468 670055213 280242248 426638848 627572566 661061215 384707183 174124623 651457142 574102275 684549686 873634913 836206604 577273376 605852451 957473067 847454782 80868347 863989510 878400513 532079195 125843391 119559745 839760933 12212370 854300642 219164971 140159577 791942964 911802826 611066556 718109182 896617602 411350784 456238072 892138159 610004717 147336189 44072535 571392985 139623514 247993474 999007989 954235465 908513230 669882313 309461960 540026245 851700764 180222794 843929676 398039195 427093160 863518891 676163298 741614436 610718384 177412034 291356957 59265832 604905904 784744213 11366960 538123632 481894646 861971164 110183179 825598381 449778405 829957455 539544612 948634229 73699852 281925188 290429714 159343384 452633633 322679640 682412302 278255021 69943528 77029510 640745995 938348853 165878206 789468731 248697996 445140303 918872727 928703421 92172464 954206515 805142217 293066587 982263417 665298777 737199612 281002887 880827659 354616680 829592127 738476629 274597059 265228915 531081844 436754798 433894602 120891893 791924869 799144710 286952460 532902001 978646627 742183009 111037064 663615559 461060881 183031483 369302642 401837286 717889808 927086604 708297645 17085824 942664635 154194849 591306383 65784742 836819297 933867049 284558491 467685813 668843988 58500009 623745420 650500460 44014156 846237451 789841295 139467604 993411782 636629648 809543043 957852923 401313057 274598613 703836989 93709248 38474117 425941928 303256277 78638567 624494431 343646579 144675859 518753871 944112578 482970541 716520984 659931551 292302130 453037041 189749022 957108110 55319102 85654712 876028063 868693848 825819149 561018015 207985261 553307437 82543966 94127908 525383132 772256110 465743030 328164778 379248519 588606530 155743268 714470271 710939115 714761663 230426313 839909859 472112220 347027379 353459364 542358183 217168616 321610091 838451049 229410512 98024216 550707403 671322584 198186021 52557480 245601059 722705725 122543436 662973622 693205180 428896500 357103581 452695226 952697933 729094899 102830483 444359791 264832665 124965127 560122922 698764599 438978117 151267654 697266415 96228876 877226412 634078581 58621128 225768723 458042965 117297657 648017445 688348193 628411133 161606568 513088675 739435426 229424824 142595298 626790728 999493474 466270069 347652369 288535744 916176411 723447524 923807033 79408649 918246471 136777863 734473936 388251476 830623865 354047334 681323236 781456098 866147392 456940042 352697336 910816224 260966005 638426751 123685244 175971310 455559111 814259116 20307786 630785822 144611214 900804765 892282023 889192933 422026008 343361241 329571376 754705162 537840033 695283275 897238464 361316511 830252634 672374964 518661823 468643448 349540579 527131885 879843287 330154881 240317763 425619414 223365627 676063634 235168666 685905620 406983262 702818906 108466605 620320431 362339967 578464482 171284399 17136362 887292032 292774033 827913825 168146453 532984414 78758907 918273034 420536706 618699527 200126292 465819944 144647676 765754871 21812231 81676125 549181104 729690868 276828142 49223408 433898286 900299271 370003909 860239137 955894677 558177778 243499481 841229255 785841209 856473778 895121453 128550537 498957533 686978676 530669484 698712835 312835004 52694084 84802443 718485064 535179756 243493686 252285314 993575443 146895096 956919488 409261190 581669094 399668733 637763186 273013893 72911792 894886935 224768838 907621899 938787296 801324011 195077628 22687229 954740491 340956834 571982201 735627475 454680692 801592350 362166720 432966866 278067784 155325251 485430132 80371465 713922098 299340213 814600118 483696901 880403311 270096935 30403241 152630223 96306099 847888516 147739919 191546171 756583370 844070744 857105386 66072313 952682403 614544918 929026913 523187741 850937331 357387164 108501734 702383919 358899092 660035853 462373875 36818336 180434253 634782321 624000625 216804829 715779232 286321352 565112692 31732134 437899515 349949302 989051773 670933659 682374658 854687637 549681749 112987502 72215186 98718582 481653817 176148574 455548402 627910004 116751585 297259375 245757673 724858387 54782416 785275251 85485439 42584804 277083981 468738232 152953534 903884398 433463899 19332981 754958996 286384639 443929810 933977656 31814728 529048047 245284976 873875937 670395382 817610223 954863865 106531052 830419645 422070406 857375025 953468072 991743391 669916185 499413046 330917665 956237101 114800482 975788147 574171244 742935681 822920436 857954931 826798206 252073055 382085696 110428856 593994360 93496311 253745950 169964848 685851766 433086557 221679987 754505593 589114778 64756915 799831278 525182167 125875026 480971205 132360981 554890483 350959246 943570772 555830144 197246919 636295406 166763724 409477370 78064501 287652518 360452881 810484371 224086851 593109366 266851782 390023610 607595587 401714017 136935655 632734425 461665157 516930215 844495987 661004922 825606456 243024619 779106435 236920775 575171191 895066419 404102370 352449577 279628036 157334886 274070427 964643161 350200292 672768778 515660391 840812794 185007074 955078413 653476503 359316046 705164434 230657281 678629643 226358535 915629613 68599976 324166746 346476350 606025484 792099252 932751483 263066306 712256834 400461189 966651431 906779417 454515301 704632568 740107321 171285692 62147193 921119899 971899905 433825280 447198142 323561003 465830775 456613368 250812304 279563640 686840743 872268179 318556475 161196997 789992111 469245380 264941739 182157845 534006148 581246350 817968650 276640987 817762151 764327883 734694618 12510273 782196746 6737095 931577471 165943451 885339553 128505263 138711112 766051403 929836432 907910295 129498154 197795465 111030188 71325308 984369167 792591021 828127650 224019516 216995196 432518810 652566780 714910244 75218232 896840020 329910201 980189407 719785421 65464937 726179735 32662105 791158440 462970754 687306840 751762895 898179326 2891153 869815128 133238587 78591740 498947467 8426334 962576021 382729312 194999851 726212594 74496098 976092822 454979223 500619555 661748769 444158989 241243645 779185127 309841757 621442018 36884555 395867928 763567987 136133399 421069872 640704360 941624289 358744543 786182307 861979784 440410764 779078844 715980844 639382709 240215688 114184580 150317072 892641000 497270872 875525389 549551082 728925120 598353396 120573247 342555419 713266893 238645665 364465713 212168798 661522964 805232865 340386594 386345384 102926644 5330218 11507521 810072562 583144375 313270979 738562993 394396239 996663711 681825848 256717801 802796938 625454639 750128027 339567838 744323693 671932950 210625282 960680059 854885814 233228461 9677035 540281746 102486180 42976604 727634210 497209132 499680347 586577128 738386821 102712038 258819909 503495484 580635102 940709508 964183820 528113790 471424427 509925825 523744684 906548184 106434904 472717752 196124663 663596767 612981534 188630563 14515911 582080491 30993762 796840966 808860098 210322559 142202286 862508923 991884484 556274955 99289766 239469422 361494646 299724538 491977190 971613646 653298817 802324169 782215047 536216872 68252864 276221885 858204426 164034380 972890620 232402163 545584537 937665857 890435570 187791651 141489670 962960968 661122664 560375255 681107709 550557804 548408623 958982172 8158799 147772881 954491853 260632754 159450183 615678287 122749939 885063551 989880228 165105400 670381858 286074509 824371967 45482406 631656851 77777661 351460044 989699714 267728051 62613472 704901352 376044372 920313002 541335461 24422110 423329214 344167691 75208549 470332865 343143979 646654293 310201889 98396884 791242128 331311091 569327837 527445100 746243035 771375759 440402584 551473775 952228635 379471136 646256933 741079771 276158768 120957484 805368207 517436457 8513090 674149383 368705104 414206851 682124941 981491886 160999262 476421191 678844580 436502024 326856703 931178090 897067669 157632421 178035244 327742365 923097021 333172093 27734877 59149223 925650639 88076957 115833570 66483269 521942622 29057102 735136991 407481801 358288769 929103104 22281564 443279032 346927649 976303986 32878944 641858045 369007913 190988828 536722770 543338989 819223673 307227849 174035671 844375775 102393238 21265429 929299205 760065911 626781826 714291649 621632589 568841343 506177857 197302131 731479322 949336815 605738536 302208415 429364336 430149118 328127216 512030179 726878197 89402132 24865014 968904360 762235699 128559651 465901755 692800418 696802484 218058205 23303503 142972910 822332028 765205323 103452636 664130614 851838151 249388335 603473380 352063448 494727889 562986558 270239480 137469444 355785439 864381924 79825019 233295085 484025843 78355557 625162575 431197397 985166504 672992974 364314788 822088223 900033942 544021264 268260471 370376793 396493462 486679155 101993274 998828384 861752332 742903308 975830087 198003825 315877445 705091882 891706836 463146649 82251894 270160283 982400188 839544381 442229836 280575097 581978064 635446914 941325872 490492939 193751112 330436839 527895789 968283773 509922503 837164698 891389115 31328310 156745646 716066418 434997811 411752119 229571945 332020644 88487821 812963481 260052489 994666333 504770745 170684752 311269420 993468545 859549635 905479944 826984352 142383296 849471616 725872723 165002627 154264741 463410169 895793092 979810745 567334200 798371394 86022946 273831475 58023204 874638540 504411516 452643362 890802574 351837104 535176725 78558155 455734931 805845174 87994322 455870366 147067913 39385380 316886400 744186098 507199664 911100991 126427265 326740203 997377666 369023349 471045666 346643864 426042712 40755822 174301456 868548625 411217700 769553335 260836562 856861254 933971896 567404882 605441331 582701893 641642851 76635242 645859281 741982764 131884813 519854722 995681469 257507308 647253173 182442984 679061285 219400438 247246974 282217168 582065413 326715866 773595791 134216350 764903231 904635787 195048033 981402125 238350975 362913583 513096356 47669510 722894445 84842940 685893076 755013204 681648824 444275082 785693392 761878685 813604179 752331978 841321939 751153869 953609283 685452582 254683408 574121623 886464 850265508 267702542 898897415 111793763 521645601 530389694 332762126 648656413 233886516 970037515 730031389 775654321 685075867 774367692 931092494 406381259 72766841 21877633 601276961 788398731 185161036 967345734 67190095 202678827 469000358 446365192 957762513 894941978 288857007 752772063 976935073 961394530 844875963 862460250 965012322 252807548 270062253 968057632 306433217 186473124 788327220 186778688 902268616 635065788 724204361 828002680 243587374 952316624 997744471 426113830 780807487 926936937 340791065 105517557 897449025 992955716 78140948 177087409 417824160 269365601 712239940 252310405 913409866 569142657 78504484 13327242 63697662 385940442 670105063 419874901 766196917 595608746 362942790 546613197 382173517 374753365 645416801 390540430 780544022 220024096 124384942 194662952 571113387 452380238 897643700 715378779 737881401 677163662 282090521 898571159 505591644 533161584 689641844 687439204 240294546 718433516 907267398 557293527 749394866 339677633 613339192 792790816 348927357 501496872 719654096 577039693 392642714 757811261 10091650 745278070 58586767 479532832 123566001 735025682 218347552 159102696 359366690 553383357 6528655 448190394 75308266 603791111 876033495 559351203 598033285 678446659 867499814 792967167 462135655 663798097 443243792 96410401 705621373 991376995 705621373 96410401 443243792 663798097 462135655 792967167 867499814 678446659 598033285 559351203 876033495 603791111 75308266 448190394 6528655 553383357 359366690 159102696 218347552 735025682 123566001 479532832 58586767 745278070 10091650 757811261 392642714 577039693 719654096 501496872 348927357 792790816 613339192 339677633 749394866 557293527 907267398 718433516 240294546 687439204 689641844 533161584 505591644 898571159 282090521 677163662 737881401 715378779 897643700 452380238 571113387 194662952 124384942 220024096 780544022 390540430 645416801 374753365 382173517 546613197 362942790 595608746 766196917 419874901 670105063 385940442 63697662 13327242 78504484 569142657 913409866 252310405 712239940 269365601 417824160 177087409 78140948 992955716 897449025 105517557 340791065 926936937 780807487 426113830 997744471 952316624 243587374 828002680 724204361 635065788 902268616 186778688 788327220 186473124 306433217 968057632 270062253 252807548 965012322 862460250 844875963 961394530 976935073 752772063 288857007 894941978 957762513 446365192 469000358 202678827 67190095 967345734 185161036 788398731 601276961 21877633 72766841 406381259 931092494 774367692 685075867 775654321 730031389 970037515 233886516 648656413 332762126 530389694 521645601 111793763 898897415 267702542 850265508 886464 574121623 254683408 685452582 953609283 751153869 841321939 752331978 813604179 761878685 785693392 444275082 681648824 755013204 685893076 84842940 722894445 47669510 513096356 362913583 238350975 981402125 195048033 904635787 764903231 134216350 773595791 326715866 582065413 282217168 247246974 219400438 679061285 182442984 647253173 257507308 995681469 519854722 131884813 741982764 645859281 76635242 641642851 582701893 605441331 567404882 933971896 856861254 260836562 769553335 411217700 868548625 174301456 40755822 426042712 346643864 471045666 369023349 997377666 326740203 126427265 911100991 507199664 744186098 316886400 39385380 147067913 455870366 87994322 805845174 455734931 78558155 535176725 351837104 890802574 452643362 504411516 874638540 58023204 273831475 86022946 798371394 567334200 979810745 895793092 463410169 154264741 165002627 725872723 849471616 142383296 826984352 905479944 859549635 993468545 311269420 170684752 504770745 994666333 260052489 812963481 88487821 332020644 229571945 411752119 434997811 716066418 156745646 31328310 891389115 837164698 509922503 968283773 527895789 330436839 193751112 490492939 941325872 635446914 581978064 280575097 442229836 839544381 982400188 270160283 82251894 463146649 891706836 705091882 315877445 198003825 975830087 742903308 861752332 998828384 101993274 486679155 396493462 370376793 268260471 544021264 900033942 822088223 364314788 672992974 985166504 431197397 625162575 78355557 484025843 233295085 79825019 864381924 355785439 137469444 270239480 562986558 494727889 352063448 603473380 249388335 851838151 664130614 103452636 765205323 822332028 142972910 23303503 218058205 696802484 692800418 465901755 128559651 762235699 968904360 24865014 89402132 726878197 512030179 328127216 430149118 429364336 302208415 605738536 949336815 731479322 197302131 506177857 568841343 621632589 714291649 626781826 760065911 929299205 21265429 102393238 844375775 174035671 307227849 819223673 543338989 536722770 190988828 369007913 641858045 32878944 976303986 346927649 443279032 22281564 929103104 358288769 407481801 735136991 29057102 521942622 66483269 115833570 88076957 925650639 59149223 27734877 333172093 923097021 327742365 178035244 157632421 897067669 931178090 326856703 436502024 678844580 476421191 160999262 981491886 682124941 414206851 368705104 674149383 8513090 517436457 805368207 120957484 276158768 741079771 646256933 379471136 952228635 551473775 440402584 771375759 746243035 527445100 569327837 331311091 791242128 98396884 310201889 646654293 343143979 470332865 75208549 344167691 423329214 24422110 541335461 920313002 376044372 704901352 62613472 267728051 989699714 351460044 77777661 631656851 45482406 824371967 286074509 670381858 165105400 989880228 885063551 122749939 615678287 159450183 260632754 954491853 147772881 8158799 958982172 548408623 550557804 681107709 560375255 661122664 962960968 141489670 187791651 890435570 937665857 545584537 232402163 972890620 164034380 858204426 276221885 68252864 536216872 782215047 802324169 653298817 971613646 491977190 299724538 361494646 239469422 99289766 556274955 991884484 862508923 142202286 210322559 808860098 796840966 30993762 582080491 14515911 188630563 612981534 663596767 196124663 472717752 106434904 906548184 523744684 509925825 471424427 528113790 964183820 940709508 580635102 503495484 258819909 102712038 738386821 586577128 499680347 497209132 727634210 42976604 102486180 540281746 9677035 233228461 854885814 960680059 210625282 671932950 744323693 339567838 750128027 625454639 802796938 256717801 681825848 996663711 394396239 738562993 313270979 583144375 810072562 11507521 5330218 102926644 386345384 340386594 805232865 661522964 212168798 364465713 238645665 713266893 342555419 120573247 598353396 728925120 549551082 875525389 497270872 892641000 150317072 114184580 240215688 639382709 715980844 779078844 440410764 861979784 786182307 358744543 941624289 640704360 421069872 136133399 763567987 395867928 36884555 621442018 309841757 779185127 241243645 444158989 661748769 500619555 454979223 976092822 74496098 726212594 194999851 382729312 962576021 8426334 498947467 78591740 133238587 869815128 2891153 898179326 751762895 687306840 462970754 791158440 32662105 726179735 65464937 719785421 980189407 329910201 896840020 75218232 714910244 652566780 432518810 216995196 224019516 828127650 792591021 984369167 71325308 111030188 197795465 129498154 907910295 929836432 766051403 138711112 128505263 885339553 165943451 931577471 6737095 782196746 12510273 734694618 764327883 817762151 276640987 817968650 581246350 534006148 182157845 264941739 469245380 789992111 161196997 318556475 872268179 686840743 279563640 250812304 456613368 465830775 323561003 447198142 433825280 971899905 921119899 62147193 171285692 740107321 704632568 454515301 906779417 966651431 400461189 712256834 263066306 932751483 792099252 606025484 346476350 324166746 68599976 915629613 226358535 678629643 230657281 705164434 359316046 653476503 955078413 185007074 840812794 515660391 672768778 350200292 964643161 274070427 157334886 279628036 352449577 404102370 895066419 575171191 236920775 779106435 243024619 825606456 661004922 844495987 516930215 461665157 632734425 136935655 401714017 607595587 390023610 266851782 593109366 224086851 810484371 360452881 287652518 78064501 409477370 166763724 636295406 197246919 555830144 943570772 350959246 554890483 132360981 480971205 125875026 525182167 799831278 64756915 589114778 754505593 221679987 433086557 685851766 169964848 253745950 93496311 593994360 110428856 382085696 252073055 826798206 857954931 822920436 742935681 574171244 975788147 114800482 956237101 330917665 499413046 669916185 991743391 953468072 857375025 422070406 830419645 106531052 954863865 817610223 670395382 873875937 245284976 529048047 31814728 933977656 443929810 286384639 754958996 19332981 433463899 903884398 152953534 468738232 277083981 42584804 85485439 785275251 54782416 724858387 245757673 297259375 116751585 627910004 455548402 176148574 481653817 98718582 72215186 112987502 549681749 854687637 682374658 670933659 989051773 349949302 437899515 31732134 565112692 286321352 715779232 216804829 624000625 634782321 180434253 36818336 462373875 660035853 358899092 702383919 108501734 357387164 850937331 523187741 929026913 614544918 952682403 66072313 857105386 844070744 756583370 191546171 147739919 847888516 96306099 152630223 30403241 270096935 880403311 483696901 814600118 299340213 713922098 80371465 485430132 155325251 278067784 432966866 362166720 801592350 454680692 735627475 571982201 340956834 954740491 22687229 195077628 801324011 938787296 907621899 224768838 894886935 72911792 273013893 637763186 399668733 581669094 409261190 956919488 146895096 993575443 252285314 243493686 535179756 718485064 84802443 52694084 312835004 698712835 530669484 686978676 498957533 128550537 895121453 856473778 785841209 841229255 243499481 558177778 955894677 860239137 370003909 900299271 433898286 49223408 276828142 729690868 549181104 81676125 21812231 765754871 144647676 465819944 200126292 618699527 420536706 918273034 78758907 532984414 168146453 827913825 292774033 887292032 17136362 171284399 578464482 362339967 620320431 108466605 702818906 406983262 685905620 235168666 676063634 223365627 425619414 240317763 330154881 879843287 527131885 349540579 468643448 518661823 672374964 830252634 361316511 897238464 695283275 537840033 754705162 329571376 343361241 422026008 889192933 892282023 900804765 144611214 630785822 20307786 814259116 455559111 175971310 123685244 638426751 260966005 910816224 352697336 456940042 866147392 781456098 681323236 354047334 830623865 388251476 734473936 136777863 918246471 79408649 923807033 723447524 916176411 288535744 347652369 466270069 999493474 626790728 142595298 229424824 739435426 513088675 161606568 628411133 688348193 648017445 117297657 458042965 225768723 58621128 634078581 877226412 96228876 697266415 151267654 438978117 698764599 560122922 124965127 264832665 444359791 102830483 729094899 952697933 452695226 357103581 428896500 693205180 662973622 122543436 722705725 245601059 52557480 198186021 671322584 550707403 98024216 229410512 838451049 321610091 217168616 542358183 353459364 347027379 472112220 839909859 230426313 714761663 710939115 714470271 155743268 588606530 379248519 328164778 465743030 772256110 525383132 94127908 82543966 553307437 207985261 561018015 825819149 868693848 876028063 85654712 55319102 957108110 189749022 453037041 292302130 659931551 716520984 482970541 944112578 518753871 144675859 343646579 624494431 78638567 303256277 425941928 38474117 93709248 703836989 274598613 401313057 957852923 809543043 636629648 993411782 139467604 789841295 846237451 44014156 650500460 623745420 58500009 668843988 467685813 284558491 933867049 836819297 65784742 591306383 154194849 942664635 17085824 708297645 927086604 717889808 401837286 369302642 183031483 461060881 663615559 111037064 742183009 978646627 532902001 286952460 799144710 791924869 120891893 433894602 436754798 531081844 265228915 274597059 738476629 829592127 354616680 880827659 281002887 737199612 665298777 982263417 293066587 805142217 954206515 92172464 928703421 918872727 445140303 248697996 789468731 165878206 938348853 640745995 77029510 69943528 278255021 682412302 322679640 452633633 159343384 290429714 281925188 73699852 948634229 539544612 829957455 449778405 825598381 110183179 861971164 481894646 538123632 11366960 784744213 604905904 59265832 291356957 177412034 610718384 741614436 676163298 863518891 427093160 398039195 843929676 180222794 851700764 540026245 309461960 669882313 908513230 954235465 999007989 247993474 139623514 571392985 44072535 147336189 610004717 892138159 456238072 411350784 896617602 718109182 611066556 911802826 791942964 140159577 219164971 854300642 12212370 839760933 119559745 125843391 532079195 878400513 863989510 80868347 847454782 957473067 605852451 577273376 836206604 873634913 684549686 574102275 651457142 174124623 384707183 661061215 627572566 426638848 280242248 670055213 446227468 489675374 395031756 593752401 96467030 412263419 36932578 586542392 216949148 996495525 448256625 250719714 552770155 170292456 40199115 112316806 898474954 770666638 511233152 992193361 842218038 644395513 454497534 95507483 876817113 397372639 263105342 234100872 101036991 325059269 61042864 430204471 30086889 261612901 740216898 886158043 993812661 59327478 31388904 187395080 875151992 675771642 864776769 160274488 236209564 773764169 657587643 217887868 796271785 771205329 891635386 822497175 819274280 286946208 505687844 474881013 399505926 573661510 569069498 4705539 690866123 844138487 50994481 94503236 283484075 312761958 782231708 829186325 922056159 80171089 462157771 248271050 359522157 538419464 514497310 625153162 472920002 814078958 645069505 285068497 729176438 866356713 703493819 996046604 338802066 473169587 719105091 837564559 747509988 88308296 535674769 788488545 668547501 350009476 64425730 835325296 328337027 706211701 842777542 153872786 225240438 330469773 726367931 715127290 624556693 365127986 171626322 688081648 431889384 329000049 327278899 809586 635745132 946776964 150067914 919337598 277403330 489679892 641242414 810058609 791558179 440560011 400388017 119627461 714388081 121477773 505252895 24551688 697500774 270368034 524644838 461438300 962168655 591770403 774358091 436053945 649043452 978748249 875107367 258489593 224364493 626603625 920477942 490136459 223246768 318188337 756165088 654136467 619352143 161680346 596537843 422206330 49830896 693046119 634419785 625070063 699166785 212275643 10696411 742476928 140729078 563419672 175821906 718127701 412356887 203950039 2829866 598039163 899295949 24553856 285563295 149330519 722735676 532183392 735657471 444637240 580517991 329695657 59729355 539369938 71155324 240020676 929854626 524164620 801019640 200849953 535231567 446390170 658224098 219491783 73047554 134438869 738701296 175245918 670965731 956561525 870709581 233853017 226191866 701657499 380115442 68100888 343765170 490100034 168748094 262667191 370544502 470044978 162976015 783943440 754760576 625606960 536319557 688169340 282394367 357777478 548120083 364992898 376761231 77150071 235229126 241112857 820964326 544498530 144751503 470646316 962212460 859925778 299964260 914132798 877660076 35507740 718374238 546508468 485871253 227613754 320187979 476754736 625808200 580075475 23349730 831195357 720816940 963365130 367582865 507789234 330537532 774507784 397225930 813160290 214341653 1335768 375576547 835452333 834400476 307862522 586827047 506271953 398148992 713785600 816494037 70468883 625685360 293968551 772398929 636059232 926642049 593144717 18304829 66333779 266433334 634454697 743590834 418441803 897355846 283199266 489594913 93113132 868560229 741130485 773616687 682297390 453630281 661690277 582019721 226169728 236564774 693518347 887956050 575475598 242130217 886549420 474759933 545866344 589733006 331450457 956105670 115592572 640667269 963915382 891900218 97479699 127633078 491550118 183234143 875413816 959649011 439183143 197988594 824743835 288939029 725361112 213531301 351606961 568903401 892342597 101435971 391843325 914317526 906886645 666455643 825485311 2543535 277372832 632991547 366670355 428131865 551637668 424901327 570647911 589104988 997008728 666580083 568208073 675714795 777642078 299980500 20966270 296988971 400708160 393010101 55200860 30169799 437965644 205333284 893068315 680676772 419594870 668263064 121813574 250127911 450585839 267489071 693599740 428393706 655898259 825300874 589102506 554067171 119224623 272849178 701562882 191952506 938178340 936711464 21897230 361156560 84318655 692219262 726472995 337743958 493324739 55596299 816448730 177195817 579165916 635585085 208512728 644436470 965381099 14223476 749688594 851631756 287003258 355655872 154541837 642334198 157634298 651746563 526550826 528251838 78622354 364464372 536007801 615183265 739679555 335684876 418429972 503311261 552900452 861086273 200470990 430928622 846748750 777593216 836035698 900132139 410132890 612660217 61641512 787319949 222738572 746883090 128744043 496606247 657783356 323303835 116170941 934137332 737912027 394522632 604725546 873098334 830730536 148247425 751637308 695904111 315886970 927778777 849138848 163070232 602136494 180751071 965679575 331198651 30212637 935172965 115605282 489266632 572233193 648619676 127820853 90265701 703214374 589567547 993517068 283701162 379788358 344115031 938118529 776786707 451911508 191155269 587788684 5532224 644896298 536490710 673887290 673100322 534028501 941988917 228011534 353418954 59118280 384418509 578600710 566964038 709259609 633910620 246490542 696116885 731067226 761525342 333026522 756478419 255398648 756656527 213099901 120942488 446610849 925471526 67938870 877220604 574564021 901625279 250577383 785340605 958328282 230263993 760258260 310891414 28633285 856215241 286923235 812582754 942128560 34552961 978318395 355429530 932578192 705558521 525682830 932956538 481843443 707699217 621752207 966939419 393084137 904346996 195102874 222664014 170200184 126526341 631290342 947977808 581613976 510338134 114893241 162660083 274074157 138280578 655811785 296043848 592628596 138065102 377321988 174387676 84114598 997486268 302471929 43116207 968094007 271968039 201552569 144268924 862703862 735466523 60006477 460093272 10110441 438528191 11021525 545035130 65829747 887122428 684790279 158932839 635747323 45205997 597491744 149957642 684926991 16327399 953842094 484610093 973740448 635389230 577246099 325205843 88567864 398422761 841177133 895115180 74603832 857864 20519225 34851041 646025306 227323823 925259365 642379960 605086619 64920232 450364400 415869406 760128710 80305006 486960768 204863830 101283445 639233058 45430959 904329023 628104076 660948895 850481311 934791400 168030370 246376579 122658770 942326370 149143906 219790346 135656598 90974018 969580810 364384547 652530359 496720810 256518681 344550943 148584362 888905806 155338678 877993052 55194545 533781760 540106178 24126528 443747366 894195944 746967691 751656023 543057059 870242822 179320577 479460349 959314459 295684277 401780645 350622221 545861523 435285682 210308773 688474056 822321125 208955516 172948412 392467806 328888505 711355825 428613581 138130569 85963160 743357604 598254167 935577849 916047642 873752846 373494840 803081746 540726130 446086288 83419995 789227401 457741601 949767647 92438722 20787876 867506075 881633299 502192027 982705986 932291989 434543491 500390812 613725905 891555424 325193627 109031598 503386772 290654996 302901691 58845619 923726253 97774993 527240965 800334580 649321686 956947219 339121809 778760345 193318559 861600596 306808115 603216168 498029794 744134747 130392006 761833931 976028619 50761526 150924651 886553674 542290149 919863270 530630067 512287782 73618587 937700901 249853712 170964994 25557708 399666008 705538864 431030901 40819643 855461075 58129019 654017469 391411984 428046271 223151633 896698037 718615305 272045262 465299625 745373324 534900975 570183952 341423606 841183012 287406452 685825656 725683408 818276801 958122156 492580071 432988739 531104970 793717387 939527467 692062783 443125390 714358875 20845839 157887526 59337734 354937844 732443880 875995281 537668498 167192947 354595890 431099652 55346039 342398694 994842766 890054331 638619229 742186016 680796677 93805111 643137848 931213508 285786172 448187376 363740659 471221248 977536993 550071718 814674789 984693926 118622659 187930778 917388746 390363134 410687743 462881406 466881913 371501066 742235399 716975455 716674526 332261668 651798451 659436238 923954592 630707309 609288052 591446761 287293516 952100952 430974522 442619497 367646461 919864676 160185762 348139418 212209763 209152895 935279133 721739890 25324526 359631156 626790077 722163606 38742118 612300723 68835143 308299776 96871877 219517139 920404566 484947371 665809891 387525167 294151001 772498124 180046912 597780297 81361416 569717277 351846721 726881122 596982314 450343943 833499417 393455281 179550816 321541839 431751428 872452098 520785640 583912183 445104865 784949642 513496707 525039773 567050005 920437341 334129287 885142007 295182873 635220093 59276342 962708057 202036982 84838537 882906667 251511374 989591868 800099558 511794336 951850433 214208229 342911181 578509090 206202349 498985700 215170172 339499884 645156992 963398686 257494413 594411778 632239413 513097679 779189511 784862003 665288090 862320157 28010221 844681544 663624560 885890848 14202464 654199133 901631083 559168177 754253363 360329443 160946596 631819104 343630281 232706149 416423694 281830613 450013951 584802550 174826808 607821769 692024901 850708014 187131780 199625660 203983652 517336192 872390051 407985907 385194517 309158937 759322030 582580368 139175203 666890527 262337555 414284694 969692640 102040113 306859628 818571665 810067705 945739380 800078543 840222086 771594301 226783389 458225290 170795746 75576476 810940009 723205332 365458613 762227583 698997902 486238367 741972213 684219888 938098963 59036550 56005832 743700481 962181779 23061206 953099831 425843592 476045117 662808413 993883203 145953501 247526824 210695076 229088709 436318283 438375193 275977032 764306058 565604104 529188601 268353506 981622422 488515402 75138302 189678152 735523231 408184301 684392606 934775870 47179336 598573523 320572715 485843277 997397774 588233633 497539485 715848386 205345549 753838455 377704307 163713716 770712880 349255848 468020363 454755472 105219469 436391954 758006824 200269025 115421567 724242536 270499113 267492751 638356010 302702 654640636 687159668 356035588 801405200 486023853 149568542 842276371 759475782 522290404 582044384 473867893 427551071 76556490 146168172 454070575 909561950 494899041 487094795 842098351 725951835 706645414 641070085 150002171 227439620 984979346 170762785 141798769 973962877 449739270 329467270 41709330 55174683 175311085 563631713 406161877 238329338 83880249 764297392 916597965 980900921 63004101 79077556 327910500 799431161 200194943 629626872 117029445 121426872 76149474 851210459 755987824 73529054 970057761 723022353 63894714 234998277 524824185 539520906 916313266 526028476 312773708 82250330 909791624 743861419 220524619 945024545 572791799 280519457 305695949 474867634 792874038 33381162 968154564 896228755 360940028 781074273 312661142 667938870 617166860 700793592 721944904 377959788 847545890 547297760 757434281 625338831 599007912 145364748 982934813 432857794 283778784 697959341 966789252 838781512 14562917 519860420 585925607 762283563 641231814 9597000 824114890 532638774 750434192 64079849 562743027 136437137 74826230 899847180 492456644 231219338 717331136 455847789 527918835 387655344 734532371 6537646 310701805 201262238 367861838 112691003 720142351 962538333 369951456 417920083 875277764 686610217 551834595 148465479 535602695 822487779 170012586 493202069 588340966 984424014 513879499 847168263 677250463 288541501 69281835 595795078 645077251 112538108 280849621 770875329 593815497 547644326 176308671 672304846 166245632 496310900 486723058 193184560 149681282 507763959 86070408 818800179 78360750 766284289 96283434 102104371 14206688 627791490 989905506 559091128 188337217 70108256 581044641 201444103 367656646 463957509 725204816 1237116 309599891 16529810 580022743 772949860 840218117 932204324 84757046 883920484 731886985 165744686 383980750 446228083 226688155 147947454 425768203 777211914 514550569 457696354 976152175 133025575 163470616 836961680 61619552 282939573 611779323 918903865 428408911 316242475 8997834 339575833 814455958 653218895 461252840 66399904 544782752 111949980 704540973 915420297 447086011 935967621 722976187 29713717 276688567 903863370 663817599 940098140 601944060 753859362 942719077 714242935 895888852 938928520 550094228 927352012 563414989 972703102 216199425 180376590 203638805 216953659 842308216 494733174 109312634 18562122 708140291 549425629 676512834 431444875 649361457 493780464 888323401 236994886 35614730 809112182 154397456 628596046 897601160 948846150 30632463 964667459 80028667 361972851 62630610 199780437 898733773 432741031 837296942 710223813 862773071 47028272 665985384 58312742 784491239 750875014 521163908 375314615 157963366 568562088 4535718 489290224 929669660 795628331 258065360 908926755 950964350 398831821 812026095 739981779 325222005 364875091 580409105 598421102 981141287 840450725 412571311 719067667 13220864 868621715 25719363 566477988 778295484 781241169 889375994 777242970 143749102 433169797 119732274 717710451 975166245 496237459 161685328 615417536 197184038 69538642 731777258 148063944 472043893 723382960 478693288 317378154 812688680 283725571 399147895 525660067 950370481 308605208 858794209 541892416 482881015 74989857 147052910 433258470 478158072 905120808 664775779 592377969 214053530 39094894 79060387 527603592 111059226 90437886 149433816 478293871 285724575 277164442 90778349 988981768 941786575 134005462 81963566 463394711 383932296 368052629 982229900 382577039 657468851 755800906 384956202 138117237 374555301 297284903 414486229 882188668 519769360 828533368 356315717 729588351 904964839 808911506 902563549 593361672 538526572 841599720 429658095 391588318 763679942 111863121 550248372 494673589 650305847 695875730 501475864 461155751 861857092 307495653 918250021 396415178 715658777 528981080 944836511 146821441 656933564 327395994 495862990 163911210 229883707 342597031 576687968 40092940 958105278 429738543 108637506 202067964 197157304 926886515 95758857 20853939 94138866 439949050 850352622 99787291 927505319 896748211 103148728 609428916 479055470 325736050 994275837 430792332 973127514 385164594 729912263 338164812 825516849 716992276 355200281 606212886 466182115 8414502 294349861 53998475 536475069 673472992 337749825 846386167 281982188 920375028 262405437 709474640 28275016 354646130 996950399 77940832 234377027 873704526 187383260 595380851 103905096 522048283 622245881 528911541 516108872 242937762 238206138 958954392 735647069 211234780 468153616 287837667 7566575 706146050 694579450 803739154 41906607 756679148 760249301 427151647 198969634 373478537 578248047 930437652 866665471 398410776 515585390 879263893 763902380 204612607 353022419 316993263 720881058 378963571 119948087 629778023 13453669 500455708 875351338 692842380 504834059 995789168 286295289 636664911 342692743 978721123 38880010 299225949 485477621 451374426 246621950 300768869 425197025 695337321 775123201 603648358 157596711 508509473 502048852 412061364 206889329 816574100 156893374 792083422 643808882 413361613 69430903 15546079 237507654 494755545 212231328 725526791 758939009 531859358 209541452 646039446 599330353 730424662 6770124 909965264 672697137 541466036 613027855 13908143 425839122 425841792 548162420 473414521 275179707 43878364 677440178 987768272 734339939 677569284 579073767 33638926 442382514 425446774 165112618 140296665 92204922 882681730 41483312 609161469 206081655 300694001 888064750 398325478 423189886 409641985 326703774 443143931 541646345 517281270 981919640 904479347 537789733 173099741 770175829 408899061 409843922 335395766 656993670 242325300 393465881 655188308 963494476 803465266 47785845 909585803 857155657 555379736 595297191 133411125 714279214 979156293 923443299 835355262 982838431 945746950 191690265 592551182 104206725 445331552 863978493 716529450 497836159 106275247 937359676 934800629 135001380 619686499 440071138 394569661 50136806 461967332 408674158 524255861 789205403 783239632 483081770 799109039 435181303 930771334 140478499 274372061 653663903 119221226 652736486 637416836 655882432 583364667 609754002 396239037 423255738 400227801 589990284 278997931 847222846 212500030 168244778 521973690 224496887 247913299 25810978 88896168 560826234 730228545 376146833 694246596 463893339 668823264 977275464 788021533 107819504 417060806 669766036 289885587 442484007 680449928 117131469 392408689 837285618 955081444 343397731 839669797 615370852 524079772 693438058 88267578 44827711 49305190 976161820 634237518 996350026 304863103 942681388 234097287 503622430 149431752 729293850 490235100 241935775 642554233 462818853 268946744 768126060 147127591 143723686 831423456 876029215 742904770 174443611 797298634 965155147 839886815 925535701 818772739 870355027 429004010 499310528 641493179 554952045 911488371 876039850 301323049 111569438 747416794 450581758 709301044 185145816 868416979 621165257 560270647 925829188 35437970 712839682 398442074 979919765 222664481 46738055 269747035 959246122 800290665 427918024 497586538 770822042 725418529 32338845 617681803 240224145 316157833 450477763 74068837 917382793 46573487 892896846 885346517 533801111 844223706 863296868 521957783 786912641 809316482 419119374 842796743 877925838 574294391 459587888 562958533 991272319 123786087 559095962 613020549 721177595 599292314 972953800 658948361 164422953 196463946 42961914 625544880 47702191 390749443 134442446 554744712 1995822 843507828 202120287 127772022 211233613 669956876 581977248 472131258 624938086 541739754 124073447 180958802 725362098 227849348 44565881 559868594 263154468 537016034 754321700 576800441 184722250 838174827 321800698 298097591 697876222 563901682 658658352 980113783 996986431 192129256 514738720 235530324 358183705 545828076 690732336 215040359 468696180 92788198 719238755 822086272 921515855 230222703 185642390 435094311 103193649 626804079 962605361 250787248 96461117 404157204 281885154 722249360 991225785 222729597 321372173 357658223 921843739 579125155 564080266 431976251 386326167 388165573 809191623 317870433 827511503 343830964 477942440 265388204 878829144 510352157 35578530 477619463 159475654 776566735 931774424 691415728 363160320 861050147 994750711 844112526 187460411 988736853 894587986 565718081 496467403 311209375 484204863 732428167 285352386 46462103 430105582 227474629 113239688 215210039 36363386 297106963 245740560 36256781 62533495 996826624 838352691 59581919 271648088 847449121 206603413 170541022 261520670 596196207 755496366 840683041 121793394 260780639 88260956 336688509 752202717 40124157 471828213 309269656 777734143 356549044 389944666 861545066 492630516 937242336 431421302 196111095 288757718 903982687 136205023 182369568 351048522 107206854 264481050 633651390 643136712 343841222 88648160 731323493 347130465 531593215 417147562 299062928 13064076 282057361 373251934 524458079 867066526 319245678 673674084 792735531 808746346 365173572 47935771 388620857 980069778 522369320 611279933 169006615 3888246 431934403 785052407 750724133 166503109 506581521 28850053 464055690 910750991 289008905 103225382 470033580 800682777 846145630 746426213 971886662 908631930 985444189 61737723 272055750 496461535 776745240 14127583 420897708 612605690 545582372 795741815 88501669 166099580 162699163 471301685 91772333 198064214 450979305 425800718 987953985 491392791 816799455 621830954 660181080 817227383 738132456 749235033 173864952 673342333 115359548 553774833 739229673 126924756 750171965 943368970 625446339 958320904 482835974 635348303 824144769 25981271 136709440 448788324 950878742 909048432 512897699 596068425 888299328 539838734 687918111 734861261 456884012 286841219 380948114 314687877 842370495 387386899 647705039 175591929 545827737 925856848 620802836 361611671 337039920 330895235 441896273 638263647 965407864 655304993 911251095 946116165 282528713 604510676 895906470 948898265 144027139 577300158 556761279 364058344 656495536 65716403 61487179 574868752 217173175 829006275 885698941 641493591 242714003 767475998 199633988 608145963 855201860 431468263 477174180 390494649 789245550 202335443 897954366 626476716 40361380 257973763 48606059 82000382 844600415 267393170 637090158 661733855 86655529 445377986 669365552 189737701 894626184 439712774 470672542 731912631 340155196 165792080 548105563 646252156 221745569 644282607 897859261 759970326 83177368 42934058 836593803 260915373 869235557 527448610 515958586 47922323 621767332 508541611 553758151 167822652 517699238 901261179 287028784 257408163 97135134 806958907 201001158 142277631 6287084 247139160 730696887 706358522 179796459 105575867 944658155 993598698 33436913 248759735 914571387 702498321 286482862 205791750 117569605 661095995 635963919 368399440 145664005 772438635 254316517 432554365 913671186 107676678 354786487 149846509 472813750 303500947 128221037 570087189 876367176 867856537 246358734 932279650 80216332 771487040 925821237 322694065 51456006 622652100 664120733 201114572 75979227 647582300 541354938 887789045 380283273 169631188 964681952 386192280 835878296 793725950 424667690 872860911 252290780 786987530 988570210 838402984 159778705 895916064 140817031 869321930 964549173 957923510 473618202 577476092 607160821 845134246 240805442 848568543 106302953 959192234 18252784 71765791 412644777 992106996 458228676 376618590 408518741 236651260 155452095 782016163 662376402 640548015 208623553 624547225 646945863 938843676 916455153 63158217 502194268 581769532 76258125 586365433 985958180 511118342 16752505 657379946 486977605 18843714 931199718 381991642 889311635 988956698 530415848 601305333 617545494 110919483 169836273 577753030 140076318 365413440 993203003 501628552 555283686 323201676 22979254 938633690 263592699 403966673 107790197 442248870 186027591 828011436 435473272 490398571 680018842 246295242 524541152 985594584 231078119 709810655 642255265 93482119 330499096 389017437 94969196 349439113 830553874 100419237 287459402 750008146 790749167 935087123 219566903 42742377 945788800 897616390 310282578 819473698 905327371 853249032 885544601 68383060 359715733 947048268 857448301 676384713 809821666 668101574 685040012 790023390 404269791 731374648 501855804 577252250 793085514 167309954 13627513 739741848 37533157 669744490 43465127 731768600 255918269 494531955 616404221 816533925 948696334 566132259 977402712 724592629 441065580 940527227 493810906 820330542 550448881 234993647 651961018 332316005 570688599 991306015 970052242 511113252 117521713 48227785 992193489 466227634 224966291 711440960 45720165 150723578 963768600 858852636 85660986 797683436 50112214 197140238 854185971 844728582 79150538 300281927 908736728 51862422 81322797 758319711 92336369 955316512 716049844 607047358 235777718 764667250 28199686 34981502 951570464 838202607 855842595 667310614 664788913 146974820 268075355 604850199 458052206 449294553 528209849 725952244 590806750 270078433 822694405 729292315 989918451 457373443 993902087 559444098 133211968 710570643 25129274 58338056 44850667 888593532 711715731 102046088 289582669 211187105 804100457 904343580 769897102 770677427 911357511 340702048 679744944 406242803 929507978 169515562 917617622 832453770 554045528 645473212 149651893 621985491 977020927 98125493 264359552 769000510 202177710 295209719 298281100 453378863 702942114 221720784 452889918 275038360 241592773 369541099 497604575 712799244 295695021 410703205 493404161 316528598 246287946 600644288 976145894 524430365 412880871 420047832 948954057 831234729 331137219 795129477 480158092 41314233 519517822 836991926 415672477 61079521 83417411 407808017 891450303 5917037 226274766 550516594 13070312 727037923 428832056 552016834 527466832 281406904 81780216 849971636 614794892 201138727 761668730 819731210 974887055 304111870 803713269 397358146 918620745 29408155 946800801 88253823 392881649 984610096 603548708 425878892 832845932 583263815 956607286 590833898 74462032 279388228 549803505 453966480 726114769 460698498 962956971 914089190 494450229 663400998 864406058 533208644 304530043 354078431 886480469 714723150 957483835 475533050 799451563 960772579 831291345 686018192 724016206 621716032 685360087 715806808 528753015 327846487 60175237 648689895 221393249 850818339 556069882 436604292 325219212 545672475 639361879 410592987 555274248 216360698 949298566 276615104 624921154 234891964 423028683 933523401 185115309 742035691 725107884 379792182 133103172 81306103 464996054 194499714 78461663 67622536 58526527 103918428 509739968 871847527 157690446 926120496 776019268 485150378 193854038 695486532 133634696 487464537 368309942 806459596 53528188 599934971 57236304 693352537 95316873 94290613 306463133 632280610 800093877 794907029 643884561 298353374 976651873 736059015 659837559 710599984 267911750 826120515 267636378 249856503 512289477 592419540 293276956 97217704 977050325 833642304 87968953 343744412 466413336 58789155 672142989 792714139 31946601 936852157 989592973 85677552 103273720 302398054 247714735 539938707 800671894 237485840 879110007 916032457 918242992 450444623 135258291 753943764 89801563 635224883 674503297 227830951 518809959 648152497 815882989 248992598 891754650 941363178 37891214 177674959 449817441 970005598 364044015 269042721 429988007 536577161 94417742 368985301 973212746 994081061 403910677 35123042 1991832 265029670 665145293 522288233 65443541 660679131 185065809 389880141 192350266 195369605 201667406 932536469 509077917 163601265 410688231 638699699 148461026 384832622 398838924 870501963 602691008 934725348 226970127 764701563 220919471 390297739 477796292 328833537 584292183 1903731 422521275 502232976 228604248 81434465 59670987 615609876 495254420 910427720 670584727 114605352 579094627 37598345 508313099 404685992 866430781 928366199 361104672 685129113 421702118 297094079 380135132 879431772 953034134 749810999 902117060 272230635 408852086 912194766 478346277 990634857 282984568 131891396 626625822 755038148 925440565 799557545 368641105 726370507 467208608 488250618 481783696 198642849 259464503 321588293 259102785 374473954 651648687 410080416 965725144 760304263 34126256 390090852 824734030 302046564 458191393 966839708 532532865 556054465 4296171 547361140 176643840 721800986 666683455 781531278 724275987 876684571 309885097 903157040 756870190 27166195 375294594 598963757 896497652 187097762 346288884 553229710 440766338 473598401 72217485 146644910 304128234 708890989 393539064 28479278 72306311 425048834 255722506 368124070 830353656 693683220 503561136 336014260 552827336 13600811 532169008 489020117 315944968 529302678 457295851 612304192 68414993 380255534 540263014 20097341 709926516 388172228 608324422 564212952 249164123 956372944 625127551 718080762 610932527 177315151 176219003 828613126 120463951 726388256 690813531 229721113 773826605 314858515 550849327 887753207 544394109 465676407 974071050 33500856 454841712 719881788 186131093 330879938 243265928 290166013 891443581 375856159 164147841 213492653 584473927 725337395 28261742 495349018 744038535 465755274 89430802 936717802 296900125 716537387 838953767 397483605 194938854 304812046 286765320 880544757 618389590 182698655 81085458 541267778 999954505 394696394 541928560 623757517 270266453 817218891 451898475 922623004 273805378 772737848 704086805 503127088 447698079 782298474 505184271 492091180 674020059 742853733 79759105 229186967 22584571 300006976 181441370 17936189 110167284 438720529 327400536 717590601 303954689 186906976 787364121 603672167 216764970 344655523 641663152 34606561 411472964 94012667 797569596 306552843 218495792 677114406 396180354 21502198 875848750 163568134 185916613 943214234 708167361 402341489 600440390 112709457 571155201 247168208 807799599 307129574 294807620 219615180 811169805 390695262 209629215 706290672 871310445 576689546 265215069 629025436 603688226 240851501 512911980 884397686 462228775 859242763 155749624 509701223 694438804 627157973 59631254 465548572 335164227 734811132 720991065 139033 832821718 810580837 794996831 318893058 621064210 973937628 103884180 830579125 969038942 360447475 259967485 168697677 866432707 450876409 300970108 574631557 609610672 682729500 398921423 571836669 659626086 29527918 360159434 841732393 703809013 444265800 547512107 945916653 548891028 586886157 419191765 202706614 232398142 856264676 902781780 192732817 635770546 966239841 818373574 636841777 820632195 678016693 537969340 600487206 233786986 578978208 929055647 55011584 3693548 252995154 857415707 994688508 260068538 991536365 886641631 586533036 248449178 448136699 985000758 426313986 719348330 744952649 268830064 850710536 66187307 647568733 46635218 152092018 977585888 714545945 868438322 558051500 277624738 24036981 46234105 922062590 559976610 810499967 617118637 375178394 651153543 350359674 512048848 884673863 893235595 650571968 957885565 703756216 892925185 392500214 741134590 116117580 275056880 204734131 407910252 620131288 934206064 829935765 92118552 307922710 435394930 757770256 743650060 972164776 174257594 576064523 445743010 627820566 919230608 893437298 594510194 557020378 391043986 719916064 236075773 316074618 475669208 594938709 647695979 214100464 493651991 409425567 307142389 444181495 643078625 912734668 554597428 227378010 899816451 307442479 15278925 634754595 288431035 723537262 341101143 770732388 651712414 7595179 686425201 15448700 170609306 957808691 665711255 833538444 463646234 660381616 401518825 708020282 930741499 687381588 759873871 179912358 422511640 928229318 960869686 122714176 237736491 894532649 714616370 126437471 547493168 774431975 589555469 105841691 604178216 485115182 388027170 113598371 367911180 647641539 268340132 821214146 39985843 781096132 474242115 524357202 20899076 392247778 545559917 608883688 199853176 517912760 255967744 843325981 579040289 856095469 251662082 483512559 821597107 974832715 729365666 297720944 422464000 86480458 938802364 225562586 886089981 496153038 794296945 699061396 735019664 190291075 729260488 660650973 956454030 448055096 366866696 262220043 782224624 854904589 668410877 77578204 332151760 574183628 910445739 330279720 812444261 387695701 612349454 403322386 968152126 666053698 193468673 490979385 693169137 693244308 198509153 490188476 539991200 595884883 524754442 648464185 599647734 170428896 563225433 874384396 992105885 572800612 318058469 344284722 86082147 169444726 985470015 853170110 780866940 381624589 555767601 308156486 399697263 903019290 784167053 429374216 770930018 56426285 286369232 294743536 5833714 72183559 368646386 571139723 417025205 196768036 390439599 764873671 915198622 152431785 956053218 516575959 938316058 571574235 231833101 983601167 480987634 475225988 320674625 118037722 451110914 287324901 685827236 553025344 145804688 482459602 981700768 568967820 478983955 47809097 121759945 69245777 340531509 431886794 167020993 638664290 98389980 133809783 684336012 126072873 623496157 29662689 468209762 132074625 766529301 17443152 168091778 79551171 66465610 655939561 662876440 264476997 238367043 564129724 810198440 367579585 668434268 746478756 324176800 150717299 555990897 849659324 280443002 86638242 396180466 469157766 767836151 511984442 821661733 139317078 855429747 677177946 168417975 218656196 333159870 363538890 278486737 436514979 387666426 551178694 763201653 594432641 153807555 340883176 328100535 900026648 49003269 714784925 800438615 7026088 296643870 267972438 134482834 728720406 177114566 255867213 522106295 904195038 87928630 655183274 390708169 180405374 438720576 653027662 744238040 157747848 163503831 645596814 996035730 847344218 793143368 109393488 678527574 340995605 533909595 915709708 16906869 778207018 448647469 306254285 128287209 340257801 112005180 39380783 315931670 973693720 814170456 649356975 720848432 50816505 682685472 892280759 283705210 457879664 588987463 657354992 993103888 648861394 272863384 223694845 343077917 108342617 837349186 596349790 249775939 72561176 226939291 917430784 509254982 666216391 821039555 988857105 365518715 446631988 714904360 221042331 933877756 521007662 364684765 74816939 866506966 835705458 881489090 116288838 691082519 48527759 137841803 853233101 578007106 255033113 439730683 258535105 374208407 535803411 770732055 945969016 464752216 971144107 378954704 470597723 980543025 126813672 751715942 108245435 936776859 888989702 351600443 733959972 120476515 538865313 726395203 385593431 601837205 787152208 369652786 733980117 348951837 86848439 242074442 791519226 122491589 414948344 728221332 657765526 768017768 635762119 215414127 646604159 162649244 247337390 360639655 416393881 973757590 107646317 836388002 615635917 844327719 151856643 70746271 110365832 358244939 385675401 47044279 232141298 10221581 342123674 960634900 564646580 399268887 24032654 933658741 308476279 887025963 755063748 181720844 977365204 782586447 807424455 152821829 564539156 891308639 792971748 315682699 195466519 194980247 817652794 959385079 586183647 82186789 406483527 356696163 235462311 409432463 667308725 206449423 612546814 467523388 53575920 168672879 878862375 48684483 29843141 910831517 543029766 566405842 261885564 3579247 234333022 811761024 281673563 554951703 850144141 223313492 578551491 219891982 984610171 241830337 564090066 279851735 136660223 430066366 172621652 709912042 345860418 699565600 886871844 362378837 546859943 78077704 940586565 92643935 493998489 3191513 582687100 565345040 674865600 714514924 758129142 262451976 977292875 455174000 401899148 594499387 35197655 8765728 699536116 537012383 925125318 88390930 182386638 793757485 303353812 535895830 43364998 291238605 571849793 855947127 837841867 129753767 225504188 996268811 612765328 502351422 369147398 813525986 85026738 834874206 924712210 78347558 614772311 156192898 863324598 69997831 156280933 11156457 658457393 373812505 418281280 359633382 827625657 383083121 66224109 22025856 122380979 459230670 137846186 909673073 974789878 52799500 853799324 315507995 725553234 942379985 239156887 746893817 229704404 125961773 108273088 219606590 548688696 438438947 864585140 759763333 594356553 913295512 633346550 575506436 605601743 13985059 931258297 498851505 108287380 137163904 307532713 19505065 475335636 943083119 519339142 137523456 906379897 725549763 532722440 87534675 493345374 118720381 573078807 874527536 219146192 432449005 807467915 895381665 550796721 846572428 226541470 557040336 28125297 950480992 267256457 161821545 368138396 262807545 173310116 366768932 618564262 238967399 706288355 161250608 282906354 148953850 682650841 794428732 240195870 469705876 396495552 515862702 314590810 963094837 33745613 693825536 266071910 130719652 387152095 957068596 394639973 256443765 961008650 271178350 225720144 92557371 856352863 173834740 486392330 857921824 893214633 621811493 253209067 300491667 633695540 986738959 737210023 138964627 534074225 553804899 660450659 101008133 199713596 142325921 387074313 255045371 215118438 756498492 346633987 785682815 674618726 374372641 759451604 943086649 999269308 363771283 553262551 126080946 299786361 612638520 601844901 306957535 831486870 464691185 441640449 869617322 841856316 402127881 20447189 786406851 556297864 448297837 670971304 72335465 829110932 798263951 9031049 304577905 458496863 985186534 588602433 815687110 980933901 704879597 514278265 442985616 468688447 648415460 208664955 153991018 923447369 866875644 75146465 657643654 169280735 350208485 104307965 723104416 743714623 88720422 8020322 612386983 557155813 606302581 248826632 904967290 977674175 122217716 739337311 521248608 333416045 496229363 13497090 936202606 247986181 251617040 924256296 914498789 455039450 180241511 510389545 790650325 10904703 86467034 637525987 983337873 591025699 531773480 39807741 108764805 127635488 173236789 960522105 121903066 611000471 619667665 338063056 55954694 783783277 348039503 73103378 268353287 811547261 914382046 835825196 618944901 135957563 361665044 797124931 788526846 230779147 994516978 457871416 710815122 63279908 11299605 815376258 803689476 321231170 729635250 919120166 447320734 686342930 926635592 818241834 184914484 251697152 926480964 770945032 498754080 69947573 66949356 678093466 501119833 759438260 448180638 379485535 573505339 116217259 310271334 228259825 725614835 342170375 605478340 959348012 985045718 707944602 997201817 950072115 111025889 588460941 941642691 117341626 159789032 365892549 862759185 571861071 821145014 232780421 713044388 551779651 91372122 742515952 733168424 589237717 665951859 342653300 812680739 986903252 467790 11540950 273524470 266206070 664672600 170220908 464431084 750888312 43305144 521292322 730366184 787779206 935419047 24261457 55413773 448244593 755354064 849253181 60834385 99587235 833157806 998633269 54182524 289274570 940111156 438090112 445505877 939420752 543062571 134307328 320466338 638535765 718941060 485678711 47428881 437956863 338522588 595892064 377471207 701636787 275273471 631554561 874739055 877998483 256450647 493078423 552317134 518258892 510563227 978761374 598056774 867104647 271507356 427107626 830949354 412689030 878558447 217759627 280798805 575149702 917623821 795726485 837650123 245134447 517963714 758996393 366968047 760968186 111772965 613493541 510814644 339656238 746818862 4746620 613179342 157011787 518833098 199779668 265803880 343396608 104868709 4226982 453390834 364746281 208297088 471328188 105979805 504204315 387215559 617541815 574040988 654968429 298747531 891196806 94963766 72056309 654435055 547597957 811817276 593600797 761135705 930636974 991734258 745241044 364198773 554464082 714197236 399678882 538057061 894279057 809717099 339476159 256479217 459532454 852930687 923729107 361879119 911975148 550030084 502421165 396946779 676147990 566160008 788411941 29082609 131631049 620665000 172615706 339321859 583071919 64175938 218433434 741832406 825073664 433512429 466600305 221862477 248699470 78274098 289042809 984460579 107072504 911794695 406521210 369091660 734086787 872806615 768795760 208952671 926724128 997415266 186929660 546433279 476359530 176278333 903857498 877500620 517516846 945485304 677592536 442056585 713320658 744717203 342939358 159935724 741386148 1519628 574805957 861681463 386526636 84980236 3532491 707516481 533437046 255788708 161178204 990917065 145720780 371102940 243630301 533740113 270496033 666662828 336444804 993432075 648911923 604566044 40693137 143758382 734477344 601536752 214756243 28796320 72855557 895525563 672243373 172111910 640997307 959113572 528389136 946381250 639709770 885301432 37846070 897257515 837870080 78209366 301295603 789237298 901500538 855109021 335368850 992391974 685388135 3709312 578879396 860500150 712600652 826507218 830021799 780978693 885008084 253626313 700258374 113305638 299796269 960091969 110551938 253703882 123979433 56248071 710090052 513446462 61784272 575944968 792833453 103809425 246685508 349554434 239863892 894569745 971063346 684279679 331968591 468436298 56445917 588139252 803271173 78290629 311130326 491065253 387887976 839858043 866650713 375456307 246134113 445029915 849331550 839607698 363231109 508939984 877353832 761711795 19309009 296846190 922154801 731868774 328038521 609790586 730644807 661513540 177898267 502323621 555514783 888497029 417030434 59848455 785131662 323098980 811419439 829783634 214605400 902802830 524069904 342078526 151894951 466517035 108920491 372410787 3008403 287630837 952162117 796505134 532973682 116476926 333670257 550153883 509299570 29192953 944450802 394241379 61362865 477407027 325377028 684296943 247762355 236530141 777502766 711067898 227591447 38366159 273618280 18930915 978873578 90856493 420289946 291688277 573450008 767925651 584919705 306054351 736179948 173532798 380378384 532838599 161256769 202383746 230872886 965018273 867159640 347682889 550067841 750140381 988830157 325326593 430062290 449059327 723183752 801502587 73035270 245809801 5786624 113320842 111514630 384222149 929365761 56385516 425765929 397757178 615012772 948437287 986211960 165214713 725436937 501795704 748908217 912656903 223494427 293966393 911432766 163369752 94483704 550655009 869725410 428818135 322310732 640821300 179990849 765755813 1757 39702442 241421670 898972128 65547396 498473057 566283659 622568639 579537357 165421152 114942604 214959189 613291394 214629032 762858591 661262636 669907128 347399143 972455296 255469796 619225200 869824458 552291443 323311384 479293969 223043639 399801584 952347557 732343269 597655735 186410721 264466208 534366500 336060236 207263721 641054657 472546314 616367204 962471866 662338512 46423180 140215982 709142903 968949967 100289146 604747851 524365407 343884235 467614119 432352947 18481153 452532821 651214596 821293562 602776593 490779111 995645932 839099967 351030573 775908016 419612744 835583984 366421600 57174411 340790639 400126406 179613059 807025238 439882726 140358509 580446875 922021592 675039064 913093619 378909954 953706092 80335933 517037625 876620950 861884039 226730637 635307950 827654463 478368557 796168475 29858172 399225901 555337123 603683315 767143269 949030594 51037483 349013310 167964687 721217143 294752097 471443871 847071046 187593183 124140953 602536024 965232958 3998482 555659322 494915600 883216104 982186349 251473416 390362985 713568676 416763057 394658377 757470552 717545542 356565927 356505292 660587634 932074355 57525997 274115293 206365221 874558746 603997718 516077328 168613293 832662064 656031798 285772422 785485558 192583377 132439263 686104494 462382837 684856804 411459057 899318632 704726598 641650895 705264051 889387151 935020888 631987794 787546314 156692219 960360519 201964582 780843545 402588067 605006267 178978467 786173856 18043505 703533858 307805197 675828969 458243795 671415623 824211783 390577353 746454684 88124452 822156646 108735944 600160802 906625736 167974685 372446011 771180922 845145164 361662227 796262722 820873145 960980433 980668129 990086604 386981543 659603108 215953990 905104285 304124138 480090677 236130198 135803606 449563623 566115650 392615343 937816244 547044764 698569536 14028916 3357982 107070809 963271353 246939783 366334871 941695640 426182130 609066649 782655357 624872422 607788411 154831383 879219324 58311170 482095432 818457077 19307448 873705834 998801263 620652497 115894802 663907766 689300680 461141701 716538114 665949224 37132971 720361738 563920815 139365534 487639032 947650722 385370291 998818743 893914569 813303713 620210438 891925780 97158809 272241027 413268678 497574916 37525637 814631440 652336169 990334964 575485555 933335827 663491376 523194800 468263472 761778977 806912758 304622386 51803460 950301075 575475609 831556520 942662476 82700762 505893887 81043009 646812429 893515088 409341268 503488315 176452545 545401972 495398044 899590975 216666045 361585125 131322192 332475772 202643004 630987759 22402918 157526339 263855670 367243874 25912897 555576704 448763924 194745324 284443849 167335407 523328621 843682382 791027558 397468317 492188585 376136496 564922042 932804415 345922927 410768044 643876284 805966188 606930329 850571941 30598296 486008144 954440791 591872458 784048172 262253015 28557928 986514007 253834890 600456912 635469913 738584724 796203670 535149387 515674623 427561301 572645227 670937891 991732971 671272569 950991245 863523855 153606184 460143150 549265474 790615862 522249687 255607079 911855334 398991839 402561242 458625380 55966056 662780257 459909135 113102282 335193815 589507000 762476938 61455468 925832713 786822107 653335941 327055658 655209289 575543719 958005326 368425756 887747268 296123468 730069886 685669960 146847363 262157634 955686885 433591897 142375070 8045099 611839303 216002437 291721289 247348043 982139488 621645922 636222597 770045243 120386852 422345629 901195225 839011083 836677270 617176920 950821688 308897280 740940951 113100117 555998500 797685527 779987417 84176117 147284561 283643721 802026633 26052185 627387357 264342986 294109773 925975195 885235975 218453081 304857818 575354920 233428118 140075863 646614580 469653929 682682729 650086401 686107283 275662404 841958456 341224910 913697110 882582632 819572019 642257536 485951330 51277837 93536045 939291582 973396591 879340473 794215733 475655458 918588201 132647491 70114839 147295435 414376680 338754664 810754443 527053777 531641214 86075909 88052058 88222495 701228980 186361469 323589778 879128839 482704743 212339655 843691412 636952345 400862624 405774278 654331494 873787034 95715008 681193268 978468200 135985183 799016980 359637861 62905595 567340693 260817014 659930167 956804953 843007751 152087111 636157260 420939732 620269568 229136992 279356477 141371407 935242094 178749216 963194752 656220144 225955607 894871177 581190593 926459646 406702274 52055285 805844972 873890977 634400199 673067776 899476292 774260843 362205844 100747078 927498909 73872169 885113663 436266888 953847406 469906965 876595448 673347568 279144869 930620336 560444637 297683949 463132508 637551302 241112619 806862563 948623925 140164933 78115934 416527187 34341901 606106269 453414916 639735639 43162348 91863758 248276435 804687842 139270528 767754517 357943149 856113665 355787965 218450866 483790469 724704130 29317793 514955720 34025885 203644336 634579975 213462265 307164883 53478887 102088694 204118669 360137069 526320129 218944733 120037319 450439299 655004888 969795648 761524140 238421528 515647043 575570663 367756869 932430601 901723111 264337244 58808699 732306737 686602686 465637442 898933697 569663716 689607904 824067154 469353852 672466444 268979186 21103125 509254637 277125900 638749465 874584295 811402255 166411377 891404297 799279169 632351949 355179452 628032016 225690824 923627242 879335088 83134324 665377945 563066246 212155369 367480766 658476014 703091488 869887700 246251377 373241768 576451960 909992696 842365613 484472846 36834525 672576256 64766828 734064319 206405179 938148687 658224603 139704220 612744220 462916071 192585790 70979376 557764897 292527694 295185032 212837769 526261457 177363827 429021532 600017270 248530170 837814008 517577215 850465777 136600036 550995406 275803459 890468159 498862782 74893001 391683792 305724827 95863574 529126179 552575633 99656872 788623164 736020604 994539341 651764738 974804074 427431762 704138282 37375794 401358462 743124812 182336418 109183888 870227476 691579235 699989601 437468744 180114844 890386279 272101987 520626363 929512736 903547642 716981817 663050743 477883431 313377846 610662385 823002700 873394979 492494524 736932253 865266520 130255747 116055232 313953313 363082305 800601129 994479951 382881969 521343584 181982391 365028500 381312362 798814208 320221828 616290926 870609676 153939954 861889355 727568252 405729287 31886958 302751553 231475215 711249886 318329598 700128302 171133360 922039008 233927055 933860798 284855521 759303648 132250835 17724918 15292479 527473260 56387750 491231787 209713580 893290993 163192230 825565820 241789743 375138020 596175964 986143701 898874151 380469119 585550885 313948921 434824845 507768837 234143461 539474137 999870768 792536250 645299125 34829015 592564883 721625622 697945804 29333361 633647605 992955533 293999924 330252481 735998439 321900721 890900013 859033082 448713421 434182504 7151383 346565893 786782142 172137991 948438591 210281342 478604515 274126983 821612390 226599540 22022718 606320124 899247678 315274858 708711246 439686263 793348808 317521965 482757996 608706023 764446055 233140098 862978789 286763890 134275544 171058049 226260617 209413057 466242455 241599404 396162308 454817998 266905558 301966641 871457283 545745747 557490517 403476275 347257627 516219491 242025059 256105554 406086132 922758204 861798045 874567791 696436369 609478963 966185411 892565197 115549002 993877762 475121291 869069550 671638563 363861419 855506124 898773115 300591973 989325593 61299546 612602822 401157352 815797234 720236310 34063917 611164483 322878369 92811352 757987000 954702229 85678673 889251748 352358611 903091360 644803803 394384019 308373931 212098094 765986133 762190660 725377816 860844527 102435447 396193940 549336251 161993507 154762439 47982033 779161956 506183632 642509203 254360479 856114266 823646104 730160666 670873416 794754008 822508371 835379411 840518189 342077714 830614426 586924044 107479014 20778371 953692918 135717840 382658131 821458039 154064287 770698342 375436128 303809324 333229030 599832585 859553830 302002550 694779843 85771844 678054329 396977687 648343512 221640366 949017557 232965608 334121000 239490137 368647379 220138374 493552749 40010216 556747231 779940825 539937821 60769041 414983948 136942624 43378562 319328813 756328748 563073737 267472130 668345410 623355209 328664691 368400859 480765347 989229712 383071980 892505721 803037470 406160370 879939869 1590924 966086366 206883475 900821946 230928501 135578372 946241108 560459834 58010870 52927208 79687366 410330723 794210988 820902113 570568017 522086800 870074997 304598043 609656113 441905856 472916829 739063858 356712206 577074590 639465888 325365523 270865183 327868470 343736102 816659314 579835709 122234475 715874360 942722442 72697047 744305173 624110916 607627126 754674705 786760163 570733982 911865934 357131641 250818094 657268262 472769346 465088500 241005224 308189519 187562105 519632195 417404737 962029448 133042678 876687091 861811995 507824522 292459186 715811458 553187892 977583517 772843505 400136708 135557452 160681336 183665481 71109356 151655063 249905734 523735991 124324923 105357291 775538607 40968950 781755868 853937081 125036559 361237807 270903203 327321773 777273217 868607471 302220533 322107553 848865116 157368332 691628550 795422955 726235277 729666951 295188219 462977993 547559593 553151307 821988622 278348079 250802764 581444221 934686868 960573353 243551581 426240981 998123142 26512274 458598904 559069978 4640252 195966526 107449623 495407376 664060252 969603744 242886330 476675107 849628805 162688592 974082276 225466150 52894862 865920242 89372065 68142446 261719466 35401364 75040196 932212231 44562835 710850790 519214290 592362539 698264559 112867829 671324896 853467741 978084827 145305674 859935625 896110135 641026085 685491582 888911341 307248687 731574672 989952505 787913033 734671059 957878670 224564421 145580134 852131997 768594876 705919638 812911821 544011475 191711786 168535690 254787849 228225833 759090884 490214840 909801066 815232203 953034023 119044654 223106455 201542281 215614545 807304704 251054675 420073843 895713564 304865931 446158393 591246255 594233406 144309992 200480887 453532062 852694460 308950948 696860204 858963081 985178793 12903977 292682691 56012409 732765105 588122143 168646984 759736616 914829534 233199662 811641977 158670153 305587473 761752383 229797547 292696305 335113163 208108343 176440855 691002396 836855905 405142904 912644937 976574504 898995526 793868437 399972519 196660681 338484456 156804967 474753661 320521027 823510239 734686610 43795447 838148022 417689176 757044726 535932463 982668333 429805253 547957225 292215896 549782131 970386342 48052433 913422111 646294156 336914597 671336830 116911292 14554089 117436405 842537131 33718948 839386519 740585961 17161395 886456841 56058046 371706547 145424429 80362554 564513882 308043297 507332818 833107058 314175860 996009150 138870061 689978229 159408995 121925645 873453321 291211357 553617505 464785255 637200188 600985009 753322972 516963329 254109201 224621051 297277403 556002930 701472685 899371583 988725349 832640247 986905615 843408446 150179310 834915409 27826743 65005263 557513099 780516814 686479964 47397811 940950099 841575238 512576825 768312850 138042261 461404584 672654293 410851255 770085519 901550612 910719533 281726675 482380434 200164209 248108306 780043428 399880217 203762458 404806828 83259651 840036844 577017109 65292843 946162576 206951142 759538980 922567841 995530745 386875473 715781357 123547662 200644720 523928777 749595495 969086013 292141227 852519914 114228922 5417817 203079497 271877328 764626933 127650457 388180181 361783518 387980961 399347352 95586538 574853776 182686211 728375834 83036417 600706310 215950126 630814683 723114564 10753856 750299658 502639933 214037542 889992241 722553955 77136177 88376272 889549931 382070685 929556818 820042454 546455868 207771650 573862794 62319712 90989163 44164452 435923919 866846173 16652189 364129171 740729936 515812570 400790171 1530466 671833319 534867251 553437611 45982734 435688953 177081171 607967729 975076867 544641217 263538221 946267280 735800967 981816632 829864012 76798230 366975051 362265157 485424299 341890924 293130748 979844242 176055627 963979796 589124122 740318236 508409407 124269107 249022255 706220016 79450528 163289787 653626049 57224997 908438995 645191186 346294839 795107046 780079611 473699374 579833292 155440710 122516294 616712298 562294388 342815830 175611055 302328867 297224016 812749437 968571081 482629515 498476372 967808396 889501104 556109999 357037154 130053958 927274188 6950524 803989667 596909767 292381521 843602212 194626299 948638866 999251518 650772618 181680935 582151567 135644629 157583054 79972254 199076395 215482788 801772034 138578118 531176272 802060328 378881731 909435071 678318019 578498485 376414697 726205462 166653525 400184953 765157920 336396954 580676186 785487610 725656360 754412535 426439261 604329070 289948801 941150862 22244847 728189667 83753830 220402564 249812392 121275189 92118480 263605145 30558123 1754524 532438354 821657065 817748325 795568873 725285815 383617872 976969912 726659495 556719910 833503538 598588018 717785808 866644804 671080410 180827912 564725109 918354937 933186834 205016434 207912241 727635679 787018775 334206184 368233002 670996234 869209807 475688930 848956183 659930108 573952477 131733448 669821078 742663213 848470564 554963107 36874325 558222323 185440130 391128825 517902117 253893506 570582076 75281595 983178093 190178985 815212197 337057060 876158790 711060600 494166191 732525534 698636058 444897056 534987847 112317919 463271953 377389601 159278386 56121349 695804124 251670403 820369882 993150480 189506129 478122928 538290609 216544333 996111372 541111403 827567157 608493108 45703563 550551009 508766141 69325246 735386935 214709664 245398309 846600315 592864270 669372735 488182988 611436824 578472660 198133903 793621393 281828639 307800782 643334722 190977536 973987882 702665789 299670301 603013163 29038602 901530396 379887149 196630488 521615362 609979446 480312940 273788071 114083207 444017064 659044550 358095278 438335400 198737099 881839220 427107527 487646735 32707975 512391436 816851691 608695309 925196069 667536235 163037818 261797620 773587944 947553448 842525368 136059542 396563937 818358596 35975778 807863454 361895313 748562278 590471104 987350832 386978765 459834489 78959620 710530904 815012997 594355701 622060211 683072858 891845202 526724448 136867982 602829315 734548004 216872203 494154173 298946761 370584661 959966516 509790266 249283348 220959161 52699053 998153169 283718562 845275566 631193757 899212159 242548427 449558805 535992125 780487720 795175952 700836359 314484068 281988980 668931937 318286971 175882595 508153205 795287933 189366713 936407405 683630860 516876845 138222177 269024425 614877736 860488157 467719955 139159259 423993614 301050427 628513711 986743410 297256227 686919011 702461678 392342903 859444752 881362595 783775642 618758733 930605326 742156313 910418814 775381016 990064722 961429644 274434563 264876886 853234229 562317023 237459971 441351275 308610054 291329538 982413871 945355236 578466880 218297949 134027057 721188377 202925019 708742093 725281415 951970340 346706121 331922245 35959751 542082483 496617092 39899878 141879235 819265556 603663989 393281177 47239002 850743945 488125057 928910765 107719923 61721335 65476628 6773405 367953290 292669393 194014518 393575829 933350741 140891436 645528686 378499887 115320857 834165823 271625802 143386026 506814620 158995211 707092302 49137065 462032076 637847672 535783409 90329709 547973078 350680807 226571501 606684980 317733658 677562313 300505237 404345582 483080345 953354767 922949599 760191978 144090176 431334262 762898708 218250894 573190178 324469282 87779540 748055363 699016305 960503177 502750624 395808191 855691955 554002917 941148829 67517414 112843411 66387732 285166022 193571376 677994673 541903313 971308332 522295403 354748950 334174750 195954589 432368303 792342926 301872648 33354198 887756905 170137920 478080132 939938402 378938036 814032354 171074814 175321273 60063282 408985125 356290693 821085445 994384688 43301583 960268244 915364887 494661953 187794016 582141389 473840594 913478899 283486179 69600302 355785933 712961108 175409260 736621145 770322534 737870476 143637316 727641399 626540350 993410396 80013898 806859548 225054204 969133573 62676051 50246738 745730063 934982775 499120321 576894993 192148872 128374703 630603654 354035285 736353095 178554216 225965284 421883462 769022119 383451110 928397786 567107087 274048499 846294280 981172097 569013914 719616891 356233019 521585754 634817341 267858150 654362538 409494199 435695198 502012792 753255528 206924456 784923877 857712300 864657951 907403964 267760765 979324827 442582366 152450204 630473993 199426328 161610204 387270928 20324350 868780802 253626100 883475774 837846172 92173152 548361094 57046907 913670177 754408719 9036651 624479662 328977060 386313671 933502999 19454125 961466389 496624891 629404856 931403222 454930378 668465529 303638524 426734240 520863 915637321 204113482 927334359 873457461 314115506 567134382 286265139 181390690 985065800 57844446 529168471 481052277 625717634 188605418 366304067 338079399 879821269 764184319 546030260 949925786 15139580 884062461 98408429 235237559 743554011 352625598 901817967 480734046 41903400 866992014 602910261 237293544 591326382 24817168 4971945 683550111 177412783 771445528 789616567 40812836 265129318 365408156 721401739 999398527 180014259 819533763 839769435 377536774 682295459 110778625 120344027 525658975 619452189 801713684 654916959 976268819 860805897 114147717 330860186 235953018 296738223 73074380 709800749 845663023 63759975 923587036 900363844 611864891 717072048 379799392 669084926 481411263 585419013 652371663 795741013 158280047 460704055 837544674 477950406 343404434 589625598 195982702 524448363 776934729 74298499 348072737 51611418 140326903 85133257 905353397 747246980 687653853 632496954 137307857 802264530 283299700 59258742 775431406 473370725 947839855 250963292 9905837 884489114 600227181 376817660 586009126 973755651 72234510 366578265 714227622 306086054 661724106 194674088 443030094 771503795 536143618 599154221 960333229 712812442 382841386 107415029 862481323 635219048 978756815 660489725 193250682 50101931 762226768 877529236 60871265 905114932 437785133 596715793 753801189 69704334 593545205 312419676 264372953 415113060 536902793 50906741 913243365 657893244 462700333 609571924 880788003 719498548 177945004 468914862 819033548 924284356 58173634 128214561 902705539 412841907 670242122 305124848 278206132 472465162 502800881 420447232 328286093 401143470 335159224 756334460 807792764 235692584 790239851 90339369 236466714 27890967 605217455 673613338 697355205 999385203 142478163 88824880 46093256 727362571 749938377 194861394 908514390 202909343 412063727 510781634 203330813 685616081 109961769 133459698 300147260 511474139 341819563 131143136 88074887 422057248 733139465 228969710 656073368 676930504 272567938 187502633 862557212 311250060 479021147 534957056 51949031 175649030 162512879 403728797 531180785 661969173 79535143 765671460 772813733 933450718 323029100 123951852 630520181 469672041 101627536 374853124 348876561 363476774 78061626 969953618 496981943 413038389 842141164 676984595 780047251 422456613 906233091 127598953 296402192 62281888 150928374 199974606 70151243 480406118 578930807 917449080 142695172 289668220 201919749 456473329 235674860 841923825 635088140 539356062 608284516 550241054 828983211 381254716 288265220 539656588 632814284 108317362 51507256 701474421 217598018 20518226 409436867 422504607 673158018 333634803 995879593 797427276 120407474 581739004 327501471 867827053 847153933 830041614 828385686 10163511 644869182 108603256 153955949 973476454 250861888 632572059 359530095 586262760 441360155 120368315 308484413 897629605 857284267 769099283 359337943 420483120 899862850 338374818 921664323 287433175 459994877 669665085 780674230 268824254 15878657 46443417 708448070 736866980 834347369 653371285 392913028 58179035 170715268 230484390 322410216 643825567 873477671 583556946 618497005 569357916 470347789 526480950 10184081 327470483 64200782 422427182 286004710 927315402 708215559 229125581 644646941 183386206 845029554 130506342 101241152 885426923 264645639 799159661 261019094 149738552 801678578 477880692 60353016 854382469 841633873 821579924 852885468 800546499 281289880 51654447 225298663 146405938 65604549 707949852 82748723 332920705 385521107 289814393 350403150 991402782 411813507 289962512 180606202 732882049 469616906 792954425 190958771 169050952 316730492 759850798 935394625 310625708 929581974 537337534 915839992 971889609 760114574 109119220 628669244 671623167 423885959 532178744 389115624 14645814 52473045 404475784 821087285 52983666 209936018 105619678 2758745 814697449 497942286 931526806 919029507 697571224 666233103 36744146 925760187 621892067 174603193 938785918 841627291 784843846 25863898 133943384 79727485 187184258 64106551 335935549 510265556 863859334 761603647 591100152 339819642 852919448 256232920 84040571 311088240 776004479 362131984 27927365 529721357 395437810 631482508 275143893 256419669 793727124 517544423 239329097 620038205 589299079 664578691 152137645 240516290 391969825 366432254 764455449 421928838 951066186 749606819 639670153 457080830 997267436 189949357 416580058 836244490 814940336 856917903 568001320 175762636 885052659 459728742 954496524 307824701 633513628 240222390 255952686 965473012 623172857 496031985 943220558 852496964 33924057 93913469 169922213 340221475 860015572 702878985 340422159 350543283 151513207 216710585 460956706 185305852 528314262 816884249 547415090 564899114 291222309 776241967 669238386 810145824 853123346 811576393 264537801 712003604 979127732 883932905 438295578 74301311 566460861 450566705 40649071 602159268 180795802 876108269 411989018 399319123 657078869 957249407 369253837 669717835 150057077 715821610 388401326 426687872 744996515 776187685 198543796 691359973 366552038 50604847 262504474 101759196 329710069 614647296 320231848 371490099 333991004 45468096 220235078 575905874 353169709 345381735 729951724 499098921 266425092 43819704 217224226 93051559 110398067 183508020 172063396 410898459 347992007 700305081 990068446 975114262 548978292 3404790 922219982 626560242 807853103 801189625 172815684 191438471 635020414 755707150 3618400 764011427 181785178 205007449 355862692 174913844 299012570 496732563 751425412 277402871 449694231 382923329 895184026 195180395 508759761 593532925 697470084 528151033 501550907 258089085 46824215 805982814 183262548 594894997 647966796 293308008 491593192 112337111 952946632 29927901 459758514 527292261 487269820 132664196 852661093 736913494 491893892 579974625 116527015 182076618 432859400 829465660 311555424 415505501 950900644 627253921 495474363 998608720 563370653 106785106 623802697 226347634 358676389 205430956 106792530 650577399 702146492 313132553 97729436 976704310 636904860 331295546 260383565 188930080 13951717 568901100 576559637 64933498 813585734 673406811 488232524 265420533 929213107 511024359 78858658 329861254 299715057 590055689 157319396 442037753 34870255 416655424 483366590 503563624 140445137 205989732 192399493 939875905 309123642 245083864 596661059 878392647 436907904 833641548 430799077 435011599 772962302 996940479 227431985 953624166 454387340 405192292 45666260 606520248 862489381 256408176 384182977 257378293 854487520 432738763 468330780 897900517 268388779 193411043 676621320 739715956 903979555 284749648 318919765 789401033 668669402 532927071 146510185 457653776 333104076 129393973 480051703 64485396 797004385 688124049 90252885 75762436 96285001 779232820 572859459 564608604 854744068 403456533 169053518 66458324 345729257 613752422 382157355 828184726 915665542 76293734 500746541 492529474 828638366 924312318 792380948 352017592 237077602 107757182 549193105 957535498 709811358 2098614 373572204 779636091 937145246 534367677 643212081 320151937 696101351 587995693 236269024 417731515 17637302 139241082 461956081 471927338 452754168 754259835 89806252 946459463 581750909 803007145 332842029 822991949 420487543 711326519 27799395 748139522 736519447 634449958 91280574 204740710 839916310 899538892 987778956 96685280 537514076 808788488 259601118 572835571 140692292 449628993 900482004 651742882 210350024 287247673 22673220 916186295 39813018 635205720 146001696 582552693 971285003 574252774 393722293 630723715 177211403 942419765 418906745 426321606 938399700 469514188 697981874 121611002 607022556 467146853 109786315 124021396 883945864 59785411 868107269 903158070 819419497 333863393 514719885 413733758 271304608 706984649 84914260 130954000 626595021 773431875 664683963 244916064 632899837 341168927 683286237 46635712 323189677 5885035 776207095 414785521 810263760 700500936 25875698 626141971 702833273 336105381 62618926 506881135 175372914 189743268 961207404 118226826 553975609 271390699 929034534 812945858 694244656 530963079 608883370 573507257 144768732 224705925 35956172 640807180 300504353 400110099 592590158 665000916 114273907 701473777 369148204 482318456 837789223 788294761 805465961 858757043 393383183 423927358 870919439 879451721 137320307 99526509 441459805 288477465 688953209 187908746 553408813 328142842 67340819 908352477 440851361 63624567 176769784 398021618 302248239 481977265 497381327 890269216 143282133 165848047 413299517 236408674 345160373 581029317 938285942 197377025 76560103 785744180 992299762 387133605 758693657 414612856 998081798 5811319 511222881 641273138 864490738 875953528 982291600 873196434 834533142 667987959 553583131 177985506 304835254 892831767 853661988 589832024 467083205 924922269 397542829 204327355 601606480 68675942 935578768 251263683 671180269 866825955 285766056 317844184 502774222 226994639 277383773 713971550 2597290 451318623 429708084 433438005 751259263 605401102 19374963 823625531 681172231 814828597 660725861 87686624 388639102 436606754 964087209 941399843 662619432 829069202 632942859 506342848 798266855 697073386 913999139 13993316 267662802 209621221 93837956 437348046 985897713 273744261 590343048 951703691 8854706 718106842 253708198 365170366 971030116 350911064 780198173 178099148 636832433 699669307 91529398 77905898 147300116 206786633 308966690 142844521 755423486 333465185 156721767 870217579 787901844 565796162 927745441 240499104 531335902 965530729 11582877 936864736 941276060 747138390 992812965 882219878 449544812 112941642 683037582 661925154 421933068 628834407 490967801 442305155 748863826 594732748 81629729 2844093 183614897 140356980 651714451 614545967 335496417 338168113 996303991 539930282 827436218 410430561 332560001 313852112 877189190 944008755 760729471 759490791 795508959 490134344 668722520 431127807 697077036 763415825 851400063 332775674 378749908 663638927 827212202 751461526 43154859 365259218 867674828 963763743 738576540 648895196 972531253 151952311 943022131 604109886 528735708 214282958 748393270 392457337 63621977 980647555 849489591 581683945 478898104 951013588 321676943 535307950 703839235 626655594 866502134 851516151 844517497 216893593 627383222 261443204 545578633 245654805 408579066 11271524 494353323 82469371 767380118 192695106 933533277 876463723 529496556 115739924 932753751 114582458 438224974 577746926 176207600 484687864 154306620 842586913 304652044 334082538 263287842 480671126 463044733 318237424 757204963 897691354 427776401 903461320 591801363 822455251 973792162 649618306 799960272 425224460 375436222 90416162 985866179 614875942 468146271 356840608 466532983 639820425 613351004 450332185 623523014 241180842 878860541 966282969 213383502 834868320 366011833 373923294 151738449 789540863 291626262 611462437 803403709 261738653 239175825 886215596 531359559 767413013 20545775 309742537 210322003 590100769 921531322 378495311 314763233 386198952 296872154 938984085 137722924 370320506 882156780 858938708 18868019 236210296 10237940 108410546 657661894 765780742 324692275 196696171 414392439 31383163 417641815 980546715 245265301 345237974 555817223 356035312 862340601 33368710 420912662 575371402 274530936 917560986 446698420 488482836 434752228 864805130 550447128 986616616 663105815 675661293 465466402 963988428 445192596 56767124 789025021 600698861 604204504 748375171 350247664 324198983 488878959 280527154 653758119 848609711 129488523 515699467 812167074 699415367 836113490 150314673 947264964 897427580 273562010 135827340 411977722 634636534 922200871 531225171 7360514 607528208 68434186 803934891 82329022 976417442 799801520 364878634 697721558 409686801 109434625 969472794 601437901 481902022 78400296 900192641 308852228 412681917 161791619 133083023 447614421 779766105 79966881 490927435 821830644 706183118 645590690 462556011 153763735 495781356 518311283 449963337 42654544 949376583 545601262 683217778 357090842 97983629 850123851 692597111 228679387 855243789 997148212 317978401 449894624 66084857 804258024 846056758 115275110 596802150 771789462 13040959 373441191 600700033 896379346 569250353 4104792 916120931 465075380 64441015 269977511 840435546 943892042 211607826 357050090 960178951 207330341 713803014 268460325 183324500 383501923 126596437 481160865 798410658 444252089 440280895 829128051 223495480 432210923 247398816 77993055 927995565 402077107 589276781 758481802 830273255 53880184 802162566 611178350 763560935 640768503 532332157 640338524 308888299 390366825 464284713 484142726 492693993 366632285 613944340 649261343 416912712 33796534 268949769 84930077 294658980 670412726 865452771 761008186 715839293 816476248 28247789 329942445 541040051 636602397 663259256 505719416 922228508 855511939 984451029 902621047 237668790 216234384 260247736 974911558 133901010 54398582 860171389 908165024 553723072 621856607 25734156 717981444 691411045 768941553 897485723 818940825 874859414 875467891 534897915 978750907 12929101 233696918 333088919 235889343 313939713 658716589 953774882 456357277 27264862 111403566 886622529 216866280 578340200 964920390 165384292 329644854 673946406 982137354 729669069 50521945 938719055 762255471 687467635 462546467 284691270 369779557 366029956 44006089 456029928 122219412 105903839 386289658 660664704 442572969 514731301 418980765 815897056 238105765 237415109 629515464 122493588 62972948 851656126 705067836 210233722 725103320 216920410 609751520 626783510 794825151 971310751 762875654 925373246 519871687 804951185 736849258 563325549 463962103 43343704 978921739 863393817 897847380 815120516 473227501 255846543 49679313 830100558 42574393 89037566 40241648 322706169 880597864 185157079 844804490 807339833 925065034 305940417 72114393 502879707 498492697 96805721 826214679 798349359 461849237 779578183 529962208 842924709 723950947 719946644 584393879 830521888 510757533 644448805 447346507 70069607 173411151 10451872 738430198 414886278 693922635 887309078 670818297 668457421 250641146 275084588 769244797 858659578 801011046 222769128 771188642 762519500 809372887 445692570 445567486 294452355 414312705 118320229 28227598 33387943 389818339 696762479 425169634 935305383 596030355 381961646 69818590 737458714 760989883 593672868 238294932 308593646 946329056 138586695 25552469 197678260 325106355 958473225 267867171 825226302 280151946 339519995 966077160 553504180 277403290 824924042 336010338 891190208 102498489 476540890 945874466 270309012 963819258 313922750 452913455 342084102 568472369 291027977 726343817 401938587 422972431 23343552 650981762 227556960 473623300 870339184 812081002 699771823 902624584 965779692 929602707 821829254 535986369 998995742 281144890 660289486 663453088 652919434 557901336 73574779 472228862 677666834 346707273 387529523 322082317 891465186 790021614 14504854 393197969 713993436 14937011 951202758 689947285 132786861 832606607 801497821 518853074 652521618 49345253 326191775 76886339 67299048 433691865 842378346 597168929 419688259 274598446 342905893 655788365 514037518 709830665 819151644 342432165 103058719 576824984 393124989 341184691 284267615 562465570 716660434 939322361 692458124 325895483 4517341 566453424 424351891 821089654 809764895 917932412 228750315 754186080 928392198 857859675 224275857 771629629 160926454 390340193 813573300 451980843 78513119 864267619 530674773 920641151 439546308 566139724 406505506 443400556 628912096 87977340 990537205 969354066 438430345 935349876 397995735 129380228 924306710 625753217 577265902 128142437 411343973 222416302 502106626 243142936 602922439 893409738 174885112 446639660 984448163 836138449 342689803 357366958 301658474 859695819 762113654 265182952 520716097 790110342 683193779 699802588 561740874 495387196 863698487 268478842 333211657 883525519 666998563 62812569 763926801 596156164 141690002 605185601 284916043 711343114 484644838 381404679 436872980 107749477 197714061 796125479 967508235 174375882 486268118 381720855 334223215 261128638 555991727 94705907 74913904 774473979 317638338 945673109 333519510 349831443 216202437 591388863 569745879 880851129 487040563 298068289 858754236 344017573 822528307 834635183 138548635 519056967 238014392 760322338 65302672 513797893 944438764 24786662 964684354 524016870 806138352 817908608 677036595 357306312 226283190 62835331 654156928 271448835 542298915 839514954 536807616 940167520 986143607 128906003 811869398 386888368 447650455 73179866 741150811 700242345 874016597 927703752 618177782 907465102 882776572 359319684 12376285 207539511 937468066 585831393 525878670 378322558 62155462 749183084 158466006 974888080 856576998 969019337 657818179 299203910 700783986 273543585 636754332 595168240 792920059 359281736 726614017 436943247 683074860 51774997 974871221 467481094 910679587 807491961 526044128 982963173 770143726 526928700 143162062 58664775 607314131 942797921 458998985 366829227 332409348 817962477 451837826 436913421 776896315 363122388 220378122 578203813 718423941 795580653 818121325 693446139 80665253 379244728 95583518 718006531 979203783 586116613 861277459 223995452 579697001 675562896 791838373 505875236 776830574 250958792 673290409 700950414 189847108 268777162 669090139 791562980 443992693 73597508 780635076 594911192 369448874 825768194 809581388 880457841 415126893 836808590 535917556 598350146 775480889 515522771 853302423 512380303 512377334 572613223 847876529 487254162 602077618 926040308 472251724 48061750 793706857 798477136 987477585 388604552 328339830 632262064 864572244 603708634 554886589 369750680 635777053 105296718 158496159 910778154 668279705 43225501 151198555 225088910 271701413 982902389 151352218 416341745 685657368 348789360 664320988 383899210 26684760 287763092 775464698 6556978 590317683 11634372 655613357 419243096 416032778 549483032 828930139 86428120 316793601 585629252 817412442 943386746 426131834 246807127 624313041 48996494 447390736 339278800 997822432 806043589 270478483 968319694 413392935 421466546 105173744 653645916 545606115 41904702 840058436 328549174 240973606 960789041 800836467 110451909 762717044 558981632 475123685 568823834 510445382 40769840 87737836 451051953 910374110 800338643 378636684 193953977 161937966 203558642 807955376 670145746 766298042 982636299 937125789 808280220 791459730 973535659 88970246 987229775 305858805 310933424 128830237 499433406 913721966 449247975 659207161 426890959 818767009 52634247 642857563 566598821 843911043 72988116 754802834 176899185 95119092 610110982 15166227 889144099 968987432 695974249 810973967 308868986 610716003 14905810 137210255 531150380 66389916 61101266 863441344 548680783 293426809 339653300 975546460 851983590 188445215 584085693 87516116 425441779 974916841 884170047 332917703 606384676 969447246 86812755 508032841 141813742 253415225 998292903 614739581 801766990 143432882 932950431 576441538 521829686 389209651 196958144 456999985 329616204 822394665 708544177 965287457 589980879 285948847 748872549 239005757 541994311 325343780 120862397 199157066 587872092 716238126 226842365 667952472 31861238 479837180 351477493 549225498 791401436 673293991 681950772 253969073 68164678 214035632 301487401 861340328 279384282 271844579 15926822 646523853 223891521 613552339 382402381 13365377 709400827 72922491 949665969 693055349 974634081 452090189 139832693 520022431 711632260 116847873 365131229 421929997 873681055 575308871 608711328 302071269 61296629 208598114 324641113 506551315 210864389 770023038 114348502 226020284 157543545 616614628 556609530 216489221 440116050 405073078 259186725 429126614 204914355 337697300 831198845 499970597 683297786 480027939 140977600 944901560 709038862 475087225 796313708 250432023 335964070 350805027 461871541 864768090 762651442 69360043 24541880 336668890 143725034 181149408 843819286 642835951 794558593 946800037 700855065 408586944 307019444 623026244 357833237 92599606 815620543 512325576 268020635 447138015 426624595 305113108 123530810 200109722 772742562 839075744 543937224 169553936 921497308 347311134 146032793 856897937 479845406 348958391 537490494 638795532 879945189 308823553 805333699 84722249 302879466 994271909 588539431 707753503 422177688 273716075 241553427 616494813 311087178 868600604 709567328 539971677 308459953 461599153 864612162 61934541 416797962 941140175 245992918 16144033 834670172 815325465 862386080 407711865 190846647 344597752 738234405 853747402 237866587 561644551 9468115 715602049 461773610 194235009 970643155 674711326 740137452 6980391 836240823 460057407 512632857 829031774 728222506 881832356 125154598 428022023 979034308 377017575 368347392 418050506 300288626 870365201 348056210 136014993 188511664 927288844 984608467 300710570 379082222 520933113 993023908 926455 422417668 831751719 184088770 885259432 562892590 957845080 216648877 811446468 362573698 455178637 226083467 844142365 972077087 653221445 922755751 375177245 188919975 815503365 311399003 868922476 145272339 817417561 710023354 237677172 242788713 772178524 455097253 584332020 305842376 171924724 414205375 950981198 65502099 810652545 635316870 881846113 295608403 469850254 450874718 971120270 886354961 620302724 56506367 984897961 693869875 679814041 584167758 827696965 14442679 272397424 112332956 183563098 278580948 570637571 677105169 155856511 274105964 900388553 847505550 70236304 593820808 931216349 86505092 993065030 425758561 384532822 343071821 577044943 986193030 643143604 264911133 467322019 283702331 3568582 469634928 340198663 275755281 864583242 717960108 221527091 718997932 623887710 586544249 562364843 552020135 825361261 406470136 97569907 214861912 29317690 511486266 49231681 19359542 484739942 363636070 281524570 4270986 853484465 220600090 909214573 329779524 839786611 907233738 555478028 723952041 961439088 205100165 33758084 71540432 867616587 637310069 899003453 776343530 741068516 692871037 811305176 565413993 247316595 181721352 806259142 173344682 775489921 531493429 782665047 574512903 674076951 53887932 520016125 964853118 215511321 971840076 308134950 8079535 548120902 831060277 477091752 808591487 806735545 718759492 648494996 555105038 140718915 1285598 942919535 925332566 639314464 740771189 85350002 170438905 270040383 845269603 780410461 46787532 498287942 898252313 593926754 514766473 491722292 349574551 59414057 169190706 499116464 976029961 586087336 701420674 722489373 152899932 295352621 968677348 513589361 943165462 550153031 254900319 558822142 779184352 313614737 91730417 364609754 911423432 653257778 246918581 760938672 729017913 379610467 340246250 868132011 764048916 855430666 718489627 622335060 249548570 210119968 286426373 11155489 657565675 983340366 720402490 23899369 128087468 662637244 838565883 472532212 120753732 394357476 309084147 484172277 396565812 897157101 98891097 871065473 403317761 239288949 487293245 118323553 737878660 70691668 811315764 555686475 834216058 637538558 906915290 959970930 229494159 66881028 881610324 810799431 404262877 191974457 702963286 752060464 871773171 445844998 695328269 289776296 546502294 104438461 343444053 617629267 303428857 954176468 875306158 198109308 904942029 302684590 318847917 904962232 763113355 953507913 399939473 164189786 63239401 487570745 436499214 809565027 998310916 306591594 9758672 997249660 487255254 296434219 322324310 185629282 565890772 749357431 461514201 455024371 710434124 564517078 659486075 898941604 516261361 813253405 669008382 283880910 440423889 666729145 672672800 850357217 615259315 131983897 683371290 295984485 593473846 500429765 241205515 250640528 34234892 15258567 405959561 178064306 981019791 31791251 336163860 203087992 804305971 466722823 107356566 523905479 880758115 343179376 31859278 147632729 817661674 402422132 778525296 544423598 795586379 863618162 735005904 687201701 460213473 135660650 982641038 470670206 27833760 249164604 55405796 272741974 236920753 906878815 725424273 283585624 909389852 153442475 920118362 452567737 858442027 812360862 453782272 249656165 847872534 327909862 619513940 789820009 598576923 102563481 808340927 13372633 793958080 68840010 79130514 131767066 886907920 473129589 264953830 700347486 948788570 153405897 264078372 867821792 132495731 40102656 577132429 748278779 657384559 919590524 793712565 899599451 681734551 66340390 876861247 711009008 961144565 673409982 833854688 205405086 46656126 302994635 828737207 871862349 361355156 150848024 56321766 937730191 733586447 81228478 35776429 771510041 991038530 759133465 896495827 309768920 112749110 163969051 945675533 911982315 904856741 740048275 254236748 236063849 122822616 4556827 970793185 637217222 704052084 20926658 834108298 78473373 787400310 673903780 729107825 597731973 112867438 817646786 434254098 117070072 399036422 995606824 463931473 896760128 345338238 361859733 3910530 899863236 393673952 831176983 465292887 590629451 642116829 356794627 943900858 1533999 437257420 731012344 138508789 540171787 752191416 549806724 37654053 474818496 839970833 501202575 386590577 636640818 356980639 480726306 521514619 267262923 707891993 720908123 271060913 917816128 951859979 368796724 643870002 118885729 597699560 186066726 396112477 885362188 150112527 458224079 753974254 991988607 294837753 372871756 151203014 889212169 403493437 396860555 567595753 146326603 348971698 986142023 418639872 231508879 258353108 943986630 17392343 972550806 974870930 514156530 882546818 544683294 767507135 73428318 143742658 514396658 730629770 685079843 676038348 775362895 856624062 51071607 748397840 729265794 122193103 232325482 18397099 858917842 734582411 805930172 549046989 736686839 105715910 396108394 554635729 868699606 76974635 922385719 60158147 86653290 597681331 102075070 798312952 718621980 571996893 18534271 943787053 854445262 706902148 741520984 848773137 657168837 36659776 725877762 454744989 103368945 373046441 359430336 536319255 627923972 118246730 140766120 65924496 351211461 26041428 468807476 724874000 87713771 701603861 443955092 734503577 153543467 530306939 484253799 577039088 598955787 765943737 957748329 322490863 505198390 272243726 540956821 170609021 261938853 415649144 49288984 678635296 198533245 260529398 316330819 678672341 328052044 873435931 736305776 729663663 169350288 746311461 808340535 85368746 725709755 697024480 55849350 896125221 451803288 243012972 655944066 728793217 391283230 20072937 595326117 383188400 213923588 654572128 251668849 470021064 696804005 68399565 322974823 832491466 827341407 743499602 942236185 226940538 102176119 97718619 748291545 330865884 545922165 496649354 245897266 307580767 258837856 625081768 863101729 205036854 791087739 888031842 45915261 297651307 205067199 854620723 980005814 367580823 843456205 65640633 634407114 924223369 883914440 120351253 347190410 4803876 89055612 216466356 947728649 709467137 175579611 481286258 632687406 785206053 70783710 491347911 109136511 111654251 509304891 372080078 56411267 101374654 197173645 231788649 188737164 686227955 831975728 652674548 395732706 315768465 431919595 576835736 676773424 524254882 730707279 564337331 379890711 818156129 329680757 750288987 992899632 930982400 773977819 766760415 500419495 247665482 394861508 462788589 17112492 86527648 326422150 529122991 867354309 605424368 999328464 320525363 103724836 419275810 630202965 303801053 9917628 238417092 721229563 735774216 980006085 743499047 102715648 451851898 712462692 440807872 23545583 992625076 315561530 954418692 270527928 946614536 912704686 434720415 81502430 213215027 247848355 966451496 205296609 986285961 647799697 815247320 112704587 462857893 760576927 236359017 784117555 926897498 838922573 53796286 739733866 870852727 926545977 742208210 425587267 335935682 239946891 282698302 209870049 873828070 535565893 677047051 384321954 364919170 350787503 885331604 549132359 214983657 188476978 343930197 27239799 700476022 969132419 541742068 8881664 99451730 446842807 602752002 745013770 376132016 525895513 221622110 314133520 350330785 564275183 731928873 647225120 447071104 397302450 566077905 504691011 960548791 978438709 570947530 492217244 641445927 826056179 391434748 899414561 899593242 808292091 131911910 150619098 319441369 327089848 688037665 241629033 196803190 570499778 970582914 832612230 666241258 868398519 407292243 771639284 935872047 399335060 143575444 589569604 992244781 10958183 494333985 684445711 67697021 88356583 872256376 613363765 994744235 801171400 330406954 715088597 994998438 432877624 705816726 230756455 76071424 683409142 162179890 747705293 564253530 669993855 19753057 60889053 208430071 223587569 690129810 667518200 661043664 834673590 755384878 887954568 12965304 148751706 37753760 520083640 544596460 821519425 40574869 200794908 22081884 888628065 883117973 441366251 656624603 488358469 901268863 37375004 2070797 234085461 4975118 398424948 264483401 530707729 939912386 844111889 230117272 349631145 788761512 487795687 653522074 800150131 460802488 363252733 684411832 961964693 5709925 250253315 721363570 133279453 982852934 306998048 283214868 96339254 603703649 486960476 678903422 792051222 332773389 359775019 249649187 63988918 510267567 220997658 982952662 453198726 468626652 320141804 33767214 67558634 657021439 992064050 583802172 705581167 962492146 624132082 581908449 476519716 859032240 967380966 748549343 423994906 935000648 463622899 507537904 750819213 842895445 16592104 264533669 792805449 411746707 265113894 874789119 912661470 939548946 914043904 332734653 805296335 670633784 452046201 844110183 614049163 342880169 253119799 674520726 646275075 944781389 866955281 571564252 86050126 101374828 334723084 273012086 171644629 612399794 331405521 288308090 967052642 690621858 290355580 85660273 973021377 224522877 624921491 674905738 396464645 321144029 848151867 635975984 491321103 33971684 721382124 580370661 670999399 656545989 986117870 545906170 434295498 243640221 506233886 431432241 287428940 520500241 280822164 727389198 932951850 138645751 166395443 234227006 52765113 895653512 662830580 736500867 380435318 427099185 136001307 650792156 822573819 609416184 191164569 38189756 622988931 714502280 235127338 724424241 85515931 935727303 513915704 775340032 540875579 131421932 723557902 495584310 126603688 350961358 604021887 446081716 665814988 265686784 945433766 332731935 324106750 466147698 432884396 616122908 84969680 32611865 568596053 651601057 186411227 785386736 239861231 107043011 256773067 406527763 160982329 751216533 629371700 62946767 794025460 941088049 159434528 622333077 275247253 839229255 484111033 486484721 336833227 564100402 8651554 566169409 194417390 72907129 713335926 2626188 99397817 392881481 651198868 114577009 464223035 651307194 200777713 101662697 107668780 590783299 304787231 169007049 4416945 173501053 512977387 298199892 355651816 179862626 616826187 511313866 389401371 448711893 149449768 440840923 436831921 349059949 824612879 811152583 557495287 865483073 667281826 369305397 609723572 19243029 32678505 807739816 575619252 536852719 763463545 285876196 941845250 631298326 659205595 666939778 709770387 252573997 499937311 656899607 88780415 260290596 172988762 902009754 466739111 143982935 286062474 421666468 15492562 580414961 235013982 429158661 891674127 647788245 72770132 232686421 15592602 34355386 634356886 831162619 279440107 201208505 783124818 817432336 255116888 73004580 341850128 969575667 768910654 650269282 527342250 611921200 570447453 547023565 836449187 851537442 533995191 263162383 251617255 673892090 274451253 456068173 809388161 305987599 146309054 668131732 901507627 855553659 444889210 469212181 860404855 437553387 633677065 88848500 659390788 662842091 99234503 320825453 320992972 720084720 422285397 771778398 884074171 979217552 950589990 86476918 797181440 988985684 991985214 122592404 870549039 674898863 355911873 82958897 816554659 811951224 441400804 584277531 705208559 694138274 84013928 89473610 917571232 188972383 672610089 791798698 688995745 620655135 460017345 224704687 554162779 248908921 702084234 279638484 816761919 366726066 84471173 672450801 933341364 766026536 917439672 269178595 678732221 75164779 428814344 256016307 408069460 295427823 401698880 650192649 729809330 318767923 926377435 281732106 862076277 756231250 488747244 350728217 635113327 293957083 36992805 25228232 173299311 998440276 547047336 966584843 145159988 816667969 918076459 128439171 782511495 2884129 374835245 991418606 679276180 41507644 609891503 805032083 287260752 584145755 430388568 125516164 974758800 424076847 9126587 804287044 526034755 66125543 697990245 887084180 398043882 652567432 504139148 383493501 362812157 479441317 935790902 690083894 448270139 468484598 82406404 401439224 689226031 877889952 187567004 142991313 660136688 466233009 711991326 980612942 142949899 752078816 712100124 314498257 569003612 589515597 446216162 979302701 12417842 809132198 550915254 541776565 247548492 918071697 505806079 6860695 635153012 760171765 170087492 855684689 74303446 631773262 953026216 178854230 959601135 947345490 193040661 301706571 11196187 645438549 398614382 463209302 669564877 216068350 465494662 57045340 328396373 70661880 89174772 934249608 44860599 187769252 414672079 512856321 515758190 599535453 703217216 755784704 567265296 956001490 260167997 40051891 528917997 524863148 568545908 431024271 66434655 596011508 259811858 895834200 27632741 294899991 721493715 913888711 430679079 820358870 679512071 756870743 768579168 255718595 167698261 487540481 205884232 773536580 271724112 169643018 598914695 353905966 715259988 935565605 21947419 280603616 721353786 962885524 32836134 532125279 827943242 228524250 432391876 465088002 88080813 177647048 651110909 28975145 993685874 60431995 176722027 447822889 933799086 861663250 273470202 29680288 508266793 927556823 283033227 107098103 677273572 186933021 517151047 898812560 505562195 252688548 420961892 807041125 339352018 908456505 857911822 914749000 227579223 148423570 955995174 834939013 691484896 491834788 496724639 676105780 815124791 397994600 221534119 452718014 792244503 770622787 449656508 136293181 846312683 80675673 962240439 656361889 422088401 372715743 764205335 203915286 393511263 278755667 329198489 413008232 467509735 73811834 818024109 817798643 750403274 927505241 341591975 961469128 963417334 387736847 990840422 690066482 496589995 899406099 217039659 325310084 445857575 359212816 606757334 955301229 517078081 823591119 702065845 642064792 666957807 517910618 823586036 740148329 887844074 163590202 788044790 356306169 652006564 170785911 786186351 183622312 593957093 686945567 633994826 24183351 919572931 570665902 564886427 301917904 197840688 892861084 832394523 398921863 737603589 208364113 634956143 356210244 465696373 508732309 543383587 728225179 941523825 831573699 282034259 227568677 963551659 932987020 592952709 315555190 727206148 69133805 588943808 493536587 280120099 360531333 580456587 311627643 752474833 863109283 330498988 519501560 565089554 353286614 42513652 540837930 113890321 611451510 909831707 231011386 77771878 327982607 315321743 639733818 315629703 409474398 940084357 275561047 320233747 769492252 847459890 664794664 663957713 924358898 420775617 884212293 44605483 861764203 906022695 375175545 561951225 952766591 511083244 181531714 128665151 760792574 996339133 114272392 844668949 760276816 241926899 450010304 950571734 394118054 920153791 272637285 289916422 945477597 807326347 882320359 343108514 223129188 473774802 861525235 879753759 137581787 321902878 595600888 684203121 390125117 497724924 651289281 270951655 236569566 549599590 470274618 879918289 835246824 772090015 263691343 48555586 162146860 120567695 794846710 118889099 757570687 112318976 449167602 885577698 666066211 813614874 547476242 48153073 221826879 417857416 545787606 657568511 799837823 844837159 357266065 771341297 972385703 773926840 679210765 112855486 326977092 584287449 32439572 50246304 605182456 198394555 232905193 880624750 484983244 750206417 763077706 571640469 948740032 845080033 453023016 106577849 188945488 870730058 431054036 861944630 414136562 647724936 799941925 868605970 711074750 279744182 281564358 660732042 2117551 101749625 691045292 408706378 299980902 620686048 161713560 105336398 808117416 75161614 641805847 640196517 884224976 320931601 871834063 21392417 602841323 573076422 261098966 90718198 513775623 344498031 903265949 299380260 249612398 768270092 784799519 338292195 31052127 981575782 467941710 220677529 912907844 665542767 512297006 116636079 214539981 944796277 320518288 573767912 650518063 385184561 980974118 931611467 329700976 857195054 54598096 956582745 87358997 809839940 811704537 275199965 601754895 452421394 965797836 537629287 538434973 649543736 416825458 541599077 723691641 839667539 876837536 288933381 110186802 169688571 145018586 83361032 972606397 392009827 144507332 98195573 999521146 940106912 465747496 558148946 940997203 689571273 89989043 767523490 92693286 353153618 242164322 865771895 154611513 15442737 572623589 440338536 664205072 115897960 308533982 721926358 560879737 367937712 988559800 189211497 761223957 100302069 966287021 388999053 489956419 352441053 835407097 731227182 16710918 813949485 780183854 763367996 700344630 831639035 720671299 489929776 908632771 329914276 562005149 347768836 625941132 52292816 328973630 386402116 709047048 54888086 107707921 232659772 926059201 350750428 531086182 123941361 850650393 293365054 173886127 141468638 273187046 473945655 416085949 957075208 746753252 603736986 967774945 529899267 136476193 255285492 15498361 64580573 992764746 412533593 296378468 589964732 351565348 390898106 892364113 639325810 855402243 867972527 460416887 769899386 262361851 403820339 398061083 432168706 225137872 288930894 982061724 861408970 620602585 783545692 571131950 821327323 969292110 553559528 678597421 44424139 747610952 920240226 6207314 911328481 515768474 875984589 856999029 312915636 181024370 664918369 524211846 228379988 795610172 225763799 74063295 863009519 198881964 338545855 860178623 580125295 617415445 285682487 643550193 189873399 302806596 306976041 86321649 120043323 945590878 352287322 814591260 702769361 179031782 584865583 746554717 799243348 407437473 127731736 145856014 234168312 558994411 849161989 533957435 787955816 426887037 23982264 574339319 887854320 391373688 916226422 641416957 153694915 355407392 73258402 655832032 36689702 401121814 744937062 956366426 195772687 319006219 57192063 213737578 719182272 848003963 771425041 221554623 317894793 159788909 15384311 304149029 968938916 658425239 641700326 800823749 170545568 276558073 418701460 428059432 139932742 162161081 949014054 862082927 323339562 886871302 502967059 395115296 109020410 306324489 107907676 963032171 568105653 609695326 434494534 259219845 768937432 542923151 635867560 950206820 761846157 154809740 652838376 513045117 144353066 685551182 854577673 820204970 828529360 193346697 576211346 235278328 881775809 148164612 602860646 390878103 570056633 203053563 848106098 107206096 993671743 712681484 602207467 505736584 262802694 329567885 670614746 13020082 218453045 512644946 19800523 598787493 718619309 559067769 767105212 15202457 752457468 469682773 783432110 267665177 31781526 248535992 558946343 630639364 884146348 43887925 362939032 134953889 909475048 914430693 437509370 728493364 764688647 220395772 405826996 561691007 649156662 99442209 707421028 929801396 807579769 977224578 857094624 492701437 983311380 429712759 618094699 211750224 243641059 452345103 336944066 533681795 797467887 768347414 557615301 177207194 223925055 765461035 42931257 141822290 615406140 953047886 297134798 921617839 206271551 758438969 254433816 161373682 952917426 12454409 807263265 178715088 251290638 740311696 90921666 367385270 890580409 884743760 907920354 389879513 94432396 623432476 412320931 413667898 169045763 231301116 362184097 14503149 109532872 332125062 899281963 487382171 546422637 511985318 446807020 256682105 878092651 90649968 30213391 491211674 512587581 316023707 935441420 29383055 861993635 716445216 538842720 31572624 702887214 840210010 783282567 490252863 122140902 3608609 753435553 188551183 240809636 317849001 218364775 751046049 574239629 133957879 197920487 61495761 36823680 172108037 639454248 721109744 937569834 43479338 538545736 293542016 824441391 924685113 456236785 131908361 639846396 929998064 173941754 263887199 156494196 679759373 655431504 19337991 853615999 992992940 367923679 405141281 980452094 756421650 959403413 223062815 364177155 723068893 976580703 440348560 52407615 85074412 779009308 943914143 442689065 624301722 285933867 747763292 744602660 78683556 893055583 493783966 591454530 888395506 853414242 413938998 976703293 795873797 690243610 232876280 245611562 395042025 891649199 74633830 430321888 357139943 954376254 846561813 11292517 287228591 878307263 272892276 386830062 402600311 803790571 881062196 802969710 657264739 372213474 540234258 773115354 915565560 264414210 363764634 652524471 706946 258219002 477174000 332943800 262662082 467932102 858696721 829069399 341674240 110678875 107314835 568031856 668987256 837733688 916742677 197315303 278600059 361955115 140506174 608005635 334423922 583206494 187617590 32941406 400802869 817652259 821549259 314364766 167762904 223468951 418084643 274669388 887240392 538191601 264506077 563143152 322314364 299171806 317815575 568910062 734262427 143654737 46609075 947062823 802487042 643204898 504875640 331730861 534336388 713504486 857650773 739414825 220388262 956391790 401381893 772584611 775523159 218656672 104448051 609731573 461371831 175643743 688469897 925647592 555859228 716189784 998849256 668858573 825134081 427139767 404832851 467683971 889816475 336832840 697749173 140898428 758384803 336429220 164840637 717815123 862044908 920175739 557560609 14860762 900353073 733221594 158846835 419070693 797090336 421188929 536588290 787940558 973513070 209388798 546951715 820406372 292374877 371166853 453455344 818388102 258201327 244237545 982645193 600745557 266687699 708936272 753190724 498734675 100008134 741784760 251793256 325421102 190533309 852258572 769290195 341178614 643371605 714774807 697947403 355988762 963719832 412747001 423343046 441515414 137223973 899113874 389239676 309099706 319466093 166209161 24404873 858628489 322149220 612098045 554070718 653210781 526000407 326226989 90304400 150314836 779670971 325983775 445907074 728984440 849323887 329818465 53287708 528079650 822811544 10134680 262516667 10208921 928496825 773571355 177802969 48544081 139532755 144859905 575061600 919162774 876166470 816782813 591822902 274611295 507669466 881540941 931510341 308469139 369718667 277272144 875883252 271783030 317516436 717005022 993570750 272634775 337671574 573959955 555681278 58069603 315590578 538991510 795228603 989017074 62882773 885678324 844196774 456608828 68141346 22598730 683311825 326265080 335886404 828674968 31359062 979128715 744191909 378662047 27661679 376027537 542040861 865896209 644958253 305938756 623437769 863964253 265873567 521566735 566838244 448415389 622920309 394516535 649584872 651654496 299031070 52196842 335832119 379453100 167151434 751237629 147031094 519278112 136034165 286863737 975218703 948978477 394989832 392932431 197838488 187277020 73034839 922610487 47275043 424989283 866375824 383495187 467469675 822721510 580057315 294164706 635286335 414054433 215071787 394668174 869780357 201178201 565584869 748605552 215630040 810880362 663168839 257734384 623156863 140802856 430555130 349217569 892381614 923018902 912352414 854918864 33298867 689171658 21086619 734138804 102624891 445991386 130884891 919950828 554563094 315992739 976851934 950142461 388329485 933941816 958421283 570402266 1394915 714643631 787665530 506928192 57994045 355692154 1500760 253172102 492695731 848041773 850589612 65600444 935875569 337170313 379727791 282869495 454957448 125431714 51382251 440074296 886930772 16365435 543774564 301361077 635012818 73140792 973425475 26018550 929739240 96111036 491095538 637280704 182869655 671997700 229647403 7078714 446787597 282477187 841029056 102099334 879430417 477623406 522174706 302713366 742481991 774541466 802345654 117687181 12220822 728824108 178755551 70549858 468945029 192399494 450793602 559030166 452138241 31875263 975520567 32565347 884620145 641600836 680622339 151037643 305412530 367176910 487931471 474062086 601195408 387963745 582041523 406549151 894273312 305382322 109345550 749607056 204442435 775074601 889502228 6247530 993656485 457836479 389361128 567988101 127274373 458223661 86323249 521806744 786358075 667388071 841212735 624411000 443168348 915488483 550973476 376885855 254054391 94303472 747830881 725701287 45164580 2392349 917408060 434740921 451188656 491216001 267975869 397744123 78434853 949202562 143609414 170359980 383632626 270780859 860739361 617371537 815866935 572767369 82182731 182396344 431568838 685262353 982293921 963862695 485004701 401935402 401821856 697012931 320896834 733049261 831160028 782226678 965005414 485207123 198503020 294613823 704056217 643561085 703096673 699610084 675123911 760902908 72211327 793722869 35986246 178585401 888782543 640655974 385333383 661915608 319242772 957260596 428797346 300298710 457989026 684444489 345278754 64415716 778339110 173221155 547128684 520018917 220810649 970681925 632040845 135890154 230806776 371455779 29024209 423042071 907437980 672590440 757989919 156556807 846862565 637320112 186885480 514548701 687614891 788544323 428606695 478868989 24527097 314119410 43957040 31971220 456526201 906916380 796453159 158061847 530740754 815606410 208500148 643761096 663648228 917276557 515095386 393496049 573988361 886290249 578794182 935336524 919923992 231102444 141388289 721069314 484528136 903308220 808605190 481660348 237913199 754004959 327217907 89597458 73692687 510484768 138483741 557006170 76560995 678250913 601446693 748346578 93992196 664701480 823134279 218128767 984243882 493296722 457827594 782410037 610686645 257247475 962379618 917237655 96258653 7664624 799137762 953927566 575390365 280962099 485387142 362274103 621849749 496412128 475687609 734667500 854010383 868084954 710298730 556709522 245395090 610896783 267085138 908675997 832319350 293988084 698056815 648001207 11056598 556378826 418276111 24163400 749835851 257784955 94322728 799512792 190855675 953232849 894991955 18066040 404776256 543845403 960535347 748198785 544189989 769089228 238109823 203521751 995797989 704451522 490969429 693611805 288723448 685148487 36030730 164999492 518849486 551292727 205690126 360912777 346891349 199923653 543796515 787848965 272147052 24849179 240489442 670566573 912300387 442517989 499660173 962600487 254110285 723089952 418354475 765315672 887734134 234841318 813354323 577207114 198791053 46778557 243675631 765888484 790528024 651225847 894749646 13710762 358646356 311566201 450929579 164513231 965222040 811692851 367508884 785170938 252918737 362846833 707520968 613318785 60602671 216482865 24233243 14591118 118484269 760122468 271759112 964459259 463819560 860695309 907916848 308062638 555796003 735322122 512817697 626375076 768949670 26413283 974777727 725442367 746934154 399485094 549601866 66631252 373577223 133220335 688907187 244304187 890443044 475041402 723946678 769011576 5796552 945331568 139846490 814423661 97989894 873969492 576642211 499717033 407274769 506432475 46602393 833384629 43174736 650528583 652097835 414520556 858279576 46979681 562690685 901203121 502998066 820690363 686352936 219274272 114033071 235994946 862024889 268364988 379775937 794214702 878352030 85788003 403073737 837474281 278679449 215446472 119005748 371892348 822906749 885997974 769381372 857004279 570658968 129411369 245486053 756140879 421481053 987702050 291172618 878852244 904917042 565500129 450505158 960371433 478354499 590670764 270174475 945140612 172435182 775928675 670701206 610179832 603000250 8706266 125625092 60137045 977565191 542596007 493420839 984472206 939771692 300607916 389825969 399607976 877398587 114859867 54753282 484082360 888157209 374534984 16786355 336092010 188092722 356618481 112852314 199935414 931986111 154306234 807096153 100308950 855144935 788875474 434593663 933884306 799045518 389980139 828856088 687997869 8301057 44212569 900140396 248305262 6942256 150024048 99928697 337333227 148754555 423158205 424586244 171338770 979926519 541147490 242659923 960598982 774049908 682727404 63512536 792607449 716306880 403758070 116349354 41249651 569810125 68439076 675175284 711215608 786757091 976396204 336218514 49374129 475545768 330439463 202125751 566672635 560121369 765628636 693246793 152145534 467149157 16935736 283138105 367480433 390831274 383472906 604459240 929837628 573822073 591878697 906305422 768032694 869151775 815927605 698503722 558454412 454946791 212881083 49157470 6845960 537918349 489919410 624697250 41161734 173278934 406163423 740436999 885608321 106067359 402142682 995128732 354347581 725038619 764483902 332391801 746684535 247428762 957017329 86298277 499297684 264619400 880543103 368508222 434643131 967251209 861091894 633743682 822954380 480295775 302019749 340589487 608191759 515957541 385834969 623330489 408583004 481073952 779736131 457163919 635410543 749972756 118043047 227329317 56605145 574060125 467211848 773002023 206835315 983235009 338429367 456588935 888119781 346550340 247615556 438207320 357620414 123269063 498621590 15335472 824939233 302703296 276973107 723090318 812652989 102453571 341166382 961924551 460333763 311498391 869963793 790909625 648230039 552290506 251796254 719318779 986116312 341296099 534047753 905009241 142774648 958546252 995517339 268589646 1296548 427521908 618261839 334224887 791775961 38414495 689188105 203118362 66842191 55978275 815269333 430494451 344364195 951218299 106774435 35237019 418862166 131759705 971305545 801376380 138955932 181143036 175182156 169794501 37179542 492847085 580745263 478961821 45051307 942817640 861519065 287826209 234126108 628355176 219672003 468816951 762926253 916834032 255975841 602518414 602160349 497417337 648802105 711585994 419363585 138033236 218788976 794289858 622120340 903915953 622256114 593964702 532616770 564458202 759415580 452905940 140306657 222246410 192677744 792221418 754149808 805628866 152980813 791113572 450162537 583200489 226852175 91193275 963147572 421871226 726985155 980679628 771788750 793975773 578632779 178167182 404780279 184971125 636829956 13774986 20785146 850281854 48108815 273608894 142462987 908823509 776188657 836232667 938049661 727010337 311540209 100226288 925355035 359888059 421639829 620117925 897997355 989976073 155301950 62826171 708924269 433958844 765545832 93585505 189242609 572954609 775255886 404468890 41921129 181335912 662269956 304981462 361738696 540325125 474930146 424641755 72580785 562142326 665642016 48061015 939799975 351818330 499123651 819971372 813677762 990402776 15849825 922674447 921387756 304453063 437538997 184364956 571318001 898720340 941776561 605089004 916515956 508899631 283031070 404371094 103384103 190612739 361967774 812469976 790799946 121236252 523939572 836407802 926940047 494344622 425532727 595363229 611611362 857909975 714740488 847046014 113521293 946640845 175605768 254450173 762550445 533815533 135819055 275643801 976545763 776307128 966467445 636494812 794113287 634321089 125286758 349298852 587409192 742741400 361364828 85005874 819574086 60653872 515072013 157872603 623207756 760402191 652665360 936209771 285862088 686214920 754459586 692767854 595002527 327005883 493546350 847935730 396229784 941000951 14269033 143526763 589135631 336510886 990835211 561369335 466272454 568563793 179377240 448881084 214791712 343407194 202422530 166172249 328649934 980460387 874676550 947036591 72976532 714374986 730634273 745304375 109409155 931804842 99176709 229479079 417619414 242226563 293545148 728208112 944973053 303256283 471593540 503359097 223710400 353572178 517535737 63590566 819472674 214683288 604452629 356181624 475953135 18962276 85018751 97276259 513632066 92558930 493822563 805014548 227663529 74913077 204259249 735486301 12869690 127894727 24092503 799833682 637937342 789314170 316500891 573467956 363793158 737770122 8557763 186016277 858668876 417936993 8880494 277379513 870488471 188467654 205766927 385899855 744414819 395737229 495559937 594544127 137921299 309906840 705853917 866606030 694028079 303541379 956138658 412631187 602216542 183579128 116793032 215527905 713384683 610005512 898914096 62923230 467487296 373938766 504531988 588094671 429071560 860243730 346983631 338298197 167287092 975954327 196649730 675665398 521332375 631158683 640567076 999445659 620418071 392916826 960911584 891267514 663516723 224308363 551741517 862492261 866473796 32876297 400888648 166339628 874725358 859073725 766035780 987534291 203988037 718826099 42305379 571613529 595630951 184203503 749529219 541776043 900555313 891502859 218991105 288019425 213073834 105972356 142160975 50873077 334083764 927316712 817303696 457084755 555636583 149510454 813405318 665828505 980483841 901061889 809503275 630934583 388716872 126750469 687157204 904128224 863617641 242909969 667564028 989940456 760294966 195257084 31548526 197188861 74387581 528780253 756720583 243545556 982146752 343824151 391057331 238555769 140313314 333765410 773325878 67268908 62656005 343938276 251160428 507315668 735489777 53017261 130975307 680843873 142588018 955516400 545423 469230774 461050306 813413449 501038318 137901032 559107908 627596492 160429067 309035253 409302813 952466374 210411115 989524918 879099476 20136073 276029918 613829413 47385498 407845370 31360884 846172959 338841625 621207674 523301320 893898687 359367078 819543490 968226773 751242876 873055502 23653139 399866804 738784802 618897252 718891891 561964160 749115957 739131132 995394160 496940618 7286964 57137327 828653196 41850546 377894478 919194484 411013677 723043898 286225016 380728345 947901655 598254158 477900583 156581199 197942695 767340519 964301892 843292676 857985426 283094887 179059563 65083210 402955904 189480989 280574042 203343886 387561937 669230946 151616630 459794975 878474147 14134059 931276948 65924641 960845580 47372895 400957707 617548823 248976008 916348623 86249541 682381520 180298581 667560239 207758158 350937005 814261584 52850793 392025888 552367302 915221248 231949801 602986719 829255613 489292080 43879131 766070238 430328771 555487127 636060143 628216232 975637904 964702475 260117972 183150937 44389820 765297304 942315482 962880690 756239774 338477545 635892325 605780403 40492386 264860223 373564663 581036480 855512356 521574661 991680109 898419219 604548743 548042829 334377791 277354272 107899210 240653645 137876409 406810454 444895459 447308792 795604817 287863531 713153933 75988344 666588681 90233793 390107698 608678766 585335471 229295836 29067407 132379483 984252521 909908026 96779435 365769924 355566612 541272088 580787263 775697929 317709576 222986317 624615700 607828456 117513862 288445855 593449900 438167 716890390 957043467 700672795 703094550 272958483 187497691 297928706 569944463 540001678 929088107 622214982 129325687 10888080 20795021 166873589 130723956 398956896 459231683 720141457 946723683 548759988 327181311 931522414 834405846 144091044 990878204 133661422 719270418 852794541 990694770 544541316 237266251 699962434 490149950 932689468 986654279 332710720 943451602 441515702 946117829 687103854 405388823 655851273 347643396 985375498 80212628 970251110 2289759 196739609 305955662 145357827 47353636 743460241 283841021 548989049 110946004 234556195 422366058 844229417 103563147 487858819 977064198 641408245 131457236 61152050 22752056 268626517 563524881 328304103 437646465 953370720 567713620 859989721 130314967 908275650 427424168 653189805 51341365 509214649 166228601 740290820 696664208 294273492 432453412 973762586 438848179 49176323 36858133 723234573 516764352 801268350 463803988 290633617 194545955 116825684 290109944 442794781 722149802 631795712 965003483 436225888 816936614 985353444 227199006 320275464 912360187 794340885 317769158 966467025 159241205 530653392 249236484 213187704 311058036 695922942 812860022 578566409 988039135 518491714 336213659 173274356 13730661 38041343 705081742 493538037 648648027 79119849 608537726 537155268 840529328 527113881 511434076 981411470 893087611 84460035 447303447 629779363 4168882 922386643 226736717 464934380 433158305 441849415 885380020 551244570 449984542 594755531 265735922 1097853 118555648 354185142 162219335 46891174 281051397 425367772 978860911 712049425 152347923 491331235 869621122 993096725 285725761 598652341 327231897 295852195 245782337 221895169 635093509 163134710 170782787 233182463 673185038 230350950 335486313 820084940 925166814 763765167 503239724 570444911 133168710 66198980 28932975 923260801 757775476 469500022 201347135 143332872 108283142 883825011 556184907 642595432 359388049 642095690 18062805 817205910 516055646 154391228 411393134 124373876 181631383 205300147 160563207 938641437 211526521 894381342 189044195 775390762 991312459 702897141 836088207 368098636 353120705 387789211 272581142 174521257 843806208 138316775 855921826 657878996 689718464 578703667 521970450 38017941 39139769 322217128 956297426 570583576 746085046 609515509 972479283 263004987 714082160 161140768 266008644 394639215 560377044 149193442 72234924 357395934 353214144 315816283 384204209 61032122 795794523 877759030 357205707 150595759 259111423 702825895 461280060 322267255 958934471 943717285 168984301 487755159 533204532 573940880 897778932 399050146 199264968 928188649 329073832 999084106 700576990 203485892 364646490 848930579 500378028 121368076 812519060 636239621 996516053 337967083 509464422 564638108 337121240 314408698 717390199 472191887 331316983 742680588 270723767 109617623 313849570 584925869 548025331 651212504 850911529 790484455 275732866 278795595 106926209 437079000 906733807 869688046 600302907 53073450 492557292 606849644 753333821 592365120 858541218 487222440 228616219 167633321 663102664 504936851 685537816 568171593 484522875 118285090 332011354 435400927 693664639 915024075 734173652 890836540 143222733 282614596 896463293 876117859 277248463 542705184 449459437 694834494 853334904 654168131 313362466 704719569 494000906 696378134 649735814 746053236 925411741 801488308 536112671 722054015 760217720 293204986 497232135 841008480 704688831 107180418 433747162 740436005 823581850 211656798 904980427 405898103 240148298 332033349 479381201 186175059 431889651 708127856 901037373 185070038 914196869 441377571 345644890 8762208 760302020 992576885 316639736 477528522 571266343 15865966 177238170 53251386 682570828 958037378 907689714 26170845 213635590 486156991 579047995 500615686 141273680 495384700 393347047 934643650 451471421 818449172 684497050 308299571 34697381 53399340 329629378 21082432 743839717 712095895 663865714 992287158 330646413 986629150 372379344 380026895 413780523 690917392 474756194 364645992 438389113 530525810 961122003 267448560 739319482 396305615 139689130 852814344 898116739 604114888 244552219 229506203 584648017 376070058 314785305 395850452 860680410 489089496 173578365 516022088 584907582 56925703 574258624 881394347 870216482 251147077 736132718 169566478 447066174 231470790 285426381 338660092 627620847 447301220 630181626 625886045 622004312 635016964 586916617 838376657 991358817 145216496 399920025 20480086 644674190 876610602 636031590 789344768 225161793 523954652 816065014 120527831 165436821 430636707 772676256 677034074 816473763 962750815 860407137 10261557 117661128 462762763 583123270 821243590 538860923 727439113 334157836 361945231 956546564 450386990 644820031 242654409 397720265 899552029 953366746 740808552 264090668 15597741 451339103 151530935 19186660 369167951 359797777 658103786 343291985 460558886 72520985 366413741 323675520 446506714 55129343 378748835 396097258 52368938 884159626 972177483 845128666 631335092 121814457 269137198 115882657 655253590 694101065 653674711 302530363 570825920 391106571 944174462 212072126 457361181 654013692 795300911 229968790 345150290 103993787 160112049 248277189 57919420 516375813 534372868 473547924 918138763 724820397 451677050 275566597 735378929 837912729 702423892 350463398 212622951 65003432 547467634 59346433 888908829 163481831 679144823 648817193 980711557 377234324 271033446 133621781 655238157 919664962 222344080 599316462 398259637 390106763 282535594 303860975 823729893 181702726 498421786 355965690 424134489 57703983 948110885 407376104 251515810 389394321 376378999 736504590 367713827 6809677 162920307 612217913 322850762 718930563 540529768 53703890 111412668 85128212 13381117 161526148 121885849 793627724 392752380 990613966 839282354 105959618 626405046 236973473 235930331 66364785 196351310 719819045 818070003 423800138 394445615 229970190 342164911 759828656 659473361 835226842 487930991 918085453 805138013 985730544 714761916 925412884 340984526 711131587 614946725 480100196 952091724 409983302 392583055 631877223 280162172 928994622 798938681 80355638 430715994 944935517 131058761 243660178 259609651 112630928 69256728 312977186 534353235 727364849 585675548 632515681 146195841 928254019 361519470 994802943 843708574 960322083 167496613 408292753 942287611 963525128 91180883 737840858 258784668 916363804 559584017 775565360 107435726 737041697 790518977 673795357 332083971 953219946 999870202 204173061 205031312 136582416 654911788 618627439 193673466 672306394 881546682 242897182 728002029 669064811 90499415 440633341 24797201 726206162 370970536 405703542 752129710 737010293 628807752 186380589 319777774 524986464 293588468 419102285 524640806 811549021 125575763 684194442 82685621 401512144 304045067 498917948 580169161 242917082 815126901 314743301 930735111 618146395 191957236 650541307 530676045 61694256 411485359 324916469 823852130 102194487 570677388 888049457 158543171 742130626 685172506 47903252 705458320 416040245 531491512 388869845 789987214 256820846 538228314 488810587 524832028 393365024 796052014 400772716 167889387 688435560 234395501 634307773 209104395 332796024 230462557 988600450 153671609 767571517 628964285 940672216 189472968 78441345 742444243 606115880 319127022 870786621 52608443 65594384 903896233 469426919 58358695 719889139 378896201 321146086 814353896 841887286 444203286 924517568 700077532 490806409 851626915 176625275 55173433 1389513 1992282 5303251 293085592 185091564 140117731 481232275 675213445 387262759 322866640 311268979 891000846 949837492 784902631 855798795 793212941 251150951 917475512 986376343 594696961 71642584 1470143 85039154 940741087 864249456 737201639 838059202 207380272 870199256 600796493 590015748 174675237 89037428 3265724 624735693 536553210 66111647 904578471 527507331 281426894 983276748 242636463 325289559 531359477 856549650 564128731 147669701 38792554 566846068 665118758 327633948 970947778 973975437 980227525 444622100 878388984 137251105 785256097 790254583 92625704 400894970 600237254 767384575 26818805 742128960 297999064 95960242 852000531 847050902 473779748 60175737 169918636 886453620 78284834 382595893 750358532 410207131 196989401 487718237 616028925 680508730 222099876 167155087 845276832 99755256 233558305 248109185 28945008 720417512 96501423 381849285 739953119 381175666 35923827 186435713 935754467 579222901 366905882 711293556 552415138 51829891 996220199 727998483 173963864 955085036 209600335 904257896 418325165 124379224 844188434 724996389 14064687 627566678 34274516 983754246 824934782 859802311 886121787 827204845 397495776 544110871 239133308 734246558 259982697 604771631 425212504 375451019 877170782 216502637 601635206 715726351 487313080 642371333 106551758 149937391 747328516 134077256 504494742 26153876 317688070 557962316 50355864 487232170 906514159 774740586 880369807 978896099 115308017 197530299 323318599 214139888 349027365 632527662 259546621 484220140 408753300 610931812 378299708 525598824 445372342 215533148 505541986 709008937 735985077 499599890 833420665 957416297 930365204 633150009 463444244 628236702 207104453 683955949 865591741 230725492 690853852 47915819 544039482 579214844 125031399 700527011 600085278 112985020 96082513 53038512 805069256 695175595 921635560 396507761 338367995 320924172 422361847 688415485 291144774 773694058 867630442 948151114 796134759 785769031 214224718 92284835 947790985 101227270 257297404 37910048 924601318 239521689 308964998 343422769 554316073 606219105 587375847 315835807 379616495 207258814 853161731 853084121 407901895 412939711 30387286 117523046 305798001 828186989 984174059 971349121 230287616 868950957 907313833 529547988 132331468 279902366 649620187 348368044 338035491 233272760 264675530 540538154 79198625 279295296 952417091 587178622 100738798 194308823 590012820 88352806 54994799 71421230 869414203 646832774 876809320 737041105 271438192 413341294 254627656 902727438 541329729 39839426 601943331 16180316 303760084 202748910 785576109 48718475 241413055 796666348 297319584 632767237 733690630 425579929 572256129 550309962 36784258 414479444 593610233 194669419 135191042 592667306 132129721 915016058 185773883 244754945 893919138 943182937 965620464 187884305 157265056 272748322 721399755 770223960 667142224 74172496 563217703 855444832 530009687 11372436 129579459 183018458 567863706 450465362 767662801 712069972 696727658 112219116 212603628 121476767 786030513 486689379 442614482 72423075 423929358 387453914 823053154 457518662 682669356 535383715 918113162 134720411 901933837 703990878 92709584 756214241 326982313 51987142 968889713 340160652 568353409 645075618 387392429 234423350 775663165 819345874 182932343 137566682 898326947 473808553 597891722 725077761 620949404 813156490 388636241 95691844 533555774 114728477 159809025 773507319 850923469 584445388 507567900 489105625 310182416 579525384 685731359 618278312 65380125 7490142 504363943 862050187 768958046 398775222 783415534 351715064 66823779 796533601 566482581 179426101 305909882 695876142 789737249 824376071 481552949 906937823 614826869 121978618 356733802 393277373 393057789 922467559 55860450 49619658 39004269 216469566 957113742 252475795 854326108 166932119 323655948 168488228 269749595 956523573 145205042 601384768 931473195 484977807 606385636 401699794 746918455 765919386 240400412 758095311 24081738 229935137 6281971 405424838 549435185 772672282 562077023 772821362 539462129 385263081 247317358 588320255 1183613 378394184 118451770 256619637 632818401 172268675 739000614 208043592 476550805 29244562 319650378 964755702 972055287 191078992 304242516 99292200 112132393 206627765 798790069 805081651 966971504 301419158 441770605 8374476 666302290 180054920 912758171 642541846 693653098 442928659 738466311 934138668 648740386 13557109 504757751 769524348 740797733 834941426 595065477 323335770 614883054 441496857 295482486 340574227 553200731 414529867 986330906 683754767 131426210 812486527 9184317 93413670 761922626 654170772 385498316 322035101 92037579 615445102 892824422 849275015 276853693 537639167 368381323 442917214 505016984 299722139 932090286 963574195 897552521 357812479 535249130 757986373 537224001 802193046 670653490 399609813 457578561 317171341 946412193 534176072 808640616 943092726 496368609 664673894 779274621 756079810 836525456 886752002 457505605 944358573 197844551 109503307 598198270 89280284 465560567 269013752 724037631 315634904 664386316 72941805 604460813 308569617 994819849 903150014 510805648 809517287 180287829 192646314 399748441 581214631 240329991 263395550 555494195 390203489 682033617 67348444 290499534 225209413 395210741 23184336 346233446 219561472 132166920 24439561 334924130 79579621 136095154 330371923 862548594 548536111 891207782 221683487 558935096 69453498 222116891 409246350 935868922 833314225 118527746 72143390 483309524 637575404 523864771 10278853 859048315 152292343 932190404 310957821 238950479 519264399 796242518 612236838 54138503 288609627 723463921 186060293 279862615 908092966 73218875 659385360 683310367 850357618 555625381 306659742 513906437 462635850 981021563 866476136 738573595 991224643 908645150 560513392 337082216 560676450 501346097 272454841 891418161 548302513 464113609 202475077 698668636 991414620 876014840 371869523 321816826 723923912 722377401 659338579 115396493 708939267 606834748 260563710 112904511 999829013 636381825 447019750 444806450 256879400 121199949 658084695 329190313 503933622 105149436 813063629 788907121 732498021 73173050 76625615 252934719 201433502 807006534 554886851 539157434 218237431 871664893 142142384 75616665 931696329 936246646 14218249 430654013 607086716 958591884 676052969 240921012 453324349 68150151 812501075 596935497 979669506 889580298 77679047 556704358 968556683 258967490 717973895 383873718 666102220 865052715 665467470 246113197 828295753 689606542 858750046 578470448 952261309 232139536 994985363 985593865 316560256 295269769 788648260 839410944 992083603 685467888 912563652 942064545 174847770 107019084 301141652 756761377 795440227 811389159 429521089 874466702 102865241 382601308 595084084 215999305 929651745 863104923 9508745 336133372 120768722 591535946 75941883 354879425 251505895 652204478 267209294 630806779 670446044 584977636 918178120 393726964 609777050 887015853 537301165 121354348 704011504 420559068 662321908 771213606 623857064 141723354 868225525 843111991 6970120 662803084 315410650 975680177 974701473 625065153 227328770 600089733 895438510 681010525 923511858 94860583 394205609 54827430 27086707 560020874 662791986 251093710 180090941 816703029 609073926 857212315 606151567 599665305 881099353 478287422 332921054 531266905 963156080 957534327 203325859 318071467 296800532 312669711 836414658 922930128 650247392 501510349 617260222 420257312 516092575 463102534 453324401 469932433 633493809 699200942 314142478 666687592 403195769 583120756 687831944 585656127 168862393 670443729 725672479 783784203 415810588 253385785 732582843 222353257 576231035 909680216 397005572 502241579 932814144 639964929 567503026 459489096 219353233 138054238 355309655 78528666 191442705 38955526 678736219 308548943 473833172 855575416 963536127 11582718 925128747 206043124 975148561 423460970 708351604 383216149 570247885 346207560 533668325 590931440 119049717 365845823 746973389 236098128 103952622 361242040 2786026 750990979 582243346 999723624 151852676 174536179 885911726 940417364 678233127 280582283 84936903 367185213 168528757 492914080 155292058 886291852 604269730 903215045 761877782 991584559 138263639 637526858 922725269 151140443 145303065 278218740 944071368 963765857 190432806 533543025 578256788 78171141 250545226 954559447 466576049 61511494 170515737 652341774 910063105 738886914 304611614 532044218 173738173 474077172 333893744 206459700 950087370 183777030 706848931 449115040 266472919 570528973 131982960 339545756 824959716 436069576 130950417 90320376 881352311 133635039 154826706 529657033 173272577 312688930 605083893 731794056 110376801 729960108 986881938 484477092 855265276 632118180 121917670 515014023 455241289 593837747 877145753 727102612 186700336 824144749 422662247 508058866 741323077 596123091 450710097 418587307 112008004 501142863 120699506 395221314 323716346 303963111 735357737 657472203 531518131 226867332 316601227 856731162 67705137 663340758 739390836 894418463 803428208 508467875 805923968 130577644 622032035 82667087 793907940 936721635 667430028 672092464 695539275 815227257 176747229 13066679 304209667 551358511 853874191 387717395 494744127 281396501 27298923 397799935 122586016 597733022 401470321 897582536 186937837 442500033 304269104 459328169 671433758 663980234 664311861 305214055 795044802 823291512 871706159 712505633 91475682 119521501 295376833 742524884 257507826 204034585 199441754 269411605 147509593 269999900 462740554 115849567 818165033 706248862 151313358 237192558 77858608 281862835 700780178 834479018 361856020 806046894 311712734 462318636 361309748 204094908 796135659 844859574 171910743 139832714 989542234 784372212 697325144 578817906 285086670 234541289 187675149 440863733 191096613 36512714 453303442 846012028 830741127 933445751 502294494 348196336 842180433 230405624 551426056 376690208 188431923 193250349 673462646 684650068 393090949 184273080 954849909 586245157 324117456 152294618 601751695 301331458 691390562 954642139 81363377 850542548 477921545 602433089 134103811 693539926 115337840 924585530 456570107 949999697 56123165 981254701 931158576 643937754 973837124 666712253 347709453 136462571 23891613 602580232 355788264 976484576 285415936 409681766 594360648 247910680 5661663 475918568 462326727 398582644 589014523 479581158 162795046 142070934 322197942 753962172 138808715 33679482 364638020 475552566 721937874 880006559 235639913 100490278 498864239 430971666 904119636 83317036 125510342 568923579 575696898 553748915 461291372 487474026 66701779 851353767 983383440 56872375 119506727 244880183 285621938 426188027 143858174 30125997 74726903 122854702 737036304 712330084 389492184 252997988 625296840 987915354 334310255 196567960 561989782 689441963 490552712 119382249 507940127 472430995 695975805 387870645 702195141 757014589 788617714 676496861 819105550 248979438 442077599 921543920 20579441 972595463 345654843 341517297 753811691 975208617 523510546 835303809 418191862 561350198 67108407 936202367 903768226 282800823 507518866 790102221 943268668 471165110 953035437 268462529 15936507 558444639 947032442 993899277 626684510 746833314 878785254 80734503 853263497 800001975 914997273 803433520 744578806 595479978 398805395 489184334 185877250 306804866 821147929 578115689 797019057 501250501 694229396 270205499 525113773 418098156 291241798 489808444 615151008 269698791 625874543 742164378 963078459 948789138 100581170 920017190 400410885 457249530 248930095 40936583 58299868 303790754 587986880 379639325 429673832 626878841 113177167 674442838 79253325 872924489 911746 816242635 928386413 82326539 119035410 185380021 359592581 176637799 319910077 152951534 17315582 685700587 829995702 508796645 967757710 949092714 69931055 21134569 654556520 477814495 600150407 601271405 644426197 189648697 595173572 985025002 608190300 332611624 618898825 266679880 634636735 43530048 897647870 791483933 572482154 674825276 465064601 376378903 133372325 298328635 212906740 482477013 450610733 987046692 591998204 86538543 13783829 805385579 887273091 9571201 887521276 25776128 186940594 471512992 774249144 281847681 865118949 18417263 805065136 667935466 397317234 350013738 773723225 219260382 443480599 54424021 282278869 951641675 695049738 63966408 593748082 822024095 773503539 483667896 377738401 145957111 586044597 389652871 245178143 230615206 482730754 815623107 124256675 877393767 881869117 815661712 136278950 934536619 186884887 628759663 265104398 817356682 900536798 830186533 401895911 625087534 790731519 677181369 238951624 72841129 815482744 221761100 970714337 955976074 551017641 190107194 491097792 361729503 238153086 642086470 920043184 198337889 984754258 750295553 374015366 299491006 417890890 502970952 63663960 592443462 340901358 608855284 818811245 94805029 687095826 831635175 844043498 150785770 53195121 995856369 133021914 518738047 933893956 632650176 935719625 173109002 930323045 860857 498692686 277289341 587634422 304963846 992439961 63721823 62670572 661167346 338808023 99332970 186052163 692380321 427262350 987530624 702627283 395205798 603146933 46680837 73497551 293652401 823976824 579548409 76845914 999983117 984924560 485290642 774175737 531822965 430383358 562361961 4334927 350236070 399246418 511663945 829949213 816630444 577370957 193814668 976511604 763880185 143133148 11648529 978471602 49301635 386027542 864927326 404975723 483780390 690433442 792410892 656781997 591957564 914667311 633045292 90736767 670016895 33846987 352077597 62102584 110504813 283796391 32798017 921291383 916791253 192417498 843198949 897371981 455756570 211726443 804162671 144946125 846950770 109544092 596174241 696015751 107617739 119998078 291818717 222223402 51132599 904300904 435147545 211965409 649759809 122204016 415936153 399907494 802219336 69104606 776002365 137863544 384236794 435352094 827485939 632369911 343154402 958288603 308978292 345401566 559331627 623675354 227722719 18024992 454794804 507073148 19912158 717834252 731870802 193546277 601776082 152003535 577019924 935905807 371421287 811041233 507523393 505302967 941537812 981061846 149698152 43687323 875048255 417107115 402840978 74621240 404162727 229145545 176325238 467999905 923690238 925107 131922971 181194970 284772211 571459402 493441108 928398068 192287021 20872299 196090980 811122840 879571393 422753178 431959275 297697439 480503315 707991046 445100438 991260924 7762999 791403964 151017706 358797284 736267957 134232833 831602927 824183284 455783 746512872 392788151 622509737 233403611 255906285 599828039 261193011 916274607 448185493 385346285 550058009 865328423 233227166 861223052 186011325 438958981 133922864 424094840 811386032 92507260 831396875 217284917 649490154 575217807 167556456 318214784 386664511 149384985 257274907 397519912 431997536 424536656 241652914 923415930 938606085 703706502 168774855 202408844 948524467 292010518 72082455 502553337 25875746 201365007 140777469 113906974 530074518 662614590 346453956 842316858 118855649 797107211 316485497 593664942 534226635 502557661 648633232 876439634 885593811 328260422 36862198 562833183 495127689 529416268 646057767 706004240 836409321 451356276 286772262 906234422 725927185 215828092 699495831 513272387 932353185 717544406 96017427 570370477 544444857 678160730 328748723 938570679 287891777 26655115 393052721 210096713 600383275 908493214 28032837 354081849 689872096 653817022 691630513 760241421 984654950 327408353 5843942 448103918 849117457 40719585 404001507 512585202 327695353 522481701 386078365 484845350 873220291 596810674 379518863 237644611 757517790 42785445 657968516 818776956 203500757 735767959 241110825 194327835 508248798 364627470 448869165 668647741 56019632 515769071 742072519 603750107 573434881 243715615 784186590 396005948 40287984 126401845 947672275 949009033 635466124 425685841 144893106 245580544 869026386 160009149 499102807 906471934 543861646 673912243 997375938 388844940 848565424 83333575 343663091 371459522 88878024 55428517 950328126 636321216 678374599 167644716 878508160 933260490 571981725 810932426 888891921 285801824 481282396 471196990 40453501 601120119 825054790 171449369 388274557 72862111 704798543 15684829 404557390 203970999 813331713 891549413 771777298 360393399 130295859 496809653 835085025 657935233 686810223 714152111 324778135 7838290 396264852 349744052 211241019 828083068 63360088 732046898 128115264 593169061 37627437 630891214 516581269 166502207 399268835 206329597 243945542 543653938 582494173 889930347 144242917 661437964 506126121 923355648 577211758 190062674 790124077 880919009 601179153 946320351 323932834 580282795 797360095 823786533 3489263 105575254 861293353 163379209 514361791 922911282 624586603 886565703 991079023 776674650 588851231 479337652 996324203 855732012 644127216 387227733 867080993 50403961 845174265 99574279 564744769 977213518 529290279 567712389 820769334 406787656 274146274 699007111 805029035 67591935 589734574 846961734 903223413 919803265 112356241 676278387 94473144 296123584 208294484 263664788 435540808 982527061 616950913 248090312 253105506 479820597 180185833 685913731 236447764 567865395 978528660 882688751 840477679 709594476 235591473 485836799 436515036 842777350 851629343 504027222 168585235 615122780 521915895 292135418 238070839 519866873 946641405 274693117 383525592 145003239 628055291 657595868 149820468 70030071 979777947 112142616 678568939 16453775 907919106 18731075 488296898 349897360 747780252 862450622 612158858 567222115 727433881 795595720 345127953 149968425 856283702 193480354 95961652 784100878 726693491 560327172 79266543 704835649 149627445 455469555 884420501 434655500 451031282 794402410 146801481 224789858 107780512 733956301 445423593 996975547 208522595 674048440 964982380 867426464 498443025 352303146 295367664 421862861 721124375 271058010 35154009 157168533 913328117 240589248 244252296 487885291 719384548 972756443 482993528 820336585 936712417 820017071 655085083 859542127 133042584 486107328 729916370 895570064 321272647 370705838 4427858 229315720 888386503 113188372 1795989 852285685 964662260 684219947 457543817 47241115 209220416 20931918 104033177 79668997 780120512 905037804 488410926 742511779 47465075 314019277 92117827 212639817 902787598 846526862 733550366 131482260 59358189 833875596 157604728 944579558 868913732 459756805 108260887 162045642 19759812 427955876 645668675 471339110 596173325 387739802 859883752 89162681 943295428 414971727 498309187 492168915 414349833 401280643 502220040 445266996 153515245 935913767 716615934 80460804 734492983 418913396 182166377 987749854 649493607 990186775 23890502 331320180 329438073 190575896 240231319 398542648 868838362 643449226 913665403 832321004 417679263 179673784 865393562 425956423 616481286 165188084 450368256 599766002 708201457 453802328 307561489 576577681 702360931 171510806 306652127 106045748 337305488 662998814 396668052 725911413 568902155 420693481 936472772 987019779 49923702 264903117 220375080 505215745 134135347 726883574 568872229 171689739 884050839 157985393 655755193 569656436 718984162 808461114 539221191 555268853 465640922 811557772 608652141 176220366 715683639 84580261 553338479 559008090 4891396 272341951 274913608 79034995 791081531 221591840 348358128 357685438 627450620 874108012 742328196 913384520 718167840 270031251 455584507 298081831 772312522 985083215 115123016 902492182 46115328 464766027 375795674 578888236 277320986 575014801 126059349 814238193 742517259 827306355 127181559 581584856 656757083 330366094 985289121 53386496 582594511 234707053 130069474 470066542 858174057 235608392 317731601 805583337 403685690 604896367 377117867 177495697 913152847 651155006 799506831 306944030 672707617 150173274 617281515 509438469 475452610 28962136 953336418 473374270 581783023 38778604 933872858 164594556 915366441 328705231 253695450 556317664 478792732 768980429 899446440 296578669 154770160 930907286 333159018 710538103 614618921 289878293 663173788 79987813 473862549 147486521 291566583 855841336 472649320 953684476 601995610 569585562 389823109 464880732 4694156 420097741 786089498 444660824 153002528 172449452 225208599 461765629 422236378 512816353 540958882 136668148 999307502 325922776 604053588 457304969 283970151 920201258 361427554 384773958 726302121 626918632 34873202 728334640 907718440 726231340 850768755 50407970 964987228 376902630 265690922 497815007 419858904 250791999 694981377 800106443 2918525 740026272 761685602 403694039 913950114 765321954 560934183 257869034 83656874 454342937 46488262 249955936 946772574 170017497 965245565 829604172 809089838 873340691 839918930 299827957 501250279 533733629 465095040 532164681 893085446 245371653 724133189 499331426 279127638 773658894 544192597 702642695 825545999 344595301 148541832 433281715 287689744 102339146 580008738 651863446 382028987 131038371 14291261 526587356 49293750 398418712 957126354 91878868 557653287 330536414 515601206 475380872 786668967 20094026 121723429 426377519 89275144 506711350 290669750 275575965 902151610 525593929 857133356 948363265 529255784 455636100 391740553 848478894 511476793 593986848 774049676 557428195 790684737 360101070 432390406 970815783 362431759 745799281 510012827 375207160 4250616 158527879 591561526 182373967 441563670 986481556 135483626 19735811 283093361 284931762 540840788 602426537 371888361 325829382 618042263 764919047 292324763 223526225 204512183 426827500 71585174 401467758 727542846 956376925 566444274 424230734 282129657 565554200 76595167 124427162 268389328 42789056 162829315 805361780 723633027 574052423 771184770 983697723 227013378 510928660 577633442 193298624 211194915 402809348 687274641 484934006 853713939 686101085 950077982 756063978 560622536 423457692 162396533 376964052 67699951 996276624 907118415 824015011 223611188 222906880 257228695 999540400 709303381 204194491 980055529 948099496 401765139 217841372 419976031 583924829 429202816 835383841 16348268 788479675 18446487 807116887 322907342 71055280 540746473 939732014 453715684 121146503 852222924 621832057 222561394 970581961 71714921 259141031 376990587 274855072 148101555 183056742 600364705 464474097 881177000 519932061 246994916 582415493 31067738 880783168 839490224 503909746 787897383 151970317 810079745 613127761 220049141 28978859 464102417 621134886 182691119 171387053 461010002 838535166 91900454 405989370 172803454 149690503 312667850 386998596 250586652 101873335 89172583 388480002 639214405 799015270 310627860 230806002 855204155 320033342 810748188 755189810 809714503 207296287 651583750 101183868 537509548 332052720 655071266 472745568 100697400 205163997 727024835 810012771 342361596 44688614 727845644 824816723 713460683 223103712 461929835 666090866 925538913 743848357 163506795 36592287 372020273 362984395 509210254 513160064 628447359 478495856 947532138 263723618 781327458 9917613 903919439 766666897 608890254 156589363 669250384 190159376 878799044 178299843 944680827 60071926 883861695 423077173 717110290 168014264 536483504 767445231 214977740 418030400 796501591 209043997 898141816 768059463 664610931 920351829 971297322 137425756 450928463 626358112 216808736 125571625 186419365 939499187 201449848 824310944 239763326 590223062 617584262 517590833 575146246 906926555 764439279 89351928 243785483 266002331 470987083 873115783 793277421 946559706 171319564 855696578 834695643 797912451 665873727 122214012 869961695 86284852 628166515 859219347 607359291 659464392 861809183 130276170 833011953 546001693 510268584 867083446 826538554 433488642 928444639 281026658 438710717 756327411 437790891 346017920 421715673 847173787 83441139 899026601 879044867 697882337 829943468 34659737 628629355 471325224 273378093 32327657 319545625 372754973 342998745 658818214 417579483 139936254 30258435 764520037 12294781 707144347 660673290 516787765 354306278 415107413 276859206 725163786 619472784 428399214 981624471 143787293 448124815 847260057 942168708 242307902 970132407 67696362 421722152 588284423 440544361 760132974 93685997 913347002 565666105 698850178 190420004 726837421 278726481 999827419 166569792 250829556 148899488 426964713 264287549 662410415 593026214 942129657 240522816 658495648 852530412 472688715 295527382 337355850 461448548 444949964 927126649 649912191 281918934 92449917 839275354 710846506 822197487 745379678 239665308 769156514 374288127 38106562 829769774 612366199 398593276 264736526 959860368 484908515 734673394 449020536 658054518 344606192 933553836 55160001 176523251 875356802 207784876 896383356 648142935 366340138 131236929 793193360 377724620 425013972 585615370 574034427 709955040 969083684 769787429 57593741 928588743 297270734 270717535 909609257 953022447 756157107 994853752 816177336 470841289 275395690 371313255 151971519 656660585 548526275 119449737 363603120 356642696 889217037 337530155 822140975 3767125 672962790 50807839 239915140 162550896 790469298 2175587 708191034 968507906 410882240 21437783 298761044 260740705 639939926 195332469 494244766 743956461 992875713 345576442 615553848 593015385 92004448 376169463 738551569 697956296 659099991 220292062 13853885 182763770 919300605 804507527 1558336 268250689 919994360 193780482 971214267 289575927 107293281 709259190 877762451 136647391 131309899 693094702 546328506 634119586 297495022 843938469 633797328 98071405 798890745 492497299 395617057 77673224 248527820 592739994 295778543 348402691 163415766 920594559 185532679 715872827 922171549 135626241 803693629 514135481 190824859 774411450 741532911 371591040 730541378 275351740 398978643 736288606 485562776 871625137 967441513 578281757 656783625 844411577 232206559 260080092 213590197 492748121 724077347 148290562 956131386 225970142 875617048 984710018 219814736 321012160 326379111 129620010 153393975 44834222 288477003 847188373 632323033 539955539 933143917 348445913 457513110 369459014 57843842 172447360 701692825 796435852 462830956 325813780 82858198 452359913 363263410 610428213 429066760 317112669 412357320 293931084 810130258 564244060 967001093 417217589 12598998 731742216 969435288 377770985 980663391 789124550 777259766 194547768 768361675 210125156 483015167 60235130 778475951 832097056 263462376 605694270 516496939 835342587 745874606 569413548 4592113 169434685 881366270 994995689 515928530 54358568 804902878 757379020 975276327 356399951 419031812 552115759 310199617 446110437 612085754 836214598 478846849 907072313 43550004 779231858 478157008 393179259 841623017 903543870 231816923 20687869 518105900 483116811 921732245 115811398 391967684 912750197 759796548 469619077 532346887 728276646 895197961 411701038 901678334 99866761 860002609 359412626 893568291 149405522 682032076 794709108 585272822 963666841 481560206 378143713 617282986 817725682 561738072 364023798 828590028 86797578 337648187 494721888 792377473 623167016 212883876 271258524 632030053 872550452 274807140 620688056 78340350 174528786 48153768 599118698 514240768 803549826 308831978 819986445 103397003 838202787 252537759 39679026 543759823 212854582 831838071 123569616 698571141 658280507 809515087 2019174 762234249 325043342 663773295 870766319 648008933 932921898 373467205 80323918 243065015 464239059 189733974 26433186 23172830 869778682 467017203 803992658 573589358 416902590 336920184 762221229 387557708 742366216 420856716 163063000 749156357 509534193 203847407 619006623 509036370 656109293 604065087 836674383 861082682 156860278 610434990 91954653 337411109 251103431 270718679 695868759 647975972 522616653 760586976 713729998 448383287 725428874 970551051 614452360 406075049 208196092 563314077 145411551 743103970 155484611 795715146 864618318 576258513 25866047 979774462 528712305 898915477 925862425 614308870 440681286 62416991 97988170 144532077 206393286 86407809 967237353 798385621 815411973 906644550 895166197 441518734 871478249 815075266 106426446 117520201 455341386 942817460 678091666 85400478 942408711 153352464 603277077 698260226 873541639 506713460 975050155 23422458 317396067 476176524 299604975 67438224 846713030 634511230 625721489 870498669 369551678 632308412 855686295 835100292 222146837 794283276 424168055 527710166 700196217 951569543 793379333 605645810 581203700 504932032 991195338 75914372 493593693 459255971 523639142 774327359 101108115 620945926 232863439 34612684 292044198 799424017 321835245 37457067 165444774 975560241 236573216 18613727 754975964 930636440 585627794 823106456 554948633 214558384 204752696 963938848 968133487 789967372 440500460 161293215 171270694 157081638 3913388 991256453 962705061 290556033 233646961 270013172 31185277 637141448 302252860 791066978 98622929 680189438 441516522 157255306 296700048 767608411 225095683 11168220 671974462 368684184 635026469 610151779 205573439 980137245 76837939 154409860 298746296 288658803 279539188 959244929 36350611 640299149 100913935 452113351 574868009 752296891 890724503 670388734 586333501 360641286 730484811 426378014 779441252 476386015 130788983 908548601 263238895 682005016 781412052 187814640 746661356 119084093 970057598 634760409 511163973 720696657 549145037 198175363 807445414 623175168 623790674 892412390 591368531 285430680 428941355 714310569 555506697 764089751 968208335 804042718 502577534 546493487 339142559 688947051 887810672 476628669 701208049 92687391 208760623 988817265 430126424 655010297 652734155 665627410 312247607 59382673 210559543 329769613 381448835 715091698 470327610 129519476 460247433 948732134 843803705 680115150 296556257 890831275 514678824 268707576 525556727 654599687 4589172 962764211 234049482 78883600 730377669 296550833 479800369 787643981 611392306 885009118 903879292 911057853 254344977 962931349 856559043 52197688 667718758 244736057 743826684 124359108 934644221 285400659 171525816 817861186 721389380 7809904 666529166 429116042 1128108 321169613 440280214 615918930 448180867 961759876 82218340 436061221 311048861 111705258 896126124 857972307 87586101 863245189 508679006 342553204 512210429 187051487 780317674 936525659 861442492 560228424 361185772 967886696 424553475 592668806 554016835 376723707 754948949 46428865 425534991 972619308 889124832 670552813 310505106 185637727 844827175 874035728 653416099 285553618 539965501 878428364 515515543 2962348 907555312 583316747 147069836 743941143 668510155 579557044 721498012 549002364 710121236 437634405 914077431 174999332 445809173 973852381 858855362 281825960 974634545 244293185 668052798 833414107 22612335 493270937 721194092 695836166 578454440 502842137 523092469 770167964 886093529 784541795 779423337 593328914 416396123 293757215 120979758 182560056 941633716 654229128 670885892 356040677 923643384 458847559 592220306 595224615 644358974 51649863 820142718 784175480 533079464 568550945 612468771 799670976 844560015 965736202 344547779 965865494 796797041 587292730 828063901 178425670 915560372 893685685 547877095 242646573 466678632 686051505 671657646 163533054 675185687 330465080 743015827 168064119 503791522 552033103 109726959 849667289 739442758 918979889 689145576 602740318 827767273 555258098 624501690 180700545 320250284 898572048 216428957 849726292 402029730 242247886 432975213 289077401 288744295 554063938 93315990 250690461 355925009 608895372 599707293 399590331 767243445 928982232 645110141 551932132 114027220 15396442 622747500 810253932 758301755 59633582 155571887 58621788 144555851 488980688 744229879 237358214 39117677 754591803 241017268 173478407 486070579 585796388 516842164 848750876 694120989 462191144 876672627 167586686 89766035 589391404 212996287 260604729 225121862 369412601 94750422 402310458 400258379 287127842 932803360 341176481 454984243 633972259 265387188 815516312 700511039 578634856 293822036 378030967 599118458 66346112 666152203 624474097 908854185 273703197 217226695 600416174 150456617 37577045 325982724 57561697 662776032 525355365 421517623 586485600 928464151 943280344 281374366 780228517 116440006 40276348 466214026 818458976 529074727 731759415 401241993 491958523 876467895 910409622 910525348 802254343 109224932 332588933 278476020 622641880 726053726 447401971 39393482 407645365 608868824 834229066 227126666 846583859 152203962 288748054 351311156 665921674 181266856 769815663 583922627 414945223 726363895 54447163 156173648 497290342 334564339 772678260 685957486 620879625 843994401 966318782 341788693 273155753 937068334 179439850 185626096 960758505 749104814 939087649 484232306 352985875 972918666 941469011 994162115 333253685 524380411 343683608 728214087 376596604 215635683 769267299 700905171 300868663 409360154 31598526 457443667 861307355 736378219 508760391 195906666 819434559 635344223 695591629 617068993 949389104 588569574 218606289 989167559 88874607 157840981 100622744 408124137 445617951 984548217 562150030 14708207 653870741 858039042 807593920 190191019 935693178 638084920 467743042 505536837 803946580 534460080 528207090 724412409 428476518 701517778 810519063 168889889 877395193 621047482 865760073 887150404 665524306 665349411 339568644 149944895 404920834 632256159 340997818 374110576 302808404 291614542 155594252 669594418 572128790 471301286 100027097 861057034 888413253 324336527 174496756 262837194 495842546 28417601 906941109 598450041 245206078 609244990 30052878 973029823 667897977 608514389 216346372 805561327 331642989 640970728 762757623 505101346 285541039 519473479 835316839 216764766 724386970 172362188 425715519 148230693 710549891 608826600 612887653 607155486 473885211 905347953 927457656 2872131 635431520 353197804 307101740 757753602 486462711 943395653 394032877 341644999 119158242 6909862 983563566 333777745 993969330 140470180 789123043 854262261 844189693 494121722 237132171 774412493 776350478 280247357 888340050 215907153 883604387 394184142 373929720 108736829 157073184 629187343 538456953 688632954 39924914 133323059 171861819 90769973 720337668 131711033 239937710 247749948 276705892 557721334 723489667 736304292 360635364 677491428 396126605 382783119 126419655 212860024 667941380 863764937 884600951 938988586 860547281 819611640 655658158 116524178 727158506 240699660 995938222 539289121 5223369 61779758 440590805 98530306 797981176 920264714 502372404 347017894 143969759 439084904 786951769 162660073 897768286 761961463 411269561 84627238 581235760 2600704 374031585 16584901 473557674 510235907 483577022 793360360 413659744 567589594 234808702 738692176 266540309 341236586 56976094 57127713 445979081 948253224 702671440 785020815 974673964 205950397 225836817 148052105 557842364 735435656 8998172 601321354 846911832 714733107 571741534 742152231 56322354 328963491 408110515 747464396 763097133 942548473 265361110 830795408 377160204 360313891 652935601 300014150 154804660 886400338 51712059 838120872 908300878 64492155 123449723 559229454 479111989 231345917 87926995 849726663 299498260 852334193 397615808 398551175 355855045 868542772 310721301 450294060 343951717 218684121 614902780 92924764 800876455 232725914 901254249 423810252 144313800 232381815 505170123 65924996 504465227 382152805 354284941 963469793 370680070 600504107 648648860 789163949 441309093 738975274 73269848 983247015 985272440 976220265 684929844 53732859 712844450 949889311 217281328 371539041 318492375 68958275 350580836 112627819 651690587 656233321 441274348 391048069 625637042 771922510 723395783 715731700 510410576 721907381 299738667 552480036 706806554 655363260 786449478 621049801 347865795 757170472 168464386 551558515 21413278 444150961 113789143 815091187 910793936 822261965 375297446 548523407 974428827 345121786 386556182 645518030 914563382 632953504 459025400 11832046 524573466 30130942 397720131 581793723 824221076 658617987 747505837 424933815 381177602 170067341 963000103 883480765 449904188 793282846 224939743 141972690 138133627 326865124 621042927 261964744 347504054 379469382 300479305 566210344 828946910 396610789 771443678 673351981 816630783 749915286 315236069 182942007 493901810 428554302 201639415 904763281 264680024 963821212 930458862 436352712 829763093 807327988 772243756 131540503 218644448 175543263 956435514 580671897 182054222 853798356 439110874 475941615 63690250 66094432 775719284 558319707 762576041 212191527 232744858 537007610 651418914 545250809 102736389 282417802 319264235 117549390 83289966 85900364 993593451 562699393 878274992 776875270 138662951 732624202 399004964 802013596 946678378 678822952 611185207 399444869 155935136 783348369 933966171 573885342 926126715 938126844 870377577 248670749 306075621 395644150 816533782 473223580 656138304 216112755 839464635 678753627 760065181 432369767 508135085 313244542 274209289 775829608 209794662 290207303 357739921 132166063 283565948 975393155 565347733 520127410 250372854 72240919 717154763 22158482 782919055 562161923 944632350 810891157 503069016 437131641 6394093 583144171 302053596 749669414 305952757 526631431 826493055 775923817 201245335 443490952 419523863 27564760 316455454 45090510 209547715 344600224 444468446 279993345 544918782 546617322 504734140 745577330 540060396 706274138 98312712 669681285 192468535 397017291 697371291 567018351 981668087 279254996 860909488 940409633 594034642 535135013 274151786 264346728 372700252 449135569 993875847 287161529 72262244 992882979 576741821 186053680 443084844 180109996 530739057 76922629 873957020 610598792 550327674 449689148 356029893 649599116 299182000 26930553 696796412 442644863 137227172 692618568 782292425 487537406 99492911 730279362 574671579 776669152 85671891 277136976 368697234 985123788 898352208 679377623 916807842 956613281 904126918 777535093 692709666 929990713 863835213 6686674 760165870 406306116 116742276 134946616 406700174 611347370 260914963 746717981 839427796 106672455 71364880 475112503 890566748 129109291 336493886 704520230 722274728 692222568 213607487 280287394 15153725 740415793 670001041 538456262 532560117 71291613 769397736 834031957 475689046 752055343 396292449 119463723 660654595 954766876 799285556 487578478 180331114 646859537 26133553 388524750 458885280 269330050 547735148 817918721 618739308 902395844 719744633 534951662 212982082 767474633 861097457 721392570 529275578 883572224 877234155 965604236 132479805 734016169 287145553 411987923 795955562 724651992 413239916 574414862 672269822 845466269 828130931 144166714 927514468 457884873 710531733 981812506 538777657 830832654 692136857 605132381 653153711 548388178 963723953 165649891 308726604 819632507 210558864 536592887 183830721 756067077 651455767 63083078 831425736 762728508 453285315 600345836 830446402 211355254 191994947 142567711 152424240 365238673 265619713 993086278 563331939 339243083 458097901 370641936 527941234 355707314 850071303 525424256 324858089 649434765 760877483 368353909 208037181 541102573 853128523 649881081 805781589 389059846 128811006 27105694 22674794 313504682 475137251 883985989 940322418 881180279 308886240 777704681 822455708 490207282 186094758 840030100 830161392 906450323 685569283 599441071 852915198 405176011 452200491 521948156 956053581 572840546 981765524 877906196 480045244 106643353 319139355 692206043 182305481 136000713 136195295 592092699 246149977 724232335 239362492 427005799 815754540 471357579 310992711 720506868 29903748 290770827 830215208 924885916 725318144 399840414 213014779 322640091 702813480 594154747 212342047 644894472 613715993 383450632 244006736 551966185 334184656 977234641 902157747 957466539 816821991 330816951 614400004 262779753 494839973 648333203 945656565 582121133 415611993 296424692 520630736 39753079 734596912 231299559 925918591 886027724 160343053 426737015 627164676 33021387 637040425 320460642 490115598 441614885 461442676 500571461 936632343 193504079 903275217 382737779 273167695 885820454 534038288 105143772 979857344 296777921 158504113 933417760 320269013 946581673 438816237 340901056 59792878 543516183 534602912 821501220 709122604 558991303 980410900 723179938 507070312 236127412 171350440 169746455 593864008 816521755 416337528 528292762 196415561 350524832 887173147 223424549 751971813 146884187 631096523 755453953 517475789 457270028 233413110 52219149 407006375 660117238 93635740 691076872 187785224 564422737 178809537 241213247 193768082 860123340 142681833 653010033 330970602 216758798 597697967 200570113 12612267 298519595 624186990 523403078 715759421 695204145 535353162 474312360 421645743 542714081 501924780 797487881 101626947 196674668 261249448 74204382 924453350 781277851 557513936 313112309 678490021 784132498 257406504 784719368 824081539 898045463 713625282 917190295 348734829 940261347 178957865 354760185 29874074 830042389 165654406 323165539 981171265 582195024 351306732 506990314 99956747 626553538 28397659 724452933 476038140 864796934 224396657 355682450 772442005 760544674 623794403 648217783 951402355 75229367 419465448 962595561 507781802 158443832 531563643 860308601 126087435 963696483 226774077 775541557 488033299 696493388 96738792 920785069 542068378 127150979 543171837 217102216 764705523 121051152 392994646 186096977 601280850 785891988 139038205 904291929 885486986 591602097 748904970 68061491 777215653 936304250 71881506 182095620 333769444 926895168 362353865 931526350 640667677 219406597 214252808 89953531 44053011 193428369 778659710 795028780 34384551 25252560 883724037 733596991 372140111 344628336 91209957 607704544 301476293 400321303 774089584 110419950 790273989 436094757 919146756 82093671 197689703 192485172 278424802 681508805 361114599 26376861 938163612 790804355 205382366 471175509 814796356 841951194 388104381 162067667 464304416 464232742 345568923 78069315 48337172 767383122 665896259 170113019 450997135 917154561 411689256 332636122 59056522 267541276 399575660 387517520 781224436 987749435 796120679 336223727 370009011 967371846 136636687 234386065 355247520 957469476 719803436 44319913 159719270 793953754 453227688 603396296 480724851 120884518 288621605 626631332 412035243 912343519 780140589 813439193 602567459 408863745 432746613 132291213 184737860 274493362 667811910 48422443 953767402 700142669 595205665 840942584 649705875 990586314 595451737 801434312 148180035 778851866 646839619 908113708 58702443 434776040 355755751 159502490 34313216 649350020 693147697 14829920 407414399 3241652 556548091 780542894 428461472 546182231 15933486 139115362 204076421 378694551 768385101 649003794 217736247 281589787 265084428 77598372 708706896 366459948 13278464 221156897 515476213 144432872 317666085 207291821 483797298 572072285 492175210 212499619 407439117 392731582 965849866 507227818 11554854 93421711 746486405 271473467 517564308 445573330 999342113 548480967 682570921 631735209 390189203 787524570 378531714 716114149 14946492 542951155 648895000 661991499 598838290 931212105 836117774 333260436 313993589 863516409 892962758 710616023 333477727 705170318 672278170 890272353 237144951 208943509 944480552 481338153 855266855 387112890 163966793 913328337 816461215 906824550 541454594 454685353 97038211 331197014 223528310 47728995 75063593 988954784 203220377 474969683 885095026 410693933 742437910 529535829 68324038 777928777 491424271 431096480 278081992 518506873 735504125 778267554 683698488 216764614 753306870 770837911 65028964 132681286 443091624 351860855 586710890 834911144 914542233 648379026 703994600 350320854 96024063 361622465 878386331 546159154 863345122 539946268 436246440 910876513 984095808 33789782 232066221 292046494 810142812 678912198 304006194 854936255 655425549 636909441 382916137 506455808 89351257 651818917 557380063 116646299 932377218 185401546 615018867 493810567 231195851 786267442 705056246 607373948 555184399 680219341 417261665 976711271 430841510 959515997 211339446 499349473 333578036 131401738 31308210 594255477 464657605 858922983 718093083 456414719 980338259 304820937 767677496 99207095 231755641 408915349 329759277 784856393 384952726 278225164 661321231 283780100 371630858 567191597 454276802 845062246 806081222 262695370 496453339 171707572 582529599 298196827 452332062 580025490 462653745 325521377 838175608 98578453 538818225 505242838 57602847 559420068 419984093 734476793 855439350 676546558 655437211 440416594 955139229 810729758 252715043 488293949 704296719 448485259 458443315 817922803 542214884 356853184 708812296 326572311 679497685 869646145 759495778 476177627 304269810 594519369 362935930 31237785 577498135 542174584 587392085 862120437 637277005 201899716 275735872 668901562 392736573 190882603 105856170 895729721 173220536 674109732 389216954 12543765 960687489 461411916 34243276 233689125 122180091 932376863 68114046 176062711 563126149 264553251 811498902 828694226 638836350 537347317 207156712 566384281 767851992 590583378 786175791 172178371 686872207 740006162 473501920 452723614 563910133 490486860 819512255 318490324 631023829 842575847 133745864 53211741 920703880 554540834 775362046 112287220 195949270 184873996 310201720 734090624 340567221 193431141 981275468 153737639 286457759 651515554 733627809 967862242 594325179 99035261 51514899 231947595 274410851 824406608 652757657 400872432 829038281 936961558 342416559 588188219 733211528 701161421 61203027 513945941 513137324 529350562 8837561 343185270 388182214 393174601 890975663 668278105 396572642 489948486 742263781 559434929 18637747 641468948 2160615 924148013 848026959 648901962 868489640 523396534 571012567 547088550 521411252 340422743 438708495 946472459 392174153 621728670 549852385 62843201 814427142 657131364 872661105 414529077 397601093 110845956 700873114 400884096 595896307 201262370 585147263 955184657 845215109 385882449 841323785 907509462 589508485 709654842 540402081 739838344 707197529 673909068 278041524 253727685 823283888 893578876 519336447 606174328 888030048 990274971 391798245 343642591 878126462 713518677 116001717 810761527 427897402 851676651 335173818 55707369 640541110 458317954 723133224 827147019 888869841 570830368 296920254 961321278 478398455 777353287 252750352 137125427 126061927 947475564 365209015 94689104 638013253 937780029 179813098 374868517 138455019 399427259 922733740 341292783 678401759 530481290 559266712 481124093 405966335 475229030 891990048 891118741 855062119 843078398 962916031 475024207 714566835 805930155 639450344 90120056 822549601 221381728 86329068 904928002 770325745 598382082 640532267 555370160 651430620 741208505 325068337 615287991 164246061 225944651 592960316 297491650 306444662 524652342 282955705 386753592 547764126 308649628 358720078 692063707 953469305 513284923 591005379 898984580 285462747 932449342 326908958 626736726 825807610 297446071 256499053 786908876 586064099 103793682 796953577 919962078 441830275 320565895 714952100 761687321 882818221 637674596 582453763 329182991 621372155 854852230 786578397 192719875 47734443 944191160 390185203 564468729 477094714 740540054 346656115 115967863 856182843 757000914 229231737 6524293 870878087 173114675 270114834 382303548 481669896 9493620 625979849 408616314 790324691 494668835 18626354 577115859 223346377 634359286 896200855 157043717 278770791 816717596 579851167 161281813 804209292 817714385 560320549 884532538 358924621 90507111 256146597 525660964 540825908 837772488 281227067 249036194 399725229 592644722 192160300 133388746 479141487 813723307 37892164 708718597 187529492 483591591 487340955 683382054 539378401 188108395 288823349 419043515 622359941 463206923 705803329 708858230 993417671 420568041 671508983 890367452 160043449 760495453 282587042 529744549 521665443 631695217 85299302 62240189 427475917 478764684 736184450 549239609 709382704 824056268 885935161 455618294 252240502 330716370 369146446 688139105 682237233 449053540 294206142 891513004 112644003 385566733 880613048 106313883 508816953 17649958 29862704 195614095 55855690 34141373 858673673 684836115 380180193 143597467 773632741 62968832 644895901 344917835 471313322 643715062 463117495 768835968 393403932 147424871 895329432 421044971 456402414 27356434 998186020 874844321 639459955 502510716 814602292 438153923 515698281 815916425 418381115 567880197 10992096 47687876 609464950 903727214 254206439 610988636 231003305 65022101 770092491 532885042 297971319 267395554 264282150 205880299 203697862 651647750 296684528 632404082 956331801 809091681 247976763 697735539 369099841 708722954 618842934 660630351 890055723 491074095 395123161 169691552 244060983 138555146 869350310 461482705 686434247 961038204 152340166 939049060 115003352 50148905 576880187 949242386 525093506 281031307 191275754 456599112 554171996 617651457 63651633 435352355 544574405 323385289 319080330 910296780 194121943 417626753 607902204 790302593 963597635 549672042 738078045 162545052 44772991 887586015 230843082 931924480 139043138 786369950 75547612 480408175 951399700 789980692 473085331 408251173 739926552 793408068 961276816 613189976 116549474 216263717 406630019 386174893 419789295 832705869 111747158 372325959 340685878 303385756 282610702 390105525 70703254 511605761 861773398 803601951 651114039 602960639 453327766 517119462 341438095 410762916 319947658 640250152 267254544 653858371 632966402 169178779 326446382 662067776 541825282 938516620 454020898 316502579 226334400 863578954 373392606 290402471 156623407 519574734 580206419 471846601 407518775 607738305 297449651 850440794 912304713 983873555 764136713 820124175 90171881 843184759 159020258 90107121 478361639 563562726 344402374 32161050 88145367 773706764 739515983 412433834 908588763 264020048 746301732 574323703 537083753 553596622 716390235 161586226 774148256 58519541 345666494 908210586 684739216 562527912 641487393 592497236 758469332 63702328 945942784 288891236 581621139 651424633 293142621 406829194 903029608 919942064 226812054 559386579 242273453 445579682 94409654 879412834 619647387 759093635 780675279 594597524 65413986 91267814 573002747 151242042 352172781 83704936 127729310 316307945 242425723 806170593 256888997 178683462 664112364 762346091 289868934 656932315 973759178 78268788 525669838 953056049 108073054 602787610 262836765 877355966 854447684 135039225 395210782 244085137 17978691 5433236 45768440 6737919 232253799 23348838 610152940 293660554 376872262 854679461 230622089 158145078 110854325 102186974 192728969 261045666 103006961 751523278 920776106 454257522 602210533 427574577 995621206 103513670 870643491 891323589 205486976 35483694 157281123 869439114 455216375 381455284 542794653 613898826 717068547 575119339 414021710 917386705 345469435 359416796 457152578 799624229 101756897 807171863 534441323 445358214 935726152 797563963 970884886 922216723 400347334 998569186 983966179 373455733 528447786 719375526 852596500 342666175 736316904 296777453 383210240 22131351 184342761 854076414 354679002 89826920 552471619 692824021 865265306 458724956 372770684 736122877 633580020 122570110 793165680 97996051 989102894 235032532 839159447 54317054 17763611 30891224 455538820 677729309 26042341 398210157 720817004 510502336 34102023 583364459 959008501 622977789 880727745 175079874 86366694 945793304 691174684 482044210 204804627 723900311 976333526 731086079 738507369 506877016 653189070 63944027 578266822 484508353 783664274 332217439 543487234 727692134 17189815 260587623 750146238 486258844 52770124 89591985 215729509 861104750 417342772 594063115 646953392 324347333 938945116 733947716 589851419 79812404 501500296 214936551 843439034 609162369 595038342 639961205 421904047 497972465 9950589 806054308 541797552 988139656 836665472 523762135 187626829 549333114 328038457 126766741 449110411 14270876 944503258 228045131 562069579 291279154 80426857 891453212 356141931 848514949 576127845 1229164 274475392 519313211 117393763 14666002 826849676 767546566 866238957 125887752 218650753 71538742 20871948 279029347 54471719 363224284 228070095 884774597 480395585 405682083 282099941 896719970 527754615 810140559 853912 244985526 266094329 380264242 210633248 399216294 659517488 51399095 564478907 901029155 672605097 655505977 461064888 38771211 907597146 113947221 635001077 869392276 492415568 720349585 793382964 364039897 102487541 725933628 488854163 418046648 724721475 815881642 300854739 145601684 983970496 747218815 223175081 5097547 888406832 662926940 544218869 471290386 625619866 815394934 738299195 501130268 383028602 296887182 187506914 200525712 292559142 949074590 336930524 755252322 471052754 790489067 814351796 113418626 670083154 475215836 136735336 714519600 981957360 469543890 188458188 622551867 314519298 173339719 630142926 742421535 813569641 636042224 197116594 479599241 902217987 101215800 548327647 956838219 859098463 661741399 874690158 861096046 503242586 315161822 818300792 937806931 408657905 75926633 146433327 277597805 97725488 97103281 109274836 647480963 340144321 411123994 857521046 955620078 165712255 206262042 81374035 375083737 493746679 165386936 419959536 509853792 696900598 552775634 954769735 238584325 489399434 898737167 144975607 146799105 176112650 877827411 676063606 832369728 389132336 77491422 873922987 159590975 384575016 840070507 687368918 761180398 714056014 685147622 749164034 422666344 210442186 233373231 294989091 754112111 299078983 97907557 88432328 640758608 288199376 522355631 610859977 795189448 426873296 925073874 449762916 900283612 102973129 175446224 284280382 897620213 66077398 421012405 481859967 132152667 586600803 465892786 745400147 317471722 753759020 860890082 974159040 92589724 509232538 93212817 510908932 774003316 934314277 164375745 474288906 528097624 424713304 832913275 199026279 425579314 733288144 474942901 91658496 783182376 682119763 585188384 478349723 924421218 511701438 530252625 993956862 735420227 164442381 846972723 956335513 616488478 984693265 665180552 709846505 19971275 113447300 990090533 884497688 786468377 960054518 32033796 457383444 692908425 57447759 919129821 17499007 281338149 69446194 906900943 341265454 211285607 294087057 10483105 133809170 135456960 904533978 532268214 18984421 852589705 529431966 483198386 270187289 792038531 855302339 941166801 731898151 909045529 683198399 814617342 771854414 51643015 277566849 104881998 316642388 506187652 685284146 248679958 28117135 611079904 318143178 97721827 971163425 376901238 300794297 382188193 498701122 307897207 997600165 924530174 767246467 602384808 483765679 388320175 296766023 925785798 3798326 395522465 152609666 332012215 364417901 377519872 290846266 766680735 205109873 823013602 517929981 129058666 700754782 312789544 918783682 50606710 107064540 573535710 189202189 936379058 244455902 15019779 938709305 743641285 971018315 97161136 602388279 101231903 661874264 733205873 229136038 927048075 40729615 141251244 770934877 617425916 779425427 962663007 475448529 459279863 481524938 889770021 192217256 77010801 46971863 931580552 219080810 617125163 158055533 750855933 671780375 447815398 927453577 719307266 787176184 405514432 559186540 850186463 294144266 343090871 115888648 914862442 45506301 467200127 477795749 358720268 74745313 950006346 784394391 667628197 471941674 384016717 63587440 206916080 655622412 417159213 705365104 615705833 484528153 872949310 394907578 153452877 530486043 448098448 976576355 373026537 479147271 20822039 252021301 577754906 777035486 454743616 55008987 10321206 926489691 906110358 190986241 573972623 720789487 572579195 293806169 728865140 554921148 35856105 99427339 825091433 471488350 87669239 742730768 130398110 940992387 716253155 780501055 761440074 9071485 857213295 936865959 744964573 359018091 974529106 799015237 220438482 974803457 165203267 927952165 466157689 254310587 353209286 829867499 994557823 881082310 174130647 758257451 28567435 720087277 495954585 383650877 993541546 830999270 293618120 919878611 111951502 938928889 224360594 451312275 878229265 302664926 411333938 432857154 513906661 504750634 489302651 194176239 244874383 791955196 924103878 814474494 988628998 205454136 607731937 338544562 816136362 801447091 364012304 988087585 83740049 895952421 702751442 918957261 440436920 238835413 392992125 494364309 543737814 667366828 308476790 634907626 290927181 965368325 7205048 219667515 110106430 603423936 198722381 970588877 139930718 473265398 430888269 49283961 924698630 890769702 600228536 334658352 44388203 149856722 979253680 339151424 610396167 760271364 125601828 16750080 320198628 407933877 588607483 105180328 434138557 141176747 473109210 562197201 587053602 653674093 951191561 979793201 428275031 198118022 138362138 375934776 421428185 388530354 224812925 98680536 155728641 514250681 870265584 595673622 165172691 961159719 643993726 236766508 764744767 308616867 53018596 289929657 691789268 613140362 562808860 880412398 223388786 158737830 184056518 984288870 180736092 592358226 165451285 324852672 597648684 699919416 287433597 734418509 750929447 719157367 593417074 503972806 697979863 931687740 547067131 313548206 611723920 351935354 669032746 508147394 56789509 119977646 242033231 229973531 545501705 736369161 118710957 217165049 299021422 722982431 851486598 543469254 960273871 921393785 53647649 281588312 281897027 482461147 39400314 154629718 35642827 737155345 144364507 691832430 193436597 426046035 646627390 207666466 503641870 286817334 987328476 887639277 407433169 734154556 551565972 434486533 834218058 814562469 257225681 330539876 610286806 309140698 442701811 373643094 131958105 469750484 479016452 107535154 310922536 217307437 494906805 403514502 335105585 122676888 361811657 589628752 339892070 417020554 544575610 445425406 582084946 99936185 632248465 560177154 750152100 629367339 213997994 286450384 239084994 615549554 364142602 922478806 958402275 573362269 996045930 409939778 455179286 693275781 965935395 931686558 350055104 557957735 757365989 445049108 189408260 601042705 866534088 13646009 931632564 531906195 951538625 460212092 752585182 721316960 941972725 48290935 595517376 955536539 91286771 331957610 881722788 501593883 252728950 456303956 679018969 473489373 580861855 770044383 461309997 311208173 529076985 894171823 867943146 775320675 96666657 274812128 341472554 722072401 1587894 409168353 825286561 352221982 883783456 91639353 865445376 415700042 702429382 504954883 987629387 818583888 702580959 113656606 697802010 589025263 625450406 636280118 676066756 594739339 390336575 503297803 981498529 387897242 133578832 92004656 308859777 369693769 7167087 845353627 250456884 455022900 389326463 278358656 701624225 747397337 212944940 816981831 628998303 254463399 977238779 865064300 991583511 499047274 282172901 566902475 38604114 716705034 693758841 789328952 486193273 570971535 93299331 126694808 17589179 190426131 467790928 451228261 18467794 546542461 426978368 925106784 512657692 84037080 964692954 513288066 276027694 694180089 794443683 433855383 728081491 73200753 104139110 353131488 969359 260170847 934747108 80243504 514684897 100819901 769546682 278805780 549799342 827635097 576874419 66517985 828858303 733756832 730911956 666779315 912804549 388094156 162006948 552252157 642177780 607684120 646855658 378744063 766095140 82265143 429538360 71123205 190195585 858029729 323496837 442256321 104891776 804880501 300569372 139013040 797940323 631518912 648665865 417589172 557531748 248912680 432086471 465870695 583818088 767734479 703791163 947004858 637877269 199517362 751173545 437517061 472982408 392887893 682669954 250474164 540721625 817378239 830869611 796559142 53690805 763648900 780263200 538061747 600937686 266870460 6667496 970634899 662551485 246924862 827020561 911692744 275812245 241644610 631276422 33226292 677227946 16114094 759166655 750946346 444367161 400135836 699716503 773249921 817586969 953880985 901223409 356740528 589894294 906991291 920868865 390919991 133476295 458606399 842501311 557696026 377125621 466932906 627465807 667911420 512478639 306698718 173754577 810348584 193416077 374199033 856820928 531504870 471118637 121685516 360308258 333936279 778542258 338326335 224549174 481915979 333791428 679822394 308626272 483833452 467936672 647824162 390576620 98102701 788735537 999148370 686115298 321489431 223967652 10799249 949788316 578878204 406376317 944756896 567075438 908152031 351075101 940374208 472773062 595677445 606717301 391407543 798552138 307102146 191088541 795441120 705129714 4360561 235633271 646691353 405045268 66998181 585343677 775581421 771223494 713646357 862258777 251459976 501364758 882664367 16508764 941477044 595663070 822663500 156567522 341063970 636873941 865891492 191929808 568235702 107886460 386917146 122614251 106559945 641126 947369865 546285846 874691228 719185746 15464179 598611014 347005063 484765461 735160126 32189577 795030948 256759328 103951237 178857303 387133659 556028029 583971927 134125131 19964805 712984622 663794994 462055771 694454883 743873401 152424150 156709358 591004239 374414812 789589949 306152928 180040133 321238791 199331610 633301622 871810526 438448516 505250989 497101200 752575265 392304233 304001205 783366957 445622056 624236454 589763391 494032723 658217175 814184146 183107967 186683359 98698970 75981758 370928249 747841008 453581896 715888597 23347884 258190819 180440841 816907152 106430006 685359383 19217949 518906608 908834691 137470017 634968002 729674565 968415549 63368362 983074216 16674455 200627280 371550836 914631442 13960030 874573257 566178908 610950816 948836804 129685858 685957976 421395694 431270461 774622122 324752617 138404401 373674734 870351944 644234621 729388312 770159620 532284915 3420153 458466481 467501697 723276977 527261600 582662966 636667399 354166254 125136974 514863862 660756871 351552219 677316761 668017289 355912437 732101267 520327864 183152830 460622758 987870982 56416868 762586526 972815325 651645319 443178486 413595165 192277909 928690871 978741235 391022922 859812161 653659542 274780574 910241111 298616968 793219222 998873345 313041657 527689640 365622257 489978737 977928420 861766523 77129743 692883316 138543768 536626137 999341870 761524537 198990143 979482562 582960834 177928146 50280063 548921553 601437001 640789170 557253100 782733916 160509777 250488828 291323699 767243477 527932082 629392389 531585330 59643833 280955601 963341926 748900346 639597890 15153455 319920046 680767486 437471581 717857610 670563538 535564593 575657046 991850949 217762401 806862578 390902455 657713994 300552616 308807654 32603752 144168500 510809450 844723246 292188044 9044981 767441174 361063886 790790119 79258484 396395094 537788057 211601032 802870031 321546002 924896694 686385026 641978366 246877598 552606987 672783467 151516954 3964810 684692260 859130905 173678885 676196986 679246571 486252460 610349147 93288015 918271151 995870843 318927680 431871469 935108507 324809161 803300745 348353347 5120788 814232514 707169783 416373162 170552743 647192765 109109629 273367920 882563141 936798476 305886021 694764857 127530652 763010275 190400981 394766022 359852472 651527527 199893841 527492715 675413977 410902995 860436081 220311340 181850697 879300812 847194728 442794923 753022848 878135887 123548454 394104002 954213826 191303652 279425804 402383228 16829002 757639049 854959803 543575579 358779839 426177912 676344217 527879929 959610112 635298676 263557858 840985520 792510289 780658293 981410645 612638627 355034906 403648819 194466454 572518457 754724054 507330651 966110191 187692045 581850756 696842701 471297695 904669709 85357271 254074342 818286859 775390393 166832801 948433846 816896130 883003184 603816112 441305679 258331967 229975537 526982618 440887724 865869832 476476604 506466152 11367816 983311338 533024836 326063095 719060045 680585936 697905234 262523051 453536900 660954626 653961813 843561607 124944647 526283429 819145361 681670748 260883113 509605025 800701901 789673323 575142092 268613292 43656366 797527987 422860944 616992494 410575746 315514338 137437863 951424941 660403457 938697388 413542948 764420823 817033735 888205558 860360138 880664847 693792590 891302805 358152226 879795100 437148442 21465466 65236225 672055434 511956917 758122897 693354508 1121872 543557235 589411618 375309122 5203308 718991721 834482282 366397002 217357760 333880130 49051522 937684436 635844392 883122320 322379587 444410805 218794135 907604554 663469080 207766234 166800600 91764234 555048949 240920574 186630196 270902521 634620883 953334630 271175261 243232100 500033742 834846372 686664230 994500707 778869268 217553704 815683357 973257993 610948512 849415293 270868658 182650865 430082416 338507018 651434346 484152896 769695642 296128348 389187074 554282416 799670927 93516078 325261599 759436817 608634 74596399 331183108 39871356 267596043 810717562 797893901 935307671 276783670 692697508 645921408 812407046 923853400 726417488 506694606 201232681 928612072 549637657 910354850 513439926 271195843 774308525 373678336 773416162 51910361 864362843 275925370 587557973 101684929 966421091 230658779 19010602 708487108 172201189 141711933 790378181 857490612 914575104 309586533 37203078 193207874 5673742 714816773 608403913 471310421 213323480 801007446 344335504 850348335 320567522 249990231 387922021 442890780 873083991 908148731 794058334 374088814 553569979 577690466 614675563 702980826 50964551 753140269 643415784 337616710 77169752 720697182 524669870 455741770 507352586 617176153 592743681 771367944 981270858 208690414 522937613 198788350 260658954 531084209 714626828 504483247 378872953 326488126 697504030 14940696 321169766 991796988 924976573 189229981 128576737 289948918 847191913 190982151 683448659 919093219 750193934 349753274 693738002 389101867 833635001 967007932 68388212 602164419 707246379 49551887 856697979 509984911 268353555 222627107 843535304 339659120 184958217 356325277 262120002 65338779 302199700 538051782 299893223 586656395 700210276 209311913 407585742 904133261 324084709 829111644 564377750 654706922 493586034 462599326 455678601 930680590 93840049 962614753 924431636 678081021 153853176 383841240 320408360 987450012 927313239 380015049 262964745 514142588 720880400 9010022 167243555 132361407 847184727 644876136 66254282 518888667 147020911 278540433 358292685 361357339 601379088 413975304 847885232 365394271 784268557 597976254 174033564 133624154 898519630 427688581 601117668 11961300 161981942 948707619 877923766 385939845 483209007 850903107 603597623 682373390 520643207 555311804 938181461 405556509 24783470 572823217 374931571 829589160 570120440 822673990 648973235 577263361 394520849 264029446 641046383 961136903 272788702 747777794 345943030 109905579 965889849 630921883 393057100 763537306 352932665 514031347 530905600 631110445 525201751 787354814 820587992 224854065 167658895 619363585 256773639 347353863 616112863 868165910 489027188 119481216 143303901 228032982 947572952 221260536 701676002 172735660 735781735 279931158 459342641 544022261 228265957 173297947 975873173 897637584 317281468 118014017 630985226 820055774 938884313 120632001 431921388 488484202 79943030 113270836 463970864 901254448 615089076 45834454 589445421 467402919 501787791 585330602 301271939 303378934 507924700 94023458 25198322 572733089 593844671 363738915 607264518 864936782 191643639 99115584 897564863 724572848 194637164 62105240 101354818 263470758 495710348 697869656 440146508 617060769 410956700 464886019 401387714 906750771 968554928 598899613 909359889 688412073 200172218 898360962 249256443 246525070 847795828 770451840 25990493 605746283 577376469 442731183 988476799 404165195 977983332 988974616 784589326 996686016 452372239 141802446 559613310 950661356 692975173 8969067 548514865 591814675 695819486 506576803 890498659 124366452 133706394 910690467 731232442 105586845 325372331 589260097 759533935 368665582 577319189 943514864 935897678 481852977 873323477 554840363 167406479 664296276 28170473 456262211 321056890 509503086 240917630 699584045 661699362 104679892 677548857 263488184 363680867 722065250 243221472 947112911 19170391 603229828 660620650 164768938 874254471 783223442 873880658 493615746 658890895 605369485 951592391 756301467 386166561 618891955 648436241 581884564 40899339 710890951 265594958 820040379 357361457 768790644 585162409 372497458 63315986 377374444 259663849 503768124 424322804 262310539 960775699 401381153 693884313 118107432 781890536 899559293 702917377 45794733 6277194 52572408 675607430 352055490 300479551 410391773 187808695 301998819 8096669 682031856 136378368 941678129 566589512 873453968 871841402 248204465 187814761 993228722 123407237 678419712 968935655 885680840 9454889 596512009 139371572 947474863 242601648 921063947 680001449 207597452 315159613 903997506 617890714 350210053 814553239 310684 89058392 977798953 206319724 544598204 536428633 114583595 241789276 657159277 841950823 34196710 894775267 196428617 814786553 954091276 635570098 977403150 97862800 426436056 400290811 691107174 141812011 979055464 678511184 996532760 604933543 824260512 148669049 119147355 783250396 740285316 787626963 613428220 571143874 548370449 968345024 561480980 814747126 15853091 286337876 741559629 242702995 558207766 512273562 152796730 869787862 624222296 220234845 43141062 29274274 937698110 993642790 890249189 640160795 800887072 89264369 39042186 70242249 442096578 112497038 282628968 148432641 916990533 337113988 107877959 738703181 807429933 856581124 279071955 61577087 489096084 494899834 917533759 889425402 19281282 302683662 71972430 940348262 868787905 481488325 536697250 430977565 779159912 787394925 270981028 676036175 296803972 703353727 697759764 831436508 147769500 747693131 478484696 138688607 41029075 618874695 189412800 200675199 328144667 326812765 233914892 606457567 983203728 222009503 64828990 322229624 304293924 89149826 186707071 164631357 824274595 96988355 404609960 841270969 423640435 813171578 128079216 908152514 956466492 716252840 537555762 754061269 747583521 939672571 791677044 573378951 110553717 980352541 925357074 221060115 920935459 105137877 566060806 281356968 243179830 400824776 475657925 388999473 111864887 717478315 997296098 505140265 720948441 224600143 141169961 771487124 866080415 62107936 671087983 641519985 715337809 467166166 924425619 659238368 642155081 952754264 348192522 503829280 662896812 816391368 547546090 124223065 173249825 230323540 267706545 969065262 680110376 186996337 626339609 757186635 88139482 809358484 308192278 529761910 786529513 301145757 313751905 778969947 921963615 622149631 430954348 256147585 217878303 267367996 361039981 463613962 49789765 214323983 188120505 382938038 900555618 969992117 94695259 660837681 416592710 233897016 138015105 896895986 631008926 829191310 605047406 35693405 35700778 355009775 256032348 230390981 915688350 246704527 541205518 5038419 250949056 810112754 315618521 902026814 673805700 811412100 914895371 760165023 771764826 315371346 405873876 587967466 784930925 121938259 348845808 812154576 716787084 850704347 466370139 760207379 325596551 237652287 584896026 490497259 748988412 633537645 377081073 149247405 208637557 169802721 205131976 46014861 551760343 95924489 608387880 554547051 624298949 605861309 950231073 230464445 875785464 836504620 572803435 324637012 438986071 696936948 407579772 288764925 106255954 501349532 247262527 438914419 895778422 441022356 880159060 968200840 330108388 496669998 835163257 691631489 450269847 40590837 127742630 472367848 162918951 626867223 601631804 481825748 816488635 989646039 538367342 751477270 871643204 393513313 28746364 265052385 194420751 379093776 382286521 649603311 925564899 999667086 257083865 893977726 506435302 449152379 18269436 327085131 742101186 4763516 198753276 21640987 125105686 36153244 371515215 930177205 292856782 310047464 560931825 587536549 192042216 820590936 769072852 12242119 563378704 416660284 820286494 817847311 463424052 168577171 632816021 684165687 701913457 761084436 225089992 429570214 187719603 486910409 389221831 521345423 353126851 811028564 238181088 716153602 969034703 793909040 575593499 964559760 141626118 297915285 540831926 379630732 564121082 670113413 835468147 670155350 994703987 773911227 73640763 141467837 1300564 901095901 156077129 87761272 886681971 533321714 551075708 690703898 135041659 21504326 940720523 190269295 452687239 316069412 307948010 474706216 372213696 130850516 228676988 927580051 474501967 930728904 863798495 533754310 466322304 630114315 352702979 423554312 241021373 851904322 375539434 526575380 714109531 233849768 451770680 930585647 626177756 255201630 143884326 200933267 332061394 893485370 773885185 475874521 758789896 208795605 338558975 32199086 858039625 485633987 934979334 750467973 636575803 332918442 850339433 748279652 146508590 293810333 438441 539388115 308649135 122827969 152714354 86285610 365451895 685403229 319850447 613431647 841405220 286505538 378856564 771282430 658680341 992146666 936979820 622215276 677824962 852931010 603164781 994642331 212589975 396655821 729074075 391256284 12262308 329550242 235434862 668522216 772898607 755702772 17207173 339230375 580069218 446932998 775774916 903431090 632683652 335136404 486544781 312229845 123971645 558371205 739853542 926441251 587226859 4705176 788446481 472319077 509347577 216163938 900691685 569830306 496559403 273056206 351277824 290621624 397827873 783295293 147686642 10953438 726718889 130256700 786362118 797665104 568373025 571037223 729586827 219567831 521284510 679442736 716546129 271831019 455932615 904907879 848431890 223084925 350065603 656007942 661262086 35057008 28068268 765608610 927348680 873688068 765481663 954991470 12726706 551662121 819083855 272183533 281981336 194783959 489848569 155048389 804324685 593676593 912653894 749947657 43858046 275567419 210482455 953488570 999011600 510143048 284208612 324826676 219162202 281018183 857773528 604715099 926586135 737210681 520386644 158157703 236162231 456219224 124430078 117385345 574788031 95134560 566008834 371990876 388381888 879372087 505321104 852579118 581688401 79766205 805222811 696718459 135213890 989753505 883109079 67450752 189208631 243455942 863398518 185434061 387334521 962319350 44913131 288486649 268458945 306534766 439555203 467505682 825787466 682204188 90956774 932746180 638213627 2330640 422320819 495812369 987021057 422869306 860407014 321757161 991136123 809309440 795198589 288513076 90812519 200642569 136526025 659255063 30159061 179167665 113837011 429668756 543015227 284223614 214991825 354518714 180753419 922309402 837415937 297744313 805863872 772763460 642741926 222493484 295023145 876357905 571465593 318508095 558172121 863296779 293263110 420986326 173877256 115877237 61563331 519426031 71422790 247053805 143975074 865442722 776880000 256334188 173070362 503788504 275855635 949476410 259199364 605892809 65953268 50250762 170896789 64675281 131302199 722667366 504450788 319210787 839470100 878036614 989867122 121587787 70057622 446880042 370933970 572868076 649587528 672487848 184404408 94789446 812703898 608194091 776723167 747512275 726079242 122512569 994062419 939340645 256681059 9200769 859485569 203533240 164689716 501123764 339851520 564341474 907954373 300878191 817285404 990814277 956471905 853591594 386475793 191283082 736308055 762956856 905270395 892209304 983854306 410578679 665493154 796294515 468833301 835855069 322037647 74580464 416173866 827941351 433935390 866579297 296288023 243266413 630792233 666383565 197946067 201200229 414247833 979714502 487252322 238714125 264134736 179790593 203074282 252777584 240844286 572604835 674931905 891689850 966787394 372977601 206079247 330469302 483114851 836432837 811382109 682902993 304195448 348871212 44532188 750675700 665516137 179696950 703602620 988870470 999702940 438685990 531911145 678090761 876232033 676905547 7384201 216350588 622872671 305680021 768310293 171716132 662652387 675124735 727185302 699061996 943363096 657243910 467530953 130391161 774771220 592876813 79655052 912600779 480172511 370636311 468608193 352571993 513498090 880299557 221534275 885789142 986064228 306434832 539746729 344485664 894117591 403952854 163240420 60523689 712467102 160893158 537734890 946526746 188669717 407273852 225615141 650412920 412824908 364834094 649379308 585960287 611977730 330621204 273820094 864836476 351054426 594589797 864904436 53792002 975676766 788600226 257053594 481398808 325041976 179827792 71655716 524476329 928739279 932509298 456943042 68953556 302909908 651406920 222096870 378288962 954389686 549515928 260833895 153759771 347362769 65658841 543808856 35051304 927035029 843821283 327749118 550280466 836725046 259762133 150114287 781824866 41820643 885322832 430786603 639490273 698253610 995098655 910723317 801875015 708568319 670393583 894464636 70334903 655817235 803661918 466949487 696886638 647077314 812633815 135291493 172072154 179929945 836775198 217116214 141047099 315500257 4660611 431982369 27576770 50088033 451582045 411174817 801996945 26220885 753026718 533713834 128714317 751055021 505822627 276801209 386317983 48643615 533452502 521658979 715155139 380228459 825390976 11873429 508099820 684547721 166104616 200739659 462048674 644586290 696098928 40778788 126814242 66771284 215706562 251607833 804822786 534837129 928455688 385339015 106605605 907738083 100999107 300907124 513359009 859979862 889617234 532319863 171406386 840066129 108047607 424819914 340382890 483705247 418003981 347617613 587171755 250409651 270655603 512794652 703853478 97316824 170154312 903364972 964286194 380601430 81143765 919738452 41887724 361852673 816190887 960287852 699226334 823621960 973822385 19976170 731201035 421896729 308021303 56727947 435573906 811516599 19366057 837785699 957741666 279365256 970005395 439714562 420581477 776554591 331293721 157980552 345748713 857224668 999882413 640877707 836419583 86702266 26857586 392735020 415018680 745209959 813773983 415962778 919241002 217078001 760692920 647050139 164215268 725010113 61113521 834808774 778389163 968157376 531113914 973301633 117678723 142844535 428900284 429346166 684778233 235805926 814168893 209233204 184405632 418517592 33777472 241616247 613708498 380391416 219306647 539328 186177435 400063462 825282654 212786310 21509140 866511071 381286916 410613300 344627524 87666924 870153027 561976394 67988221 35689545 233527911 52980524 633589616 704915817 986280764 868741615 358090805 654258414 80110058 274363985 935467722 688275277 398665487 299607407 599638817 399075735 768865391 101001068 982102315 390896183 463516314 312089763 97962214 954550073 470221478 77131444 141760756 138846771 567773718 289406037 381304673 48512534 739052629 595395207 18043324 380453341 429460165 96375815 455834596 134426260 729119981 474337080 528160982 128678099 554160949 637156029 552042420 265794897 542835689 898775977 455252060 957103069 625243435 189810671 3814973 522521904 728429372 889785379 553227852 165130802 865793624 715684696 565201107 572924203 200455962 589674196 70680677 699993537 728462836 768593518 302230002 690814233 887651340 539157165 295040305 920479634 855614232 694452476 309809336 934833108 940179542 494320654 142670675 851223108 49810497 949878325 184559248 714767273 700382780 501385025 468367532 544527791 531146051 876821651 909739886 731356198 547751950 837932491 943244877 98182386 169200851 419481536 740201498 533601027 526532194 750862765 912417784 618345852 770813077 760043148 534492545 224215597 57375878 678846254 538457407 469349311 331802271 276412141 872869800 349679543 239825564 364544824 402486996 470435091 812827362 781621593 90647540 275536615 296760618 903029926 499367060 614508851 57061207 398196695 21190551 273450384 367969850 359059015 602258331 915547658 89508693 875088814 533662951 292495212 437678526 836647455 962082836 711795549 792682524 684682965 852592961 681779908 709504127 357262796 610286701 173380612 590495590 129644099 290620485 707562279 687474234 325257268 646392593 264891806 476596351 740086842 343297799 283887930 422558339 282432992 717379823 825845322 975871680 932533078 755592602 692209969 113860756 524130328 836495091 621550393 349986288 25136976 804171244 86380463 393047240 25616925 309263944 567212941 230026457 613327495 860532805 993799214 961507940 33359282 778114415 598669057 211828511 55275410 268212859 169028179 900193979 291574439 660324160 501129405 628708204 526290989 586293616 3680494 825735278 907265951 44946448 63350568 772318883 612810138 598781748 965155843 636805534 597039897 254487465 205058282 485205975 661165332 413558240 564742431 410033764 800700849 739620839 803174758 288122276 259741146 302330131 385375367 666019293 352078528 871637365 784439814 16199100 740076222 241934614 529152191 556024756 365384364 539835148 201869849 921339799 479260463 283694223 21631802 50990929 692595138 856221810 217502344 159491062 216707345 541445938 836483707 918326463 156481751 271182989 592143019 271262382 10808327 534432194 202754470 918288463 378425557 711026032 479066857 95923387 990469050 79290790 78820110 916610984 208802180 703365950 937727231 35594528 368677715 331451473 282694996 916621593 598858070 603343312 68686729 846815810 850833273 359683071 153222981 895220811 768785710 489981208 780015223 355179331 877730604 198711503 949445737 661631862 267209048 870388057 320108406 920337154 669046104 265055064 54508158 481818580 774246495 68955117 785318965 139838107 896084208 215895989 307922322 651379929 911890565 995474153 89602313 588692449 679205078 645673389 432605319 62313817 482472558 745648462 606624807 382956721 303873070 214922648 610215934 672064902 783328039 835886012 844463355 956199122 920236337 102096295 971686553 797350575 763277018 210337802 480493526 413425982 626862933 541503781 700429958 771351698 715968347 60202494 28714708 517421684 370030844 202739231 121441013 653870347 812500098 464815241 812893920 601256412 538608718 347933646 331914666 889851214 227285370 857671492 148101943 823016411 513628726 721019776 685132506 303860188 469179051 996923086 507812959 854051443 130315908 344838373 861022774 806976906 927637114 288944739 631549406 696656966 497677990 95043936 147692700 138015706 956384923 555523673 687165707 224303533 506642621 746507595 791984078 398242134 55176514 902715242 237491417 352117110 572102564 364509565 706232414 513585107 825176332 821519490 836790286 296827437 694103694 570906701 532521466 732247986 279781268 489499079 886182003 219917933 651891436 638958755 662624624 513322424 218875831 271685186 241409702 763350106 5465144 332830127 612854284 762415511 211322707 17064157 372174073 327087975 692283537 651972759 862345362 707169 883318656 372562249 107776548 819554794 377226213 159545671 639541172 157471421 808143090 199171285 186440586 390991154 489345767 830869134 958814196 598488446 754058976 528838170 338292162 196113540 726658120 77271829 757953782 766891290 453556349 29565339 142311096 455580744 288540800 782925526 415785834 729232426 674430660 532380084 319302838 328036853 597513205 446975264 921069412 998536497 530045069 980212320 433577896 921008404 736014265 553976285 855417273 315334855 620095051 266328594 609625049 609593779 506910514 50524976 883421683 422377010 495051081 88878807 202560307 778626966 7738330 850494232 771925062 765347680 538197333 112411323 741757766 332700121 614830897 200595361 372229409 124981333 22359061 845616546 810701572 255661908 282868788 283522525 871507227 349626420 151642007 709775246 373951116 385637010 414110710 133509881 405810208 362047577 794932104 445790648 671214456 938779706 580829424 340817524 106981977 906922178 558174091 52553658 893349652 500581816 641817478 979078415 978414188 564821861 437232365 520125907 357712343 465065393 787749312 792688837 251244048 113293327 208962620 189551205 38762276 272999212 401617321 857542010 800798641 998729280 810439283 5886320 88764679 54915610 658714320 26933340 76463772 801575565 714077166 888933557 530006076 497335123 527490782 828928447 809554105 480448250 83449429 433567693 360730687 582566100 416253921 459641459 607966613 57859258 621430986 895262767 456524795 200682812 249889471 360593523 261036137 927844402 86419320 783850897 797992387 848850034 882677446 928613651 350737558 203736813 852600332 522969837 400940040 733790657 689403398 49425841 244801040 671202725 954932848 783934478 424766224 97330779 182998277 516151677 332803219 64627939 644429634 952361449 297848806 29159541 515096479 859317889 251638350 880028153 709527699 672169714 694392261 982539245 25673633 300735935 448820481 698852290 75086784 927150832 249927378 893744010 657078624 758982720 635639139 185238278 809202977 160206176 503481224 379558920 133462904 605495669 169737974 900981367 742502258 543170500 52179679 462519723 911375977 680475174 893434225 31097855 906693218 435265675 426672212 9450524 576142246 911657811 568420534 725486298 821157365 628295759 422815349 487702334 769554849 360489652 938314929 243075491 987876481 238643881 572723513 905378148 325503515 57534021 327117766 258725954 322425780 39667889 132390957 117929000 92244685 334687100 682281351 594968167 11483408 690115686 885094218 157527652 206542245 274113891 787058589 933006170 425251708 890742239 723520785 698324337 375118208 133191871 611524934 489186865 199121462 571188400 388545128 196248246 677886546 823134674 562898530 989472545 705499578 802678879 878652551 452572408 820932801 967812230 826237892 101184839 853535806 808296760 21846028 147848432 899092656 982262918 886535453 925301587 910097728 742272016 461649121 549761614 693922008 40725224 660845222 471898329 287503670 246542007 51215091 791232873 44320246 49402882 930634914 138978360 266973524 873874306 810250406 649900573 170762771 733697504 460170160 287816447 374489690 90829941 622632717 841872707 553271549 276887015 552627199 804016392 842207211 695760424 386449353 673826148 296097613 127211926 225942240 318876994 837701218 376981509 230854254 515992015 713576538 828304 67974304 144766799 954896707 716213851 814759343 510598272 65807063 183447738 947130790 863145482 110901722 740940753 239784882 662745798 369843166 126721337 421795519 841857793 618581033 649883251 607757146 973028524 8274223 162182143 946386244 154510596 470494450 585540414 634291037 126033435 177446253 796805268 393630548 527974334 885920555 314020453 643973980 895321948 350608984 211283778 22126313 923881056 424363573 978277066 465695496 129806644 102486865 782512148 874413001 385954596 440077103 171400322 25260263 230463580 93953636 41781185 341694673 621734284 67446369 796562953 82421201 128156258 987500726 861144598 877391654 110202276 711558122 411788633 997431137 293082925 447944732 532776189 28984680 862220439 564625537 480470638 735254181 459864970 896646667 444263593 949907309 768653922 556423274 235386687 604382517 906323058 647122945 520940746 124036581 348677948 179458200 790642399 87423064 18414762 998103498 156191824 383406345 456293899 136942247 529742784 802872515 765219094 55012721 779790773 409901538 891587977 617218636 562593063 936890719 346963366 682647890 834348373 360829667 975015057 874053160 924653840 742337689 730095653 466754731 118117699 754614140 84696897 48580333 427600631 671593053 219816077 516452741 183948791 520259252 934000227 314293940 426484208 196683793 138115316 432310493 869009587 443682749 505822593 721309062 979310829 780709448 61800232 813355 779232898 906028527 229483809 917305786 173103853 32680884 543933302 260017120 3928880 924921510 379550419 801651267 850268853 895000939 780081371 398920672 931319691 150115664 1555400 713062414 303285118 382148513 986069855 884194492 162583585 612164314 704005290 561397997 337812380 519326087 894792978 355856639 208133616 103985607 837160229 413273758 326269857 321551989 779537623 23660542 681991866 812440478 589352451 695548717 622547848 210383536 220738112 484264511 893868794 422976265 313124317 437283881 957648395 485100108 873830691 872636439 93663237 962552538 441971522 761325344 484235997 814978299 529371728 42623715 252773209 955040347 992753229 641479024 485747778 303331348 595549348 937682218 876439508 957027253 798731437 712218290 14729577 626480846 28987044 535876767 110638843 466870169 490929833 992349058 88396830 606890831 427357472 525596061 841114273 361418316 209805999 920899366 316986102 639927785 516275283 424348377 628465469 443828124 78479382 11230583 839018381 142268362 149915693 507043760 474169229 727839427 875583282 910881258 558151575 330000561 408004910 276059762 829865322 556012695 860957464 729232677 920408156 670826097 949628276 472113373 791771743 111118082 659692165 890977179 810622642 161558908 671237744 54301879 917105144 222944945 846262364 398685301 375292148 625261632 192513416 776985805 722090831 838382147 169204648 30471525 576104571 785888506 491272466 826601024 163905245 633651465 670130837 594172988 370881876 768320183 879369531 353756036 156515660 709491495 562877590 440285503 612395912 648227034 799861826 181314775 122194063 636052725 630031509 525474035 673267460 827147084 280730937 970819610 762715087 187145056 832733335 825346603 330938578 943952868 888637302 399334819 246759506 761767300 755255977 405324307 970844992 632800201 400853874 730391688 942322989 445034421 486171985 267924517 142936418 292572731 472834317 646888877 934654764 753083540 996112539 401920920 900086461 938788716 496867210 97481453 200158817 110922035 429924275 895674945 420823920 163336419 70540402 942206602 664357028 221894368 129940003 800845538 501507258 143423763 166059576 337042973 850476319 303240100 844347137 225954948 708363518 406358928 531724578 63697385 657583429 439583291 416166545 840381915 731207799 664048590 828590977 620355910 371155347 926858566 910935412 253219288 996069240 942418334 637929593 383097802 215935818 663750567 949691647 878917191 462718624 664452963 232655770 517690840 341163206 529717040 179654827 409135544 422764595 224483974 241340859 743454110 283693606 511059590 815170637 256154161 955300793 667707328 48564203 749305145 619352230 478450086 548716172 349101306 448221325 201381903 739888592 435489813 624049281 432769402 237306394 653423252 448905541 137053974 18241872 946169131 505701259 905761977 782105235 122890117 359037518 137750244 256058635 713862953 59378394 331776709 526137858 748376660 78638199 910989684 65101441 537274619 38784939 429439409 242022925 95341185 623598427 972249689 619803491 751894431 871616821 771151046 266148243 526973007 430114942 509712966 865574826 930884725 704850464 476858311 753225514 108569508 282558678 41805656 258971587 170928655 194003892 138616776 139197981 991336075 163322123 943863936 82528689 521896038 827558570 926147202 575376570 488053948 742241759 493410877 723554481 955048360 175942060 206951844 174005682 334923732 46817378 71687644 897439239 233167841 619371752 952661976 663111089 322744970 876186863 44200364 311649694 441283534 278313171 914207016 286713778 823359877 377385236 664647996 711458756 313094238 396035559 460330207 254375573 786712203 918057943 216280633 328096041 233898620 59620745 373654349 168963720 474132828 488396328 876241991 470566477 190818322 908016675 940470764 518752577 876248108 597098373 891537004 60981994 251007991 28440464 148716746 630485567 252047432 135002026 389194287 186691138 872733853 768267546 361285635 498790750 680927475 962322726 133726426 903878849 357986071 528036439 324298740 562727290 830676221 542188262 935401560 834818797 452139288 749342434 91211124 429983757 529763129 249846825 399163874 298314061 546139918 265129224 819348290 902088521 640715476 662519254 769272558 781082941 576796893 545581491 795678551 425701893 642122198 733599630 822878396 135555423 710468723 964467170 636657198 408864987 114747967 458926836 994226 878192854 570047610 869785145 201453544 823188037 191248512 126836697 951153490 137992471 443610025 230320456 975062348 131253918 346066793 443895081 316255782 674654352 955610461 744458741 174051802 616490438 216796296 871985472 151001101 850325053 475037620 803132112 454790223 595958920 607651015 464003055 787616003 801915076 814382667 13999616 617608578 21686870 625036924 429793190 954701491 421693281 609821641 372919670 633218374 77508109 513919731 395833942 484900220 776250842 702241066 616879249 304666554 575711789 57660646 29922739 35368851 741093698 656406854 50350141 904517247 604978849 294926996 795706825 757854774 507486217 76779697 35282205 94775188 676841406 410551139 609477777 430376444 663389730 631756513 872015237 429785912 900552137 11115717 752595282 910621090 102131250 588847109 65479050 118823722 669054469 526377214 232922727 510800818 263575919 536891244 197202348 200177030 12139219 64346046 174440945 163748277 707070792 52994744 732433186 656617472 907118338 818054804 340741004 565441626 91191727 77040915 336076425 543600030 454821894 67166214 15056492 615706571 392352214 841047365 361748389 353364097 424899643 97258367 913162800 921630137 693174785 184497879 518010688 696538050 980575528 541890525 312252183 256093922 770787610 232456283 209940009 362536570 37920332 937092621 145502260 73933570 704237823 314896471 282256925 401336410 157029146 415388550 797829522 140985422 921946105 310315828 799210291 197825109 652488215 63069211 428915892 751838602 292583012 223046153 256962288 905408930 812636646 741894783 308320009 921809820 312579609 526598080 80246652 993646224 566220012 23382823 782134012 735890518 82669895 56645031 995850648 884735467 559762774 803395026 237509351 84607632 174180463 782103339 649115959 982051193 327338598 238004245 594300381 998401168 933308962 590312899 320539013 206880488 479015529 599279592 651030119 146348023 129138773 992115426 16436364 159622187 880977052 375769737 414343274 927663164 619003435 900176341 702908942 128970154 251349415 168814474 380031501 523301276 445987852 241452590 520631295 809845979 872587242 380655032 551084046 73699272 927600403 886443797 293835254 828769505 587868330 542120888 502304278 694986638 8638899 95431247 287590490 752123883 317479506 151945623 110061054 217067322 53247134 988041576 616522326 55790554 433741420 178009321 87377079 439561971 678076712 905377921 136183490 260215402 240933083 907236626 749891195 731975865 178669307 19808599 421104181 899006600 543810661 51763697 291320164 486602523 473157189 519689673 737115910 700756790 557893103 303026134 11465804 634953623 336330537 659496996 761450939 478101253 176306970 601956083 233943525 346106126 752376346 324351154 260855628 460712064 872659974 697353044 295322423 641304817 903925778 837068084 664161840 683377711 627933982 570821653 556468616 345405419 340452888 417383647 71096433 19195513 666928080 998460256 618646893 603539799 798760448 629088520 699406424 781292930 807517982 792574017 759355652 935088434 719740683 970331292 234716650 102868313 192992602 299614738 575458983 932079518 716980067 238897893 180801009 60608057 785698780 911513194 875103155 118027305 858299741 534580616 253410121 410813637 567382854 509925743 259419452 854862781 773354928 420160438 53220174 223644472 811095660 153193348 584403473 488202914 111728936 55405070 488760896 738940541 30702008 383407676 57778886 161441834 250427587 776185305 326640477 891023545 208536627 59000347 176407933 549686118 65865886 414700729 71217236 651949859 920668839 455390131 844466610 100516967 561169902 670659994 546391358 488533559 100815326 721800485 289254475 388450303 64207790 373945096 735336830 835779982 541187356 348611890 746264762 357692455 273436000 254124092 451097687 797823330 445599165 726521359 512826228 818442061 682535813 997169870 26416881 798028870 204081762 372276181 590752019 651278477 976677830 62548012 980621596 618508475 130856441 29569737 660369719 51252022 995026268 665462288 785664256 736533299 777473558 777501149 683613777 18071260 485597074 500691022 336444511 378722223 199744214 2879267 248604354 672845575 752499277 883128532 378937558 144281488 370916040 455655259 763767110 387320953 47924991 974923833 630476712 453218605 829494637 414513663 11160898 102773290 501470012 471563841 199567154 484748018 334615077 495108967 68476873 523539511 961293940 16726150 662103473 425475551 16948148 799078435 658687837 801597496 54536675 422070845 608350597 483690746 615798874 492071441 251840087 79063878 45743481 748150202 702169893 253565633 300804615 764298094 995474079 211952676 539685464 388427917 652420669 966798911 206499243 6100482 259108545 468700421 34037849 371726469 788548276 801321041 850433974 102685479 497601261 750083992 315169232 737705705 228335477 898144136 399621817 459210880 702414290 37023643 600376509 758470058 675068921 256199175 187726141 597875503 86173987 608568261 148595015 563862993 127757454 324431392 833182419 696414438 894299800 635651310 767607570 588570288 813035502 864731658 153339587 391397235 942929988 141894067 963004610 699902243 52626432 986029627 999057037 2864984 11517431 383105858 16593838 903913135 486544200 585880751 283027405 84244236 599691394 833563578 973465888 90734147 959424535 947887344 600131840 198143882 489409261 833677501 553588895 754467289 983670899 340545299 98734342 166726645 883145973 227760063 587548109 737586171 255495872 165270134 867392480 909695292 572663121 258627154 222076806 750389564 191208342 532217808 620849200 25509309 476704137 918791097 300167401 858490552 417716974 107919944 674522704 311236775 818508187 820206398 391324439 211269798 873850608 946384994 678434265 160920630 117171002 565990918 956765846 298678465 536753156 912480025 11380476 311134619 190709192 811288865 968250962 927862989 882809304 343923643 702287557 808996469 191731545 813373085 531242896 505525716 426990971 311193022 673496199 850479784 268202293 761988045 456188227 512978469 36856852 778739985 776509016 804010242 71906839 249817926 527901362 13090326 801669531 873884490 317752150 258135295 717119643 101102220 580036090 865377557 717001575 488041107 304971531 752414543 33149528 29408746 746552104 398533078 538521940 732289249 838246427 514702087 59083816 621031111 326791509 662667523 189519970 138642415 987206170 949903569 588384138 292268386 462643348 875168603 854812493 324745547 278135977 587762115 254761488 437887246 631633644 681345338 819831493 284489879 13363821 410311380 336397989 608416683 587420443 927493786 861563897 371249944 876683601 278206749 474976760 347923489 252532967 129841627 429180405 189295363 342311639 177446861 432211665 317043652 742878295 771855203 894978807 276553134 961626440 439342426 894322525 86271959 485943970 509952750 395847898 957252981 216768833 255981738 584632538 87682350 393944039 137067954 631668111 269485000 31840901 595803663 346409899 929918029 873039183 123726007 550898266 841767655 600375226 795350561 969816125 141655061 58174348 463837670 943442109 105030751 651974278 280223116 312249163 921092930 254356913 477583612 228547391 596630736 708684681 747324870 982473440 998333537 358918123 409795906 545779386 496718389 808066008 149714492 224434343 988433182 878921589 149513895 974052197 452552503 428895785 448080607 873733016 828477483 349096359 617486623 17191144 110778279 679116278 685307103 106396466 90401345 762805988 719690507 340644314 505353052 558515772 110290946 414621058 686060424 990486659 781204045 489438040 392896604 781107007 452433385 407709447 594294502 934277436 182655349 285541020 488011432 144196637 488082939 134440350 152860760 638082946 185374786 505337438 239313606 210873215 564377309 312978124 961366108 12229821 508768545 875717138 691430462 484734130 44785594 680557138 977376790 37751336 890250485 179477443 578446051 711630702 66615865 141372975 272187484 38276042 532806766 321511901 97457692 700625764 711580849 983397739 255754854 234512338 283376546 346988522 682032943 581918620 235052227 710611140 710891413 860475523 610318002 223301220 716949479 867574958 644225202 18621512 534394182 822378993 563142170 178467774 286708068 759700564 38620023 709776666 973590110 958890651 763484816 187478272 288640998 900298021 963413555 592743441 726110289 820074445 135202706 59521901 798841230 729532610 63837834 346390872 862670861 664757933 645572114 670611268 726878322 746768607 428427154 664667003 415409523 108684724 838680554 100878754 67147844 220799766 132711672 757461090 261216005 331677848 804435436 212671991 849395920 414973136 211126048 453141695 794420618 384222010 407726578 210767572 645330280 533613030 145773483 861103139 416173161 499841139 723374265 925942014 348715234 670240067 600059098 774006374 315844836 615090345 126556763 202161077 23393726 504611634 882491894 406796933 513293624 979921904 598451953 403500554 570060717 159635737 333342025 140803442 895586248 462305533 919886836 927076629 156044014 938892414 21480905 773694743 675083140 22525997 988314143 62565886 599098895 534584545 130249605 694831367 22036089 667138730 819974756 173933126 240133097 843522327 102574094 472088813 312492219 308538401 664882762 121079716 403998008 54934730 433247025 319940775 700428391 166271541 175926647 499018330 134983381 866259004 73844714 719029823 864501442 297161216 377634060 69688979 660824564 492371456 907225840 225429961 714365809 974053186 440606056 627480088 644331984 318893996 329399358 642793191 240733203 117709370 352651943 623337013 148424098 904486415 9441162 215001583 746762326 172502031 668146706 249654089 333458001 186350203 309723 48503482 80556409 112317750 46070048 724648596 372309409 644698700 961890862 905001767 758091705 17960732 138859498 289907079 881982419 652378750 70931337 382861131 343489387 894219430 642109816 798191765 361718522 46786172 852510201 283323015 365819306 351851776 725625853 414898421 160174240 987106503 844529317 253756657 484304715 204620736 26594062 782608590 137228633 384036989 573122564 485088917 311315640 311482092 423895137 873250077 772850200 931490164 169260245 539411008 596018345 570125876 518217942 857874624 584463197 765081535 208036640 278381722 158765189 844122379 190781745 844642653 725115632 725040495 371981659 400386588 336705218 493685753 331939420 453928478 219072585 395113901 224208054 155637535 795292931 115021280 769682008 509139553 824999990 883580942 593302539 652940611 502901279 978383348 863332534 136620797 656058422 105409169 92608662 136983954 632445561 332112072 159912325 100406627 391336001 607024348 527022161 979161649 482290145 895804520 106638013 989706687 944661693 890407017 993390204 899240727 869793720 207744027 827043696 603161415 486882538 855822773 701491542 532120415 329032910 334116807 299788066 269011175 265195342 423010561 500328058 561043065 815588410 999577666 57943985 617292224 929460426 141692678 532579786 59615882 862830888 353947893 600751836 186613014 943512665 365241137 133068226 321871103 609827816 494153008 647906241 354056471 994603210 559219103 451656189 445218242 740775440 984014495 19216534 713575448 295339019 877683817 914836602 679087390 156703151 59597078 339771216 769746570 670012428 576443813 336261079 182312126 469693386 233878306 118239614 643987031 839476080 569435639 366190470 983913410 122698879 777250232 491796906 574475692 54687966 369026722 551856987 940882923 145180304 530097934 662959887 464299032 599844812 28774185 244777726 538104962 297748605 178741577 618372659 366157488 197362815 696575098 606964718 754564444 475255756 185579207 880956470 18521589 182764308 333981509 944580333 830475814 105026668 919650831 241384008 152609949 826942326 433042881 474037549 358533221 257579751 497957985 555489288 312211456 715824184 631338567 257863682 574696989 709016935 449155860 338502121 931631582 10106975 276157056 235691416 445513955 625638442 420589830 555886142 907970468 645141427 638095232 108839312 341816036 782368562 188549536 104903813 936560923 732870867 295524250 680803458 567542647 291867080 151173769 373920599 913259352 871276437 984371822 129985551 789184523 417623502 634099048 282533917 582593463 467528317 111831969 356269047 935940408 445194360 453764490 52562040 790132784 176020323 498132429 934003459 761603655 926100025 498158866 977142335 637844282 846644089 821042847 65618104 57630418 766718193 542121646 761795933 525040777 170413966 539192033 365700313 399881081 249287816 487161543 661277627 375149705 692109858 73096013 257148676 606872122 358547140 805997029 688715227 593310452 233715827 458270601 392711469 863529459 692253206 149134223 747087888 279457470 471028157 434949304 633195187 134839436 919033438 912309579 313837338 251839729 798706490 56248720 57189415 972360057 583844120 460235161 911744027 11104597 755711434 183697218 558422289 670187997 772824101 470053990 951598821 53138276 412132272 639098100 323307870 303544729 576901599 662278838 787152531 713014167 999274466 245299701 459844439 514917608 837104707 37516752 32724115 77684563 107968327 512384661 293828925 922147803 803535484 364935205 998271676 299160618 647763708 669398070 754253787 539968456 531960169 313196919 834001348 470934367 514870427 57946202 874983080 307398322 557495013 672887508 398570540 714657521 790050803 757041 640998020 178725462 991577663 339359200 661652872 845916856 837248187 534641948 324096985 911282749 345846477 952089134 960619316 597221133 682506017 508003635 751231627 667616556 474212745 101168432 586383777 467586232 150693964 458743524 464627199 107919414 472734100 746698101 473903695 62059869 952024836 781508475 155361543 563063378 608042225 753583211 466884573 703349972 478699611 977777442 135413849 473893984 896574066 895535888 416293429 142989188 20789245 918872366 81322879 785283025 252050306 649817902 646536495 84412388 68421630 9577023 231116821 95738541 528947503 336131496 213030378 55524881 682627591 712053299 155207845 174612404 157317223 251327550 622623344 517400661 279921893 678128050 645449410 60648524 772618142 444698721 603419942 689060992 966104838 57267109 414773447 299796253 448171949 856530242 405863453 59377472 332683600 364381199 947289105 558307586 273219099 779937512 992684751 688600239 409295918 969230530 171694264 409122995 536532455 740868124 13187467 118034436 492324985 277476535 216234685 364436908 797825149 911780030 919201591 667119077 884800862 410118784 744880920 450123043 705371621 338823920 177140206 701886077 494135943 311441426 719265547 881387327 572721570 740260464 13395082 407323150 723974508 619738835 717247456 106596302 251095419 66999436 95276888 81166171 347433089 938087397 965422296 665011526 692111163 52597994 110645288 223058950 554181798 23657181 458534571 316075530 966930506 719775135 179437472 237397383 274792116 678172063 26703444 147687525 278551361 576017133 180181584 219903214 147195018 651646228 331030303 938449788 608015769 902184139 674620423 165828858 380253089 794388299 643477432 72638476 668517416 96418770 157799347 373510740 85977250 105566145 660220700 836854797 368844101 58758672 889443293 163212333 297471882 128822651 993063190 803788253 551011332 196551534 138741101 367132377 719962207 10819406 443393772 181617140 601747028 280215716 712727286 453780998 659078194 802938399 259120305 173690941 206067937 102951938 715316597 3816163 56177362 741680832 895733768 66008499 336454312 939399557 793879484 248614972 621651766 523216428 100603902 135018439 694893176 955353675 868720180 720147200 653818547 210157067 731411822 185043379 44380333 598343471 848986080 881569936 759036205 87490776 133660074 305541278 22166660 352387122 620004647 12970265 650234104 264565732 44388150 773722054 970634691 977117879 536779269 165985908 150720932 916808435 830229958 753283041 275576894 12536202 568556026 384426107 345473770 811064039 205011124 832539489 15425345 684367546 99033908 562402640 26474539 307341536 49741121 658927917 807599465 344608807 409607624 735792175 590237610 918914945 242943338 433344291 817438932 491207524 895216817 323950496 234146608 966938312 118663075 1330476 919367056 966604533 856767822 370947720 867257379 881843434 657161538 155325097 184197508 621481261 455503914 971126450 696020278 889238312 983403818 485641881 18878826 892643090 388777383 354826923 852996134 145481690 445680604 407791060 735202816 225384752 995805629 251964417 141214818 336419739 331807293 186704383 704881679 101945421 490646836 980799895 815676924 382579055 579126333 945101816 979716574 104496128 200876566 805273820 973764831 468212264 86078910 388932439 204336322 695405817 618692018 62383839 189118242 288655209 113849941 304976974 525978857 327057291 374711813 838801873 128330852 950821450 640486769 652096786 862935231 46871724 256068065 357706686 762840146 358920200 236808211 131297417 168597004 419856439 363972042 324266947 460159035 37128280 851390282 173929594 974796465 400295387 907176857 535169762 308996075 780124731 813705117 594468636 751088852 693787029 401431784 455975546 479774848 650890339 593944080 66393911 753397213 944985555 346379308 103621269 505353641 826401530 147557376 95997507 873965242 708862882 891692941 772924554 857635847 506407667 813215055 916971181 216110670 720718395 203232159 23797626 861938935 857170675 805610328 858443786 367949029 320435687 587949728 728573090 502451236 219346293 379560951 535055358 163469701 104293326 593465037 194963336 27254033 425812567 878134828 336062133 925566058 331228810 931529630 536957863 388001496 958606150 325532524 460680822 585792019 678856125 27870609 422570646 22533094 70856646 573752124 144317031 635388033 981688104 78518607 863682493 914761333 345754023 28854917 408241904 806055876 887162247 815505586 199470692 910983194 243765807 815668633 960743220 857929869 399731149 438727490 157109565 313372788 907456494 334660144 666307347 342415066 522210686 56518656 323548957 558913003 730929486 341231736 393828698 779077246 865175275 304752311 588268745 94431770 686952706 630588095 146795797 535236387 839437927 24175832 595499638 468605850 731181855 830112495 101470655 891598046 633154191 527666908 346703357 522973417 940787973 126876616 896374345 469708680 669023374 163435251 515361729 876040803 791780708 446095085 992927933 440839409 894968986 917192636 443423053 724630136 260261669 229609562 307667199 668739383 121375836 966151618 488069337 111257101 634532566 509490034 628272557 653169269 814286786 793839388 521295969 100082066 551071084 260976139 754539395 96876588 898299630 715788795 827681358 889132513 672899340 884364755 22773396 567926239 940983615 210112151 677550919 195790731 952014806 733043739 417652354 691085412 956955715 545194569 545235711 368471650 78502346 883950233 95644328 913533821 869035039 74775499 63405568 291947030 379843630 603460715 482236306 530149227 754240147 97334898 97889378 288926954 104180652 433172777 994247202 451658981 603809188 18785326 959850559 366940166 144280584 311075961 293198321 464230058 377123956 908301343 224246091 722640227 309922429 354901152 230663445 252948432 409297128 859615928 893826223 299448581 981681802 295848541 931671379 733667823 61641613 677941209 710639723 588106098 749821590 919473794 859356773 307862038 528032498 259795081 170861811 109676927 903739987 348903560 614918371 775346505 884199006 278334184 206638597 671296452 780146027 923279551 127359638 778242020 342891016 114896957 275960587 707680209 978649729 191238581 968575163 813966074 309142141 976676026 863983838 292291200 655226248 539683464 263992817 225480325 547592503 360069209 765134020 328992156 558191792 104983219 238441356 788996976 387140156 867632052 156918522 957675456 534335584 833738884 226609979 937768974 462073407 591032417 794988097 324315950 262412623 311807087 593438444 257693038 560894624 619329474 603382275 280349593 522996691 467056433 203006814 735822185 754074718 64445983 851775958 858010582 21402014 738031677 921791776 679674522 746433528 716990025 388964105 507597950 505113818 831228461 721870377 119371299 706357014 775568840 469905012 781252287 961998547 369210357 146567593 199736855 368632383 1449658 260923842 987137956 385349323 834421039 133685377 695787659 622760065 563939422 134603352 910987823 888490996 612994164 385238535 94268489 510968445 911578242 881514719 770376143 870692645 173522459 814818747 14411597 578721132 295172957 519672018 240859233 148480966 523630044 303204373 361141709 840168233 641262988 96233973 919010014 150524989 900630186 546085110 672758150 586869212 926157044 58526059 150893750 800580206 146952983 405183698 714006272 703003487 386420913 246527223 263345290 504546047 306621623 62710312 326458164 429823106 365943080 949614534 795945527 201106443 42766550 25217067 50518336 737047656 595271793 815441778 469558971 253877532 92054169 35137205 606731369 796740090 729086245 655925208 680847951 7758534 868637311 870025597 504582190 927215498 301387813 575346732 877195249 636183984 43551001 456795934 180483854 336848284 59014456 59998564 455568712 559639749 287443297 680738146 406102847 954115139 28383622 857114396 695465422 847914840 841517947 689198852 308236149 551613703 162017175 192457751 591659933 542495939 911532801 471833959 645952875 915985150 540284504 345634943 163248421 29807578 534453036 685119572 81661957 496149511 701780603 726976887 12106834 800819298 332619681 568182756 380156861 683972898 659928972 36472382 207314096 685554135 241058672 379491519 945885528 155372766 883809041 342252632 975474306 716621599 962717684 463327940 792084304 220292228 992308194 985587007 536718578 889754316 756877658 456920192 31941497 737664433 379451647 329599053 41682098 503700175 237640137 583449338 173893352 424669580 254475692 39896015 581526282 849096632 453057584 803295080 771476044 41205629 671293067 384808007 623478165 102750590 126508311 211489106 263302850 851349142 680571076 517702443 544353236 240496693 559839876 466978224 780239876 881885577 57073631 989981138 941316542 289472046 623442901 350567422 694544324 322808908 839978210 77109358 830810298 83918728 586134337 434657504 415909662 646401661 368940866 403673021 661594606 195482795 928316263 412511250 956062583 646199860 131025556 618845904 278454786 75241238 17563841 377200382 4405356 847416550 430323711 192693431 215792231 928036284 802804953 268181674 633203976 753173789 764364074 593088588 854133744 65574460 47390875 965321955 256179034 768271864 421103346 337885513 744652960 580303490 286989977 952904088 545140571 700579758 729147484 333796749 330406872 72328020 375713062 737290448 472618312 671733501 204535843 405256288 197205785 455157356 291711742 72387064 798146858 741655254 557294569 203794209 736097951 533452467 941936772 260612929 780323326 793963682 281636379 350438986 176601233 69313284 822184086 46654941 975286717 631691836 42348392 863293118 870860202 29349233 698328649 919641691 251112223 427690966 866145890 936144002 436741906 39889361 85002484 23893843 328957889 307624718 503474210 445982566 746313516 527718631 963432566 676220795 560151453 972964280 694243843 412535244 510844406 218458358 817691650 957961705 202891616 334545323 51649847 666587723 206168908 860884389 903643622 583121766 169710347 504870818 457505436 549917265 104403478 45956456 223120424 310095734 169430385 765946020 757142307 388994943 379595046 512174096 370108578 342756460 652102063 657615778 280159172 414612828 436256486 113897504 324907491 152505736 872783464 814617646 305345159 792026554 900464138 351686619 906603635 333504862 57306873 583894544 436391852 990079647 585292267 550018144 252047512 300276061 762086163 613109233 510538125 907167691 109358120 468029043 584215025 478510120 734874548 321717735 116916391 164000320 197827301 780101560 656176521 537427431 284062906 747495753 119017996 496735406 358692614 735933091 419462570 38570274 929389042 242336172 238606613 249720295 100450447 286322421 9731840 490047097 872513745 349159592 832753892 608340945 186166373 846885694 347547983 189725110 291018242 469121571 41421216 733288666 613509926 375058941 622649171 409641165 947576814 571963904 25250324 223315561 914311566 712182394 471791505 756998110 732261825 771579617 645843449 650996402 694113598 783970843 55392698 766878654 833098713 455529696 73437317 341752642 122480453 234544650 116492420 824457007 142506685 909488380 373504172 223446970 326726465 224425639 343424749 753354406 278734371 543667803 711294060 772046507 410286335 20744261 388205395 187208781 343794468 903868564 972098198 960237881 868149232 822878242 609662022 810131988 730147528 139105253 144087388 137625136 850274207 3294382 805438189 360260548 157821874 443364579 528631873 583844130 25626354 586519272 688072072 435337127 99917443 822404528 459328953 116842175 624384686 995121145 156828273 927999759 656014312 840643741 690932411 505063326 599166654 906021238 684208564 553635426 620404871 613312773 851647626 792724892 652787647 706931069 946071200 713843401 510668403 104090600 116790739 636511566 863202262 361770009 79192844 961597424 339165610 479954832 801440985 71524128 833020606 318345039 799585752 580864017 308844174 531941102 729156449 892226676 148198897 210437183 566372062 114513206 660251070 816114996 223403092 271476792 502696896 128438154 247664167 422805187 575534132 251401491 501698384 233540252 259415991 863317085 390314674 459944148 108903394 771773285 345927608 572809202 568695470 646903074 960292404 189543472 253747299 106713296 610415728 865176046 734522772 959779213 484885094 719043044 274705262 938274177 958140608 546239631 127285947 11029710 579110657 32856523 662105183 353391079 597785430 78928163 93829086 1390652 728209178 225044675 209118266 341937356 474061817 995437129 88074189 638206249 38130739 719400160 293482581 341716278 248436846 954092761 984967060 973220838 413396794 899489825 237726124 450612159 271269295 544452058 146784704 439270528 780691959 339010609 602021528 462253132 478471448 331966690 775605431 956044639 642135195 912144529 783572179 441147226 932345191 501466511 568430003 752554047 70465136 120939471 751090336 299322600 878212983 535176233 332102024 310984942 629939118 577519580 544818806 530741650 150029781 977702458 949123626 193779367 500924096 100339142 783489862 756327028 390887239 289793424 779311546 967864234 22877914 199039369 108638500 690630860 926407138 230136911 213054285 898308202 243167769 116828019 391991339 772155784 466716364 458820770 579585445 110229892 190893398 585279540 95450714 166064875 681449742 340161542 72051141 955895294 536368520 554081181 249392781 958463299 648992409 58001337 250798857 124346871 973904242 997952908 370327791 755398538 85094849 780916128 222327261 756996322 798488706 298385471 717258661 733090847 409339701 375632543 759401370 63993305 950709560 693811706 622037135 84441946 747201238 677877182 14374422 151971668 442754922 73032118 29695106 573251192 926643290 510343271 539196141 911078806 899102817 649926270 179163578 224558277 580436000 439028582 64333261 337766129 785341253 651837814 312057914 503443224 769164406 136156216 921748382 662058199 705640365 677320097 924608478 598507750 521670665 527903326 425241753 539038383 37052187 286631240 956941548 199543450 808898072 574594657 623683233 631880304 400276120 98824145 741411732 729882143 913172489 14273247 620537171 849687860 334946833 814934 116212668 290014480 318600434 70003493 513537366 335362820 789239406 559533263 821595033 977868777 14041563 460738158 827502006 834063193 310276428 52136063 342890271 826697104 300641779 569772866 35638026 252153502 876696869 626204992 672202602 130125606 278278200 231174637 783662778 385346130 347118599 82670721 160706598 818715499 407127771 458509257 663769293 416823252 918937513 77339158 986178626 506569674 196600960 801144934 847415465 187120261 374290588 359551664 295761177 641950119 381020046 597108205 468984638 674528836 399938603 726434362 132002744 991769496 245935132 986415028 396499965 276061631 992805873 246394172 744676690 622965868 899584111 434812096 715220478 318506021 254374081 235210010 769218147 531180411 122508030 316326575 759797796 421276396 389895052 769281926 335892065 909031446 443137338 767428948 197938005 843087291 49629596 572149691 47321034 926261707 747567555 849215279 254143522 400239490 332866564 165592510 330935813 403209536 795311913 521510937 208075067 734407186 87686883 608732294 632835248 346265050 659885090 571762222 238902745 813502625 52723445 686904021 41589685 960608959 368648387 357907819 784537597 178691339 388273651 741835176 167746471 328260719 971531535 659806609 488733231 758024712 684168357 4487029 271089448 318788976 29198840 153179904 33991581 926891593 814212521 848784631 751547236 444739231 702277804 242389656 577345278 797696342 890085767 180638719 843400860 373889435 770430693 922365969 493559670 110147170 563944843 30169836 37319501 833694988 162386669 532452356 4031553 911186199 903827029 781306702 781953240 41668876 944380599 523226051 792647777 914646914 38974287 393124251 339896925 385328932 783492002 259111287 622410294 383685388 385267892 206507376 875903589 390059611 757663789 340343821 283052575 600797613 554210203 789072876 128629725 971499397 122652196 635812984 456569916 165799641 776188610 401471798 648873564 268196820 395213629 765882288 332549393 154736492 250245257 263564350 826875756 903886084 979095328 745094727 887203103 674466735 435812146 128309390 147756495 592526046 362856821 977593962 211719689 411413859 897923567 885825086 66449426 913042194 343869827 384808919 204795300 452500998 613175066 541436186 241922632 315837177 554626229 981911197 211864913 813478174 557944175 393462020 138242455 74422126 472033569 172375277 915345758 624103530 918097841 927755270 883804726 968425784 951802810 284374118 828055310 880565645 510826320 259415723 708292673 255065437 143021133 815875681 365754767 426801975 139931693 924383629 324930291 667280973 86004631 881442405 598577272 512738791 978474182 744023913 696341169 95911241 95734063 101864257 272602201 989567140 176087343 157092398 259839547 345539183 507257239 592749467 408107780 634813714 347944580 988178499 59430402 855991684 942183798 661956968 347144682 34904366 151580742 730578094 319190239 238287496 466657100 990611387 671042979 84129864 556835145 832549877 873965165 199541225 252923422 823951116 911582859 871322255 84331641 78305315 678667980 719387817 828626097 573885199 332318606 723946832 256005169 528110104 196836886 344662578 96991345 606472245 250645310 979680290 586661544 647148904 88969741 120849512 933205243 646324625 630751889 828069085 538839526 645680665 709681768 733007615 585870692 538361304 753612918 574373 650870791 708056223 187816735 329056293 301230593 397541111 112452638 249797728 38428724 174817207 624712750 629912861 571473750 283828508 260009611 876564200 173670326 241979053 165242097 485556614 37335197 8031474 47027693 245270825 730150436 681224535 212886174 817831110 665555797 625254368 752062185 309383022 677823787 281734098 494479047 193213035 708368465 57211871 140625008 360262760 275956095 611876781 767106112 936008694 14967984 113567742 607649780 593813916 447206291 980828344 275348810 644876962 826259648 74878432 136220613 134472247 942301496 261917221 488154510 979072170 354921264 498439879 61867067 680095459 811950440 986179801 949999446 805494406 370291674 824704234 416492250 628685288 666084981 415422097 738272688 276988868 529998026 135237246 679306771 793768522 764521906 844522385 52785036 987837532 143122611 959010100 278909792 845892340 364709116 383848068 4466218 295544384 637594230 956531538 590532047 491590821 518210635 247301090 311451631 67219586 407441812 613970410 286907849 426855661 962679744 558291704 572943645 799362055 988379287 700152272 931961035 10571594 781319494 742660549 258093531 320043535 502155342 939566926 410742709 386878271 9975461 850706688 736238286 830209023 636377101 812437800 567613835 734273572 864090954 130601529 517926196 691611364 43340412 152589627 157833537 40730666 449166855 326729466 196538961 44673118 112162326 525514482 10759950 929542760 279120972 556426093 509044024 573064931 423343280 953168868 275105793 114951911 567932314 319630096 855064196 336441283 744114082 986642622 789391482 255085126 326705229 840761342 950454595 120276208 992090816 588409610 84306331 609004150 285940800 378815205 706895096 388953125 435367389 559778458 30002957 142496924 194267107 297637697 281086298 547975713 963754815 914211902 96504772 727160606 783363344 509607791 351772808 276086066 797525839 547588520 524179003 796274534 223834503 121182360 112314591 905602845 806394797 778783332 968607997 501093827 926343936 694423576 386323288 636846309 311158490 988266566 48682376 955140605 128216246 512553542 566947853 571116461 588482095 781231719 152758352 832345494 151892936 312538827 402535563 345518737 734744137 363732217 196757638 140350175 302371161 827528480 146896706 80901767 390585049 409093104 972168635 542306536 214687061 412978700 899606582 741549137 151732232 402872589 972038437 668973170 924681620 262503211 216019611 332642580 415988480 656981269 376483886 136902579 29736617 787014366 197188485 114936839 368625248 51837325 22676065 353207291 818049055 409067438 771861689 653501755 666600108 910482018 434644765 960104523 465786400 101040468 144570047 780827631 62728382 223459618 356785240 76092085 508518459 528829828 376355990 244758440 372789885 974414665 358877291 874119669 491773305 480665700 306196093 791045325 585061263 701205919 916573405 544718236 902660058 501229825 916090489 543929369 131855080 813455320 576682438 966715246 382263808 607914003 23412037 621978927 20929191 54297174 937532170 258903930 728236869 979702092 320905234 686590721 917130678 255301780 196854883 988308941 209975722 435386555 321541202 490913378 479824765 948058728 477341706 369293081 242444219 956447336 53744058 817392706 509970053 581584808 918283270 542449173 571081541 137139567 187385790 463137818 511910381 446762484 248136309 407688569 813062066 547872005 961337171 959525632 924903700 339055309 967607579 912231652 773586679 384353564 365957951 482150875 688425342 675810701 38340957 944407844 782597542 365150184 252414909 984290011 76064717 768982935 104272821 953043558 281749156 370911351 614516830 807902392 802185632 40960733 464186089 857105174 319258317 712638554 885467463 394836486 682737347 41888763 7628445 4185532 796149122 704632808 81424340 19484859 842696916 492898198 550147351 155240447 997553041 588350063 496779988 122473954 770538227 883359070 353004787 38416977 308875293 317284883 183873776 762294162 521231379 24285758 60915565 433815441 200100098 750015081 811277172 103339212 700626705 822152548 568201760 854703535 887270147 487970375 478685168 284286986 361601505 791805135 650269320 934598175 175214833 670255144 679763573 630529463 176816754 107623385 666071328 802213772 229554070 46631972 100910783 663689688 766639773 974753853 799571351 438999470 313671398 447771865 159053682 778973832 326559081 816875375 798221614 873700566 100334577 685828232 139783462 918367214 450099560 606058543 677764577 495235459 666613404 324017001 288710269 258561539 136420201 892203442 544915345 271961144 93003931 796625448 804371493 661617690 116977708 628432257 490657785 228044590 175905456 660324640 443077214 886030960 217765356 91812096 965741509 959246973 923621236 946668046 912280290 644125489 983334550 444596963 735426941 903455196 140207012 797851397 511880961 302772151 308387369 212591223 810606040 810274834 195862908 393696952 769194904 749832819 710079551 362828772 697593717 268162388 393490389 329425367 561325765 901689102 551719131 460056741 838435501 970535609 953078708 941197435 142281166 596040766 91867076 765142356 115260602 429137345 660888658 51189255 983641740 678297556 422802527 828533326 330550775 564203638 879271287 441965280 238639740 709752410 411766748 976291555 919018423 818394723 576964375 930312834 247590001 34578338 67043772 328785066 304223124 813506617 480311329 961687577 959633098 841285004 608747036 672344624 484449308 863861544 382753898 308390112 237063752 440380403 225204797 561377011 181611873 815948103 537253737 188471560 297693563 718656433 125288104 9086882 368548122 362790884 125161136 825395628 64987670 48865139 234087858 55831384 431646121 232512297 519424618 347008288 298917353 706636250 198334463 271230267 278439393 852069290 666894844 259313893 959288885 884585541 129483004 667572206 736327982 769598401 455956987 233974578 534483880 789040179 291365164 993851435 453638793 467059338 486412842 494245999 343513515 997008944 857363865 207194575 670786730 375306599 351145554 853334197 557374481 117730691 251162122 707796377 377262783 951831421 758883781 173723788 100873671 414315339 476627843 874606471 821414514 440169067 186998385 218042151 99958772 847998168 159349451 712251053 169708331 582691090 478665742 702177621 173905529 645934657 831223426 49241650 710907668 634242475 782301500 89046148 143271404 445284040 145471369 321070459 682508043 800567974 998923430 595931075 798687931 371622712 97687641 76123816 603386562 413342994 665157159 978041444 423256172 237152681 458719849 405631203 521991674 399867038 625379112 901198109 629528169 435567479 114558672 755133306 595042740 66801880 245652918 326094664 936469161 976351899 37421550 801614646 299726820 774661016 501328208 989667550 536211313 713101598 766002564 169611687 530840987 684244699 329434640 775804458 496448347 351665724 658064803 338912898 955655530 241432444 747139430 552858977 686799296 585237156 712090642 805881008 243188180 397791551 952741147 437304562 18223207 342648371 661242284 969066924 879496683 995595691 354265548 800603474 172990480 595020811 648039196 264048053 65325162 514369371 32853505 772729443 505775845 285503134 837879544 939760317 785927200 69085394 839216439 73161847 606191370 987829615 321533115 773590244 266928155 871891963 812345492 483166681 470622231 401049838 987306368 71627225 650674491 561027503 929964405 726400959 864390906 319054599 440557231 380600504 432426787 333021517 818521322 491546336 618227888 695898679 585883680 841368471 859804114 22488202 260708099 501513743 599316602 776102906 206787286 391449721 966459653 371239956 398190479 262550868 258374294 739943127 766153590 792725458 67919899 188652858 383846471 638939032 859899203 352484234 825200664 760214050 990675465 708973922 444591106 495347003 94646865 214571543 634473515 823649940 296625181 435713976 408318461 700466138 725288689 123339720 395044140 687144846 173857324 362378304 623461134 721926844 599021202 673215368 748110630 8248695 39759924 684801847 609671674 20578520 976569348 249546189 147336492 237473745 97054752 308609768 603842043 597947128 641461902 233834207 896163930 109726030 843813209 794278929 878679038 98792231 946989692 920979154 974645082 702758218 63922516 688781382 868362138 124614244 533061169 54376950 693668870 715203585 204707265 706687487 999390093 379361109 826027879 873762587 547320741 16562687 299026612 443041123 196655922 889475065 897358122 400992546 739932268 384145834 621211973 872448008 401667657 500722614 265137319 420550967 960479691 454188636 366835070 998811261 273021173 490420918 120916928 226894391 819701150 673805230 303314866 746352759 721962203 222611981 661386155 807827246 722117588 75358599 14183080 341870345 393900505 919634256 645062140 248046326 455318524 546972315 640022629 509725317 76245443 203968818 170830412 979937042 748675986 304868091 866067942 745805595 617586298 438090556 420938572 48210881 733931539 980836663 661883015 848206851 160007999 713888179 947333097 238540898 203235233 708661396 365264555 115955169 789420019 317649565 522079878 948468223 883855853 883085615 716009999 685402311 480315145 432338164 711093910 255581403 492164150 55131762 162729938 331602204 211119372 524106317 688776653 568652680 842108902 287405833 450727847 577288238 568740096 346654282 671911550 491470935 188539028 502394100 808021364 239172932 604845064 863628012 485465064 659416588 970921198 440975666 553914803 723578279 469147478 654559778 37271197 625735292 993340446 797006544 260050499 416573584 973681355 660749700 244510901 449119782 515321556 361493023 587454077 386716259 858155242 727203314 565779824 623574160 52771123 885751729 785608277 897200069 743105586 529976860 97447881 837905890 702100275 903958232 698041968 799618881 155277621 762268108 793010753 324718794 151371120 189470406 845664267 2364447 980252948 285611446 943062974 719231430 852980503 972575249 576428321 533117232 417188628 465468833 293241783 564706172 351486533 224405918 33361004 171249063 745914991 615591735 508695677 819968369 979848728 618004313 532029478 371306841 936447359 761684950 454541113 738893917 17271595 211527773 997019630 959572894 479220138 451752719 598653357 622262034 905907090 733823850 797604274 572866061 1716278 709234056 307922385 878804058 982590651 448799373 182970731 570625929 64890066 269512369 182415518 189758068 92779339 148062614 711921375 971400657 20133585 166922846 748332267 410000009 923694324 615685010 471078113 82646485 102424831 646376719 282879127 96364642 591831556 599562758 843588688 63379461 73578498 58827897 551600691 789931310 529385102 130299780 634155127 83232759 965403252 419752576 373702921 404860363 474096547 726514260 560653372 794185515 961310415 945861959 737814646 347477818 813181170 51549977 892088118 184825333 873637070 119632801 954795692 283351772 202378401 829410843 111783089 872883572 634591773 792209836 867874946 457438712 310858209 46775737 187254983 238754644 38953266 757796179 590900706 798649816 883057847 28572274 449961361 200714322 83294619 80229311 450508264 238768887 525351104 65639708 199459195 851090282 637169235 685034795 178814894 446013027 36574662 955595629 236883168 487561987 455027440 991350952 227897592 617797624 556737201 342587408 290423586 316096104 746922379 845747464 254252201 800690056 36346016 216218423 631654659 564864359 869845984 414369047 736366236 372361821 108308099 835492568 576541845 569566750 856554668 405162542 229243770 349388300 280789969 280131057 769433373 295121681 816496914 956342606 870325627 408526218 671556245 838578495 719931270 673031765 387776943 460704494 52764983 18858704 719615918 198901974 417801817 763323686 884150036 445290277 717784160 851131110 476016376 229545830 62473825 163804908 91081092 376531815 913254835 85012630 305582617 318260365 225145822 741643211 150463850 906151819 901734531 242495184 442971049 584269018 880792977 777538695 302254714 8026994 320083118 329846980 339590556 445828162 807407511 8145892 778510175 672101777 963430471 205875377 934556952 37731727 27617611 395823088 151407407 408613480 121356783 397851085 754952827 510166302 79103768 432938086 874280045 6579842 30108325 247550537 955541408 683993848 720793487 828391634 162182918 596044386 3687948 902082820 114205061 241530840 98876651 11008675 786583257 625428809 373087327 152643972 307459813 222503338 849319288 684137782 460587104 536448482 625047486 213752698 136533062 360857650 428825923 926718244 429592701 123286528 403159769 569295184 33480562 979561827 461907423 766442 592908097 6456143 894034328 569160978 542863368 554916619 501716317 435121075 261585879 151637462 675110901 429046610 260641886 29012125 757094391 418671670 218951862 917268293 471868082 241446306 806313519 103099123 193072874 697349004 291990143 546863349 636680832 308360276 548503955 637873875 642542952 179784635 209203899 509811521 333233549 303829524 850047192 376356067 820941372 710657645 943991108 673221014 101623949 325030025 531360967 289460605 680323087 350101821 872950632 412903516 703856385 262794395 493448787 362891922 990631926 701368456 630662936 638105532 640816478 444166930 831202149 486565550 926878128 423799034 611917838 90836601 8798948 597472171 695446512 777955495 984483600 318210750 111989418 964004956 195922881 117586567 882350252 954675867 356628594 309998457 310408145 408140102 240035699 784008688 698736741 73407969 244289838 105143914 660758670 244094836 378998119 382074393 201659683 563084451 641573526 550542986 530185411 211372883 722326877 687490406 66547738 222706985 123136423 207493500 17051943 256283502 657538231 451395814 87793512 686157693 480927863 712830305 134598790 512390800 403656479 762982166 252199610 26259448 873590290 720331587 392404667 317410938 323869756 915308268 381216591 119261157 619386256 20244329 899431585 222543067 362769280 6227368 772520071 49849791 442176660 883180050 717643949 703447465 918730343 455672669 375691707 163011927 302570340 926782568 786685443 780455141 701715407 709044333 116157552 500413238 495661438 296104341 986808793 35860518 307379505 867855092 337324125 399653377 614904990 493200792 899610430 613098190 468794645 459622956 588050172 768335295 991188843 875184996 920167476 745680982 121521808 435270458 439260599 465124354 805815629 877213152 602880899 213082853 361730591 511940115 120838898 492045921 306132261 15736860 784180024 757469154 452088803 995328504 286305692 625551262 399425940 554137510 802963770 613084547 700264695 213232903 364960039 240125348 345661241 197751485 375828517 847844308 749082720 807064944 145953228 94299224 890485634 919285007 963089801 165835410 213519643 234665266 920808857 615078759 619618222 488888657 890135871 634889335 712269454 92697233 314618621 552534774 958027143 442698149 330661108 969610098 964032858 247640968 701886360 160092146 57916024 648753995 970053890 975517367 926760463 86232495 150214888 95723727 713311712 498598470 882690607 306540438 675085769 637658155 509293564 559883619 45056642 583279091 141586904 96490485 575992425 525960154 7053626 139405350 592440400 526523276 828259946 48700517 476441691 288475007 622536995 89961982 545214086 133404398 352724446 62480919 682332592 857316490 81236146 485738346 431101203 175374450 8829667 626236996 426304763 701568320 738947178 269668925 477833983 241297950 502194530 533987578 367862187 298851357 806283779 88316518 243350644 244157887 980932753 72810127 724144834 169466704 193814454 951334728 359427517 704878671 830543950 378204783 614886431 161811659 485717039 834959818 497356785 44256184 797940514 523565896 548477414 445334742 311366480 770604099 304897709 588961623 124424811 505063564 536313793 596063104 755081901 37624989 528265928 436069625 698533595 369168900 827492588 55715776 633265473 126656523 45648248 216446581 608076430 4689067 841534301 606052840 97092045 461771978 254475088 240990387 916688587 670943138 832536045 952205543 999034340 485084711 523688040 482976833 159096887 233899916 474194887 715257847 46521686 514758849 326366391 598704807 410489110 935705058 351496336 744954113 183279982 946018521 554065460 436604290 29296762 45150170 376110663 465854787 625905530 321828878 610186650 928141223 990013293 455351533 720335468 230316305 567782884 41476034 587765264 869169357 921975605 870498363 200711615 802450122 841481885 109357439 980704074 246294081 394389330 860546820 278919148 72365150 899410253 699978903 307019539 895430062 698609574 906005274 556480794 811176683 923782479 402777804 605892177 794318848 314481531 520379298 738459324 612909876 575631157 118222894 969337360 22244075 662550785 560224323 62765911 555193402 162785073 782652361 267038002 662528583 739272647 261402566 949297085 871767992 189183064 669393500 125516377 315223202 38249320 968455210 212704166 260176891 903783673 352087076 121036570 701195464 773714195 439994267 790333316 675094396 929613201 323275132 456390196 582923352 180444325 330886463 920323560 701254044 984522181 231044423 521271245 773029517 538009973 273534900 45933533 454736904 555971918 262467931 799476647 157279151 52987190 94767664 896443679 999632135 672800969 116127238 312229451 893166376 5158395 530166162 154290305 455245178 969719969 530265527 574196210 901132032 542967937 766695269 964875476 56696548 965000064 920389572 484395189 277590380 664999991 909218407 818609715 693947055 385074530 657837094 585551963 489601286 733254869 112937257 147873711 639785200 405937634 807080966 145376797 377465194 850514913 176417548 913681483 149579154 99993522 980367455 864234596 306587080 391252416 875894581 438051245 677001690 75968141 902082291 888522536 103407408 603783454 97783991 800369507 124622349 37786527 762668231 70731396 927390642 202138539 105872697 493555451 262718824 411958873 805969582 18157328 474961566 750123347 361832684 608183272 468592956 536129 325501094 359826581 644160474 206167049 153814604 337486320 362635575 509510838 21978972 149553232 321456511 549642791 594553142 771160343 568343094 131311575 536294919 669400943 168012089 743563719 555997849 703641976 315999893 58881113 65979400 3876092 836531638 492089562 649974660 361812251 122000218 338994420 584723219 913910028 877675286 2546510 158736636 450598487 2950212 738640226 870040517 890188783 53527451 758716610 852871622 441712288 430030730 917747277 944465257 215184843 546808956 740303937 689571223 462977724 664121324 685353904 434808049 228528759 91158023 342388911 849391948 758271022 689276666 485821461 689781388 700552065 420866153 727481267 635757604 767142806 200280428 119335227 139457669 98143855 102656021 539123140 341657165 234777963 631355433 623099532 679041800 670434569 500283995 116982719 790516545 616117790 406858402 840640049 33305725 529261774 715952579 789937443 315959571 599861932 371572665 958772316 760859299 57520494 649010559 771385837 528641950 631356960 278840201 788283808 294034581 325348486 90511563 358634811 760306663 387207911 995460839 90668891 838377139 757655213 263604445 746403480 432482546 854682056 917061426 681855352 861134850 845181429 525751722 132082694 252203288 865358664 942764785 390854906 835475108 752522198 682779671 12361085 480438352 244270764 585198240 769899254 221628291 380447849 127822111 361166896 919721703 373666049 160189694 63381341 277250180 693478462 233542035 912328493 736723192 631601296 704863794 797708447 451457325 842120155 589533081 236770811 907465117 551246196 295042418 982638916 383355229 224299431 485995960 319149546 681774960 948513272 992072577 605333904 796970398 88389661 955960209 132177324 51637201 294205337 780489790 882533233 65600879 924759511 332814901 956830494 194221630 72451046 678162054 705935315 398788851 977301444 819132305 860547212 201476296 443899534 938005038 859714476 702274027 864758955 298216835 913449095 335034585 618582187 34506304 529340705 135864578 64464226 88004090 114395061 491008557 259714764 497008532 580567121 920120160 852103453 171549429 181554468 377836808 966132646 58312056 381506843 926125709 891970162 894011072 115054276 213551062 477178486 38981475 274606720 962813145 209205590 834815288 921419142 219692060 98631113 922163420 864323885 91098315 902035704 616232051 970102299 779741326 442709563 340030556 243331807 565322378 317711552 257845005 390101218 439078247 305386152 813580888 804994664 686417421 489571493 72782817 751498030 410514094 77015469 549550925 961637964 679929591 975185464 760840201 980839600 650206162 602634729 457800605 280230470 418975146 225657522 37726155 943906082 944786603 697290122 417400758 48542203 255401556 903464849 342575062 644012570 906118615 720906506 814059020 568578198 227294814 328761766 882486818 648748903 915107656 960214293 326670480 406213134 88859238 540843678 126960571 130992704 434017718 484245380 350423595 290659615 643852164 851205547 972517123 969864486 763453786 328660304 370473092 207822121 229338837 156974523 577760231 363651309 200788020 530744565 118105500 290206014 36505825 575562682 997501686 192923305 143182736 980819091 802483475 606713742 78437085 227085359 342668834 979030511 539969246 779940304 4026817 110524597 95466700 859382871 68554767 688718766 173847489 43682160 521413760 35936375 354157578 772129249 739092378 142949487 276723854 63478086 424928032 879950366 502422821 175466454 826127934 89400083 917224062 260734364 321954345 100263093 941577408 903876558 347397341 136339205 844641201 693250739 936718665 591095116 69806489 755179337 695704671 725440172 221015794 766931334 880897742 302899695 130046351 180483409 172522561 785323866 957607290 98320497 547523584 387994072 294369642 595672259 657256965 733379766 386544499 909968426 627736562 375562305 553572030 949147794 902524986 843673053 754904978 524732004 409358358 803280212 137757179 105951464 165135735 410644301 132957223 283625374 80618304 667302685 300074648 836224912 723610715 510202187 243095095 533498629 664661098 975487815 428868972 710961090 351477496 687439633 709159296 353760402 716112389 604328173 522926996 855756422 940224861 832073781 351416505 830039945 751837460 773522450 581638723 645685558 764467952 478631358 394735472 720142671 377014568 23777596 283026895 614704739 201522200 82939073 12286539 664354412 461278466 434305953 970171184 514856374 698278044 530410411 451990803 152389217 227820715 571210540 30031010 566514552 546027141 99830548 580813214 464650010 345074898 450028400 683923093 977584090 426217852 83830609 367263837 546917678 915296821 516274813 858257955 794427892 678038906 632578783 603091608 348965982 253132981 719688461 185452358 105258269 772547888 737507077 472068420 788249532 118194815 252645732 582879637 344302779 97190768 265758940 723458987 878166736 624286794 566291660 647460629 160308592 731587213 622781429 998944408 335313209 946605385 332278636 176151120 889726536 19955342 382612361 913474817 747108092 219821025 163514405 887257574 604103674 764407901 498994707 851095578 621575467 438876719 294436493 715965348 171953137 436002821 548947614 459159370 930029951 627444100 421739786 850769428 195593350 951985766 617879104 911885865 917688150 895273194 549224015 319833177 569259066 403334310 493012240 928043219 735061105 343840616 562973363 753190580 807724001 685318264 537424326 386232719 462396732 955408185 663658230 389797522 693346302 934617266 294443714 883018991 953789078 597595360 427057426 7329117 444537137 420936774 326631241 641239744 442824007 236015393 590796421 547962997 818943625 263772523 643404231 12443067 581095637 645920742 22298609 908472218 765817220 252436791 465571546 374101788 392922253 266129248 835214765 428446312 605009964 912802734 569179333 264343696 683872252 169623730 584238332 327939080 56343167 668177726 538626100 526074891 65837421 887507016 982970239 292507791 711971314 577574993 406657239 388596114 426353608 38236504 804978798 985818392 402150875 525965657 85480681 506961232 653252065 987021866 17881017 107108126 108455530 260815902 372410163 631569424 813998609 503481783 265325150 42231994 638872502 146056282 200200679 710140967 276881192 955762473 646890346 333196824 662640127 906161256 429525575 851126952 915982420 282856830 144441898 70986442 533279373 299723790 561010979 687745541 227921897 701081018 688200490 979126658 410430553 637541555 249139247 43294573 840618655 959879954 871449042 857460692 259936067 379958277 190286088 162793810 69633600 657950275 517381887 890142846 783917209 274274381 191339306 863778105 553709657 916149108 765673464 399357838 214611494 720298606 82859426 998863941 286572628 868256007 259278228 960091604 287372466 478164919 149126604 156623298 871873866 870648565 213348572 603839153 705866672 406452041 251472337 789388044 269522050 483511400 943709616 230625771 236839321 237834738 336207689 424933134 442910460 364682390 207655504 362822519 916576167 826609683 96189664 643761103 383845722 578552026 75004 385641343 429210894 189911490 625115271 71377657 335165972 19831299 711226721 771429321 467188768 367604620 30686955 660677995 71179018 199122493 403207770 757649782 608418288 629703953 979131168 567043888 309612113 358559003 927803321 718465424 292996985 73260588 156163180 827697041 301743255 2904705 683880042 51970570 872253015 433046926 170519792 416526256 396923309 797851582 563067659 286527502 193306635 844193753 232981132 343081277 985158252 936824164 442113376 907865703 916296786 344790800 702742474 905823683 172742274 452371291 463206007 824974167 127506966 399778893 424455450 174996955 415012578 44517801 557437144 476473193 813122668 822000429 667412660 393718335 163090826 738192407 675396559 577348254 772007372 223444812 95132324 831138332 889800387 743878055 212621074 441607525 202834816 429567630 895356137 861258718 356689965 564953398 874456568 5081259 96197419 771555197 232152804 103144813 895166278 396983596 9791120 229286650 377830008 532507368 479450939 979982216 276794146 179626299 629618357 73157113 513282615 790319077 823850289 440192167 649977667 583979666 105827002 764997874 816876515 805050854 390843447 346001289 865600931 929042052 182816284 596061497 59237847 249356511 900364406 434415295 460413532 767878478 885868424 323686510 93091654 763731969 947189690 569988696 670319867 770602918 924362205 248421090 121773085 96771899 424509073 236033971 657178811 457180022 52330983 831164935 890219744 463758326 265231392 460314550 174304955 962895191 420204615 303125232 12370486 573197455 103325926 561793267 792392598 448520919 99892059 698973674 238748635 336713201 402143895 265229218 603619262 571484056 102474378 400760077 522125858 272222616 914686765 452339947 456858173 880430261 741669905 337169920 161617337 771916630 195410840 710801309 116451414 970331330 679647355 727336728 930279654 433612506 880982559 705546642 334934738 118517870 983895269 601704766 665249574 83285992 730221577 293939993 354266846 254314476 663593484 848771964 155720555 664599004 860502280 519097740 91971699 504188760 422094824 862630288 253225481 909995039 41964864 510786756 383748382 499678513 967181504 391555016 20362488 746361168 273973632 718834264 997101561 886018087 919263218 395360871 940612501 51330203 991513290 373132829 783615859 899213487 519586101 738650283 390411843 423240124 134723651 724742955 440689782 754387524 830512377 141954719 82636187 721010253 178443509 444959709 957373147 404181126 879657312 130272784 345216991 159875342 161582146 666502097 983652126 412553417 467605509 932870292 157661313 286302858 226963069 547996439 543099507 953513684 809372780 566841880 421019239 341991080 824101964 264379194 209151710 463338236 151314068 495580586 69304842 75103459 343755703 849500162 117172344 171312236 703944904 922605273 387455016 983083543 251110582 778756171 454394710 489183831 609500145 296048151 816347274 517869382 681711795 708074245 24166163 337142266 986369797 960162727 942178663 237495706 797631424 399318747 677134739 964347929 920261793 531985174 865082444 450633895 639882641 756284144 36509138 770971756 768941357 281407677 569479705 47420387 117833066 897918703 523301920 561215988 576338820 588966847 384434422 986156239 383822525 50472170 997654236 325377879 42783275 922740861 40551443 215865193 121143551 354592844 168750169 364582186 904840571 427398000 322874131 637605825 955832204 337494437 798787462 399656545 201831466 618599167 645189023 727364346 946422077 364765153 349122626 965979758 857324109 571087919 932966907 108258085 632324826 599522476 554412278 957217170 478264856 12155078 952552514 400556531 107596594 725746009 308425095 504348713 24368260 903970990 826350337 623731402 659871345 872435274 81745077 496200219 415870516 953226893 488907583 849659971 842313294 933486753 206954729 331316762 79964499 233156281 322358165 835034137 653637772 766001343 99855384 585317279 327956979 78490751 794742108 42532804 526721553 716178736 758575731 534362589 853855365 155841106 741512241 764799637 642173303 401784666 396694778 529423562 85535089 511335095 357433848 238708226 986760605 219010345 788148286 51126966 332165481 127488018 769286938 935365185 162020297 677968954 6163222 126833340 289543930 266865293 794200204 392064756 769404437 416157410 366073085 433457079 456575957 651757760 767865543 700975717 977303047 317704815 231545492 79237501 532258786 51246021 134104660 267884465 895123756 749738029 174200752 525680371 647453847 677898245 757801338 276966462 703812443 610985622 907614917 680085648 686860319 315904610 977921375 57733965 331794190 968307874 84839785 970509012 441830625 842686679 442119066 619247196 688915448 618381131 680677850 839558742 809832595 764016769 718262021 440664916 957721482 705482849 109787903 52514968 167295305 87832928 692521699 685621536 343613449 854815738 547137580 187030847 683126206 622707882 701991244 694052400 68454065 117157239 672234282 228247787 961081573 247245603 377908717 168387889 36634991 386952985 576033865 6659906 144835294 236486691 649616863 632149358 460139966 886330824 532576695 88243087 885260884 927539048 138430590 91651885 748086805 758912617 381139520 41137611 994944155 567009798 240176349 631402419 593807137 300147126 417880437 86146331 561012662 428947693 604293553 420922704 876475703 600997278 213262397 37182047 183194618 101970645 428765343 882028766 849041962 9422325 565863750 83685510 751865075 603864726 315714649 588445220 899097042 117929039 880073557 717794410 796073626 879620935 315666535 644038053 232797921 846789298 802311281 89209151 678007476 749764334 982098423 162021407 996668518 520309403 456602274 821494737 316027832 276511137 770667915 240286440 695906552 36840263 839576424 40313261 784572151 490458532 798183886 589055153 838743003 480662833 599539575 100820517 788588251 618343614 782038644 320576265 862880220 322556064 34026143 892446384 215810008 530605232 97366493 910396002 362755190 852202077 52048880 106306080 401298009 585640293 648059845 354508592 310635779 742315932 951192343 936143742 758696307 570181407 250950009 867701355 817230746 685750143 187929266 678633895 334393088 337390697 794055687 517205978 169605571 469606303 422782761 986668140 871928828 817885913 577824392 514336503 944500774 155036603 181970491 577781738 49019625 117363157 543094564 650744521 778104893 328918271 531427376 880256265 384499127 800798065 139539224 662000731 105749351 98155218 855079597 574870793 677281453 294459036 75952581 468459268 891936203 475929077 618497821 290663542 528888830 926340536 868348964 530554666 165359260 369547911 29818775 487141717 651533591 557602178 722752599 117033107 439031993 674970649 531333113 938951485 973877145 397635328 454170099 846758213 849866220 479845265 217245698 763392642 960727877 887462235 251988861 882531370 348310104 76364344 953663564 184088204 408622763 511406840 878751468 803594356 114103788 246356622 115729009 759257240 90230201 527944177 401023432 587624383 234333336 65661043 239339651 806683589 281609604 417066893 144389291 39043184 978719922 574303735 534701481 190325297 966237994 612573795 20528439 279906450 568888559 561801935 219271387 212644746 987308426 138473115 951351149 954383808 381140193 897301116 872250965 869061162 76092384 694016391 990376068 26260080 664030083 177868778 959559684 283984891 118212998 592957158 739874267 504201509 479269384 69370057 878473513 298317496 880952209 936434784 968069265 807537070 65056740 788501204 79573799 398840385 346627319 234397910 685889178 339364228 450827931 151969074 136975798 502346365 754225668 208988540 122897905 303806867 183952146 881218679 782436573 966215791 922081604 390072769 553383270 108246821 935345955 650492276 887588252 638486235 835810248 349941357 876125694 374866068 870473950 112490997 452423685 694518150 300843986 651354787 658612913 432652865 440234305 944763 365614685 5903094 180984728 575933128 561264766 343539772 288938563 178220663 903942141 135902088 812629358 254118916 489131639 553388892 445405305 498742818 843844927 649895304 424306846 257931518 201955376 818342149 122595519 516978856 744015440 623875853 820777276 483481246 558557603 744648168 843749941 189181313 978535887 73755677 112706117 789250759 701737068 765590282 377516349 251584419 867291613 375626723 146971017 585022408 29201689 329054056 414099864 197304988 288014977 582449469 799797084 564283634 103543795 244801552 847068418 104435624 29520494 662214424 508244833 115575387 789058702 296536976 805987079 895967905 623115952 930629139 678182015 525167914 88576046 818861241 185052696 300186577 382882353 220748801 993204428 524757185 204152460 467456886 730657439 552088616 409849313 431172463 77101152 610679046 608136374 752754369 211760793 416641809 279431764 417399038 807103671 487311379 865530410 99912624 42412806 736044334 132161043 235072414 396993097 121284025 629896184 650966689 23930812 607781670 26848130 78452548 405097652 163694357 470546940 626459760 224291676 743941867 792050557 313434319 599885929 250028096 419065937 321530081 833801315 959266551 224012625 456816326 54268333 593162029 665435629 41738219 274889999 355699942 860348432 203413933 997661211 839424898 947441014 689372674 431110722 778731737 928961645 540949964 631300308 779828327 891163513 414941259 29166785 303761178 470220950 276601332 203000970 229821492 379848637 772149495 961320345 659187503 867246997 917901361 117710543 435753964 381743307 444240651 82603036 293402155 938380173 518914344 1045325 407243505 695034740 23460619 225391479 156415300 631852973 923277431 909430103 792538204 349580493 327997138 687450406 89125237 344623739 892662943 418471404 668662232 435728592 804716566 435318985 90805748 415707636 949938084 795875212 774184098 860256075 63643996 847569237 237524300 991724607 372239244 649642839 913159648 636066506 423321074 531247328 864933805 741760495 351701009 177627747 288796181 516679840 870270058 806638067 674263515 446747678 245701137 251977627 167747081 179829253 723668396 538952813 926740822 806624061 103513902 318184601 806173218 459667782 310192238 844528074 255393875 129004023 161615238 198489080 937384807 933844418 42274731 206140721 153421604 89922340 704599513 358056527 442072920 789728844 928583120 235383681 324388699 649848441 341618468 2965293 632678512 427719477 106004975 915185413 122922370 789696278 219996682 18711610 706011358 606814859 159463963 805242537 146046693 617319660 793779746 385459404 663595412 418127243 197906156 14779411 193876930 600489815 463219708 608453732 933837410 127987430 13832113 949237777 150912618 846600348 761965398 133112909 442597977 797721549 825062541 615369180 898538569 410361139 391348050 189314837 112973595 655887712 841151017 152397194 928685799 422687510 890017116 91624858 633124762 482418931 244415537 185984441 287550944 635476269 235608069 233527753 758328232 558199132 930035560 471338710 286211168 51838473 942896715 327019676 496041019 331688850 387967812 12835794 382388727 894074249 196265186 346104605 792677638 34104472 442859450 179936415 105853021 346719926 954208342 769549722 544499699 330366210 329328464 659785217 509303115 809918049 835977807 518791466 735466 942593507 986415755 204199926 899283129 283199492 243410578 327703755 584761855 758713482 643797534 481000979 256960677 57263717 319124743 395025646 680306505 621302906 233129106 565275380 899066833 101480735 226996587 434263119 209444341 991167981 7471613 591122598 588387793 477985378 110910041 479408219 141507932 517321276 609150027 550436524 948023494 893680048 911403794 892856580 291689434 579518123 22188302 213340793 532852422 84638862 485769081 741712951 458655444 314296657 635974993 302274589 793181526 141006233 606403266 570450100 129220807 904464811 250224865 11966208 72432930 507457078 995256462 940357809 831266755 991873449 886090066 891393646 830568305 993242887 290175587 974081342 766008305 36818771 608213743 344978064 234747982 388735436 226917434 843553590 389359825 424371376 407940534 934979939 112953659 352776047 511877615 352915492 179724185 682067630 804086308 302994833 715412792 847232669 384216742 954192080 939867234 23764008 389598167 59616640 631707667 950153253 574537905 64967711 124009840 586951184 129322132 986669246 798783625 718237389 587330024 719448013 870757042 39823070 988821922 20023297 394654006 532022996 791267313 489198669 935725417 525488262 755891233 940199492 667814955 775278255 897954371 772949243 270404891 855086291 590127583 414830857 839048638 145312721 571981774 525573086 367315829 497962072 165862327 627844010 104786791 520808435 718213080 343845330 192680208 952699136 445791730 518275648 982273878 162253884 586351103 769322759 840393661 126958607 613244651 138435540 632945779 914356151 866956834 25812551 935219275 411416479 940493682 871569931 289248287 716715372 334437679 126384364 679395621 854870735 375605139 168547488 730287363 470472863 662624539 241476145 769685951 700699566 580204218 327843012 417831056 270789460 164112432 978309159 990792471 24802401 751163724 280770102 743442927 504463758 505917204 674771680 383062538 507358862 427254537 88358208 33167203 903940882 527136558 462557143 702602211 894233597 550102170 766135442 349844128 620108743 133729286 945163614 385580657 437177699 276211983 591727437 198766315 506309114 799002266 191890437 186193191 191299742 654142556 658380216 232440322 20481771 491601425 446994321 212790970 433190767 99547993 541066613 914851869 26560828 611701522 502147350 366386666 471216319 962031700 753269260 591500920 432361264 586997566 336688094 938480232 318632584 152046259 536080346 595444856 707677033 399449869 894056265 308401515 532941906 238648692 953412147 48541159 794645358 211786218 523892124 602177977 180308909 52000371 27472274 167762229 86215971 595387857 693472093 290082935 846083831 503399047 26506403 673291960 307280810 754840769 350677595 386469439 812633361 236445584 828468349 852818386 964493536 403403805 926420160 193420808 861490654 279810454 804147651 228725939 274457318 469333589 280438104 668276009 927516359 705017893 62296954 694819819 185532423 401185421 434237658 462499078 876396012 632003782 213510411 294755348 676393347 797324803 627220282 389651495 22150609 506027285 774467759 500068980 39687467 852980601 124308250 285916270 958669387 775483176 991291528 786288405 609391037 338680090 27812704 298021445 993968070 652085615 758318801 58188679 855941696 6258772 542450065 521838544 853560755 250728937 287311001 367068974 747864033 74025006 211505471 858255501 38148089 357107587 707697240 289307153 440429614 270122599 463794758 444788333 982976832 530574472 983781388 953005496 619037567 623528451 545935905 91266941 228376723 24764090 823175292 431379085 98442062 112472030 798721928 991107224 79528791 45964293 838497895 144461697 85477702 524171294 535418869 976052509 213782601 190847732 570019461 11422237 196410782 715982710 845116740 168420771 638891669 63455 909543999 969484221 584463554 406655328 46142044 629280707 743761692 511548724 378213092 857181654 23365695 402771399 163532802 337961332 177692640 464590192 105028325 229609078 286743479 907563485 696220857 752409809 372637839 302460436 874770819 649531037 229589312 225379679 351862586 39447706 308347012 133126786 186961367 669273342 347645970 968692118 265868603 124440592 127440779 640130044 655149631 5989509 781732681 246554950 814454818 933304512 967395655 205649951 437622892 949639317 637059462 38503327 967152887 860529323 771142371 816029979 594049566 244676067 560774594 942942807 459066843 730230293 88652120 4508117 188748485 299476649 373706893 787843561 839037522 937551866 298491902 333337916 701427011 243162044 420042870 114365983 152386152 383958299 793280569 798007445 34013217 500300571 384039740 912247651 638376796 376037773 623297586 989787376 521745262 87618357 772245012 403160290 799960051 595380123 538932959 36886114 3981895 277548378 83735398 446565196 413161717 759669938 701444481 564566418 626776132 249567605 567143432 150148748 717575538 511860873 335851360 85071412 135522332 458557104 595612319 794880051 430984496 727196872 887459914 985206846 554171083 897022876 670717215 630540415 722225811 120805899 793880712 530375817 165750881 277076235 202644367 298223347 371068503 400460884 560853405 510578512 822934259 998538387 144691134 158628616 944625269 831162464 21572981 46098166 429093844 281667455 755601715 503201878 193269685 977609353 400485916 593462488 190674433 573055380 726967614 788667795 554374969 158412919 625640897 50140461 578427012 574575726 874047721 135197836 985303628 541081526 106502182 500152925 317199125 577270045 339909776 541207571 373145061 579779805 540036676 687573118 304849676 343067293 680672302 297130717 543257484 804381887 150176295 34990316 421408943 988485476 852815857 91607036 991435461 547163033 975515355 947606039 102711191 295712887 750487882 509551280 353641028 329285306 419250459 551897796 634490841 917884789 707042108 26719092 453775774 204066944 970362812 705787913 641995578 361363217 986443210 155532 169873055 993070971 170705694 317168444 952756199 962528996 937468291 133759534 13077378 574349202 625747164 713418060 461164824 693525327 310332241 420841267 385554232 723797082 186330269 655271981 613361446 51052983 937280135 608893555 773952093 103492728 64373685 94421959 418037596 654811770 589557062 942334603 436026324 42894975 336117849 470853439 163885427 700880840 821935676 177695650 837861282 612006705 527593361 146512010 947651106 290200721 408823767 822751791 200437482 732198149 969986079 275381188 720277869 741911998 101127902 743402545 970632310 907210627 331436429 875974983 481445800 268872088 157015053 845882116 431801084 797534358 969855930 628755158 758783880 558062102 879991335 390113419 609896163 943097336 80044009 769172567 698011678 67551289 111408664 622374431 65369390 951020678 577840202 108800196 163536619 516029181 579492258 338681754 676716320 224139952 927438801 555743508 525713340 890534502 558487364 389580011 577643723 68574292 980361800 443590898 200871725 906239576 818190900 515525983 308315219 539133140 226214577 685601940 588908561 518406880 356725432 287023173 974008354 524277543 267444214 973937390 345055522 263103932 324529236 117071782 538361121 293640948 675848116 164110429 599759601 198162191 99344084 296364606 350238716 30459318 313728219 743605216 55871596 360966320 561066349 675681936 474955818 299174585 247081407 830667596 766262143 428154463 359572819 708229441 868419583 549064452 332158786 741819013 652093224 538168495 221853893 141254231 784365065 947936690 871561412 60067499 895711786 378714845 456977321 769652585 944120053 501486188 710827324 245608131 333140529 821330489 146804774 665398126 265896388 257441805 315515373 449682603 627151574 72072995 117782560 918386861 630386964 253563658 357269736 597252317 424344361 747349753 340980625 336121403 892097744 25908021 130678200 439941669 22414366 194999953 682208631 317231475 380041751 244159566 73708766 444208122 452864909 80639334 865920765 230352607 961029587 589091574 66267070 91211301 949821739 178769546 564304648 870835540 408155914 123862135 234843655 586399160 206269432 425642141 625555358 425661007 245792027 465360342 602713374 485471659 515593622 629908154 602182001 135126123 135432755 356724051 234182615 934827628 129855694 738175313 284236478 74646451 472209277 172274657 104043048 712416859 732055739 123957079 178654779 793941338 288398809 761711902 864533404 589465382 633115100 505002158 914837179 427009804 600926982 649224180 766093576 208544274 191537988 736632777 755938343 191220944 817361620 799883660 486244752 109935965 130322152 231376340 51392833 867392790 28748902 780120432 305349959 769233519 189303301 448000690 517455522 313855710 96190046 728743267 891337914 953795775 575769314 584936898 320967258 576699508 444540094 794675973 358836039 611468310 910124582 432641862 473973597 825221390 591168405 220952871 806154276 235275280 706740392 783654020 920456987 260860450 604363263 984645354 697605928 36485945 550783410 713248568 853104402 584700634 941117646 856054204 309665762 473685272 567791115 943806127 529637880 211290300 745160717 745124430 881097594 581513019 762660799 688689336 536309739 124393094 577503771 883875990 261845700 133279809 619319504 868621012 369856068 756303069 387694385 267579404 727463624 5492304 606326078 323874525 354194553 615169108 220135736 414642531 153096795 70943772 124474447 65625709 255425178 84570714 436125360 883331454 35561837 119361511 513694201 776160140 655016426 943522960 886217552 887012386 940097028 145905925 500131660 307214221 502451578 752134821 965890275 454353259 571672821 416251123 780262637 476849608 122270537 772825063 474138534 663590421 189606617 907855597 199591437 166701404 271850390 250023064 499960481 856478961 350369517 143541158 864441491 355808213 908884569 157013183 473043802 506869309 418866701 736239192 710530266 13581992 547786329 363689054 478808693 853630265 761654092 883002067 634691003 418706669 853921028 274462115 397732024 104139843 203965229 330374979 179177224 557828759 772140475 427317053 991383755 787878580 391110047 410370603 152420757 586552896 237732605 450268681 944093267 320126162 468372030 320357181 739518284 439404706 371879220 932676236 204086204 772444252 458186098 784497123 376559340 639146366 997349779 791782005 284213841 394481905 162949563 511918418 980051786 942342033 707109847 882407225 673760946 735616378 4958807 181293019 626381516 79072806 674388896 604476336 574575396 867527122 53473282 823181339 414219263 386441768 803550831 616775715 83335598 807420826 920332051 749647154 141056668 285488117 455147960 587189074 119802919 580175821 482660088 428036580 44454389 452415298 579095125 723502717 163499822 238217099 875177435 455560603 330671588 979533011 187428511 907110802 331825809 272078074 400437514 978936342 920563052 573363958 531344333 366619546 234439508 157141513 905832624 737086846 450545483 736604036 604965595 199273839 465743337 318068282 290900041 456731884 369296428 169191856 683445239 649051717 370931042 884963291 15992088 658993721 165242268 562934023 775288069 554929488 148935272 601828321 858194313 612424174 989529899 89890041 529370165 326172882 657478289 646989664 802580574 576095921 449484108 100194538 653336099 287146260 717449973 171738191 420803216 527877540 244268230 132650508 636111158 947834470 604413366 360970504 713438229 592759807 657680437 500364152 534090592 692739470 666981755 857806331 996803065 636054563 216922958 300146557 204172401 281432249 624891534 900434219 838300049 331446458 43136922 376311257 849599367 967572189 625681789 309957398 383504545 554606849 16726592 183034173 57013982 606963768 884876593 450610329 219112340 618167593 332595402 359262347 783534189 443155704 667238803 431260619 399740956 546906944 436200775 633978046 306238706 83913249 744675180 698673307 559180915 611404028 349851198 751659669 276171152 920556443 413960676 326106174 552043884 272138587 515244651 729061310 55083990 420055217 207545280 159459038 811408932 764723689 37514675 523288123 877423168 210411842 723473785 682012066 968801394 55766746 417085817 504437635 889768833 51654062 568578319 679807351 817557216 407020614 627798228 644296251 114880828 381400297 403740311 838205912 14474470 751380768 588531155 310099010 735818830 80107042 371134184 290166951 670437936 143507958 730166374 63122833 647753251 773447346 215513398 924150197 260215002 66373800 882952605 746329232 571308712 512172738 370830308 708745822 281232551 299903903 615442356 758529032 311609621 530572179 857793700 448751938 857691831 115642795 698843315 931114469 847639019 702000130 914101209 965758533 855501039 205956307 127887835 555793355 61485993 131995957 735417698 192488124 703712130 462535657 735460245 360771217 404163910 261306427 405093845 641576077 659172406 256223719 97467201 602460693 636843932 133700391 612853352 321434341 648456369 465908784 64372427 936323645 842970196 768337986 996996200 622959627 696765158 95149842 367010395 416220397 457767199 499640991 433505541 404970124 206886423 509052292 437232761 405767164 64651138 376906440 977494231 804808063 181310800 544482491 813827316 764212705 913074993 277894078 39209116 403327068 308604233 90446685 249682576 261367405 734140578 812551354 988075646 831702804 533889434 113219726 836882485 111810291 193175959 836069482 486914184 927136911 496030063 701968522 550792674 188559448 488011513 548510656 275969226 519913821 221994597 304395509 502216319 903031649 92450341 714786443 3348735 747311705 4382442 874875979 731366564 748760259 888913205 884307996 47185988 475707358 119240158 401110409 269808365 895702171 230950715 936672293 241164634 951375773 155935052 776596036 936148450 882465966 404745548 673102117 530808858 7436664 998312407 189282475 678427374 248440987 392973876 94128577 199483365 60415085 316887938 858072003 438645801 410267726 124805765 197829185 477344702 18882507 496482317 345533537 109022946 882933837 636259216 930301557 591465279 80845660 771427876 961315043 891321014 819022915 8380615 239859700 745646000 953909701 552379727 832900079 710085374 941261714 704121642 623760488 443812900 141594123 186696757 736039220 182857731 488790724 907287144 88326305 858237033 823886061 706282047 245341340 696168175 568931646 62165921 308975377 473124112 219196550 665108299 815170871 568417503 142897240 444709668 769202771 483244081 88033360 385741921 237264884 719717367 17998553 85111144 105995189 958508353 242588509 805601527 62347643 323869471 886034235 526697700 847482397 615835570 381688636 593321666 94957828 521461949 483511056 663554188 567225284 423986241 778313671 263995796 525864210 161579341 484351571 261660936 320229136 198097070 291146944 185552718 483059130 58728030 233714757 425691314 839179002 538165325 602997073 625622424 578784938 210718145 367865085 436871967 615081992 842089415 586875775 728857214 659000833 333760551 337239213 454471165 954446859 490617161 265850921 95669796 243197857 224429609 747190849 864636234 238744398 645217516 667619854 682346783 213492136 756358971 270922050 766961503 343150617 890426441 33555369 596825451 8414729 99762148 461019576 755028497 88009799 170038569 807140290 284144601 659002578 64362912 659562476 7378447 282986316 601152673 663987491 155237928 723898985 234443694 102176541 112686266 298396642 205392967 195830203 217575681 534922961 578519541 513993898 2540416 767990182 803296428 881907608 654888097 829819542 166744542 59661890 375813219 213753920 239930061 360133371 512966911 300859747 420834260 447131134 213928796 938662235 590819610 300367814 702522900 186102897 167665387 983318219 233269471 103931870 436760483 528535192 505520949 588350692 108976403 681010553 337396003 874370225 17262470 76356346 496564147 472563018 98928874 320350524 125188944 966854744 672051826 957518855 167544809 629599769 877831356 173013730 927330668 490241193 746160780 29663614 78676236 457888213 573382680 802940842 336023438 186349719 841144479 591262494 325936434 765710439 790097524 736185438 802951834 771545949 478259414 389840580 419283693 845398425 443013329 820818511 620606952 936135868 632612720 846939466 43087956 646704412 471099168 114405661 28802321 811971795 535419081 517035723 522375439 947912416 684598636 223330117 180944424 668446887 52140984 372991557 228379223 172397898 111445557 240110860 412909245 156346838 163104003 474356288 941310126 617290423 451510080 669752486 778047338 778516469 81116596 375704024 982537234 430251061 953271261 165061937 634773274 895255306 235832659 551988994 995799592 128220264 344451185 3862349 135566489 754108832 439612090 863223897 246760460 32615738 381050438 307908428 727731692 374561298 666240216 713904890 354792635 352338815 321051746 547804537 384388018 649313723 214505283 913643555 213086776 625806703 35712829 661438009 88620585 875569038 225561456 287479725 600070627 454693214 804527766 721936576 846190621 208050372 810827116 987366468 249944021 470656887 958645294 320729358 316380639 448713935 943498352 429414229 669584621 500756734 554418504 199905626 756321678 757069337 174789168 58245260 805663123 325139846 527457468 138219010 51340449 663884715 87543492 146318814 28223292 647781346 393917955 460082321 735942507 593471113 72601936 503907395 621612518 275347106 738306007 148114438 343798628 140051524 873806350 404036683 137153147 539164659 430672163 716521062 776354876 595464209 946739567 311603529 898659812 260232028 412317124 249380424 474570837 319365765 347704471 74315147 65207664 132558208 452345518 392812274 187600721 888805920 986630776 127403240 936131333 884820794 887956522 76691892 572152497 426380337 189245250 35797162 584412703 120876933 271607514 573462266 255821598 576056393 840726025 879847336 397283698 426319672 71696506 635201654 176197401 239269993 669699366 30479716 161570978 29022592 873579668 139265687 103608037 238129754 274360714 388218970 295275096 654544633 307757983 400652800 711773664 318463154 267308278 671659564 652252176 220131594 660541774 772612949 830951210 57684672 113409819 563677508 471287453 493988736 895605432 603176808 684193950 735999700 228028329 318282841 853797299 930624159 219889364 332635305 552615103 550563377 52362902 275747475 56286739 962235529 197636797 862078348 684824782 338240562 421156177 790511483 498002042 429443377 469087476 362517053 105846979 30805560 91099156 939210175 309740785 463245721 573776810 885211714 235086780 946792260 797582310 513019151 935218541 319670209 18266928 824276221 438534351 324447212 706436094 492328088 46188253 3774332 281928975 352701413 47242507 468642608 654639824 385114651 951701901 691026377 815354174 183648628 328234147 86258004 661479936 920337588 305024968 597234303 165372808 889606341 354769520 978831793 706922014 540168002 857071179 860051542 706333301 903706325 56202680 427666971 709247775 154816601 199216288 994856947 760863325 583945596 629621260 626158750 936113037 742689052 458305789 202220122 864144138 474147261 81497464 294412777 74641871 14293302 103298796 628324714 538028901 606177887 472181961 271936560 785883183 28291242 678595150 944315966 655973105 424620220 703393778 259270895 183889059 174386431 863989284 768511210 825157002 365933293 587366485 422044255 857607429 330252482 751946789 529677933 348773200 628838133 207951147 354650479 569435004 41931931 609464898 16405911 600477915 566633796 173602109 717788933 837669519 287535435 415919042 580463818 515980736 211003076 233648559 842121242 471482139 172591700 808151645 240707214 491121822 744481609 969622845 75101789 120808736 192704969 998056316 521724505 290396527 803924234 719466378 868788305 14576707 612523753 402796624 751297547 231109602 747956785 79234344 644304892 911620605 717992095 872046000 624096770 329191930 273712233 420478807 541233956 75781435 34639226 191528100 576038553 253570289 403575330 936502405 293712900 968234501 427023630 288410761 86146057 82445706 695200519 853722907 265015029 20487127 87089707 291776912 153283024 899529771 313133962 30921836 7048857 916290424 568586496 902779585 145730193 791182743 552619415 362243205 555909282 302540179 15676410 167458153 149734416 745741721 529015991 555597610 908719967 724381573 330545582 909935358 133626053 737997988 957541515 469954903 225795709 529515782 384237216 92744113 438636896 781121178 103421972 963150320 50757024 369934054 544365040 74098370 422072312 134416582 158988727 924885583 62582915 698234563 286237305 420665640 346642602 894483389 681944364 302615152 747967918 710372780 242287182 664564195 480420015 64665487 257640182 860553182 576166939 185751826 462478233 555691853 538960715 906247400 170188729 911265772 249782019 930482431 238931988 611645460 681864257 894507024 446376158 244138002 849053863 381891203 94071408 738066275 235228818 291036123 52962713 243805020 50243345 531913223 421533676 219472655 143117914 711771100 216542326 971369030 623678496 640178656 425751066 244636771 719713623 288442396 229765346 987739429 93563961 967819130 814980492 954412637 293198282 869001930 313311972 173499239 109179113 553911536 775682351 272416273 111438972 426499591 916289230 469109698 64016539 359167761 954970650 763375193 683206912 867952498 495628096 194111579 252136695 618297628 346798018 958926735 305750492 619436256 241488447 327308430 741233855 972366563 276470736 890640484 271395799 811011165 813468595 740216194 787094683 355335101 796086693 908581050 843767144 678073517 341539362 646495040 101294964 501724092 64931787 299533846 371766880 685150919 342540633 281725639 204431707 454474154 21284217 417532887 409606048 191020635 967348757 177987854 265974789 516336209 609879377 156396068 651536013 20328704 871762350 531394386 778566568 70362083 907948950 173096074 800141391 703203900 327296417 3071195 988282208 304784354 837125131 710803854 676122899 791909410 16021805 637156676 844622707 489293509 808374160 814466224 69649009 841334564 203633479 595655216 570041780 478262988 878168541 725595753 993771666 364145490 110088019 303873963 305971177 944766786 34693210 241498071 939029413 670647270 326184189 8698489 247561248 100326143 23147628 395780354 463976292 86519894 801417569 975937741 248353233 3853423 332142437 947239062 585836655 511228228 262623974 674925330 825865326 97747 350897173 633348099 14051292 35803313 316666536 846059769 692487603 834307494 62580096 880394343 414079563 356660317 564383187 340462823 256303202 936968588 949063109 141755290 914215897 909791467 292749634 893448095 620807100 269562106 358747346 235290063 764636616 360380032 250766962 900404402 263174847 647131664 617785145 287375953 483601867 385060896 30564617 103008691 575635898 226523324 830900123 98357011 569912705 188966475 680543754 732175677 614272673 65740805 913016133 715799548 673004627 873288103 605867763 196093654 374662924 393616084 704545342 36336599 394622595 972330960 953915954 510134150 650275700 887719522 957825111 438687400 405352359 710724775 803142563 69339538 994569893 336133159 669221907 670084388 85806761 839120331 199964978 139325135 129001994 97023096 859383224 56125503 277184823 97502646 876121688 266948151 943505731 390291880 49124854 927659641 26372499 507637385 961045600 18016586 777243472 731979906 592163367 865895250 557574781 852631120 724282588 607495944 36902048 918155250 51925539 933756197 242067193 270546121 682132694 418548273 330446648 358611354 904190565 295156659 46301151 978307725 969371610 14405415 50356646 261696684 22187584 13141156 996736645 913179320 969119540 803906694 836397588 969075004 580000271 480265017 846625865 311116101 691572418 400980086 950053403 192818421 95881961 91557270 322749905 767889245 860336374 536154151 249022784 383680795 463382868 278423152 121234439 779801048 28050212 340118073 327519920 384592724 429858140 179155064 849330300 874206267 60599936 70192023 162308974 22112378 874587675 798186378 776698790 838214402 763580247 918996061 760600952 954460293 157395598 31611102 892421493 774066148 922310387 867065186 754422577 196341909 580536864 158097970 18771833 732666109 850265811 866633873 51385396 288795215 422759427 775219194 945552814 882271689 655275033 184662183 641594658 150506622 676452155 258643489 710961683 69854409 245910189 342621533 621997156 305728109 728204406 107429909 62610414 128576701 102420761 778045816 21642465 929297111 984841166 225513051 548543802 177687370 502811675 853530390 864619544 381977622 607751762 828153355 740645604 429342116 332754196 791604391 462400130 268085720 677335717 977743972 298770492 358080191 883262844 680806268 618554249 805652485 214343581 378000520 43941512 572227087 265693450 373186822 708973431 867602693 737490925 523012768 881195111 272674321 712795306 722644587 338283450 834141813 823075654 354442236 617682822 136765041 208274227 189064462 45445904 799259152 219307985 434701746 433199391 353231855 481449432 43376870 358472613 242501378 871799544 19399968 756136391 744045582 110338641 706281715 923939692 739554595 795710274 993551859 232118167 223939694 569096629 363072099 710235390 566496761 453628218 299925659 5396029 366021131 184823930 180861375 693359797 572981322 565177305 129816091 629510157 60586420 649247063 771095921 734952498 890966569 609312204 128101823 666475943 493654112 661477794 245420945 425055319 240799381 855895995 150600733 571984301 127655665 259592470 955449782 83012729 601589329 87853246 670812649 733442538 878613519 620189436 304363193 604825413 819209100 125519713 580900971 625529494 897022 65241616 392535116 932622343 786132132 523572624 115566628 985360656 472620230 365642319 583237927 864854605 598730997 44733347 999539903 712958908 377165428 383178533 932851916 177057456 322154811 802431603 526863423 593478009 581562033 583038924 984252501 735787831 377693472 494741550 994005990 692041742 887237182 895032558 742697465 361391184 638806921 661422216 64836854 169383204 361527837 17977138 360344406 684064062 742290640 464695065 925300097 17626041 203099919 342459427 766506611 309906707 684335122 331590035 177443119 749737265 515011055 678453517 701201562 906136522 763981979 710258995 3503405 387336881 140189448 762554389 465702588 537315732 107335839 991891779 450486653 457082679 122352471 733283754 596464217 973377721 971396119 285259130 102199508 835657062 19481609 423133427 699103769 858077828 153227060 116247665 791244750 725308849 935413457 501007424 63310084 623717868 867921464 528815562 389625670 695493744 603237174 144100945 378538024 146532043 8650007 971490458 838276376 385130914 952479508 161196200 305502826 143602771 764576041 514408802 847349073 260166045 766538925 303622160 531234757 740250097 742055863 145597421 141047185 758933587 617188546 857496535 147926353 951091145 776247966 574771474 448751088 123054710 944452816 307572953 309860790 911286928 473428139 719929106 989940336 995326995 683323571 998947926 444643683 53437892 24574245 77498580 524025296 955112872 138513438 179955837 988335939 652817824 154211465 677656431 806426258 548653203 757486928 336189754 399994725 353395047 312478787 865000329 963391382 390701119 842169146 645966955 70058526 689191887 142826481 420208096 694585046 899478527 232609484 805881876 159469476 147845949 687694905 855004293 485999518 582336250 944062444 845117118 542780574 516675057 448901151 864477277 566703270 418566994 737992249 585804348 463266522 984906824 229666841 966996105 943194426 52289836 485135569 234474376 171976821 689812402 301377054 712709821 417443637 89288148 749413108 844165493 365121974 204978460 836849721 819816328 767572335 276769595 125935383 83329137 556062514 156012432 145839388 347586346 730660744 214661376 167359625 286150891 385134110 123304938 832411067 589198522 838103680 375395408 675460494 517883805 749793191 712293884 805891410 836871775 167404236 366350704 948275207 977923541 36728286 474440616 13685158 394275927 194254490 824429913 786455719 25040289 524656090 585543103 715188689 329520773 441578670 66665046 854059144 653639450 710957946 693774997 18001442 815572099 254841814 613390204 981608135 192535733 745142970 144478789 690708928 341596496 982827253 880444269 131842263 868617428 494320608 181050629 220801632 319738383 920154955 894112984 428903338 701048574 774037539 579012003 282337070 144055335 241008878 304429715 249574365 889213772 281700523 351017007 861850548 874077733 374206639 308504132 200505802 890028749 27247854 152372736 22840583 524451747 144887560 195040209 868798588 901853595 348655534 913457188 496813230 108329393 365984455 725892094 802604759 423272167 900804787 146201123 566397864 361906841 997773316 358502160 487954995 24483678 10215892 565360919 157935041 84635983 329506421 831945931 13111818 5738795 986659943 83136523 709349102 63192322 686173111 145579948 959816104 978446457 755429849 510544060 152815033 214479189 720201721 296180926 213032589 209573283 775210799 544600049 342935756 406398133 685513267 294241981 698004961 355629825 176713380 873195912 327909008 171908272 311243829 482877798 139734172 942469528 906239430 361415808 522502953 887386048 625498299 305976411 661037722 187294005 129945576 926512454 709678031 290026332 742847390 945689545 785245000 798692242 99582045 177485501 131914745 903743828 581607602 8903034 817125825 946203707 774751250 788377845 19353271 511545895 910364171 814117012 359883108 48282284 636116602 512092198 299190458 523344911 441451556 967855316 853231058 576885769 260238483 434985426 50453954 304557520 169912259 253827942 516894933 108925008 908872783 471858952 342625259 477703424 782170287 295418010 51282595 890412803 281657598 870552776 350377973 863880139 99758017 223648762 915456256 638666751 145234198 152746429 161533384 10531607 893298786 688901545 513358397 509211328 930753441 519098558 279275061 278251224 59499690 661006252 621071023 393494810 828893360 266949928 135172889 916483309 183091076 674372295 110552303 910443731 419080553 124301496 838975970 597101794 188947798 836003589 419358816 907393749 853063019 708226764 389946826 450207721 995270088 480370111 602985127 487648871 364495896 502836503 825592821 771204784 332677068 244758383 601582548 991330691 680513666 204451041 191346055 961581089 107048567 193940959 33565213 703125053 36257857 521830649 919528669 428071721 307400337 750770741 83711936 604016777 398142254 629127360 633709925 639528670 126662771 326971941 145489696 625946767 970170296 914109087 647143133 887132527 93311651 915488911 132025627 138768149 127337144 978143607 12279128 335103055 912137702 375939414 330245888 76691617 850523258 885839681 780814516 597421793 884466660 62081016 596911717 118890285 656516939 105025400 656937933 592200814 447575479 613639469 937626997 395882499 698235055 627415248 623388030 644973031 708356576 497831470 958490006 256500393 518784098 793112581 824463271 96934476 864485313 540618983 999879062 431967542 680835603 202614247 285992565 784790983 340990761 137065821 889023279 389361916 257384249 913416838 984504437 929465858 134201880 964670106 688547789 11402277 585721486 599854035 147294564 807426548 876163055 635779448 255334147 462753054 391514848 625363008 212497911 540031986 15974377 391693816 420070534 760968166 305519974 166242946 663172524 17455989 948791972 293939053 730647470 669437557 461549066 17954720 12798252 818837942 615585000 47244391 263134718 218142067 191888259 377948072 832879413 271827540 565691743 761306731 433628117 195047212 701869700 83629996 977268349 68067270 11120844 850027976 335583853 58547420 358182712 411173314 801854759 535984518 664764187 698867838 258026003 719199621 562143038 138533472 428251069 993448614 363190145 408375641 367784361 847409158 281946134 213675735 919438010 244100790 190871165 132610058 743199094 565414092 599161646 987388065 50755973 280271384 565336953 853144381 695765288 860212220 284185685 284944865 378688023 626922008 306967556 868996489 901348206 682829898 288055710 950222814 557605340 622548325 715229234 239815906 605545213 65722303 857887003 27534507 81002538 227148265 447203865 121130970 856208207 195863569 920684639 643271801 554324225 433810468 507057461 901876153 567412102 582927784 802465272 957854195 614426124 355486490 607466137 326510905 254639664 775370868 37988453 572604500 900937671 658961332 132207845 157431759 343818046 247128257 377500437 797765446 682091312 651792837 964458927 840694703 379548067 363171591 151177816 568202642 634942105 747607771 516726057 875183749 308684543 403179348 833423113 834877737 2814278 94456444 914444244 92738903 11868152 870597518 784904104 725209350 205880702 874291173 817139039 765077504 530248749 669489261 142108607 230288985 529145863 590619429 980141460 725410312 460085226 192562645 979542605 167777196 54199113 820155253 491809559 820688254 354109395 266745549 614103218 915768131 113317051 421953823 269996770 829217321 457205605 306805293 600954669 254283924 647154117 873247552 2198408 895016606 845362319 617345254 857608437 749308945 715660202 971605593 778807396 878624845 631386326 225794178 429046799 213337504 47150539 762543487 664500615 5569694 245346446 94328675 623870422 285144698 498303538 956077930 874993872 382723954 137526410 998588409 397695479 324753768 177479229 522142052 855479046 801026795 713651504 172845245 190544070 62065729 368696778 977562394 582929514 346410518 524008185 129435629 745719202 27809698 677695815 45147806 508180822 101486450 750550850 19812625 789463543 784497426 266427153 325414937 39773149 194098051 621589973 848384493 30157704 547835394 329422955 293502238 434000168 744033577 317150215 276278268 279119635 899992568 991318169 767294212 816467368 305173518 624168877 999231325 50730884 571586470 724264649 674524130 827087626 348875782 750379237 772430278 271978780 468204310 747487697 963845075 965866650 240924386 674913108 893036387 374653296 909986320 281520463 930324757 354847240 463136762 782764647 203992929 608724654 843350325 288937906 200684775 839786278 589642163 403894830 892842033 58779779 555200188 950448923 814646992 125695277 289261005 795290116 282476191 809041008 665966579 980610167 24366018 871640897 420584423 388180940 566305775 242323222 638652249 832150326 972090849 790662877 669079803 743584903 51348841 734833616 366440802 99307483 432394591 239772853 656861482 634023366 345955317 669035214 551197242 859954397 389208958 928492678 944982624 348036583 331031488 807511643 898418166 660402930 125837806 672130686 353258175 854140156 879269433 937234807 221615731 1929042 300961655 783304539 485128765 493251828 878390992 239531992 390682155 541976589 953895025 897000758 730025855 115681383 253139144 989069756 191901211 339572590 827016267 761972135 301388435 551803792 244607286 103306549 324945798 679797728 482009456 892297853 739768072 990588245 11489865 17024583 439888050 268102804 575265401 914881150 917211443 366899748 716816908 6884661 87098665 792351504 840105908 449796597 287475649 699686377 912292907 160659663 863964363 362151848 541140024 664730980 822350115 675685300 8525278 706708791 681059094 17865005 377207983 886863265 381364362 506837513 780451363 680734060 83367684 263944360 568629708 40914472 145582881 468592558 671927522 521023440 758991472 531864036 534030602 591642927 88653069 921570879 643500466 195681094 472699307 263509592 83809282 209200453 892979788 18855587 179652735 121842851 288699517 592002234 649549778 830041127 331269305 232478540 149396124 75969331 879188427 655112655 348805283 29690769 302208548 787420591 109144626 770135387 94936638 157867993 694965090 273219177 40477881 396747576 94318575 567144970 986447205 587546385 321996570 894319872 535370059 608855665 527027208 98517002 561057387 524151212 614979944 4202937 910756454 690568386 813250958 963494522 11708058 209337475 618531350 892251018 605518930 177211959 289332504 517929088 375779893 131463638 550598549 119336315 465790686 528375502 436312483 192563442 809169620 416458715 335359017 114422074 621194562 192724266 414770219 758819806 501735724 979867008 199937383 25521148 356982289 128380584 269220327 465810159 18069884 197030916 365406110 50073428 312068679 121165642 359252964 309273275 398467031 64854547 652444759 299277822 671904541 777111734 383438639 228929223 821995786 390297225 625231150 832153563 850511325 413624530 454463570 679979920 557665436 625737100 530423820 482965144 46076500 900433748 541695547 145520937 752988721 378351945 780022561 269918678 145653119 936023773 402641108 91697500 209927635 484857178 923568524 680226451 97355670 998505078 181377335 609559800 707630710 453460056 561254326 215461538 675620105 108647377 369687794 405071241 530765206 723383489 539121788 502921436 743811162 866746267 739365863 206168554 731027251 331159063 783579056 530930061 985894716 775815798 724972485 826262453 997024967 680249953 493837871 604175451 449567935 979425422 666652367 345480713 455377523 889329045 792411227 680089323 468854249 902872269 232426231 456119251 387640361 839819353 178659464 609556596 829032045 47214723 899456452 760575271 121987075 669737703 926971603 918700848 679341595 135473451 525332651 681936767 375226943 92316469 322379467 778080602 696583702 118812355 673541687 334459712 509014706 252838670 337076586 311400188 236585084 423664017 254925109 545001156 196983783 872467029 114517322 387422201 598598374 354582604 815515660 371054391 866955189 268648908 897218198 357446281 500900013 1729123 212565717 834556981 879770322 167987157 941710879 992491143 652736931 972448181 536734668 40886631 107944228 81756584 824593059 297413454 757439554 706555906 591184536 222966948 459625837 538641906 532876892 503426862 634745460 384307466 703823968 182848128 731704404 922324190 128980190 833260036 996648731 68986630 977099778 803492038 691014755 328779504 68170785 874911962 849873283 111916468 573172968 563504677 896224300 718400503 482562142 36776077 823469224 459592591 950102863 169167978 811701959 86053595 138734220 165399092 278942030 51841413 380360284 620177121 76408057 803065539 275431584 735535047 41630794 291446981 1003209 265042351 924654466 670543182 778832995 946681066 253589261 789469796 736348071 888488764 608456413 253363702 683538281 379198875 317702124 353579768 938647653 962813447 791367768 251258901 168146319 436187487 481974042 760379699 431905104 393894566 955318861 92520409 121594073 959319454 972206096 303842715 629850898 861736116 704823745 662842701 195259762 378578612 393179737 851367906 633834765 278014670 309737220 913643376 150862764 520040252 366915139 711080574 751710116 794747056 210619035 404271995 186557529 553756190 575059862 208914516 381585630 559348582 960692642 754895780 590242969 136729111 844664765 832111374 247541807 283383293 13388696 249711676 221661760 465654318 455242131 289226974 137305871 76639061 872724893 263822154 755007909 730560118 815851045 179204809 907083016 563310845 358206654 355145003 676375381 216036234 24629727 688243474 232331134 639905583 961260004 204760158 659544574 567321494 488419950 416288518 420623489 575825579 502108545 144872245 956977732 822418597 99035451 395168899 96216151 676312278 250444291 627182046 173123322 749143875 942956591 410512846 978608679 729392156 677331307 485099674 223222965 871402056 318025068 737492581 404368511 340874366 569873644 482539546 720403415 328775819 382285061 296475510 68168270 339001916 937890025 306369424 194609943 876546803 298318455 19222982 163546652 513302043 58147221 110147720 4085157 443745178 231849438 652783997 66532230 420275288 216149874 67949653 456347207 142858742 573397043 147301434 517758365 937040517 332770076 376804171 655310813 141233596 231311089 340698848 966911545 447349503 586008424 636021598 830907154 942645202 338765050 568047564 314904568 21444794 559218226 392977756 563836704 76781880 173864532 772213932 892405830 695189503 758487915 319451101 935906199 16706412 819656013 697789055 196976537 798861526 838652727 138277533 467247271 655924009 362603530 418608830 84468250 219991869 580882145 687802484 443407328 861990061 748901615 65061584 526990684 653842694 752035574 714468802 825502633 981876265 984695220 814448014 51388397 934326700 991897353 298237167 953991544 449896359 682031457 18748474 465741076 232580534 634486827 405642262 690598403 480599255 974217138 763550649 236491422 872375376 652236315 255582311 302677689 257476481 698949128 924700663 762045898 111531562 288452547 448179017 483662619 136110981 617357387 750395286 129669773 808740985 625095920 582757874 662443886 471995031 919351865 505190846 717197436 995805766 86919844 775710164 762529964 159429499 614929336 832385568 490917764 482291607 979500616 77205512 973413092 752523131 168224946 472786437 629063059 20960734 342063423 454677726 874755628 243540618 179955093 291244406 32058932 64022813 889151927 249737495 55482453 948030949 392936583 809474094 169892619 334064458 736219782 375556195 816122985 383773222 454621492 868160866 88844732 133266540 894574821 417210895 68891376 976550157 612361734 139429839 602112889 413543781 51725364 329736970 836339085 610510708 154222196 567242171 65421251 756853268 685915204 671686024 223092058 767355842 215012770 791475360 909307706 186288808 623982796 902202515 458191169 353719266 660737232 826083179 809472859 473204290 249082723 535167295 960675811 749682151 813999107 406037945 747868227 756252069 105453103 11539306 562361646 847238042 737530405 307859859 225262376 381181902 887005156 344646670 127306471 27908665 643306011 979966957 924307582 228056688 372224559 71305472 636775183 469845608 41792534 4532315 690512990 259841883 790095053 567081055 108668097 589105511 805414720 411073772 749170375 388542634 637135588 17278983 499443679 257306733 265395937 500677336 166277760 599629383 600799728 364072368 127081269 663561486 259882293 437755750 938619081 652649554 127036670 186620797 752444032 258431863 100179283 373861885 405168603 226800450 747207338 131342268 136615828 636574247 924123310 477343064 710113388 614844707 151016650 158785502 148208457 308001926 377063004 236161754 759292738 985623260 367744839 611307356 598387610 546658851 465168512 186118037 13851420 878145970 459474138 310460122 693545049 283460175 331161464 819345130 664570666 650270099 118043354 408616996 187202312 696532760 613498032 385841758 354290486 521451001 388593008 687614551 176748030 971619932 135855154 34788685 531424051 213765978 128598043 836422922 169060890 56348973 652647933 746638077 657989127 397092572 334382398 900935403 279972413 623542554 784241421 518706874 271262684 571436134 356229172 918408374 327989116 774872110 569858716 364181136 241662600 792511703 546119098 166788009 889063065 301855645 585465300 829522177 938394934 983016661 120047404 626737054 325218098 188931596 688324337 318522907 755548232 335023334 358619304 602547984 656343355 45268776 888103494 536351638 498200810 630477346 789556012 539003510 690805882 381602178 411816064 328905593 489044069 10060714 608874074 229055698 575364275 729194856 568748851 903052860 795992888 83417015 827046377 534519949 985932818 47389094 192515149 799756690 18221620 566744711 939221698 991303945 75813879 750958452 366895764 92634441 235015439 747264096 827241378 326829878 610336146 889391292 321414194 629988411 602334502 16443766 307548502 435667537 3156700 467690112 270926780 860414582 16125559 279000111 94913944 636109809 266137032 88636112 614715196 347394740 801938617 36620194 700969735 504534294 296438453 276960368 31772237 619813355 704602745 99539041 837281121 295450127 918519336 892143910 458791840 187267049 458357745 135039531 790057923 192411081 501527843 527477137 988876127 256110515 115725490 239599539 424264840 466582809 109991470 606668109 651468196 243473902 684501651 823553931 720761792 405076075 962227751 504066279 173118054 238334785 561556821 744961246 430119932 637493904 392169259 884727049 551764990 549506725 663229112 556959648 374055861 838806817 127065949 832462191 360865662 761695716 555090093 96126824 314709766 84062208 819499542 281245934 255961804 545271834 755258782 4617128 376741219 786631935 187621705 930007372 276280372 710959530 282787574 74026510 597233305 995655748 832759868 772966677 293181274 10662847 164597347 651694633 208075023 41244175 362501143 47659511 600147788 108632212 700096939 975253237 762676160 150242346 137998294 418386299 450969186 723144438 328610610 281200606 498226141 931356056 202868544 408480983 538252187 820191207 858197860 698451092 269701401 343376774 853545749 114551379 877531609 706481323 72653619 970104841 205389006 484368929 360215186 388044384 447898910 917224818 790054407 663272744 203951726 677939961 305529462 884233568 89444143 275103677 145858406 135812256 688141170 860891601 693215979 638108917 22867536 1827504 44100513 594492932 137439533 115817922 253767781 704526713 871368171 62741956 482195991 615585644 81331570 922839100 817365202 493378827 284155897 245959889 621120018 12309651 402917108 795541173 968305866 128012550 6643167 842206567 29061186 73080073 767961639 107796787 844655080 370494614 72856244 113292895 238795865 601282557 442940329 469997178 842865122 118524852 791678435 591564750 739129189 935129129 627942178 715822319 243931120 671887004 469054530 845014569 290940458 915130719 306530484 678588068 507944208 468458773 435177308 236321962 715348770 740822771 386228649 794084313 638739402 579828597 336598085 770811164 225777570 984699278 745304683 848942377 489277183 22492846 172245554 39252701 92768811 712344773 778672473 122724812 155151533 178172957 651252362 669739955 170204929 829363142 541709308 748148547 584607055 990117800 622766017 920855646 930313632 32261311 587288911 392579162 856932540 321529468 256024835 196280905 516498126 312184182 28192510 220780515 960533276 678936309 929800569 821268442 964403557 58663796 625071634 423020037 317226207 394339246 18578026 685576310 56764041 750221221 927255858 113537371 256768271 289239440 200302660 989860655 659200700 759532947 474236934 535774869 944351708 61674858 428150350 555588209 267533828 96186536 594282085 47952824 544996173 651348632 585658008 259988016 559740279 969828388 22568675 830188519 792343004 493268999 540345757 537976522 360446800 326681023 661513116 560769039 491132812 1790713 265033783 710815695 223147112 38149362 737286282 833611939 675614645 759675534 627099385 896652474 776949747 756258216 303242308 414959696 226954968 143567916 730163685 106218741 422485435 419280842 227429316 997026430 481169785 842111796 992030259 506538814 940662503 511145827 374709873 661043226 752572765 602148424 84049937 108685490 251655247 43641095 805408598 396778114 799053423 633121101 809772170 566086433 419578392 290272209 184614572 293287248 17948711 896652183 85416152 825521734 931564607 285875102 331390371 58726570 242581817 180134734 816043933 869215058 219108884 842328003 626887727 162453070 529900209 406223849 124970892 597149218 790150622 227209137 537789064 221321805 731275921 512750787 285903540 885945185 426464731 478077490 921359683 448636438 995193451 873635023 768061691 532364712 49873169 281171395 149396330 377239218 692176832 657422407 682563623 53261291 250600092 852004094 859750658 564248289 997246101 288423116 134808841 357796757 324275433 395309089 401135651 660212554 565323884 432828905 405716085 247412146 231577590 726818092 250354877 82474414 437580742 956189115 542615325 531414976 472340390 950948876 955093125 772570871 115927640 91779979 5268812 688595945 456527585 739240450 336006410 131193271 263415869 778456775 71346264 253154948 134110203 806516320 872634365 82156417 652355835 199652527 630209803 328597537 952553178 138073982 744800399 843448914 634758029 273332170 658290980 113143327 827583727 661059531 85965601 46969568 905523075 608463445 423493827 763357503 654222142 352591916 728799637 612844174 3730520 967379339 888998548 304114920 246239256 327409445 344065833 114482178 814605549 487871165 537308659 542109362 888142395 487489187 274986244 621960404 372745405 34702700 656008669 110023533 588549319 132777883 586996411 817152045 768938284 736429587 528440192 632314033 889444700 973792882 182653389 852757110 365123660 891543649 524674427 689127980 889943319 815717565 20774627 566903956 466903383 776289668 965319760 613521736 302993651 616673069 601840992 154536784 882835885 899707268 659112585 799816878 594628673 349461783 920486417 922537355 503364328 13216774 902266882 907681991 326651383 171374080 220755616 805142555 858788606 822249205 866035936 762894244 825703701 784091673 721938644 896270086 560568780 627077334 297882241 202890329 564058293 91845619 770878786 258182882 184511976 563584988 446515564 129820786 327244900 824763276 984186686 971039119 757288408 59631615 80473472 573572118 689453923 325282831 275707357 311411400 265412536 775171624 844778789 800732921 524270188 856874957 309189867 576951532 81224381 226540827 452234986 104547897 519615527 272520497 235976444 89768262 649707459 554824121 329641524 113220045 146111507 522295237 125867418 930354573 473619552 90717695 708485521 823286983 102984484 564874400 455853036 661894339 872312754 874425849 508537780 520240034 938725179 320061608 827167160 45055981 630646565 811276745 416628538 997516036 855790435 558468911 256051143 291199902 585673214 688077923 948161430 460016494 429687880 139892613 30566720 698789690 890988012 755925582 628390537 174488650 551228636 448037338 727480598 902368272 169992532 404842754 768610757 135563615 740196032 149075159 32658367 441580110 429439650 877197302 598349523 907309691 512958311 477425579 248072841 878098631 450496917 853627536 545575235 545488492 646733429 959504006 846643504 211296345 830022970 616811403 404561091 570631115 783938418 566590950 348603311 469158747 291143015 572262764 812578746 940387213 938094474 732083153 7940805 270074833 591865179 580009099 128861115 362155438 756479025 926174147 586317515 682118832 706694597 559240126 415237517 213740767 120391117 83877960 849545609 95149697 28222412 866399641 970386100 823873873 344867542 346954263 423627667 765502830 629964956 711885917 663461242 335577211 329908132 941730648 536406050 380244575 428954943 400840113 633234203 823182611 112853152 782872663 573299308 395299320 84474705 393422346 426370304 139509119 74316913 480027389 825670766 904522243 415953356 5783869 365711103 457690044 689371572 372252074 391380198 471941933 879447249 513082768 422717578 775473756 924043192 751282464 632557954 672981249 359710889 2842284 682389878 664493083 870833589 193431148 983651011 335494156 321222504 89388087 125091069 1761566 442324827 681573118 544395299 679277564 90074557 689196113 44640077 284280791 197493965 336179736 821096622 573495114 929970328 151237330 272523758 792315035 125726650 714625207 992671372 696981163 74001674 207099947 474648191 654616600 245912856 463458290 339743919 829239099 181062295 149079453 946539420 938620777 81937736 524487871 646729478 827164230 306071188 740614093 457568302 200437577 361222211 186455086 224716056 812025718 508616009 21724203 538647876 504841591 198700733 662738703 38266383 873127570 116495291 141859917 434414142 228627509 68334537 806123291 24784482 465783776 675834685 395522453 532196179 694519619 503538482 521701109 891595397 145172207 318698127 554597128 210111901 601444868 1342181 969949293 927183242 558271672 669821645 89917076 945672552 101300083 665515143 55110964 878574017 594041246 183020014 558819853 152569999 720827267 61022002 440314627 231853185 925369327 636817450 518997766 789331571 823905603 67869028 486600585 511138924 886881611 611111807 39886105 883963480 267056718 908889141 306632335 239468289 892920172 333836048 626242789 102526187 959781178 290118403 559603676 474511726 768927189 743016362 356463539 976832837 322937900 377288444 175491241 56540698 477289515 525893392 399402593 935112738 395051427 122681273 729873052 754811788 365995658 327462705 904134171 36223499 558567399 163383837 11328208 411386519 253274221 934184618 834692886 533908734 7210596 166942009 68769043 197860877 684437103 597202456 914209185 223998314 105158116 642442200 565683460 166330787 522708317 703046729 90817806 370387262 260807909 571256865 657559139 914553618 147670362 910173014 340341692 77610129 752728881 470936110 555860774 85963027 868798740 734949068 67529054 339416194 461100989 100804727 465735532 383064241 764331796 831476341 711520135 707755049 895769711 157715796 363216615 614848764 340986533 422207290 364582719 715832412 773523290 602897096 716820979 258825255 429716199 24662612 701281545 88130372 105727734 489101228 640856718 382040697 667174979 43702737 67021555 456418427 451174609 649803072 697394570 317632351 366184021 896598015 147493713 639424052 7645571 981899245 451601666 881357758 316253852 710677579 781208411 79123089 387547150 512488877 56058873 663061248 913637346 69227221 882240763 734234320 79472010 807947935 790474074 365572969 150807023 663803970 11758954 709683908 734252765 575366875 781891424 11544398 23022092 738691481 149447666 573541597 387618849 61500621 702335877 645132078 154869040 118981071 503193441 77091562 211371386 546234947 506586341 284217968 553777797 330499769 111600092 669146349 246538090 36511999 925233709 200636661 185168401 643235979 611418567 94337712 137981174 83923259 613688862 46827910 250641159 641720137 596605299 142905059 384696389 268345210 457275170 210122145 668846484 947070553 4840437 922360476 571317044 200034509 258061131 734285822 466277084 898111888 485876676 326968393 879076963 383178748 313949964 430958376 709573562 438541177 308931826 774859600 595793630 792808007 541654197 14030505 41215988 46731136 503870434 666801968 260320993 462261506 211789725 895128066 511006576 418899562 424118554 551793270 83865957 645341462 235828299 620553344 401645474 525808630 359702698 507436337 997684664 141858817 132833930 636586409 465739356 396087843 802176427 165055212 400259731 857016005 972043977 324994728 327165964 898267164 44600537 729065027 164605949 580856246 616444035 141447990 989382600 760487058 481741348 498793596 899131016 731055086 234708014 177030526 940768118 233146608 54691662 7268418 610672978 108555466 717321201 921874097 818871669 229044482 709853229 593140764 709480681 739273948 109312614 981197290 735753222 597632359 946979810 490492813 347211368 358262162 773703645 264392666 63484220 530151860 649277885 459561166 256200065 740151259 57690609 96123722 787093866 977557103 456343946 346522047 293667952 868278738 456705122 145380117 141279937 775302149 887454884 279960008 184611952 876633701 816422684 248156634 641899535 143507106 661502018 664508158 878256225 574739154 364843013 292229293 312509734 485545031 951458856 311285573 695436903 678056222 761997366 784590510 713896450 827532516 547350294 400676207 247597687 292208070 281383307 91442705 416467176 752075900 431450573 107832929 81913038 188035281 343434668 876523280 316904501 176386158 67892715 892355539 287285114 440939897 648907223 664444883 873905001 845925094 619976134 166414731 435777542 108272472 332634281 946709132 711449470 708936141 344856778 523688090 48332975 509735126 727161884 251640617 215819926 80384934 259044245 506966978 451460249 443882393 781791644 584103496 583296776 355356828 318468055 467455887 500549500 467701574 399229373 791797265 645004704 147571855 953454819 511022629 170624065 704137872 11135626 709242465 84187656 778974675 742073582 227287522 226306669 628822422 502235307 35417839 124395014 736977273 368846311 175762701 298143943 793614057 304194307 425667722 869275068 748228069 824931794 591522662 401245135 501330665 269065776 816986386 190055750 772696515 450619451 578384669 964495295 835656461 629438192 48670909 484103454 791297282 419155392 965791756 391698882 207951184 483324830 64849717 237536951 60639314 39741074 871273729 738061696 981119235 327972931 478331085 690635270 134473747 183544532 233784544 194370603 486125151 528400087 964235518 484057580 118794140 199335909 385314124 651502795 167254956 935763896 884617637 419638694 920134103 171264131 38758249 412744709 33500449 235657449 867075955 625072610 93666170 828279758 966284465 314804744 111191735 324662589 862821949 131425782 241061476 574951667 9048174 942061898 420093929 232435741 495930181 520329561 708814292 340951755 293347931 173150407 481481556 285181652 34903450 397984135 719583393 67497232 890180029 829704079 164248567 152748090 114932503 90986996 674125620 792673984 474568019 850295928 995732850 634126898 64787780 929019815 921950429 987089640 350352695 465720888 594677666 670650853 985811306 479272340 414022733 454508508 100203580 425437335 511277469 562153586 627128175 412852011 795485020 826047412 177516952 461545527 818511408 675196210 579052587 854830932 206011128 140942387 243340624 375406228 479607190 310371004 596536051 799776849 98850201 623165731 942589419 361810829 689906285 938114259 559244677 407103095 547526948 537585174 719872014 700957640 618693068 442072573 898154652 549025776 733156830 880229613 982037930 878784649 733957069 634554091 685914509 238336110 235086626 626638107 263348380 353637627 380425875 98257974 551240443 901032546 802556190 187107306 734996857 564478405 17509859 12024032 293123453 703020061 262818274 628919222 413561033 938029891 634182369 217931160 16824437 751364818 388429371 388179513 291380661 362349053 721586011 436319307 866042050 972372203 744192807 844832511 905061574 789788062 692430836 322485694 240193537 375799454 610605545 58591084 334040679 747941673 101227714 5430758 934518820 438647545 791653547 359952373 579734203 166892215 211491070 929822584 126485605 348900244 626700743 864930587 560358668 988950365 947507007 289544625 242633214 958038017 236016768 725837281 17360819 166774840 766291566 127071042 221242734 888900654 410998036 226494256 708436858 88871631 841389148 59437854 543050362 35313841 669779305 342315243 834400216 247845979 699674406 79117051 488963665 336059364 873159170 25240763 275735592 604487125 21161573 612398535 25040255 262613148 667526046 614543369 566021110 590688490 40634222 49252235 364374334 126983502 484112084 999189331 904605993 621376747 527335947 583916773 814316948 688225850 872683082 865610495 367219302 376852545 690511595 818906381 370390408 593326287 173772894 777170778 664627623 960025481 673834856 511122408 799399952 999124164 973987821 279666549 403706142 372907472 840851169 899355565 895952949 44801716 895555596 302498444 949726702 298186414 98979682 609989741 202276953 803786240 870036176 78598243 922281196 70684324 617442553 147622150 515800853 87462102 442444967 109104369 314395851 940477443 596998625 883556699 673916269 499163472 517969563 706189543 214185626 714182159 945777192 912690458 984535120 612290092 342485826 213486164 441616066 988854607 811485170 504995814 561981049 117327138 431511888 229894717 42406893 392715015 330532778 960080437 654968401 835655312 157097892 786937999 468848422 12965009 406174780 73615375 562644452 402294839 184689970 738480517 198605773 793632759 161243076 474375483 90107520 523748390 572390760 966928257 979869866 284140442 963474884 692363828 982343249 874750843 910144133 368587500 302626577 257716229 301636509 21686722 268676904 516577412 405855740 535191048 385938765 757322130 733271998 560871601 485975189 331863272 238910262 954194359 771290603 298183257 779158887 727889312 410590038 417179407 315700981 244746067 322654307 320680441 87496430 771510934 685704083 931579560 755819771 830188175 576364540 348266114 346360453 376793876 643684981 845142832 744106022 13399324 620680979 725814207 957965712 162402818 755894585 536073217 309177027 236543540 723357707 50927256 168372299 368494751 417351841 904585415 32270665 498090285 558560493 61900452 824047346 541176876 72596223 357092033 999571606 693850474 153664581 432388644 905562886 460839250 845883934 997604912 950554570 654681001 669624985 204372560 729030620 15945763 404092526 259895065 512862612 254461803 443622983 973418977 756783920 435441883 276075444 456459848 709486786 444800149 183627638 842308093 680957055 929511654 734550603 745209428 330635274 203376931 474829431 247465105 703801608 541238792 640226328 362243586 287917495 168759967 249197916 509357060 142660176 565514011 26286955 987651422 674853768 525617836 264274105 88994535 420382384 130682572 258730822 914404540 389582230 865798915 565552048 561512185 553613598 159353624 527307073 66922361 956780524 762224403 317072277 949913824 784216709 793168116 747888297 726226187 817209106 410964458 512048957 311229756 615994189 401828585 268204399 30383675 472405043 657067040 178937186 96834208 334576929 904144697 135437794 783017160 483031568 942143259 430122096 717115781 369195787 449948291 334490362 973122403 666719620 656068525 131709375 40188120 838240940 913778378 504655281 415573821 828229608 505924408 596782939 556320510 766671486 947081034 304095589 967032241 704199868 120470606 302603746 244902409 67499153 832963694 539251757 360765437 88712693 517850153 9197255 850893756 498228061 639882910 684425309 67108111 299772880 509220322 133494006 74960599 257965199 394754125 27439656 698178081 97022178 760723197 942284612 521199839 156931402 289538668 429837545 688215411 179489635 370428940 199855754 247562055 894290569 163857083 263660690 473479878 390763966 355008189 373759642 958980458 18692654 716563997 140503610 660410853 416934581 659307324 377831097 667845283 491411858 270699559 931853070 799195662 156274644 920552774 689753978 100560941 367793169 628777500 51641369 786688493 699512721 882813894 190973748 335834719 41873372 268568294 149379409 392646046 128615584 761843359 741188509 672827278 114347973 464234883 63225525 603704897 422863912 511363313 208891098 290022659 354021957 453899365 376125605 387117888 128679123 673792731 943967640 121434662 927758185 278295953 898731293 420753164 416088555 341434979 957587233 765955028 129409376 112451718 301239553 418404154 696531741 750716071 165321483 732646583 43563684 853349942 907694633 812578224 198819549 694336452 706450103 267682236 599705659 240494503 96793556 886809028 856340850 209655369 667258668 188606792 529824212 92229888 316762201 180518008 726333747 619191707 470994516 549290485 608777183 204623396 120520199 212795419 845719639 110002684 759609808 284191003 15373156 592291218 431400560 789672672 171198468 78368092 744871753 327716547 473606764 214568136 610997324 613403021 122434004 548788738 85181419 935617435 633560259 190129351 660045980 725168173 317681111 920793083 266236759 388157118 507813324 480156959 575325036 341939657 923238891 666560051 939816716 586654978 836320588 869253807 668361595 193652355 733337611 187351985 760810364 820197715 58240656 229437780 721415524 697252599 449410526 57859194 398487064 72081856 351971627 797546682 489022178 414482418 924584748 598905011 399624607 826358175 933708408 891444518 933503022 772389139 885706347 129623805 270787191 718015576 527475700 420873654 913485974 550887970 688681102 205270985 822026325 339297641 54406319 673323263 445841451 855179796 508591618 907792484 824426550 365432225 330160860 52318902 147458591 370432559 597990841 387100926 263506283 829784708 790932376 343481218 758715504 60848741 771173602 443804083 900117794 411514246 674097532 747624840 419030905 98060034 267512507 384844445 119954983 255930222 723561460 141043928 240991278 201826301 158638654 745579772 25874079 269328352 720935633 52816372 890976500 471588970 131321637 306653780 146676157 662157420 630959097 775765189 102503682 152807155 963275373 28224781 621571831 192906510 545713032 727862124 586013412 191816807 776176169 317464708 985293899 3265917 762698851 977510708 225622710 726701276 72619000 313571747 265280222 546043439 502252547 711034451 428337952 71062347 239204107 513072214 516637840 867137353 853698990 525258915 352978473 18490293 797770445 155755648 852043323 585741755 926267977 706615512 392104429 60416406 545403377 837909418 124583570 151326638 545478885 906234517 548461243 431127989 728546590 265596690 858582328 622714328 306231482 562935109 639494094 570387497 728200039 931110272 781343785 529982304 219083400 473824040 300810989 677514528 138164197 378148835 769295262 258621422 550125494 783770772 892785825 356602919 540246159 558631773 904073526 861033933 747366660 106711088 464084461 420995854 604926229 109550360 801571164 602298474 184589595 738555350 299756917 241187466 439874198 449613453 395997427 937846034 344454538 859021474 716931408 819530192 422011629 942505839 256348469 220704250 623053 950827202 115865217 427123742 642543767 317801602 142266045 840528167 165746034 247701976 522626236 903986080 264373853 513418967 474712784 522548639 2507527 161103875 925202767 207332535 247712413 667085771 892695221 903071355 618744234 204967642 957348145 631357228 956895312 834389819 453262356 891406718 740952310 5281996 603308186 168868936 267908091 526917006 756692997 521079463 115327800 696732282 308858973 46526903 236947157 152366301 438396245 253022249 498253640 530843015 174972666 121383644 583839586 665427182 135841040 367379278 911997551 979194853 178067164 433669143 560807761 669898335 568305118 20952588 290517075 12242150 30586786 697875468 793854619 840945931 852393884 412556526 48578078 394704731 893786204 445970591 347396724 826814178 581861403 72826550 162698181 162278052 634060536 648077997 245664620 27113138 485544140 437086554 266824886 191273049 1497074 284996813 488965174 365011911 816562710 772293855 413826083 873879081 908397731 333861920 445662943 806906285 143893262 724024180 571939039 652030168 731667192 563818201 554581775 847132221 487602933 117552696 256039538 166001155 680456729 975452234 869553163 653807651 296764778 805642718 687141178 220976888 846659399 86758344 944424902 118770774 735620297 517609237 378936051 814058527 470700953 846557932 371779537 177197573 267377347 586017215 523546172 65703843 673178809 141304340 460483386 486138598 278324108 43288227 909283393 310868535 680847280 250959028 968400385 666995042 881979181 173674497 397157003 129417046 873617357 842709230 347820978 48557185 999236237 514822280 360019084 510121343 80416974 471361624 222554494 88499694 817097877 372614151 574987097 451145823 826910107 51000504 146736421 732598626 440512194 721574069 482504320 782826272 849946434 266644418 208890506 637124855 515675487 961661006 509325162 580287532 531118664 529644546 442508824 213890511 858981652 679799275 360489321 852842017 800142714 206244403 690137684 642003359 616985842 355995181 101179785 644599252 763526979 508419181 358109546 977656040 878147494 675880314 391204236 726791772 501030598 176494287 852204954 244231323 35644546 722709615 55510175 793988370 887593740 587951083 330428759 274373623 538850791 546945287 859893415 311770316 723450764 711492154 242937731 919344061 573758674 304423582 45204835 39484899 780190496 507799405 613667678 901371462 691443116 355904809 258867480 94876572 878096273 698012719 278463102 20671368 30931912 591005740 384844856 935036888 330963680 908682302 307442249 44985852 848499497 219813953 135861164 978394905 95695103 818821549 128431329 597694859 159849734 606158723 851977688 676526632 427757741 216544840 608171454 108152370 257747611 625994855 980404281 449867776 960664993 299119116 272550287 481708531 30125381 48371310 122749426 286280465 370248513 983114921 656087738 17492963 927454216 484236782 890321883 797221989 652806355 412832113 777302477 842361662 452243210 283667361 680930587 178023322 905660213 818591384 881430053 26618176 805749551 733156172 293193818 24859197 263368 61613721 749162082 473664734 890732462 66289113 811290484 223825509 59101315 937054548 340903754 122914527 230887233 706323918 570995232 925748875 63261297 633594773 136993310 398615357 800264192 737384247 422436765 593607181 764317760 122239217 150717081 441859791 489068987 634180050 375075567 53476971 185562260 982195219 221068620 583139072 381406510 505020739 257887095 433317196 500419015 996652340 683402672 928089242 949189249 359738479 860902425 393696485 623005053 410745048 36336440 288378955 939858786 842929043 275603285 305874065 402003257 441611478 359336190 610747417 762663205 108492581 262647510 893024210 361664881 557782048 844067557 642428860 796514946 272791793 160569691 126766839 748149489 374369440 975579974 945350497 131191200 942758532 611494070 371935098 723773288 125857864 288023754 428166840 906230510 447676920 744000572 387629721 724619912 285423382 323893860 998815733 888844070 186504657 291260313 876738022 763356004 502561231 773671900 392048415 411496439 801083030 523016894 554776420 232364173 795992666 810693390 376715596 636712914 488876135 103873642 202369779 113988738 355928567 427497163 131412713 477648025 383044641 257245257 574397784 569334767 910318642 162377408 60353913 947592145 246809729 172139839 275614081 256843630 399805936 231034493 456979519 817707572 46384004 809414911 646098792 760331987 69390830 662628215 791424909 613527315 734796668 811775898 780948710 639996897 366937299 209801234 410183643 271549421 325126867 148345709 962509209 114902386 967077412 157330343 335981480 530807583 917318530 590283325 198577094 582868808 181551572 133335714 911687278 884077381 655752110 219019183 870234643 162069501 401270229 178802345 285086036 751550296 208116760 710510709 767889124 50063364 677574191 674497588 102592562 156627929 591254019 532873627 872253960 942354618 276782812 700594047 715356151 975772851 123573413 376278131 550677090 399021566 825034329 869471348 127132707 263257752 18292159 950732266 789727110 990303223 964516135 588714114 537592467 543396882 846386064 468710003 64444543 449212637 961596380 257580595 47827886 152948310 256294087 257356540 881865992 144268180 154308470 24885881 972234767 55326361 61478107 17273646 162483402 868572156 201687795 566043154 581044941 393253245 447992636 517733749 873946797 819859183 308867213 842254397 162673472 487045224 950379472 828607044 655345596 686878856 358200680 264732699 639175448 70140678 602584084 845065661 407053828 439862215 164746245 512225941 292115659 263756811 666123918 894654207 233125449 169862144 771766333 296878854 751289972 795530987 746327968 187617299 926858302 235049334 970174709 81997581 343340078 921248829 477407799 13369802 665266838 74543922 798344130 676598259 737202371 727382146 625835275 739746086 865642956 208099830 783375765 319887075 646189809 373047397 788998470 492365168 696970721 39213785 410489417 464440904 86845243 270521830 641956565 63005871 160819164 45589130 146286514 436813123 337772809 813921988 60790999 317833618 656281379 809267563 756827927 451819814 994659779 681937464 148686435 619667183 817037325 431990121 933775834 556480236 675337228 128475221 842912119 695276680 147960424 175670228 119918194 930132139 547560935 614784192 684871258 615520989 350381675 788426627 881614061 334406405 412185027 580318469 921977807 770665384 315363028 110953833 280604290 856576094 437593668 808430632 727812460 254570152 941866149 381953330 858168083 468440647 844119865 369236264 110952541 305455486 955998071 394751765 273282793 640263319 398624929 219578345 472653249 499111253 399078627 210275903 192611540 552124467 507472282 344256779 628813008 269006430 430360350 775894475 178584255 276078368 175490673 519045864 250626083 474322123 300307656 473337473 712712558 860918632 96719752 979149442 339442531 835669138 614715386 328707754 319734984 920419802 748305651 458289585 259846968 278538844 217169969 811461322 912478836 311982837 57118006 62416561 209973759 764619680 377869421 271674419 416577782 248011772 110839713 993628229 784772057 730648180 231701686 747977296 502548873 417840768 953272040 90083633 812770464 15514887 822542998 645607494 83559634 99589271 872302768 605932971 201124800 964240589 935195986 413848742 106287200 994671558 667702862 892548821 377295557 94305040 857209007 183421493 231005935 663335014 761545600 628244668 491045805 346455258 230107132 23805085 519280387 65329972 78613060 615104955 704968603 76483530 862006208 581287718 886309890 927107626 113424609 362481975 114074275 893846498 921972193 297763997 869396069 906109916 795952737 502022691 134233533 432889440 861431106 967678821 60698976 975656600 901543482 99995307 339820955 83850922 209218213 721429931 143571758 755873026 124958962 607556174 208966299 730599044 346466932 563733616 811179906 609009426 635615019 286304868 473466995 973438564 654671546 429718644 561673742 357455477 448762933 18280982 388735005 647602049 746373532 34398586 982896677 399836828 546888795 591866766 152432939 533681182 80192340 958261110 40273530 270523295 905986447 268727733 431628896 657036940 281568829 675692934 743605828 279805773 712486722 317216809 550055615 650200832 160344808 449753637 265184870 467222967 531897292 366818576 776359210 117908534 681279512 398816732 962519361 186190406 469460284 484286104 438783586 549679786 110415934 661982258 452411731 293650127 303831444 256662384 352812306 12741921 305161043 57812922 856421376 69940425 466613895 252384394 343288425 176726029 841014953 93939727 102396519 294269120 402294170 631064069 440937577 291307876 528827462 137585306 678270733 721389627 778943867 276140074 328631131 719377330 766673240 401772866 116727538 638974280 968338816 400495466 53032959 885349602 796040130 978275546 584970998 457988139 568745198 481313841 637191063 220819972 159074566 572895881 285243069 599762511 643947247 144291757 448387860 142715570 412207412 110143001 771092469 494876673 276626758 696290653 744087919 32310994 741388990 479148952 447709539 625523505 848018636 153178616 55999273 457912490 571143889 602503702 186213153 696937013 854156905 107378842 752055134 271084626 56306777 723598097 113417004 781750719 541448337 15499549 198814151 8401805 261811878 60279898 660545525 600927531 596430728 847467718 43899826 136878144 423346445 776263941 36506792 477982748 677444538 756578756 308318191 204260750 274991817 106644796 55523401 36826719 371593132 649693773 344042717 670647250 465052036 580722748 138545259 842902482 616129798 12512072 490444903 330945427 754701116 543337125 133731783 432612879 900733533 998396115 780658452 767317202 437528075 231734927 111499983 890725304 932271693 898741942 373811499 590698639 271553070 681057474 163861879 896812964 780893865 845602180 975009050 451829521 496045802 333067324 830339306 732648200 482296543 232593824 269945320 87620949 363547993 125953646 391409207 898768691 156640901 707713113 699971761 929179649 426167823 5517306 380993635 301922432 774458719 175537048 878464393 743680098 616345089 36645775 315688894 482770112 93534448 997396819 434600069 197711770 472861206 287046420 311368481 418264110 244888817 685430053 601388071 245225518 587010849 957356515 989126644 752144481 944917734 17856203 601812195 57799096 622099308 17715072 58153505 964975486 541444509 641730919 236131176 379019945 970976720 651282605 845115439 831554721 400118491 933256439 144902225 409922329 50872367 144180934 187966566 235990838 960400433 681305402 610753192 605761504 788366628 894838078 170633382 762271926 368126870 329375974 371830121 972724244 140058295 68931476 238292068 833062709 781692785 406257517 413101589 537719073 858367761 455793957 585147332 370019840 175129228 230211196 500942691 407637450 567236351 950419989 55396208 622780477 290416235 977516209 265326751 12141357 445026853 24800925 909376246 293509607 13254335 773092184 471506377 680177613 520371769 504716670 599722143 674407043 999980758 31051976 966525803 780907547 434650686 450726699 681831680 98728039 654471360 84759122 500607735 648826930 764358312 341531304 417223134 884833808 563625446 811203141 782327970 13925080 980929339 949845705 989588677 941395119 584534736 396126497 903454840 306008019 209387487 886228845 408304501 552242325 75515567 434756413 656746878 158781168 811338013 937765125 926339674 978625126 633494512 404663676 187696307 514654880 859349946 298094738 525620808 327228366 17548634 368015802 543476846 507010734 417509030 262872823 902333550 747410927 685771152 991345174 230757296 305132349 475586472 978179633 918756145 900171492 538788467 575337424 695396130 921117650 992569772 845387947 712595076 383353584 984269038 381668015 226756961 723067752 605464859 146133972 909520729 714013244 416240726 118504242 745724511 870039040 135252510 17230125 704367468 994404416 872617570 407956653 255151464 842078378 887265425 832804257 619745027 266452806 346718591 829259171 458530286 278631058 251520134 352155229 989874075 893380888 744418889 969621054 15843853 96218385 920863017 811937082 899845192 720794439 787187088 112991423 595541472 850090608 625618873 806230967 386853421 908137040 392325293 68309152 857205188 613731982 927103481 425877326 550285858 96490959 447148659 651315526 993127510 415081743 624694440 151590161 812945276 755388551 834038670 602146074 559081759 723382874 355944958 267778573 316812327 416040271 435625673 438935204 7927310 3964067 867687445 628260050 757721777 221365171 931372345 867019108 200271566 674604477 391870395 935198693 103890093 746254004 539340806 878349158 893216575 461521719 473309537 558587410 50738079 162626838 154280674 837570469 561992539 97379574 697361461 131999465 404224677 483802404 979933422 473117104 713249232 479272193 557033169 66387457 733640665 911608188 18552484 531193399 702344652 54171522 344819943 334274159 712390429 245091937 219398862 83510438 643325087 160860971 763838785 416677504 502425421 516911516 969696221 134859058 510204644 400768252 468600122 608456288 721839535 313759927 58569650 333970667 95698783 6804875 45730470 975968241 52325699 280731236 77588031 245974290 111259741 275135156 492630451 584099937 415501866 672080511 25323308 574345890 783733363 229679622 542175332 156623417 541199975 923293200 312898508 158301201 523386255 779629579 983878037 107146074 844757123 138361674 690410995 322390310 33072943 54877540 387507519 555588332 266636644 774171864 770878848 937957041 77587401 470757693 15260981 787671866 893602631 439337977 657774059 725538890 354062420 762999544 717879562 715293177 639519343 609157789 227632894 151264081 291188632 716474922 457713790 515729584 266313 577902032 388202531 490203223 820374276 368344443 804215082 391397762 858524857 318466275 366816235 455161553 243970575 444227140 551724093 377127266 653313300 656444007 42323524 506921939 429049829 476598117 706005844 959657790 881770401 230394762 388258822 136500438 398190266 93812059 164136628 113392165 365669800 595399003 845732887 904633986 869119645 739431102 113882705 249088456 564061369 767445729 325330761 915154809 408034159 306760936 421502950 391103631 56339016 26311501 147554196 278546786 217358559 195729499 785495999 477007599 227745966 88715807 718963283 297103076 494076122 656337267 243990281 622378009 868297811 352963896 117459612 327179527 205215410 697870615 462530954 32086231 150776770 370109997 601560706 403958743 972309504 42010643 128454858 520981796 277964192 307192132 243233820 249350496 147355456 781560392 481499608 303934348 933682330 449457436 50199445 852701559 735380174 8848997 983974818 60145087 475507374 229208697 238615969 609000803 152811590 639199636 840650346 894970642 917138916 479181939 595139236 792601193 997302132 442957739 193136914 583690802 510911583 265331078 116346461 208368534 8580675 462866014 682288917 963517032 676520615 835966691 709205679 239862232 607197043 199810032 212483629 61895536 761448720 579962950 274335315 720529754 532763501 164558459 889205701 472043958 691978628 870823437 369257084 560003092 31674419 929528744 759789317 277505543 29336745 429975020 425529578 937794354 235287521 801865336 919510394 755982278 955635566 759909667 811073457 189068810 566112096 821231119 220693698 215874691 810632260 484111389 203531282 751076739 191449641 281427915 533610500 430567373 807099678 777838291 165229415 774944320 229008692 872443436 493029880 210990104 543919442 558634911 965091626 658353085 5900840 873171376 897184073 677582575 211766338 261730974 180009317 262768241 432033722 726591184 102091161 51913060 866247952 503808638 683473976 846912674 326372852 65511295 126510351 621367780 771326942 534673277 576269347 399504695 264648559 884284626 889956007 420336229 736761343 847756419 443325741 48883081 165689490 584598502 830577295 496759976 697467914 561738389 877680167 498425719 41257824 185939194 46135897 59391277 812692919 862060424 386771571 19937629 87883754 648053405 215982405 275473222 167203057 92190564 212357344 87202112 354068935 282340060 168633683 874642864 253005489 710889012 915533947 971058878 876640228 374009608 14308400 429186493 202250593 782974908 866122703 74026751 746746648 437602125 926636749 229387715 129102421 545341434 736342026 689261259 639480958 321797135 340490161 456979805 955520308 905333255 385870596 35883303 607492187 130716026 18210446 331175315 611670296 130556383 183712230 34011709 510851013 32481589 182390139 131581203 311573459 807351185 842418171 37649517 117122371 958559979 291436794 921904897 592761671 301832684 369271314 669896623 849852714 358447598 434388491 573804329 233578840 676179542 287012501 417521608 297218126 307731874 406549709 522111531 634234140 84412401 870440147 678987186 152551044 504365646 738160738 600593249 656876028 423602470 771487528 995216147 557082534 944971690 460627273 408048414 562985849 341775132 439941961 105662397 286396161 897332254 482710984 545964998 192031912 231104374 422675689 55883860 156880528 349318937 735403005 248111085 994771495 178011105 310502914 915491837 598498408 583343564 38717881 336198806 147253145 609700750 576040090 21289686 662104020 780096405 60473319 798385736 732148913 969738035 569393788 740005013 217107101 196956077 795148045 638062991 195607553 666158824 292316888 524292445 574850402 458628941 603580870 613604409 733870765 835640840 342179239 211073084 686930302 302543036 133341719 954833018 557296378 498383773 781697700 740331988 527851257 423842680 905677808 206069724 992494654 102614560 188244677 138098482 511061206 962561242 532378090 517933184 525031439 755119075 528777300 897404657 294262256 372611721 504989283 515413489 682091370 425490328 415400594 495307460 410950884 223162527 853492315 444631222 250057267 777433284 534552731 838865566 769135565 167379664 888567604 104518892 639741516 696549505 654722949 482538811 386579654 345348097 498701396 260159623 555566591 633536239 559000422 163239534 365681292 732813177 3108218 814220392 996580792 629894065 314791850 714520546 942474736 198841045 70512983 868373386 552940135 582716681 315402976 796106729 644207043 51082544 468787736 52514076 396438314 66957647 408862524 343498869 284934731 647910983 163004599 752749246 12183336 566905437 646440064 472426810 794124617 453524942 8738464 103153720 927174985 838417889 321896375 342324786 271482869 731716837 694997691 200651489 678387788 396420873 339131202 877733462 173839878 631164226 678512841 546490142 436315470 130030926 338234003 966044132 451221018 363824382 865635908 519612454 580713596 31843823 356767500 574917679 906132805 643018093 119416354 736337647 458098163 310104967 593045581 101519699 85755410 969052845 683137379 878000164 150371682 383720444 14341092 299831396 956811615 327972033 556618163 805838914 552721217 741668189 536376298 38532649 299837215 472568636 788863772 636210409 607338027 694969148 52106328 348312529 111895632 875143706 998949839 150776735 249633337 147311750 841387342 760426434 465570914 779097927 521886911 63592783 354113920 144842484 113648471 603497884 246067626 109413638 544408762 105708433 345288509 94202061 499604677 440214319 591030729 538288370 697409550 224278048 317207988 614740176 553042029 112583027 527269224 303546358 938487116 142164652 206625537 388902800 250801948 366234655 917929089 252232927 959129325 173709885 538403950 878253066 936158262 119711656 738132658 737223954 227078063 421098139 640160814 203692138 191237832 430428745 534337222 601656000 496607825 978415055 350982101 609068687 912567483 59797042 955006019 952338678 271967075 728047847 295586976 60747683 355151539 337084752 468382255 167908649 788615509 769135766 944174055 889180913 93569829 44361064 575364656 924736567 570210575 469993138 842324555 179875518 464126464 314969075 305033475 122622075 155578378 505713149 348908717 37343805 528218852 628715728 595829677 649096643 582660613 217955980 451342691 617042233 754327643 700452407 773397373 648794565 364536655 380391036 130101810 219620908 81616049 636641062 115526503 208090977 66414240 317759591 290021950 779471092 50499350 609157400 767169706 509294839 171178976 638806818 930663143 363448815 384439890 252264791 474458612 685107202 238870831 104849034 458212069 93371580 927224828 19620572 31797012 558628126 361552340 624106326 492958029 869358999 837653737 419098330 535982908 488150318 893554690 670476621 538082356 550945176 579587049 693401400 513919387 734885925 433726817 378074563 468487167 40910923 709173680 441571053 92588621 825200048 817800578 156787502 704966650 617815313 117026353 37531952 817961678 283381743 985517567 784262401 525278625 358424134 468729935 514425769 632610973 972137985 730947228 93508802 180973755 49853131 463895252 467644345 203136872 814597467 58676585 785732852 103327155 985091418 244656458 12368151 681235900 304638616 721567607 954705964 220111224 139351474 594813226 154991888 585779435 386208565 619313185 410034655 586199718 510816078 459973130 265614890 596281308 656897577 523700206 829885188 369929575 761910304 385910745 328766212 892081706 89320433 176799455 703480058 333181079 482870054 359857452 867145843 324524638 37391425 189987599 597037924 607551914 33090254 45029523 418342062 750162615 112097533 292882489 585578960 977428048 145598207 998501424 91858382 354133800 919425001 299464854 83314914 956798610 705848832 211341421 500648984 583609247 195100485 61025397 545031806 517991228 994177490 426787801 354955628 873160856 96211222 986191809 924401725 387214375 740129472 475951762 557340304 548450845 284386551 788255285 618973879 880746345 379721135 32430751 114797950 278159002 598717931 816008156 468919979 903273132 771103392 774908154 503514797 837180508 801859029 968370614 275275309 306027128 821523042 412463713 137756986 222450487 223005659 234316617 356898391 696997089 115139319 590241119 12479122 635019097 553731144 429353030 634957863 653217723 251138578 322076662 858852350 153446995 782841590 366320947 503155291 91081899 130635567 625551030 582480015 316128267 902094607 876965078 566556679 962651216 758202396 483046612 401777907 335943931 22863449 480235223 473976592 130341449 482002294 32738902 761794971 617047316 575877306 956732688 641763082 303955228 904457777 882536472 96757953 124692146 588813684 773347362 470312780 933619665 265665788 960555603 340047933 548415561 20336351 86651656 140693110 539129203 106732385 662202346 689903491 908058551 738610259 997145231 825010425 204158883 483109637 700630058 675201239 234763745 670565177 821122450 55204361 42368635 557174282 762188273 111578308 965013853 157114330 438385265 472847910 92826501 888035419 677981930 789922880 367542213 620925043 144596031 998944210 248550455 732646206 522818900 705673983 947699134 373643175 84920611 242648640 456615929 205338998 200039643 576804014 921333284 867855941 422161878 591122092 536912347 941408085 56112300 639941953 619909008 347096196 718574183 589293157 145864886 189998408 126463222 508205397 150697549 233843544 396840439 899425145 672530930 372778211 658728345 488577784 422641482 838837533 748419159 177762333 984391981 69439094 667672468 938867430 486082290 406665254 334102233 923905874 21240386 180332842 519304651 994645005 482644577 291449884 368577751 973612035 635821328 867517201 960826515 40875230 294033899 683856991 667925092 569360805 295619429 800132799 958078401 716067170 631296715 825026989 23168564 716816597 900805424 50747043 446553992 108191471 377744718 771069211 137890466 120225949 174267955 266420683 629269113 16947801 365636072 430252040 91976905 757637174 699994842 118755266 404474497 835683764 925644060 831441431 845698676 216142110 953981232 135384660 279641368 202837767 450984636 196961788 3742820 315408216 643538577 574863441 183934160 765999072 3482030 559333199 926864986 855371175 645243328 460702278 821629600 984862078 763207471 926991233 498695927 360215079 656508528 190370479 656948490 85240268 684703656 870917596 840568358 263112038 616786670 599823749 113173843 443420967 238372771 980707576 413912776 458169352 538320579 29484308 205862020 434777848 790233032 830167851 661847524 918939917 702096152 34289820 969227508 764306183 849660654 334735449 87352142 923473663 412801155 818943183 7228579 33674893 106696057 541665008 980341965 783323612 622850933 362295071 300095932 137050674 464167154 954564976 916960827 608237455 463997061 600236998 555010638 377074672 978649204 910479561 397108841 708855176 181929533 11590869 388027426 797978164 960592580 901914682 736725829 159820021 416635987 999241056 727753021 965270262 875556648 75014845 803203759 106241694 654603412 985114470 824395539 913863862 700160017 229354446 811676479 951870541 580580659 484818989 754295619 508015607 871690126 518681749 948348737 489787648 857348969 18943745 735538241 837016219 525687733 524018463 958591396 510460592 276957117 219301887 167969403 711015810 883574348 902093627 618410898 560362652 135734135 914060609 586297029 201141198 65884454 227542238 299949438 343807263 856554458 164423551 814857808 522364827 661160683 987520073 923343072 151683175 824628318 272370970 775968685 899645802 13569388 792733539 260971479 608641661 271100432 597644979 574692922 670695745 453679094 833757382 755413217 772762065 166965513 228814836 412857189 284221486 75705148 871512121 52291978 964793864 238377058 422703629 233776203 596289764 204277529 991949937 598269726 313378070 733820135 311413687 39118481 582841493 991643994 59210703 944179869 275839504 667178246 434405020 7795342 225825818 325620066 49244684 839887046 457940581 208664989 863903152 290503639 789386197 102927973 861173977 89371355 623148918 514696779 31707634 65751074 123591363 859089255 462188433 172266422 581285567 658466555 957172611 145157068 12406568 266374495 751504020 298454434 455811921 588639830 451889294 919772426 721451637 529547830 606046302 159259092 221338506 882067026 151468435 755190512 20137157 412572311 267222707 321562027 186130051 79869675 989571525 22337500 437784822 405732773 935486656 153201811 650969026 415762547 209495572 438206662 562782961 136973678 727840094 78977718 873501993 67720420 441500594 664777865 470501200 891920866 791201043 211091129 68004122 52590047 134964032 684003463 772966596 453661997 621044488 767570551 961144901 516236249 144359667 261013612 22252493 630913180 701243536 192496409 483453312 284800531 826279661 93505167 265394013 116935777 634436544 6092089 338174022 457961007 635280512 639571226 653824739 891664829 885942015 257794645 230330092 375049807 722502034 142565062 611407658 99627476 595233459 793770691 192935126 635520954 195518864 434907891 70491249 966948243 920391820 873753232 981732120 119435629 217211298 309128415 67459478 689779257 409690189 666843805 750669842 674199607 646482259 592409132 290687184 593533311 740303606 729867701 68047450 820873865 114076955 113970654 997808948 719930132 300552603 201589077 631883823 478101721 127873422 399348826 18377353 369091923 882290774 539384868 68707108 968650493 992343501 444009890 71526214 220728707 685755640 537519802 967826046 782763519 96051132 752855975 919614288 981853478 753071673 468769575 552880435 282963183 369335187 594523439 36276334 302191108 427873757 888129159 652217814 567668044 930395065 615872950 783293691 804857788 726725454 614888993 166887494 151826389 590641398 388758643 187761549 401957204 775260385 99989 32331238 433341226 240315825 56980642 592637257 880122445 968180093 506566723 510119906 793401190 970043675 858894273 831574062 430054802 740194368 832665230 762825987 957329065 689328543 852956072 365577430 663817103 453664561 637996826 600676715 519959708 992347388 531227982 222267946 118012374 742537182 363934506 879341430 158168069 962144157 288299010 949523484 703224488 381559463 126524941 828240449 229951412 542826529 927459913 674854285 148317637 917202491 465784208 610839702 464194455 725857820 749448700 399000825 654208776 724994959 939218618 387203995 864113469 746430100 112949802 378951537 385356830 799324227 825234461 31303753 615221590 215826177 647754483 321512611 503877581 549853883 58589593 140278575 59347888 477390629 598963593 325669761 556905449 60135941 924317035 581267201 677371144 555824649 635454002 272221605 637154713 717096507 478902976 52513870 161737797 107352078 756634715 659895227 632857657 698560356 397170318 978850961 684394576 23911253 604534090 137647409 959487739 950733937 870186621 510149002 775734077 393061774 544751981 903823147 972429263 819292714 475106490 706701927 990284409 601209910 515218816 451189136 309626016 383988292 406387602 580099073 393515368 57580296 170479096 587109455 251530117 976280097 176016815 234159647 342625229 268370794 235641006 155122494 458641416 959621393 429404902 60545320 359897824 583142411 556683751 768110448 137604898 508248343 618346852 799586531 739117290 433816243 104835927 617930798 37293474 847892197 604381884 564501811 845925701 694062916 157469071 182998418 196351733 870785555 826641198 160614717 479348028 380115530 933493357 779123108 900741084 702143962 204973963 119504224 121701347 101024360 46031769 572698047 879624866 638116814 176077818 786697604 22509873 841755328 37886148 165000525 472468311 50785171 992362355 968079751 196158653 448926231 907266600 390918999 451092657 828521268 257128084 844975497 559065743 294210114 370060248 846338886 185201346 647949172 284339735 280643429 544222210 756953581 908260883 233613024 135990212 53796151 377509012 619986071 955905538 785860687 829568168 185516910 658911357 502274723 965541624 878725243 74022942 717860911 882075741 264889232 159407672 604553825 295703299 780552061 128531730 323620560 186346467 435662831 775644482 601646899 726676189 743591228 657420717 636367635 808831904 677916451 343594346 611928199 7057135 445870456 476348797 549019628 495735040 88759489 667432508 659617065 560402598 870562051 666189432 926986912 407226095 296389119 229998980 470587701 778373266 932440501 785553575 815235639 329240744 811743925 412376041 171744529 65268340 874651856 135106528 797453760 753636171 48617962 519785905 372396877 594350307 244942629 909633966 891422699 742928987 30333559 512673545 193615914 565788344 365222765 398771114 466047860 699270179 998364330 231842431 65227054 177919651 727009205 45384143 351467525 397369539 249322310 641041379 737002771 531416837 273159462 371553369 893335127 684669610 828477312 554814569 96124990 420352627 356370015 4864268 731794128 760354147 270178585 326344445 246221241 569080343 822570426 652919570 533479830 471000400 457073391 800367331 786706023 280497971 161274187 336690467 238216559 285181467 756672364 601242722 134498194 182871953 991289943 496492563 543663897 441351182 236211846 967884792 91953722 61191618 453578086 7038621 168756807 439137344 754124858 923788556 540388975 754426906 8388326 898657217 373952163 167526839 656840476 642569908 337993403 857616244 220412047 727741335 731898517 913068417 659874176 205916572 127191097 227210454 971784257 454407349 586128764 774762074 408487038 755568637 313264244 257097711 916488285 46737787 804294348 954553836 560633642 507182578 411756494 749441501 941850006 827684637 277989234 584197546 675876940 502713125 162606501 496897003 383241462 823588029 976824850 564103667 876919589 169346187 536898027 220675952 711028090 330928655 106769231 878364696 167483683 756512671 307272213 406370036 789680711 301281454 507311051 159879053 179989843 132766351 565665992 197568073 221304061 449630530 637015292 912699911 467598118 935372244 704652339 686016855 994574332 756140371 832751739 662767711 75659774 263586874 748724651 698429524 192014151 63092469 47739071 2379006 746580355 125069430 251680250 255762797 141857218 801192963 846272272 388730309 375875067 282140389 145047706 141207512 749850826 213948404 848792902 818573671 673387990 733921967 211959619 622147584 678262272 174309503 846577629 723942468 465872948 482303038 168578092 748333422 875953522 19460108 331591082 439415841 972818497 304833581 205131970 289914086 940664171 705539136 341171041 970961431 61532885 534830817 332946164 317510971 926422943 651054737 226001089 874486250 558761289 323279043 358280634 614379604 588043181 563128704 572324720 65606959 144603726 53129272 530849530 526833864 891066123 530789183 997236968 980377181 235701092 941110303 678714110 923461357 557755153 545678115 996724657 746836953 63896415 423509770 625555061 165993064 457584502 469397649 724589087 262129659 235680878 415618404 447742178 88182397 677290531 729948315 781462345 52365144 567029178 339485615 121002003 741136156 675336062 139059865 214271577 338072432 111078402 548961424 894185949 485752552 920448667 245130906 319842905 30109798 34286770 279343425 280271698 757440777 360963238 757305776 326667285 304303742 536405350 214224143 354868596 585329305 501915626 455281608 609399220 642102822 354336177 821453901 415194946 869523196 317203710 890478667 183932473 708422155 42265018 203715677 249561604 186583505 4020871 628610959 511872809 142937790 29908276 963717418 785383388 250675177 564094654 187576565 959401701 722702519 455401972 991705410 550642827 747236920 183932337 356883069 103306953 459664573 225683794 595140621 413525196 47388364 346301729 947311319 380809497 811507052 464555940 608839766 837121388 662567527 846058297 489885887 473532954 561616232 659598378 251810711 207090863 842199659 247539070 591459196 287481654 835434992 835161798 613703273 974628937 335682956 779659019 816571551 345122615 377439894 732702989 625618249 84523474 312624695 913910032 12386455 933389470 92531177 424415267 637003537 347182393 410203138 173538153 267957580 836913644 806882030 222165219 117746524 882845706 908278846 218418314 928959634 599446354 953151016 639396425 233182646 814033615 908247204 52693353 403417341 837163839 783122521 986478228 995901238 636466748 814918217 206968711 591428079 659606347 382149319 7129478 709315214 315003157 574985495 842147494 726519091 666267656 861161579 318913608 177655781 934309693 242170911 691955612 9475440 554367402 702630561 143777358 356404832 27379364 911411910 729423549 53519607 865294194 604647832 829473830 769063427 546626168 297179358 857453230 820475670 872529371 552491521 217994628 135940852 270029330 230291548 93748234 236158056 69575618 4671325 593327066 279543765 476968689 286820219 716225681 465005574 85135173 616218774 366320984 69398382 532502073 6423897 676278259 95319198 582259453 436286192 175355183 191971009 128097337 45763934 552239890 711139766 203044307 195972966 262638667 227184358 519957396 890618220 117418357 129412823 668563609 473788460 389408894 502290624 616386742 901599360 44115820 851124608 349839913 612540875 398930247 616050415 863713445 462804523 841701252 250454099 512971289 681443342 920397363 476319162 465643943 899320045 702384728 818927081 684335010 431258523 435089438 860299983 616036456 609211434 622261277 279629988 189984956 434536538 420826164 824007750 984424608 143679861 605704080 909410925 304815051 945918600 691196097 321653498 669437254 798324641 554383378 731003862 451980133 399997906 93431808 596887341 892815862 271823873 809886625 515986837 16759164 6704421 715818975 254700789 135661817 391470063 379669553 27512620 72096722 412024462 184251981 281526905 847643277 652392275 386129164 443997260 135219381 198896850 780250336 603976557 24389800 46239706 41189901 44946025 603993107 941295739 196519459 776273646 154678741 227244809 112529375 437392143 534823736 337386451 137617744 826392743 482888472 301355707 647969222 947989903 700600174 436803285 269026520 283722363 111955671 833700564 515346707 69449005 26953975 149546634 255154684 832713143 297362970 909256737 415751024 980235463 725089239 225567120 423193551 670130633 498348482 692411701 942516976 745881966 888252716 730113255 175320664 255288327 806222419 849144006 737970973 87557862 5718088 300770546 770677913 844281583 170025708 802868750 950466588 246870798 849550963 805745898 944607176 148550960 166035979 1890939 777735027 750886095 350924365 363670179 886679387 845938830 743074015 562941821 33957894 126969512 514000631 702065626 186766050 572219094 224284980 289455342 510240668 144094386 64206705 837000364 116985747 203334260 826798538 142333570 707311551 519537973 725611221 670163073 967411942 324450528 379341744 19325807 727623375 291734620 209610290 853837520 152045519 577611109 908721291 469225150 910374905 225501055 42128870 374527103 630155399 686162847 421471323 450728654 599838038 726285199 713450839 201945753 172039129 327932367 753843735 186011306 643168913 309285177 572915407 297497661 605247206 192120853 42585226 466014906 775511105 858198029 651871666 200289940 825690972 541670663 57983975 605517437 443296396 151311154 78053230 328375582 648042894 246319374 142712208 347694426 158455962 265876621 301395824 709476670 546781361 477596023 933677488 498741237 412227954 260461858 557990605 848043202 363601677 118621037 728726777 517621679 234717722 773382555 719625778 972335243 92226198 902331727 203281565 407081327 163040248 88534678 857193297 657054628 975962171 304517578 814521459 810972819 179305911 104155378 966086162 394187416 871540281 458411751 387735440 786096813 896400279 468915138 350345772 675058124 969001789 78818434 612534624 849817762 461444934 565377164 359553480 3083014 838200731 770933563 799245113 483375095 305868022 302787845 203325105 183752155 916782702 986664567 154583998 179971576 552305382 737019471 322265016 949602621 921540475 17114910 129722809 978008496 55467009 14033431 912906877 598056114 216557129 633043713 555826049 935104274 327650497 973231890 164379460 136734977 815356253 294028868 910147823 321467940 881622440 280825887 787112298 645740537 247909298 246885332 131924113 423458742 673994877 601607279 564922905 362111945 629975250 906468084 518631623 965716813 99701643 287037843 382017734 80608508 723044175 151487781 570710189 286387870 84096770 642817638 134593532 157897679 118955441 255698529 625363287 741129404 677806264 526916854 648570687 91751144 405895937 423968895 723277136 340305778 393809137 404028102 559860753 953091535 731305209 537370622 846641082 273726067 621209390 18983770 706562447 618691646 667299365 252537783 895810872 780135937 138065490 130028354 716303161 398287442 15184893 833011828 638466625 309034540 629896523 499518814 371918182 782757694 142312868 88843479 745225783 695945948 126232777 619335593 570730987 570871089 781852793 855358511 529554512 660158307 581517509 872346091 753531624 517644739 163611333 949785551 425827201 475418319 633102646 790469843 290121702 995315863 581815662 109819393 829492249 382418429 607442711 216682561 278837374 174055371 289844282 19925404 672983140 418131534 837244166 504291870 891602164 657406542 18633577 952513479 464870879 79044958 980040148 766822542 703107040 438671118 550563121 969523395 540260598 988272850 862765967 446803990 584780431 305848956 522356196 266851930 534719943 577330239 261948915 800780445 142177816 539049850 848060958 943858650 742459308 811681828 514059034 381782438 453762474 730707402 856678295 585532827 899592414 913906628 218823151 257029614 148217059 135946188 574631850 23464039 119018710 865548203 14119457 496435691 282842060 104666503 413258562 50153316 599229719 722401091 795601075 288431440 33783966 324433417 621193735 324367586 900720348 979452887 284335131 837659860 405824143 212613566 912990724 106253035 56269210 476163345 167804858 867030029 302973615 525939593 910828724 880967834 860294700 316678959 401552095 185262625 448062210 731270114 731104112 10667664 750315369 755063757 482541575 952448020 882251750 687709459 602119323 494997822 770585893 811041826 739293331 813153867 373446143 315763022 418497080 357439522 162957299 978944955 688775707 783543660 282839282 571814124 485218789 689089611 242745613 435590422 101275170 628400319 72615762 729723858 466216085 998185924 737983794 624189075 846464225 377932088 972177613 887817216 876790360 507197980 133866510 305874217 464009893 479780803 103618809 115776574 45985889 501281510 972666186 138480052 205774294 49293842 55024547 994326737 722556378 3430607 296334267 909139496 204817159 763511125 589950545 686062434 697232560 248956487 148734061 672979811 371862734 971530221 736686138 66220236 354420669 860795878 55761173 377020098 939929875 761159881 105178845 884770664 927617503 470167433 52037148 279506784 51583921 168703771 629834536 488574918 298685363 268159644 56576969 637509618 335560261 21042053 375989396 582877821 854402804 363964086 131359502 244448019 53546542 624793694 103030489 593912451 31724591 530191284 367069667 235292024 185831387 797084102 697476380 573499885 115823377 156010470 670362740 386563802 784081256 682417744 692975741 864328493 200267566 48963273 401043914 258692610 780426087 438378729 829138253 652451967 721076976 368985834 456578971 373671728 209448637 688787463 552700274 514471723 532905225 114821609 902406655 955170523 362005997 540930154 913409349 269642470 629930673 260028770 929612065 321922943 373496358 390255171 997104309 952641578 60169452 118482914 201837807 419868741 895859142 59423713 469503265 276748355 929400821 586891828 292622750 351576171 146228633 936977272 537474063 353949185 197070768 29043645 378205996 834220109 389345854 725001541 99948840 905928135 843949957 578821703 604673931 57481691 939551843 760683260 839427853 618925137 861547118 298317038 489434413 244809369 464546091 668343561 943388434 923761533 972413666 47956959 741049976 305861281 763541482 153732262 927380457 717261750 940723246 715766000 379765014 192041522 733690178 129294289 8458158 855009560 777445103 620061994 965484225 65109969 512393334 177299100 722993679 359193182 636045420 287813953 584596139 60981193 797572547 947805036 232760177 636881399 295420016 605446944 509841714 566935728 37689166 357430972 924250190 171359685 206660096 581638075 84854698 134101995 366633657 220970490 75559770 831702740 963268674 350766843 97556997 560706217 151562328 615525179 698826500 602316692 876398262 254175473 105166083 305613913 178231151 320148171 625034119 773284907 432049555 652319227 792639014 878149771 202718861 869110184 721395051 594840381 300663653 9300628 377739891 770097812 562456262 626928682 835951974 392822395 433737059 5849429 668344269 151926121 523057778 95522778 476403317 533687160 478036700 914542762 111497027 882167322 995730820 561132664 240933584 234116874 333651166 146250775 584241162 694204458 920117901 711560114 695324623 854483369 414266948 317940814 443029138 250721169 460895944 205539790 916871737 48461050 46306306 648144686 52289175 950839288 372475824 168491961 211852405 892739547 727978733 422511919 205445795 19317226 617397828 188491825 695267941 88795941 736687583 10870893 758807337 587152081 210081434 608551384 870878442 851991257 734404028 25288955 910371345 592768458 959989152 233632622 734384428 921152668 335461662 979693160 778733757 171233374 374107778 697437023 124653911 933419347 625672130 537114632 295211497 512189752 166828354 320522277 744240507 748057584 867737090 734201588 398374612 912841492 932199717 747333198 35691771 899683924 810948594 529029864 328626455 591952467 619868114 57758785 860974829 959089511 347418022 677645481 445497797 37884795 768964198 241991812 89045516 710013658 311129801 877889145 950007120 889680254 613530538 831846077 901110914 870916786 634693794 159781870 795026780 69303355 306377781 344304062 133318180 713784421 321649065 763408750 441442255 330446425 26856312 163557321 875755594 147989803 833561757 324539747 873192047 125901258 721686364 234076464 785053629 415789076 611122576 276020560 97609348 404913550 293928535 792098317 266152417 140960820 897019165 948021222 305998937 990683325 263030656 520473920 962359861 69797822 410965139 560466827 905271320 753795617 251209426 455351716 231379688 386037301 828926120 381511503 603594765 262607671 257814309 399121267 608182637 642794368 724061659 763038310 904227207 926775127 29477801 879727223 585035114 3329849 541333120 984535410 552022861 274067848 707895436 423513308 899004956 914725453 159314424 740074708 832965340 566382823 982617777 416481469 737275255 988507866 546272669 187449692 83871199 824971415 602171347 394722778 251919154 92578212 807877880 236909418 941764748 367415481 111391566 8635211 570699083 241209780 600174093 673952390 615356227 953853654 113589056 654959742 362709897 680573475 657075950 780933629 52733301 116548601 271855860 881175493 271401380 61070100 105758090 154735110 49075120 513575899 971604330 778147456 724979645 630706968 403895923 941591943 906994903 540753971 157885312 809369091 425943712 513111179 890823657 694328952 867492927 39317558 546691440 305243087 380440457 4571744 63989982 310325441 905535797 219859476 326303068 248092094 896868629 515559612 88385134 715763058 991662596 379448325 113307012 346413068 38986820 468841347 627565036 958516744 485072801 616991779 632127896 775909718 676348496 774022616 786587314 680115421 986566102 753568405 723898240 168962029 207860939 547883143 465258493 397883845 293835075 920763449 436250607 38035603 917194947 180327943 854212101 660275629 454173179 332145358 572003817 959626781 868018100 308400584 714716876 518859646 665785504 658021228 783681687 423442391 562052187 55291487 316774667 351919073 679339475 486584456 336604458 764032605 903567658 4119550 970623838 261058694 269624701 656266706 156698197 423165788 534784501 985142286 662900770 717340471 93489755 943195712 137590689 672093675 831690895 185492047 869187366 759530691 238140324 424224581 768252418 864854710 292912386 672526726 965319459 666331157 202581295 303220937 315043777 64507786 544877282 271907996 592055981 59641870 534345710 311784476 505606808 863446868 302993785 161541138 754018464 353188305 985647485 369106798 480665364 651058183 982956605 585109036 872398932 686348806 614460002 92089784 741543740 870517673 865593534 608289833 965342506 151902529 410581752 450951555 125689239 701360568 62671612 395980937 333420636 961382952 954801594 66711001 768911425 526071829 309156232 507239297 521031053 789210695 332121294 701537302 600018865 935207325 121545576 438284006 250182613 78156959 516279510 831824685 193333550 697823554 481280689 322440690 956500312 998691073 182065202 944070327 859065235 589098316 341683335 919185347 508440874 186011192 479941345 52285636 394240636 202292159 146029170 201592076 141294749 972663324 560319918 538532935 712315800 893925881 378224414 725827586 381347257 408559616 404272395 110467821 461326968 495095115 362288769 132446305 633655255 777087737 168279444 347807996 124134068 50523167 988227475 830093931 188679691 881934633 722113132 4017206 258377128 934056840 226688175 343431702 761433465 714472902 787050689 841844822 383102877 638779220 666588682 482602031 474950448 284155213 766904206 37603740 237576895 861848587 568808324 470509414 481935581 448165986 270931328 806509250 493716509 225911629 471580411 177948809 466755517 753238923 547259221 862524233 731653557 55353956 621530241 493879130 309093437 53127884 325463559 97102692 738959585 257233926 633998157 48847476 529235607 755968745 928595036 251523806 772478284 213308772 970895274 130216882 650580668 129855044 236765344 479572736 639359503 123742736 889632427 350807318 64001170 738167365 935722982 649022795 360927016 833299372 173326166 508780054 80736024 313445663 26207109 238964454 372148314 204144095 146963615 378002453 353013545 753754255 349205923 179939405 863358048 540011542 414542759 929776104 934908315 317370188 696050895 159951455 917433628 88288617 163506446 293207823 825079207 318069348 336900947 943266552 838119192 549903468 35550173 540567450 838341775 359721841 287401262 866275469 375548066 436799048 757064650 634278801 646929419 422723230 186587311 232252411 767933692 223964521 418706565 817461549 338649936 57842695 951683635 906995280 152146971 401858437 282724300 256612764 287490502 443837526 254834068 298710037 239374241 896347202 37064454 143005481 704335402 339338592 812670836 224961459 650564093 591472112 177246074 479839327 709570032 49479934 492043599 327376497 144884358 465693630 330091038 832192647 3317604 592690993 527049236 778062 953656336 60088845 180020563 360890238 871958613 91023430 377107642 144310967 438567057 931399339 630032421 317481935 425399715 147071331 621836823 526523408 616517303 138827441 838436392 565846046 65901279 766969384 613252155 933736457 344175484 782451588 592303187 270882158 587460617 361769477 752353509 329400474 7777867 661410088 299293651 863022471 181197424 744418759 632910328 722786120 621243985 491111072 623877568 273644851 436395426 496373948 417202780 21076880 415228915 374859094 915360410 921417168 584841367 693682779 940529299 812212685 43861381 172096754 995603141 375188217 157825243 274780773 519415050 112108810 702225095 609872124 162046352 652360687 820118233 231998340 999156139 663963273 639534524 759765950 659195215 829699184 883676302 789810124 225300085 43638310 271681155 317472761 587225558 786111329 867678656 703341017 683683808 643619729 205474884 444030085 486542011 515967619 708170789 938693309 445255070 520736032 612168155 599287888 317842530 490509941 374525956 125280667 178149220 841692653 129454212 162583288 151021388 889721728 993146889 63315936 263723686 598538544 864053370 747775050 823803820 9375496 235021827 249550873 490655019 759544980 659336483 310725825 416197596 525156278 713337539 631823319 405890257 660744355 945339888 380702313 103167859 967740772 62273863 968839501 458063192 757897941 883559790 954512339 855473777 558374834 284574299 349927671 47852664 82711908 382411160 487946447 814202262 992910842 318106374 109635637 621722366 245241679 885468626 315898571 825528715 972022571 551919629 871188158 693830399 390007069 163708154 105503249 703275495 353432134 484173370 440674248 676271049 335286351 898628412 467132412 228061307 557638209 820206423 229246957 317359609 381171617 881643683 652600735 799195606 766355192 293709835 254882541 867285616 259946686 216609708 347921259 693777621 623650003 89835308 212482201 662949538 849053252 823756656 531330467 685375519 729785677 986882023 689707363 292922421 987252611 54519451 302354780 185797326 377534438 562200683 976326383 17156639 8047232 834419604 251073245 645297685 999428129 378288587 316552964 2623619 697849353 936608189 921761062 529855521 422287121 502078682 433788400 693995232 820496720 579020133 179583859 944459408 866184506 406831225 460574665 997699185 199140076 785355308 53647484 591358487 950348096 141182525 897553938 566853892 976891060 167679169 22126430 476934587 593138503 879453050 857590761 603411277 405503518 202981378 959222990 270438240 90369175 275427905 528824871 696577539 591115167 729750813 633373 940712842 982863700 477021337 329147205 131973799 790909601 203103958 56299852 93541117 762263828 207662010 906494955 870605962 776600886 343909480 908506870 738969391 435422817 48191166 129481077 964584184 683342693 834941045 137549951 821451185 767045396 220793132 625119298 269299110 182463091 829461604 792298844 436358297 130693483 837904147 463795764 796728065 581423696 381373874 356353384 547030729 149643363 58019270 991921152 611826590 334717649 563600093 786646875 749547687 309518026 66413292 62274732 650611880 285281772 240964629 855369878 300159618 410188895 735421636 219042753 159309844 228097371 217149717 88720585 39847075 156372905 412871040 660318013 741597095 996672789 639625256 940043148 728708440 763872396 906661915 239032784 213813728 246531707 178779601 481660118 192841316 222078137 703372450 558634033 433596518 708101674 637626841 580723279 306917050 48753649 538247147 601507097 459110039 633571681 741156322 435693271 172576029 642604948 771826410 717946208 492172215 484410858 415661566 517863609 609285758 413541342 360257505 581885262 192168159 827526896 609292056 129129316 516929972 78465878 384806295 12588336 934560133 359597654 841122015 154304238 620122105 749379028 292454295 112248684 522049480 279477934 400356070 835725794 902596175 62368412 866607731 938450877 595953791 678817111 877191003 150496567 354147484 955830645 412625922 382255057 458656228 321257307 540170601 420522504 568229182 37774133 371925046 307228351 184735661 406024576 685673181 641168685 789136349 708105092 124556777 719108716 678242398 466379660 992960021 454626180 626774266 131752505 550289515 993334978 564764185 132543780 422763601 714869657 484884125 825208492 352404285 249604280 590169588 79954803 720713472 100473765 625337007 647779956 301539884 214277985 282422422 659191544 412947675 915908057 352923033 171138611 593898931 23898427 106140173 11183479 506425856 989111800 897998403 859642940 227070945 97473366 40167820 821687991 395779572 873363443 161492236 871394259 980023702 412839698 868579666 672622603 808052704 919303422 174359221 561636445 754560209 139232036 199439223 512375113 31141483 546285090 768662390 469935925 696905862 996809810 538525411 39860357 875835610 941121823 759931519 361918641 908305947 487404021 242749058 829698470 642356039 489355509 467788386 265298073 828677838 262512496 444818785 166165342 977808430 969568561 396550671 928885785 301138786 513066562 660516440 715378338 28271865 835070434 46537401 760904377 701382528 468538087 467772581 499560460 915451060 68503561 388084814 801239596 5322839 484387166 588975105 402663645 668629566 354495661 534369678 627850707 815333189 525565174 861995802 804432490 282689030 204284598 195219536 30201377 308492750 193662707 474781118 884162032 802530987 40277743 169645746 456472783 720444124 232294675 336142797 100010712 839460264 28585373 839173278 18563398 122599198 349250341 872235055 839627201 577931993 710825341 718595997 576443672 693951747 348387652 907312241 806579114 101005139 956286802 559670224 453893224 527422439 589497760 969071211 902491323 136400485 430345719 857371054 40940473 431648058 210120603 219014726 344973043 427559506 653490415 832380410 99140560 779314890 590050712 638799125 206047362 533007644 798353207 996132555 145060735 688739608 153566953 698453110 32893457 168330139 491309706 593787323 458860075 653182162 399735891 167706560 889847223 983352954 939176816 938822145 640418182 369371288 957984819 639477199 241799781 272681339 855250039 177690316 390005733 751935761 429926681 974405980 641555306 418376067 167307303 17009148 923095609 427600993 436456831 568814266 370179257 816194397 720808612 645551284 57476595 575153026 554300995 983943276 944537037 95583997 212517343 924522676 687471214 93687968 321736308 98998316 124552928 422162089 918323960 364824714 245824375 322702151 940925572 230959046 992547401 349837088 550956459 77638210 971478067 288693167 351001651 427431502 917907301 303853057 952753184 429315561 978594082 193273325 415393650 311763247 722295804 81764880 233406450 573152162 362518087 856025491 119622883 949254429 813405145 204570432 272697235 675985951 456141515 46869260 737145997 553738491 615916980 417274566 444885380 524756506 429037907 484403373 484943153 83001647 703305518 262464024 51737913 997324633 66592721 72857295 779200003 257169270 372803366 728770619 866623680 185240411 448810144 979894958 972996201 792913312 912488561 351333773 96168853 652724048 63355274 431864628 144429447 424399475 115124630 25959172 925761485 971214149 960255461 643769504 668267262 68876860 450756453 601779305 431336411 406689816 221617638 607518092 994156530 625896224 589728022 719732580 440977434 366795427 795666448 557201742 253748184 897338849 188646984 312054450 327315380 89156451 744095742 310367390 724558322 535098945 748390874 618750926 739254174 890197095 555137643 101822201 164587541 138145797 396002780 637729727 120483352 224554326 430593391 431951896 120590912 810058089 709348392 200947924 483796601 184208555 23719317 839778118 13536128 451248932 69769136 622908148 152862566 915103864 145372047 32734182 643226801 445940125 815667121 628626847 400413366 85974054 224192721 78156437 631308311 84482549 307033120 267314553 825120356 691833429 955807829 416358230 208456957 923463906 993755044 457734627 149305441 948425918 636318517 813275724 3460511 763850069 843829299 341994807 143300464 345471780 52211351 434769616 125765296 551120997 414453522 512201866 62031451 623965333 557040972 475044277 886387213 808860248 58923597 918700805 293721361 984160170 479016664 754805173 30879046 662173919 463062564 662748529 64729933 288327895 222418797 116250272 437531256 322483666 383651237 338731689 129355678 155214290 372142539 768100445 799240332 98134588 976005155 775288869 165058390 550960947 10223028 224427498 353256402 146400344 144635409 378878103 471699178 493208245 899384898 64261883 981516165 659884108 923582242 554421037 344784026 720210933 379130710 268316613 816490410 963500090 411663872 881905808 533967534 124918118 805809394 956250034 830312461 643632559 529473750 615219862 846481115 134732670 752373258 417311068 237595324 228755237 72799070 626214146 918760602 851748160 898477434 316739874 714011841 183145585 276859230 408671199 52993064 344033115 284368291 741470527 412269062 704744764 919114049 776479688 722761528 626969871 12857614 363570583 638589639 480640598 586368893 768073066 841128744 421091948 551700386 898088031 346242991 638318588 365740031 312798144 737042007 217133881 54729159 188531526 879777928 112498345 367266919 758335388 891224462 922035448 571346362 137715961 61026429 74527390 784299347 743499226 260933250 152199891 8202324 54523271 426544187 345694100 212680926 426438977 564804455 590085111 652983522 827831227 826182535 816938608 993821069 814458868 616585858 107872726 911852008 607078945 853968610 68298747 166216147 99169707 908843849 2695002 49596691 169867554 838327609 43148655 865276961 896521278 580444912 252818918 304246790 65417038 301735705 727791583 416337611 890736684 465754937 815900170 214208392 426899637 385287742 291130406 738761691 596373460 384903739 979128970 497206044 63998056 876551900 785744778 285523730 849625628 894051655 446965915 790078740 916535149 372033220 941387453 187426335 230232916 34904664 61059785 581079556 714310254 400198330 381042548 251423498 709271882 96236435 804663041 115022572 444637280 544879883 454365958 735950491 994894313 937131302 313939061 934058468 889986149 407259557 451054767 360456936 795822787 7353933 689773974 892577378 963127725 943350750 867929753 449474519 531472688 98796477 948155279 813591761 685808196 333790556 90095377 543664494 604875385 691006871 677584082 778593433 966523457 256373659 375844562 749442594 970954674 121782354 655094516 423640965 763715769 739574395 873422035 519822201 113710488 567805418 252216098 675974205 892118137 393947207 694324982 725185352 88461978 293073661 670059869 848793824 826213587 398248743 813417046 436266530 218944989 119565956 844288460 205901746 374571842 283471880 882010306 243654939 672253600 234289842 948602696 578053170 120790595 623172579 48958579 327695249 774399598 359212498 538769316 221261575 524688695 338125972 728420400 131314816 41449440 104555279 974017145 49045428 904408948 948093965 387522794 351320980 528618903 871057940 34982763 591310470 973586283 277594574 968474824 346951198 973627583 532958515 650136872 291523342 991271376 813231835 820774342 329596763 563302013 126506353 203867891 540204428 62540242 565582680 234468584 122787298 518299224 442463322 814964365 911067218 951452063 822880138 935556097 161758251 634246673 182675805 657330702 367372120 942136505 621433275 931884161 821219058 854342717 55407159 7091919 965697589 875333079 919518948 692049521 356524160 629950532 16062752 457099942 33940898 801792025 535986582 317167770 541802003 503516320 600335619 477413124 161368740 865179847 269058834 727863382 355294049 46756483 270744503 801900638 387741222 904333273 527138028 583513859 74411564 164795088 367486939 157804475 12378975 88602596 700267866 784094031 671102649 512070744 149894748 98005233 85920813 267436855 450260097 649365594 367039553 783050672 303469583 898798644 136750264 64984501 136436141 191793911 264550714 848704035 440367626 776785370 623717944 639611870 21098944 353782203 366939435 696503562 891666761 659563271 1387530 90665171 805419702 631246192 902586525 180374624 309026345 961170963 990440273 6959676 954566480 77494178 154977032 735094969 643009777 39044099 350081989 747403997 728056351 911204133 209133119 198008828 412270164 24789397 198981530 918917523 103230535 880785558 981037017 883812932 615576445 519923310 453270320 574392091 683025772 79604261 393466356 716415975 456562948 662444080 775843033 557386127 32882038 174074763 191083826 608849751 164457546 88794947 697530779 784124059 808585526 638181147 889299674 176158745 318371881 297398938 882864710 370602980 815365295 97836356 251189655 281333640 441203245 258273739 965748849 52445751 991606056 999267261 928393279 138304088 315106473 442150665 572733994 119100498 200633628 799381731 539560635 577217960 346748193 498188670 127106276 502190744 254930505 897279420 48165496 626516376 785667499 921032812 729038430 590156824 936210653 722003156 105213614 749681990 537999355 901366842 635418275 65822353 655320668 486947365 261067584 343711537 228048396 786391252 611655019 872829645 271252244 229451634 785969262 550917707 234357756 416838212 164817509 210090605 445471689 141469341 97769983 843895625 368737366 444011417 848602747 132366715 313740697 295453831 59716386 54826002 642953363 874794753 777731866 576522889 267800787 858655472 44815937 579604866 836884826 62418154 368840843 786195103 228737942 190511009 247958154 729109648 19240916 134012733 954837181 522662693 639685564 939857363 246873821 909597824 665873859 869105439 239768734 43592919 299447522 745219314 162200631 658340738 281652186 183859230 84908182 832227085 435503636 863858359 558949549 392084126 516270273 391470963 34806119 510064742 383526775 833233061 430270817 799608684 541199516 48575439 800544367 685860547 932655433 130117286 900380265 421708154 819522115 314516148 735841036 746188668 714966453 152964065 129556456 721526860 392762845 870825011 686176724 476099535 14166234 929569877 206550860 513936273 93037162 727571648 137254803 503910933 404919942 797843805 582213038 731491215 903933649 925284815 205915432 622200672 221815188 788923196 569820444 19626745 999284990 270808332 947602815 333380951 458621672 381302192 723975237 455137851 945214610 5066806 637803706 708923685 368615631 274592433 526689038 312579330 877597933 433463876 825243735 537221531 622893749 456633510 638318186 208356294 180420486 13791449 499574523 889969402 462961567 743619200 802982491 492379136 980919962 439014839 988727811 178882071 673351102 360377476 71939168 479778783 562372939 327621374 460340604 629849422 691525767 195247544 830604332 360512114 310094727 445044799 768993173 316321295 980464492 58602313 366736024 568418777 321999849 789500337 959020820 546234311 863302851 508783013 369666447 124603227 519931445 294651884 42604937 911891720 878746029 473869404 386893853 804543428 568529705 289062142 447714241 554663209 564126652 647733318 219944341 54718954 966585343 439677005 478879454 113720761 367205732 614136965 401123862 415723060 1355032 304685130 579137697 86148237 444944622 963351593 195284555 998952171 95257013 170923540 726935582 850321914 152127507 821192139 104591078 422737829 61108814 560537280 885986184 196177282 505500068 724049967 511626854 587337212 456310762 921352135 989663118 208399331 59148285 693279423 468806700 272009089 182761917 303590226 994434080 148976389 968199967 891235119 899226323 682382306 233079420 71659937 688125724 187328864 352301676 826519502 920348488 98101170 856384929 184183390 999722263 437425784 53271512 391231071 84566216 424734374 270058116 961401685 616917363 247434018 997920276 985583319 424053253 182495962 309293142 337462510 232348533 540839055 942475062 135411957 287714280 534593686 96923412 385069315 564092400 470412579 419944689 997255399 293199541 237840307 143031806 395905903 878970409 677211934 214820951 137629165 918796847 68195671 271301363 817344103 163336104 138969463 823563580 23079256 328939664 369148027 509882740 860788875 702246940 305677928 107465829 810120726 683734650 917748981 874579144 685691400 401663049 492669948 15405654 743436784 646911245 354061967 57080893 30779877 703559141 782904781 861063588 762107201 554459126 50803498 976521796 696460442 152208464 448345235 139108423 43645609 195240351 565542790 116364381 425372934 578587554 20854054 893847997 635000266 96640730 426677064 836440408 159558716 387834354 228252052 512858939 757769104 302043250 273621811 511679989 234895112 244821008 373023839 182376151 247134126 613404951 879096599 412180518 949531597 342587609 212825748 411589468 134796986 747136576 260622763 194734135 5254049 599481100 847124917 334557126 324040125 828707036 294020955 570724452 769101555 381895902 386927986 171360884 62609632 422230276 399911477 266907964 326496525 553145470 188254054 125535610 973760072 13936979 803215827 226209241 383786742 82300356 52222794 424874734 725673256 135075743 408177444 369961865 241081629 821523467 799537674 613264320 419285495 374809544 333093057 354030649 540086939 342464422 213854230 928532905 242278908 987263661 558181850 162661688 957478208 872405081 4059370 519594251 46948559 683607840 491269444 219539993 706906322 44939767 115485927 183448592 890413765 780086037 567755156 49020974 295688097 591199377 611869417 10952683 510000753 487709690 738557011 754027285 822179412 49830836 975099201 108330185 883397446 819205209 274942564 541836731 987584493 911211846 757605149 20969119 326608586 715785526 260298019 55863757 710817471 413235706 987813600 861406531 862041250 373433154 957386084 897944878 957477136 773555015 941747329 107757339 952526728 631146053 627128989 741227771 921227639 397886944 510569059 156929429 580867623 19446095 161688483 870871752 340998587 398549585 967722758 770687243 144151684 692628258 309270147 483528053 155732827 683178764 158120105 640090351 590840844 698728499 696189269 811312880 250304184 17574092 252985369 388939632 72799321 38138668 714730248 558859112 294089723 390458420 74429357 380198868 976529498 141888411 477617698 329076192 243025158 24740371 581409800 761306022 47383474 73882353 35099885 356838582 411001455 198075863 15059569 461688713 244279498 309895241 773651018 536431139 366035831 869171423 551981283 717081660 518780307 429853403 547937504 698563767 183880489 375755236 922601684 927243863 865061241 76743487 335073116 862793037 973198386 467394210 654318649 212604748 855862699 595021154 773504458 432579279 602602017 107359778 861669231 520837669 574081655 450532472 56668066 179013720 542948935 363967766 385218955 868914341 683554024 239643732 46557659 999389417 832287243 172208765 669739167 616692248 84749620 573978883 437400666 131464879 105449056 413049906 5838222 970454591 937273990 579211470 33964963 141125683 712989959 323333575 43249112 823740293 149562796 27881170 919988365 853992290 377459249 16898230 149005050 59046737 558844892 104178586 680063126 94309668 820292388 836773237 572374469 394307747 8415342 206479425 709987548 245280511 998132798 223369358 460787640 476402607 902055962 661340109 143732006 745817312 321471971 388095178 712692876 642637751 323689084 185522394 616474581 847415211 817494787 504057587 860633088 405561875 642180138 67228679 629009095 804304744 756203903 459706899 761843668 264391458 172786013 288157298 383988302 665345151 147867061 835573922 95079749 960616854 605082911 372572759 315527288 241757471 685308957 831166815 370256029 315876674 484120071 352237068 83961393 944193584 612164923 190204640 822603873 944967736 195198136 956183224 338674266 720226540 676164431 770426109 314902485 387673904 903137319 607163962 943920390 436287294 788661439 363409890 906163922 456578162 883528960 255031613 532589298 828309887 732854858 553761986 779483797 44669293 786028772 105950358 141950981 365573157 958585530 309299803 335801848 567835805 159294141 358126730 330155890 648964322 651853745 98525012 998231386 22783432 526764425 935711974 258822718 698312387 149069694 414894054 613275505 987286171 10907185 635170137 707617557 817460642 203078504 230021002 911749010 938186412 739273954 511192057 452650076 93813784 630001863 474950199 435616756 734781955 513303572 917096627 377040104 977769654 390979046 433147754 410365551 879866229 203426654 504599111 630455454 233877539 152156516 731248227 970561082 459395967 771739277 940111802 835261136 433454694 733416808 406142309 32656973 924535166 887803396 902604280 890252781 196665930 555486792 576301531 890916154 786021712 940144379 903107100 955209740 296979423 445337709 71077714 226896034 331047153 237433543 554010574 449515289 838684313 923091349 142903670 638277883 997355766 446636879 863968399 258888412 480939099 521906727 672030608 810460567 387684213 238294986 640789314 637456715 180316501 566708445 164174966 749767766 813661231 414814161 644673275 951993943 875292794 955336942 319398298 732024909 297907704 349404671 188796961 655604667 140855537 908815832 812638726 243115985 517570269 956210795 690227355 113262785 168235342 616693838 441087241 522082693 825182178 366778235 524799187 158724054 721457000 228314744 544557751 628375644 707983940 954352143 796403099 969572164 156779300 663676292 13296959 197012896 394780277 277756312 767539441 369711990 945136409 528469406 129815126 463666013 681431374 134359723 897368239 848678679 562268013 813910758 376499855 288976733 376896475 423660636 257574391 72713763 800769904 356415337 999772717 222824877 988927821 240476425 645911588 557951357 790616828 656090809 312320248 405665596 529575037 42146369 858124092 639797607 297642056 340502127 476931562 982418681 631038605 631696902 847757178 235713942 572730838 234924623 397636766 231740290 728026041 330173613 749360391 78114003 644786979 117215939 877637868 819341283 213063050 284547788 964311846 156354793 623099498 315768150 920999832 949408741 905268966 189631259 835344950 937930164 466096053 814386035 246593881 234704750 527171618 660200195 788714894 582955010 349815079 81677213 270153364 387032253 901336844 60625181 155652957 713188150 988446741 660949081 533046666 374720591 396988815 747979641 769019727 949925611 590643256 675941141 82849828 760938662 202863250 767575419 66232611 572718256 349853441 351200794 590640968 812186029 598157654 361963618 336711000 831166170 771449222 301941007 983038287 161694629 823989539 588755264 44262110 361935198 118200248 619653471 160452079 926303752 505147332 827963150 449518272 185746664 885394003 134955938 141174740 450484750 829542335 26796242 67442846 791227744 733544755 123174540 854715160 151981043 604653847 240939648 278860897 329150904 544500441 838687661 456176889 364079649 932283303 936878904 379670768 566041287 514439045 605095138 184690717 201251449 771994725 926378377 571231028 760127829 514211099 882661059 558401149 921518593 227954587 506003420 851271608 651617689 873294295 701902190 923816860 947203668 663738923 852247201 737112491 287186212 294011633 82292125 457860388 769830776 320986824 531538269 429759846 557584429 911994524 328658258 976906442 211520613 919167325 341298563 422867360 154463381 370090864 353418982 867537850 76165060 874337951 343669308 404867614 493191424 825035649 818536727 994304149 212167062 199883358 721615003 350162260 419532089 116234867 339901913 894198152 160198923 149468115 180308319 143802133 475296407 931467614 592179371 703634568 158816400 642440163 916176420 28945213 125949755 572370949 606805133 909466253 31926528 325718090 619045101 843106691 525012393 202769412 37879514 851971226 322152016 917553808 788882815 189798803 875546618 284799869 426870529 343293491 101423131 685300654 228006752 908856376 219650787 986255958 18324313 97064727 974467206 750990904 530380354 148343034 456851149 175003959 213028674 207596854 336583204 393833902 669383159 358507066 518282652 390882056 911425969 451872034 151420929 177089168 634433512 305966666 699514922 970170741 964910924 920766000 836685990 358955613 320657044 32316382 505600772 295770591 900341594 619351154 841155851 108952075 411197783 499641539 506986291 522606619 450479089 895386702 11964911 755234456 153993489 212456025 36993071 166532504 661991355 640155792 576511221 86871438 294631364 688178703 844109386 253770292 728503353 117674320 758651793 310903253 411408446 765728782 270982865 719899300 64005716 648076512 612901686 501957874 217703180 914356680 285771929 551798428 120540429 115002414 908007907 278584506 219461784 445433733 283166754 682230714 138712243 393937827 767983695 689029473 837010354 964018040 363505372 117128107 177816522 750018358 583119578 799726924 850686307 340392311 864396416 950147453 675292443 382033566 883025064 183158925 875720609 569243657 479516769 192214662 846086949 453738565 798962440 813330452 866635686 733617620 327826268 328173526 612377236 72752371 724537572 823750506 808802973 997953156 935267582 699912233 629013837 458184076 516516117 355496184 247463091 702028897 210409951 435799762 746797368 663268968 521148089 674215529 838551482 267879874 638971557 800150149 675422800 68622086 223731965 833303536 456888455 174980813 429376392 182948841 64415055 891599840 285094166 8076537 12065455 191580722 795831813 416424939 183552924 124495169 239945556 898115057 221597810 33999638 761294123 672792698 729855423 487302190 214836085 991697908 944884827 648385044 221118647 148646641 895816420 383705630 957366011 684630590 520171395 914453981 4341893 649403875 390608286 775481397 243026971 728736682 23602726 484368173 574979903 185110214 460581853 845161159 152216203 222066892 907637443 698405064 95031725 105999462 607857347 72221685 812493447 272111006 300096918 706025756 761154676 949127726 517677365 400971404 612641474 278508757 987406878 218677005 761791286 817025044 633835100 953892286 167886701 616635226 376707695 466780866 780223870 977591174 231472232 897209973 872406032 397894961 885286652 206331647 666558095 159753309 996147274 757254334 253924070 812556847 891824891 160238318 501070645 581084100 203622200 207535359 397387216 30617040 489725709 816380023 109176947 948274470 547962425 795000606 288805596 635804461 60215362 135466881 458657157 160050694 517008122 970741331 154296800 353911714 401596874 649232378 819698831 553184192 568765218 600427268 263723500 560025279 467302265 801289958 963906039 362751260 43915490 356647631 217143816 537095595 504342167 962734529 983678659 440392843 548514964 251555864 883735539 207478906 445079574 8215324 306501027 127594715 867570992 289978106 253020925 207693342 404733944 368794797 55335766 909585086 343622924 589731968 902354049 814400253 655153969 647558900 418413724 206152527 182334405 373440961 123067179 323934155 963603838 839860054 24338125 855734047 811258733 934302067 864716866 96679327 922209618 325988841 125184217 759334810 123228083 648442213 634578825 435667667 565677020 905243359 387083769 493926612 513636289 613439953 516576220 237187590 529590178 624299250 704983844 13807338 752831798 557601868 8671055 66530260 963016667 386780368 518286597 938252472 299155823 560768027 79099481 909103134 10910046 444812980 916156682 524495152 478149669 318185253 868406714 52498202 78451232 606259738 426037482 672290905 994817416 819738211 661218506 860290815 269134673 208385772 234630063 917816917 311565809 667078642 430330368 398030265 906230333 328555555 43225167 32764015 178220287 267583371 767723956 60942163 719612913 427475128 732279922 875116182 785727891 232151163 47462708 480759491 228846047 807813538 295398188 721963445 721888453 999227509 688677024 874766696 442439037 407322969 632036518 630380203 606687623 851001704 806515475 64015745 497658663 805122523 451518665 291417813 296910456 372507633 513277373 617796511 830783721 191751515 349624642 944590294 654643841 781190990 237657118 614247174 902216171 40630034 865283829 824959563 50370624 331209811 112930671 912385115 945995695 564230089 531090808 907024185 515856889 368978519 508595806 12403862 964131849 627420624 275975243 318389397 883920343 952277477 78911045 181060463 903194965 44883086 432407442 490128365 862838860 478854294 316630679 146480929 149606909 86513 274137506 141273236 158497547 839718742 865825986 461162766 213598234 695161001 44273408 721601180 283465334 277399618 345932521 283830525 892476932 912971771 347514710 384053326 868548121 138501907 478186372 166469163 459618386 509486382 839486679 930715218 950169867 434061088 99485601 587626637 359370955 949701997 802850728 512076532 261273641 54658421 395650981 7109870 404076773 550919097 17218767 998351638 267595421 2405677 340314548 942858727 256158093 433541145 724882295 415198464 985643915 329971294 910892155 640934630 689899127 118545643 186030462 845288448 66126000 146542395 153762131 570697754 821036001 920302270 452307683 319297147 671983459 871444013 864021916 628378187 140623021 570532866 553517724 681122343 789518475 935491207 447885199 839600973 284397790 694590835 245727887 770621689 586872659 71203264 996511358 70452317 541072666 664840972 863086719 804973345 772052976 44815851 67461322 296665955 609921426 335779717 930168774 218283126 683202399 841526495 959832897 10765811 165735623 395218155 326481882 563977726 354213626 813500908 253447336 389778884 150955171 357517640 319121136 462868949 163313943 955245653 764777413 436317601 659722655 973817796 702232919 996229235 862716951 632444287 860395541 491244359 13143581 39374732 216264130 48880857 504616942 661873461 771733711 557919359 780262234 885645266 132241888 690686122 596196997 258914067 780410957 379466506 119239834 30161844 292489300 416050899 322523403 162633458 402910376 69473673 52596146 73468804 488746414 768169102 707498709 357545105 378252214 858931839 447176143 576733609 496398559 745711325 433683594 299259717 167295954 427965587 854932445 300348342 837476594 507924770 40595864 477900293 755965042 834636996 445470989 432616904 869889331 940546185 237074835 46598178 910178875 711847899 621161424 525175993 140935126 420105763 822664169 317410582 605841994 446635152 133781650 13762570 537379301 790712562 141207243 542332982 69101532 788144759 865356149 714105549 472506203 78899382 407037201 8563836 186357252 213301304 913271700 176940331 821900681 355315659 292848849 328177274 244129383 160074635 262863615 879982253 986376081 297609341 850796768 262031166 49158496 13763875 360101128 551580300 521779191 815262068 372063161 129942576 127570643 644086024 69950151 177666147 908542837 146827362 626513034 853266349 552575201 140906033 810515051 291270066 404795165 443130577 882027417 800529465 341731061 391642574 27451168 887693708 784468460 788366697 550040457 896612515 775552898 196009301 543110483 540398982 439064962 744482555 492299056 981472697 51283035 703456332 39196418 428906724 475369634 781484555 226459083 202490378 425703657 820272009 393023548 544003158 633867689 719536500 231788437 168058333 672038608 365777644 842617693 984059221 734312501 191557658 220904360 457108710 725392073 756310010 235365803 330434079 607139702 319393951 980499709 929939005 369308173 32457113 756275797 100724210 371533275 209370894 888649798 761366069 477392022 563104299 946327189 721640004 494486860 48679364 517303407 239921887 123323985 440870083 227130079 247764910 874304152 658760094 510946359 939073605 304504901 424609506 780741179 940278969 466266826 523535205 364815197 458233430 176264000 666000701 186786548 855335268 643588324 553616032 579617869 143032602 274190708 682151762 716228165 611532028 697222685 624522249 468030817 739081526 570366100 706016152 863674921 730718075 274354138 920958013 932858564 808598734 896951608 928784102 448278488 930993517 851807324 392161579 204325963 63306822 445741323 562411213 36088857 309159121 439594977 536795578 619104939 990153592 39681371 679313143 897228751 987465340 191364612 618456925 10990957 750132855 335130153 602552736 683259306 385950727 310513003 814039756 848060741 323254446 43329810 134653414 288526024 221493115 729995621 398020664 575688305 269142521 960726597 628362935 89244281 501877101 497372386 442425737 106997306 233739456 75221967 623925028 10755438 188894700 639299962 463777372 531199150 948766783 231538427 401712242 468880774 542081805 405337970 230500758 520265075 479165865 649238968 190647137 792650287 694319177 292272475 298848887 512075276 469899951 415472927 670264072 739260788 873522861 680672372 54370749 842193915 906611866 530327428 595139890 889477035 531430151 568958378 872141277 214083161 951012924 945277719 925758881 925670909 627585730 786004099 528740500 220057976 101306033 376474652 382699270 425278674 905366583 796260767 79479766 35616126 888131092 890958293 357910986 188314730 737637373 906142764 519822776 997966285 965830838 316001758 198578960 386318361 535387400 817778031 886408863 64549608 325846899 637744433 581401784 646561268 881645817 716711331 771920513 358062702 965197140 110212479 247702361 39757635 477203171 420510422 111116005 834051511 617159437 88239595 311746671 885827697 519340098 498350724 873906302 436125706 214920061 355582669 737963965 679368835 304310743 565512064 895094524 376156474 325951627 980746425 497493282 434463990 267099334 994401275 568568322 228308836 943733548 773015933 744951563 106545285 916829347 375080800 996891298 306710562 194813970 256704585 196205873 964919079 483991201 540028828 143657341 606259902 319649123 616154119 381317983 708815265 773606168 346413250 214503395 182792261 854906817 382023793 259973637 911131818 678282456 476601318 463640843 52750273 716994314 140115366 601654907 224884308 933510367 439754576 751686378 9037126 357400399 512925404 261132871 38001196 643664970 183352284 776049242 406480646 268990782 209833494 800943381 243113669 121026670 343543803 220508939 263040617 399891139 544222718 199900266 394043355 926145509 330569242 558409562 156033745 413168034 807129132 257326718 814340537 796132269 967916861 992342566 142941834 794239639 846283881 616667557 341225164 10896528 110535955 944938799 525076102 464458096 809777138 449936258 506478390 378407073 795600895 373267064 556943614 359018624 346187668 226625997 173033664 581827088 775934007 279106544 410343278 813265175 634793972 918324570 461747374 662477436 262832234 717421039 232198293 966001135 384200134 790853373 447509201 425941696 895165471 634963290 394074341 411693775 536674671 247601440 27174893 494715733 263162940 299205168 252622308 176891294 592442004 242137363 335895319 814120665 962874592 544222976 203987225 39468691 972827271 204459769 843973726 968475766 114234070 179314914 797747321 920847241 293472963 26058807 419084302 794301113 588209435 393762926 281082049 729163100 645924187 157490447 218452599 793132543 457078459 831880127 687334384 441659371 747745276 276104660 781120208 784927548 961979631 105267024 408210381 279312021 456881513 456909563 228967593 937815164 835658727 128377302 768499761 392248495 520862663 590404810 110377249 981697421 234349531 986165595 569977569 641956619 492053616 715736809 99965133 300392026 16904320 445161964 317231041 803524093 252958459 973166506 856530723 338022891 383331299 774780051 850704952 491472461 859841253 502073941 92086180 608922803 247883527 595581841 885894654 637244562 442746436 868123521 650843247 721557541 804210877 817400086 516317924 691372184 430391030 450544821 337215528 162609724 641058612 586357789 499309560 37739652 624581903 321433672 318120032 933092283 845722419 975973677 359902354 416799848 241285771 659625741 523655077 945380877 542865539 51489080 392726608 227400098 415007962 850970046 997236256 148324782 408902457 823364515 783732702 324979631 326179691 297772446 450757390 360584945 193814575 727356374 93324942 643992026 264590507 578253875 777610557 739999075 864416293 380574589 727565836 33384532 917548206 75109456 50859775 34545096 516185824 857147417 645729051 368400761 640054609 832145516 35514469 505232376 759918042 752840193 114102601 175580644 673065726 115072957 546853379 889396555 126241865 822004296 688164316 313328546 417063187 24630435 436070552 313377853 430985514 195012548 354287930 268024493 41875466 686955256 155380025 945478975 545420609 659464482 317209747 874397858 451604628 717772154 321159043 556968487 75199189 697867676 726592810 49870950 481899863 853293723 334460875 348977640 40114464 966927733 263572610 87902793 413876152 228135834 745404940 25003967 190655607 474770936 448506823 440358388 66509199 817096764 656030898 152441136 727015168 507385948 98100312 168139114 197702483 418500602 269572976 937516970 671782747 737073109 48528912 434075478 49384656 335053400 144848054 4698863 966234378 607509407 749512383 616586698 386402839 709227853 76692546 967391530 740145184 641407427 454810032 909191876 450876597 869739710 858014494 939692112 157326157 643653228 197317191 30259482 338866433 993127349 747712606 937419458 475024800 710124639 762187822 147841135 865081034 681696182 299159901 32434641 569036546 624123368 196135364 259850320 98702945 524449217 829943704 56765336 307185725 646866267 67123875 501784672 130047373 84667792 590273138 980911029 828491821 903693973 365320316 445977983 45721941 638236158 488300662 89976166 767006596 883162892 220808954 348461894 493417705 235453231 391768404 782927618 573119714 332479852 737354209 861441393 969765193 918561894 728515896 190426466 104465327 896830810 531039904 938628216 933235067 579472460 266549606 960819871 398937924 128369756 921445084 574637654 703997268 726492899 208071172 27572633 453887561 801746734 346934120 258006874 64357371 478587551 844258290 523054717 543731656 294115800 486133581 928732383 399201249 989686875 182584467 717718632 748860987 918631615 349620002 487869250 307619989 809319952 884647254 521570721 126234348 920396684 124224692 590007085 524102172 466914803 605533118 651383671 880367878 698162148 834984140 55504873 334220176 462145548 586966668 441544182 703324705 638252446 412040485 94233859 878225467 999243123 744400299 737583489 709882682 88764035 874987663 449370254 816163571 435061222 706391398 368009558 518643769 233029976 487815988 663551066 551462454 18158897 340966154 212658760 961882747 722549430 874777473 743866774 719219683 179445927 707336352 821504824 270724958 517804570 852884440 235175371 216274379 158246931 916378895 8245646 560846717 903157306 188761182 119706291 153894866 641056423 851973013 168573675 441771170 924275892 725116515 963361704 420559166 799401894 546005142 529496619 900484927 431289392 507400741 986788318 907462246 502649212 643785376 796870829 787145562 237653166 505290702 766947469 898873726 948021355 488644554 832505582 691998372 730756685 388525281 191934295 945343806 192872018 646678188 890963157 783018509 637143690 358946861 194038553 79988160 31113172 133858707 344756173 569655300 305144271 674536190 353365443 619458295 512576205 15160473 439390036 385943248 628636580 237526199 615744729 223974055 481416970 331793339 26613393 771554416 286242858 508680434 114076060 553501069 603142442 28292732 704990048 627668012 521419044 383444009 673620594 856540092 766752855 616553588 771958209 277519798 289315204 705121570 285309163 689087663 630529842 116464984 495168475 324786656 767299977 137902307 752398520 162213391 580767744 749769693 975952153 27041131 86655097 504676051 270956369 462081623 939998629 355663522 530995395 771600489 501235217 576549988 572414506 873265556 716308861 171449191 377014980 817410590 255548374 932385314 494440221 599702864 832543551 763424031 565361540 113826600 36918250 84079742 576931270 659968431 378903465 928155502 23552583 440747981 719995927 276322734 241338793 835614251 392385137 125480937 552879381 311211577 609834320 589569875 525822086 430256934 250205356 871737181 992597828 964166628 765647289 285018665 156679026 819024728 337504284 756212587 165885502 801380876 584186037 115543130 282549638 49618972 470271312 467559252 762286081 132936975 825385163 947761373 30609578 248524549 205542320 824058166 707951619 617344101 266829125 936359947 463241089 668876698 514417254 320664189 219413094 866701997 334167043 44563844 177232784 227841660 321587343 714177005 214261204 377950462 638095167 675215224 478849909 192677008 250510964 859658555 973373430 989881692 997058834 219875426 845616103 372116067 438813142 571542233 365927686 287760654 475182878 697874637 281732968 646191070 769503208 725889056 160130077 320670151 152449273 470657726 393676432 952769090 747048793 302331768 113315413 439660382 651817002 382106624 901499440 453630216 171497392 932265939 790761496 903478152 699043116 963344747 735729416 849823723 649034447 372171889 231309103 21849213 656428722 480835716 297592181 723350284 245850641 903396284 154572965 57046630 240572488 944759623 401542837 40436260 915374897 357563502 860720769 486594607 610600517 345470732 687165850 577722990 785598646 357328342 612455211 586871203 488150135 710484466 890157443 83921664 741932652 132346068 934226237 723632110 375172607 24774032 692315339 169816651 330769293 470285100 279619779 409768369 919550693 51304319 351574071 387975554 162475281 911116302 265571674 60820324 497987220 502144414 474929220 755722862 635696980 99792516 186437581 896669781 500690474 539588767 332842951 948545608 747915210 83177120 85476360 962608364 789616685 387362623 543207988 435911698 90892128 886717550 963264476 559559616 10945660 226513996 925596828 342255876 341925963 777347327 297729710 762606913 503813894 738023957 799008351 396650583 554336743 558445015 99761388 988742360 858767350 56957756 592351313 372629015 589763445 955864106 576187449 975918289 39271329 745225344 708016642 944897718 962937063 867478078 966683462 385739995 739421203 158568711 584005668 838788662 220924744 745217860 115695312 418690047 828666543 521939667 791240735 556768376 316300982 927799796 302015072 368720526 58835343 638197231 82551589 492752027 57794209 369544004 705538827 883651324 737825558 413208342 83603920 493173211 543473585 155757944 612401036 257626712 645072467 509672471 174396683 986156693 263445158 163549591 222326216 97519393 173094386 749786903 702452191 430642063 273836236 148059477 247021991 582819558 186692057 698922992 197374199 260701183 982785917 951298892 441837137 321905825 681004885 959037838 850187527 403332385 159569556 639235787 322433993 397128707 541889961 205776272 790852374 475242774 223119086 392597418 91028421 214486287 480462693 730613698 70955954 155919939 618308748 231177935 237196133 874167166 698593335 732190341 306683963 18492020 713478734 208483600 473191750 791834062 502895118 712423421 404487792 273779156 863923212 965083781 380145462 664220513 309521852 776694879 514037179 841946608 412296373 492652637 118210912 547696048 57640897 713423688 293472804 953580894 434495438 91873489 457329362 208239207 761712521 415225075 697603382 711501541 502749824 653064543 854439520 794640083 984755461 261299549 318730179 449587698 764390742 578689971 634319466 675889026 311626752 176170472 666664368 91776853 777102812 649940288 748737320 779921456 416550504 644037821 192384618 524964308 728576375 95324382 237744824 254526193 614564076 408290508 890835556 634428557 263199638 362110891 71024229 391667984 190989610 527259778 28915858 639169467 231193148 598743138 894285807 307203114 482658578 937942837 209260433 638524128 346460878 788729910 452543947 931679594 235408664 522177799 771300627 922779573 129429808 804553996 845023213 537380209 613466376 973623707 125184801 215638228 174475117 381113464 124242383 864648805 408936403 842902649 359465252 190878897 509393263 776048591 619874318 489016097 262288424 767799864 867845142 919269420 394547989 853209781 562390741 41080894 433459956 341266101 264712813 674915589 332986814 720268669 791951259 666930048 475771774 746475432 981254312 227029628 940604607 110084185 995290458 669554030 745552855 995823611 104982607 554159236 350648882 18386577 490252891 343067972 992888032 766370088 230379837 198835823 529377086 559136636 848984223 34716697 512168423 76048997 313585515 578326366 42040077 233147640 744324354 493315050 66007292 687106571 5468029 367180877 390878772 92586999 123279727 239614308 649108326 439211597 160308393 328644583 728411205 440814113 10679332 644331751 626202831 153647111 671425265 627702197 993637398 203689416 692781295 273712506 295301235 721337811 453599566 143166718 623538396 805505861 45284991 726842807 188078146 165412649 612837766 205758575 553057190 830004381 976369393 198782551 78129102 528899954 655875329 568891704 889282465 508211988 560829978 960854013 569555207 216991855 680969150 19171267 59649044 113572531 578818325 251928947 802367165 432115502 321473561 556576239 16295500 305312785 979376366 213293875 824847690 210853360 256587705 271376123 469967516 591660343 970162693 332870785 603232326 34872580 164445739 388648688 671303341 460787134 268782844 268106055 844075281 858977876 927380168 815429618 899885282 887783452 299648485 878752759 123433952 234379656 148043563 958960638 81823122 170897082 261169305 437084558 488652906 826396145 465109554 565967114 886878784 328140856 786246892 588588126 22382051 61346929 35389349 162406957 887100037 982602728 407732944 878764749 242818635 709083772 774424636 904797421 65834204 857561784 75118935 551968079 74505772 352973809 587680908 38576389 651196802 790225343 323981840 201122857 976777905 218716952 662212716 461842630 510535612 922871681 887560088 438649905 70373736 742682584 279191418 402079533 668062237 63556529 835260759 152451672 764841623 952510250 763224955 363651110 987629166 21022628 892970046 332726352 230430606 66836184 278340026 962958831 525460000 205803847 493597510 461385368 65580415 36357184 827731696 584229298 568366329 884741117 338277461 291315155 61115468 239218817 748954867 767932570 375968582 34205194 3122453 154195406 5070033 405277642 467962775 954837882 843051778 903264649 628334522 87359689 740954660 40446385 779299955 551500668 695649435 19874229 228777484 111600262 368725011 440032665 122579513 409928193 238301262 804584441 837238417 96188769 622047717 611520840 461211877 280344846 238288015 264441555 698959555 868584359 953040106 657041261 887552689 628472891 125728160 563524253 685384949 209257114 308306415 546803381 90291281 512479068 196633172 948925491 532170170 107612764 81991399 277100370 188021411 317123443 985204932 424748236 125886833 825726471 361390862 88888829 23950116 737557294 171075195 35199062 661274438 285074563 935794851 736683597 11683073 135490555 717326118 664672049 757652786 442382714 423288958 453978046 280494561 886931899 77928868 839807499 152442878 834676944 736912847 765097026 166501456 239150519 924487623 578594118 295661147 341858083 504091562 974885633 867843534 343856992 642874683 454058481 622251235 92135525 856811586 323404022 515244067 17118459 909654487 180839843 892371970 790674596 886652190 592202350 992856852 692010835 7023853 11863111 481844130 304805539 27980983 396203998 57455451 265360732 211067877 334881805 658694849 294832306 150582357 773328020 930732787 743473050 407179951 161040056 558235987 880525124 308413162 304858667 467045196 767326267 114773487 323694477 587759492 931362869 953510671 689588891 969172708 47923055 186299662 130015938 225692159 177922262 741739106 792844236 783020838 960181867 724943338 356573545 289589508 518655616 739944312 455902164 517524808 239461584 126949991 792333690 728683837 50687619 863121756 706687129 708837900 232434354 592166021 160276209 343537730 213462925 242356108 484451690 991377885 439277672 895267582 147827029 227369491 893005449 175927072 741347862 693837269 764415447 440834496 331772738 111937436 488010723 554589327 212511665 929979675 880880108 342163059 533199158 492430937 565602709 35491983 610472577 523803261 410552817 165153375 682029662 128630958 597902270 361051493 94411476 412866106 806137144 769882753 698310328 572820919 774787362 395816383 223574106 725591559 120274213 141737874 8467212 682684512 970633875 436378966 858730935 660490449 976028487 824749036 801161098 619683042 463716597 592081557 290919292 744593913 623325435 902006699 381522905 543726457 871863000 785994351 623682197 649545159 838748175 941849739 924627450 398555099 19918526 761568788 103162388 356239239 734180760 569907384 642525215 494238731 9057513 302010405 280241429 790755245 420408150 744733604 765684399 728924376 588683576 368051152 496246257 898836044 614152766 779977149 159582497 591119781 541109183 609168247 621115222 446705649 331317785 863354935 386221122 976621225 397543764 987139603 58349615 506752165 774952552 516878823 513910960 154744547 610093952 655873247 322758613 383052109 661981262 782583754 381092147 499955467 909056381 443485187 475218580 869733900 50267392 206770297 875237315 322018537 770311986 172885301 102215247 805580677 326268730 280666530 3292533 37816341 512920868 999956160 277451457 380882325 723439626 979915457 588834427 308026475 968420398 981989381 752799450 314555533 603177394 869254118 239649958 723066381 36998812 773545819 328838640 393970364 862224616 212087929 888662081 86943120 142635486 353990976 462856587 862984678 639506898 648958513 883886410 368541019 266115843 734107997 673974532 964923719 758872649 495133618 722611972 229254083 229189028 332910491 913271566 997806700 414066458 75731082 258904187 867712178 486707134 470657383 907623968 573385244 897820444 15863803 488228341 673787848 954125833 123300284 430589832 172035763 298658999 184876106 227358866 615379289 795095571 414662695 422071985 701211930 197037006 919365984 456197382 822401336 719606478 393459416 561881536 127591307 631989587 906353654 145591973 126852211 286569282 103181455 369555908 947052881 199389016 247402555 651345979 560288726 576736531 663180415 561461848 478221533 101132730 322509319 164576447 40836749 321830721 928318316 192428689 480105128 568880296 734081304 694596692 758724299 134617106 5143127 214847022 54421184 838928686 49468909 491482409 214735650 379092665 316818022 468921629 847736738 711636143 591545391 725776481 980777165 773757132 337086567 929729276 632353683 603225502 405346935 750789516 870016363 195938325 143514179 472287397 539722687 532572101 504840110 651450684 510375420 743989081 500918331 395893083 964872063 590629356 858912693 791040064 612603769 472581946 689277706 872511766 844604303 220777218 876474133 271567029 44174209 346651457 462637323 126265701 686611019 148265282 117711662 172247586 675708487 266249057 786035492 661226753 346831180 885529336 431213895 47669624 264736113 48199801 159691398 513526164 900579049 406470402 762961845 191575739 436851521 135661906 716907483 728886189 87414026 89633355 496235788 669500026 377562223 582298783 873006876 689685942 966176134 949340433 248097288 748856559 877000632 275261065 118084295 382904811 258097812 446550700 491716202 176400141 547155840 416972872 927572918 951832838 278135498 12622045 483427396 429605265 744260736 603905875 388269530 528334901 426350481 113517220 573987704 875347706 338691837 560192683 439621120 880575058 711920709 878765304 649040879 437986377 498119085 540568825 556421193 192562577 513384318 173721037 881191212 876815796 718843079 737082990 609143834 194904999 12440191 354880157 828654006 131553596 587264187 522378771 381149417 116589966 999150208 951230457 269457320 46086094 100240806 111432886 562892152 493742883 842356072 335468838 242355483 928594134 410765797 107259633 759160269 244995365 92676006 643019021 797862792 54222652 274645399 797345307 693916245 507011098 564841084 84813515 771323977 833723274 373190921 534930961 413098153 306702316 553571740 449058212 127656570 185660402 455824954 711574319 87526855 416419048 908585593 852638210 120624401 121430289 984392802 715807075 740805415 775742306 958067445 180682331 959026193 234348806 648763065 429520384 279930436 359124668 135090044 337898282 428086543 182825808 938302976 905802600 332966385 11928407 609154191 589868547 649000917 635415742 642270502 145716630 867922537 126206548 178028225 419476858 268314085 456664932 241882704 841767260 875546 410985521 787954389 17488643 849984470 519454137 48710040 22167946 950116574 209876379 137427255 616720335 316654002 616296509 446560623 442488112 911863795 247839874 740143484 959669270 746631920 140732265 425491123 159889867 835870032 647426509 153400839 862121208 35154063 383972684 439545505 741343100 530057250 255936403 969300660 55012035 959978084 351011102 769501532 136945065 206986744 227772652 932835055 867158529 704080538 272046867 253892447 84228155 839547791 94740104 816477857 586348462 387814926 264673342 878780025 726154461 380572980 260345155 637327139 99795785 664201747 487540932 467352192 774042219 346658001 484453073 248319056 674321526 304194671 575590033 350589174 298872034 728610832 12439996 502445174 697941130 241096271 824767526 892720730 118679275 256226491 183948696 935837255 402137563 436459121 744755339 876945437 446345602 953109389 652644329 779810909 673431360 54040177 274149355 94122292 533679646 664626774 405686261 145325337 628051245 714659061 193827224 583291218 126622547 900124246 129991722 483379597 616044588 578543985 530224130 889341860 324699458 685552918 8376185 273895973 970859894 446757023 116900427 535959499 85100172 755151833 125886694 822764574 400614283 844639366 65206030 865136819 91657796 854307633 388235625 784636775 875649590 214251891 584206052 203833280 594203469 226577318 77054486 786568766 508482082 506776499 786765952 998585406 735138335 386681965 406029422 788618977 717155744 217819107 266321247 893315128 56707898 718332347 321805627 595088457 982578037 732917066 487758019 24399049 431232166 174958328 160885271 171456894 628598466 390568407 925170333 10388038 213883406 579787659 737836541 760030253 482040938 178971988 158000124 138132014 931269753 429170954 809006753 623708095 688814634 973354419 429595148 532313846 172064933 455940078 441434590 570371715 207858140 57599571 566329214 42710766 31558023 790195438 828191616 410434876 442006976 318980317 331065724 234004435 278101406 232926969 783167644 871878824 489807572 26666846 654512017 858407168 446397216 567732832 365280828 738532687 442537330 87295366 483107959 115486930 926801088 121230117 907253333 791423586 108909514 227358782 914352374 281087492 296117370 545777006 64418623 980520101 755874383 952817613 874510530 786309737 511676882 437402164 245073465 707881203 184086476 604735179 358877780 904116838 7108536 525656293 70925871 229465944 28474134 63996134 700266745 373785575 484854525 506444306 985470718 369977378 642793088 989059049 65896505 60339387 770545242 838092204 89207734 592109724 122615847 669767750 993127543 496062661 18103963 507897401 16460435 413652277 413165366 746286726 19937275 66834970 292154776 996535778 101727841 881647218 386693926 188756742 488539803 929097981 358100614 559327223 965446714 357135164 590842429 860005904 636584476 37257285 26121283 110654853 294334655 956018587 357738908 925968605 188875193 966306988 480907515 128796658 459945749 641596891 457431515 784893610 955182880 782767415 72747507 365907582 434882881 371370392 24301129 201108789 775771806 272178341 553142137 771422584 940472089 997591805 32924553 420963921 39012808 203017251 100532256 254153429 237877346 394427869 283967888 499499000 916852191 962159156 14102298 170046289 224726685 396545508 959443946 565502688 405719540 548095716 781057793 844385037 451103442 205966529 165337281 141472950 488774494 676409175 545487055 803775292 759377162 108421670 971145691 153126660 592925410 244109310 325702961 216293440 764786070 206153582 675504600 61404076 796319670 137542471 84762937 223086634 303526173 113156294 354424152 189650780 648004807 851216618 994944160 52111320 973244439 442364382 568117498 724630017 613031030 470694582 472337711 10191254 136216317 583922397 891455176 574917218 62485087 447486023 948885756 352074524 913811733 951618495 733160894 673795985 459424230 749219475 996941209 681704101 288602869 105815907 615069091 613585871 226786131 987908670 306914744 671830646 748936890 831091044 797320176 649129025 69409957 232555365 844986139 625575270 185446635 875862512 964610543 432470261 295852832 242545613 603531532 191655947 287959327 849311596 531927290 842483703 205700480 936392702 713121694 92349238 771844450 463885236 187880046 480744776 17422764 793229875 653637091 919327588 804959023 895545178 268407295 59726236 935194430 473122498 342876471 533458914 351807657 559491316 795904653 407247694 159636184 986847300 496799901 497461332 44774738 301016680 236009239 857735185 336961365 224742228 745162813 260968681 870798533 256853458 601940112 442783729 245596429 552314944 522127672 294556781 216966286 999861927 464771618 437448911 64584136 46464098 548003895 47050233 767708571 730669974 792267506 492454462 296426799 842014414 945900971 680796221 153585014 482082994 125373482 188253739 859643116 248262556 754409843 682303859 813509084 101084472 540050749 585992223 969680853 348261407 357630683 606694881 662587151 347374825 887522315 504013974 644148847 358441051 463083827 632182527 712057521 638295668 322780078 325567437 166044370 969434283 966972954 710243846 661337534 667944530 659060064 421438098 279539266 409716097 985144280 596155084 644330799 570603131 168549136 348395278 730678329 796050040 858858864 446109022 957571146 801811507 305544591 510932471 873678775 802285169 385788508 300948058 319049420 704280333 681049259 331354061 839113080 624119952 191773789 417915179 656807823 37594593 769101502 600416774 718667176 258693137 524630815 699902547 927743582 89094829 81845394 443892432 589382216 690488741 728605117 355482863 346681366 721730907 626798009 424264592 340364952 802864850 254591348 513029526 478970403 527812029 438354074 14252060 12550647 857237891 5947293 991745990 303717286 825267467 325851776 255077351 183593657 554026061 13813898 548967179 67273703 699839548 857868041 156053455 489697399 604868669 931442720 258308617 906649792 151419863 616469044 303688067 775123175 72047262 911038000 557602266 960089660 418171081 655542037 592677281 31190030 639404334 30095687 450277145 64154626 693568161 422393625 789638399 301834523 742581137 390919447 527089924 426988308 354469771 131555329 943307124 520801033 562397018 586229324 587008490 186579615 40607521 914110671 316570417 252335581 244646945 38644315 519045205 428775959 27456087 69877913 629187377 960427913 466415007 440067237 514789415 983001401 820628389 623455398 693848621 476663964 52719029 250563597 28658154 939506167 73476072 315820197 255997752 665842533 395682528 590995477 32614604 108956216 287898070 310758205 515244419 534042153 498934419 697120205 829050829 317367178 914239373 920455524 44783399 755093197 695467670 634611681 178684965 770892441 943134356 465127520 384558830 762230128 149697604 751687725 446197069 781446442 344713046 425712413 651926496 977836562 826668100 1850905 138337310 654834467 662432310 322075849 804911698 395954959 76469795 331271713 636571148 247392037 503969652 638528826 827894671 36620740 813569750 337105083 429532950 671674017 457617903 181608595 84027621 914615616 801395704 227598380 723332693 215498847 521434916 897756193 907415052 847672135 616792308 29798513 667372011 113908919 18802808 523201074 225667067 463426420 927071084 677332100 802238697 806304694 855153343 428903676 588320960 607619608 191769085 559658784 79772452 389303316 330937123 100141659 173438991 805026937 913509904 962718151 461466984 915216453 356083532 991449090 337228937 298382787 561021767 420895411 447708454 49966689 18878895 910135471 772143432 992972752 943114548 751984511 690714653 714238478 88251823 480951400 668099625 928615850 637835429 330553517 669649137 703541633 689759237 153818687 337782371 124955690 69016606 365143895 458367638 533503220 651957272 897936183 828893058 387630506 182291864 948313483 173703683 565749220 245766444 473017681 830785032 902130662 688879364 769735815 900850208 935393267 8970296 453586993 440503791 630388389 373394987 430398664 794556648 573888360 428632608 168374955 11585728 200981985 828165046 74622295 489478612 953535016 17507225 723097483 498221093 666189096 780971822 287439838 464754652 524040311 54395546 848033062 424638694 985776979 518718907 71147640 630878597 108858338 263854597 856785080 201496240 274916708 296709406 197592647 916406683 613926585 694281575 965761756 882304382 171621969 568963775 240072115 73416040 169312963 529285841 156162320 636515715 236496153 931691173 686010986 225861238 342399539 712300627 505252697 782755750 239021881 802220256 251454222 238150856 226124199 353653865 159127479 643904797 916753324 294696755 29491274 379057865 606432564 267509136 355549343 929916285 227857373 606159512 771323304 62914096 617133930 598507889 995603389 999094302 118497510 876339818 795075797 623893546 751718355 906487219 962605418 254184012 341380624 732733697 787725618 884902782 506639626 932152579 966313747 925405672 78483506 979926840 774716195 636958343 951178016 238266306 254265014 779847267 179044601 352342321 782072242 287681253 757277207 247949628 238793345 741862883 41495711 725932059 869787630 389322882 567341527 886246219 809379116 733019101 826243938 472991543 584860877 56429734 922350015 31520902 541733560 617499728 607733696 871229739 963691997 422871810 246017023 276126221 441874198 821135555 917809085 168718485 614964166 291539538 290199497 436860182 967547003 449635323 338121590 202944309 760946206 420643668 608742042 454402214 134656957 343175406 49668463 210523657 500386135 700032242 441490993 952985451 48456986 252667543 402876266 841920011 115566113 582807334 580951114 138463449 521485612 520918686 367944006 193677617 25346633 497511808 454401979 359410869 517206707 309600394 234930558 204522216 508843299 800626949 80157069 396133207 435295364 629369397 435820344 35801581 413142746 517106549 650866264 487881122 498221625 884897881 680364135 713638917 959739216 332545370 881812949 172536720 982525813 691778897 668818251 252988087 187093434 218616802 140233595 286585966 977874267 518606140 844044436 657027978 844346963 834142124 92469651 320144752 143540866 550315015 664042555 447741023 677832054 346385276 123548020 245853032 448797659 329153565 793493391 60652220 205534565 318163468 526160250 318387678 320482127 825663949 492735998 421859864 839231871 73728685 87960056 47847000 705349807 183719941 300406853 174409910 635628370 591621777 203345359 919649856 468288481 26773504 338096469 560716621 141308803 993524031 651897691 641163662 172861516 347986470 540629159 453397591 829396686 859783288 906055466 758171018 707014771 140437985 960160413 610608864 767144512 487219382 787845002 268555127 133347220 142230735 638766696 92810934 706049463 96578799 997181793 429350286 756913100 66447607 11722515 831620322 652521756 961266853 167984910 662191790 958665177 369784377 570005563 217370187 645805838 368357200 701165568 141565564 732606611 249256284 914247805 121794044 833013191 824397533 433431970 489513538 510169463 259709235 607016407 146479762 273800008 453419026 846539354 940817263 695062154 511217316 649281182 194170034 728093252 435413059 625087657 845366524 504413214 284993389 541683174 423588245 601075789 207590062 198590158 267419016 345115219 557781286 401617809 824345748 765143083 519337359 603074686 683445223 995916086 308184185 844011589 928749135 39611551 778492593 389225355 805688801 831007174 845083848 33882146 672832174 485615885 45342821 662433592 48243065 774686874 288931256 973942119 26211434 729002125 495567475 357884674 691805247 731639770 586315176 72911400 561261049 300714620 714008687 133076922 768416605 829343691 795889191 242106733 509815578 945867081 833812153 768893718 24133271 115867272 63332118 592862368 604561541 689173710 891733168 736245903 530419233 33207383 242785866 861505347 947990759 47655875 578675088 796550575 883209071 385557545 837368679 396120548 924475934 352668715 234087935 688600024 872296489 713909847 787362056 174014371 409724080 120832446 748859722 427224304 596416967 358716999 175612083 578874318 115175258 99155658 545071895 125951821 770873480 932891125 291556006 261848895 334942668 396751383 86525908 58255857 141304006 737099857 321912058 863197034 980081118 782420373 43799849 723702611 242354617 612705019 554713855 975066594 404160841 427185969 274752726 909251432 673615718 793573443 588794247 3823250 587011322 990013786 581953548 493701712 205168818 262661039 817747569 812954685 54408578 688957349 932083737 550466679 424809356 556913908 503487741 876350257 285916844 290679732 382718389 401388097 944714389 750691488 939408051 350036177 453850169 708681162 504861391 663845637 192259106 478583907 616308469 927163388 555019524 542027772 607704936 461976046 724094395 471246977 702383748 478936776 139193651 904657098 28241857 853466734 73010182 712465548 876124801 306330963 903467222 681956689 467383430 270816750 164509263 936491524 492686411 182938665 476754661 426555368 449536379 505645887 953986542 405363598 190536957 12212682 360506323 937345643 759007900 772629508 99615620 134658740 21653291 197409097 166322687 233289750 686202486 59495276 962640348 627678878 926873355 781491908 31638734 482456642 246855235 120085399 400415327 126171488 753501198 293950086 985103827 62842876 691824578 945231208 74107440 72299024 358600664 873645348 100945895 299283076 548314954 393629770 54284574 737030505 565436883 622655792 357943188 157259441 794605361 701042274 271703458 235221114 191803219 942927332 63758326 231901511 853513945 74698926 853791286 817447927 174755721 180654558 800979601 382598221 332930603 502997982 524088409 697365237 139562091 96482112 364000438 810950918 716603036 287875269 99208785 937294408 831562618 369967794 626948910 805865667 748435139 302039433 670735610 137648214 324660642 514113626 597124263 295335013 89711574 767244111 615875334 337457063 483079481 292587654 341750608 823797597 63812641 307501372 684773261 278664740 631951413 634453405 663114703 725567541 268111079 542662000 14428697 471208961 105419630 515537344 210817545 478537601 234580595 572089835 608201248 370226979 527928672 395790409 334164635 605892919 957099258 409458206 385960892 929687331 811205081 577000273 835224507 317127987 826379377 983600572 625465319 990374845 931423951 24566379 335818400 766420128 380134117 947073497 936661949 652154999 125915882 490955061 564571995 279628274 121189310 893894118 846846620 652713067 826620863 917573603 54829974 223912416 476929539 13638517 516256895 295273990 328795819 231895800 382473658 812993219 851239949 322107208 1799429 284145464 137963555 338728699 930762159 543681145 745393306 240679585 72609412 711379405 557494957 722839251 721976749 170161278 415917780 630719522 337663972 404985285 324172398 664229819 163717820 682209760 650571973 82866755 146675015 643719918 294764598 913894671 739533191 240918244 80783727 644727683 519403221 82013843 991398730 924425126 480796644 404667338 591062555 991685245 892594754 267853085 661879972 55832571 185822235 835950327 483988344 223711665 133441202 321532391 907332071 465501309 538688559 100641357 569173326 427932987 167669697 237669044 943637926 755080489 404556109 4649351 40970459 49219139 907798326 931467232 864017698 549049773 792954037 96034747 503213184 696981091 371174820 73167060 288821353 989724275 278057198 638808880 413102543 650964128 585729418 361251127 693418725 579185775 655612718 448015325 186818820 891785003 325524219 275680204 495913967 331988427 801121621 207535215 374108117 180927520 163834149 823374265 642349502 464318272 842784006 951900949 237461858 331371027 319752467 742919666 621832240 65427161 878648063 86395192 990696184 40313064 919118423 767420421 134787929 508068051 994930164 939711943 552040913 310967756 711251173 249771526 986981022 124074203 191244509 188999531 887664477 877699758 737800359 191131694 568158500 559315678 333921090 254797624 110164028 197719106 733703377 589559095 547620846 431418098 542651989 194126732 105373294 475253623 535870814 386173251 832093768 825539067 30610957 389932789 904925788 112689813 947031859 366759272 883957625 974425769 43965987 902071712 712622058 593340817 453629372 867942437 831278692 778462237 729108937 373790037 788518516 379085546 627574661 524384490 743164414 486351839 542467313 166467419 530615226 502830670 474661669 573156390 559732533 655499386 707532390 285118360 470525643 800921719 825908383 761390816 750975679 623441244 978517876 970496464 642669230 490786630 532755839 814054108 604379992 513364961 221036449 961190058 267706566 559112046 229290329 2277347 399360809 377469540 499313570 146874305 833298718 2447032 200305073 708431546 647048722 224592109 597371 100269113 855023600 331020891 463670748 937041447 6600718 804612371 225278389 194013893 965433428 541730970 794096985 367511291 262362912 12751942 812663541 835735686 594703141 86404468 469950539 386950598 685509472 689628352 226459461 88610490 934269308 748375251 424680861 547543922 371614999 469697322 257435111 5302390 266690749 855361605 99198138 781128307 915041427 288750610 621851205 401777795 851485686 400749080 739537834 13037830 973126534 121423559 758431475 719757130 337808347 539265256 829533783 893586428 541569242 724475071 593003949 460356901 881816055 150653329 535537905 727815782 545330343 124888668 195870510 231585105 772975981 631403916 485041828 639017809 452589085 231004569 849033321 330401651 249529061 176107459 441077526 36576001 796250051 911015673 923475555 623067761 246708164 467619128 547243579 188708938 149868403 469540443 598834993 913079745 406093583 867181912 229257116 574760844 47125805 130265861 32777849 339317312 684566168 65502542 691198238 63535031 81446547 25788102 983804598 871234888 742249126 958947975 98540459 553329512 266100479 810827333 343143543 967447937 857931009 580165545 637909419 726258094 213824227 156290148 789902094 531389178 54691548 154932415 321539308 2746964 938323563 109186128 798144473 85043205 525437093 960434803 159216993 49492657 915154126 880988765 953011055 975762469 101939779 628952567 978200552 905574433 73309476 579131503 575552333 233456367 575807007 158335652 232937821 459437901 20068938 318471 400334944 410278746 42699562 512987225 40454125 638365120 472786752 14986425 64555385 373492761 633456636 769222010 998652731 811122435 385124757 491279160 751137283 319262233 836035810 113488982 418258688 776663702 86791715 186692305 958236492 679025194 905527225 872169614 503901292 140275303 795429224 312758194 635096478 352599209 858182764 280880052 68521563 520341117 685070500 890110385 44551407 908781086 759406097 99969784 195451795 771961178 785664550 55484934 221587149 428088448 678448160 904597800 965993476 429810263 246958558 537456491 465488725 735317858 233789469 593923968 610019473 100395528 978549790 486776365 145089350 181752473 252153689 4605511 263086168 94154726 741858189 944365341 108936423 904370531 753675585 267875479 944245509 806498788 336847949 586628122 49364279 373929676 1710969 634702188 956562160 713075664 442282442 635320475 252169209 568812005 981024572 953261551 706369897 513785962 37195320 752599847 602278640 323130045 208403369 362194608 645290283 925407592 685548930 330940960 35165636 547036045 861851318 579604306 711321669 849378548 800873804 837963073 824540911 476989054 670218852 298163360 324630064 961142355 838883781 313660718 902918927 202091753 396199092 452459325 298233000 512841665 506744940 915404722 682804050 518226493 786597404 365413873 299340729 102799552 178454694 902928266 883609083 550866249 2283616 61296451 138919712 262759719 591731833 239758251 690786071 375380829 525164878 979999171 139245327 842856319 270355119 195110316 719833901 109043417 6804496 836321496 355629848 35782495 527421576 637748369 438556507 292408604 380858976 242600668 475076041 705239964 735142534 82382056 684519466 535983827 457400593 689100077 850576179 968475609 807495487 648648770 677268990 596904306 363815629 433087811 308151565 444687896 479288586 162838571 696926958 79723211 114956301 508018726 247361272 672761027 659497664 401536323 239372998 181469513 459475956 338997645 407794664 159739081 522221607 680077146 133607381 940173292 332062581 257411300 753844131 392754295 836079936 260115281 952499646 294508021 157058906 567098883 626153945 952494598 628398679 611701593 508066489 190430548 986099659 535786337 99666079 332525298 936215642 154471316 691498197 76198073 775319475 617532627 759886463 407066698 753532255 740621898 268648477 319554736 42601443 365231331 734115366 606851361 684153497 725114202 463852302 277474799 858165141 571412612 70095502 289940841 294043348 963216208 60671260 414698822 157142758 188263712 734896460 229767635 305872308 591718163 760125943 212871733 898898429 790596736 296689469 163831902 791189225 546458514 215045145 239893572 212560540 303467537 785031571 443789123 593115904 162370212 620410421 701767861 378868111 681128459 790305989 100476452 255368377 364534593 185516591 440333741 973322146 744987747 164933842 985492705 286937150 640230592 847344767 343060683 705646801 321382467 770117080 542180942 976169746 113444660 527552595 390116053 57698389 866948598 610584804 718882255 709476527 830746784 432563909 666074303 630532819 427372801 958363727 626505036 543144775 864586132 627296079 956948198 278844887 981127006 524900492 281459776 796500030 843255249 742071028 148865895 532933579 97998463 96470840 157006571 712168336 112286151 277806090 541453018 622452485 947972501 531753514 305660257 656360518 25564547 200073497 421184878 652111033 303882386 250731290 229430212 388058878 655059922 726333847 213640399 30997562 66116706 782122339 425360263 301973297 611995943 32577564 524642977 846863061 711814588 443004754 183868826 413981255 243364261 546260351 553517714 146594056 864858712 760234523 572314829 920364136 860812205 289415584 800047120 342691725 177850979 353190116 143215305 708172553 604774895 225231120 409047901 904496335 520037644 542690024 420500136 315292538 276467733 90748509 484093038 556704649 149461534 936218706 647674240 366230085 262781986 282196541 574165140 775064240 118365689 278940663 808291321 914866085 343326998 978459067 756966674 748471218 894408949 633881843 279122449 200769985 870241814 18207758 695092200 692497521 402030011 184790203 227433839 966901274 67050259 854016526 591331349 385798580 57177703 675987157 919810065 570235470 909188324 422950675 91769930 856393104 242456856 178599880 1957557 277581514 562342811 601668029 720072886 443836210 254620043 967624418 91328806 220232369 567303691 263730666 696044563 485794616 376877472 798145978 161240361 783245038 161514087 16331944 408276245 395762417 287832277 428405207 572726374 765861500 371437803 277566012 721698251 363869696 725096797 974854582 890196696 316055506 385922683 34092113 630913060 198560463 255087175 489970180 217033978 272650948 267053948 516316722 702724208 848450490 661349003 826001273 800718597 940349919 606090934 322089175 628902179 143229222 307434478 445157953 890027316 165457104 380381451 705287239 623407476 217578432 823498333 935254153 186775358 420230665 861061257 60393302 878387445 991860589 396882866 20461034 539638321 448172870 179616567 933697631 936532197 391825280 14491181 47428223 256076695 343647630 494343234 439583740 35746919 654637450 527230094 672142131 23975817 561401115 464649578 17637739 502517219 383128931 121184582 851746795 758507899 311117642 859438334 839932313 14028036 549312933 942780387 597848968 563821160 629095862 281309280 617605461 479318194 522260325 481637943 961352005 216946339 478373951 46682902 277687969 178833125 999621198 870162665 172322776 415414887 310107769 680216526 12073144 254336254 376574544 564232960 951089803 208835767 203771647 479819789 677427264 746335758 320702963 15581618 438311636 722040566 397902512 500317235 388958030 403134505 980395062 302159724 459745023 578106594 680762506 950722268 954273783 653878293 763024593 671041600 799115691 826246607 48871490 699896814 210182951 492995220 153618382 81880128 998701821 745845150 4039465 176432058 926918556 637955132 927665306 888387344 471715352 995399696 570141823 996781458 33115384 15281173 358215271 282001213 339702275 254255751 64983815 710041312 920919680 871800090 367276111 527232518 261495306 570412767 299796429 922278172 632399724 704175313 496601639 296416383 801486260 714777355 277345797 609313111 135019771 593916236 976461375 940913871 899694693 770873100 502721962 15035341 649928351 227871934 400255724 33952467 103593840 198059754 265107966 491607739 130947425 773803940 953764262 372040886 446898072 36688303 439349426 939932625 616915074 16960235 249452328 220416008 565546977 459534783 120895575 442635714 568303232 25804990 201360790 579025955 921515257 196486832 952962187 557563856 461824355 867867299 874017720 697591757 564777547 47387331 766628689 797081850 56653365 94682894 689197108 930990127 537463414 891596232 523823315 184028562 493473899 105515984 543686282 877392516 562611315 652135318 984118374 239486512 718211453 100992371 152605800 476301945 97572380 733033832 410364951 727529166 971191211 7493269 578482192 28773793 285399771 846131942 938354615 817214056 332293774 138080724 598914006 766342603 667287451 317529238 559898537 936487122 732991461 686507820 811253415 47936681 644782692 355648562 990217305 222327842 904640882 696620645 455265917 58237128 487302767 318723844 728771768 115744553 51343823 785132694 634064475 79361216 885505414 468545351 37562294 445906919 420501109 583526115 140211099 34343671 957248881 795605525 922710846 183290618 971494972 767449754 256482498 470238693 233943066 302646397 330770125 857526073 809552539 30288909 10119528 318578906 119408295 380105587 881194683 484684098 601800258 35417144 126161041 128467513 653043506 268452864 473493777 78161268 889338370 705555514 282727751 598528786 128421053 478406934 817701410 75919363 386966985 380298053 502957920 688695517 968320711 757603698 779291744 273906447 8712986 794138691 380262700 123140222 54755881 604339849 850068757 118737209 327729083 660786293 497509812 588719435 426126432 853754306 5830113 641623652 572920005 134624739 420911253 236134260 53318096 651336896 937582934 468263422 871080863 648593406 551278492 663974408 955695991 704474183 516627609 163666200 212703349 975071098 465312661 227277496 103590454 123396210 609936640 261207448 344493048 791886371 201572524 254543940 249398120 559550779 473953415 482626275 288884089 992419525 279556790 597750926 784556920 711485902 71469472 50427376 281253111 326490824 81121393 564401590 958325088 377862294 764099999 520728957 391587261 700651074 174486275 357549327 758188979 529719416 129488404 69004878 956794664 698642389 281210535 977534889 223418530 578643949 392250836 187945592 454907288 261670062 240997577 405909340 960768598 139458797 277910791 999445391 466766372 318583826 473314025 829462022 445022529 991133792 380616319 384454638 676638227 969128524 710592047 526366196 969943422 272090546 348710134 136318430 40633321 764912187 170620254 480790664 799253378 288737968 467496948 546017188 37103196 439933592 129091999 291849580 294392142 640656297 693903359 997979708 770838947 464452373 80197789 578797757 2169369 260882958 848967699 855745660 930688827 48347864 519950657 264039923 759052036 995442624 817940376 558308408 42418691 550949692 406285008 443087115 799152711 204436836 523207827 585922760 125381371 408198094 55816369 982356931 69567439 277318092 333677553 893477978 248481791 727669843 45761213 283417352 406432732 792730592 809949180 606821938 964859001 474058726 67617717 583574640 875132015 436923954 949523390 469066695 530731317 379858283 669538908 753292142 110787070 18592917 372478801 503085103 837965346 226287155 669563303 23238804 172865772 179030918 101064569 664249769 54245951 969629615 45741902 902904389 104144117 422381382 336686200 611708670 307213517 336322609 224502752 322518460 359449001 217213512 685970094 709189811 95595513 75311701 744474673 309205093 715102387 903808784 899806862 124269742 384598058 731746153 452951875 848302969 67922949 173093069 950635281 194440997 164806245 204814337 329175503 565799922 869488236 283049109 601246065 77836090 788988409 784336520 769492557 920060191 938819245 130454735 273391424 412694309 944543031 251081910 608333254 387639565 455897146 866772788 958263808 187031899 70278536 267196113 439773577 917225930 733972256 261776835 463551529 671978738 45635235 233568573 6753976 707449355 41324321 983447912 70250506 804843417 204940962 134990264 207154553 8972225 740668714 917416034 817740408 342461152 911314452 627560054 425770328 14940726 648611854 967231031 867053880 973613908 784019126 331383393 457245681 89685394 550192750 219318248 37126908 608157590 586520724 377665968 525495476 317838568 55098987 455546763 822226168 423046761 120361150 389144262 470030337 38563733 850499004 630645201 344929232 219364223 525482012 370389460 184081698 998385360 719735516 128264308 97005092 228182244 489180895 570872462 605532183 614198435 827919485 823606513 35212686 637852216 490337421 469869841 270762142 182122032 120417167 353693276 747742088 647273014 619855076 374089554 138491939 57420717 704448570 722101823 879887216 427320065 559940087 37335073 133426311 278904454 641642809 495562631 498795262 554502111 314254929 577756472 160501458 560280241 995885027 898767949 497693023 814344079 160421022 793501854 334650806 79020750 523353586 545711118 758327491 172605597 784648141 93676602 122595557 454938966 557880323 729789488 398638117 825259684 118747859 640214670 989901354 986320363 324719040 160051111 915914234 139600490 417431941 874531921 608344827 5230456 348942457 333660393 531555459 899701720 176553819 913663619 987879954 474804007 632519922 337911887 364944760 643973872 486125260 821876226 37117006 391949428 792473531 99332244 895540434 166753774 274513418 36598396 658987266 25915622 135952839 455360982 533553747 238977160 365291273 713358354 173369745 30295843 514266690 267065083 626561791 955680731 988894429 987723728 571699708 690614843 675971539 182143273 499715770 794144531 805660938 28586423 558760929 917329190 939328729 668659390 388701524 722994518 64438561 471786665 774050245 135205320 704252553 460230815 763427946 478365839 158702934 396827157 641917396 82138067 104942246 83165263 173811386 790150566 785771335 987904483 998344956 972404680 824770341 514876953 859683433 538626877 212428734 880701904 595483058 339844450 680739627 395924860 828004570 64839158 921085319 845237290 932591137 191452781 49421579 241830807 768852432 75280463 268561674 885943502 741163585 719909853 834393205 930795863 668250502 128823992 154776487 836575495 186357090 531053164 335010252 274934196 773946215 775548556 797440352 176759577 430828197 926632106 682774925 143642435 412043080 950794606 657428077 992750095 835264996 135983472 661021271 302396943 336493566 516980446 547391145 892866931 676422800 2647299 716206572 693221181 973259858 963417012 302795166 618243168 859276741 855245532 993587837 447345300 340598154 786195997 496438992 666473543 958092980 551130496 505116004 351355457 611402144 542547468 993543336 348972730 670631425 617411206 158567380 167326782 696835808 377486132 580635419 506133789 152054372 503676801 547380605 663019275 21407281 598018542 39616774 529507598 942554915 73354441 712427679 608578647 434383403 124038520 100389452 542479362 457021018 959059321 249953586 152159755 972852138 473017950 134782819 969420 435376211 911105475 909009525 879917196 213481118 617056810 678785399 703259814 577020716 326689331 668326861 545319106 163143525 886033222 930700561 600237032 322139145 687445751 662718013 700814157 102834329 595466351 588139155 782087496 710448902 980555418 842445335 770861988 879806388 977200422 208594990 87832293 11329924 357329878 70158106 533247546 686736845 738464462 953107893 137507601 950048848 950643846 96009333 794906436 293966739 411192239 120849423 772462785 353485117 47654484 90407862 778493501 42585785 258941853 484433051 625664710 693378955 32205711 545150951 797313312 154852503 104724526 214903254 699722601 291766950 308942070 692542446 886972185 752232277 356128369 729883723 101070480 403315846 284977229 152461290 329678517 652640002 720195416 428289413 636331096 363410104 561778337 806931813 283919621 687954672 209562413 296853761 859305921 695682634 767971151 686416026 862185319 817955483 347740986 176313922 516477761 576445298 743927591 731055533 370156249 461978997 989287044 822228304 19420818 444063855 538814787 739845221 781053644 865207908 554138942 454296313 276654846 854882427 198744244 31839482 286339776 486198914 683727184 865750733 554300544 466018464 965978784 811744603 596644655 758071360 655044203 980267339 867628542 654442098 268487286 422749144 815571538 167997699 355938785 651901036 27891789 136063124 889697023 277015369 64218011 281760105 791395721 234554186 646877343 616652933 154129689 330828382 976087243 534573669 542847971 538665991 786450624 906264619 331588014 740077096 563226530 815991566 635009777 666017349 660440464 228036516 487017337 486604633 758088234 157879059 794067693 431627189 666163083 128679326 913810128 75486160 968222725 193263632 553936185 541853049 637739244 920573632 947576957 195164295 631102422 239975424 920539307 872772722 200212373 842636928 946654895 594508928 199367801 812060093 36341246 679459306 534879794 470382581 503840150 125578915 685434455 995676320 255382869 56143131 944400661 544956950 657709230 496135884 194119663 146510557 91678940 933090208 670519908 897627298 141213930 722136780 836099326 746208487 305867319 703177366 47434637 870297080 537302688 969055069 757058096 361817057 77692527 374614417 131662134 254013338 652484871 967915081 839921394 849148914 666094098 752839277 854285466 892719431 571531788 698407922 99458090 169291251 906846030 919272041 827060662 160401146 360609124 850855209 974780210 20508621 99915126 691360181 711117541 437361217 828346837 865759000 44849285 651348515 601370614 798440430 499669037 167868088 72681953 836516880 151296178 783648013 949667407 604118072 693770127 631600704 141616462 860021774 656359622 851599672 750688138 32489602 716497565 860452870 632235995 121980174 488150879 198065686 118030425 410118467 264321892 307923843 569043675 562817003 509929156 940492563 663419320 966150161 284215242 535374874 218090601 245369390 377444680 496328747 776915744 38274734 607430483 172611022 5437699 638787853 143277074 672208561 725588192 186039618 347638157 98145460 309645295 551974099 631073525 106658706 749755295 320085867 684814083 190641843 119887216 827757060 160495883 62908625 762310687 462385903 541254465 339189540 965863579 700126773 38131636 996248473 115569513 871943364 997839166 452372431 372950712 319836732 548971356 914272054 63207842 562724485 242302691 423687294 212003981 573503353 457573832 586599109 900155366 117046182 873379122 342664684 177912305 24102504 109814344 36916085 612588794 221476732 454595714 248858540 270927278 840790308 82690142 631896169 659003356 339378969 672054677 761132871 739318148 129588401 917294597 562505782 342537015 164344652 306242010 423848597 941741136 854585863 666394691 769239115 575582039 946147661 291191168 13429008 389432512 264576924 786890272 592653866 850171813 252198393 188118801 413690031 709505970 709740153 366435380 898598420 530228833 242417277 920216612 77163247 805219853 172100684 834391737 272010161 93255699 269350325 748695221 698184226 651135548 305020612 908949546 397159208 929871737 281143168 182058778 406201336 212045299 483962908 965627793 359834557 30931682 46176998 697662127 677884843 34245151 284023657 984926680 552874616 275179038 857073227 390807626 838353346 459165320 667047958 289666430 894726535 430879168 512514052 907683237 772237308 58529145 305346639 914133 213425418 821432749 425333628 613917484 339629945 588852659 201681753 587731113 238239886 342672222 612507738 21144074 625790516 538763073 697463324 989796480 376420843 281511399 111526773 594215353 785262728 924504444 951760546 984575859 733626846 863774225 760912993 56912571 989134965 615494979 166231136 457789926 665542610 909502540 792632934 609445996 253910222 822770512 235092872 63499120 472701912 589510641 561343254 703198554 965084924 653951032 648293369 467838073 675143226 813113028 954166944 904061206 724443970 925407473 103506054 453394862 893107442 318258532 853437138 546524738 235584558 606949979 411105010 273108930 827996750 875619609 416208579 468591164 227326544 118862143 541903753 180242283 89010942 519073668 127165552 491674787 133326470 390596391 87151972 501808999 634880759 405067996 796520673 496913146 673903843 685046039 308395018 918951963 3805283 402435970 932084093 732102930 768276402 204197842 323562935 239154088 106485555 383152994 301553009 384724548 470048420 802496086 579417698 696070906 472817019 516071766 242773452 774435133 112276258 116985485 453251070 151430904 65788058 51124796 66956105 820769333 30763324 300750886 768603782 602416409 87136508 489037052 553461333 304706368 158794796 336021577 759954141 448503286 310770504 287512359 380137673 550210346 221850780 98406519 774932454 402344186 533983805 955882126 621702296 802385166 866534713 240205306 721665222 432114342 881725000 404164629 700840206 394120472 53073396 419592376 622000377 341300805 20794073 829385796 68102695 576171810 863958144 885570326 185054741 283059611 135840132 279849110 909559388 22160020 408568977 667790346 230108012 971302423 927897089 255869634 44783547 884285235 505420894 852989986 323013486 875143502 173921017 813037705 653571167 979323952 905524239 918594109 663797485 741241597 911389145 961938778 294278254 816721971 460632371 963418235 497333556 859993870 913411985 97679643 994590420 349689626 140722730 146585850 168821667 833850106 99160448 477900256 636055003 737623950 828291237 886130969 599602285 446638525 378148542 191370086 446641272 724267667 163513877 935681126 633759630 39529966 197723980 755696614 365964336 821798393 78106798 477530716 477680710 839877303 762681725 41819162 549018273 862693 124508376 409176398 423839194 80582009 252904380 183573886 925939314 728282174 258929011 603374380 230198110 987201101 304083413 995289826 498376169 831954174 55652858 63385782 345059028 574177251 113200692 178166298 93719975 812583361 5446757 315439976 495443814 136320501 264107337 515915259 347747208 105022193 715556982 130365496 21859380 910348726 555786957 489774131 686774232 671938287 472006398 537640316 767871342 281214116 634194010 377411848 502709469 202770717 429025199 676847083 169345109 819909570 951073828 859911561 947970145 848458858 981478092 900469911 681906896 816631760 796643725 973818633 481258432 384104002 531555328 573799491 464211188 329359513 596276344 196292722 824525426 203100630 916082814 407868758 835083113 925014234 598713950 605347239 757097034 663294498 872282604 283637127 344006593 165276523 213719033 859276152 953246890 481168403 482677485 942421077 405522032 102868943 605207048 238731444 333101942 878080156 810390817 325203365 841684326 253125332 82174226 735222125 260297743 350487965 714088646 312444496 349624145 403022984 329129341 542583109 484725380 255952292 759822304 702257521 55580208 70985891 604933854 297065257 163735402 995401394 632011066 475780655 77169952 415754444 849641314 99606907 307256334 118778032 591280947 350655351 838992448 547536428 570928157 282038639 997603026 986788217 113723972 543309271 713648231 585552180 1099875 127221019 835868786 904832231 176135473 133646362 251244431 829850607 902816491 939185473 597339783 661222320 44587849 680315022 461969130 135745826 798503078 874056131 277650798 493307393 165162992 114870131 889910766 989683396 41629880 754058139 689598129 216563663 440284856 651800218 592882007 937686427 494549443 39673745 425898281 293964406 531297822 855864655 799609509 794386623 462000551 596409654 688222590 894105289 750767207 197725624 18035077 178537693 968672627 50997238 635819829 245463680 7802250 918301504 147835808 88667075 303322734 823435242 386044772 683552744 532640375 784561830 797647752 879694604 799756419 73380382 701443828 52701342 872270136 451811199 321651710 799897543 407606536 87067250 203051919 737037736 702852758 209368198 179374816 16308946 821397768 511789515 476362866 860109849 821912160 409783517 294656134 150091315 136512660 478412986 20412743 986657491 452703953 258305356 573113147 482460704 430327378 968494822 326512486 33355888 813122581 696999316 254033458 836048905 309635632 775135583 285008204 121789121 246353217 98184830 845757072 388475036 565974233 54993833 501793432 956861662 47906590 371979965 898105505 520654224 14920032 977330375 982605738 235843442 739768045 210536245 885905538 740312610 253640657 972061383 471431695 554604917 113750535 283384610 267685247 455989256 268732604 781097494 42298027 413987238 291398745 291189047 616465562 53046979 277461990 815874758 60037177 471423469 972253303 722977396 515655804 66675953 41037578 368945406 643982900 651497547 710111316 150767022 163393896 443770059 185155979 797035453 729657590 920819584 615405479 159400992 941044618 969857732 446083536 382776220 222574733 646903310 694347960 669143599 283839144 526818011 730664117 962852607 139252795 983381326 875751363 209012716 845880868 563127617 984621409 706695194 826132663 49444205 100403392 63305139 565585564 609663232 747526615 582004353 274992932 962261679 719751403 827827158 869553835 95126010 356762801 683048720 957134187 544792150 373448664 694927786 687562322 258378859 977239915 5341597 804039084 339665795 753380597 486922875 638583640 512517438 27048404 71871646 603658790 741034412 768753318 966122641 934576106 992139116 999313155 372157854 981512452 926795078 193303057 62146513 938376928 756570731 723454311 735254421 241469909 314437758 384907182 870759315 514848790 21656086 76686504 659977422 106705888 729495890 230022397 301362253 658915575 53257107 6605403 781567133 198004015 731797387 413293267 625190572 818151515 205564137 638390395 623476077 681363452 281602618 817661692