0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-18 09:51:59 +00:00
OI-codes/S2OJ/912/data/hunter12.in

3 lines
813 KiB (Stored with Git LFS)
Plaintext
Executable File

84132
98634026 287126073 59525275 176150793 426498570 471536224 273031123 339654223 971934337 579409875 404401507 544163172 836188759 343843496 401328226 69463579 191105639 680145998 445248243 928034739 312594285 9259904 961067906 482567359 555104907 749564438 807409463 441485120 469285475 757851743 927646587 404597719 795234288 200109301 585364571 285313788 710842478 858609324 119562691 162083841 112350750 274694304 938707744 298632553 600653631 123411512 715079099 82875578 218366156 313178543 853805838 470679040 967831224 346025229 107468917 949590918 390601308 658780193 447603200 186000218 601718100 843821045 741412934 825774418 710686371 755099908 486051353 272884021 322348293 25785469 168247925 248754445 101311300 348582162 253191934 392040275 702321804 747895393 710424657 844095101 569670693 103682398 332832065 986252346 970648530 211629127 594060328 180484338 966402525 223715895 862241110 97988468 850847701 500153895 372894926 613748313 702724300 124779855 536878463 188728650 979109806 957849911 654670576 817797048 969372719 907497151 12875126 839133387 327114219 225467400 376763417 163044756 352405256 360151183 817168076 189224514 349874726 970153530 657272829 275420232 302160103 466060857 696319463 513859777 876652724 704419413 611584673 866399675 366929477 480884398 77317648 721106714 967578258 873897519 410702486 95871729 529449805 433152108 198482182 67682861 896556056 703597471 236755227 438605370 384045521 816546247 903937013 485144513 884569076 346396273 827371657 603291084 404185385 487820398 387592250 866269053 167914689 782504205 532485884 147264221 260191093 883943780 316129853 616348783 778826381 900698901 66502023 322331219 135102474 662991690 893120196 784156506 832919092 266424912 944441374 896469140 59819464 135159491 256759638 940866358 985006317 826027078 799117910 136889300 506390747 311216938 443142561 309012163 964597413 304160995 709729590 818081108 508012497 657189899 210663323 754661765 100604198 133323771 980848126 800017396 376461310 791679974 997773325 338894377 888714078 933392644 650891050 421775753 630048355 497536517 849319661 913073978 661781369 173670523 948283965 362164356 740909401 618145713 249220817 162024586 685201217 751893242 694700713 34122946 751926200 597977848 816332429 763448868 192388724 817428456 590517625 913450330 118627821 387357373 452597182 489313423 266057583 171402738 839742428 162481768 937645896 484250180 928689915 632776849 993076198 841662402 435698528 541426574 793154936 172535091 882908214 405105744 585900800 806053610 853309153 187669888 641929089 36236126 255620780 396897771 595827760 316401814 259980138 768294072 689881025 593422059 998220161 533867792 820769494 125168128 913112576 930268520 840469695 73005000 831766863 292893312 456241988 201515090 234538060 935079791 294286508 569789093 550353769 9081801 283681344 463109317 692571616 740664009 74972960 337975689 829500184 928122594 839793542 458213820 188721473 910814528 121246307 242356827 759581129 338523810 779948414 828330788 350932791 964247959 111167599 678852607 442492753 882254810 738513657 538620875 846989660 830899924 395048221 469657036 421966555 350212211 416564829 357616656 747841119 668359508 195202158 509086549 60761701 749633003 505886198 379454540 493659440 315879167 827946016 111653242 382317086 28876805 95336871 114627338 709550504 301299319 471588082 463885177 13961783 796321977 861605091 811039723 425361024 706097954 330823471 587314640 207586437 609094725 461126207 541844159 259867615 809267388 683813212 56059605 429167242 746457187 414807691 654115894 591631191 261334185 599513226 657928065 524392399 29972974 303241681 714767293 483814600 91043261 137375290 104515663 854104477 200146932 612599755 741172040 353707590 135539341 651618476 410196756 922992851 944418472 661199620 760529920 367431623 102353959 465695161 68188334 799144453 822627031 357278546 127039996 111902195 568887147 433951317 297520390 328515873 267040301 595330561 841311595 900384938 237678186 252706060 329634814 518965740 561627781 243047055 290835074 226197432 795644313 523798953 106155087 872722662 474325988 650575041 467261983 512815506 417468864 419009850 442409384 277986461 562708070 40717916 245275639 379791916 633886331 927337628 31333363 33289728 899389105 503802026 577680401 21566921 46310897 313952200 591460915 710934962 135569380 246536950 392285789 148574798 662471620 24592587 205858800 602092962 991718296 819631508 152165304 300324515 583295021 792406963 380315686 231473367 338409218 315436876 494141207 485852823 625401697 633925304 554522500 479823847 408591523 697928356 817714903 122726570 137152183 35963826 92349746 389683631 265104563 317780377 170328973 151180817 878403830 107506585 7073552 314254143 828151462 460280485 432279490 174999516 211170276 194640982 327707706 69109473 964307689 396281742 414431417 846219642 618616361 233405502 817043179 928828812 368290294 31228345 191475001 320859680 411520313 294442136 537084372 942970765 96808126 670756639 786289938 898432790 610292325 949712029 418713678 74288760 139473887 527186419 141666010 639231010 712718809 622202284 28537358 836414935 528107091 394991541 302711982 159503369 259660218 32359815 107218319 288130673 355466854 478992486 792424990 91087919 616049256 913245087 117228091 716588672 912834768 559645736 831871831 168288960 191419111 95515630 432263149 359610056 205534602 674334078 616694143 706968763 874600170 718717383 93626066 115344861 262461873 45135645 730513655 854371886 993609565 309677064 837912249 762695923 229361334 397960096 337338801 821099942 384120469 127592954 327593559 516870377 870586719 350527142 745602731 178779811 387193994 725535940 666086272 29344473 650041888 328897505 114436790 661758323 874535474 505972617 853386540 867326168 50351635 27796338 876341671 293691179 451223648 533888794 465418 1452229 820661481 766302575 298513327 553912348 933659781 81523750 560792044 705095675 74954216 882577505 531705311 90486625 93014088 550899433 225728211 320045652 152905205 828552092 188910948 205403732 659534247 272481351 401110815 71088952 842839021 774460428 853990299 584466173 577849356 315618445 105302132 706271222 896355080 47840115 505497957 334143405 344889744 126201605 373393328 890783204 388763572 700489900 622518290 631566812 419404074 626533833 922980286 785947201 824790981 663317909 203371283 791533718 694946794 338320891 107943690 692403435 227316984 960086259 23064704 71531110 354019008 333153407 428803738 655349784 203398257 652689314 89214084 579358265 464645656 458782667 522758998 144246647 371733750 802979156 367494470 916373346 287564138 829620609 961471474 235974530 44802855 772627946 779610067 141028671 732837333 861975431 152528149 28199610 547586217 804995953 680439900 363350853 838471925 74313978 862673701 698744779 149019428 758931049 860132163 435056053 435983338 950181257 326994239 265333466 819951733 872517193 317264287 26953602 526409159 261179899 520935117 290811929 771037619 605017752 233550807 524308298 756470361 517265649 305636587 299498183 889417175 990320866 41332405 914515696 82337142 80717616 364394992 507801075 433340729 313596561 206639488 481807246 811092768 478337543 942238623 487795060 316431851 948201923 420372738 219431271 666966476 919340177 70110590 402560768 651115628 832162186 741713058 682645924 611188121 411903850 958876717 633356564 305736518 111884979 84226422 967795085 890824191 809025569 837369355 177184174 953878150 989884832 897027129 715171739 370165722 732357550 936204233 945385784 25899569 973958625 882404517 608239767 810926524 924974736 346141754 407599282 419201355 384892288 172741304 306969659 578501367 861284849 496041405 690994447 522507044 509664823 282146785 378189949 978476607 971213962 390808437 592938489 286741932 85987334 707817960 812143687 393797285 750179481 825819753 596546492 596085473 891615550 314068758 770403539 864311003 906583298 314387322 51726255 945882998 300798075 761456949 385380957 199750528 931007224 893895581 557479360 13952593 148101144 421065507 318709900 529855450 5598640 102876358 43554630 181421058 757538071 511051363 362483170 714841074 971134995 556962761 956951910 464700977 492878468 948628174 176008599 824288461 138513593 346845157 429851636 934122600 167665825 693181745 601750351 712632188 345508212 327009339 845631912 118162595 84195000 481380065 74463837 494463981 874187576 99485656 532160030 712770812 991240388 528814434 524683604 703501185 119566522 683940419 191375232 240492948 917191769 245662501 864161895 359458402 336510400 308160191 488762466 947053823 971259993 694997340 386651161 584495974 62154903 130731350 187653206 626418009 851082792 262288024 91012330 224358097 351489442 557513866 394311359 231542035 895538674 862616723 882576194 21438323 440980155 275202977 623114106 487728885 901975927 809497849 987914193 732649568 664570773 827854890 444873912 346524906 705222863 250025164 788960615 701829274 859135440 52217814 783347066 665906220 680585806 568839897 183041036 545866269 893921841 297769302 377165445 38493348 179636305 936431022 307516862 756214626 610373793 635392430 292214145 376845890 242672172 463489640 984356592 278964025 803333749 315261824 702140940 250161063 920798246 270471740 602026788 619000338 671206091 357169518 891514115 270140256 582307641 760708903 636952463 495587767 224558138 563706552 399298972 812634825 653658937 881217804 407785335 319421178 498893475 117811108 664599190 74445373 766668451 802380144 808061827 562324105 605964965 132049284 566722015 673783955 421565739 791366059 26122085 350824578 278629891 99442421 257299200 439784571 175689273 327823372 995664558 409647080 597350814 619961694 958209628 883964385 594551407 818315366 390203925 587706515 257373738 342806710 491467767 32295507 453784075 460015276 863080639 390098787 775833587 845851454 935564293 700374448 522071913 558265243 913209240 376179936 745848092 670141369 957683231 303022467 144218346 877667280 223016462 52568529 667042044 959820605 197912319 68610126 962579532 705850344 305699305 236904774 794149455 120900042 610376444 354933257 559878989 403241594 100193855 528241511 14071525 768398601 177281533 126477704 167176873 758615716 607249114 846029705 594607825 182748156 942543959 81820306 157475188 415697698 525520117 374383417 643721198 420729466 837419943 3980269 889466312 559719668 939843196 596634707 515976262 573784052 133748492 549382020 994080771 274100770 923152902 357159044 491804376 75578828 196678539 362494143 578094837 491705600 720119974 500221461 962554814 654853051 107581063 836680530 798772185 183450927 37935736 470064472 149386383 765711624 518243505 370896116 717521158 879712398 590126107 202329336 244437929 282923303 838520083 340058584 192835171 714876411 848918617 931151625 628532524 289822375 657534707 788279596 994047414 77773053 294570301 204090868 226141600 429519203 22353481 497106169 162127733 34180725 964770238 195668881 460555470 890191767 227626687 9592168 24597700 884669583 704772076 839263485 29393582 11943671 186652047 376220693 137135515 211397367 667403568 836060244 359201003 989545865 576047124 410734230 244835173 447032423 169510941 267380830 186486231 97138867 416493404 290415125 217652180 192492574 853927781 21821398 172112391 230166766 613056457 564505467 412014115 504800358 444691768 28216067 995766328 897194704 256131472 321803465 588931538 369687358 6661650 731605150 1565581 156187782 284165561 17635929 876866650 451701059 866872303 363346943 451838567 225904732 310362158 496462073 494299004 542140555 421828343 892010428 182068170 742466448 532007340 326140340 995318611 810177540 538289527 963159220 382034722 529039708 17140644 625472441 804528794 481355724 327300175 131617676 770759693 867143460 513052713 71155291 835182144 875986740 211022919 627418832 727618763 122570381 351975169 85104178 425395516 51389525 24976213 654366608 176758002 400063347 558014293 921741431 780874183 959571419 90768397 675167395 983239153 808039540 249621711 31634183 415844453 306100750 827161640 799694938 32754250 16079186 535297420 53494078 673051569 369466027 114673662 930891236 962094922 572143799 227584316 922396214 90689025 852854474 912899169 699216075 954186010 336617196 893724185 234027660 951788129 199724468 984082165 130522837 13303548 325283123 270688122 797450430 110832710 194865218 759794564 32361594 521343955 712785348 579073666 83945583 96667076 754796253 77497689 744410430 584383106 566460357 738363090 42635990 411533449 123418041 130407893 357583210 996624572 563280764 421626537 305845597 119134980 728332476 402922062 137685296 361640975 444579095 972008755 526748170 76923261 90268862 560531691 883690292 584408380 951950881 232460967 665305685 491435815 422745035 957795151 80718026 955320055 3268369 146157920 405794500 869874587 624838361 479123354 101191475 980506670 259372705 935292676 318037324 638123486 945140781 454215329 9172218 465158867 409572783 758182155 561035259 968566005 321467985 795498152 429216226 827062839 757115285 214198113 210832109 971279012 307843925 64236983 438867072 122553602 154407573 291333215 687574816 383388492 880707166 405282583 618512084 401468261 670356466 802124862 208205223 961644617 226428806 698008450 93132068 135408843 580342831 167724603 656050922 861678767 331167648 991393412 823493186 527450621 920527330 862683811 16571180 344903214 225470483 874857103 890008937 93868990 441381249 494720121 306162796 755818053 109601192 20113091 474354291 699019378 366246978 301400016 959595305 261310935 666202323 930451453 818821260 86527753 440617346 260719168 545169803 169370478 683500404 3769041 258024961 230372303 899714756 495100777 7238650 456662047 830263978 629231643 578677854 507826 697466138 792155998 175255116 686595301 904655921 404938642 865249896 904565794 88913710 366579856 598507673 709256607 369320727 776934395 413628303 308155104 874741978 703509879 50160167 966810808 294422190 943013424 141516930 695019570 246796188 991346861 336500249 287887793 941777914 82437287 903911991 891709241 576128269 309192238 30798871 41132531 829033778 650923883 920683904 198506326 995769813 503647629 940498875 643386326 483586948 278030453 165893547 325058097 890495069 173989459 6019489 165005890 867135322 15730467 143316995 571917531 863007906 711541982 320824585 278945891 327523737 333368032 114038549 713016162 569738425 35660094 534508207 192358006 755285911 622210371 137899800 731736268 433927737 332039923 507715757 108344985 556008649 470728714 283309225 961964467 387503067 782731891 544173898 795742676 17843088 270825445 479229181 308646349 62449264 329133281 327407596 211307362 334965761 720456566 404354370 766473855 512506494 866085851 492965759 223436629 795955454 926620797 949830039 706206824 2667819 114064899 557641396 505228201 545206638 73516721 871959244 696221970 776813100 860589566 163189899 465154574 116580129 315336581 324433855 628112075 50681309 226737173 921641356 923427116 270445584 366505826 973618131 186888100 750839523 594655326 487156214 11571348 698712825 7195736 911335660 505808671 767752540 226957266 26292099 331295830 399818018 487740852 24303082 437937086 431707963 70344954 700207012 639996417 81647035 32138028 754022349 522671122 258633315 287159754 688089221 654740281 434575872 327279093 261500566 869621163 514587904 328795298 280831684 580855027 491130949 903842575 665053707 914124508 516984637 27823941 55833042 433045664 357342584 129710947 216334061 561237539 339634559 365265985 219422408 550687770 238766329 243555415 234328611 338339235 659073325 909685503 975717709 477818746 112157252 859805839 85597814 70348751 111717863 547668730 292897007 486633041 750893417 102567253 966255451 646761382 539311638 133657565 638288072 237419411 887927397 352081533 23527624 193358210 462119385 765375990 534971699 237454191 428158955 187968204 411085811 728644705 886657342 172050699 118602427 648374842 391344440 15580049 709273693 408702607 862508439 952396982 589231588 180824690 218582240 599821240 989108888 352693909 374039574 831882798 968561533 530641720 684212077 99662574 321849506 226706140 785677811 205516463 233421852 83014436 755712191 673070315 289245792 834239623 301952708 251257665 794613767 560365937 716321721 130004172 177576768 298224932 504456463 190218848 559303687 964069096 381517954 29468695 309903745 782589458 273086126 778864219 843254339 980334552 626908834 460173509 733492528 181718136 975655320 525324392 296638835 412353500 50897441 789059047 463789269 850630386 465850339 174736641 669032913 659775759 101642380 678729164 11110930 819550892 706618610 197509659 325382389 967416 430801607 600377341 22318956 836279268 190805344 869210334 485871190 422657860 737243838 160699306 265989776 318367155 215355027 625758079 994391725 21964175 287103334 38453752 668480335 90172295 198803081 350141424 531922969 569255553 644947167 762959203 675313088 476130504 680926986 677597050 554440969 470954788 206006655 29680432 214734554 500245750 163941010 639158625 718865356 953648282 317397419 499805178 375102720 22240418 139025702 890387403 578919461 687821838 148159844 516771326 302544736 437381029 611507872 612910439 960765916 573276156 992510542 733804897 519591805 946760820 785133928 76148672 481083275 938712090 293081289 688446012 2970110 140405683 852947031 470643907 930465967 856334304 351998549 14389094 717476433 397694816 47221843 652659638 271261326 146743277 482974253 347334083 393377740 674025466 87718345 374441639 795998330 6836800 56865339 357827680 34137522 945486990 793781602 883159953 218721769 302578596 967966593 468046983 273607737 634212180 861485020 902656704 937801272 759611779 584914619 301730966 912817036 306811652 344454603 682133744 815895070 206699449 800037700 840146212 103903794 424621467 415171883 749381970 962998496 945662227 236797592 638070791 349290773 896846194 900225504 368645023 653874132 881937927 923309824 735193618 734567583 6422398 168513483 681448558 378175674 295143508 283149697 17805414 86079664 664278553 234713814 968102366 418659845 429571659 369389339 757448164 510491228 430673227 735781183 238164122 725030822 619564800 202464591 933635341 278574131 239685853 304125164 699150800 444828733 706453626 343596175 228430828 946236519 749314067 804141805 616401907 752935109 705757661 91650886 982180353 393608402 535348360 657132056 319637021 860173348 628372163 119503895 60750423 585776662 284925453 453180363 71098810 789953040 860961162 121952644 561031607 40688220 45090877 893198766 75311503 176470800 621646616 610107176 746749028 340461820 435966085 265062523 349357533 397182767 906459142 883669023 252450441 597126501 425046794 307976874 98869530 821359881 663471039 475592720 129702603 691899316 467982864 263187858 166085058 229437382 334526228 409903192 886151283 326503416 735829733 86821553 529714120 351639949 154485555 501939117 661214241 938229462 959839692 179646974 844608606 304217305 745903865 817435877 217045165 261852004 745713891 405398980 430972240 958261590 153147910 385862575 446976717 518844686 462389469 610438207 293659188 570117024 595721873 316291524 391728456 616086405 772232631 171987809 546697362 192682607 592944451 516713183 559453365 128271643 143159456 821096785 745563023 370073438 352346981 516586646 255366868 204145274 470721137 831851241 723980592 845306751 103365898 378616705 990084733 228141429 902830926 192904298 366268468 222176119 233515720 886258802 755848979 78505734 236598724 781415355 790696976 560320665 960286936 222005810 812089679 328014075 246304712 989259850 741995172 710940249 623909111 947658569 103184483 690064576 722873595 185628647 9449601 142727907 601234775 617164735 727418872 626345153 838310794 162318230 648477209 901772219 196025173 714962603 443284125 428062667 644809008 69418362 600476257 191790499 93919747 280125090 275495488 561912426 174731344 199800939 951232595 696859766 388182496 699288012 332410379 927897360 643124585 564516094 923536895 181086293 132217777 633327778 330205073 315739963 658690763 719650438 693329402 12407994 38960105 928529099 819778144 294113420 651188207 353847211 935299516 738684537 900548696 788479030 791318675 955654868 123192722 53250292 73292692 766451045 493051556 977052276 305720383 269503427 674752360 959740892 473666768 945937768 320757659 29581134 135484178 961684330 658763187 524131826 37355819 713465255 56017707 742690062 950369515 101967191 383231514 603263501 777255723 783469003 744362492 845700818 233322722 660822157 369667554 26679133 639399787 312443666 567854832 268182415 400915571 377399202 289749361 983090379 768622943 883641987 265007654 736558440 439141068 362511968 520781354 282816633 433442598 504110139 547196414 62256482 836612392 305284443 533145468 272105287 133187711 543761971 365823944 552838528 252296578 413015147 254649774 339715333 404839913 19639913 919531271 129963928 561896103 843532038 550027855 475316898 419357378 573107685 35448023 918156130 51726154 434303079 387297254 84395409 351808289 883801283 414161651 619407880 205036718 742119615 723112080 933368239 178160715 220573180 656180224 232449209 518668299 300847715 562301672 97982881 255233326 203896183 49022226 259065484 732324515 920810118 549674814 448907978 183150003 21065453 621390346 894125992 261280029 646402567 679008110 643275729 956061372 641436879 748548582 415254358 679921987 102657475 276674894 925517441 837568285 100791481 984096369 39481658 547323791 349753735 190726246 650053116 134211992 767075254 31925476 533440801 291857871 656173100 771607419 967648092 724205238 785006515 573623647 495360817 347972656 380146155 645480059 803270778 892595091 702808333 391996186 281444187 788852975 361642951 576082283 901512237 927208843 29638721 360164746 384052112 889291840 327295880 681100555 795429956 469914568 462524832 201561267 81068902 619224949 772950291 728121826 397120306 278462412 445664305 928133542 522470300 109024319 579970237 480553112 769867594 805919339 261912108 873697352 143891449 862878783 229416611 654446632 343785074 207656434 593247296 512648659 716288152 83316871 757172063 154782977 13343793 5866527 730967862 816573546 373398942 903238593 974280008 710302548 841762670 682835548 633561914 779825698 616026694 591956648 403514359 140417121 996721575 677313322 641833676 352843774 938635506 134553460 942261950 403821970 96708232 877890212 281627373 78060983 126110107 396368004 474148268 720820456 171425868 897713308 109217635 937608374 730529143 24548000 295306039 506650425 624894695 161697563 593215388 919892661 838808736 802599669 55821904 120475755 741408775 971866686 773558513 641769627 734121673 12147963 384325693 998014798 64849624 682833526 46037564 60741470 991086998 290922631 315233886 239800763 357785796 17141421 145547480 189349774 321648522 485885815 741003866 325143858 903932506 647141678 998091514 118983506 5764821 314689587 869366594 926336380 637603559 317588090 928941207 256634425 181052859 863346016 728490782 777200659 114081024 449860664 789546252 840640441 198465236 363431549 684058661 579153919 204619785 713870816 291121436 67750579 464552327 356339918 589078668 989953203 348481327 525191292 641631565 681392729 642100391 617830729 653684385 905079828 612242107 353776669 624882385 826424230 858172664 57969822 775423348 212999063 909134219 349726665 286674322 785441685 782770333 763976874 94519798 888514892 302391241 301954281 852201256 5466797 463472876 943600247 796310874 220131688 624738163 118670624 896125723 57530618 870486960 803488395 30083699 451010869 977422394 589038528 280325508 841990469 22742975 175913181 612118632 79819988 7664538 193845639 444573836 245082939 87537588 430150648 24696094 637765077 639465350 272196235 561119788 36118521 545441871 349296904 537384816 496620641 44448988 283449860 750612870 874112836 514295209 726192176 373854728 231618266 126251985 431866928 643025384 834855418 22915809 782545306 20790906 90534233 705321468 772797673 601834503 377376037 769480703 657093517 175670307 24377337 62722009 775935187 168607286 924216230 155572573 668364743 787585173 223621133 991899891 305220141 665635995 578153344 239734968 244973718 75726989 504578010 323401531 244522944 510345544 106011898 551447872 879852624 764944135 988241225 235559453 479674353 264368032 316944696 247339662 152134625 232976938 891262848 79329063 73402962 987318249 837899162 481047821 524423644 951304629 338837498 218266725 240410082 719826923 39208045 423740646 416126916 259409369 411724601 824717377 381023785 767350216 248527895 573393371 733710364 418199735 632710172 178756809 483996228 692292271 753649233 189104861 623977211 523549110 141057588 834747501 857904581 123211059 724420823 125179965 170832946 417541103 569422626 163861160 148377388 932714585 778312155 777893765 866198307 946868365 909156710 144586124 694220086 64783636 295911 750850156 411764950 98269430 877874047 810228330 966075287 140976517 670230159 878236108 798591579 808661669 9977534 16284417 694042395 4480934 988433362 633281316 498832813 941008827 348723201 98328405 777945489 954635054 137536054 286339635 8687178 736425967 869356043 830642605 389524556 415002398 921543422 973580029 949842609 788517360 659260814 604813339 876624850 969344966 131159446 204615088 312267701 71388442 356897191 953505173 992487988 433888078 687665629 666250023 232999084 518881693 436862929 927788994 632855980 259148898 215101468 481015205 626150648 488722627 500943930 495106737 931402493 865471187 738538810 327248002 886145853 528186284 720436861 672017824 506249996 383748517 895636058 377193366 254729504 343764909 180826277 506961584 305675132 396193489 842295443 225319732 656399442 205011250 568056421 393476915 506616680 99943369 598906596 145126988 138846265 665385651 675987887 819264880 756011352 88135690 325465490 151229594 713430455 257869503 17733696 586136154 194969586 89667261 823814393 390332943 927507653 656651259 619111725 198644497 517941717 970757342 31944034 677738222 287175533 258493075 918235570 541307729 6786515 931408504 574377586 350310894 931040720 780491683 560008496 163158570 507131488 812905035 308250996 70084826 906889939 181652131 874474343 338412741 88182362 921397928 470434720 684474178 69501424 737995440 639982334 594458179 793146207 945191813 624251806 340008835 195810304 481467522 486514756 407712210 309550122 728298562 332273651 683316873 556583227 457957430 828731032 482347026 305506698 75588481 548833658 945914956 705223991 625691801 31825157 438993797 234249854 758461092 34744134 565771057 1298594 596224705 80518029 582123563 962459825 964459915 13291356 579433969 89592479 220143522 138799116 135074383 266817580 133230672 84259161 63694051 871059841 909194490 854448567 751867563 834740744 450416700 292727917 677449897 653822716 356472793 654168697 775594520 459556460 310830246 335637401 118681050 283354878 144675558 523345405 636970069 821234133 730967402 588031216 19130400 156919325 687636262 896855629 595222156 629192671 543585806 120946458 735153177 831300809 13819110 945387702 113742841 163152950 612864224 830466760 805325091 480793841 391470498 811936260 520255007 98532328 355248307 342070892 398699938 167312484 288369145 238540399 220926584 851186006 10899133 372676275 12445760 484239703 166811296 760805270 296674997 327522393 225740750 537548408 498254044 703391426 479512438 118885922 117025520 459335850 774330430 122266132 857434776 311478340 520278725 670578577 524932930 977559494 124004797 764046805 333208235 236419262 326916417 262548238 904600038 103220536 991713520 508809930 49334072 786900753 835463092 434895988 452725931 742645009 314336191 215824777 14981901 423810212 751477467 246900330 461304951 522974220 827624297 177799739 343105180 343938756 11530907 485183925 93734127 725611330 23098640 668106767 288537097 449837066 554845334 468247105 131299655 773176557 747118799 93316706 48249845 595480060 3756310 536588239 885375777 710556446 198727871 598496878 345245464 418509077 535862212 140017095 614621147 216816974 508991490 166995848 887996567 932645744 205953481 144614641 719452122 670775472 947626755 581438553 648693354 525907068 404147359 162827617 511703066 369655506 691795886 605904830 816251161 900625354 188970209 808533662 730293341 925361530 669802534 679470722 363871035 922800098 261885041 214354310 534737655 212188150 285384602 565201501 547412312 648529469 317805434 831304889 408747653 524656647 390712840 467050950 802725281 611520717 644230677 984311766 343051839 36925143 336951374 174549368 99815754 439195861 280110090 801766922 677159191 386848370 572600761 190298953 297436636 890134792 371212887 763120946 320945359 350450489 670422611 65183036 390444554 809900191 811747277 958483929 595233767 956363467 577100425 821477146 16095158 40463116 948719727 274985440 627490360 133736511 682375542 651433725 556778883 814827703 653350171 545356932 634762625 405817880 449677878 880383142 956530220 268278387 795010410 669497374 766646229 881380883 410455284 135785358 412941835 57811044 801313420 733945987 205742011 193280200 536828936 71595699 269462099 819802674 110378691 225595325 540710672 98927702 23245539 817315397 678983407 108337256 70235551 668825225 329354119 487487930 211131863 143832884 692577846 775496296 445602486 195904990 768392147 811973262 928357221 801892425 184769220 606572483 394148926 163756382 693219288 955493426 101876256 447864151 121376975 457835574 426795709 48561863 979808423 937608867 211910523 446000763 351260574 830111810 233865528 799511114 255050742 664342284 942305161 280997215 991957573 968521169 242450933 292740548 799238694 146186294 264455843 752921896 284151842 866363514 436581520 195190163 455531953 827534817 690269417 728926425 256910290 304001549 912301385 430369900 577580757 681231918 626038310 41995716 312624939 32581784 941109426 436832115 400708451 955005333 200999524 487136126 632500543 823266441 122401042 859756681 218145416 434238774 519095630 452089004 984396218 159047132 855691243 448411355 295491703 249054593 164984419 488222528 410237997 247452542 980130424 560511442 539109740 229721984 671644582 438133850 326524619 738138483 101577678 662605821 284158748 347174835 838326502 607740659 970950557 795071143 580834468 299376994 947450438 960294766 458449899 16025557 705171358 309425198 962525906 459896835 219632685 523314888 952518540 42582109 711223327 28724960 563206034 712637379 315811247 420117399 579907597 555737289 410637136 269496620 667817001 431061675 919980878 502952239 39750572 126532858 666477592 482811763 942647715 251647315 751240501 552343188 522986257 435087234 524690251 298007425 905171136 409438405 397559718 149513218 164190453 729738173 438632465 370846640 726844453 319650255 774986661 306628913 638942336 441613794 401685734 501053299 986846821 971560438 949789792 627632108 641817486 164146383 243362876 335216804 934815978 453461760 34369609 290047892 354186636 719570219 359678127 463174025 514302661 247617602 370233340 816031146 144780512 132386423 17720456 662466195 95702402 75927786 131577323 91281013 329733523 834595791 573904136 126825550 656704575 271636945 272380052 397152151 165284011 176834899 182307999 863834685 507555189 315287077 57920129 905376720 12386415 370196025 415940036 531860743 63866245 730835788 643160915 678017714 188366002 260302083 193718895 529541474 142450803 496742259 711849285 122039660 628877053 960292688 383196296 393370835 538761943 104672230 911213576 25446489 496762447 81549426 256079682 60929346 179891706 507747265 319525160 628404185 623180591 618074476 80233184 246993399 104054500 483540845 858396521 154385873 973709875 202227759 511549195 298617424 765701581 338650077 697281616 179526684 530641691 920209810 812693121 115965546 144170972 35859562 544982154 161178693 687668998 678750475 946364939 579076715 450731297 500536308 978009115 535502656 867702063 9141584 710817517 936759279 697194644 419345622 558193314 23385606 941015311 18543263 51647433 367865584 991012254 389954405 77371124 544880306 822897083 263436645 102264478 593638821 280902635 636810390 796312825 727569902 425053199 447564371 663848739 683844867 589368327 728939188 285589523 132514647 58663251 645524204 641954458 220167808 601690781 355790953 14426758 819177758 120011794 143350863 282204497 374332911 404903711 133225583 627530008 380758117 172438744 128959246 638228482 433568429 604812512 58079758 359666561 746409414 229984037 793386241 386126916 56578051 941945551 882567807 558497305 800567038 866225313 135214960 190519234 104117322 262506889 652633669 536370223 336753976 456533946 201672765 42976165 403988018 259571395 351639394 348311518 944386616 346221944 553976035 435101505 419548266 926398220 610024370 96731588 774334004 72883442 969340318 991700565 344480655 488499681 139394301 655081089 223065880 932356387 3054272 126909181 963087647 598023747 797371230 586010460 796174241 605134138 855206591 782325349 964577810 543624872 213879550 426647754 762809305 552873242 992691920 57132418 727409960 513051520 858322500 582514927 440065254 644598817 925545310 457315059 307986696 632664082 646328367 98663771 714042142 333497590 499431853 494257280 140361891 298370308 182412966 996781532 218272710 116606987 259397865 818359624 801728853 900022770 758515873 386829379 301572566 618964943 615774842 268605396 963278835 761551299 588920110 706999383 696782793 539723757 510804998 490813958 825632395 881553575 831736375 972209401 897285949 645890709 562090215 251391823 393906541 112860999 7653545 105814140 292284494 408523300 571110489 798603602 470455274 920154193 937357020 182311838 390186581 319115500 691912702 632385516 509670193 855640401 992508288 579556823 54502347 984402909 972537611 89369232 212617266 497670255 787867901 820947382 278706461 613763753 771259241 533990360 562709429 153107966 848613413 785484958 931367757 423964427 236372427 166790874 172538178 375613646 375677229 824775127 770886777 57603724 957887072 221646021 969444495 9938649 290297896 352726550 983515117 166349874 986283648 49618874 91379811 324933756 270004853 693744034 34112478 506573720 802763109 274667472 634758374 248458200 773572244 6999007 193420889 148863014 41481483 939169504 945751826 234530370 29805029 531609888 481625767 964680537 806686434 590579236 893365969 99427284 150328854 563908194 438799704 63296814 864709303 797375417 850169855 606896282 97990850 545049879 5170279 921008378 11819160 913019059 112321609 379529436 133303587 95476978 603607206 146604443 748661137 415535659 58228914 357614430 510041253 149433419 329873785 49269016 137842426 433907479 582489834 730250582 613799787 79158371 741254909 809736641 136326727 49320065 532431091 997072798 907933378 345346726 75555815 869363484 180777889 480343053 119485214 4461792 321262141 66154225 792011133 873157780 99873539 879225010 370827233 722399320 464372681 454737784 852709100 371015989 611096157 859329865 905705863 819966901 978578189 29638386 508097000 576977686 454528505 387384343 315120630 936713393 921658220 347532556 646880026 15526873 496595096 507256942 525464551 336092631 198975905 771116122 586381099 575608756 583425738 452394033 957427499 502915619 434672376 883322485 589246988 823378528 377541251 882421934 623673628 99282157 345846944 804263779 33239923 786886390 581464336 162602281 469236527 593110399 12160282 995860595 506863326 963007152 190049606 322148207 155377570 763888645 102330990 198882796 637530092 786985129 502319599 485884734 308925434 591908598 266286670 654486856 903064980 687640384 516749768 243872700 615962190 535016613 812950544 318378869 525254350 904052609 147138675 950569151 561133379 670678842 971458315 627723564 365148563 552163004 877958892 939669996 365164199 815970779 150127218 556008890 619464761 198268845 81826795 392740756 330475610 996530055 299720032 809188570 809046808 894123784 771240456 832494490 879672457 217824649 318242232 930154915 249817551 336536337 587083477 573100207 651059756 992735280 824947536 101129147 261393701 410209699 204164223 819601263 106095271 293900656 675435032 975249088 67057521 242111714 181288795 483343631 528243601 221004269 232968068 430942049 44957740 9986710 395351137 978887442 137386575 380568719 239963673 415788117 289061575 774174777 933906453 72608846 118172104 609858974 981925683 189526645 272137652 856842381 837495803 461331451 738206535 16333481 510402776 93411884 934544941 507710302 561036220 791890892 384700648 112670260 791098151 312361671 150884832 319751655 146049678 162192997 230220427 818186874 117585519 388465835 678087038 146594245 134223397 801695349 349329414 90202561 91110762 607276410 859392205 968413655 539114185 118999766 613407671 922002078 421839453 944034267 693627533 200061318 497280396 652833746 743968257 678205793 752912511 659363289 712825553 970783668 526511420 971255561 283992364 923857710 585683285 387909739 864434781 476597437 249297812 879412927 776392620 431173778 900099305 77642212 934270454 827895788 830545779 822517659 961476765 367892608 609029593 616298490 141198408 565953783 814641855 987393076 911636429 520145397 850104960 697615890 961558992 133308700 809677065 168400093 765961514 594733559 92283230 334571071 730126237 270188847 127849070 865376521 840994198 906066884 425760034 300228733 167227324 259077592 684931922 748509653 111021631 686564486 672292892 72545565 150153109 401305105 815498210 783982071 30634610 406711426 64156900 219273660 592821159 953905919 984324973 891109999 860397160 768886648 529276319 91395365 556152072 483240910 685787341 362274273 918906360 871621167 237638523 131598200 69692246 257811103 510753309 910778961 688686656 879187625 880464460 197716535 993613835 290762668 272642974 54250764 577280459 804257184 792652248 629500220 838814582 359438063 618034087 430974698 254993583 513461705 447566683 688704933 936989986 16084599 299980115 930111719 228935091 220427583 530811175 315379690 770718596 508356313 452230630 102071051 631590579 45485539 417151802 604105139 253822513 370158696 360276954 281498945 809092842 990128826 987501291 382069561 231273751 339360280 145510911 400753234 421450168 720670183 726983130 827622749 739072893 384813006 434841916 486657102 729409968 592321961 841931075 900822387 962624564 267535046 949168158 100276706 577197543 614254330 960420572 114076963 812436098 801379862 448285450 917105237 408433987 197711215 71376571 192069421 502296506 742647365 671719266 263203435 765229941 365982988 399861368 439219240 427584276 699573659 12341108 708456972 450239113 64510714 857615626 704805873 452142753 320209810 909104200 275153839 398165009 962772031 469701812 952038269 383828853 115871492 327229279 967227290 879586640 364331133 814900563 929083137 145613634 743831588 395129452 788763561 193975204 422272834 677433997 923717914 153942147 499812159 137583861 664399926 879807674 978389412 482663149 360634626 268656338 539150358 181733231 819003135 729347609 471286846 347279830 690886579 409632665 938225587 584874163 200192160 626568302 506300632 910467409 144963412 865054603 736702415 308879693 160573406 16842829 134852773 863949832 378819166 844877034 561263834 427377433 219234373 979273708 300219756 569122344 433913610 19294671 270216443 896800515 540283490 352532532 546862906 230051567 187239009 216173892 697992182 427562484 882805646 540527707 506613570 909614563 791932302 1941935 841030756 646017848 376797191 220325372 141532597 333464767 602928218 705281565 274505780 17385551 669268137 251713065 257854171 628526857 945888828 463316357 794731745 594477846 416288370 585100688 35740273 770285433 88275790 415476523 913109983 882385164 47179793 869192312 257762658 95668823 664744897 933855223 818302942 259249833 72473068 778003910 20432749 303999377 538599629 378838942 414953056 741754961 302592700 171748448 107578669 672871681 941120829 301595698 922623985 208902463 398228090 675965603 49015664 103731427 65199248 439159238 76025640 907662064 465482123 502387257 781223527 514315692 644580853 260975397 830697359 663727101 8791634 40699578 322279844 282555290 689672346 48308425 464698618 235888021 539106123 649098725 492126821 516994182 551715682 421829453 540537707 212086451 516061291 87415370 467104959 866557857 68844331 486018939 227781827 717974227 363279532 886851136 406152480 908173368 631458174 411083483 711132488 291215272 561731761 228217389 376663870 714482623 525887867 29222458 462649362 350630531 866092678 426845193 237373423 387028284 149517350 599027834 272055235 619213880 573250304 94604299 86206145 252119729 887272196 108192127 883413361 867065745 164502564 404133220 546225135 104030681 835584325 103981835 763381163 501680192 920843496 790601420 15876002 696817245 692938018 196180392 522251269 328658332 796338984 724502581 335486635 254543556 862081079 239849015 562744482 868922803 7982102 88528967 801165112 681130549 8560586 953039560 389241261 54173576 553131446 834276006 392501989 729951465 847594325 88067522 934669620 303331042 718330830 334088892 291371200 436425272 48766121 825092642 522841467 862158277 713072752 613522005 923574472 777089866 423478211 841343081 943571434 338052051 184430427 254277748 411360346 403462265 732382299 492432491 709139372 281159718 1362740 906869687 498824978 764432394 644628620 28694689 825935534 725847005 638753126 869641531 974103311 656535999 975835384 212698005 644831497 294796435 958080721 671827182 685877640 790800979 882986951 927984532 552330193 50408004 206905598 534177585 6465357 906221509 307495588 819397275 881866675 524572426 577424512 536873459 352787468 620734178 909156284 98778307 910670631 120232657 620707016 893459328 403787575 26282381 816253147 279643322 128475998 342188572 831934492 331748604 561286653 257203184 650703989 712478374 244442809 580228293 636085941 376062698 544763174 27930664 76076006 150543274 225570590 662063764 673664203 315837806 888578271 416109898 330631596 858038839 429096600 642236277 687166990 140283942 192709352 680594200 776843622 277452 661488429 770607075 42794440 360309504 624932869 976561645 96928740 925561980 296939896 14107833 877867509 515245197 488996655 925823698 644611179 274830922 840096305 62847743 852651379 799200659 772624952 583300264 524714667 465725212 824843406 600041296 100617964 895507270 842262114 635615696 124850688 785801464 557469296 621731314 648847800 459361293 848744073 724302148 481425502 883735375 415874833 21629788 535956222 425804343 252625632 103823247 254909036 773432306 29008670 29836625 393850407 930648763 415636146 207856448 613939888 386315994 117207065 74817871 141614143 79412952 515893715 746165308 762649267 126843845 561363679 993230128 294650588 617249015 799448978 99545044 670572192 666662442 309577286 119795451 349308599 351138995 924357698 536674065 811075524 531385361 11983796 275936480 116182152 803041220 150621135 754371558 968637071 790406282 70769247 520171920 841462645 161354427 898442972 451975079 74486931 182194632 743838636 463124834 85460685 185082898 841171477 157800561 584382942 959937480 218673515 183199254 903998746 96128792 306508802 734189329 127690695 968107378 741416718 883140843 496382849 808322992 582847071 105681552 360979905 601070712 323534196 909409326 286856077 524815556 791901665 122648874 495112534 618173300 47462619 57196253 9399964 29220000 297962241 733707651 245698703 759225901 396542127 690547942 985067089 625201700 581328349 560648521 35716140 418423468 678902595 937860998 869931477 392401661 431548780 420756107 172539215 952890568 680290665 832803793 213773487 636979119 334283955 881976965 922375235 515401594 780796366 55537027 616063340 868364892 774564213 168141415 977686821 760669077 15642826 289903208 457698922 259481324 705281056 577019498 145681325 510958563 362149376 114321546 676714866 354544940 830092696 214996492 21238904 171453204 413752935 402450282 541985816 14708923 821862552 544631701 17860390 990528118 779707348 366761591 852650915 120119504 166887556 126615729 415549197 387626347 63273756 669229909 684971812 226384726 823714215 279807288 639349487 695913559 337737809 830234907 897323919 632774233 9307775 826841432 474415843 807728392 82950670 454944736 622958427 10873058 71381477 42352121 616468532 310856968 615020805 471086058 884131702 502015397 85230276 628969299 512390466 452121362 774472661 157475185 381676317 734276785 751190606 68371027 346609151 397013076 14183804 407131417 968833456 312396118 46682009 213231237 294139721 744305437 143865935 916622352 993889128 190849617 751573237 921737376 561581253 130143273 450487163 298229113 735285663 23356766 689395693 887948758 707625067 806744718 347903866 722803197 65310724 248612062 810212936 382885354 690691231 383221545 592641961 144762238 805739747 395355681 124390064 324176648 451635621 371415946 408709655 27225950 901427818 857411668 179967873 827214178 534726972 353600961 262758259 958798065 452477886 601537629 220028911 555575371 937155754 82979394 364989864 300479601 130340573 775864053 398935821 588284040 617853220 227999716 743813446 380798595 404903576 657790958 286062067 608497563 95785782 292518586 890587351 982800193 456140390 249103422 697256671 306720736 681162194 624865212 755765976 187302099 427493074 478984221 922491352 321538284 728912258 19405067 477440181 625353276 586652297 309464692 933839035 611029044 917682727 379296668 464643485 166274434 822659971 87005297 666493038 881639174 774641036 471226534 429567637 835964833 521269951 865654363 508840220 479473835 914547061 2642548 954515129 791676058 742957896 984217706 366915688 625808058 71044753 588925177 93891336 373968883 421998191 843727977 176956224 171039293 746295877 528674262 648023320 733330301 340970455 772342487 561979026 849652597 565346079 903721472 307454830 124142201 372889041 750694773 69940128 560069505 80443309 207025082 464814345 751051913 204306081 696232011 433349099 10077602 310477043 61796649 352798219 561078491 720694329 469681346 632083653 838571534 831777651 695156565 60021541 761978871 911417029 700388149 182880234 460123849 633630516 544453590 964466279 699972690 148276736 268691565 18642671 14805775 536373548 851149124 386149817 233740119 822590642 369051430 638200553 511626715 482288592 369983701 455650207 788321264 654216059 289813890 534775960 81362126 871662694 827049687 471534883 44143022 129306136 925858108 343870146 108118574 827937993 478577837 477952382 107263252 385336154 756546528 64104046 300853724 898020875 632655852 86232953 924842983 546882049 319204394 178481219 651392543 710254316 154382569 476780172 795493285 850882984 570343185 858992640 437297115 653106391 556253667 895232451 453878741 261939768 175077291 753056239 540059873 552449063 891477546 408901204 482996320 46891522 80900407 705252481 46259448 955669030 369822795 369429734 459620711 968608048 390117449 681018475 775510938 338033722 711891097 376105292 515709012 982806498 579239726 855815412 275959491 916517004 679747288 954399913 111895712 457941883 738174992 853690925 428382378 727582307 777623550 116718668 94909159 427278689 137162116 302173643 476977919 519460514 952771275 205012594 306100238 35668349 740223263 143420106 522100060 939753350 256260138 509471148 574133887 967394772 818439245 458431321 852221300 860323229 783229968 910135857 285753950 708877355 939445855 874585837 579909355 280798146 752385210 857766292 304182717 471054081 674114997 564043321 250689809 435343921 333410541 804239450 261595486 399111690 230183215 162862683 973021973 39486828 959903926 1514867 753436771 260825213 319754306 891108913 481513480 656363967 478658923 240343192 727247719 213926484 214071791 751754015 158137971 947777916 40203518 409425137 82637678 765648010 517564706 717494390 121224833 445248410 451640466 336494881 451451424 616257132 858951054 392565379 862100104 279676476 272938341 129151003 144022897 713246992 836852167 680203978 576824955 152445863 515845994 853224842 930212733 362569938 121766352 996967746 884766271 380745327 647316000 252753083 642870644 495000790 432886770 791842171 906971088 110560095 159817730 162858151 24086308 947967014 238906948 592851062 556162033 279346922 578167704 995735571 429049248 400810473 546476591 71197945 710636414 557433205 714860228 56979663 6821407 312606045 868899841 945256665 481823089 2923764 584898816 583905016 19636750 467948595 35922221 475639390 246234104 104715213 174689506 133605297 527320143 577693437 217368777 506116031 994059821 675484226 120130294 623788169 446268286 144521037 141524604 89808444 478728336 372241305 486911039 343561403 484229152 174281212 87258225 211012426 441045031 452800102 297445850 867148384 940686399 746893517 530295079 597610003 590741078 671200444 165714010 965674382 380325317 189196638 34180588 1132353 501634365 798566119 595649948 674797670 199613950 275515774 139442545 752350703 975110246 671465284 172117114 814573354 181482720 90000162 893240867 763110485 749112686 536492276 249745823 782626330 343320527 402853495 6149684 363570539 615780473 824123636 176891636 569014450 289353600 586471542 634653086 859222625 225894751 21808684 715712483 123684029 281664781 537582283 147315921 495914182 475228725 390308916 808047245 32766934 405406985 591367889 764109259 816442499 991617019 836879753 960104491 990494949 557940792 825119638 885523352 588771147 178366122 436255058 274118816 94726308 851409118 992845849 284245936 438326970 404562123 556834138 891891093 118539701 382259168 617761661 615477358 904245533 662502291 630206774 854252388 833618858 433795093 439812213 91010101 847947360 425335139 687766763 810235594 896733136 645353415 365017755 124708606 870207779 636304764 528265457 657401409 28569061 935600322 220408167 468178317 646446659 417420294 485368521 424538489 847445374 43304396 288642529 384567598 860025302 437319279 343272545 749197711 948307945 913724055 377635959 15544757 394372542 720705029 843795557 543623406 473301986 777871052 899224880 290858364 261643120 396828800 988129277 158022600 974591042 596106292 725837250 204068568 887871995 295036268 859612868 876107859 108415468 856394036 767122472 241750471 489435012 422691093 150873510 258335447 603348032 104300798 101133165 18726805 376175588 943791496 614115545 529431681 272046770 713318075 353336343 578231254 409198842 641212410 698913618 449484432 804178982 963839303 493730221 747111665 159355279 703612863 491902210 321443839 375486208 54282766 124721127 649057629 421671352 957096037 448038888 294818499 678509885 317306722 489914909 790982085 944017054 561329413 837263581 630769443 978130915 648910977 287170349 698285454 450062815 980795169 146932588 89925690 722702486 177291931 52471439 309507734 834250397 478181336 258633526 755142791 422119796 809212408 867491493 529617153 245979573 491505373 646828101 102103704 700812922 201211475 915063896 926169760 990841198 81514732 605442705 119956150 773184761 479132801 541802524 770893963 189638913 246441519 580456905 595528788 244201469 794015205 155441808 903801691 750202195 986849955 185217288 187503776 818442425 829960148 766745612 209801468 433671134 602736889 398399304 662768764 803558604 517801826 556502414 427210152 138846053 454492320 792642254 392377416 691193119 973518465 772333834 726886130 398500819 919390894 977877656 243299779 543159157 302619746 128989202 249030134 972446377 481661326 530905990 333284180 641608425 269762445 693758800 912195059 355054144 448564275 833958022 469437438 734219914 985570946 707464494 80738487 748948250 111444635 709478570 152773011 908864615 113281237 386251235 663768247 449028545 28779409 726549223 182251677 913958608 737136963 950646864 740767128 464676586 341579692 203947382 385393820 910732963 847398246 706521724 648311024 690443310 685048591 892643819 105368337 114246928 629061303 829923288 870425554 686588923 805155532 36555344 160169609 913658261 982290870 662865699 502989492 713357569 525247409 392067294 815588792 127534536 611755245 414520526 373780827 873750701 821948915 67211844 228493535 274678608 678355783 843933465 618285673 308834383 45356045 243794746 821474314 608869307 343881889 121470575 830801737 805870313 100022542 849841237 66554369 545300187 330580449 41291173 78003006 519589235 664634293 355170926 817727668 215854123 809202808 792938323 795815127 806599878 819355375 520590859 79391979 47498026 744567027 27137372 9690696 433378402 553283339 517786232 270295755 321566659 485539767 842075218 332451599 307207256 382507331 971952484 437143197 903005918 518070878 494654451 823834144 916362115 82703098 240746635 237798459 313473416 642357061 409659548 921323580 780083064 200145091 120453194 584326849 638294166 890860371 858944713 524502683 474707198 150481399 86625484 772982020 68512441 820634554 33185818 476214567 652023720 561391882 807705809 64393232 583800576 375907465 753715615 387171148 952962028 303824060 538405033 555369492 443536453 484452186 185796473 279175705 108582966 578506514 739451936 879166559 669873987 856809650 360171678 643942518 362523142 606658548 987018914 971788249 683397763 531876372 604093683 516691137 450791636 485031365 220139365 898618724 921340854 663851220 343617650 553961006 635775716 714619880 483678238 525947211 245935667 578484141 361699801 955971701 39694409 219365370 214623720 293883916 347074584 812307988 806538658 873759943 531947852 475079515 452060409 346166727 632436444 405063948 82860607 795341692 672620156 292289074 997359512 40940836 453639428 196434930 174214272 20055510 594509180 522192254 372186462 798840102 751496712 493105998 739990123 951428567 244011871 942555780 453953220 912716362 785921312 184679812 302726714 261327643 972357208 622954386 384008793 945423321 977352088 167582959 209195763 692687622 357816150 13799899 413203439 713979388 857785637 16230597 880282006 139461012 206011073 397585941 284103182 28330676 90866579 779445283 430941342 719591358 620933596 328514537 682977888 527934602 61902906 517970964 912648700 545058535 162937906 903525936 708142289 650504376 605836359 408094338 762127329 261540142 860655850 359745451 377262633 178878815 690135356 307975181 213947331 138502740 698263270 996697684 919342848 614914813 142686061 528898509 733440278 767414790 519628801 855176896 665057432 387737387 350239971 387799533 450368633 841275495 183341432 824174614 220776587 344996466 286468561 173038114 714946536 702015535 795815690 76099981 197498598 34125449 691150986 922204290 872120850 547122329 581580282 266093277 711651976 584128604 245959034 608956076 837856325 625551620 486426746 980258774 726967094 515693242 620262101 203023846 374908836 80331179 529196203 430802933 716214749 951191066 83225768 656229609 617634830 752939891 712554550 315349114 15960475 976812190 550412835 920150021 632292228 480666828 65196525 23589376 195812172 100217060 942333744 47264146 890813910 485647450 328370697 466666136 602937179 39369759 548792559 366582316 871104895 21484793 870513657 450664516 436223361 802817834 339918541 259936657 386852013 578931641 775362745 30275161 553493217 965889763 145986306 896822931 969878182 195720274 250269093 738140556 705020369 727418412 348156315 525577611 48968096 30358835 811747761 634201125 848206259 301039914 712412079 93843964 172286723 410886956 28647516 586783377 50237756 780578978 9670223 106833368 973584560 441572039 351473813 253943863 791697790 890048511 667848090 429661439 382957938 378952859 351455242 513582479 590260476 630859723 973322362 493093937 238829896 735686510 809004394 409839079 676949910 982747557 522596985 630989280 669947452 51301499 19047319 602175525 598954650 441443174 478112474 273901923 240869490 754566518 870596506 103294688 268072992 659766924 303524396 506482466 12636156 442622415 327621009 416688188 632307367 913501345 26866357 358866410 153983562 226912685 95276664 675729804 304948252 839027048 354583408 714800716 425644634 531424848 180911810 422463806 957750067 815436981 837814522 548571723 115769606 561130453 449082710 489090668 224051024 662033104 264192083 782187621 725811056 375253095 95051405 697020477 877812259 917446042 171122061 10093223 43983110 397127080 636786920 87883471 988004550 297773816 864360515 929340175 732514163 984507876 233932360 287932489 94131175 434865908 202468374 213762724 493929753 6998584 442651400 285798191 884529131 686200123 937155478 668520679 967727300 175811121 878456654 774942073 613824562 338405780 157102016 971844310 18099429 25640324 66693008 758148125 69644902 85695080 591303501 522692780 818312330 820743800 438244225 484718078 604569783 889169930 107779172 206655384 339116415 19287197 396285981 48595615 726649158 129631308 276140220 871463327 597050022 798007559 551028682 951429050 452161418 675660446 286732447 403725840 734747900 421181365 272299486 971802114 573554358 733542269 495141247 752879460 685522575 750172910 143207621 462455095 209565399 571329082 204861987 203176283 39514293 955083823 206324999 414487043 843104111 849412858 45907015 510061599 622416535 886317866 235910932 465986163 669033892 60389193 922279666 936350915 130392088 783498967 932989669 429557514 139193942 244919997 664777446 712979215 527020248 730920056 465389762 720745067 197315224 347842609 763713328 836865098 330937421 772206448 137828308 417855456 901386954 493024832 228885426 463540696 195131444 974800163 811563337 847266412 893344526 476389264 842959617 711481912 824422684 946510677 119538701 65742417 259701216 656114034 111505186 19890110 542842017 50930616 498097625 551282278 201687285 998095582 221689611 335489177 599733668 793853067 658727602 8752041 515176282 73125587 302298376 969172701 212839510 560895049 262216522 27430335 447157486 610431751 266649044 749891410 789544303 837719520 750614479 960071501 413096474 465431192 5040870 995259743 367992912 423408762 456345932 795202118 606948127 254224385 891982318 312608843 151503069 480661006 283103400 45493492 901931172 79769502 890156423 99426332 304439394 689476026 661474473 901130304 602365494 568501769 356996374 560761988 702341723 949222651 430969064 360296200 337252655 566715174 58531428 330999529 223826792 775005806 201860455 476730442 879830466 803428359 776225781 736634991 72857861 115723275 992981292 59311183 332135622 736809893 638955681 659041987 635865129 830988153 854822099 297188314 20531624 893931110 593314720 9069140 674000822 83610035 461482608 74039124 426145117 207374840 526497469 796303362 443487627 836790445 800738445 129092789 680682360 212711612 592039471 278749880 553047687 245794390 773278233 531272058 316611694 257725949 692173093 171030667 831409503 323028355 775495249 920460258 426202519 926283261 652450226 842622934 656426469 16176027 820897539 600090943 779063662 88135074 225103843 892589705 748534963 379521005 995978799 445838400 463030059 834787329 45401543 225599168 517194123 37961699 994925250 512867294 940220504 43900047 897881336 102279359 621103967 280787765 469229462 897079584 832226024 771972317 672363339 286018628 86608960 31275413 887977728 492023137 569014131 352410060 781639925 176643854 770085574 951352664 224755284 133613663 293329714 526309101 224377737 77030097 484758700 803988829 206812008 759121608 40968849 111336935 329584851 907998357 200820030 418245067 943367869 165949080 993553322 886608738 20948554 100753009 663695267 237432378 4802295 863925607 626532009 81301859 938677415 16806626 292760091 278400723 226540659 806490159 17414427 65394171 506468919 844825876 624448500 151659553 991014221 344264186 567165379 684528115 184584826 594191504 395536455 183260687 253235867 480788707 747304594 480373344 376786390 705930070 185347850 263431563 839889592 814895247 272404167 944972873 778355963 345041199 565842817 746860978 577768073 61134081 662755811 126534999 849091122 185961453 921786880 656565792 166129770 869712978 355533184 231113824 678487401 694175426 346338272 353924632 247284147 928312614 60437346 707782327 623719927 116682465 105927154 772861933 748323301 300215148 405420479 439770759 938585481 506384292 706429114 724264578 346891820 253625923 210472334 569937553 63713404 51699698 326475096 843089527 988105487 586272320 924212532 751482947 361395894 663971683 389453303 21721093 162893837 758580797 777594723 153455673 137653120 764055136 416722116 921196633 427041998 349430189 422866284 166172372 824144730 913746544 725038771 704931165 117642388 949746676 668250173 941367476 795605987 977017516 780250939 932229050 68958462 460952607 863886007 550070324 367534082 576071100 418180636 715127907 310805877 567549121 989234389 710563004 662411452 569766343 220807482 197367279 260788143 846005921 723476170 423800503 389123840 978887373 799291007 943186016 575216893 728737222 421610873 172842927 144170301 640956055 425982132 764026482 103682291 560391270 94536513 707061167 666153633 493782794 990124339 28497463 753078087 23090580 204673809 306593621 137748003 976584435 509264504 266836609 748857675 382140357 934078101 1087710 689084308 511401412 964420712 727991823 886562469 965743592 311635064 297357324 304243809 784538284 458154631 733935019 879215007 828825611 40935577 478816318 507008095 808806313 330414016 847349111 731695810 326773202 610137851 511658042 673735758 708442688 73563105 241531258 894649690 300969827 655255018 986821382 752716734 69203595 636176715 545694801 169609696 716979262 298435461 788876939 561200151 879155170 622577869 2473769 508827561 738333243 491005387 343413979 853279635 921324676 961203637 426655841 114985668 219639898 904852693 79215255 800967870 560126885 257609069 621089204 295067034 418710403 320091562 827197396 641060181 752004244 890209151 615685931 942945809 482903122 997272953 74077053 634810284 935760229 467084501 901440359 408714247 968824083 804323035 954368690 368363739 229817045 734487905 574778714 666829406 301705766 581083041 669170368 656568106 536675239 38354761 7269126 444909566 942814542 5898437 374951027 82484729 478530808 425487974 142215259 460714730 609501723 316282824 699945649 286832118 574004101 29716312 748291663 827609746 178802391 246780606 130962585 955228338 764790463 914151012 85019260 383456111 495968833 767716942 254267729 680734464 721427712 269881254 753351926 925628687 212469049 757146331 777940551 57680778 532670081 544571745 829437969 750691318 340689291 770090733 666367007 224436782 164807605 541285135 872115960 340421656 870725310 271044642 345063115 25067012 181335385 653427074 257169688 908608010 759847346 323266840 712005265 182493468 707510607 582751224 698772640 625451663 919919857 375681453 506952747 691194445 23859760 547550015 976009191 36663652 789774130 417512470 642405899 664861381 586403157 634704722 943064125 143315896 30840782 742316064 578800217 848114101 828626214 689578937 502374232 970900413 132683326 779251060 662274969 820271527 714091217 711837898 133915109 675797104 497821022 842861396 898216973 173391026 220699385 255274547 584774498 986447639 204955382 65021898 116880306 503976700 71763924 945678334 604432324 495439417 271991730 581820872 736386652 163350508 560928075 520063183 319120018 638945864 625244268 71455301 129626937 967671254 196625370 383171829 280480002 67086768 466052036 745754536 778405099 548438243 623352906 894832551 887015362 965791299 831215397 299210644 723798512 341076448 176615791 881689056 130972149 653863033 946219743 594122094 149525101 383829817 266665112 856849068 399891787 750228198 653590766 927844001 556978438 558724539 561708436 893758282 807613971 254421357 967702816 707170069 42771670 743660697 812809527 654880178 726608702 341097745 660553267 391643436 209433599 75442927 304358418 304473742 399527598 409180988 158611311 125551684 919539830 65978602 624577449 888209821 520923493 38226606 584093820 113858134 84603582 507759793 774263898 215856459 642768095 785666343 541286520 319116658 99789716 473144336 506248688 780619463 574370957 192139120 738027200 286608590 646882857 391308685 167033218 289909167 64303732 972015384 610446009 755928392 585995789 272008671 878152834 700197921 940612569 321315862 320654498 870886033 473127525 582570306 229707189 212968584 672327707 507366477 517903032 38976571 46212321 294230156 850354416 429093638 75890104 628427938 677766270 605717757 515650379 809280201 955703533 517322888 131965660 534541355 783395676 267313139 881291896 821136030 744811440 217031305 841238299 983369164 840831307 414500022 863638907 889714429 25863414 861969209 840539132 915937989 153986220 778171493 246278859 570413864 289560423 21012976 64820968 130899638 278824679 497813817 726492987 883167185 473214796 39289500 626851135 612238721 817337660 35470539 744996532 23434513 902287080 80639093 589363148 622982956 91499702 403526192 200405931 441875207 597698298 147242285 774396068 375394105 861168475 721700663 798352698 942576373 417239023 239493538 832489092 935559677 677268484 924035759 532589429 4271091 331890701 54339397 675997978 260024507 430829300 950913603 666935449 911987689 213462564 103852146 906253599 850319308 765325307 316831465 511880708 314957444 276585680 806701783 470776558 772837493 382062077 274977927 595887982 278693637 90661131 378672653 680482243 462508422 450051791 525974367 437764896 185489474 615499988 405159989 277092330 66532908 536072492 900276180 466017200 465464450 760875760 312511982 291132953 488000414 962910474 372755085 819575952 494535483 397509741 108044060 12613358 576277527 520421524 104907071 148619244 412565598 824113558 554468634 800323644 136662564 607196048 456359243 320941061 601604254 428902823 311331073 67632656 568516792 982017198 556689971 740923531 739848764 93264789 76829897 144813762 410358747 732589336 556977808 52706782 733879047 61372313 255827448 809462454 169039888 403151502 428113363 444888128 577740670 718849663 742958444 103382424 96673030 444793867 100932327 125833882 387339455 202097032 444557244 382644648 382553835 517567291 928145135 488146425 173777771 631945050 541993726 595975219 623427571 815652995 931832657 466649543 770256480 215352916 744251724 766731203 497985070 105292592 765772941 934435615 123028940 183351685 370226293 540346335 624685545 78816821 535914967 835224487 259428643 453627319 703583056 122233303 474916325 388040008 915588987 228545677 839341873 400132911 303133010 649411682 277018385 451924136 921116010 889218061 277514658 535938554 644104198 756882526 90331792 574487745 38863536 536451824 446532050 63727154 519303031 351672643 692721141 53606488 914622960 655987344 30744470 139643736 756373630 826545855 49895380 61823193 621337852 175022862 272510338 10380482 63508314 400085202 868721295 337763904 127613630 588590238 132475690 94884844 847604000 985479789 174131456 283259539 277213568 346435033 307568515 648539120 438650860 453426593 569937561 321200074 61543351 734411048 938818280 235271155 785709404 963286204 475200974 855223046 52526426 803729030 4361267 646106161 694206856 88904828 880714570 582475985 461013711 286673661 186408051 395454846 711368010 239634728 844793583 776654372 789907042 938439759 450575760 481476190 515360419 843656526 807754489 753946211 351442163 818422648 299287460 69706899 840767744 397618299 547234154 382187413 312825259 876361632 139301711 737877391 476920598 162745091 351116700 864666602 20354273 315687786 635631242 415510611 291452692 740012266 294822040 225867455 30417762 237351601 389366666 741121187 594643143 139502170 776726117 744704405 371784034 993493137 274145564 945932852 318838876 909298118 860424637 859418921 673308588 186150391 933193530 176178450 715785048 348080610 534415793 938519271 613142494 202623749 300732425 859913765 737720320 184476137 285430142 422235975 126557025 567518158 415520365 777315961 279021676 781692380 719815840 291326321 849424094 819501715 213918539 884942205 583820055 311206358 203357492 572456909 463443630 671720486 855655064 501008780 444633690 170927931 215209039 815520545 57944357 684733702 61110254 222217473 810014626 962193697 690068889 174074834 839661186 614184484 904822137 125491807 618647151 358673468 926751203 516280820 758295266 538861159 438719321 981241836 704804251 371170957 357305372 462620112 510706472 974046513 561405617 175355377 97023810 422564301 897412169 462478639 701104823 463349577 193685441 660803101 236281603 64108370 963654929 323790710 703966510 69621119 898278128 647386974 147238304 251233578 846865015 87355945 438753074 415350709 915361261 454699372 707293974 33705642 615652901 567794356 839759191 598842883 225244987 287735345 370716857 962363709 415530855 333980079 28218583 538008957 193611061 280482118 508949433 460401446 981865096 322702803 742185796 709746314 459025383 446633189 912064293 257213364 782246757 170576260 787951332 274108188 995824450 381241938 441874853 808661474 939972130 742009867 879593802 210951165 879011496 35007885 723548693 944380014 656833133 213437205 721763816 576859991 588525583 451123250 204132897 686103806 137870960 219947426 939663837 533767070 902051979 626371514 292287184 816666925 659495104 839024186 765175807 899093319 67188213 315819368 171501399 196090747 180133806 32910946 230876285 473951639 332808401 961453082 106525213 833719365 341025687 669353699 582296002 835368124 364199078 726369619 179199794 640129623 111149057 353204370 812688917 202029654 796750515 174236201 50306286 215971660 419389243 983966735 159389628 424881330 121114644 637140304 608994626 873304284 456418678 106617049 311805056 133350493 963027741 395586288 312174845 949253082 922681941 795622245 722136062 674305783 787866430 336031264 731480865 288048743 632831037 269192970 629247683 278746905 933963439 839356122 529087393 593942386 969001691 902310421 933180238 809119485 642207034 56763982 95215576 681114312 714215201 520027625 487040762 396503878 712830102 553817305 534699283 785363881 510591545 209619389 476121899 571568582 725968283 881183442 28919709 409548068 706950264 325608530 750657269 468741184 976604446 378919834 9457774 257087078 217081918 785368329 666293451 389911503 148755965 201695381 615938273 505053628 468763077 431252134 365995807 572236624 151570801 542764 470011948 763279701 894314208 754619045 157445590 122482827 763754497 517089639 100831892 763606889 175932607 577661028 41097542 277752091 896309648 755388873 918270618 957788774 437864431 403800670 707335933 794887822 230687684 591324304 234945812 997074667 755676100 507806140 132049166 733674737 756418622 980977856 981519447 319930635 798210394 738455103 22381759 560638753 764533176 579485364 921071912 613023393 417017677 809742252 953635243 179991253 180961073 23235165 616547047 860139449 844506980 533202930 138911073 332978342 270672393 103318321 197378591 849467673 407004628 899090253 672482014 255499169 148670126 411209760 499540857 202123915 698494169 84590168 702796538 793157913 132502847 666386460 169277941 154095645 626405309 245250715 135989214 634558763 750061397 560091578 716321956 711460109 477910326 86036759 595568620 391527349 76333833 765039679 824089711 371901537 423415264 406147185 482342644 415048749 486223826 784993679 763908108 570391751 886184580 160882495 880612821 778334013 538855949 859276105 661812175 462656046 321216642 187264937 465098245 120302186 282002225 38307618 128589175 107066554 363866671 533367731 439489029 441009426 89249532 86402635 606863703 935815051 45248421 607898374 790753504 833910481 963535828 694412461 120143337 496796660 959912516 297536693 827336897 139980951 640052423 214715339 413950672 45020057 815166549 870139890 677988966 270680182 770901188 558016143 212767199 34115104 253296947 215765066 929699231 838759856 340098556 922085842 748929194 306287606 335664761 742303616 645710058 409728001 324778498 420476287 532759302 684188585 478651220 990621682 583059844 778953382 921604164 639768188 875237544 338225251 856661194 702764388 135759519 524524378 907054788 471738810 574600090 76200287 663484424 312817916 546674582 41628398 980558091 902667655 208064222 753752899 141477128 854295921 691562472 691729448 439660581 345603250 243516151 270680915 608367938 727862864 655391232 565463596 741613738 984146825 465842855 508401427 676724061 239528589 746836135 989657755 392976002 863143990 56311013 368853184 747715912 592334192 121116825 77508030 743312134 695127475 349209419 552216479 867000216 167453130 832427092 590438105 972589159 580412737 488821923 499021889 737884245 143106000 71977816 159535255 854814259 92592359 666909133 239376068 562237483 649510737 564310259 665269770 643974378 670131771 857748501 734786172 398052144 574846236 889304766 616854236 219982440 352371207 491115554 627785533 169215861 493957087 345289051 443311845 754606638 567739776 827048071 698946195 907528593 144455041 156465011 423998237 849383774 661395913 901003990 27793186 681783304 657129252 334080737 600804287 640134588 772162750 933420209 556478534 299522283 993690042 802312116 723177231 629744626 574767471 156913243 306954898 153177973 126466755 827647863 628863945 790017093 461266255 760867912 762906152 475154873 470092342 599325314 210446015 399276589 26267949 707202162 482843369 7209282 204051665 167156980 171192381 761552699 27623357 132682665 237245353 355881301 912603355 467915169 704148914 309688523 225102982 579415645 94294982 626476553 850040435 622316378 572891390 2407463 198332981 655769055 997350753 829922100 908905842 414524546 29971664 614883788 388168361 752351748 459960460 371602334 173380087 595450917 880235234 366571336 435810611 852957811 693360793 519830597 722062873 978077215 330479162 623378352 705440740 239207771 302878645 734546138 382694496 785287896 13321825 943751031 618727288 701767267 667100752 874329656 619433032 609690775 514804391 693900555 140015339 604912845 587755476 527474206 68919333 174972771 616497600 370468358 768766534 284334047 133196112 409595702 957761247 780019482 127142877 330225913 708855364 29100499 874266011 654878735 184783681 34932415 695802999 805888641 30539672 697188166 926588579 372674671 546268537 778804370 310568968 902625747 874153137 838034582 347007114 641850334 45182877 221324937 777321754 655917370 913204162 865265885 279549284 501026085 711985775 841970388 45177094 594382 506723495 550568454 179825029 406435646 260294370 644517920 192465764 777331541 581593712 352745386 565425731 837615895 882877919 933279825 417012658 472966766 718891014 758010090 423487470 466963005 230278996 154258825 415344691 120422432 318776907 502259900 688548461 71182768 971696409 62239532 487876001 28022911 847315130 150723738 96454266 94039738 212211893 953012467 788556107 679604144 296364006 730365861 305646777 786091967 824738990 921563936 458041428 415414958 66411244 220666147 300461469 93421946 677494959 184007633 227242791 657549180 283396113 750200396 856522479 382970551 7958582 984004546 242684722 112429333 587693345 68581758 686322704 283359562 187693372 829250856 714270968 84690346 622843222 338844377 330707298 79475339 344698116 653565167 469592400 486481497 204947279 848531045 859570996 182090565 303044449 898131229 708358199 669728321 997948016 799561111 633557716 4438485 375276638 196833117 735003132 812335618 176627876 449646660 479859331 122540782 163350077 264619343 665743968 546850245 638830165 387898450 483449441 798695326 862666101 263404896 403473239 882505620 71582800 727614067 131227923 131407891 470362051 530624787 884170372 670058248 384750374 642977788 925304896 257929030 550975679 85713604 293874628 122090320 105692042 674872391 951023905 510570641 185450569 843957302 183361188 274458653 657221962 794303955 445357620 888087903 714999953 121667449 444489930 40715002 754343067 631880842 728223457 19905779 524599589 404371195 779426220 635586030 985429950 933776471 611065037 127988394 742791647 983603920 6985472 142639964 568616893 767902230 343467740 73783643 64865564 56786789 940966480 671517897 786155779 102324242 614209882 157365487 781889971 24406362 391808253 273053241 944544320 123620215 805216017 437413129 935116141 121697532 134618193 106659017 398584412 665094700 402076308 191730300 250927635 552071044 183484732 598196833 787446967 550733301 449727604 549738435 473698009 414675109 100924742 767089942 488747519 754732715 255843161 418810118 697404519 688620584 954899999 532637523 508861777 103546977 414285026 209631739 797577953 956731453 776130077 431631661 832018253 834662434 282521154 252788933 783401395 808975142 11184542 861613114 748304156 391210988 48512758 954307445 42377634 946045490 848533534 784436289 231810079 128120779 785959512 483179164 328232098 402272268 86811088 836032008 356602670 40815201 354798554 268736353 287618391 934831833 31757204 652645425 483416777 757944659 677264408 55939362 985787420 139863214 923657258 425814030 277850587 309427163 380662678 13457675 768860591 28432440 848869638 447126894 215536957 379164317 972245000 131553254 90673398 973463835 608215784 884044076 425084430 408475721 64256617 37269689 865194692 623463534 329885471 160887934 139546983 459253122 179569310 593027236 264270740 368687724 772467178 445273480 558975538 355894867 590623986 668899153 418302393 866393628 562810001 291773803 5592520 997546457 90129615 156729431 112507974 591203309 505802261 934393061 227826262 627022707 962059756 105832025 55583293 660063179 673714483 8236093 240130232 278360883 375677490 923467199 620283351 884823691 679695640 889604751 783961203 252536729 895359101 797859476 820270288 552682452 985162484 31873062 993765044 116340288 683833553 528797240 173382144 95043608 660222098 780797993 849239745 470578802 744559634 548295665 93891546 534592789 269636878 792993561 97126428 5166661 88819944 182512669 218585746 949324267 815290188 273080995 58632613 139481650 917475528 266696913 184140453 28221027 513757553 865007683 2740471 53998213 363998598 653638247 478496213 151267339 727706863 106861144 20454654 207691341 583943639 136241756 918125731 906897897 187070254 558438187 757280175 334031906 619834683 14285660 523922444 130026774 447631734 207511403 32371847 221393465 33512146 45402916 585507384 760122311 92402090 937050429 782562308 363502491 379922675 610419674 807150199 992751677 269071291 903834738 357483731 758795649 592309549 214196293 641608904 21822605 186704366 450310255 20300572 600984082 251356382 935304455 223898087 630977506 897309942 34260221 250518928 196137270 712850340 485471770 18321352 173772845 105891580 469680299 976881845 220793888 682184639 523025716 833621569 199868938 692572819 334559387 767521435 398156560 755541619 308846987 551648013 215463663 948800245 638876545 467467062 777026402 787730883 374721915 149430710 92486877 578889900 479489627 691784011 438914251 109332518 751995599 81938850 621175056 550426752 441955515 191173831 585628221 310344462 464764303 414564023 535489868 321390075 595262006 255080209 522484451 713963730 102489989 958547332 503123681 378209293 368583747 996294510 179046639 953787610 941074171 422774021 421280643 251643225 10254202 171603189 991552780 946830937 121078338 756859491 828319860 558227885 562366273 318416206 313539025 310960780 2085472 977901283 175067345 499510817 306405738 183869859 818140428 318318592 427771966 754617827 692959517 309685501 572245390 472551439 373842222 846407531 753795653 40340585 69553407 178540490 68786464 634249156 885582483 638508620 11754893 375926211 981633 704349156 99703220 542720308 641911425 682527576 208199250 444695219 120752954 913444388 625085622 187815988 413928203 332204647 562335190 620534275 688639757 603282062 406457282 542094384 308021237 797948176 16556484 227378130 814121219 637831905 731547647 346891568 167657861 703787950 282178828 256576731 300361447 108680272 293379598 464120535 546230482 674787695 254567265 317712211 805067744 493917805 610547450 540695112 720114522 601060205 602127933 511491352 670493486 428433637 111099147 460101487 123683280 60177966 789745517 905316102 735702262 595709324 98780810 760530756 123057076 305664789 887394549 415465889 543298581 546682425 702375715 864094616 50818772 50018564 183346875 311995670 490285551 72782788 160025416 225705850 875076968 659875929 741960193 893230431 666928825 268128362 726834615 598284470 191015582 45974864 745938789 571346905 699766220 198075389 909298087 915964559 755340363 957528929 484790815 876900424 188536254 69013259 336855289 668425929 9377862 852287056 296582312 734122521 561157864 390069832 844508668 178474958 450365765 917550100 689446755 414057503 878125946 167794671 809151400 421609158 266959892 792806140 199715993 396463468 941760342 899948212 326726874 360948216 170567833 996638922 772790422 587570294 153287815 273405719 274688860 109536632 493401659 166872542 966262874 345041852 126271184 918299988 909772871 83246538 643796674 350275976 170914679 547927100 154083594 252599455 252529844 897880108 134589471 176586448 347200144 670670846 203840150 874995445 217690336 820467351 498114224 616411164 201166044 930521601 545412001 788184258 589080448 94561006 585955206 714518597 4861951 995955907 221538306 682330089 386223615 432776562 481892338 696564390 508059708 125781788 978063228 936191206 894972091 452640781 991416853 954403708 157816191 236415720 924676585 555551308 376211012 818983861 102779302 547488519 610081493 371840026 794080956 492257894 190334185 815428972 453385587 325455058 145948558 127505347 306942051 624408601 131574158 211264246 601397821 842669605 693530365 292892880 728594891 494191856 438265274 511956431 211882756 926111441 382781329 535092685 902133771 340978892 980696476 949824525 374374625 21509257 600070903 456413551 13862987 818240366 677203595 473176339 678822820 187194442 490271874 592669267 899576836 24526241 175661225 148826970 372466773 497557756 365748316 308764668 414719870 383123201 811558005 605824131 600315803 30312952 371686330 345404450 81326250 529719798 154510786 522638924 476292694 985521624 335661253 88402532 389094100 923723004 204840036 668155629 23029509 209060820 112941495 304701413 819028551 881468778 340497758 358976498 302010428 992623931 332995239 878325546 414368959 442863787 637277710 48903591 520434623 724123614 835541553 890268949 902618116 853208572 498424494 907280359 358244414 128879661 67590664 613340982 161602259 367728175 798964573 86508750 409208766 879995102 415130991 916218620 381879369 627779541 725678250 584910668 276430138 707299935 281573054 706062730 134526770 779834497 485571450 838305228 580008150 894646354 59313120 169242073 61976906 523973858 39739424 590708382 250407565 51237639 297817506 192756089 78839382 83740064 25376356 653385995 93268864 752459822 957066861 927411262 294844811 913100429 939054563 11842806 722740938 969588319 446049725 487822493 802004999 946962418 256235168 904838230 865498862 99595918 868675191 529502648 957894364 516121198 45634386 105586903 510587024 108770989 814027169 367540073 953122691 40318944 776032204 46737492 866980878 103487239 419523681 973431689 970631719 619516971 617311304 478445653 897671556 416393905 932838438 757529452 539788730 721235938 64214201 859336376 8740910 495468969 890709449 918135669 700693963 247823200 805397146 236242924 779006921 426774167 352491756 329633824 738471937 557513692 776169818 371867501 218389580 597960664 642477681 221556344 590696972 39265571 27021969 653596233 486309426 89075671 122603520 478628637 618517302 247183556 333940877 54424603 45869861 64091072 498507994 473726323 558082828 762113719 161361755 713200782 455425795 336423409 244247835 106179316 554726580 40888188 120058426 298079 712122153 450365422 525114282 87367372 938224382 376305065 434891012 772712217 514281774 285322477 700621532 769843475 620524338 84087587 428050276 696095646 86024454 652251723 460579825 926755480 609046097 530984147 805960059 712350319 806249563 541516998 530625846 364381259 581372775 546032952 865070553 955997872 73684272 803024582 561497166 209046948 748716285 612349891 63992227 232871460 652111521 507223970 614055017 357725236 732930528 427948322 647181565 490820556 916198100 467168637 45514853 898396057 808590964 406031574 748777644 24421714 688005434 752105465 483890587 822930045 856090289 903274453 923407573 57831845 959826452 409565864 491937969 373723589 680833241 994525051 474497769 171772334 137840951 16089348 987423989 473496848 508704607 530872519 791647263 624404904 516306003 340638831 729670135 134129207 275232459 413077588 909682311 36871508 333479764 331361155 18513713 187234406 659993805 511676667 885343006 333657812 499109908 117055013 159406025 140912466 29929222 541484801 991709698 625016747 107772224 554032645 42879181 60987619 1630958 4257736 355255355 780504472 344598899 992711845 704663427 586814780 636120339 251718034 776935521 780163010 223394764 3087062 913498898 636528000 720243044 555570399 312448784 166301580 833628019 660046179 82714706 743746650 975565393 528412319 231117354 543570778 678384986 763940802 200130007 920617518 94939771 674052186 158330119 280891979 392308355 269831299 843158104 858374090 271694632 238634815 963999060 274166682 421585744 167905056 200141448 758602591 723804499 910121004 224347605 134063755 237668084 228534264 661181315 12712839 7659664 240688863 981591562 618005586 992966085 301952489 680904116 117057742 631553676 226080713 153602794 954938181 870777090 58791747 300894459 715774720 946277877 484094425 388115127 666580471 483568256 504627883 264750842 316020437 131212998 851552752 668342001 989941394 467483829 117490405 720631835 374521565 815107404 435522142 8103698 124787550 992973237 401276378 688375520 348544403 702319757 970964417 59575059 343861609 448614925 150326135 762634552 746433426 346224978 474438354 678140014 794469582 148876629 882944245 453075115 916761332 983945886 886291285 794094722 849609680 224367268 493567890 922569416 500387081 252693677 124646328 813828722 432216500 26940410 174491555 227741753 844192436 370905161 412587055 822239728 707842755 325384690 200083287 676050764 105243249 586845862 589462636 729477494 637696023 944698755 49585753 527599923 253815995 916804117 308630832 145241809 438309601 571181902 523899259 548542446 303796053 603983208 815309470 312006718 938889379 931328453 847636166 942387563 275638179 412214903 30037417 866561907 564398650 108819248 846453042 248387976 258973445 806401613 948770871 818987534 504122329 546677047 335170042 992249866 691259957 954210686 304539614 771598551 860833947 489715185 416111915 679184580 248014930 832267176 468372511 273909115 945119092 929852560 831468713 289230892 783953973 952816851 953642774 843861901 209538761 147978042 209486826 55469220 597431682 405653130 131521730 402000872 875666861 69094424 696626142 527452675 649411325 962725011 663912094 331309167 936314635 359987426 948251902 627327399 921067647 892934323 681504076 752332271 122813204 859267732 776874914 643365143 390745443 682275632 472035569 713011091 212050659 116810699 343818953 890779176 952048476 837148452 5923690 959126945 233544844 74623786 940034213 457139743 854237571 235025077 786544478 766918900 764326288 507076932 38869962 350113994 8780049 277056505 461553616 223375701 589209892 802650525 603097242 274867801 975269634 484264620 977195087 962736368 594330806 572851531 784086933 414509787 125536384 957077976 625262232 462459959 345656790 865974585 302129788 948901606 917579207 794542266 233176655 39309843 558839780 47288588 607745125 360570244 125236461 101910436 545781939 928836594 16260427 319479776 825551227 634713843 699943560 50107004 259755120 550534560 757922771 936005483 397338547 786153467 584402979 548265423 941322632 780707039 508771145 200457803 170505868 355384067 24023276 759160347 131836180 215177770 588174247 14366435 455985873 65993961 317329781 14818389 104905336 881966026 44777675 190290278 958051764 617071673 218471150 399799550 615377555 573704420 188278977 794314382 738999245 649238115 539970541 186178512 941066203 44121883 697292467 622371799 990383299 760305653 753563494 463983043 380148612 737726422 818791067 81626633 825766557 440124100 843824624 567444775 198015092 271988009 291593921 390165266 253264190 319518398 592800743 25157835 497246311 314780206 866117539 910046345 385461062 244019057 552610071 926237014 282030882 954557856 533530545 367613291 908139191 695287344 375976929 456685056 937566640 529712310 494687919 161411573 889569423 806562737 830354166 33076511 532827526 453053635 993400132 572659990 793291334 715301250 621795647 659406621 78839534 79888967 189977789 770695525 657821265 123015999 248934574 387585856 965343922 662761042 694030108 661196758 194366401 806481711 672128709 609422794 973240718 616119654 345962666 237656373 589772341 564659044 309344388 640817 981543826 368414769 63535760 264763051 903561357 164125459 197698340 375730656 353867338 559336616 428306700 70374119 40286791 735339836 626105013 520451371 863910224 939465124 776335455 925374235 428775354 447788126 589257847 556550041 772931451 283933315 845276820 438752177 624355225 9877875 350535222 225993047 641527147 489631992 676401523 904851226 388960278 618325221 31502548 984146356 333756478 929620508 865913277 424123380 422420221 954221135 564898078 431638832 162323104 959000319 940449548 887537892 123043716 870064041 995004151 545624201 776481138 611163820 354691292 57164117 343172946 869373833 757797667 822354631 61695093 896751644 994944870 91742356 202258659 722385130 565434849 415555400 98132058 896575631 376568952 394054272 338705252 663629242 420267478 311379601 207439482 796947949 25621511 621410472 848629519 728203708 775455248 977127431 276444048 361204014 996699732 18883564 234154726 730427780 921034728 289123968 691928635 934344432 269967905 404628812 735168588 265952281 987940617 225359574 836388053 893169507 356165932 739013809 501058201 721582264 702623420 196621735 113815021 291209129 381353854 661048315 970480640 361350687 941484724 41963725 189399412 257017083 522894588 435538731 241808410 596925641 442046546 562051315 173237365 391505137 557790063 2622428 833033245 641735919 754932045 301504754 235311295 10249276 114781151 672712345 468310730 778061523 115080918 382449524 736522531 219577597 471258620 482402706 940131590 191630266 619764793 595523735 552364021 267367842 886148543 134808491 733204665 458703588 870895671 737594527 772897325 48910610 251934962 63457502 931145661 260443713 610807889 973469622 809987684 681416466 754445961 664231118 425665159 446265361 771609506 385903966 875076300 627450720 192499051 518586019 579940900 887295931 473909670 408151162 650279681 445736634 605940302 401163582 513770102 184611109 668198105 716457042 393658153 640363724 240630441 95782322 471742138 370676705 642055790 673276481 944385558 536709258 932375604 286139312 839590447 509167271 730914187 38021905 995937122 2439965 386985367 590270068 489222750 804146392 275954903 326880006 342018181 787187545 475455217 76586487 365094508 693306599 496423121 83315927 474001083 793588408 827087932 811318924 254449120 82233884 420556735 782436843 956234185 726124396 779017498 477128390 305855242 647922546 704596880 623119998 718547567 753898261 492100257 724560168 847381746 293276476 658052598 123713248 609610032 500908404 545344893 145232767 829839053 430089984 68386274 944361663 360780558 920666301 673969361 179326858 734560199 971566523 299725481 228147926 302853475 251559289 816460685 5426758 376517705 919743133 937050871 670008953 137574093 332037298 199317964 61096073 678046160 838179237 38143808 185881398 384742946 2929377 531443394 609080233 258098260 624992187 387380533 318337826 362581862 377112390 307847989 557672159 505620026 930557037 596849321 435471386 204745267 391323322 309129333 51180184 550234832 878379985 161261327 35336603 945444384 138478291 874572524 674359527 508445671 924031687 222121907 263527812 976586407 591586824 94293571 161262004 401171373 779805750 324832736 884487724 331788460 595954250 108264717 518550308 584640632 310705572 73493574 785548112 84905073 105090733 388349382 416272689 248547700 561184208 867670591 423621810 314481768 772739005 469007863 763013402 437313000 786260914 930989732 229617059 72471634 948751188 506519753 990705413 120758946 781126849 26587924 155964034 346512243 766141206 531823455 729429580 618707003 956105715 276406921 182903918 417788682 19201641 356606408 38917464 925215780 881456425 471982350 709989742 78034962 522440226 644441217 104307382 548691886 870102926 590533566 455725118 911760262 837206441 40964975 906485306 765046186 795354695 368280287 193640967 728574297 225584855 853845434 811559637 895620309 573939628 780159291 150229102 416941922 342355680 825306850 500719062 367290919 237432270 186224887 242394718 72317840 120684205 456435303 455308722 710210627 587802671 378610049 247935932 87643877 886794033 553079980 515259354 985065516 351682042 872270865 870845615 885673515 865800223 469938726 344427554 902595807 335910854 849444566 182134150 695235884 310041315 213427855 392320327 190649329 295712535 497569061 164652146 320566907 3836037 279379405 145616623 257460815 817740775 186683426 767876668 553233386 634126029 685228710 815062355 425506913 532059368 824198780 487219662 137229856 549931878 876860907 240299506 330146365 880997612 516750578 857564517 86909434 951518122 736859031 92922477 248068990 973181177 834662005 711782991 497739567 956926917 804308984 243970278 155707240 978399129 630546234 683341009 940088725 611608177 533734974 68890265 681791205 794649997 156677791 629229201 129115804 397854500 275933903 660970745 662174877 123525951 753477875 729870958 73586351 837964454 271008528 616680434 423000902 495127244 617810850 687503612 839392708 448024971 70361240 968075708 867515113 711324502 667155486 380918504 133144039 710933153 395765486 100217228 595219349 874199952 748173207 974588252 838489594 907091774 135204882 212938461 105091477 258966308 223787826 396836448 896544270 504457067 182027394 298490563 112692226 886469859 840286300 526569603 201247663 329478275 678080777 112382472 214967215 91263315 136360778 932593326 519447246 911754544 216995134 282583334 173966497 65718098 672274222 280804935 88660456 795277211 751683276 174932940 906231851 485768087 597508775 555443952 133955090 50588558 916227132 663421885 367315849 285775777 308830392 506565376 9548407 973084213 30096423 109650428 238419653 675738234 336281776 451254146 93356797 294905224 353531054 743414389 313080688 811580154 739733678 739106884 111376157 762065138 343043460 86339416 476753520 182029067 957275120 677731533 318186281 25640149 357836433 622811446 479145834 189010936 226847607 730684229 140115325 570194980 486678198 260853950 628114084 177929434 176408507 743296608 817334774 139830968 793075579 543419409 854780709 357361130 863468179 606419231 682957041 637553959 581428015 566731966 985097524 526403251 852585407 813011528 851164122 423019791 318606698 977961599 627175747 577855080 281635592 183464223 886900473 756633187 275116942 369148561 684491650 872657570 145163943 10116803 938230225 708671889 694657871 316972318 408112160 136743987 849167045 879060170 7591031 216811088 289702883 638770377 398131933 59591916 733713265 973635486 408660696 769627689 360500558 187576749 442721365 325443866 400585011 364741436 446994762 982360702 4674269 91965856 240183557 470280323 229036482 884826096 193931494 567445558 926871994 224806484 535313245 549984410 373156340 461946923 422085732 595496268 61410866 667931825 343216417 788573782 47928313 563752406 256635362 618377786 162184746 408532366 712710038 883510665 288805028 318200773 787513622 95333130 341214355 230922391 656473518 982397248 136348150 704679684 598723525 191743522 622578112 533249215 217761574 489920541 690885653 583377452 113883207 291554486 828967117 753514270 501998336 31900037 537863565 386547617 313906358 73980540 521417852 932399818 862440316 880973636 582194135 693734643 183781285 241231760 905662458 617301436 153459823 18603548 350930689 729229986 881186560 68873187 744067644 689076156 5025632 960890398 532078442 891273555 665221295 511716160 855860819 190070209 550517074 636777527 393422785 345931740 953905444 953221694 209747786 750217551 888531359 704274541 194962604 72990606 92246354 697074956 564970186 37474171 365010111 735719014 469615256 702846152 134690533 603391632 874273659 793889909 577651551 718607713 288875224 609063570 567551169 130422021 371593327 669185881 306583819 914093315 372837648 205199901 829206626 233344038 916347987 732714132 978060760 192469446 19328450 24718006 446349134 369499488 863105727 588616095 443576918 944098456 447523388 638886124 235021643 304512158 758278645 873677481 938269747 750720770 54869542 257161812 20996496 901123473 426324555 34326502 854953498 876385401 743463750 125843204 418585761 520394880 743763553 215940256 39031660 500958429 629561822 64580153 410884250 191149375 805662324 949811533 541221464 861118153 669882216 967769180 85436083 571575744 634709625 886683332 804260653 387771512 734124728 393428429 352585947 612112222 69738701 418796936 995517714 315240964 212907309 294720932 667439485 380364373 386476732 462216469 610246797 167344953 520170167 583788862 427402379 795083537 764521975 566345642 281827634 16908834 472408105 756927434 469569769 537668025 137504180 200968093 991417295 833620298 158465634 696424282 794231319 535935612 817630097 926857439 181625922 823595849 107062514 210859346 782535489 719159585 8112435 62795647 109700207 184098486 297477511 39779866 387753085 601556965 919881184 145057137 905724691 132957345 904212364 652780974 422799610 525402588 84626336 350980658 478269335 896398757 683261330 287725233 364166400 938035368 519001414 485795842 627652680 196578940 439229866 672210433 485460796 444545428 196535868 880617399 502088969 416271320 803801450 391161928 479443115 293871958 454876164 677852061 183799353 258850512 539702661 186530911 195653862 853529460 50424346 3610397 546357645 609740726 659953156 18989843 69751173 623808201 217420661 133146645 863974006 594084200 9154857 920745306 282637040 305332463 509535294 558735600 5964795 575157575 322042245 179351177 551459096 869828970 104728552 727561817 823680085 750588393 727892088 703025727 31242923 908454571 955595822 372945882 647380151 241826633 760949283 484721212 869349908 590078300 956026123 277327950 24765215 602979200 752781385 48196227 748944555 608053538 331820907 399533027 235340845 384577263 808026020 595838018 411726478 31413247 467779893 130716757 339697322 414904613 40433009 471886348 569074731 929698578 359252846 905576399 532702159 256095329 85952512 794200259 619717300 975743025 196765465 172425107 640023702 757849937 559341744 833265079 106844213 831800902 107245480 229736950 207769140 438910665 314311984 893895234 127700359 891839192 409115791 356189835 54206578 31560678 84787859 27494224 802036821 862573599 143994061 59876468 184199018 232168463 277061398 846291061 871556687 978539987 341286134 618164046 283540205 937782089 671957711 348169915 461573063 37294538 16292922 584235182 658760468 808233488 659855496 610308106 854231968 567595937 518620866 392558535 210577331 847279041 161472579 131695484 512299512 31113581 175559242 394253685 412462410 746559339 568455683 199137881 216105014 153982393 263834393 990612180 462627201 105879564 491390704 579434442 686945085 304148792 814065590 474793783 497190578 272413627 197193164 147458363 482731229 905559209 175750900 339939600 369157761 83287878 473955194 22549096 295472469 982628368 681504682 974254496 303811671 90995049 222564168 688233078 109376145 206621522 68681067 552514888 446740154 121236592 489601360 596181279 549657688 329349767 873476994 34922768 224229238 69077706 72037404 463196387 881436325 78073095 927179789 957292122 834761334 461570650 996990170 501379569 687165961 2956528 550236885 252719697 514159618 834842181 634069026 174835363 479617877 354963004 349432948 76205195 315748402 456246148 37222717 112366966 776329305 74778195 795040891 512311805 706294626 518620653 508949259 22717593 791602211 815889262 656933486 66517808 323387457 944340402 302171107 298600381 52031370 60135394 515989921 448937971 841325037 96116371 51698306 543686073 724972675 593774327 619935542 42057825 630243057 622004468 231853287 791202313 610981383 183710055 496535470 166315075 331584997 377115377 480766404 335044157 184617448 788299578 170712498 904821335 389494827 177707651 943475022 992574794 428174526 412549558 131388234 693415558 39480134 409263886 352485947 260209690 778109138 810679230 690250789 683467198 25518474 553954253 465815955 339680135 459851866 59037667 203794670 460933311 583489619 306258560 860489033 377734582 49435944 755400273 488580374 624864962 676170137 848801105 192800615 429161695 222141710 921588818 75218756 953862427 669307843 398548267 433706468 439578312 914455791 453672353 832673008 497503189 229106562 334541474 599777212 679639066 975534419 297620402 602804313 951076076 925717663 721634953 373060280 441949671 738121139 77756072 140417086 557245509 552533940 230361024 299225943 21924898 337608232 751286382 21999923 307458133 945872805 670628073 248127200 52715070 879451736 984096876 956778773 883456363 931525480 33667381 525967281 534604646 738222950 726030455 898252281 454703787 578345878 466758951 315551457 444779736 364711385 673751815 544468098 517237786 590451821 243290279 964526878 447558670 771865968 30452486 582674651 376012354 671877107 613389 975343199 737257318 937235089 617528360 535478839 233111935 70671613 73692762 225889261 231007413 751161202 53532485 24112390 959154230 195588827 244463926 327553629 259616383 894158312 359266393 402583542 787141405 345319171 333802061 190682764 9936801 75234817 702338747 471130186 478764323 879887028 946545172 518559466 729594693 892706361 194015207 296536754 448612627 38909744 732546629 913684222 256709654 68834449 628025381 95375035 62095186 308782286 141138986 83161692 43345156 686423843 646489978 4655230 281152518 178333849 173966197 881335417 775035719 544539236 255387256 350163448 564597529 606337125 695709258 989045035 180520082 115340147 927505550 354808027 971715607 610146893 215887609 424245401 591942712 387105957 118871071 932729372 14589175 541938356 383949985 65614725 945744031 229744482 315094090 570352186 2725425 943168125 547184840 827274905 540855362 280937083 216355489 619402358 169517937 431993089 371024950 367381030 969391231 560880936 330556655 901105506 722048999 727155942 166627814 17668009 392390402 285147697 712346223 603470656 30639634 169643054 858120231 79343505 208906257 449318175 899250169 519543690 379086 286252165 127093199 693392103 44375697 150172139 179921930 295701489 264732223 727867624 748791991 587415596 792865453 391157726 630261877 282993945 921427356 686530727 912648369 131949353 764818411 106033871 698305341 738352066 606646539 939817755 982762204 868751868 306622582 21172599 686458975 570240462 277016564 343923663 304226213 225180769 629435800 820510223 513640184 370269591 442272147 504332029 822096082 305198587 708134382 454687112 284697996 871153222 107971688 982244857 546036187 777625011 625733048 953230638 78770147 123233855 626321694 659289673 727425774 933310370 119052865 123612547 463201541 99365629 948678961 481717624 976464570 437632440 499150254 590935522 202799591 246680406 251173739 882266542 416480613 653964561 925086267 980874723 515620031 73015979 781728894 805091266 647635485 661976695 327875864 350707029 786535931 691822067 807112591 37203812 180616046 76228962 117087138 902746195 915278563 699728232 730527598 141514817 232565868 193506672 226322231 52827461 844999941 683367855 775670798 834456931 880716251 425542144 739005343 202665436 780409761 639028032 332901875 580741499 200542453 374748070 141265388 113738894 202219873 610257688 967401012 635727977 902465613 220523651 91120757 140693619 419885736 167840329 252817229 137565302 28806709 707779401 180634584 787483086 211286833 634592982 681043162 22878684 436560305 364325161 340783693 665998055 828139705 622397962 510922380 693618719 487676505 255989714 846538224 504366755 474689407 128946266 421371097 862099575 18256370 54988024 224934818 438368002 672306638 597265860 488434509 931509222 898973214 222604844 641577046 896507128 482748018 199199030 671092122 559973662 608208382 152845824 244198060 17372750 286169674 227671785 351308281 582292551 399472898 460322530 650630630 284575625 645240478 683819195 105173335 803524165 862233635 769286826 29131939 412243635 390897268 374055799 913701157 368759800 993044942 199346124 195508648 636788094 566448631 280471667 976593776 984821462 541150322 211259108 670868915 763598153 176175764 375910120 274769468 349374921 850047913 364497902 540554766 323676162 699918650 250426569 715807775 146187766 309424682 104356956 729148292 651217277 321629915 891300580 754115076 495735299 792729495 647899791 40470373 404847212 174027099 192450600 405507726 866974190 311758174 491170989 786850611 690304537 69021492 914276278 832503100 376041434 876269105 898710877 405810241 844856078 672042065 190108941 592912069 784171806 539150146 541124571 875276530 918548582 646973791 493245474 376065378 882633092 822157507 547994273 139583188 87876095 695341285 341759198 627880614 695753022 817599495 926436810 388678277 98936982 310337525 235417226 851435047 519007734 655295543 503926849 307564871 819337161 444192627 880208892 206609833 438284282 853217566 848425482 664145890 496294120 868128169 103751663 688455162 633946290 165255616 912581436 861633327 988715880 280338083 354459310 442353491 125210737 112629782 829182530 398465379 688680067 610277720 650455167 973228325 68203162 256489018 3134000 265336022 168476104 207253906 95359741 956880154 746274240 922151293 847496642 616014508 534644138 103939172 958695689 457970803 924715539 236355026 358053089 573850903 853375148 474411530 72135007 454503132 36240098 954533448 159759486 390864752 229550828 493895743 780166998 127837613 109596498 371326361 818515603 70876840 232797463 186699816 677229787 172569647 146540135 153235870 986348778 633970516 609256470 417196082 492864010 663995537 778576624 113047606 173235729 50927396 696737415 752322734 651257800 552783009 526875958 228995841 749249131 557477360 127192819 142068717 597993608 269620698 237624542 624593340 951393417 785907862 305563721 908999605 11210153 772987915 548988652 591873048 983296169 650140891 422590009 582755334 695000608 166698869 744227970 484165344 682452929 878541485 415128787 681842478 911382238 113592681 329676675 193313633 197519357 643345195 27477717 526431582 581022966 343431236 405569291 93958131 295842455 310533209 82544479 446758516 799193183 605163078 664059380 572365682 33776446 622914826 82330833 453265659 136323973 779659312 417417288 266333101 189165362 782948772 670709933 2364094 523309548 697023251 58697237 456225930 952188391 519624971 144991473 930872252 563499592 288193964 836152388 357890028 693054448 520782229 654013283 224635924 304263846 758172834 821467299 894799577 464532329 261426545 863391043 853482999 297040475 325244107 345298904 189437347 652827999 855701643 670255227 469416300 72915032 402483851 381240909 277883060 470838756 31284707 434063542 475174317 843595210 907887982 693958571 279541851 699386188 774364590 826877915 698184814 657069640 8418511 706449354 483607408 546604646 45796023 284090954 269030353 660674350 192545185 575560891 407509018 232965496 392400410 190246430 970548669 79744460 979161461 295736855 892776076 118969883 28252040 931896845 785535823 512348637 962774276 720827301 423283265 664184603 177754233 881132326 901685958 494906183 879181562 778753718 74493473 65427641 712242059 856534421 152757221 7052750 365984689 544101845 595707551 896503911 945068616 438908348 458248509 264683470 579179142 978541491 900847610 966806679 128814959 274362720 98677735 773340516 340991241 985549896 929623616 903670903 394946331 296866605 58531612 990423469 382413498 847767155 786674611 526762633 882829617 513697201 982179896 973614876 539101367 624255168 150207306 830464516 628592959 475742727 42764060 764906075 746181177 401003056 654689254 933891476 239608516 774021788 505939599 620668407 948359324 835652767 87756850 791420600 511769735 516520887 636161291 749827220 788308115 977365075 974706030 225836024 237512365 646832295 319409073 580756576 2966342 495472184 777451025 643775156 984930862 608366401 19487599 461939417 630726831 969245070 516100796 687182941 959748950 947536569 383812976 989641705 75205851 52492713 948705345 510827388 227262720 948636820 211557396 250590101 723545537 421008415 201728915 616763873 175932232 229519804 206993804 773774644 171545907 450609268 139927281 688506083 345459711 521027063 61547228 173004063 602944180 783920762 559519684 314388697 932668566 573709660 552831608 852075221 439457112 862287765 61245673 553737386 383096 380682538 750983865 413824703 702304447 626372701 192077767 715597427 942496621 919075134 122374747 138933659 862121082 814617983 319389229 997721827 490511377 748344772 733168165 116241473 410693789 721237933 42296372 887780337 679442265 275548034 870649195 7258769 486889420 861035605 682369026 918060951 374722028 989925147 495191109 213816975 671022650 608130594 275633480 691175409 798091425 944531123 936855687 667761036 592226779 102889859 607998392 622858593 37374408 58652366 291859951 403499448 759179581 91926187 478793590 485570186 942857159 443524323 173916219 804366046 217196723 134260393 910916728 169235342 358429963 328749533 889985852 961229501 437528966 39348076 875808522 56711949 114709058 710768930 971614101 265207355 892251588 788410883 709333746 139005478 57671643 502919804 574625495 195095660 924554431 284172958 312253150 92099579 831280761 251661545 744051006 733005079 314284360 743700003 874249073 254753665 788152124 853631566 85339656 980018565 895174024 29506257 385365294 786139677 770241137 78940716 932127821 643112304 858054785 789490256 472688431 200875609 75767398 33128257 309822230 443735218 117604620 578463123 783111991 566360772 91807325 118780771 983308106 454101373 879579896 997569339 721574397 543024421 737241526 432560811 200420503 218963493 688784762 576176285 479751361 857945232 385270090 326033985 903768018 879057299 953173217 145431452 745823346 426004669 68946239 591774321 68111747 303324617 313376155 704127362 136232890 171737025 541690761 253580773 280572329 284388770 504861844 863359868 914496654 273069116 418817941 934801556 512269079 447041900 600372373 885788327 18706201 780087685 500732529 18568164 523383179 520591414 418603184 243851058 474913269 529699843 226326355 289807798 528564893 398352577 24864919 466927840 310290944 615838782 147832393 509779864 198616395 292138103 867149383 151637820 925961325 143278786 329541026 926571576 977927622 749829746 728374737 520851674 972872134 438183902 296517388 976823429 41737844 341664462 457785260 375439614 513787658 47133072 34518203 507848023 38316562 580187070 197269500 673989098 674678006 425114250 407953803 751196208 744688315 554511018 643339268 227207644 493774801 978480840 589765567 550419092 688500745 993804069 57053828 708187089 297420344 8861302 306125334 558434357 814501409 185916721 975527550 651130187 821404117 228532306 645659465 806705725 135365796 60549589 531377784 986263800 260404226 440524005 256213027 161066728 553085431 386040589 670441358 800234832 140642956 902419426 579879757 360471670 487999127 716840106 119096047 897412615 729068910 200721100 398688554 531615406 66538119 912715303 747924985 175890317 831667139 240748904 645847091 742971033 295057907 771743216 98319923 495366208 743633779 290614545 490106724 923733352 21449820 333092413 358271273 313285142 893381290 959044338 41226084 67916016 962143158 572508308 207490111 43108394 273595626 560777701 407898792 961507384 703725457 928462245 222257550 189228443 260641288 697435120 324989181 219291300 806002866 83227051 399647703 734836450 232948466 464205719 700685707 571981660 971507085 38432141 747440460 443100702 656326736 925505490 98900516 33661596 885695101 517605066 867220422 445508879 84595041 675212596 473995578 357893278 413159875 892276556 450554957 994724745 34108159 994694845 357660754 198280447 990859193 108715452 296360915 669970276 195868621 297109930 155933305 643804852 823369120 498436566 453075426 33231494 271484378 829930074 664758852 600884291 288143927 724471201 159443262 832476715 660503804 954963289 764602881 123656369 827577694 331032061 115339162 323684846 725160965 473038223 885526867 272302179 588619040 722661777 259990977 52561614 240803457 536775701 284185668 743979843 288951992 821359479 380146162 193744614 976151485 831886519 668481384 518028315 605918189 661155312 323603380 244703081 777718370 307149701 704185209 26365148 246429936 980100115 871762917 996039043 67925949 455490435 182516901 562880594 728180977 773039728 76347044 264246405 219059621 416622207 436183883 789877395 445553069 101885497 874016839 571981786 205978524 533912636 821228669 458949327 709366474 344315310 537471995 574851186 152758065 590483389 558475532 759065328 184471340 644118697 226441254 130336007 694713734 123699667 932154159 837400151 73027945 510891321 510476210 127027741 913080313 510016575 585247142 251346546 860396191 982220455 730576332 421224004 621296601 442771886 569137026 74248065 261648686 159939151 696208472 394556880 335642390 668060962 851708098 616450827 874804753 946622853 89906112 47617099 22139048 962077203 752358083 309982943 817287031 679918423 19978489 894836660 377821370 632613678 460654313 77360205 358623103 510628339 747259354 453181990 718771206 802501238 333413286 926033176 740851371 300152429 343662034 698572072 132235953 297267534 88377909 896736033 107200259 61660107 178462791 562323253 777650010 38669250 223790868 904931094 74864877 823180858 149704850 856442165 241473559 526641096 644564594 846863175 140689709 611442133 184707186 718126987 532048193 684131102 607502379 241809400 869578013 539154243 192340837 284430555 569630985 153162234 402234916 469542193 275829643 404663520 230945473 68172656 891778131 202112125 747797324 886134069 980405031 42837133 759105560 269485758 666799528 99463451 946239656 75388014 273760396 102879486 723576367 48953575 577365882 200099760 972262280 722460811 500034163 500663019 516074015 838711474 775837882 168006586 727721137 819200119 359224278 912951622 216279347 181347869 424622932 57934952 151787233 631292158 551599049 193422328 991362932 895201486 786982302 64890759 587983059 326574568 374140200 963021982 799299537 272412818 842366772 222873919 363489900 260181794 726768736 938076723 986025828 614206095 872728338 302811660 939415566 891816219 10243503 376136483 757230386 608470108 558849033 762383465 995903285 169588499 654946894 368477581 160178743 737424515 179234608 356806204 682531807 531095217 887117975 633376066 117423751 374152987 146436631 16554284 470670557 593162785 82731600 571224363 820767056 151437778 351142970 235462521 673344290 372248594 758834466 601112916 984585969 434614213 497488558 434997022 52883784 807382015 210546603 837809111 327625280 352159367 897894772 335090643 349035964 428187968 905247236 450927990 430298255 312159128 76646014 744266006 679399334 706365769 879239348 844567740 579799368 835700024 63170050 47518969 113055566 689840557 596335469 534808689 780557916 374135672 568260436 538914994 404795542 337042533 281234269 112869713 421329127 71538877 964560481 764204466 188813135 932360418 558343835 738054112 156272408 619024073 994388586 222278601 115706877 332462561 852731186 836141291 288032687 441845515 582403650 925192572 579568498 781912108 126604576 859716624 493672456 101247506 597707037 664179015 480134070 331153825 135006043 585597925 414950249 897217555 931077751 897454089 170852233 797680408 721466951 798120481 696145648 812595413 173331082 200300327 993869315 929839641 842095954 705655127 915487495 320104106 14738997 625080834 508679206 667017016 617178166 327889197 800522234 655815087 211141662 237924122 664878661 787727240 964379864 496861370 248499682 223574799 91938151 957446163 395038557 267166450 708781084 278489895 273469537 363877456 67770949 336765324 784744479 354074060 751457841 289289856 540818193 987600962 737285649 813318624 544337521 382417842 250735417 492541872 343912739 827862874 144877822 808281705 437721278 542364741 780277328 913670581 439900382 575101348 511650410 274003632 328614197 944597370 299128482 441335055 766024230 670717693 102527039 981177721 459043684 876153016 984116081 798680889 923705602 722298773 427440314 198235512 104671785 114179873 880587760 126130338 57248548 854174303 887035289 369504309 622718831 356638535 895632965 5158314 972072302 406324911 581129324 274916239 971179870 469303321 596196418 915706654 95563985 590073480 861215157 645530081 465565531 593061828 41106201 692910779 44999368 819852764 643565099 173357159 352113386 753238774 805690131 614121617 26988892 373500851 539362894 130677441 233606469 395592101 529929250 708056789 638420133 190553794 898059006 837712482 822131070 450234922 249909537 72978491 634923758 500637590 408717747 988717111 594199910 686608070 110845235 879297896 91022192 776016012 556481484 302673935 164073925 296061662 976312288 223309423 961751021 561318207 660143548 897719862 321678822 210252604 866729034 435983690 342164604 154344564 321956394 862193219 199411810 385712025 269253716 165921757 642992351 243176187 386040071 526060003 36781534 884007639 365758296 855718548 281287123 192061119 263164255 409296746 342870791 810170987 834174939 388974107 991379004 495453302 550236813 12692552 351172271 616117315 966166178 749465185 277947137 175224700 287933460 979919486 718919415 492694418 166436607 930501471 869627075 796532620 597939765 82901393 925777400 402263428 63348038 381799461 137335395 655653281 259057927 435738283 994836538 433120267 812815677 554899040 574406832 571304582 859787514 432426635 17870164 340718015 959469218 792892265 653275309 416866944 50460930 264999271 638370368 150299830 682550742 403345033 866643778 708317797 639907421 623733862 602516255 915080808 77200681 8163681 554162609 332365708 92191370 18539078 945666454 427082721 996421552 864367742 594821865 213884633 848642643 90124585 801314186 848940350 3163708 36769567 873957047 489464240 599639310 774377125 493088167 320748820 193495504 671479800 209141358 430958102 128981743 527752926 229937083 605156805 14854963 225416066 46121349 586941188 203703395 259283242 844751349 652108948 653756215 604331652 756263979 440314510 693435947 137755147 616392074 945773423 686036955 512539943 915708394 944783356 461938603 881230434 887805926 8476110 742043107 164141784 164704306 916227104 629996508 491200156 497850041 383704220 30056431 355011475 978689628 902367525 146659196 851791829 516145698 454651245 729750078 582667924 100594342 180903062 167269276 151753200 292762835 996512951 847191907 680016396 996553818 159597716 654801248 364647141 9465058 666571846 382014193 809835513 69572789 398208265 839447663 453673549 474008772 204330318 636894817 793814788 267061263 791183599 835446446 664663911 1007743 695368966 468265827 628878048 172052850 542814157 375109148 319014850 559492152 185098579 736868031 695999036 437645575 586751538 343131774 116629443 544945287 950199742 522732478 630305080 735632701 119989548 409824174 679437890 311449595 232080412 845974153 145382172 425705161 866142104 269671834 575221552 855290131 500383833 33847076 615273598 222602104 698862162 723506836 409927451 320025134 249947673 598901742 2262110 574355898 550934573 227348816 708918097 596368764 880690582 435859455 302071098 180763894 843214043 274711742 57542551 141203755 585805226 106231207 337417625 238414680 846880947 114892839 96616739 134693287 777729091 55915792 465940400 186680515 934400489 701013135 236967103 396765182 679230935 117585492 428764802 653068859 483577746 66314719 408684036 478932377 177645882 233935873 584441206 572575958 510926081 89660721 347047557 786906274 146249766 555151259 303656087 916159040 218091558 137923999 810655106 926733716 839080427 369616028 753552787 257637168 963149010 424451031 797948629 911946092 727499579 594302157 158897776 940710532 442225052 677420466 883352643 85446551 808927043 722434174 127776085 225115246 918169011 163227248 234043396 679038908 626733006 759905 49069387 967381864 614582818 232985424 944698855 382724085 350063193 19467789 128228985 930426009 200780544 949505302 26516480 354905277 138404735 587273545 909596031 457334270 16706153 548781856 36885789 627309919 950242069 672326395 17712926 508538208 745623520 477082680 773199550 963875939 411808712 995148909 664039531 896529561 729172379 404233066 820213133 491178878 172171000 276540723 620339494 648799420 237370433 626803012 682795557 782111154 646471897 331035078 930159243 919302698 849396129 185379306 884411307 488664393 323525584 729623152 956204850 551933355 894854627 429187156 309423833 237715123 562506028 853972466 903155758 12615502 438092589 95491317 797663526 908499733 171037347 993377694 455988917 636215189 804439262 180981824 564452909 162895545 299963593 121635762 173140037 494276384 892870298 815150454 306758858 84731304 405231471 804119177 618895667 852716576 219597135 968225397 623785741 592852838 641617734 212306902 780848022 202726839 482683504 618438131 550060081 215172220 45411992 20403269 351278967 717567203 347368398 424158544 733877129 771967649 745672654 577713583 125515941 235440225 863147026 568080620 768998142 246622983 735276293 602616176 291311692 544939316 603852059 399536480 360437807 229690177 918796549 221339882 52785875 840151147 139664695 46830686 259530346 814440378 377966911 213434411 790139231 937847665 790842675 839109920 103059989 322516353 89918120 143076500 983972317 690837219 544382042 493714224 964348466 351256597 147498673 286099175 987221375 956088456 436629844 879660440 281762616 284317720 705841072 734814831 781697208 704360996 290868805 721685369 350130648 324262772 537191218 835162805 371795174 15704048 767945284 640180929 796297596 680693310 835654454 403850763 994234941 199761026 925754703 675564529 234425478 617363489 96193198 397175248 305557139 5638453 305922915 364301270 386710443 748538045 207160512 311005989 904266363 529089688 524336793 608162152 152198817 872579055 883163791 709263402 171497483 547785160 832984449 280479035 224969835 853346605 564561858 132722661 981836207 137082736 83825527 3996549 570228487 388505685 832339201 331923550 461122279 883628120 356893980 684595646 742901829 577304735 725525220 520995018 286588846 236364899 213126619 435227462 803793697 312395805 486767963 932492119 94317057 69008218 442590088 858529488 565648626 479123425 790825407 461493568 891297006 601402844 993707891 810992654 240647788 439603185 681218045 75090813 776880721 301182064 436226687 804431928 561388653 536942217 632486837 792182792 268157921 891149981 907051458 737793209 898628436 92687237 140064326 438480738 630385898 648910100 967270728 232586281 789400802 532009643 961350926 82616706 79398061 44768628 604367181 787019616 302490625 534996109 132515281 906405153 759987177 822491988 911651711 437176185 70129336 237632429 621717140 464752965 559690250 494967555 82678205 946215557 579598816 673775738 61493282 266946077 343554165 926315839 505203518 465752748 821451141 441521765 468746856 268794675 716009966 937165322 492943318 634139057 507152043 498515887 558429938 859357494 426414809 846521994 599643778 17292656 864676235 833009460 676407935 661547779 299641711 723100904 654530511 36795988 306913601 226228962 896345065 219788954 738888446 46760150 554718486 771264290 589772064 106519450 147604296 27683679 661311300 701919756 647282651 426723052 345830278 789279448 818155081 373364054 879942021 551116425 539327262 5505163 736835278 342888472 642700267 185060236 287532576 676759761 159187557 522623994 210343372 319126567 716771680 899736282 216995577 862726398 79884134 178112917 916185371 84894118 614217948 793827479 948795670 969727236 569283126 413330827 844472560 266076552 792567463 832575934 459543353 766077259 336583759 487198604 572420418 397176668 884433632 621111774 633819923 86879557 393379640 227602651 782687176 207481962 981045995 126480169 405444065 439465960 279244118 988611316 473186596 905842808 755151149 122369320 903950957 860337826 7405945 570734712 177439822 505164340 407558281 902644068 914826496 79624538 683787396 914903216 801835652 93337141 18460926 905262444 946612764 456144647 909793537 380043563 38494702 734773304 78265833 992235964 858611536 451027066 21261791 922195486 127018384 530377974 709716679 933887179 651043189 125377638 415247656 680134244 378539596 731735441 415442543 817079601 549037237 331908231 709961728 712935821 296266475 106931333 623597053 201794408 815600912 204370735 612519498 289593379 846369181 85067669 229514099 777114994 562143060 191190028 814170631 308903206 699783208 910925182 230573144 113518783 589390698 332329798 941098096 323309370 756696909 610173252 786289589 668244926 446322255 473997385 438589544 273231375 327903552 427979382 789326593 677607008 318342725 204492939 668490797 589604948 848650722 343009586 858611723 78890993 656441071 431887044 256253127 761822572 978260653 694737232 783892602 990878361 971032820 870699180 820798308 796305307 600483850 691660242 899709430 205185878 882305078 572695894 395820920 61163522 822597663 309847635 814974128 377714680 820746969 463052889 676376659 431912827 651241407 877741868 711608357 201070114 957546122 855243143 904146471 853654118 137978812 718180101 843454637 181613781 114313842 545065675 740607089 864529237 579502390 218593424 518178230 809788260 741739012 801515609 253362444 52075158 90168327 926637870 527189417 871958117 622836026 684178609 805210135 554009085 970272743 343406137 816591128 523527041 750646036 80805276 478495197 787106853 242935287 130776127 882205926 152666696 74904387 280647857 481111677 662573427 763662861 344900822 611787233 81650130 719600956 103047084 876619241 197614278 605739001 968048946 600200288 626907483 953746873 773923234 837801494 612790797 747986257 514794258 894216122 190235300 151559730 473414168 243728338 11865088 713225483 765242609 902574379 964980296 977945938 26996192 996693896 224821006 187495537 223928064 552829647 318247383 323223113 134778310 511086108 493314095 318821095 442827599 548472313 606907906 803209444 329594984 980959521 824200187 518016589 520445694 508791846 700246907 321483457 482961234 293495568 222767688 931792542 259269662 817014145 631760525 675468216 755689579 752687355 331330803 139065854 165551627 113593237 380341751 674828278 105572737 438335594 939192221 258658433 219724256 956562720 601629091 115497588 873627001 20461521 871791013 377890352 281689516 542344913 931581196 321686371 899876260 46420717 59390128 868298942 278416268 736049770 569572153 338365547 924363460 428402823 599703476 882009383 599957926 572642252 798766823 777840666 486696859 964019107 230327672 352116572 995571984 595683670 954907145 745613445 985043418 635871880 383788075 250722059 600772593 767342824 531195416 803307551 741087249 105340554 965336918 977558296 420452421 734116429 502397487 476230684 839265608 483755863 5120589 303783319 849337789 794968415 708208736 540965464 514385343 318508006 215668333 143113191 868223701 305862476 304891371 658349395 739569629 554255607 964122897 581981737 448839533 342709342 604432196 292423984 389611645 989566286 572110435 199784272 605456312 637824465 64364073 301763045 756640547 540648239 898986567 702510678 225200954 680363503 711405658 399972666 940297547 291433794 402489722 651559277 127534119 330830063 918252222 695885240 91567237 488039641 27227377 442568224 846026446 919761537 386084030 435181484 233240287 390892016 388577799 507800829 308924249 651302490 297085929 43029419 730248570 310655262 393339633 465885682 327763357 84023250 105184698 840531275 542261662 915281108 714575421 205087327 969803882 234642055 583226340 383976482 75021798 326914840 671934821 172836140 45837341 594192298 578233642 645697512 638752743 898144028 108834854 188278412 306801681 372360014 656300622 505729254 774275297 191477458 253262146 907231080 588608548 736460960 115854985 659548726 674195802 950848052 386882504 509044179 56487420 763876152 715121878 338865655 418764498 674811819 504402087 212408630 582138581 661339773 807298080 566982549 984332621 689529498 561358072 403675528 151147878 525987479 941540052 318596505 906767793 288312586 462101934 704314568 528886645 317729026 570694506 399780046 659226912 711601282 953127254 726872557 281183689 507432817 778658042 814283958 651931187 184164684 606760448 545438062 374584755 912840639 440776563 291485118 974242580 215799731 985671165 990984822 429090510 71850071 36067578 346547886 364936054 282602095 553780570 787765032 662854972 22307351 428422561 975690340 268114915 765924186 513769260 361073773 552011482 741101307 876199809 529859010 77585128 401768918 783720847 851357510 451893289 194573003 220165 745063691 437300108 391945467 546265256 853074675 938208212 973578374 837024182 309771443 884039022 557560746 421576732 204454336 308066117 429765119 481153480 503428348 727494352 355817246 649766079 122373266 319325988 547063398 856865421 379551563 604511085 124349194 636440699 122007102 933647616 593834836 702300009 10508283 774171889 539672336 800188210 398052376 581567024 982101863 845643759 626493878 191903644 629881711 44656842 433463323 424231563 930886783 730804328 575091977 905897879 932028880 723691989 648787199 61412158 203018075 647749073 474525839 724794833 764752368 248884015 65001778 441171667 209054566 479271847 467667933 698913366 456799174 688036405 779726592 299880979 609323085 67423104 186780936 90753446 482704074 132207905 202290668 666306767 840880991 2462339 658278450 797098985 313250409 59251776 522609369 79168723 475914210 886119770 755164498 165136222 135343923 107989406 263999850 854505822 739478251 804872547 791235659 160334603 618181892 819347601 147693113 733497380 494889050 839485989 768268750 756024608 355675980 790330321 196598546 341205234 722286510 440364319 601640375 772182923 272416674 286519514 494492890 966639838 832708789 317240696 385001694 466875729 213208477 527055337 219574558 690680820 446681671 735642000 197572348 728671358 511294570 453655105 613654596 908638813 697234819 724731966 333533738 954389001 303849282 108603131 82390156 275383448 617132289 801116557 369491625 721834221 704125556 816158862 17479614 361455457 642856103 289819137 931644077 478301678 91501359 632602849 766713865 299854756 522105458 744657900 695381285 203035815 177380920 207054285 625272749 557718623 481697101 375823942 592172391 458366934 969649742 712299436 193236853 239091509 414152271 573351095 312282485 320102373 528115685 115873221 322206361 263814451 15531379 636785902 446232994 574236194 111967695 816306022 753537900 703061620 149322209 617031025 244750266 228329873 562426633 657075102 358886874 434920350 316232540 90380319 857492435 569472554 845952631 836243488 515163561 588607439 402164298 20840115 657380829 489267886 864007710 335272592 744761734 357616363 287698992 692331801 926539782 413742860 909613268 790610329 241129578 475786103 612722722 952279758 753324445 474625311 644604969 378415454 881125798 221461918 171152098 902336990 802316217 624834287 997363174 857048334 153942382 804420146 922752591 701904013 556930548 931283413 914380094 439163895 390634140 890695951 820146220 599114471 338717571 228100367 302447937 74003559 638895495 19157592 948910973 946807814 475595342 344506457 111979724 53512368 920293464 424948520 229323297 669904854 91751249 872651238 141194909 605032714 281806344 670462182 803206610 7308695 753378651 32627717 703203840 803277193 969680665 76009075 72057682 513457842 672439503 132807366 164951228 548615602 679739575 978956070 122944081 748665071 290894151 811744754 9942442 181366088 290966891 747705311 306479434 254643888 553653334 282997153 261483008 575522492 160323046 117318493 537695830 269472804 565093611 587123205 407763434 854852484 581497878 446849566 736825295 807246215 370800181 142588405 172735340 106052062 336828340 410209521 528911881 330057805 277323171 308098496 844331854 326570018 983364265 506943677 962266392 966409292 62852923 672541298 737765837 228181729 863970338 51146245 459999727 622588966 426795385 880705285 35075642 57222667 651968978 448486386 518772259 877996394 122800864 685785760 450971240 249348592 230014687 964852062 313321194 905125455 963339844 863206880 710877293 943441927 202923925 788516958 679775739 798383307 887518729 503390288 944623711 337795292 413588661 369353291 318351930 695550788 318810595 203879042 549326859 761981136 259451969 391715883 983949667 426099629 760888429 737462647 691969486 592233773 198137886 4360744 272388845 354528555 311597177 702237649 657476892 368225705 170880544 153920506 262983172 57401383 75614243 758638330 16767665 873427042 94618577 287994073 147138582 110594568 406495371 991187142 763069990 326647529 672543016 686712769 694206671 491713333 215325753 459773715 561689128 992036320 748083867 894165249 345211680 354645822 315037691 597172796 171988804 409351809 359967001 996287886 296698670 806789509 733731119 244492688 221581135 134409492 761570681 33703411 649805103 980230374 236678931 706081259 698022723 472198824 304763472 565255928 925096342 364031955 816644732 324730990 453665386 190548271 893092258 646152650 786617515 27691071 845604382 137464636 862282848 360948376 304975228 994145412 589004418 417863956 737441736 565075590 58086109 448201781 372054133 435244429 848710013 326093142 88739059 883567664 317620359 584688966 329756424 360034486 815597657 992267705 924508281 573591395 593279347 442405217 744214453 710909520 965919495 838877469 475387296 940453889 546379380 346127944 197562889 994007651 813501959 879782990 140760797 425938938 23791974 392357507 751239645 685736906 637269800 368831990 432560806 137564309 387554094 285450265 757330298 557982867 131811377 841328118 293149809 655460438 752656414 31311543 464815878 391839006 623436274 643832086 41585692 550229391 51276573 125376725 442884793 269887043 528253869 933463297 815156798 162402970 183792440 431243120 97061841 281992913 978394030 385807019 638770547 188195379 192755229 201370013 798642012 520116814 30012451 627873342 672983611 580830230 598149574 518604911 809735284 449848818 593882347 629218185 575426593 491904725 609754297 736452574 210148736 388407971 216732227 326886889 758102163 841702301 578239605 85967559 561805194 439808256 279837259 450816311 482776942 340784911 474129892 706512540 973613237 25216243 555284790 343925213 290935161 851244829 468046849 228870214 701782615 970659599 562393553 77354871 103401185 996536764 341304008 173606757 702314004 607418370 728698733 261367887 703024568 277397294 689841576 793955519 733821094 27907540 734751286 345240867 484572645 516705533 989317179 550741900 245579275 692418272 787540114 257251809 6686848 924039992 208831326 442934616 410416375 779725734 420874002 234394888 87599334 494415730 431807041 871930690 816024529 595136911 229437844 126162976 282769470 651555426 966014465 38921159 621750124 255777648 750511723 155147558 227616484 40178483 419256667 399176100 997701866 413553973 753818291 859606988 833331336 993080333 392266347 581957409 909735495 715343119 919517453 184524838 788450205 158202391 773840534 643348005 749848962 641234726 236244858 981238371 500747313 283898665 279064783 588087252 94325237 374284164 311822072 598230965 766430853 132927716 983579869 550078409 363872537 992086157 278285038 364575410 68651328 162900356 948468914 712099159 179920016 837619954 319657864 17844845 174470209 213038615 181765639 265547828 35071080 626117567 44025543 660643789 917516207 155418351 776140290 906889025 640359500 152789600 335859238 255117465 528309391 59717479 108947856 918232620 374407285 631920165 597064789 459927146 727548427 353009402 470086865 455687229 34296022 299065226 498709616 483901438 872879949 276190472 198427328 253493634 571907899 36998758 612646681 861170620 959923752 920386328 969023603 868945792 330219332 876804118 666591091 668975986 553924501 800276683 752144228 947912459 290044269 108000452 214760351 900133936 154082652 44858423 827386658 54071344 995688038 483924273 454598752 802149569 693510730 118752974 4433421 568328388 947892721 621065319 197152512 405074654 502756701 171433349 305785571 997138508 247545735 983237663 827952211 657052727 677129953 320561147 863711893 60952210 797416380 218985407 100685559 170202157 19511154 550780287 94936007 159955773 664574064 232735015 620700425 204736237 890648462 460043870 109367002 309788541 191737157 833390289 838218542 442667309 207401482 474282200 669822173 6666715 361046442 677999395 573800103 277702402 18187856 635268815 925184293 409788522 207290967 568848903 89068225 657635421 393205901 514652608 864778564 349927861 854863920 334204531 878494514 615741576 556137113 327419439 720761135 706007019 735148602 394445932 373818034 606958077 291530 266114739 887391402 622119230 637009218 658792679 577221905 597736892 617494261 654443844 316387376 205147527 321717273 749163492 69544407 529119698 222890783 191982678 167841956 619628266 844976724 878773900 975848914 996646013 337768054 356218263 132131157 849702717 304864889 406339581 498175854 458047949 155926028 840694996 884771508 255264609 961403608 411399360 988212054 21449801 876427933 773169301 951045470 77909238 84505240 741435308 476225155 194317787 107844281 604679465 459376110 507710048 804105411 229513019 321494474 94941064 541981484 246555357 29405120 722814502 275203461 439080418 485860862 564332666 754652851 382755793 324308343 73946843 951700178 592831103 924276007 938630005 84935804 312417283 809537536 723738572 302103464 211747116 749791795 613330092 566097506 572361444 337246003 636253271 235425848 75328782 330758576 545007789 793889509 583749365 981529605 196051361 27365623 520805362 56832558 966797662 632783503 465092791 107032064 764554511 100354547 613658784 248242410 722395500 37494390 223461681 934407847 127755331 983022975 888437246 124336621 43110849 562731649 543321783 728546111 768477531 902023542 939445990 516762678 597053035 780845307 520092442 293675220 973657148 378903267 964515092 665492558 454483273 392172634 579659340 73479475 600300499 987732382 744203482 814122673 447499124 526414677 530118197 366521037 803452129 131494018 366307643 570750647 694680211 252369540 10303695 96321194 41110870 23533675 473954293 94715271 626458891 658310900 844848739 234677130 804521462 945422780 245777113 73811515 727263687 267069423 391775601 290314916 449972798 827023337 918078240 142822378 681254394 862188045 469815639 23127242 974425295 205429897 505051393 696737221 569284308 575571572 304288691 669166408 30704345 884828689 411825443 702073015 229519845 164646504 701191382 29267053 109943439 831909430 32388120 983625836 311073914 432514176 730686638 874069892 89991288 665082764 855918292 672479520 975966236 857668543 569118852 186399165 930203438 619259983 578452452 743807524 869336566 236290395 69111170 739200045 899109858 511390688 565002692 401668692 324780672 468053821 137188408 941089987 267680674 663270748 699714472 572787378 922185408 94855891 585944139 503611653 591580516 712872948 226253898 976278877 688133002 921231271 276530160 588979134 626798155 255791889 14081102 683419598 728753144 621649255 113301102 893916350 300862657 27737770 819495049 117760039 103553181 942989554 110100861 278001002 767832594 798698651 506521423 9578524 503538656 169235693 623224161 75176829 727087623 787692594 653590942 660032051 18388294 29408697 569292260 812454668 145884738 544130998 383338652 679156455 508392131 923590334 354596771 410816212 390493493 779297781 287251317 886099596 576623149 574546548 125056972 547784813 350745287 149396651 302679097 462562081 3150794 812144001 178852666 623248946 933413904 197332920 883680195 162538258 111986401 637397289 151497476 973101977 182805470 179987407 610176247 923598321 329486667 892405921 368705713 953253514 993198075 52866821 150360862 366911918 102739987 226221988 556661230 597605467 177843880 720442893 375837013 86145074 661299627 786763304 233277673 10036883 289859309 36884108 568814526 922567597 125703890 859845664 93137658 508474315 858281779 586311100 718167828 755625955 366160232 312145171 679738128 783638342 620783526 590869716 994915319 139768684 202863258 623051870 273002003 495646999 576353572 997194113 770455081 36090426 930703072 25937938 936661517 513524569 221193222 563343203 6639504 777041054 464275625 795036981 12653001 247975502 907831175 308213085 628262090 844431791 984849990 97799902 431879641 658712250 892418912 614850391 594865514 980608986 988801304 902021304 339138055 536992902 435228439 809193680 941840232 38885966 916305099 49812078 270171358 997594871 765572571 170652873 245642618 868254498 223494558 524295280 471830443 208351454 633269631 206991888 335596212 219181996 733135046 740128501 66357258 2918504 936326035 178119193 569399889 410180298 849611706 443481374 606762396 100513834 554898716 662760631 585012460 771879818 630597078 396312346 772066816 148287931 812135537 37062484 54854324 672776002 324362315 866798302 104369489 78677090 310433156 903368646 407653226 730025846 416469994 620828269 16976286 978741201 577877320 591311187 622083094 766451085 952565673 868202778 383904501 586667103 430507718 466930469 576167967 141385583 114099791 157552634 925473743 235689948 642263566 179758510 402438461 785996790 867326222 176034473 712651555 247402933 482687728 740649734 868830719 288439469 987477850 546526935 666869813 316952781 686336384 958801790 762198895 782390301 447890485 789805901 327382607 699879531 984260800 182654021 444964229 145794922 971616282 51930606 383270225 281357446 831217930 712737621 153282808 997657604 781266774 336128756 410191271 21419382 66327113 117965823 336771684 993778129 405376990 310507724 887627897 302009557 274323426 25846426 838404797 578402424 688562672 142425288 309072352 735396766 243960122 338506060 879790597 745597945 955460226 228019226 838440316 96738175 331965532 451811693 250377872 629902156 350932351 427145728 828909285 262086933 209075082 183308444 794010458 312678673 102060749 349636117 702710599 366381372 923850328 825649363 121102105 945773106 908820896 560790496 399758477 608732977 139630137 372360350 554959863 46647877 347742857 455116298 895591978 33945068 508320573 185962029 297318634 296822351 734700270 147018964 350561198 264479054 571209152 129731776 169275209 407224641 15448445 243643904 866367862 267796865 521512719 625189038 965338191 337928562 314178387 121868309 121144250 370331857 402791335 956364680 675371523 24052077 108306771 188070278 550027665 520228876 588798831 286798137 953245848 105370446 178955505 523708723 711571650 576926649 687578970 711511832 664228348 38180809 30863238 581088421 871973714 465450101 283778779 329186139 354117667 85872788 704754037 339742275 558113222 698059041 357535633 639664323 258572114 354834256 152990008 777045252 570299156 349217715 348613855 373464956 801914883 484445107 427646141 517042788 835863304 367823164 429497383 884443585 565720819 303811413 501977258 804553973 273905806 115410083 96288729 578821156 129782213 64992902 497572077 134045238 358990337 246844099 650008720 150322675 458732132 631389651 637845007 684583260 676947575 852503284 740316875 434751744 627691263 643711163 742174504 995602346 877796870 255416671 261227070 261915473 556316877 260355877 749931335 207160625 246525086 92630722 921308882 412024024 920194819 667678080 932962351 662320724 762027086 918319467 880627637 975688275 86008982 604235048 770189119 884405677 920084873 453722809 442560570 616985493 539358167 548730972 339773784 191592934 528534387 164191531 416770795 906069133 43412908 693639676 422752540 135181752 36747080 783958126 152576765 7288292 419592939 666049959 394725258 649190604 439094307 442647402 338522030 635230370 211088548 202050049 964266853 989891781 392564390 901704057 861812803 388953946 943323055 484200228 896207982 979687697 46064136 37950293 774207193 255601077 24778411 536793714 672235609 256870893 724179754 767768163 352108011 705971227 237547122 806332341 507229911 874187778 642864862 835331853 603604375 610490922 209509707 275953469 847985931 168113746 962099614 536245821 113962599 576252798 955784337 695312060 823755208 420228429 463585648 272234969 48981798 94818131 353957620 500551924 138618223 687627260 466114143 953166313 457233502 318312331 502328739 781454192 779880993 67155428 797443457 104917473 911186540 490839692 610032271 996259779 887599365 458960112 811478588 45853385 375215723 809968412 691408904 203983093 703123291 8830898 651437986 172080652 740093548 344408742 670942818 457868057 302692013 618459648 946946290 642782253 515648706 299012211 23592753 510099557 506133109 379904913 510422170 907311752 746407704 579444402 285671566 548040839 867012965 658717216 929762632 471758637 880644348 615784686 577629203 523175734 980959388 222403651 782934380 101949758 767789308 389451826 29161289 473811220 814489307 342073255 202007515 629437796 942603349 584866920 854863094 218074848 611150709 915555583 347774101 545364347 440022127 702315503 933620089 164140617 36258208 520716299 709695917 237513179 224226826 723878362 18404186 197437344 662404778 920658437 807765415 785721163 839156187 187630464 650731381 857621308 488066884 79278971 652951323 453919785 94854988 968941466 942354041 766785860 707378382 886016048 771627391 464441024 175715693 992101279 42752123 613621833 424690821 513761499 654117592 692555009 56022098 37833377 131016684 462077996 644505362 329738187 194701505 263424067 881222073 656847278 415823669 788976088 629678657 729470718 914642643 423992857 571752900 901539174 802470491 737091833 778133099 28017014 356434990 500254662 111927196 517302145 685100420 921225808 146074335 862098291 96156355 573303012 15520720 109213594 953610178 920726731 398987999 336449958 424038572 549010648 817883346 895201025 145146826 860921202 13634501 100581971 717964104 578360943 499205381 979418120 791442635 79848118 795328826 459159344 834828544 401620444 208453097 994652349 848408746 331894184 484549012 974466575 551044152 396442708 857481041 498256715 442696401 468175991 853481573 170133773 416952707 756065415 783527397 431789697 625808612 329178333 225581219 850566086 501729552 301441689 168503746 489833140 290530759 738852749 623257486 443168034 789117447 795543472 988355830 505286957 414135825 528455811 690835256 675263285 884118030 454084538 266217917 54619329 318914121 257469355 725942398 707088189 699198509 507773339 50622846 864533948 832893294 191633379 120093197 351436344 550083739 249524169 533478961 177145132 215275509 711403580 504121499 350416319 767469142 662052459 866935119 86251743 673793724 155326428 837325693 437934992 780369103 182260809 871298145 754684869 544293807 908971360 785516432 836486642 202759975 389480285 695859700 647649940 530267776 54925878 235868824 157444136 583066902 272546625 815815841 123914574 502995620 591269619 479750039 112730489 451328882 222615368 70350973 355006857 14732586 853104764 368900883 922383602 713439881 80937475 637571043 387778843 36936836 986784482 230597481 751110016 198691015 836975873 847405801 588084281 877257606 396714255 902358517 663787199 254070946 54136323 123098002 959964191 684496921 492156434 717815787 154883115 271958210 652728041 969542798 702715684 347751319 841680674 284587366 654247009 565330749 728595633 884221058 287587846 882201738 263852435 561093671 805693831 308603120 288953932 94085738 394471902 195400620 571940439 868031120 487460292 745487257 340512212 411215561 136493583 280256347 92715242 937145506 240534974 4113093 543977810 530478886 888917051 929444049 993090728 507601801 723324811 728500974 740351910 84910435 17506712 179889605 230417383 960870944 316175069 23672427 946669030 586461279 813678845 542499700 982162963 592265869 169461816 826528071 673627499 162924600 306494421 853860224 793142912 452727499 105911550 80800298 11183837 484323024 450134141 357407819 301466121 464561558 31055425 723863029 441230222 719459876 472423390 911067358 297111521 560139294 862971454 104751448 238735896 26132301 873232893 818772038 886058888 320430847 879689737 479087511 848124678 645749263 862766640 716660230 277929237 749128949 423779153 202298550 277125606 175910274 92726902 731216261 47543293 263313598 777782236 317141213 616162004 823998370 651483925 875293363 108030443 327000585 110191693 933281454 113072758 830639622 304921476 210383176 835135519 414415236 231142690 518914091 535607625 591823646 802276444 726448029 786447933 14149738 990691460 410357626 298631796 745354433 874778505 405200998 44168874 993357056 802336950 449878395 470875597 743859523 319515799 412824118 462472589 631954932 156607272 243741726 273994111 857824228 859060352 489983497 286738972 192039498 132448588 450776650 903232452 863656619 155812077 887330501 641356003 599982046 218780312 202068188 722718495 770974876 680505308 985624958 542955018 859613259 292877203 672890119 245430229 616335350 72513958 772029008 996859579 816483994 61190901 788799143 309204450 915874178 322864465 537114722 589618870 314343082 290504520 341588696 71970465 970478840 215663984 225925191 78096466 297160105 331342029 740185742 593780040 969709951 92583682 611997273 94167972 539099274 691608962 916882332 626625670 779134320 472347225 177982437 130324593 510768071 970875807 943855932 808354807 316529854 236669059 321635747 34975680 53112844 724002473 971700376 77315779 632346510 499771129 724694058 377263948 888117232 258432213 948898618 86064950 139853824 596864224 525983533 955574735 921910978 994208548 357912206 683866891 929423588 525335495 712768060 326982703 936822882 15186801 143324817 563076465 777341297 624023227 185890769 108897773 842105527 658526630 201510121 184018213 929566408 473984260 119318230 713844490 777378433 651349066 986810064 337794638 43568356 635106327 393547678 954762364 839588289 289824130 565099256 758554416 867728642 408917918 332705414 561889892 203540102 759265968 541098411 774472023 679985818 372512702 787284974 77967159 178114159 861962340 902289582 426690087 50600955 292981469 694464427 207804261 595275040 17870241 633247910 693794970 73794332 2255932 541957080 648549042 400341038 63430811 404491125 940365924 311876607 778662544 519115003 659355548 964383738 522701642 601841482 76283157 203931127 66049513 656218513 591711424 521174621 426379673 871046613 707393127 565288899 158275749 245521698 947762441 5124156 248444489 121174013 29698051 554575808 939618812 123943000 992183037 93063879 779669006 264443313 507621887 852801206 466353795 211671486 410063553 593055651 481570134 612322009 371052117 723260104 355617916 674816552 131199688 937010909 62742914 788099757 784069340 148565419 494887820 111885345 851672867 826257162 656804461 848293775 242289014 982189856 147809121 677628381 807885757 13097307 584878046 393460466 891984698 66488317 756135469 636556387 532924740 412583250 524024341 615495898 508920460 161089391 906947233 431517052 726964695 173421765 889907791 511139365 40931429 806808360 611583670 522599557 717998565 214881970 426054767 493954499 468790666 270770571 132876612 321022181 564233014 274454308 361348114 908620940 94578832 703331349 84494587 515896999 641311091 541515015 238186686 394970998 239188333 487882103 958429947 593010324 106425632 241923491 372258688 203773231 566144077 254669947 962107101 84135745 534795481 701706960 343933638 252671817 997171302 74119397 654826318 225431441 21543340 514933903 865403676 652983266 200602665 489235208 565930006 569754063 513524213 764770838 90621280 33616193 704724196 139468773 343301490 200568443 232446793 63450431 173641043 354149442 448556360 541026456 503252891 860581312 8124938 267007973 492152693 374616192 713312654 280513658 314098809 110719332 29566002 73391368 271294098 247396840 138412056 433728973 277508286 131140341 513495370 792110170 507222113 806179352 539583823 114350210 354722932 902747268 895468667 631750011 680427359 918935800 932656414 122388014 565979352 846797246 906318532 391581837 575470387 527535907 435125873 333474680 291213562 923556508 5063024 213118330 747683627 797901920 65498128 35850906 710068954 727519934 975237342 181142271 493012967 652553909 289987178 212229657 532995852 622271529 361062194 9287514 307452297 714815516 558034400 761899908 968965002 474958309 523830852 695312320 537244864 177360722 418689335 310648513 921306301 738600628 950796212 31631942 90612944 965530719 52818896 710852319 549954639 116555704 496524839 984805737 505225197 767885685 976802891 928700942 264388966 968987421 785811963 698602435 850751849 890980023 237967783 776790527 69960505 182473416 574306847 799890839 614938546 527080679 144471932 281089861 663128861 88029830 644915227 904211302 108153134 45204936 40715070 16217436 890348854 192007045 946636401 646564433 987852754 939911355 344633231 855976657 655606076 20970034 596678443 809228697 99692666 793959776 366843324 369508330 717484218 748645800 350330270 205131850 407699004 898642228 974996290 560314366 448948901 34371122 113981251 611594274 789480826 762364018 985565706 148520645 807373858 54779837 739073418 411199742 376119586 756174373 282949188 544703493 870578780 208365199 180566396 266927982 344644655 136734418 534447502 745499370 224863602 255904886 168527103 916495410 259671800 166401409 737509640 846696687 841403085 700644714 947628364 988562926 945752880 165000834 703952809 949253028 371357252 408445384 865358278 963584479 854743179 416085904 837460667 865636920 168212193 997389076 604267933 453769665 60063815 682346925 194470096 797175734 197800825 677349047 188827859 944838112 786574771 189175332 352537288 859950602 315213168 521340657 431189011 421672270 594484979 169811425 373899862 904206114 180794906 633001962 592343905 568001655 34708014 940255096 395026670 273975913 577313773 382807854 560672003 566847408 536060465 442308603 465128642 244563135 647318672 988347121 340195938 684959848 185316483 213830415 538996806 607940961 87799108 693946972 773535840 18191292 93396031 744807715 463504636 223521222 27187683 9540061 625735188 978519864 901652040 330829371 785212251 375861432 92204178 126069856 843406895 872192737 702493772 885829902 853897718 651453262 699296635 668344967 864818908 307681841 766837047 74590867 54172477 95284003 750960152 345969616 342808638 256324431 479739293 899583133 259907079 894564307 33881137 663022146 964539181 351000058 922572006 377721325 451171228 291734587 862846338 383193410 953947019 404201095 464115197 259350615 806509566 725726181 72698938 429390964 766380169 980698881 866850847 577006510 691835597 460424712 823601789 983654289 198474223 57756444 241002968 463550771 45143535 800687837 315257746 529777063 596835055 567787565 833443828 389173085 21289750 279299319 736452873 384595104 434932538 500872413 867871797 562392861 845008327 613570455 577002366 399063195 603900772 199357519 553713916 818120946 522994296 902895267 207518007 95640266 327348814 696602301 302417488 45650201 582439121 463404252 904324063 390844787 287834867 692805747 821121189 99648462 98908293 32154772 510808334 8100633 547122134 380834277 313207129 14850355 66371718 804618899 351302496 769057992 30694426 732199070 34525118 122022786 315202838 655927380 58887914 445164235 371512210 153247531 684770672 849193735 909400999 926406486 597320351 984887601 167122618 374894266 156973367 236632726 605091894 440733787 985548436 280146489 77941784 545673889 127828608 521089384 315304566 591566544 866068907 241417923 222631846 834233904 844927880 721665720 167362059 276665746 367603996 279896154 775128870 744235175 542428156 798398289 261702033 126942761 95681579 410141648 394124251 52835272 611326305 947582874 919684287 278685370 854511501 829301918 415975833 383204003 795082761 564672482 969481807 845297941 242444444 692921031 485887785 552189430 407348701 924670578 33495497 993758694 769999652 630092005 250386444 208875743 262714106 295679675 454591494 981888783 549448013 414510763 496392138 592270046 682157379 333895495 93365631 987252108 176120920 916348404 409407346 992577596 810462893 900194206 800407870 968757044 901401656 79891535 138648781 426584854 796971818 269432979 48461002 450567826 918562975 775232207 217247798 573415436 67518868 272402557 45052596 899441041 662966933 148483217 937859230 561777131 761771325 750297592 866735945 290237453 753951144 193532045 345699888 805810967 343974023 271700909 97444818 474266191 749313016 90935328 877308087 76050488 566003631 901143835 131948932 379465405 763817555 991784268 993250725 577412663 402661660 801192392 13137145 586057624 596749245 217101145 656918074 534311717 630840704 202933221 121556317 588962250 611164945 190372556 71848700 678795787 608318011 917579326 523231027 454184950 429634872 983530266 194156033 893048528 516493125 831633054 773877282 807239016 945570753 233370691 919402837 617849823 255194645 229871394 972968882 454951757 30592831 836473966 163213787 762870012 519672403 77757704 386319682 633314219 457264987 152071842 620530134 313227389 124418765 782735443 155174026 534651258 867144789 142765201 640103458 783861291 314046345 987787854 928155047 796008988 256291652 505894332 936954730 738539170 225324153 412905338 493093320 939653062 18339721 186187451 462265524 355916696 424607400 659940833 603582680 617248449 772526421 894801307 724604446 381897955 916202399 70300716 307190808 494691237 596438004 235605776 683391943 562367436 425554572 358088674 401469811 144109915 26396340 565503659 379681192 850100449 297857930 481587252 289864918 653829817 237117844 54450512 165616002 286061780 585129500 644163957 868365520 562311998 550059669 777631389 788391209 563832971 471711781 934297926 105887606 629008094 51267261 967887716 917433857 359606195 618326151 916770685 683146647 231832713 865274631 497857271 581506626 966362512 398371990 816803587 950699700 724950581 145396213 989926947 235967844 5627689 510716190 945909083 831658962 338752904 837075395 570575330 866594496 464004185 864161547 67174041 188680964 123138005 415423198 441210556 323002078 772943792 282055623 697605118 347288869 953300753 217117871 675730834 663673628 651577168 783965786 975574313 553791518 89668024 636324965 67346979 526437201 139726656 447931518 144233006 351212545 151661908 482629752 247355355 271179111 562911728 424024419 410163657 834574790 109665438 319314370 903145192 140812111 136974244 401003569 449082368 464300531 491229781 762082632 62241833 299692243 485222356 651778046 412497626 255831189 481844602 967809992 519096721 109516957 704090192 479524126 984039801 498686472 171898819 691295656 916607909 685178613 805300531 700742439 34917554 484631806 382064767 544429159 851585277 986779495 435454672 355661013 596178469 723417198 285305501 939454759 662674394 840923995 362473387 90014251 957477189 548845830 314423299 270197845 165479906 467133982 25598204 565671271 662355264 902886505 30244534 939937492 217559120 955867838 476340261 765025830 471358215 65525416 268710569 966305873 341604368 99280714 14057477 801318199 79130371 521140798 889586652 454811648 706050056 871133669 105432544 104467303 371651214 329516406 728232372 549424745 958573162 539940407 318755794 844506211 886583122 165719314 847023680 494126508 822467792 687177145 72464006 938100684 309059307 390909195 731556140 958707546 233624119 477348554 163788444 283680812 1219752 159952927 732929138 667699518 44929170 159586070 522762549 833251465 957520972 534834205 797824151 96308171 643412707 778152247 372226201 372017202 518618179 68368987 580948133 139813125 81538618 300238033 326041883 895685871 591673087 231843741 811626426 18091023 563855131 802999438 843846189 100814691 100760404 919322460 513759472 214127705 289561057 593164913 263802581 606891262 905758066 316220897 307697455 462119994 21878565 352131297 649052607 391380400 97440049 126137811 906891978 537074112 938994599 254256414 878943062 936894040 634992334 910605510 93177352 844736320 54232308 480365273 324126668 117186291 368219436 195743969 32982153 832262883 737651908 276849099 880606592 866109685 720563537 167126969 875441565 257190935 402126146 655123891 840638670 742872663 637872409 818108701 509029901 703493517 289872178 6085925 872349213 385038569 258825935 186171468 331570896 285754701 281978124 932182874 681359654 5667486 725713556 838547263 10861501 423916899 881568536 213043525 76771431 328277369 173605652 652934768 642476794 649401301 569090045 350115464 147744739 640848573 437668915 447935674 344838406 594708870 892815767 8904554 708567145 156534579 142171513 908080805 385803545 161362131 116898464 114749269 90049804 787993506 524305785 522716508 981936099 844016079 746941210 740007004 556118186 718734009 844350111 520153563 935660607 257506157 242300689 540527142 712633912 936320693 220586273 151768143 247657631 955396863 243128852 168004435 155137832 687375827 745310960 168120218 452278559 12034134 989128282 897477455 829386218 412752525 788471807 969847281 58684423 789139371 501606481 558465443 458167243 76964277 89995491 445003535 739953799 718754362 858423578 832819495 993625874 757877264 652315074 134662160 997751693 82883673 225544324 909352293 876598003 507289659 416555954 789377459 769448027 198076351 585567033 138287798 93108309 966095557 477536228 355420891 867000392 325105870 983187915 730786237 341661018 276654157 916415772 519025210 888493186 905073127 288907010 475021923 976861896 778888641 707271332 27120208 971494158 664147918 580902499 496241218 339713874 18673532 509229007 617956201 537178959 493493600 222907121 285096350 506645279 590710956 131144283 714027086 636591956 158728576 762595294 313559274 583758875 717849838 832161204 507034642 990882422 933390105 986038325 864371303 484666634 930386951 882094258 381343027 114552706 604679817 438802991 670583677 725067458 538291953 377979507 558415201 532857952 487816443 180519841 147293468 270906108 229880726 727009553 319233760 379195800 698797471 53074902 220675650 885928374 925865068 514481735 908513212 264748925 200099585 247524562 720389019 244890792 205089742 183829014 813028259 261129103 552611892 318465470 259962490 444061657 59708305 732491659 682509229 268619628 702190071 885928018 137227305 836089535 609045765 796117664 480212756 377553684 664490231 74379623 921895819 752828802 827715144 276515088 368470970 245621648 64121340 501518156 45216726 749803168 611382371 818031507 579573858 646046621 294116347 679362841 455978336 808659002 595109330 464690066 228711781 764499610 717433467 955927347 244740834 864681454 25742650 545079941 750252195 784644875 766535090 875751065 777576850 198806361 246996823 24357415 59637312 558450049 142199992 293772281 343003999 92079768 364712749 141173491 787721928 627125169 617616264 974552162 482463072 907360201 1937746 979165279 493469645 31007908 432891753 203526785 412109044 453152188 732111182 139627352 978098343 371638069 414148225 156379240 784036876 367400201 973527041 923398069 889545451 894952460 589552046 231257212 306762993 568623291 921825363 410798990 230878813 109392912 425518759 40305386 73049386 708583591 540634445 650436479 919892434 638984010 856668895 317315434 719996588 909149322 667513075 249446715 599471192 314321346 766271589 997720991 110044340 279665043 163591356 105111145 594183689 324858051 716336838 8554260 161023977 986068289 945368969 883067905 473868020 965538793 574590467 368014511 982071618 826855356 890154271 3787431 166436222 398868407 668516298 681193203 563146474 834021143 16865811 986488657 452588545 433038141 183594606 540698173 448361212 893071052 373360346 227734326 219618689 602370668 614682212 932173694 954201014 223855567 515826405 381286449 705225184 638428179 689049602 592853942 844071262 26066942 148058847 664172369 815357325 31584627 653686428 905487505 878104638 283507214 510353909 10309973 149358269 882877634 291193924 879631796 419328083 509701307 779139493 290626169 186276567 490447229 625337260 789838765 228520538 491059470 847153953 223804677 379953407 813772762 734377662 911676955 665399714 290595787 333374907 38432063 351358799 666225358 598620814 50436854 168518854 28843145 395662516 774076267 714297098 920496510 514075631 489700705 241764577 590976372 335108176 967828619 867365943 567696931 284285248 550240664 571296288 255183438 226177578 313368263 571854221 612708069 381782634 574213330 507379217 315500060 904399316 198651158 954860588 603239324 327784098 799033099 881623280 215303954 350012587 647020884 252854433 577431918 152352916 851228629 53224244 277964167 551275709 105254066 612464521 41288885 75576020 654509426 793597676 850713578 770165206 11538153 943804650 303682459 644589817 583156929 127528288 728887307 542273407 337514946 76126364 879141605 142338704 123673447 668791929 170096865 768183828 597556567 499005069 962218403 375633495 446433007 33081961 560767298 732898908 745299314 628842482 862125989 538047422 624189919 217251187 758572021 551147418 339487486 814753538 302801527 65205990 177054550 650613798 9240242 295897815 467493962 195906540 567940024 972080727 552315378 479205661 34509890 545481460 874592580 674365731 93855734 899961572 512104875 351154325 720940444 944430714 758304101 370346703 279388449 815667078 499303231 702289528 26810665 476074262 95474787 301011661 54746838 76243148 319446542 219475021 193809105 700173250 344860245 569888794 769095458 989461839 392717435 45006768 705603354 89049197 977872704 957873760 644215779 561850398 178213881 216432059 127282862 337142435 112422045 140801693 882076872 613633023 601231876 665484044 32634714 213092762 437307694 255407189 70312419 725865465 299389020 144620324 359503025 404964981 954162660 256115940 888297869 17592345 10427526 420878094 233035839 236929231 901185213 575923878 767224011 767671161 488587309 177409322 88830355 638709108 912751494 47982221 203002016 877219409 760494568 595567979 638782466 977412670 794421667 169018676 155991966 680771491 639974093 146781438 726402155 177850665 426473305 751494266 561192927 778250514 67416256 280271544 590141746 882160081 529212011 419822100 788290002 721904835 187703926 204198426 718306555 225870570 585536517 821913863 609689881 874781479 574759010 534828448 854594311 18583251 416332611 288210176 607907208 789194752 254991215 735836711 819836640 865148738 865263087 979357905 245076871 582403266 840207044 984683448 229933069 425155516 971992173 214736779 201543301 160275826 151484911 482153126 687236844 716584897 481181331 640220180 705906758 424763177 3654077 270448343 816658817 427550441 389245689 586921864 248233749 764335581 232579760 55958168 775393127 69495066 81431800 77577230 107201943 579028106 159663712 376447257 739123298 925149517 10260760 445590964 611235790 679492171 551605623 332427922 736648558 530570100 580698608 963394940 78089712 888589359 554843743 171369662 113000180 431666994 649593239 781842157 746537631 817140371 706401651 255615651 995855228 885345995 708039190 21196178 214760920 189557816 666186923 670791352 963964471 90256850 567452095 797794463 734714400 470993065 134517477 511795105 929290345 486793913 688278812 94883081 656608958 734594569 751404325 464551399 756173761 110381177 213477977 318075526 874596261 4068802 876971357 524498104 811522933 772873392 159377614 198443566 844985266 60239568 168354431 738738273 944138629 131867018 769456540 446678361 338527393 997624300 2912038 362815333 287125688 389289809 870396126 324296950 801128859 384435192 965240366 850982159 723119564 510508392 936866297 125222750 687282759 567917827 919623771 677973247 768358036 107454038 704452260 405706258 548964558 307385635 962515768 268241884 391744391 633315349 905998004 962845770 159196864 712854727 647701368 308148817 596214956 11167487 653901584 410368647 989253788 760919107 827210285 3154690 719919891 906947166 194884594 730490080 963715509 465457368 8812731 949900905 690468012 625223739 334219243 294810029 676407392 508825871 721062750 616053594 869163754 406858117 898890033 447611925 461880419 117495247 849347212 54705012 698774429 174379780 184106970 181475102 670496350 987154979 231569202 118257276 400820304 539519381 683626577 245597033 432384716 100221017 697440586 632426373 291783740 584157551 382699559 558447686 64828502 101856119 228847727 275312281 476231347 783030078 407213844 349715792 490761705 256150821 862964935 354540718 160748070 118804163 811479647 793286267 226657838 81217701 259429337 896388376 440681565 737036044 446039211 978854237 244038037 176637329 795043188 375027845 699296872 439035292 802309107 672068815 918290932 539686893 807137458 184030242 207253244 230934480 909332673 227887762 597459912 547606089 916484192 824831551 586206219 22710742 623312817 169158585 846839508 860494230 323565146 911927427 832599711 159335719 395870058 483551365 423744529 164121146 443600884 145386747 51412363 268086836 587728029 368022755 52958878 495098828 758348095 851907840 248423753 484133062 357394196 679877479 700841809 856191068 279377540 481782744 261126335 116219089 345880181 661205430 12918570 238478740 453669792 767511902 563685500 897271226 96400878 705717680 638153875 313436364 874293316 186112100 333812473 116957841 690637439 637641350 891620560 8533484 924967636 828405769 421656299 911181732 292117558 358487591 642776231 257701375 925568895 608842359 937895047 7961246 874300398 920277837 125063043 957372860 982479171 323991905 107492689 91163089 120259322 138909299 935403220 363355679 760475131 3896372 254587995 130370071 3729562 277243796 907580164 990456105 552136902 192634920 528146634 835378662 720299054 611093896 247330790 326658728 753696115 317898571 953153071 163416747 708190500 442994739 381538158 107012387 87766218 957908134 852983484 9762650 531122945 696516250 231596295 791846122 641171858 916082427 967714361 722226703 597319452 336187956 503498347 719312076 923667265 883713258 39433387 90965921 150252859 960228444 825063075 530912947 669651462 751285634 475150441 131284934 545842723 798155060 843042992 992953284 313818575 648746404 366040024 977090414 838026322 980633626 737491502 65991173 576385801 673332481 435597778 85294087 983163310 710360142 976944089 964389710 11910327 431006559 951859650 190286455 378109345 560150587 136476284 376271285 79085571 677473164 754758919 974019575 675901483 137119625 284981373 734886857 118727682 980959153 915427211 307466007 80695138 130803509 83878757 38403405 944432608 707551992 994159037 643197756 563739334 203571046 263531473 38570456 982449095 989107719 820040489 857425172 920952705 956236484 223151798 575904 766798615 954350234 353192313 240060387 811558816 133989889 334424362 853859705 182141917 777866434 840661067 74800018 389082260 121048136 592348798 856038281 871236449 963632667 565108337 716356839 93834480 922709143 784697277 689784215 273561776 682235956 888876807 67349446 499282390 500686333 238809221 275412653 157849556 695570154 111563238 540383989 899313728 488664452 149390298 416319372 252186664 761629753 995528108 306328176 685267675 707950056 574016566 54228008 270903516 6225000 540296120 249591076 6349735 240249828 995571413 568117366 442857850 40324345 304700498 814156647 672315773 187504355 729113119 285499919 910806496 17841139 949575592 154497648 240796585 919666264 793176825 341747434 256769807 756489828 540027951 483408061 126133695 513159961 282149063 440935007 453006282 789666185 189896610 70728002 11550817 671087246 107969709 514760855 81484817 4417448 2966821 657802721 670130126 7050959 27184839 612463282 759989620 392942453 828407638 954948441 220776682 100942402 656979903 537028415 982006343 792959638 461134435 993377840 99756775 808834962 572504209 267428086 930817943 486217920 1960002 259340136 93823094 456565647 663196746 906442987 417887094 681974016 855374233 327086839 45368525 209981867 715916366 379241960 705339571 194300626 30667644 192634371 506462508 59839651 234629591 416342999 59612106 993764450 80546945 854434206 738705373 614723214 293766337 922044696 322428419 710974360 744636295 10321483 317762049 180384789 790665652 929763940 961317076 865220127 569074405 538376549 63340652 802458244 78185396 514987310 257522176 58605872 840781287 280843018 343032415 697121789 760590004 353572661 805237456 804513607 35276693 660149587 239154493 351409547 989538430 231276155 360411070 663781532 535359267 175211017 366387787 648316050 913206482 565166170 904175483 856212516 467188396 350549613 631749633 746176724 117203040 412832686 889012319 378691765 957054346 17654815 503957071 933316974 676606037 4167050 756378596 721973456 186005848 11314136 814649180 384308331 960805746 263769389 268222982 788947731 645164728 546276436 631684938 376322751 212479082 918116998 347909901 926768343 106299656 703457949 263299446 316300020 832624022 822618103 778804145 415909309 312568469 226491063 828052087 496930888 582115131 240499311 628197352 938718953 879788658 197310442 275191630 538848690 604975500 8649971 184992749 839172621 340801688 439496955 393714168 493731253 541002737 588677905 387891185 901597191 453178232 590558567 268267587 324759312 923653580 63505719 469089899 174224787 125925729 28998768 315556035 86603157 388162417 884391575 788843654 110346148 856071950 410851268 296578664 823273219 384258803 980404289 884323566 400543202 983739945 419732606 320169671 925121402 391207712 33951483 145004905 219427325 886415685 96635274 149334691 231552478 760383688 425374840 553966593 38338967 413649686 49894287 974496844 302348802 997489092 607168982 994829403 951268987 886419803 866172534 932311512 368154583 860321128 954622644 125472283 938045322 707715721 495569953 545073498 3834214 455646833 344654605 31321635 868403527 292702034 184208546 320489187 640679466 199396613 80225643 162244199 75193726 788715384 931465442 722691147 663212529 680899089 457841342 711808595 502727215 422596271 819679661 14432103 142174628 313973666 772337863 386211241 271229193 342115135 422684811 846868594 369372615 667932220 581940739 839943326 224165170 684795484 463143027 846708605 5168308 796384253 520022799 565404296 370733741 852228272 944347528 445177220 984971810 958293263 438401828 449829558 101023423 261399326 423396515 620141587 780543697 255179369 253282186 614753257 784497287 698595436 441335796 170024426 12436224 69590839 743499891 366370059 615007678 914293893 13959400 517747366 633978414 245780272 240626584 566135550 927364974 533126104 599880829 105887050 981598010 850083384 251570781 827986859 235133144 699072097 708245520 949891669 781760121 570429290 359190271 709032040 198540787 714197385 882705536 88487564 477858401 273179801 257059667 210439192 939099631 423007412 717930901 919685242 521867174 592384188 454527275 114086449 956826578 289597588 448557742 578072940 929535616 8051362 232671667 955236790 622586211 641699584 700207644 81031519 992381786 720008900 867128623 985430617 145959087 515703298 93332683 866708697 291552446 261065790 291068990 567409263 635373445 972961426 593406387 662062214 273654558 61200953 249502646 810766125 955127379 2965439 59196595 48302180 873982991 823442120 782893139 368392134 673529938 136005251 743938355 179479952 212115262 283856065 967038251 347322920 130070696 642514174 303824554 510555944 511119719 22119925 778812222 910470067 812990415 840566053 517496260 815576771 634968140 432269592 604581837 89741787 574807217 558865755 814493010 379389941 463100185 696880155 761718390 815861825 846411213 279403638 946377413 419386566 662509523 482156493 635376080 239542166 523117436 843747329 959986435 13158920 664151385 97195861 949874554 987382790 421625797 932042034 497008018 536847221 716697829 215791770 150748434 837461990 635028187 423944911 641498002 502789115 232112296 119798007 362722908 587650566 25434795 37967677 673741097 616513062 366404009 667199865 895227097 526234819 671697366 136807250 21350625 654650144 815621781 287007894 307822121 649769387 634935540 436429929 758267926 279562670 22123775 414246231 364074610 769765760 237147105 779075793 801486002 623276315 876791159 465521319 827829336 644470163 816112194 411607723 591068443 296631188 566930626 904686701 528850561 72673806 390871195 977761586 481577612 892530380 984656230 535645731 607021023 112998951 511704572 798707565 409496089 277389412 716309173 215919161 852846310 51826221 626963467 404994138 940284072 536171878 169747388 949522437 901689956 701636301 989914940 552646036 258751214 753914660 132278795 361970999 571831316 827530439 259687867 735110745 295785740 908184770 402516205 404969011 775845577 735068942 728719482 86372929 623519978 122300112 531984426 545408988 404316117 555075825 594474527 83332137 375318976 206539917 510690334 753503937 155078878 255307024 305075379 973937422 663136661 565004918 191642401 965516093 890576631 610256881 377926420 784067452 474206123 533713623 105128987 398123219 545959075 963422967 509313927 212122866 804928176 164232278 966795332 383617428 966919843 845568771 737051754 241731055 238387443 953325694 527743823 480656601 17895648 694575604 875035915 515245872 15206639 176005759 967049922 306234479 200292259 202796936 788386828 134981642 501865559 244532370 652481781 128510639 185115859 361905048 614652158 476853735 560301003 375900528 318059636 106800101 981974803 288087057 950090685 603401224 422280122 564964840 932653730 396041518 416261383 834425153 394656136 356392411 204717120 479127236 601122240 186878156 734437506 951927377 69774720 458761682 503166845 115004387 447914581 80626368 595265709 579648054 308680237 193482062 691214442 138621861 324858180 803434980 531483443 624142342 478484962 551431812 825718757 951855740 276694230 658504808 675022213 580226733 639900278 738364950 525608856 514425951 105737785 274931268 583689672 942856940 49298694 296222632 220948852 596024698 976040867 422248379 390522572 343810551 390433076 453732514 823264135 257168994 932106531 419581726 402919900 373794594 449051523 630087665 794922128 645974130 481642448 721814205 396811516 207831335 232075833 581938600 378872985 223254983 898505938 22432417 692286415 700646655 389066473 326435002 22745561 817061637 610315688 500949004 691860018 40228928 966529932 851168525 497403403 818257515 830824844 394129782 731278502 737093261 501305578 99463371 371782502 922668551 431078967 600497028 243074423 768040831 719281455 189309288 385940891 158482796 222605742 762183313 783900946 228185283 906970407 7392655 175651639 939471678 415966473 868110070 446021451 491161306 66778929 366040200 465489927 789411705 502134079 196890204 143288150 842809050 71865475 734917710 5106189 245511080 374923042 43658262 119002456 946665965 372324008 469760015 704972826 380743739 279524899 633324482 619081463 645215443 829964282 746414849 635164906 91534055 20964157 156340137 71128122 377030273 100586529 160074731 721756846 799204347 110545789 66638383 598176977 959338184 290863302 543862544 995068107 303266200 152984988 640618125 612673751 243580268 658634720 459116084 718082772 56018587 663312382 219197513 614113923 90756127 713095334 520312895 982689269 939476236 164306658 272563863 698792872 582549436 952559445 138209636 854288757 943021391 536753451 200991501 469558513 91534069 887297986 317409647 415207215 901294515 962984966 322966707 964087046 528187486 20668520 1667172 433170359 455009216 186656463 386289418 265035359 689796297 592612926 290120329 86934686 494340582 792125703 658849875 247876132 716124117 292960709 558352547 141972574 853053106 698323435 234145075 197347177 350558761 518755756 173586179 845120153 345685769 54953904 524256140 525107374 661258755 839079580 858133027 597106232 435046634 224667062 989977959 769005926 494683238 981005474 872472901 531604373 945909027 312875806 695406613 988501358 566350893 859480781 93174279 887800121 500305379 656017469 255090472 333034187 493359853 429755091 537505115 849637882 526544485 939940755 451574757 55798087 948542186 954545467 512317885 503914896 535988451 193609261 317329994 344299237 664903200 738322599 219901171 635615537 277772616 892865592 20040960 543996997 488647962 433015025 314771553 734505907 807271993 449321567 322872463 696562718 671310167 411899341 212738095 23144365 16866546 588582556 752569747 222440138 897910953 766688702 460233237 262990060 878075734 780078730 122311871 109740884 38717495 56402037 580391274 850825079 228687543 748241130 57506946 937205797 489758672 808435641 902315294 970209818 780917137 772864633 408388381 286301648 776353827 764738346 167349161 940720387 548342216 62939861 689888254 893260098 703578486 778986453 533898625 44821306 407892201 344295259 286483374 634874472 833938160 351826101 144201606 555351426 883609206 22339519 371327627 305040728 906497309 392567954 142403809 497897600 903463585 602427613 732641998 43530149 428163396 283693770 895462234 471987174 346541971 437020579 942685880 478046467 654045488 378639319 775729099 776314759 374782115 407296376 535733381 529127122 343578583 521119817 807190424 48035818 454227714 763360796 29285117 652142160 99151775 194539898 474702253 470709212 481234035 685060950 674665653 924137787 872210555 199785610 686431434 442427492 475857374 820532782 677960311 580553700 338535700 599164035 251289052 414389453 701791431 182226345 783466220 934719378 203947237 166482393 957560471 698690733 78290211 31447398 836896000 528189478 603209982 344190395 674442338 173436362 389264597 962421503 604928209 65664001 415283831 958146675 490778509 202748643 883686803 196238790 569034457 79200932 995861605 58625010 28192278 788604053 636754222 802583810 565610192 309928914 441494396 557951420 133000229 989424593 838050557 476744879 798921550 422889455 121264745 211155137 831161868 608620608 110200966 984696301 564007330 491829751 714155397 868416555 511302295 648264764 655561821 69687517 336330038 254869718 730966890 738087644 120484843 537058231 208264785 506425785 193729175 296363085 877991894 81112522 733072543 745521562 736954693 251725821 436519548 466056560 897176933 129458575 117396275 55583912 370863532 828389526 609336625 19399842 803793095 700686060 486942612 198733362 961375963 35652028 678118567 288422979 79397079 179502544 419852175 40061848 541855023 300328999 405915134 309261017 985280720 990135894 559174369 363952501 961104167 859753258 782440705 109936327 758932140 438260329 737806997 552857964 772977612 211374527 662822015 330154479 774508805 564181358 733638537 756517499 183422165 818449207 967820109 348020804 680526310 622749565 414632363 59389971 758989762 131532587 128622622 235355308 977885526 400015266 729328952 895486196 865865925 547871431 550039436 778866894 73894684 833980169 368760166 933594693 189241703 911134828 6375725 295689095 280795806 139288104 646048818 651673628 909251154 116212511 552610779 991232355 770799848 318587315 753530903 666860384 473401455 212447548 380387153 939860032 138940378 586069360 715035516 114749982 775753593 813886405 367855838 183418901 752026493 108820795 808218117 260773806 721296819 455041269 104112176 802080343 177270932 978755228 662565845 195250098 229859530 88530507 495650292 186214139 230924702 677306615 945926126 392202529 255942291 859472970 293860141 940380305 435143040 864686598 341494501 891923971 150744188 733960554 71879738 716077775 649389783 232503190 996463261 285153082 402561442 666036105 642724421 337004372 926187584 264354048 803374725 546053812 325365399 122075483 687609689 546180397 748005656 723974752 445494949 81334735 198394293 311791388 346301152 430002013 932444283 507039861 481175285 752461528 541215909 72396119 532817261 608117239 471640688 721110883 254933443 631587492 509479560 426416555 266472715 819295406 660179136 766259392 416287321 949079227 130693113 643720115 236422633 235559149 173155001 303677813 317955965 592499501 358530409 351783537 696239366 106300217 287843176 726495117 831269682 48206578 59568190 530942572 376624222 507724330 698110323 489861037 637449295 100426363 12484004 919898013 791496417 65033784 660358173 787889077 584816146 231474870 47516937 765918739 70072109 368864510 472529597 432183479 446062296 918758268 762213614 232973358 352191574 109664484 698605493 150442394 945424866 336615362 932087221 500636062 891288175 779022251 205459640 605587392 775034417 159003103 941902482 751910013 844417109 619579254 149232683 248864892 610388261 389084640 308867173 862318913 758989473 153015562 715569216 861820773 792570238 560490112 616343978 250610170 30419752 612216304 857451640 260941598 970931016 506845813 481383815 993013907 167362285 858152402 651336803 798690557 612202252 425669822 16545482 389081718 839458180 509628502 963752231 175429854 853260552 671706130 967061088 486561816 494822593 868138747 706791948 914516933 809428489 919703691 520163697 588493976 108005511 250622251 244683093 152217765 119678450 834290716 411564261 31480300 784401107 584291769 402051835 473919313 43115631 967148677 356669282 162798597 457295543 736568141 366439603 682727417 334726632 646838570 934678382 966334638 324340461 619581501 462752854 160619740 218481625 904232022 500195547 533744872 975939284 533079863 422356873 681252205 226572744 677179761 766579795 202605601 113911063 28567515 364402532 68210962 190281018 194031176 364651770 800683251 195760814 465098728 298864035 796650840 250254181 325444412 644245201 683898752 392230660 142862684 853837181 506015063 920451462 712115956 706559393 993416682 260583903 493081022 602215516 156944424 10973596 578824097 828675045 26404622 481416582 411235035 891972205 213653286 744870683 947848683 23166266 970631143 851563650 822978183 917988577 171938258 723958687 196411098 673783708 624435702 604743390 813931192 549936472 486778206 610929296 471422406 833265042 179753601 170227223 825098622 151354960 614354081 504749877 563938387 975756940 431411549 571170564 868222329 296395282 897873524 229452835 743230522 885404353 761660624 451787575 206945945 831183017 204637697 578162959 943956433 796554706 308309192 338415928 542326962 273040561 59224307 969799300 362115529 283783824 534876756 27252030 164023106 622093933 420298604 823021878 37698610 398808353 158127895 460444510 721376252 501068232 467985396 722083913 914943075 700951232 169828572 37450738 90767641 852381237 132593090 15822911 73698341 165909047 736504547 314565682 451555360 788883304 222889340 241842244 636059255 495009095 586588199 633228942 872045666 934694980 266477810 567787163 674583699 630982581 569129183 31040131 637167148 797027942 504240510 848219314 159413794 552844137 514734474 502985661 835527980 661106473 711318800 817407475 295572719 187431198 586954462 234885424 213180109 710662738 258034138 593811231 725234642 593701349 402941345 54390766 707760371 203632738 300683179 297273321 944031586 985250003 54728019 189715090 960299574 81983730 615844922 591011648 994533670 254346871 407986019 335278307 700334153 719191630 544056590 446164933 871974255 44761754 821850356 69431445 244374016 626587129 289266996 828442346 206218611 360123279 393245041 109208884 197738320 668063982 603367411 990654013 266768942 297218001 535071617 621651017 306707221 873312936 33142300 622275715 884413789 827160210 719865295 399845634 456827273 83417277 449458545 840456852 868366276 660901392 827637638 836528058 968870472 799396433 567478096 676799532 945552825 781513667 944956451 513814692 760195688 101670867 81174439 893773067 524386159 234954007 461559282 570303383 824674672 874756019 585114711 260955547 646696737 938243142 86039553 477173857 41344377 82572296 929608299 609638627 9022298 570962523 462933565 847799375 738662306 477555783 243873265 651093167 777142231 961616066 407440166 836827987 581579050 827597759 97459316 784698179 813258041 654271216 797249659 400048212 471401030 304325994 103648788 138564763 990638091 159112502 494745354 245881764 223868175 840854175 650469892 124732016 834167764 740466821 350370105 93803376 831116322 246866821 811592280 789717342 961891486 945065219 872670724 236968173 365592169 612535076 989426127 259820776 801339835 852132887 96153954 856012374 660444841 908338379 517579207 361048631 744114253 631985104 579632581 201827995 308517460 173924232 591821874 943056660 192503329 42365776 858837286 349638213 972100512 561564196 654285549 77599887 269422112 749598584 593544801 175981741 175534638 859720743 541108469 127214073 613169969 687776234 925553392 942389652 852786716 388038201 502350954 885126645 297245406 836231326 485563498 589463553 26554842 205033518 786185499 332822440 620614759 155288788 913778637 831490100 898410173 134075917 703359811 496405103 377037700 42770661 219636216 177862538 852090275 481915370 876148598 947359564 321163453 908951825 956933810 769907883 362911247 361911147 833814744 230577467 459947403 309447741 660722345 820608069 296497376 17435243 176542200 192086298 589029926 252861311 470116958 58394259 630106313 124158312 705802364 326358442 766063243 976075183 100409835 965946542 484025516 638473749 416205186 120662845 722579344 409149127 99252941 733141481 142490802 917905713 491692480 341984635 884522501 710396350 619962165 582645116 734257094 948150409 438929756 87130209 273757385 512099042 503871535 575132469 334289281 478567872 874051904 586409539 25568297 769216708 799468289 919709637 493885429 517873556 536781491 849263632 611120736 154131228 86709380 504889658 345822759 180167439 755712840 997560589 844064352 132437639 660917923 517027219 615015388 996669157 494679093 622653862 729091257 502214410 48814173 130334182 879106789 337428128 666956045 734958468 39778821 618102651 577652596 949566939 99847805 766361137 170114172 160344860 459592636 320061886 818827562 992372848 767404136 285548334 326323740 692104474 291301226 586264446 684930199 165993811 343680198 312844785 773459669 1798146 588706142 468702849 296283391 659605183 900596098 339754489 321597674 745321297 92632620 172197993 71809971 886903802 911272764 225969505 430841124 317128813 533405062 645562129 62901687 589334313 891667888 800628375 418988619 236363990 728682077 887635440 564625145 462940350 542661365 477141402 938112054 958952687 97633753 470178915 490955218 120904737 160236956 977778486 553438772 322830509 842754840 805608144 50207955 656660139 768382138 673442296 30861329 704102388 257447626 144792052 671166673 490795320 59340418 822209444 70123840 767056484 740819352 874409667 74210609 866149933 974733830 94135802 517381997 495617642 678714487 757446431 509470920 241697375 380605360 676036951 276663468 243497514 348041670 189183327 481682146 292528874 448787233 971129186 475073509 578756370 948893066 665234374 819903220 878825950 685556084 730241366 77084002 150233878 772308250 424009188 654263375 695364325 82905530 602987301 895379683 439586690 165836560 447401028 286962655 94863704 208781829 592388677 356151827 643065282 628742046 635209601 323322383 499285252 648003975 954910960 635972888 708285179 766309551 473274106 35974509 271685637 975716661 840940004 735388768 312523539 616851767 759204130 463539967 856611835 371718353 960137328 870289008 41333960 492877097 232025083 564136113 573998652 866855228 372992923 82987404 645104917 219676491 377130904 510531636 654139175 50072776 396320143 805291843 111514936 95341842 477608726 316405863 650733033 878715773 924771173 223699556 888328275 315179479 161482877 388298902 125206575 366343817 54268279 55002456 60444354 126868754 889365991 230964610 403688110 96763743 15917097 816319663 852597077 377698944 763072450 151046130 377452930 61819218 628826927 614019221 577600217 53477775 538398721 503185231 818980282 434654617 909717199 833043745 483751040 413948931 160204578 15102527 810879204 405705837 362343994 653866568 847578097 20414724 827424564 483709186 55251792 736644753 920500470 880563248 264416368 581327512 195153855 212713834 764323286 532052250 590961356 689985293 731945757 177726871 672842563 716108786 112833838 553496150 349397246 911427371 197836062 496396729 658264552 566231671 624239132 511880839 850713098 156902069 216505441 97905348 445968726 307633078 297256072 896573518 391963073 820127646 569071629 691981566 515719628 146934998 940169672 505519228 797123706 450813261 315959295 42370599 594602702 409222892 987360619 728287946 824772523 681454987 416193847 18879533 535016450 692450716 836454074 494580047 966909376 912894440 765685958 861404353 933059157 338868862 130772237 668935046 246840818 307552442 958627658 649548120 637134996 401925869 104887814 209756619 849944148 589899406 675539223 368582048 794528835 826878617 531415434 888664252 254498322 159714513 135558821 850552676 801749902 221864021 288265775 439577158 513715622 749923957 134094505 439266847 864587527 796082622 968820602 719258925 696489436 63501701 186182131 446659412 327846703 652604332 355343797 253367118 928855906 107683493 87122100 523835382 287848061 411755402 308036491 628598585 35053403 893088348 991818496 109667907 754602772 340295345 299935126 775998643 930128652 74824496 10799486 528967549 708205996 989222776 468254290 648636396 481196260 906395107 337751332 312945139 375322718 927602304 757243080 832877669 10485625 41314958 895673190 817690678 162244626 985992434 840642432 158353217 837650145 300213296 477252938 478782388 595813226 948419417 773673715 521979412 408263505 865453945 702136532 714685333 508297271 311251213 226668996 906502945 855369603 153628707 981106571 366529218 576576681 878420762 504059739 822965839 857454322 415022932 881452054 787744629 509486984 279763201 8705054 115657408 118504435 801588011 463801341 39523694 417748451 223567264 442199457 250261962 593672072 430137997 183756437 956070497 536827351 636411597 54790590 610940305 142933626 661433755 486838870 172376018 304619207 76821325 275814692 662358279 367832696 14565749 629109793 527455497 323628299 396719344 291668569 13478614 421939681 662699231 487018911 371159033 877991248 188695313 243984637 98252275 707582298 674139559 629177488 333656895 665263327 378716973 36883936 809320181 580468868 259593643 392009514 657473006 276536863 369725887 955263982 309379 494861273 35052688 69812515 377109063 287161999 820861529 60866590 706185058 730064951 539783268 11131285 909999547 904377842 720407308 871126566 549151234 676911410 874350325 231054019 146879904 623407852 690477707 888895730 726055875 130271049 129929528 778713690 848337878 841572829 663969001 785085484 599510219 893766931 740215399 340246517 352617209 534160076 972570811 283123725 492116937 546190772 961951823 680498604 360085194 770416902 235994610 343305131 832411454 760098584 686888348 137928134 330654315 387634837 435828596 20681023 301634919 406858853 92798921 600576399 186040277 401216793 640660376 752698058 784894047 91414346 841986770 593179722 555514288 88985101 199372086 114933051 77069221 1444298 790060923 881720177 6696022 367673846 259253478 210677612 953822581 493111949 37895473 483884699 824879109 276149450 561498549 355136396 894997218 717136465 430972128 246351237 631459473 660362223 743165614 835084321 854714932 145482660 864181771 572684602 681446528 623329068 938567764 955535566 422113463 688318779 744378682 623001703 817426600 649067585 596250699 223560338 153914957 230647927 416566710 5974682 829294376 726460037 798076024 103376828 515536406 991284177 997521702 696798333 863278385 860914106 692975902 863461961 174706148 556568053 530396063 664278126 226260247 354499682 838043565 215241113 728243674 930953376 735864268 4098101 934269498 910283954 705058784 429334943 75933559 751661759 510008113 292283313 327119257 906310409 834281527 271950542 809466213 567066190 434521670 59183614 360265607 250661084 205022204 328425880 329011253 753440209 106338187 141587402 710472410 862439586 466145493 929648122 37451209 709471944 799384243 192689646 990689030 969928890 40520287 796771325 91075274 218395473 411131544 591326005 286646884 698663281 891162901 521510944 580720135 546621238 229620020 644053740 513251727 593920569 362954131 513844850 301615124 172770204 825029293 928571150 46727055 724953311 585158227 49092132 455319407 362868378 731952135 377801537 874047313 377319579 573288934 227397387 836041632 262401064 122706390 755276676 194816628 160764798 55782496 605982354 380912083 786941715 436434116 133277436 540828083 598217515 953760818 737537768 763412176 743592493 906373084 930329391 956928262 856082956 95782742 665741045 274772962 361986125 981513509 948808188 977109103 935105407 723541511 361151759 330773973 373053816 697093369 760836782 789101580 174826763 834813199 722247938 577993675 61309550 841475967 754406331 347772935 581961643 618836440 124016865 887905983 87360418 68550624 525957477 856081975 506173345 247332672 14327905 160839048 661718027 805253443 189248340 535460218 809503160 525298739 30918027 638850866 673273111 139467187 346329435 38276985 624000062 511742259 200123795 827667405 295924372 71779267 730776474 207230129 634225301 397993241 120362607 676424201 745053488 322589795 116170655 652311298 128584859 724798006 32197885 955985132 745270689 238304280 338904027 789628106 846325000 938327357 307421884 461206685 570226000 419333914 891697733 414098321 416426872 313222671 68553399 639269923 747237469 706358675 591707616 354954004 10859902 481390554 299409018 750373749 425906061 759872697 101039096 867277732 308281644 403050245 132313835 794728633 105808950 868288491 486902684 616741721 752640303 763995188 508771233 235093131 772166284 196209251 920217187 418402876 750266016 420340990 188554431 365017592 353060705 63186936 78378748 977910901 389522338 980002709 342326517 873716429 874785095 452328222 423229234 483792635 352346839 806964550 703670078 652540975 507270060 38715099 153871792 379099258 992910011 388022596 328925435 959497223 923710249 564380581 179030719 537361011 541370834 640386749 626913156 986484911 355300005 220315688 617399790 716862967 330059902 772992953 135285783 42531057 564293533 435866151 889214494 421697496 87820625 951336442 131345972 458206499 626153922 853161101 192481786 991525275 948540530 112863487 377269222 667765110 430566983 514151009 958463852 886494401 453624188 328022492 340636653 458800005 617786788 474509034 582324811 952244610 461687308 351464168 517550488 637054008 484891019 417610955 916493014 230383323 896183495 749590236 686870223 462612667 159324723 282771454 796309586 424135478 190659501 164112904 132943586 926872872 94931009 508911119 168195035 534987071 218720092 891781925 966716734 371526548 299179956 511577226 279476416 250928 975773645 380697837 412046357 547678114 935985010 619356211 608982134 511232859 536888838 295175329 167711486 917342952 708293810 685260075 747758892 113440111 726366283 44089916 305123601 164819895 317669556 499302615 261881493 866964391 405664714 613506398 157305376 866583930 676333581 238181065 229520959 354854127 566266976 420975141 405800806 687291177 822439333 963650357 604843657 521370182 310612812 276844644 982760986 834830644 951036807 914526224 166117404 748566967 313399579 405521936 312130643 943592722 918555801 690121255 248839809 346730899 545373340 433001859 245385910 572957053 832268859 836472888 135454959 959787078 900705419 307091348 994209444 961318338 585780270 74643879 295681341 798751287 110162654 570860040 319892116 384571890 332835127 936073202 399028665 249542400 222860252 965199385 795771203 841753417 499683954 393568237 562786470 973055328 42780779 395325091 258721782 109561006 533179259 152708011 122232096 815450765 93163513 301207540 809331284 468806290 267110871 927855916 903998199 709784480 783195440 651750197 203143584 520700502 545235354 952474220 958144162 360702943 692017633 906363895 192465314 531349442 951228067 557925674 954155749 669830886 255954917 718841995 254889477 544999983 947335306 57536625 321166088 124381760 994042902 288276178 499105306 469739165 39404671 523449634 772026259 24835258 544031424 82539937 38317900 476409130 743902665 499602648 405145389 629483486 875187430 806636796 59748344 16588680 628252842 849164032 243744809 662651891 210759667 963341026 970439140 536747722 563040460 962643997 558916306 943408201 910098218 247382821 93622850 34477398 412368862 731086689 629266087 425480322 906550623 553952505 711822183 921400499 699825079 344297347 832722577 893815274 269276527 172172478 32073467 691312612 174803855 794215317 801348577 293705059 360140206 916156243 737281905 403633258 600441243 305104614 633770616 688662299 683705957 611950606 872307313 5923375 338462640 476055770 704893619 669785132 595304179 187881681 274352290 240675802 444703406 596079375 722902230 848377286 599719570 616730292 366397134 701275499 217879317 342845631 791030187 60027277 558926570 866234166 973205412 34141311 148240005 125149708 825947088 137236429 396210373 537851415 271081233 875444556 865626193 843617369 307864654 783216152 485442686 589627317 552881746 448238514 382608558 232911440 981867763 11948375 420651018 190222842 808650254 703994032 792895044 345167085 718180535 772947443 46142138 503018133 743081949 349708140 556297283 491614332 716287385 944255210 306319080 625899825 800417201 185411557 565905418 286864347 780653570 645674960 838636765 256391868 462752683 819113130 9030968 154921953 572937937 708001253 236739433 62856767 489510160 718759016 887006860 441015050 52350037 799755414 977335017 322801485 564416149 85479821 345917241 434387049 52809070 720651204 421814005 41622014 55923819 496526898 657505868 74853519 131856772 856435789 729539 721304981 736352194 515906093 691884037 13148552 432202764 121611307 366331531 703067862 135030555 596942267 894893154 493841951 485872065 419172136 77166457 226273973 512641175 197265333 214073854 337546982 254907214 422516495 536546610 126233877 835127641 559934964 892223729 22320794 601738958 301212007 882139813 168342582 993869643 39380269 484846879 343139664 17121398 490589526 445135874 196610652 590063526 298796559 877536191 171047493 705319936 278419384 954975542 154040737 632687947 454420102 767651140 249999747 304869898 618535162 885205659 919102878 431192631 720207201 978506601 914841501 818576185 694806004 494076818 827968052 161634407 720346985 557028035 806870678 438478798 23731580 517924690 604621564 320007134 607320031 842323900 924079083 223289578 696755110 377972254 994291468 79024557 158629686 959289585 16285152 707413135 294847502 255973475 233118169 4217723 519563350 18918508 735429578 135634431 362389004 788751372 938922856 32581776 408985637 78116949 626679424 795477620 144878298 333907568 950881337 705136649 285026260 444139108 96963397 392997901 321234826 2549864 786102653 826920460 899052941 465632894 88840258 447331362 219195692 688609335 323070218 419682633 830739092 48491442 882883498 799902261 375940073 352299997 630383022 807984734 18934680 468958942 434857239 824451894 23004313 216017564 461178903 217934336 67153841 733089907 26962223 6550846 281792128 710122152 72716724 817835879 336663790 618849479 441354863 966868887 254197000 792632662 799242044 636184214 251672520 128331634 909668136 159661042 668968101 35174034 589932872 717034734 743536684 956791038 670744982 121659924 318681249 111791456 82117508 56439326 68688135 514522475 724549182 64718443 135642166 482085191 825055300 893539509 553598825 372839772 572092243 906815811 112095160 968427786 729463221 809221865 541733899 897061672 535020965 829540440 955784234 920575522 358646818 447722679 279163264 208667909 30935775 505665207 699392612 322312095 601028630 949551436 256939227 945303230 726219012 897748766 326331965 720284183 905118221 496656319 997020110 119803853 224027630 647734244 723110822 117366071 194478122 750949411 568412043 611736606 932136850 688594786 176008673 786888600 639010244 907586499 693571136 602307638 20120643 891260702 639062979 965179967 16319982 412895244 238485173 558611376 279442651 971513793 350512373 131845545 490809262 650355635 474513440 181960577 578870267 287680132 613635628 534359874 893201360 630310474 254813605 102978535 489583914 282830783 443263602 274860499 445251549 492748166 146566037 403785151 618477771 811484357 562780865 745201909 263898487 695294953 899410637 541348816 101088443 484304245 22146658 519432137 724659214 377461317 717518612 102283574 252773785 387294489 348726223 513587861 580776460 93907134 429204510 959209946 400063821 213486622 958674056 311344844 931774590 632002339 33475732 455012761 325916316 696060006 175667800 888236463 553007915 861950984 282884810 58728313 474755351 872098057 162752106 151506038 696840671 110806350 358580336 867749264 399808977 913947650 906427843 188293285 148402710 190459148 805256412 15142369 350590484 457693465 446338092 558789759 376719200 406396823 747806844 54249830 445551262 507938174 803407350 265295792 355745413 556095419 900572386 842134511 165631502 529878447 551813101 909349913 840858658 157951020 969506890 501583338 53415985 698688519 376785200 745475711 75887087 971151074 819365265 607471612 502129720 602408444 826329583 866849735 974250398 842741374 907955905 678414069 271333344 226569884 430028312 839516010 690699965 191671681 866242474 163472378 837543376 438104231 334629982 231757889 869729723 22751281 379785047 338309012 365440192 346558383 21316315 92007920 866325078 926313239 256689511 452171868 916205068 734314234 729141310 562783411 480853136 599183705 817577336 618696808 588554305 937173421 464318870 891008866 199870293 675973184 641482185 345711018 966062737 131524535 912153700 212968056 7896609 873525248 402969293 194024001 114658753 671978521 633123748 487405026 42454006 700274787 68535938 35941272 714419192 319794997 219392959 589923184 871760892 273207335 832354519 318010625 501171249 130160680 37082632 442307821 297771815 317867221 491707983 781408745 645089646 571158601 170047957 610107524 148446234 741003202 265329053 471957316 66004979 51337823 896490008 103911283 911408537 911457230 647780034 874360336 410859021 690162183 240458758 814988550 364332653 290696013 776053826 100819535 872071119 659604552 227426032 275987862 279282640 606463287 264166789 252702488 412753254 273771016 544393494 283763777 720625736 116076337 930443112 826311224 24625600 432851663 523961669 373404964 895401562 17867634 73599406 413804888 747991060 607128467 102584093 74042158 841361049 78983305 994707087 545486406 537975714 213027740 305533461 218851643 664669642 962821188 976670100 634515939 879843768 773619388 340719702 294417480 192099027 219676907 841872648 420641433 54348334 150076414 368859805 762288494 391329352 699542070 168136215 319289056 537073998 394045502 12750188 173489841 409083030 914400200 814881631 113264425 770588262 841217334 818641659 859701436 174381794 194751252 153678384 884806967 23360062 797612915 622892268 942580535 681319673 146480724 375458525 172407805 281475626 5094 883119217 569424677 925607984 541050696 263920927 619168746 787399296 599139405 270371119 674855854 182512035 418224090 573145472 736861998 445011310 573676835 50902004 781179452 984920900 351406590 326204999 556387292 476201934 201748159 387665175 98503319 161536051 930826718 661245073 491068893 196996267 383185010 734048217 536274185 113759624 194847957 319676092 521721360 997051516 800436078 249116826 549895613 869378515 983815353 480783117 246512151 936946774 622843310 687439782 65880041 638422836 14054450 900687643 62819978 817662537 686483707 228409522 49608307 500262162 656529592 276116297 238921953 608519600 442487649 656342111 862100996 444864484 705327429 960115361 168162851 348248654 936087947 272287594 175885094 481691594 226921188 89326604 930815206 822124837 853873504 929258584 846262204 753799213 341062405 988800666 717500630 539239763 414891551 319446227 46141045 121579704 902222988 240838190 283182485 834359217 534196443 180373803 147932119 781264919 285794192 761808919 383586143 492439161 112415023 139210367 259547395 723710796 822175051 931928289 426171857 28578865 500483113 86658411 629192131 494295630 976992580 404244810 681321962 959985281 842844452 231403833 367627840 166487177 850732112 253992204 218752187 381378047 512745278 511595507 621174976 73889100 559544375 459636279 746417253 881054448 577636839 151877744 498385067 272258032 875995703 611360371 531571347 547730278 85498 268090508 535345260 731144071 84675377 7867680 635996021 701428741 687809444 456796093 825628929 9910112 377549581 728345261 656315974 245338970 508827946 767680933 51158044 540157533 725370625 806786909 942956821 510656877 236024250 386542579 373014994 853317159 655466009 845143982 49547710 19295999 952345457 418509210 85702161 548921575 233613678 252693210 842509638 453994550 55773687 308741262 741823077 250708494 825460668 399397446 130986066 340894071 147323459 122679078 869985228 946425631 542462661 150399665 712939648 323034113 35189568 97324919 380942258 685990409 372977070 22268968 920230100 519263949 21671939 633214424 372457716 925215805 813835801 949184734 254291732 841712149 569599955 784370604 336289104 458760724 99560130 860738555 851261036 472819733 400838477 948889042 396804773 177437233 452435783 773697126 839047470 680850404 320115268 626821124 497198103 821929165 145768002 721204692 33158525 486678274 979950582 989232642 867028495 513899067 129621806 644183456 413243881 70902181 240213867 748587752 29283621 211179587 201423141 746727933 159111895 841095088 572569414 844873226 836124435 738567436 949401537 790345735 169542789 242154154 533784148 304045706 84237413 706102256 321578940 872469051 571580689 617615811 228216581 179325579 145967415 702567123 979833380 105934436 843295826 705873731 760728736 761782231 843517382 454479878 435542432 827567088 860194949 48853916 153799391 63376853 37536317 446476723 556126845 133239318 395406437 201348893 995729956 415779024 460334887 651488368 286884425 805290662 851729873 365690330 131599003 282910936 761860125 457948507 138413624 437534635 589756281 25422312 417851440 208335590 894988153 467382972 542762969 151285925 228070314 189077928 762003273 679255367 577782705 411697530 861430684 305024462 606092659 733733397 217999165 535065476 653005089 94136357 668800976 59608204 928648466 240227600 334937016 704550569 861076716 168647618 829106983 567955129 967575713 172529937 886076364 601946364 20196733 662621686 870649485 864209159 490489091 742576175 237647318 659978721 496149172 150638658 784195644 906965573 56720062 587015523 635402021 733900848 714103943 14197676 757485012 820505542 844751259 384594013 336016285 266034317 968728073 96419199 995295472 904292983 75876074 265092689 199389067 85640781 753527379 44772898 589937786 116089782 669210596 611928330 380502989 807727521 526368020 719769626 754128456 108486516 826097230 895500989 641530202 994524938 149820028 167736110 993865792 262286791 867444673 109061925 407725999 507537745 1404643 721122914 801088865 743060314 421810858 20798333 582211967 202259469 567052127 332597930 566133691 838592556 20367211 311627501 46506326 623350095 961222742 974146577 86787320 961491087 454928957 621140214 597151420 976400142 639407927 340736570 46806555 189688006 712583560 298235694 152720503 961966034 54557069 96706772 346899081 949293841 559972196 957275529 763419058 637120781 593631159 730165607 507007843 286389872 194728346 373192054 164327510 452709566 693473718 977666809 844749551 661209828 3894815 888182392 184273929 743661967 7626667 9164485 574265697 94521863 591850844 365095260 301473689 860868753 942922657 43568237 809818714 993393520 241007889 750661452 227912051 232127950 263373238 840009787 685488425 825318659 15854154 348631842 470639227 112384654 29146624 808737744 111753441 930365644 394108115 433917026 185331634 767410695 691330446 774604730 239365437 136321239 473522194 874685385 444153890 946587606 412095266 586786021 204274228 659162991 267083064 178243817 486518362 545744851 615033026 386781549 850605326 920309253 323213468 399599040 764526839 297638952 577561774 183182452 654848504 594544775 671834318 772553806 308036772 606459530 530517985 968542432 969350161 993857702 691254338 209031082 11868311 222341226 112643595 421788613 981303036 805350222 601857930 175527866 42586171 446483317 434123626 774854374 725036873 677694267 958863844 19388147 172430595 687357328 320902517 753743493 587590580 64249227 173706561 73583931 32811843 900745686 666338665 203497655 236045960 837312255 41504662 977335864 144301074 532800230 507062664 587944907 351823360 744280718 984066576 223433174 889035576 408004103 669963802 872428633 139657816 187937457 621432145 214505328 391819592 681466413 260368443 724091122 974129339 608500 130235847 421168584 25199351 950606869 299836733 919110002 71834335 262660237 516438713 310695089 88879616 117790637 715829130 788529327 153163358 825567613 274023959 826165198 279057331 361728916 674049022 554069978 243057307 888080568 454789089 404729566 297839164 426376361 322154588 610522723 950009051 375550117 631853082 540101616 333966616 674874190 530067967 398098015 407676630 84329965 209627858 549911589 144128872 707215224 32682779 426011657 617882785 161853062 267646121 583535727 595376426 170425148 128193473 175217387 268402575 729371765 56183185 30583722 856096291 339451040 384222949 370709756 396663399 552123995 479637678 679975179 950690637 905995987 400858391 785764871 60146083 95402388 1457503 69095098 95906217 672220540 709263241 78670556 780406945 847886297 12901922 336903122 773120447 99630588 368288869 154646098 115584236 477846740 330070347 418036600 3557340 573396735 658882652 265576688 350674815 254074391 648295243 790709871 672870286 812706204 663557458 273563921 145204808 726163640 847789779 515306977 287690061 459282762 954839440 399041645 909980636 505042715 767272270 120489013 313385349 417621861 605924755 179004755 459971813 744625380 415351364 286575956 150883568 752657040 622175592 212869791 872955759 454182810 447259624 825645040 57307420 276868896 579502590 251492 850441946 968866070 205251543 560104763 319952025 633106286 339207555 886081354 84619343 39645219 202990846 716702986 66424585 40957186 360351000 652715859 73747221 164455028 500775343 330034897 910432677 638830744 152719086 383804205 793233099 151530504 71514083 862258644 202922643 647832357 322368253 182638980 64815116 65216709 131608556 168116074 897338174 138548871 633127461 724145028 65532673 605622241 961141094 139327811 42008213 182463579 451784064 207067895 645259092 510581491 84503148 1547689 29400234 546397698 682428271 40902767 494788072 351842837 347596914 485090546 330863259 558073605 939143140 784484897 609653323 234411567 194250460 437823431 368215307 868198380 978721289 194741200 748885708 69636463 890256657 791395508 104294967 248550842 723361808 175009769 916001753 183554978 406466960 249210414 992679065 241953707 453905685 467561836 824102567 114843865 721316569 718046231 785076196 548750328 826719079 63247994 718186620 77626085 846515059 815124323 737146322 484159083 332025728 375985312 318576243 298388045 782452137 100894840 899709626 69675316 973386975 675797598 753373775 170314814 203871028 347411030 64490518 569941496 686216395 881533847 527881145 15650525 396481138 581129917 879577632 836219813 21723546 114014464 437822254 712751118 802847874 643141500 230436676 258675617 604433780 573343982 539180617 376098242 225385688 93272161 718473519 587819854 230925603 376384564 269925361 844011964 554291665 908916531 681123316 891618853 286726686 124196099 425931476 731296095 83782759 842026985 649648452 688969838 326741731 775671189 455877202 838207077 508836929 498284242 325578305 250411597 382202194 956664114 864888601 507836053 110561552 77164255 763448760 553001309 72926384 787463468 877132891 117277826 648924847 959297147 546621184 695674350 703716094 690364508 505170270 439422320 770002973 414579351 815626335 489408070 888821588 924950866 469124996 588880373 566181801 917653345 994222902 265017392 448796118 624786812 712370141 468225500 345160178 481066050 547841771 412416227 494869081 763213642 717086637 816156591 951827181 383296993 965938948 20306358 158344807 619262921 927225561 903878923 286269637 556048689 464506250 550215846 321024746 550842166 576542054 842857711 293490297 640323789 290333403 670185615 197062328 878866828 939918658 590450716 404536426 381407542 245358196 388703841 445740533 953310094 528386497 882428046 305447798 710925240 510074181 873478909 962782482 943644207 850727781 840153998 235418783 804817125 210444348 732926098 492819485 469616206 997091689 480269979 208131053 546270278 9820522 684039467 253047617 3242225 561706350 802734745 761277973 984241190 715195099 459842567 386015505 705859601 110784827 298929735 602542251 188002353 335613102 173473217 808423720 447356467 4963972 334851282 832535847 460671576 905643110 186167667 35086931 484273866 487885779 775937682 916875826 647136514 367313387 416634025 671315461 204472058 152139660 778501941 808188018 493508381 193899269 650859707 979449877 533136793 341660976 914380451 87399972 179487848 838293183 384420626 542832415 655042155 359055291 650092821 866567955 106702930 984338849 964234107 935759103 875826536 451402906 51951604 158962900 979354670 109382021 980691372 749689383 638915536 406390428 165856620 447758986 573986080 618844637 333725110 617107509 360688555 616111381 248023530 106422476 509685895 584644104 207649692 640740360 854599603 57377645 219694752 756181210 452577624 450953513 665830115 939897853 460932826 162366909 151783292 513088290 328573892 568282851 416402735 321085105 828329097 27938133 980658138 694667562 672437172 792114739 271092215 236281358 238365521 787912365 822496164 846092609 195137688 25862031 836513693 137371987 622295520 320633571 819955528 863231582 220297666 190788050 798562717 961374447 773252235 909272674 877020065 859044197 529357467 730623931 823908102 843526211 771715412 47207859 696615763 213701387 392721305 804376017 615734881 50112986 688379241 657429471 495058135 380440540 207614279 669971747 592265844 32839516 184240520 394817657 839609733 695912116 796930075 841336070 523326022 617948444 319364125 982735432 996014936 156069468 705201884 937477055 183159143 750313243 361501172 598738662 290364852 809571722 943784002 399734191 508561882 767870422 784832801 928304285 224504552 110659377 882643495 713909416 425428926 893581187 423738298 539276413 92609973 641015543 34550166 330993818 743389274 137761567 422074111 314294811 352911571 73199303 187665095 203660389 149770567 146861371 845529373 245418112 419485597 941214919 171607025 356838582 758191190 579243610 879628957 889550865 829049092 251902960 643218103 691349372 778497982 279751217 502836742 850397069 87533300 894040402 740500856 116323676 381212684 207213947 591403560 557979230 178838709 484887461 392785615 725114218 306934856 198348745 289398295 422300927 97613089 769476694 886803332 799214959 885757056 87558176 570128846 419591841 87510980 112922756 128675590 768602921 909912775 337770082 97871096 495659046 697813152 672849963 920795654 825220279 423843268 135957571 711197547 452734741 859198304 511313952 819028355 41362465 175061150 233233611 386244264 331370052 247155160 304641552 614881870 784290280 380463329 509380617 429249509 892071623 739469156 953703458 888188910 761602928 939604690 858514632 688246046 735991830 979685195 52729863 121405871 575418794 27263595 993783049 866617807 162914587 253578657 866950780 248052699 327153375 540299663 124150212 146364798 352501372 980941229 682758971 11455454 994992175 816496284 547114213 639572921 726167613 550448963 542262148 847243569 746380954 220864660 472805777 320336954 78422923 705487796 941943145 562469711 415647962 81848283 59892672 343557222 792669171 882237553 950164006 974612496 866377354 162516989 693797580 907897380 234360900 395001236 527155828 757479350 676113244 427102729 112581520 873532981 652270967 290488434 131431131 453710941 830547068 384423862 289783550 96613431 645918785 534045428 630286140 247998592 287968309 41004524 684467665 529070354 589940703 769635020 743792635 761637989 44320847 659366224 180750193 58335628 585898012 351111094 793343388 877774426 773193784 139331759 88896332 307482861 668953224 33424216 308413596 327188141 355157488 299931118 965394894 72148776 372480420 992273911 43260606 518398805 705353496 883528675 206874929 495487547 833381188 498585276 22928135 382194768 570649828 195568753 953902172 287317517 37583114 745618605 66010445 859204169 879067949 913714985 3577933 390099950 224434606 247083430 88538357 919105730 805799361 75576715 223686448 250992980 90627568 675984597 512658128 904708168 878486402 937390115 815489136 286296503 687089240 235266060 707376070 50885530 82635181 639068535 90974431 421011595 143845267 897031748 874554126 782880905 488251893 119648421 692272005 608274891 544838733 323372588 860647200 314200537 405174822 821348598 387803327 32691058 15981266 862056088 680185168 51337628 667532342 801656358 109592594 820651890 450518456 165116190 193897193 880963210 975104982 568802490 22240825 524124730 61724321 892227997 74026304 120478931 72927450 846917135 955734393 316713824 944570414 456611314 229533549 356508244 626890797 813573043 370174252 692899744 122623415 806855187 574258862 15809724 677253025 653455148 184334102 77348719 154613112 708754484 818734954 704145248 351248638 507053709 609186395 944410746 428288082 766620368 571484361 671093463 488995697 282372900 755392441 643383516 111220809 208467300 528368352 854613684 262105487 335499604 584940390 310510242 799855788 113818253 804276076 58081948 37150318 649486145 806950497 72735386 753240331 48216229 415897753 920908239 384128625 550446966 953016855 388259555 130565653 237476364 895947841 671149520 984161444 332997936 848643141 263006052 206335026 341998263 176766778 964985681 537307216 477530820 432303942 703728725 159764826 81603413 919037512 990606103 819469768 900745389 978599036 750696904 616673213 327941809 263709887 86078792 110666198 468613486 62023241 141405349 698921835 886182205 119267894 394711436 913505020 143665748 806960159 701485800 696304556 232870327 723067331 558576267 755651151 267846925 422259868 197662852 786957143 371826830 247713721 62052290 503654290 567898107 657699075 338878331 787308177 318763420 139615430 253717174 168542962 986184208 292553123 190993605 936448878 463231210 337360191 728100204 217413926 325877742 877517174 259989883 550887561 718167656 190280892 821795151 977399735 32378380 764115706 499063576 189951228 553959554 41342407 539357886 143775704 328923564 775231379 878690414 288979971 234436919 880145157 819108712 775969669 52294685 600144027 443879890 145903530 389061900 530911921 71556734 29716548 821273261 225695077 341351665 369881195 355213422 478081011 584459395 489331138 102995443 29986478 553647453 431431374 654686842 68108751 731239358 879879514 829622198 164833252 615240144 545245691 927540429 532195537 518615557 579799775 564632647 426007958 322058836 811631399 975769758 372666522 293957663 660607247 887149665 824489481 349868033 361121497 346860126 604555615 987784974 214321864 269147300 873265691 852044856 61492982 813775242 435670897 170240127 896313091 321764715 644458042 346678066 396324570 14466562 871514339 180422659 143469360 100680585 878834264 442980765 687155182 329140712 453529309 585210888 240455964 106968018 148010377 90074143 471246439 348844306 564915238 40845952 915156199 772005438 277500177 93693828 743463262 210232331 840529677 728579955 78882723 154361375 914578676 845048651 799756229 544058391 179132106 512367597 201419991 400399826 331641583 589822963 812985167 371426460 278519583 186485653 392099649 891287156 537943700 563847066 230571194 813081447 52915637 819184301 216467631 848444578 759503067 923244223 160089722 605807282 301825386 975796167 304121195 988475011 809247301 880538108 43594851 210342420 391216583 468606043 980906119 933128430 528340706 982601855 206986822 398953911 462882211 417955549 180910719 383135409 947922222 82538130 315423166 608598154 22035534 612504076 962815376 867667659 421494047 672781632 610332178 521737800 33178873 212510394 134270138 225489277 927960732 567715531 561800878 437872314 676783751 74865864 101041869 954731991 799099105 875406711 885655168 560303256 644484673 985614749 628317653 772344749 231647288 699685270 360329809 895508894 768462394 306111390 593711575 903049321 462029842 685485807 511306894 821635845 907201957 165149962 385243091 756868630 512881253 345796862 561923724 516654340 847838701 624447105 788353909 981527044 873248354 484853944 432064699 198254751 436641426 951615048 904332462 345230362 375181038 332991099 497750802 639670670 479249852 40940572 673636557 924301294 761531488 321394915 958261245 522412946 988402706 729253760 270463019 431957749 553125210 619607243 221732108 526797291 910226825 817040817 464417800 275172838 778535242 667227014 44532487 736579369 441441366 687382562 287521097 135169194 283667436 861803792 965294813 217951924 583681148 708064568 51086148 913825202 246723119 181663201 849804257 662029282 85686662 450429453 155386648 6362277 723030484 91881904 575814101 174073424 897677028 409913162 329777301 682100527 473790709 738241129 531587888 147070301 397429353 592984263 956772179 831665036 373762236 774102126 738727853 169755340 122673272 994553103 452653848 574463149 340190082 767225406 891743627 618847224 151094369 742865317 38116722 274607613 653517179 161680170 263670937 216882254 722746389 647775795 657944305 891126661 148302619 256421291 980908204 70556576 177706992 101577551 303164098 478471635 775306593 539054579 939927062 717973022 883411587 975809753 691433036 190986548 88849610 33708599 567891867 944954293 637762667 14137932 705185064 997473193 588253773 319669384 41506964 815869990 327500001 924828455 7582618 497819414 573461886 238397401 740325112 146261392 817584585 329590948 186541463 481659375 635717290 857409826 225162725 133159853 45425827 748634374 880467055 528032953 892516080 445745240 315043919 76534630 664916582 888400532 928714430 659994327 116043669 538958078 258373753 903356940 513015316 514532614 969411492 341631476 986806881 987688112 542304362 776618138 676636046 18281327 254501254 53710721 525053218 101565761 605712141 466787236 654618179 26477520 971672302 95200181 183928008 647479520 468886679 417689771 420988521 108118699 508873356 774507 137716826 347770967 391492328 62878299 14460803 754080597 438490650 329242841 633677025 116350038 89139208 748700923 842454470 531306892 327091737 817116808 995590264 744799051 324465202 858488445 778342332 75513420 968808538 13214311 35275464 779778157 607391371 249816905 874831874 272196292 99365582 59244088 557186384 968406630 645160029 879906787 636293166 510452003 854840708 752680496 714619841 451020103 529445471 862288155 305450226 178489846 899124235 375758548 29326459 483107231 355216009 245101767 686329319 804773436 468460819 27151058 899341570 46152238 620206779 75377000 500364782 583028201 733914688 362213433 27929540 250526988 932052309 11081933 13013166 41930109 837038942 710860332 879089993 583108916 741821757 346044178 257774566 166264356 956368241 352014245 434488792 602904505 633477220 663705423 935166809 153486881 327237526 698748979 649071594 368006554 657901607 523785950 207670 818188906 890020274 371021718 604463930 154823801 70267293 985454419 804293616 953232646 775407591 775729805 201724631 717871752 967987902 389066875 330923922 388260412 283158697 932666630 216048123 102611773 876942144 944226208 606218975 148707363 396381819 931657284 501206573 509872908 627652505 63914713 771187575 126039367 843792358 711212977 198037226 38812709 715237531 151149293 632224546 838486970 79211449 948990008 503961330 326667501 225114873 663692006 889377751 402659962 341354199 69462770 206035387 829263451 484292842 475591700 835507659 71639117 328453516 951909405 829309173 313509529 204772841 182125930 799227821 190007365 195807295 514875194 579327590 197001902 810305812 511397898 898974962 90303611 239516640 743070301 105221694 152605217 583647232 968638339 228164671 635054979 800778542 130657358 846702284 987827091 33222496 423947812 610016198 626025335 678536966 48898855 211393740 708586962 648155063 150506373 851996996 786260110 445239843 558550626 219539239 317903458 118579095 432876051 863740915 729388138 651795963 191711358 143458494 933463906 898717618 506303548 536982106 667331980 358327199 891832146 399659722 246286867 882340379 766928986 263013102 485635228 704285345 679521938 679783137 784403005 496619835 723651291 578142290 604179326 434121783 865329178 671701238 801434988 331538914 751617522 981858851 971598642 475440429 489997283 619287918 423778594 590879853 608198824 138576596 868245186 386443736 940060058 844306028 133271155 32751718 468849831 60232641 215510383 932158193 125441097 415507020 676819950 754853026 820882620 460565436 663458571 668795845 53934662 199007250 172123140 545384495 466627488 719673625 544876996 591413758 307815733 803209771 996717168 32770123 483042739 766126594 773287411 651351306 49020801 792912686 593623013 985436877 150335305 91641571 70422763 302803691 661972276 111711258 291386643 652746600 131441563 88375243 770721829 721926944 188807340 916213828 260257558 549390022 362136714 426252801 820056510 267281644 399012750 443072255 459191921 426372459 803583723 222752120 421174332 712331793 173906491 474404771 831121054 969037133 749057872 929051105 164144300 496578181 562550918 561920920 163106552 627782888 514131911 878369402 737661945 215227286 351094533 343178993 466776455 43209300 168565900 993212782 30845166 275260969 687494530 695792015 740638899 490313960 556447837 56435913 666989239 47995397 658614294 63005541 211262320 503781824 29562209 975146754 274207630 636707904 763108824 666622175 124783303 575318349 9813266 961668579 405726442 288029316 224208769 440324660 53714565 121865827 763161770 391655615 194346680 128517742 581761531 50941950 213682111 565190589 860002088 572022704 833041206 552367756 842562894 216152190 586664134 421364578 416550403 23103648 788387028 651398356 963210037 839814353 532831666 200065355 513545403 456592610 681280010 880893202 253792538 608714526 959239684 140556130 596912080 650172636 251803616 432949849 783211182 671718510 933485134 418351105 863532972 857080844 457824543 202811504 278117277 829198678 481760999 165417979 394059303 932181329 121365936 355094134 610134675 805326501 872914286 804679540 758369986 777431704 958844877 443404376 790625058 38234903 119332699 655894234 450340176 135374743 322041171 667536298 872481976 487054898 577011643 144591788 765055885 414433124 836371827 763458367 649976923 436613109 212856583 875598479 742020685 996894304 154354538 448397312 341504467 509096600 986967162 80360463 856895435 604604855 697001270 6369005 116472920 171485854 297705370 366410138 73828141 819633320 40265288 525983085 56097726 761662780 661016005 372356816 455717994 618490564 747553562 548693711 333076852 536541009 496605458 902606592 901531257 506327252 435346454 397435963 792113646 39130216 411726676 617197958 168455657 988001453 571739404 492973221 351202227 383310425 344154326 574454756 60037699 839579502 781540516 70059025 62248314 168970049 164317379 693635617 176778249 492952386 291779401 289824992 876754591 985792163 221648558 564278031 170820061 726564996 281119440 21946458 69394757 108635910 215467051 527026929 584191226 80404631 105825268 101174428 85245321 50656358 949304482 242809397 228297727 775019547 497090847 962690096 339494574 561467388 134261076 656920564 263430122 980971246 162917187 169789213 251093092 821818215 274590493 759139720 860761953 699286764 905689893 538184206 976965844 303168909 209278771 226599891 930585228 614923018 861335713 148194889 555802636 442495942 513598065 936224238 884107008 908872857 676983142 442349414 35511290 503194396 662390774 233591593 282289893 673661232 305445086 542639537 957267150 31187430 562508357 246348561 950204190 752424618 986860506 926421226 256079966 768815765 129465064 550244633 226354022 728593589 76062004 111709676 619709654 542005407 657786596 738942831 444813995 233546872 932671311 494595693 112640594 319278014 943792899 971538119 892490169 827152432 752414738 931258224 234635882 955965773 912415421 875239304 623857652 429244715 9794949 956338561 54899133 566646232 98840362 288217791 390039030 762398746 868925929 830615455 709279556 673876860 400762733 665668227 489945600 786889375 860031679 166354944 81272378 988712016 16260277 877206990 99870445 447521813 725547172 801088637 917895903 639251794 124696643 352506719 59824294 927076615 39948679 181451123 788130612 840357483 880044359 414182476 524812593 110651358 50343710 48131310 385236682 938301616 355417627 188072981 709984985 759600911 639396816 841260816 612243273 81692094 78412435 281988711 175609275 486725553 179760259 827895933 266927437 898140393 528377884 583076574 282238979 292967285 113169240 852074691 173369861 753277260 756235929 401100191 116005460 574355180 694867420 150527702 104976315 451939122 439583803 828733527 689110781 14289988 63300845 959334756 940564570 21527210 936227813 880426858 783373646 500642618 249767065 584615349 340873851 111444909 309224066 392611723 954936433 309102845 250093165 917609783 299061318 433743181 794847190 505682570 851336049 346129598 365798751 495404686 260691943 177957322 471208323 511605430 542685584 689154349 371392087 903957248 890597348 75393333 885906337 682350211 363213820 764639145 720779665 105609494 280681235 69980842 839964589 356153594 316574119 320741497 491999889 589044412 934793691 355293696 591123091 882050858 608622316 270846144 514476459 556929429 55177821 627556561 647203768 833471028 925442324 900216056 997281860 721100808 781265090 157486927 867570266 199080697 740568157 114664703 614281671 386729651 322294673 566838216 957819410 111905219 626308165 832118255 473201701 9259482 238415058 108579987 577389687 990911350 340708120 507714433 810170362 273749292 463298335 77623597 431550105 831196112 595815257 45272397 377762268 149555448 358381867 568807487 912935852 344629579 944125177 114414378 721657125 327376744 862163982 786809213 316487974 508048142 507523234 144314352 662559413 486508926 765991494 845390330 598102195 884526266 812676080 294075881 877344563 867789453 395205835 740591337 321802885 983020226 752796704 27645460 154024301 662714574 509809584 249084446 469049238 393478648 617842422 444069467 823440020 928731796 283999043 262245078 193291698 833626667 608685676 414649771 645089816 604468882 653507480 669348402 174250340 264692325 552901412 939142298 357534959 286592661 328257692 384514886 572386154 798541179 601624703 896967048 479377854 159090688 824044619 532638233 490927173 683288113 625759907 69574253 202048052 845459401 305226519 260946635 440940628 497307739 381843355 705803869 895425145 149435827 183582072 69270888 123614219 643374353 850433680 306105866 232440309 423873551 311514178 808002960 415780275 791242039 578500894 606370626 574035968 548185311 529441493 113790789 65497379 117315524 254699022 567562833 242535186 564011810 639468847 274185210 510478902 265618537 587179414 382955012 670268265 550907639 537485070 553975093 723136376 644919239 842836968 833863026 955472634 849865957 447140541 63044975 755245906 702269547 412961799 641600719 934518463 794971268 62547268 411285671 580543742 789707522 251755682 112113711 107494482 355027970 704662235 865201789 739072981 55430119 769940634 749205879 217541348 562928996 737557125 838071339 412545644 91051099 546887074 844975557 281710640 962468923 579096828 342768346 630829996 609573959 737071876 332194889 354712084 301373480 20889839 303242106 465794616 380272218 507286722 927430483 375379865 237224181 819195902 237969838 237207813 811589605 918105575 653260908 393738918 992265634 811180332 149282705 817219906 774499988 805663618 624291153 220468720 937878829 797843259 433562905 551742493 838697082 613994354 462232637 249082721 73639966 245868245 107266733 196219080 479300996 306567407 991438398 151351137 384225363 411940091 425524948 522644352 409726518 194129064 136767007 499204575 688321522 360917524 225860893 308402118 189456582 846822227 783989456 364841499 130240637 571317354 630823934 876414133 430287099 561904207 520436424 39316435 217691065 953894598 848673228 204053558 245227170 821600744 906750803 325240109 446980496 706939573 146700343 3525206 662903831 359557167 801974352 583960769 70696991 816451774 339084738 844860315 420159450 466810401 427606641 464911113 452730829 947090439 660709953 335784136 632559975 222605089 557610269 471472547 380659847 483978726 876073519 66465524 203086010 568064445 472822041 894230648 612795386 333857774 636347817 845221801 526828216 520494549 261324614 468963876 655592350 282797786 597739498 734565657 446053503 551585029 600793914 455972274 811171357 626543412 583637903 117651086 382200995 271896186 300430887 812757346 440461021 229961894 932468510 435956567 782928658 696907237 592964364 679682056 545482161 618828208 31589192 2128592 757206562 719341276 778733020 162926544 138992423 88875256 954784792 269830533 231927926 886032755 987966385 550443283 129184590 579343195 960180739 246218853 559695345 519072062 971373262 487799238 258400098 488555789 962349909 873783484 925927081 556309693 801878747 140019097 634237049 996436038 683871629 270956184 696729257 111305400 352962122 705447537 723193290 855621325 362650043 711486171 710677607 825368549 689273289 216675698 638351907 984750699 92823464 564966097 529013239 441858811 659830429 638068064 193475190 135146926 943793640 747229815 666445421 553543196 924851898 982125334 696757636 761396662 85344715 587550135 227583701 426834465 644313011 698728480 109055174 681894134 82785662 861217000 518348241 451984210 421917665 128608430 669244825 647527300 380563677 647803580 48456662 741787777 398237920 665241386 753145819 901450353 910067290 224712660 525803833 323244133 421272042 239322532 259350307 281485776 560443445 218040478 809329912 586037535 432063372 776211056 851086149 63939535 171655245 41526032 421693068 257738797 658731693 754020020 865419820 818125723 691011407 762132563 228580273 640490686 586100238 664233503 482925010 533073763 689185833 619535555 121391659 291037478 553476858 242137677 390053077 481307044 402243953 710161763 766442946 84848290 238585293 198448834 386042382 407804168 417213477 39998837 386147476 752491891 761614708 615221166 847477243 405999725 510635990 34097468 890875516 983787035 608620518 755161750 254726476 986885432 375249944 820703224 932664255 990338003 764456407 405413136 955595340 601113157 802449895 913221550 720539168 540705077 673543120 269307229 550119231 590600795 709068051 327183716 278060502 458019448 779034102 767669974 899106258 503105681 285777829 512700870 417459599 768972695 759877219 444908768 275186461 409835277 896835618 647189128 860898064 735566699 558739410 157421034 493179591 188976562 517470932 441778248 470806541 673455977 266533599 386113349 444724094 1962242 286071603 915751913 681922059 490349659 845885252 770842148 303922290 861759849 353192806 534789140 803815662 850652899 249416962 541514794 676917650 419845498 393315715 275894268 472528331 31831492 276119157 652204672 15954025 64155123 365458788 296044288 862744012 455023542 411403125 289334607 620239988 865782339 685989007 52693107 336337581 608079088 86369164 854659709 683256671 66643758 695937412 808012971 35010344 846867033 166147791 35309379 908109832 935514798 78125027 226367561 554519665 975416110 906098429 859123135 131185098 225225927 690230227 26656270 319712758 790639472 939417220 898426229 276713639 895714007 777837735 17863115 737024206 732218329 298895210 246105645 766873645 354172108 377881791 616529183 793936295 255997124 434881193 529798079 350005377 421678611 226728026 749066624 272514742 777076733 77660115 223555014 128033695 17166491 437329484 833729965 148376824 749975768 422123023 608370916 78062871 250078860 443365844 522184279 919644535 447012374 74964937 728686172 390198494 755045802 558091450 213778434 940062611 93049658 351754419 34557219 978136494 298853388 954162223 965690300 338689673 962122297 459265791 694899563 562109251 516017437 275022990 937696711 358801090 289893173 432663080 132215666 686110678 992108699 305254129 715283554 747984129 129508214 550185194 586955541 21206442 564340574 579650543 481093823 259153831 144863195 169595515 625871687 221229718 422569176 105040569 172562867 282942966 689590870 995739831 488382092 923227653 674853478 622852131 639904200 97903751 82258741 37631258 208744702 938388133 497968533 666206557 24752930 36015087 731942731 233569215 880610740 93468185 356754761 772550282 540327381 947121140 836197327 218969982 537931278 790405193 843141683 744343636 993903244 837580638 575344119 247814877 529214951 565343945 518116026 337154855 460822443 755520938 810682005 314800377 696083887 861116353 544269609 893055909 542536809 143340595 952578163 66775224 626280183 937566619 277338646 763080671 590918226 123166968 668212795 877548792 31168373 780351978 918691131 571605075 890557594 815160807 255814622 844358473 398135609 102996304 210037182 108968016 40644331 121575439 608011857 389180506 433635653 62994681 486149864 29095376 715845657 18472492 591268899 432860951 7236176 156042442 83175880 307779465 246870641 335967790 943905397 310365819 118863857 356341139 845502251 768413476 88734336 818949621 783282137 765493258 642937825 978692857 170427829 18280660 503243897 641017831 692118336 201130564 977159709 788656495 391168247 206776540 808058498 448622522 70075901 33119763 290968997 481483302 63854454 853730959 79904877 63640933 438234394 832546905 85515579 232343393 356667037 46864844 15520272 378824312 508469323 349853582 647353299 118746259 857083465 972655739 419127534 813417113 616717030 489301472 393762762 326699666 471463207 374248813 565043123 851686251 348388184 728511803 465105714 485360765 942589738 331951354 65120787 512714051 227110472 702810411 436244304 387035154 612461161 313421810 328287026 564465352 458346648 720553941 368252888 221954181 410753102 871305975 9540724 809646991 223059308 550685218 796577440 347445796 462597759 116334178 152915375 229162960 152218746 819028633 611850382 961075761 555466062 105809496 773672225 951880277 784867880 459523848 596985498 392988585 76328971 738970125 209379561 260945865 369386782 492729631 865277945 985115932 986422636 691531478 611404919 109209344 600151394 395665949 501986817 128426884 210335940 85530383 75720037 263577057 886838944 983867243 672624880 404862474 237879469 322764487 914197576 440997935 167355331 494818343 375422873 458948793 301668678 732455231 298533405 22129275 664743719 263916912 870974088 18439857 578206056 303268825 788025592 14000473 768866829 218440870 280404120 27913860 116526674 374738400 175157095 38319267 250421771 833119902 107327445 472327822 390940157 957666883 112156212 466735021 265895805 664662291 673100149 655962332 351483533 454477227 196943126 408114354 421099802 906857072 657083032 963286088 412749847 855944157 981866647 268723895 200723020 126558248 5184182 701513677 216511516 375516410 615935778 137661728 22603166 599828612 353796935 802558492 410811575 766775697 787260497 808027485 954425704 355746184 103748132 113713344 578369031 706651742 266236096 814853272 346129178 724941032 111809241 616158123 928364720 893391483 121970528 890255849 960784854 588273996 885447511 872262337 405380985 646915889 522922951 373887243 116675831 260301048 341009576 643846594 331483040 290586865 556967106 464787024 639562255 696165490 720956332 713652969 443487770 593503694 660329571 923290121 705367316 202114998 901378969 577640705 819477222 89938651 800139457 209220684 203419714 533275692 859752637 872219902 116484481 497890270 924558484 302885707 12686337 556722310 423894337 296672015 295036221 656517149 900433098 390898909 750680908 240885738 716241700 311830534 794461530 446271798 446899700 563893169 595845958 769401212 928118400 678300134 747265424 575652126 62534425 386482125 165752701 198036684 590330999 630627448 701187225 186035013 423362966 253718056 683353562 256555758 482320165 88926732 564139463 743313239 458786872 883256609 458958162 603356635 717464896 345639615 388882029 830843898 982304346 926687611 853082312 494247934 621972974 430983514 807507918 175819575 871116779 829092813 386747492 951810491 23994852 579186718 87390398 99966521 944389257 930509594 356913443 183673763 987152990 110062072 940452609 897183889 87667970 90803267 883266477 334836091 994376577 994579542 325514788 313660283 818468925 838993561 424756900 659547766 776794917 862114219 82107626 213289703 623429784 716508149 401440276 309022344 95284139 44551341 917146145 897332632 928334758 653239543 476055482 756611139 606081126 395079953 697380365 47246952 128502110 188001592 606105154 8576269 896242714 939529786 686764826 216740666 618772898 209550854 623473360 846780117 730757437 439431018 956416405 635407869 628957048 517090057 963075666 31284636 65638893 159986178 675868942 418950495 622670849 334753370 791662773 501936084 35707846 752090628 205973630 978479963 665942860 658257020 976157210 377690482 667467686 447349407 569622476 301857458 229894921 304816310 59156288 793947946 605225759 541045429 910429748 455226650 104326449 48965872 772164010 969138907 118806870 169446249 340449908 864055502 642484645 265873857 962060818 466670192 75435425 518352307 182453687 394128170 580170829 889910095 211099744 29761595 414080191 879032086 484936638 828218895 480673926 647779291 878440054 552916016 311065817 814223560 516991666 30606232 589991786 281017294 974113977 649285085 249585530 715747998 606251500 506446439 359128410 549981731 305050666 529389579 109068061 338334141 838884256 601986686 152562157 677437586 874448312 464785442 484437746 727925919 449894662 256204030 322146094 504396910 398540428 968617002 312432709 768107466 459705431 779928638 506121028 810688279 58577672 937296441 815571841 996125698 509409693 503593772 354527584 113006127 225803225 121307566 665857322 52666267 931003627 946764132 572685479 853277640 777255228 809186665 746360475 34580285 676513763 256460264 297007973 225696334 217336980 63115110 699130210 567538939 623009877 987759820 790886589 654773892 320218270 468370888 104777906 108773500 991636919 320641814 702464686 52637545 737554859 163787319 759347363 351105274 281212558 575651716 264791978 394104512 810205447 960592277 820929379 423727816 503030191 510283240 963613111 538704919 146759483 843025031 876158251 679076268 909815939 845906803 201966007 402451421 117139884 369408410 177212125 320353864 249255354 584758606 978677641 643634697 272338917 758396218 243839882 153194890 164427543 625740456 339429125 429194408 164339340 793505752 706122228 460536008 939826364 170141929 573476624 54671725 637191858 347647848 182919497 754678543 11187830 539128204 426842263 186009325 100472307 664397089 82575256 897484732 816141822 457144358 238978451 606443510 918069401 520091893 897424453 260011074 335028113 749591713 650639573 615924618 831717361 552947161 608382975 777933794 682886539 565048400 909573359 774978584 663248880 918413383 514386436 657265873 681234544 193741951 470591357 641373943 972662544 88278669 753436238 768034789 743583747 276380952 483563100 353420453 237999260 401966857 879268545 241866610 646124743 934088089 241075499 695787546 54609567 823009648 642078697 129661558 934329644 36270464 690070471 88201928 285690899 760689901 550743949 756912047 194530618 495740604 111229471 74172589 29589953 404307565 254848281 959998278 413033025 860441068 771153837 628395987 207557969 119445069 680735097 423560578 435666542 716168309 177777022 275185241 576670240 648884434 634623426 983448130 622731684 329199988 326930958 473577306 710600727 281040840 11544118 543644571 181990571 105336725 909041217 565088174 589827600 337652005 315302216 896475354 919220373 845872003 564731902 835305460 540526384 571036362 987447408 444048485 71740197 294441057 919771512 893983640 328988346 969386160 650587988 233831190 636524458 43128139 658371931 232226770 685217623 626208696 844944286 298761236 433035739 856495471 307689193 310725426 872629033 339089552 523251938 896280284 6279967 624488392 632979209 666187829 607449026 189217431 414141700 299253883 670535455 588196679 188343523 921270186 680094155 509839306 104730472 135864487 452114383 853529866 537449831 947701168 167999094 281585280 175546336 663297654 931962322 951549994 36571420 916201519 798918333 25371367 274193372 574867203 827125858 410357721 852792049 638614581 498627049 927634218 312703027 976031159 303781416 830010466 507976977 237906306 864087977 488102869 657866752 272518631 654856039 13984091 757569747 163782901 246321389 151618518 752638734 924476068 610938013 243845270 27003901 26947623 854157959 386096995 281943086 780204430 822080391 980981848 148782251 356503899 161571415 317225844 716414479 412545028 769163886 234960543 688940049 205135779 572288222 161333865 836082216 363284087 375622825 502149227 884774892 109906739 838398970 440706304 540405428 375446124 335894304 487001906 732909882 519727872 322827098 959254823 111098769 149652112 681370547 896047100 769489728 220103410 339538702 294015928 934962954 986986956 789126540 218255288 864791052 188571556 972739521 325322099 476850595 278415818 68020148 441469090 794926170 462713937 931165654 422502084 750158137 462840599 913444447 525445502 184299656 531066867 963597990 447283014 203501030 734369060 730575779 736670299 407386821 806799087 82851834 218279024 480165795 638332959 636308587 413597445 621493029 543755045 649574873 364866171 217376520 600011496 601344492 845076432 326749581 621078414 776691178 405056372 628176152 928431349 477186 211175657 36058025 80859964 577373102 977687372 922663030 859078593 400970557 29151723 644187063 312319352 371543494 917994949 598495249 461514127 117732115 458732196 858629167 937568044 321553546 760461540 180819069 639067094 897213155 599204076 804381534 197491281 52925391 62643418 105280256 662241428 891874216 802472960 209713190 32574154 108936796 300763192 123617003 80975423 373407456 176784570 872567211 182660486 639157520 522741261 774418651 976256456 965337305 692983483 70515034 84391708 151721005 328150203 351804693 966212423 530560403 355914698 425427732 947233344 923215734 93600698 557103014 852514201 905810332 24615354 442410361 390606031 748638193 364304674 85621191 537096360 474621339 589883015 611291167 323391330 869498338 424777608 939137161 905594019 853160170 261663946 243715069 325271016 638865089 875356660 20078764 752590517 453224626 867510431 726915439 230620976 277049538 850758028 360494200 546914981 876795781 667482314 807997398 694843191 726932464 628223193 860844090 968230773 142105524 436449195 857414209 509696835 836549605 2293234 426368970 997921330 766427228 804186428 689996947 624191072 988823702 172966854 986632811 991039953 373232748 855416642 427262149 409538699 785584991 70216716 94600621 152797428 511676320 529487264 459781071 715791381 810795867 333197502 768344092 177643118 428721634 958052724 27287432 959092129 677587657 756016789 444562831 229731902 264078683 190943668 884977848 980244658 509216403 144089913 872860286 133991557 884987137 725013205 476361241 932126265 396738218 211083435 624809313 63768584 772226245 221304483 389562887 967428397 78694437 848559688 712094992 976986966 609161953 395249459 822405886 650352390 259817045 133907230 129370371 808041922 112042871 782363747 801670920 379407983 892764687 173963431 501213502 304602051 742036425 680398212 445362289 899210855 940672125 380814926 189668175 480476732 384736878 526979509 148192585 343678 12139122 930196136 396099756 188260776 842496391 406203830 102762202 576056943 511182060 604483868 56625887 311097702 564410714 585838002 82165602 89550536 456141779 531907953 202437808 905031138 969920039 417528237 264220978 829202936 966401671 953768159 693512188 927679429 368160877 307985882 682687820 41676442 297645248 19787013 507766654 683448048 695683688 728682080 394957482 788058667 735406038 438257801 927114865 267984342 861552988 240090380 673877790 428381781 567125931 686586425 295484184 956292357 952976297 85241164 430904784 932409959 17869805 765654822 77206035 887030086 99487073 63074494 622345433 351946902 399481817 630007426 867838663 371892746 138744592 872207024 36472801 212373454 48233534 392356605 40401919 994016927 36143908 787618465 351844173 781620655 111044752 824911254 871052147 840696976 261025458 121032909 65895930 936871200 25833005 7169633 782759843 581297621 865333868 148258539 754722013 749017830 834204258 910003974 399229629 134167571 968956245 237132410 567012827 796568672 827840362 519900471 844196956 614013399 224567508 529652392 747754818 240090394 552524946 221120364 598195416 859027167 387280284 927756942 11059190 836355226 348120046 485288134 729047270 8688134 792426264 768779864 825755204 964690596 345730099 476720703 691443935 527417495 532412996 859964210 292531415 87029673 4113637 612819394 387495410 822692793 267139795 651827656 39898854 153082760 96870589 325338601 120573795 92672699 577307322 157940935 781133471 383923138 659529564 890010780 387431163 436015874 525105186 492461564 611556906 701215426 147714904 395727952 155266438 311123495 356334543 746685568 670135129 888059527 822276876 934179537 665075957 531647831 868047956 136046854 145146327 753399289 908835777 60327188 12244252 494869953 909861166 389238982 974806867 760358539 152852637 617325462 513881488 142877964 667132264 475216865 512433799 231475308 766107711 945500843 174588312 491223629 624460317 787530976 513750976 864651154 218153470 85403839 957022162 678080142 816232514 604082864 358053263 349656729 133230143 675959494 860325825 580497291 943311270 319855454 195906645 953444167 782599979 900913271 500326319 399201662 550420060 428398518 660355571 640501433 887939681 364983465 168361682 686456310 555705546 928642642 548615732 237902245 378437453 718265208 555606983 221472945 392831585 246145266 36604600 466448357 177057643 544948207 594522038 591265722 124000693 142431618 521519138 549932718 432786888 961175541 502603998 910274593 681537366 465615420 633587770 458847142 407975165 413547283 361014913 758417653 274192379 91534464 944294949 445974415 866248223 741078576 176550672 178487567 855997715 841233601 947442565 977061709 286424064 570495592 179237968 412062591 299850873 870171864 164120327 459420315 820217817 592128961 710998147 61484860 76217148 861649968 176610139 74518614 452604655 425177835 952953312 73610601 479597102 853989632 420055196 116239043 952622574 820066670 311529764 686602242 949167890 949463795 248675280 768790341 957506003 762193551 456929209 158196455 17800155 981028403 698072986 288754197 685071636 873743496 887641286 848328965 658451381 853290971 797262704 354316582 468701057 579027004 30268305 242411334 878663235 561632449 891196439 137166921 905252761 491562017 709563138 577362931 79347958 273263141 182153686 145741781 72726384 213385793 158388264 799657280 222170853 534517674 936069811 453907483 122770755 397644995 786043252 852966197 893777054 353794786 849726415 19792137 666427536 618134685 515487486 455895055 541204126 476129213 710529294 842882751 627202294 676139624 812195522 204879208 781545201 646250594 944882626 233925184 77314179 336591569 528096755 528830670 656801348 359526591 686931338 728444462 914530235 725193792 345364023 241799097 763800829 526439458 363941937 473791372 603593677 366563951 238754464 661133014 682293917 825292968 582245793 301557326 459603507 9497545 685123786 958613448 553328538 241818724 760966325 863832708 911263646 968640274 69299691 831094106 702983298 556553383 290801163 894595372 13274036 445934270 892313541 175204376 725713135 128456726 138688700 388246369 330280159 149677425 487068438 551133407 339435321 335412014 313528914 894415658 316898157 431230674 445353917 112392237 353496469 60906486 404166047 626770437 536123968 715592923 286007996 865236982 882126696 164466853 918815509 215773919 621612374 639355592 699261713 57067952 124984733 332856320 767588521 376073421 98842597 614674349 697097646 282314713 769058531 290732593 808735307 635656320 246543336 131066985 926499820 161713335 833336024 975748578 490137200 279906673 419508228 694917793 247583166 142856499 385798348 585155073 52315624 455597742 355036182 76391969 179552232 803519577 587639255 532618234 186177986 306891714 304207735 356453272 243762099 26157059 13999884 49012953 697261547 561866120 585274452 55008807 802241597 628822581 28117926 623500053 448272884 869070020 977792839 395076419 766291658 773218806 208018588 829866552 172391567 313222733 196402709 255075332 297938661 127739842 83469772 498107209 862590310 276572462 281510174 172598389 939210269 795849374 559202281 496496174 689027947 590193475 340125239 463157172 975366698 204493313 140269633 256740049 816754611 162037369 902508792 649123456 178565049 708673038 146313537 161191396 708955028 88362840 858495971 432853192 581522141 416847290 382133297 261723841 973508976 836912990 535254517 627087439 173392177 530002761 59605762 787124312 803603561 214977822 590297919 2843603 257230933 840636206 650135024 768910546 849282584 92924530 668541146 635600800 319912549 86904203 532468634 752592723 752832520 53360966 722354239 948206988 479536007 643768164 742786984 996717168 530022416 269932445 223933024 2177976 337002976 317107499 752925702 385556397 911298488 791983657 454429584 285955876 951473277 280140706 700578320 854654262 873071473 876456070 889884049 585411122 750292116 536438739 749090205 594363273 500899558 148897756 22021144 892713245 570859063 70443372 945921778 390509430 808734534 926073347 138638076 968161632 984221195 341423181 550103482 707316941 258088200 742829267 210651907 963674508 253629899 475858367 805889392 854974208 444404511 844237884 116201165 513733674 157194346 549388696 700031895 401363656 707323966 625714829 694377820 79699164 569497846 246443889 418305573 3859268 598506109 911267614 797098496 149118179 782275217 566282581 612607925 943042106 269644124 319059464 939732398 288460271 495694885 582070467 844915938 4850455 332815868 361054878 650836466 134006095 55070012 891494503 303977267 681512914 372852286 864413939 620368143 120842480 822945594 861859669 473437643 241446280 329553928 922276741 402508327 314304192 25988880 561255686 551038614 465080404 577929881 958800021 743547279 91641184 446491970 184931592 638303303 504671075 139396527 143380400 879799529 504378060 941787532 527460907 77466997 64939645 722833723 488277334 369311478 719174793 805504629 53678282 2302933 735300129 849555166 806462531 286707642 903725656 562492560 9063309 361243348 277623972 470804090 697403637 458986590 132446054 760823198 720718474 16272354 711127846 137433262 618509876 159691760 728412964 921691554 571498667 262697527 244456327 944853279 367357002 210199298 72243273 918368702 20544042 725996009 36539881 237685192 208648123 899170285 400085615 416172973 312314686 277520815 170079450 406858061 562720737 696927932 317057246 817100629 687299606 324681981 993070126 472815644 872910703 486785835 356923859 835067241 272488165 103644410 607484717 11983923 425923888 115565669 655760595 434650130 926304796 830880252 876180198 281305060 502167592 2390618 62611522 162677722 969099077 543227990 807081892 298502527 127279539 339745970 212354944 670962134 255000402 50510129 631393801 295016689 804303588 263972965 960580805 738280995 229246782 791109652 772118592 166319365 900408597 21460569 689978773 549231938 543261169 558119195 242365181 304569258 206843941 911353020 919216599 460241589 951105836 98230133 457969046 898246739 912807292 618580740 172010901 185888177 490156009 376027070 996615553 755984375 965192221 981136678 612795686 366036645 62542993 634626458 919424043 622755594 187512841 453289321 695716233 833038116 30607260 958596835 281807002 425805770 979370581 238091111 443037996 906595755 500771107 590898550 533873682 991325810 715298978 73689953 519616830 99151099 622892919 281841887 870229558 731605134 844308960 4241931 438014898 377795622 364168694 902652442 428251320 586030269 299796437 710337572 13934463 376451171 289343383 636216073 340013758 202642785 446607413 269107570 580892645 256603471 148914496 431121439 88950837 976887139 619812578 119596409 708274846 395080561 10508840 551854733 36789452 144571541 210652772 787314314 841240689 979776877 581149439 360521825 287549496 28499037 853190645 135952849 987794780 158414890 396317901 645034459 986810753 667542137 381894058 744120829 975383477 900669043 837953149 471681112 401949720 940935167 208861611 422088046 558420785 799628261 932428617 980185102 388923754 743150912 866774250 126917420 900316093 29944026 987552257 981617924 64522273 887459768 80706823 101911204 710980505 389004575 392123441 747111229 920490402 697244189 18672511 629122365 240352002 595762634 517317210 89666859 30957907 398485373 988862089 218181707 556747511 848757198 123876134 727101422 426563140 527149221 976776248 372792068 870133743 492173406 285382437 469567300 559968257 845854333 338721969 869758462 740130232 139925560 220724497 197772128 422101696 410752536 385146122 241940168 579264366 961559402 634633686 262640752 395297845 68818715 818896424 533481337 333406922 84941807 308902627 656238589 675883677 740817695 824964367 610773106 692762829 2545682 9168618 582910513 96958639 424895537 127245179 815517216 960010783 922538821 806305403 967394624 134320583 951085438 680568148 883665433 991157508 158767146 325833841 14371222 601457719 859924954 302618207 699579801 206754232 790574300 519237755 53706970 365359395 23060938 110583830 76894897 19758727 208154004 401579386 710504673 806006043 846809370 827574065 25048869 376553705 242500666 729090999 552349027 891295829 865605028 817684904 665670458 189072695 697299511 235732289 152361078 522101408 639586342 986556955 733097382 459833755 942852781 377840642 871012158 676621209 630675889 768647283 182153388 939669731 464424917 289853717 361858247 926133964 798492645 360501365 812655842 721829535 3765893 517449208 872259223 677019331 269172341 382373448 288616185 978777559 876292575 557339611 392015522 788142785 462518049 512914162 380336004 970191127 521059097 977506583 238989213 591584924 785499243 875252097 593402609 765795199 386473171 559944002 970636559 35423391 780821996 585953887 453905715 409680828 341313670 965537658 343588515 186957983 461175951 73895081 733780918 220832818 349500318 212487588 738040070 502900492 443103719 498741191 880299330 452014741 205488320 950040075 783785153 862926856 629811649 958259671 374532718 36778469 357416562 939957823 661004259 491856064 760909179 909659626 66548227 684296264 331731894 253820238 430727562 147432514 518389627 388505497 240393686 392965621 595246964 764549190 838267336 401936795 226146728 219596249 393745134 158755494 18438727 179372497 764322059 910229085 352274009 205565223 713080039 213435646 468333197 38669498 760994864 880008426 102718135 83872302 676000906 22531425 513644221 430171247 728569881 344130235 251000427 185736190 466860961 913139891 477885093 104035127 752378097 585259407 562080495 954776485 647071098 542546783 657676943 132747218 502308006 954473765 121896413 779269181 400012507 8357503 500575769 77752561 100924827 32716231 917618801 201745568 360501205 391842377 877071736 636710538 948309563 62185349 93899473 480314919 124456024 879708565 942921624 688853759 674686813 242174309 816538789 468942591 26484172 937518330 145928051 371252578 411265999 227510649 610587189 425246229 686235424 63122981 908573853 372917600 950818520 253071075 383988734 965585860 894773024 316030170 647271257 830154563 819740193 46212136 864419667 78642263 949810570 377254316 318607209 565577028 960175940 27603518 262166992 828189356 899880144 874171674 315241456 882655025 77064297 166631576 375037661 595354791 822262261 16275877 183507653 559143395 929905435 149486131 62172550 76033641 550882966 906396930 844721616 37068516 172183898 618901061 980768727 583748883 492328986 126351068 110087582 585453078 422667861 79807513 70381531 17502081 309802840 285855297 330668203 857350429 360941228 986585409 287000798 651664771 189107570 590594082 445879713 785806909 30380332 162554780 410576472 623098328 857745518 708699532 895856577 603054722 822066371 388823671 579491060 550815425 676429268 372965332 184935931 779189515 632136143 99395915 221399748 904542808 548801234 206380475 966031245 334358883 90047062 95050781 465558112 18475616 225787251 279027164 603138583 175097221 719516386 484176023 179845372 244865790 445857411 408160136 865954058 639946050 223343568 778970888 472192408 814588908 5310704 660493108 884645641 248792830 66340839 948246289 84238457 733104109 323549125 260319587 388360585 169061355 254913 703696209 918445270 684674272 949329076 464358258 428516265 273291272 400491034 813034297 747802165 561001165 897795626 915366671 667762282 59225650 446033957 847435113 306374181 289312488 252278947 167695156 492837618 815391422 443708959 695675350 791211285 233148358 690573006 645614647 100651099 446608816 604988550 322226133 753394183 427919975 731130313 587380195 288350939 968031686 891843895 372609210 795728114 722691056 525378708 606986370 580550973 265653372 462875714 820589305 381898934 949070742 400510080 215281533 720341440 709282086 933204529 426751197 32721166 883378766 262712470 699646475 985292530 311416060 372354182 802444124 772775323 536311769 84748848 280972310 851404700 130648947 539400577 983723873 966065104 521865395 357858228 377479697 80188344 206041528 815692636 581401579 630765916 490821555 432233530 426292569 359580295 902363913 407288472 229708038 820554322 260221067 977406964 459846455 311395509 804886034 774898675 814220534 645361666 905188412 578258038 201312279 932117771 794706995 602567295 251351928 966779769 7538234 868436015 822417296 920870473 219057561 86362138 824889143 2949342 168391994 347343389 98912839 554680116 707855457 801901369 350242395 901371551 590081673 814899734 160853025 768111090 909650487 607823799 266930493 947428824 227639 473080662 610209719 959123880 468457888 649051515 367551061 783450011 540780514 829201269 512025494 146861481 76626959 966011587 325871891 313271797 746673020 735605546 127065536 541980644 214279428 36013588 474827229 212355107 804829433 721088565 325056491 107920102 238419487 926698033 786796014 262014968 803852953 809084408 712174744 616745447 849237421 463665012 438748195 697842735 292560876 956255813 400797558 842961910 423867890 749058440 43939339 890631541 112116933 150032123 430934508 338561663 446947405 346879652 509473859 387399784 774283309 944012576 268482177 730986270 843370484 902666108 828501638 14461771 618751223 121957602 354366161 704912901 815777187 580528885 517557042 307720272 626359661 124739989 655326483 12991146 650505401 201352790 103621403 704343471 189522218 825356276 654830627 940770034 926758376 815366120 88116346 355182928 94157273 895373524 572999175 529090176 257109852 348031712 617515197 179414136 575773705 612367214 439824041 53109025 361060071 541280769 74962726 470110956 124036552 578486196 50287188 834779188 292611826 404429840 312439184 173266445 723218084 755935533 848104794 525562030 689856699 4367705 886417699 646378145 826029033 57362447 404514382 303086994 528644053 54834678 215610316 609647528 67101059 44776418 629282107 867474513 343521124 867800522 563397531 13833635 822586393 899024542 708641026 773107366 679410870 542347451 49492579 443166615 776353303 775538017 992448744 423208240 427234553 269491168 834206252 346868960 121375714 903713217 488777818 295778347 714469993 870794976 638318783 956515815 124222699 716936184 354992813 599811633 509556250 707048738 633020798 23789209 398245190 333227685 943706761 630722098 458925387 588157567 15091132 367638077 362848116 915738267 4872078 945785034 809293606 729204886 399385169 443276849 107601037 269514732 937886668 190126722 621092992 162735725 364295173 318953355 716877387 86671117 325426453 896934287 615445968 830484704 173681623 524961281 798170285 334519717 219526075 651400987 461717815 477460921 726024130 808747429 831062134 117658701 868282114 884241574 508051678 505649575 631547007 269585406 837331893 655916117 556632802 133760453 137186665 420321797 738640065 485465306 902611573 207792068 298687508 453596752 249341658 862834556 458615880 759941972 725449456 205263664 769055581 937380962 561278020 631057941 587605192 386770959 153392305 181964139 228553548 863715208 940858147 72715786 425981927 819003844 659693623 130815548 806647823 81913390 847593855 801234799 861300642 878406197 512388893 718414408 977844282 338604841 274155967 288336109 647219804 466312992 704419621 684088908 48335743 648130513 890755569 9695321 528562564 740440207 742417894 738020875 697715836 698001786 379418504 464473137 41831715 285819949 290007383 716583712 188171858 190412270 914981983 179917878 932578080 884504673 37698089 84828506 551906134 32809532 758075378 660214169 240606520 781729323 452343409 149795768 611241826 48364051 851543962 396468673 849538953 95034250 36198593 562499252 813505956 864145712 501026193 848285767 722346679 730372644 856812308 601281937 334432934 251731630 29906322 136807398 730944115 498937575 443978770 876205294 319646844 359084548 595005062 13147665 893736267 61949489 538633777 721640593 979874640 200315406 350859068 457688978 569740018 496072614 278311048 64795414 314460404 639885413 645627715 76599481 836822319 61790288 79047493 481978649 790576407 779828464 907950305 17934645 731063192 385266306 982026113 569589893 220862627 940535914 36873238 351541479 52157530 395874121 56921418 158269536 272917793 806128677 216840641 320224197 356314363 36937696 507878052 62039811 130931903 566961580 546153151 463427785 234228614 545232265 997787791 274342244 818240745 647231256 35085083 836126275 655112774 145151505 733305435 655109356 975281664 274678037 429330490 889535576 348755355 353243010 161928801 987183976 728572486 213406693 231285605 10811527 771052778 803399973 80101123 733380248 576103148 130268976 63182475 726995721 778074617 143046924 391104277 206540928 765067391 828575008 564109232 706711119 396474239 962921062 431788199 643536392 989962534 474240914 736760139 488235371 334443183 392471728 929420993 743974267 614072082 889380637 625700792 812339351 22554201 450416925 374509385 430074095 969001329 785367022 365177217 704767551 800903438 836076350 269684438 752049085 838489950 581074453 761412708 547205357 389473728 82192956 311614260 627814564 611408800 479071548 887088166 655430945 191080847 803587297 512541096 243064164 296458082 744404714 398280620 824547575 958702910 177105278 168402487 631854150 258176264 638017210 427275800 632057714 219449833 797186325 926842560 115118733 962644974 233374294 849285562 836229052 365539898 997622428 718118824 416781235 866209230 808913832 664271767 537874333 239757152 273905952 219305937 566584097 364961934 210788930 831731875 647992593 834566955 373630539 339520235 575186294 363411296 296744777 81907623 959542227 404939537 548860165 850181080 824665433 760760089 622131132 599492473 332315711 440446812 567154056 105143224 248329807 477773965 266095736 926525475 233907172 214265863 471552637 238153275 39341355 175532638 519483742 426443796 181700038 707279240 16808725 97427734 446848079 75934776 995381576 979513254 49334765 757984157 508451151 65553384 994612942 937249229 77845328 923314620 606941488 368406871 829665420 11789017 45417932 501213978 605898108 852702081 532752694 30555658 789469073 381196123 761884707 80790237 348026900 496869324 276619840 637506919 605446415 300622402 147726902 282120456 535385301 38615071 882200863 324677242 207692112 396633734 916795629 134948673 530715518 429385029 442961701 222137846 899086622 237344735 669935297 991848611 487606415 539832187 46236044 527414407 577014265 661140881 668691729 248373109 143865069 885763135 140768384 955349799 255565325 21850034 616410480 383297517 416926967 30325182 34197542 290340116 498701222 935118252 743495634 86748604 134811503 431117542 22240740 495611481 404917529 414285444 513561391 683251467 652770139 937766390 336025747 836963735 471253447 233873616 874975375 212657675 378527968 808126901 420809771 552485590 641924138 429182611 692887586 851242754 161067847 778156562 780854507 581745294 904625690 42008689 408858290 604021481 37082983 102856141 389420586 817827277 766267254 794701563 528973677 71302009 138603532 771720529 368323792 936866106 742429009 425976020 857498296 658863829 410388128 215452719 583669520 214309020 7539696 584451651 447357889 858525790 208661080 8074554 32165032 295089554 382455226 295385087 483538030 545953244 710547337 304106593 820639378 147241772 828384285 674984141 799767055 125565782 877228130 916277861 355500445 467907862 530343121 24031947 323975984 425764987 346704311 968906261 820895055 640615504 724718198 775780397 5741356 831374754 965631092 304670223 704067859 105859454 657279391 321982118 697404118 738827612 697379270 492038927 750749022 572455245 578560822 279389529 501870405 465008556 732829255 342564123 380574225 943193530 369483520 67696599 495935283 84781783 498202598 830570527 314134495 515770974 57538525 439291114 162147451 589796178 728120914 433597359 158559506 282975948 28926678 659891974 483958470 217385413 910822971 270319807 614344145 100354845 307079884 920005428 980755376 577156893 123476363 737726942 181675563 637043443 201904818 88180572 317529275 132369917 501982031 544613567 3965051 639615820 486414222 703069709 728406401 49158012 645361153 824077964 14364410 690539913 181547413 603067690 393189072 782284425 119348092 25982505 238496955 634640508 46560236 862736327 206539204 514488421 794044152 79015986 417381863 868920912 862867989 945433167 9136424 604729664 291477103 122845732 294829643 566496637 675852386 538501088 190790002 110891760 224124233 227220381 876559592 58865946 373585245 671713111 722591490 257781576 142353936 24203413 629920036 99201499 943206559 923186017 977393672 833480629 282469095 735627918 624852544 894689644 456809167 428839409 23236799 177597316 360919684 984804299 345072025 248634679 699730649 492232320 438603178 710955076 768937830 24993031 536097493 169789675 467346338 520113871 919413234 11110558 524413840 630608297 908782172 804071613 248117327 503480941 662307474 428694975 603653664 678501271 985608139 280101714 650927096 808870059 1358363 218317737 315438385 539480097 394787717 528592482 301145469 86801000 952389064 139179354 714325704 847781091 953271058 559213516 780257289 130383686 244858314 615810060 603431632 601099470 652582376 408435243 713271927 412776301 284696373 805875628 921806970 984759479 902198355 858302625 587450056 744947050 159322827 102170532 900562157 486284850 25424667 815216018 422214854 332806003 324363101 413077561 221706594 8123293 78808820 906233277 455653530 422151634 183548010 533157416 239606330 951647355 953931916 91876669 741082878 271598697 967771384 695152750 607368425 230903896 696118209 947328058 846594741 708458143 500696684 711719044 927465991 152660666 785865438 381013058 587911415 486767386 388775515 475077176 997669781 352678777 518293120 13018041 875019682 352272235 843968244 166204265 975079419 896975159 594274759 196120281 264323404 23020827 499956952 791844727 173680544 489358905 438574795 628996797 72507948 960757644 314903741 562168742 617509279 8169274 138894821 659224143 455972279 291063303 601763590 707341680 78884612 681667182 331798645 43499600 89714497 849459842 269051992 745426365 864292607 665455762 397881048 63232573 843593498 345176861 413286455 651405816 354219455 826906039 572934910 31684418 116881323 216057607 536140850 795209113 536709026 217537102 644496227 692979620 623593585 888935208 666496928 788171495 371841608 289497311 845700432 721354435 759134333 661172796 878540448 314377747 254537768 55136741 981935147 141238305 753752654 512803228 78663666 943996448 193520251 377484226 414490380 632403393 83656381 320287140 386640747 139308691 87766596 881957952 793850159 737902586 293262092 283011289 717004586 234455826 640622358 35225496 992900503 318957789 38925427 329727761 626739530 340861557 907125215 27308298 874993055 662411313 481903542 316155198 10604672 818749257 481349143 507921607 885997544 698959150 316540163 515571571 243818760 630201686 835809782 786043525 6805451 902865725 824033860 596801826 996753533 389276517 264683890 751951116 844309066 903230049 229232654 172432538 686822978 602501411 20679748 892354611 53192197 1834935 325848844 586210871 658836525 997085582 254494759 671968876 567964810 116239769 339352735 627765242 886707361 70288944 676628972 924287751 451813616 668827423 924631030 127823582 198521358 112427594 316262225 197855044 828425205 271901809 259899599 607350151 124888956 158860129 703383561 273704274 751591878 892262107 622548100 694860082 325918776 312965200 634383836 599175208 965387304 863595307 846171520 488222279 390661352 87310298 784620480 263455403 827609081 895785383 135074831 107021650 436807326 284840543 921517304 138012860 67701617 848892611 869518866 497904601 27734338 721278582 324129272 219282471 491018379 658822160 479417533 731635524 533121271 319463311 69987506 524629904 249874809 5039661 869806185 483072135 609268184 308343496 90465116 292840734 5639991 301079451 610491767 307141103 832549483 757199208 310109586 538625635 412285341 46524729 474888459 24737681 393722961 101103023 657821704 16835483 819842038 568787579 920464879 705571311 566505653 463134831 640886322 732802530 848939667 115409421 348143445 339606700 634320943 741077911 833030582 327906967 602207007 702734226 950239077 570912720 121799786 551691130 580772849 664074143 162404358 59640775 32109431 268525029 364410538 913721909 606346198 87820142 498335945 349493626 130668665 480067591 154023696 445322199 907202487 701975850 704113896 358583416 917193955 436703789 373906779 766764078 900982282 142337801 400323191 390386950 375655026 563101397 227202444 737438034 175199076 507219485 394679183 88233891 148211485 620896420 459298335 410619206 742949565 76668065 196334215 513337430 282539310 368626039 60917688 609771935 530675702 818819808 256132566 996202158 956983759 890178743 781044950 735475511 952484535 498102662 786658794 19247534 971398534 67406348 151491850 705436199 957225430 697737607 458659049 29216790 573535587 612691291 443883533 358062862 856305304 905362060 812036805 363887400 19700464 591480337 953789018 521957261 730763144 149785213 161665858 926432083 939736188 62787093 103865364 245416333 529344157 517160645 106751771 974314629 802171386 98546761 506004986 659982086 537856207 59243627 22712661 332934990 251322088 207813710 552747053 472840315 99371412 839830211 247087177 218283466 473074336 201856840 832534211 245679365 341755464 301680749 728434403 800468594 390194618 525498989 357512226 546834430 857895612 470642230 889252878 224877075 367208418 278775008 797881525 559427582 64642711 712429308 872207898 724417904 577685224 866814644 181395246 637380297 308792386 207144216 737644882 603889882 360384015 583358838 602084971 32068196 64276244 78056630 437343204 554638323 805039545 709148214 205641319 978191935 398665518 514908188 380751264 367621851 163840240 780507762 936762339 571635485 62199635 420009301 528044410 349384833 163425103 85103321 158843635 858912485 178491840 539117866 724112789 926083088 448414877 273990000 882773073 71467713 481601006 124108287 191818402 218643577 713818362 262466669 176989801 559648151 433805137 937138877 373743038 599103277 178747624 319623684 594001658 513713198 769093418 827692039 496159593 95112239 42663317 403313008 395174496 192440203 150949667 270064025 331769608 444261339 950391766 961147173 784383446 866560153 356176414 97480240 312685742 248757756 627179503 595114052 616512377 42349403 692974347 829654736 307531199 568409737 179768152 635984655 546757650 415558791 604393596 83691235 660224774 117196205 864761848 291487457 104082104 712782219 957101174 144044988 138036688 88552097 162069048 229737625 853442955 571085720 679482652 166114620 444013075 172230995 789509047 73911717 320615307 159052573 648940108 671852300 836899159 654909132 452301006 939498541 166072606 699316515 548985863 228994021 476734528 262804618 671479947 29553798 81425673 184445200 124461155 142813451 884913544 39916521 106625243 766514124 120732571 128175418 758381736 770956306 964309129 988545912 241855844 5869931 28763244 842212868 925756126 681344935 534260243 748768724 72288201 270025950 311275412 433777843 603715603 505605307 978155785 880282996 424045204 600994030 18031448 704391307 905960625 236592076 579943339 140241543 157827237 660472664 337447799 855947800 179957050 324749587 366955329 769937510 539736428 482397237 972078848 403725283 40102436 968455708 935497456 612919356 682613808 554215482 884396229 376762751 511271607 738468373 898745175 699738932 533579673 117688093 466403185 229502792 152385531 72383354 485417249 853250064 289714824 525413363 519309875 542575414 667546309 5444462 976251820 466062645 216032454 412764472 358189510 467634493 29668472 977216222 353588120 987045711 103333798 580463659 145627335 30710606 219300889 175349876 275272779 172596450 407090624 440404596 696616068 544696284 671308033 690702733 635326748 346334947 470154129 37515808 53923968 23428495 984291684 319561051 193784324 775699990 186305260 769969710 511294658 937329801 111925237 515908538 67764028 628239885 276200093 405576412 272345723 210625486 637817619 59541871 622962855 254737127 168392600 447570701 820366038 983398790 191893308 724158300 463347101 123555264 280454112 948453822 762101492 57138078 566739 32674285 59439116 783784151 322455395 633367373 506406902 920877226 590965668 109602180 70602358 573888277 744953164 269167159 502447363 73051461 867255268 13808394 742001703 175257992 687400751 901748028 586193340 467881772 374734909 238206214 216012149 801745841 366969148 472414308 1713996 806014726 333825885 713882446 683277770 671132535 542611514 331443555 806150221 43472477 945765959 915222847 503878473 382304804 994272587 167185547 155997755 156197923 726093193 977126995 837270157 167117172 943566996 131670719 552478090 256503294 61163677 945991925 393593440 963766288 271036658 894371136 873901625 401543369 935921640 226115446 303444536 859474937 89380948 22959168 62603655 230809380 839218924 11721585 467009196 167911161 222642935 549829766 679521074 525976121 779034225 38193258 460145390 122875765 113028272 77159208 653607831 100338589 452760301 962288301 797878575 729996577 993156810 861276767 361357741 646750297 927076146 171055346 55465046 400097087 178568790 348334555 335015749 107828288 213478583 638216273 363929873 696711926 210921270 132414520 607429442 196429812 943180355 383046353 530138230 295055600 8270425 299048787 653133826 739723296 393164628 801835841 940368792 178957583 996165388 67680550 927758725 206165408 57685918 774803115 852658317 202641452 643599032 197881886 628809212 113037501 995489480 10570771 534751098 155150549 122336139 500800981 464136028 405024207 513501959 37030580 857390901 172731628 16254329 793218529 407023506 22709682 613758423 48791062 332324956 261584387 819315119 774510252 733799159 765154971 72609324 251093191 5793957 389718286 744174571 948941931 303043481 119354753 128506317 664318934 664200039 62823968 629959247 612566340 86953035 669059583 552297803 842439162 484417681 435158599 476040846 35046488 448713104 777661823 322085497 500677079 681871982 267905131 356128202 119179955 59774567 356520071 553775518 426596562 804615823 272732227 269382198 252795275 92829800 779477885 50333550 265843727 774295150 289537545 522452963 301936136 36023468 308002859 216277067 105679374 481468778 321558602 307549068 259688671 174655591 115919883 421122935 398194309 984207178 484487488 67461217 243184467 145765473 460361238 276367578 29337292 996411398 192428890 736870458 592649627 771599365 643001829 322777198 685387634 553109270 663647370 91632027 877909211 817846865 252603180 514564589 716864204 33921707 410307531 425334072 398411381 364029708 964629758 175990716 996254117 163127274 831380930 650332960 759220427 34858868 802073345 962190786 556639126 907655874 637211386 389573419 625283803 763427904 399516714 484941513 390970256 810079678 926801322 284780933 530610636 378770484 817192946 359162849 935298048 767520312 858603459 466528975 178212058 350481317 395740643 840429900 930835096 577617738 278800521 112000675 300094028 229531413 224565647 681954819 841264082 243978821 495673980 152256557 903641363 215233817 626049548 41950123 788123752 732800246 535158564 167404691 977845105 411767809 790143872 681269832 375958946 801402181 886767640 946230971 947824843 440359501 398961673 29624773 475272472 967898641 812786608 344164806 286088775 823795571 430467338 381445196 534553618 110364600 586362385 960191402 806030907 200117630 319915675 359495449 416432548 677045434 945568635 966282099 858329589 909289998 748573613 594780053 198599616 796191002 708234671 450857850 644039352 992422200 912940905 488056405 821272302 813521943 91935529 319615229 707651515 691776496 924503878 1705539 714613732 427172430 153607840 100659305 969817635 513780095 607594684 270906865 79945476 978426870 734964189 258484336 535881931 979164455 702083014 38286741 428691843 185373042 376731094 674273774 609502709 812813649 560214056 337407043 957341593 152965592 332026415 386441941 24755238 949921328 920995478 372458146 633004541 694013583 442384528 180742348 105569772 410342613 455407329 95746138 647745258 130498330 117132356 382398757 386513235 137984835 141941218 716199843 704006689 197300656 514424808 650297739 771898367 686116792 90755020 144083082 665686908 931971888 652900507 946545110 641067187 971453517 355683884 116197327 468379 525141218 736033434 35130589 661972722 99536537 159814470 349213695 856499626 170171629 441605015 315594702 787717466 127029042 730319207 521181595 155846444 244668677 200722024 716300451 825385247 142550030 405104637 409667309 627820984 165797466 656445049 975129746 659093717 56185497 162735553 209688394 171173366 534009931 527370148 961865061 997186062 793867332 614994783 703672884 834355763 813117884 684913100 89785045 324666381 434026304 693172308 707404434 35572440 509714261 82493581 294529935 28015447 28414683 657053961 917874110 84264370 893389917 444721414 414327532 105653822 36715441 46959221 8787485 795716009 702073736 588645980 855965060 765060413 455631977 289370407 9686039 564871272 533361298 726530136 248515949 165873123 128258125 579591491 519122642 359603521 23518530 556044678 583330939 201050563 203708778 703799964 308779609 996229867 950045427 406237508 922860055 812520140 186370051 273550398 103296905 382723665 736366181 691673549 599666064 666764899 577435228 116844230 671117320 546109619 7423234 731128190 712723361 988455247 474455851 650933125 730197810 171785407 19347466 778493684 788909242 775896667 100222479 760390192 604660813 605003847 728672050 636246697 446792847 982461017 336807615 846656386 534403779 4441033 512772583 45401714 599143206 361559744 259087838 271212636 827549710 692561768 780840670 370742982 603029971 742993701 884175453 399404875 908724994 380011777 191752153 858470901 800267542 611528495 442381384 576715331 483677735 476239150 368758002 207349381 884262880 246940170 26397182 202346981 804169122 337315883 981179935 119480981 279105907 178178902 64077106 315665115 430253540 365134609 93908781 277968243 353116640 314273623 553983415 620030801 52798911 447830940 653536033 952073614 451336485 586711401 237937429 223382129 341275367 827211990 177531315 105791113 204030749 583944692 65937744 676613691 761330663 489896293 653694038 12904608 638832974 375068975 982511148 242192853 512461977 333951010 301388615 635360996 463777773 403679651 281157976 417273967 434169881 814545037 848594520 854030320 221082318 778767909 713498358 118455601 967103478 95032616 822968326 340826358 241650771 31943403 812094320 907059830 662297001 953543388 794479387 200920954 481273886 306716758 995306461 129208010 697895353 709923529 348580133 16957479 277129965 685731605 559414976 379237592 338573996 507802213 931514545 655343575 410845105 139381958 125216584 889116036 718412515 219375036 820195077 527867997 15068840 601234735 785138295 139838506 284231116 379604162 202275497 355278492 831118433 427252020 678773478 575402772 134527000 166760419 789738448 75002746 90104769 851643242 769236324 8986956 189141894 549731788 536389218 94474579 901196795 103337506 56226325 965792260 658142435 276725216 12781852 985303632 119135412 152699064 49566005 333340241 920505215 362195157 258243093 681475302 426569042 736323099 199108849 922952288 158647497 989088712 352374810 554015910 536068280 405324214 463950761 668158278 670913777 721432096 576995654 951231218 800576765 553938452 671024222 608254521 566500120 876178619 806482926 793291632 673272967 468652601 698269551 421274774 638546444 355674757 958940359 608447488 789084528 594477141 26592104 772597425 368553614 887834941 586401632 947296600 461568976 49754258 834595303 961513161 741372893 667351916 685357313 762458083 302523896 494298670 931260763 204134262 514230064 443536736 339768824 659602550 288964124 17635357 748457242 102218716 625718898 247613272 567200595 879617425 422779607 906157587 367711040 9027669 424792468 153602746 378603860 951549049 25754946 405740713 205547348 116627437 481035724 486993695 908202513 418153665 127427142 387498550 165220533 911203716 631033297 628291661 199927106 447690576 595256604 367418259 544236777 606852035 9379520 588972806 64830858 306836360 500483613 238193121 381569821 234860600 281507145 702609822 155041685 289391948 352608000 674991659 21989882 291232903 987718515 398432299 31226170 793129874 619175908 461992698 270206463 748624319 687674416 120112307 118654658 818534377 85761610 89377983 316864767 640358691 488910909 202031121 582661553 975703367 258729161 917229378 130433732 837091881 53266107 589878751 69065093 340054121 193743076 44658997 514049576 49279649 866118042 131516461 664903195 968636766 41345013 390993001 30114299 885766665 110940198 62228391 921694260 384029425 39309412 381827118 774313995 434552605 880097906 810207610 447316406 252499010 351566289 364232269 310516963 176698176 528588062 200348749 973019659 480224589 196727927 154811535 487990103 600313622 730223581 256579385 687233477 297939485 139316606 426007902 18942054 193743067 74550160 486452310 4667176 119585732 698074132 933895689 161109127 652362388 728702159 343630517 639501506 555230830 193221688 199252443 362674488 510868632 776099954 127185619 322202794 257976095 436627569 310001267 808764711 796053161 884594430 330500515 115061282 470246342 201001716 354121316 779806691 802637319 351543924 880106347 590442580 914657503 633498445 31919741 303604617 389272061 349655549 796994488 972877776 93467404 375435071 791126334 299013085 501010480 352979437 358460325 389039906 778083300 279692035 367099407 874834786 63838291 695162179 514113531 250202772 583519440 223942916 35368286 186356714 941863707 850481426 543826415 804489201 142427178 517088385 36381503 527021964 735949163 461462928 656544223 838174399 856884175 932023410 876591654 384785544 287238781 107744742 72606232 58755122 494029668 212944435 779602347 429470014 133423479 992063264 962907443 709742570 83968126 10388274 406517203 532171540 834332484 782926155 331968445 810737880 812677367 292472828 833048246 711769345 842129775 194562797 981276373 238409153 904849598 347512780 341656759 702727248 335718516 158458573 751272423 706790948 442887343 815423638 794250734 829506327 633752887 302253671 621919831 216832155 128980831 223845905 343780903 561042206 261865914 542091477 223572344 751225160 553224938 430355941 706756573 121879343 396705923 354052550 783001063 932091828 120223705 676170755 698447242 923718821 475336450 683154137 129273339 590419460 926266144 858563617 677998339 838286952 546804577 390779701 653261295 284232518 239465858 201858380 507522285 813832842 884601184 465244870 989615551 691954760 238477296 521585478 962700563 43338395 374618442 912346815 534556446 723883736 258297925 692767916 771790544 290362171 938257122 964644806 776390324 847850434 550456247 804982279 536545497 369046547 84728219 638909955 162146527 225960131 884556179 312780985 889932396 571052049 783959609 903425043 528777770 307324036 56862101 430090170 194449224 186170734 433253873 98656562 530490317 626981822 100690431 525091866 598406293 306679779 127791276 168903697 796406126 938841429 934313246 662982138 184294501 197446952 148549590 199577477 188017000 96273727 754206393 306979342 939182967 387254599 977986357 730257313 408117279 879133349 586352059 119661394 753739879 147139782 500091705 325986941 987828122 244121443 465264384 903437114 241940183 684443504 736453497 932594482 313480016 158209618 53424367 24969192 433426173 564430583 936661852 89064856 942018816 562989262 725745235 830736010 696315331 115276486 394498262 404163725 522761624 372488633 61971645 143356412 41505298 258486893 856946997 144140612 425053939 478540603 287537310 341810830 294261472 88704294 931963060 627970039 412006248 465495395 946652420 727029838 622908909 567283452 902189501 355192516 145157369 748861562 680207693 986739301 599383730 346052289 731819658 927209896 988251750 948165086 395681906 480736151 266788162 561632818 960324228 302002939 643219958 946766074 737579440 629051849 374593574 642591037 25437189 232687075 436807448 100409390 67436607 270800829 556075676 574355844 240583858 258423751 557329834 934227663 896780563 768976651 360122436 939674293 527456777 246602136 959538317 547822980 289205679 232309784 208976205 246043609 941389751 303753005 562348338 96597931 805686801 24539962 864315941 541149349 876542452 864066978 194351433 235601377 835239793 975277037 54498318 222934056 109572643 780635163 98998403 438068877 573287414 663350414 395013945 879054100 45291015 57377709 697828173 151668753 16538441 790047836 31028519 229707921 846163564 672000957 698514840 465188906 219526753 108740477 766756127 794782069 635197798 944645950 631365689 200580661 627623821 358492734 865077889 638759445 813093437 163475975 236794381 152356316 609748479 445558363 492325262 25518527 471751822 280197845 847184823 798283703 806086106 699741296 564256512 856835834 458578484 957556264 664161340 928879913 650707071 140582490 607104261 883917108 221706572 479179567 703121139 222667168 337157672 952977942 618414523 495613542 950332564 303845127 92277331 437028859 185828429 388486833 634434963 181950724 387507077 912495130 578978046 624360662 59339567 5170799 67592354 402465388 328419054 687875822 823617942 203646800 264179619 951618484 983659380 266163683 827428775 424943299 980883417 96818135 640218098 901296989 956379235 525364459 121773122 808397732 422233959 279755146 179120713 121388708 677490117 416842498 376747860 482504842 370157657 483113542 316040125 189066385 343233398 787138677 303888136 997701035 237154093 512674179 435027164 97072844 360105127 775643637 705715219 667436651 526592679 242016392 486292026 981591082 85029029 253251311 282685148 99116800 962818423 260838364 753966018 441405297 679163 745176409 22613444 614509681 634248463 753218302 662080380 311676020 89898299 412220257 874170944 482058059 882776636 915812831 663191145 510537532 87227412 564206508 143223331 663846951 809538763 756115952 698880807 938776562 370063535 488801612 707497816 325562173 353557029 617547362 955943467 331138984 460521937 619656545 549658110 200715184 507913974 259043603 762206233 935244003 532335555 635074972 541365241 82799928 118241285 435660716 895853487 531069822 957410544 66152867 355462074 561245314 484032536 877353308 296575780 137065099 484052766 547975950 22718770 37782888 144636587 456269741 263385476 598655006 588287915 565494374 773464429 541536102 153399934 43252959 955142878 800126723 297400020 603740173 352625161 311238392 655435462 808078861 618774606 618571035 458914504 212628909 399218676 555711555 297067080 353843054 979650123 482764278 697312562 987343438 554062476 168823652 426986577 721900054 689373319 273256327 494286115 787851268 753033166 298186826 738392147 585899692 204588536 126201548 532174721 61010034 676719845 289169437 610970352 283332833 366222403 781001747 499379187 779101454 676406963 866160231 561679987 756854388 198362346 296969760 454318029 766384239 288516152 397365976 525741020 619824007 160487737 606688540 769183958 900680406 362296234 120293377 407661620 512560562 125914989 615579888 512532438 342957960 405828912 856841487 247354298 51423749 279477006 531303479 947091265 407733139 766599778 118574885 682078900 720471371 608220683 928971060 239745678 621911329 547713965 282084494 636248247 970355084 25376695 406235480 110707614 562232886 211620759 708670363 314885613 963978089 154801790 952976637 523826487 227869053 576690792 51469161 788601337 877808610 28914422 576406476 4164090 799442635 836787608 763236958 802956468 942030313 648338500 322343529 725758085 778445139 494610113 909637547 710797980 42287019 899794300 959087357 58435215 147448355 210098645 685351299 233466748 593660787 407138042 711405055 500155613 475433533 83040046 194981195 655301569 583938189 347976578 540768890 137353055 956112079 105597542 103303508 279821739 772823492 160315310 52044518 821886319 260000320 295613253 638734195 527802049 658790015 806768269 502075760 467658413 441696443 731045293 756990072 967810188 435236269 934243649 403220844 623507832 756343010 229038907 836125118 524420737 150091414 736333160 26044443 860818650 112779819 502596757 278694450 526921435 954199524 520753142 326212337 96053579 29362674 622844487 725990274 976783782 652318664 77949159 696777308 868230466 946561843 951310088 328062102 238738804 610124306 601479956 257493740 808289133 220864787 346158451 526727373 499739959 570979036 798503230 215397008 663513779 435557560 759213841 466246658 186476083 15905046 979803999 133506106 553883013 443130270 640535506 244960056 299494919 438813945 208589475 859011058 929145077 89873558 300703808 661758837 539363967 824823472 538541083 142484916 439840565 302006209 221955887 149383550 867877376 977358685 529512013 71511033 14683300 471124925 595322535 72193140 771675256 65480020 674773700 554160246 560472582 832183792 18850754 428909040 538565542 542311414 6472433 267171400 376123359 903060137 796644727 884233344 184757961 235004738 503188848 137885393 275778146 23456660 849723631 454536594 891716180 725034059 969427978 889276231 869180921 285800989 573873103 294246141 53603992 915590349 181570235 367606705 156807069 478581998 897681767 423968161 416588722 727448737 283741403 599639498 766467459 117519297 523917795 836667554 561048074 543030914 860147285 317527691 374891791 832399046 87807060 765337387 431217068 95046864 783342875 102694962 580861077 707223535 883369244 743260845 729272923 491474000 487551743 267411758 727386140 118274962 110575956 712198652 760286085 969500860 71734094 591568116 886542635 748065447 340866772 455967659 190229935 197750611 21452774 593915531 108580919 573836810 988631491 676729594 226699719 55059473 54140184 757056159 263357948 938856419 674709482 435034082 737576785 740823011 21273031 644143430 36158723 291730986 224373841 236920121 682109343 748828120 338807873 722827594 366745194 672562216 661804503 324918986 686147698 211840188 924223423 869664926 883810536 331853336 784993489 561630072 875203224 377220124 418788381 291993393 665412837 10348278 905050712 857445089 555566868 374942469 693670417 174404379 739987085 667204313 235308028 924780131 687497082 600459707 644707811 536677139 58666748 320993539 780102938 59333710 193083260 955536052 464026876 28472792 750274371 845487284 539818998 916907941 598668947 650244654 727421985 504539803 258572014 191652148 17488881 667555796 533508090 857995432 885834858 541384446 470008018 399440204 195852248 445749695 910860151 524072036 743300651 148446453 627536388 171991456 900041464 424263259 372434985 267146903 515000211 655803126 893228331 834787412 702488011 289291015 746435354 9233475 650847054 309877150 758777199 777198257 437720006 793129244 17727139 744555386 724765179 632467374 920460752 135303838 418782983 974363432 393826729 648066092 748708436 770974701 765313811 41966242 467374137 826881814 315097697 863599296 33544392 227729722 364302028 396934330 40568603 26966822 122265788 265149812 499566484 964660807 333372497 376974956 624442235 786364814 745579512 344947283 416806861 433690120 651739592 517434807 758161807 505074387 237371219 487356812 571675675 907437578 230339342 325589057 31748925 529998409 512079138 758618070 596512827 797052936 782646878 597816944 117126099 117834588 196126725 904040172 798373047 671786862 53174773 827053009 969095381 992414259 147277122 269074026 774753012 165914568 257267183 827170798 303274659 766015068 284372513 719421302 665832529 467582743 145901658 803280028 217510342 373320972 528562705 867983813 641088667 536680758 339150879 752849821 978793769 272518324 86976452 109430395 825184684 351694347 878412105 300146575 839774028 719817467 315214169 375832038 683763783 362898706 909622525 897777850 731898580 857227179 985253389 63914573 645109762 474367356 618406216 679220517 916020424 426016217 355438011 509592879 937357407 634962283 236455661 24770863 175205115 798150383 813048259 817684491 914830643 773955634 440440262 819397236 397759795 235798098 333891471 18598049 167158375 441591404 791724510 496726119 908192769 994154792 410998963 230441510 104816501 541251078 949935638 113721237 522376043 896069744 983889351 736736499 424060320 238187717 494954232 619056587 731853994 753181809 525396808 828633450 899416811 220123031 714722586 734239409 840782051 257623009 66194717 371680423 486114506 331679018 831022293 190951251 496226982 432585883 275510081 568787009 165889900 355044333 417000685 764200777 997738990 590961425 869849819 986009359 777500878 282512465 485794726 300883733 393562191 93811219 700249625 99781158 20384234 261110803 354834270 905198012 936582773 776919162 538966641 244288771 84994504 959732574 320215616 597299212 28078613 408409814 420806716 186326371 708810932 656733382 310005516 190436762 543252269 899781105 667487687 451457643 328498835 639766439 611732639 208660589 754729116 617011094 403123448 368414699 461490730 537410771 587750133 212636172 420715910 61773908 770791942 396614571 719181853 416481994 639573450 30196931 160284394 314038323 259532661 944175703 714902409 106861055 116954814 883064347 635363691 255030660 762130433 707803533 123214785 306677551 377416307 240008512 765447860 507415005 643444927 51524436 119464497 143906074 407474988 401718396 396055931 21749327 357316621 505161283 218215907 851798957 882604787 696472590 620070736 101443072 804952358 147547310 42728004 963645160 826600634 103629626 533054357 816908789 393886188 405248737 122974298 328731000 412978192 614641457 986004985 68417260 458327344 379836769 978827165 797350196 57069507 160334236 840418684 638424952 986059350 140106091 84124138 529967126 154800719 604325630 763689675 907689393 108467889 445327251 780777458 681013259 232247305 497915785 945572371 245843869 321585877 295648531 48160890 779991881 671356680 22399354 269704657 51367592 787116590 390183911 693139228 97495884 415251709 95452936 38831522 229577014 843589758 467338980 26160742 274887226 502014285 35782683 902895936 943677372 110917787 822953264 54475135 442151875 584152189 324993225 979381814 179551227 364428969 497716987 142675722 351598633 888685673 429351880 309342546 741731931 826193266 231738502 460896769 291175214 664408366 842154351 968155296 234196215 574605445 906034443 656671108 775522770 368420205 995545184 838373687 995233695 579512088 821793869 147419474 363862077 176900701 473008838 498601037 427918413 396665437 483568334 691466411 248036703 27450242 749282265 904792905 427407634 54667554 792595332 117323862 860868988 296666182 429033965 553092983 674143945 148022859 750473747 847523962 493706017 766281582 183472375 612877970 112455779 266121165 495080628 722775816 821291955 245501072 292519670 151557060 800533814 164993621 339865094 634380182 776301272 893327578 883850862 244580483 31469430 195066478 976120611 721190148 355601274 697729786 123153064 804685519 424551181 664188004 938242738 688622351 498750022 307710333 760486277 802643771 67706839 237146490 718286328 100875928 542265623 156388518 772184529 352714756 828586007 803618229 600219627 905161446 464879098 284985295 391048999 70682758 192938718 11239700 899578759 981496887 300631365 179471174 731805012 127538555 244800218 639346014 200355816 801200249 867499085 192176871 97412246 143609629 936202376 837930181 712675040 389706420 293233743 284446436 276713550 542978126 690855027 242641044 303893356 283879381 710037545 297209101 765994684 350912251 8836221 27607340 447030238 240788226 531353064 239218448 380720291 230691477 607590217 40464756 229382300 515897400 157745717 243911300 622636658 910674249 502077492 919107291 482948555 542139434 492463775 310082176 430432064 869883513 428042678 722837502 636591516 953560007 567696025 448925888 67591951 415878457 741954143 591239813 921014439 343572899 927975437 100559468 745030174 8691622 953080660 936050490 471689829 896362810 475995084 444524449 69007537 892809042 303298336 282233063 494567674 568426859 375674525 40437375 536169825 333669102 359644236 225694271 2698057 603593511 181384943 409584758 291729182 953330518 512951289 189216698 423572538 761738523 484233466 501545340 464320258 960426252 368884759 651209420 193048917 24990677 443401222 728412090 741022010 602008550 516744651 631801428 552840930 349903355 626493268 992526352 46439452 536896153 167201590 390514939 101434232 673178417 548401447 877383409 118379663 376924507 163114406 433008037 705982990 752019419 693430512 355040743 833581476 205227959 588059569 131791077 509757366 379332341 180772800 134541196 103729828 52151003 620314696 446911598 545920100 554918732 719626011 911078423 962442430 401165935 387236824 122589490 734638649 864471313 626628797 755957776 456456844 758847051 439820904 660009132 78457347 376788341 864785997 637057660 437325404 643557074 798166804 729554353 750601579 157217959 34450265 874688272 243820236 620234666 516387696 904364339 488027859 194722355 958778717 667490133 671184856 589467359 287590837 65625107 903489609 925069474 664548671 898578862 305431985 291002641 282023019 315150294 453836351 576902705 760364780 682296505 627492039 692754434 933906750 19980323 899625476 127223153 781192035 162697393 742843974 359799194 321742859 625293226 256619971 87197834 771649618 332626396 400758660 798931703 803090820 90845390 510235789 863324048 822588543 808417504 37726934 268958089 418237620 230918619 232046886 835312623 459913912 84619163 864184057 511028597 565298344 912391719 969743736 723813765 122836840 510086104 498126864 781802676 648927702 865184909 760565610 139086584 942760023 116198260 173589582 495853204 68703268 632457423 958905126 956929281 847346573 230461048 597950144 808473004 191236124 155569106 698168215 787896636 824727708 777768625 185752323 582905274 856323488 429441751 595011182 355027404 403628145 474721016 443266762 703887461 437630861 702395388 185328595 264222506 503672913 394895842 789281431 1692167 690213631 388826839 832923900 178478357 353831814 583460677 648707887 417319183 857520908 540729592 782223867 116578874 921402035 119355564 28760186 248646875 105358322 566656516 974160707 76882107 398689573 114879213 743964443 647825320 79684998 528432826 43834425 809527793 65424498 10697981 157655518 463206554 73144020 616993070 468729771 477205324 375629603 533667455 671481148 932662776 249445629 631398022 341843586 878596030 675404719 787611784 632622268 967823103 591312190 684208002 463855576 656194919 953100758 438549268 625457739 180970622 622665314 99994633 141982492 162372831 871178820 410318353 280107148 847558490 879367850 573499172 769366680 331315142 160668116 238135670 70401468 759786950 154855794 182362454 40969216 584882149 67455755 489150948 837908035 875541929 814317920 83976667 138847777 391429909 559675335 640498836 339948010 855638505 95017276 884135595 338688156 243763415 572048326 597691487 574364433 374862554 773716562 896765864 193292262 830730763 575841924 898853315 642824411 490613631 837945197 647534353 140765727 497281547 613807216 217319000 873468143 232616167 23436803 110648296 935204083 900677380 686294628 79884248 690544874 929902894 598828094 185715582 273685446 236867185 625400606 733424502 17661681 487766134 27044788 773222500 774528091 288394148 555752870 966733676 461405595 792505230 64842012 581584493 246287756 741111465 832459601 421360136 708617013 202783712 833816987 975913984 791435786 850007303 13617051 417239706 504543527 437264395 174213827 649425897 817736130 80327987 912798361 257354904 603878262 670486365 454547802 368065310 189350993 173830669 238605063 214701184 778778204 267233504 684796971 166223308 764471171 147167007 548519634 193963409 651701077 969243276 777312072 90183792 22483784 438442941 931511100 797130758 874829706 674518714 393769495 322517188 399402809 559215722 977331515 997604677 483726142 457347769 790356756 152425484 197853556 907770991 656689778 198381144 198541246 666335731 331926003 696980150 965684655 852783177 968030225 594168473 364693553 910179746 666633588 411273284 217343602 979283807 458459748 588087585 8531737 178090229 117730429 45065086 585524743 798017096 19459080 410383161 870029886 174333176 800331082 138979197 974832881 834118162 892974178 259330108 950180430 516230034 448340301 340435012 140539612 163703705 435792560 643515276 398198340 655995876 604105357 354668302 320383815 496654235 255768970 716250883 747432907 435041112 628237633 831470613 420932902 795875832 303319320 958353189 27140846 100713738 248154228 779412036 890717827 331049225 782742093 69320202 503425369 775976540 34185452 374387019 237558356 216226445 689137487 983140920 131363791 370160803 896335702 669326219 375129046 466555225 311886762 355882905 601343151 183340747 750495940 645906295 131720338 918585228 234499689 592285479 162235718 365942918 649590941 537170082 326857878 524054528 401915652 414714774 881012068 618152122 859226924 793445114 686734048 559940019 5426196 730143387 785698881 808616400 919249991 750385599 773659675 194173627 426583981 920318329 85278070 948943143 147641507 75100339 130652886 412817283 731445856 180015782 878417169 878584061 983343849 764888119 666563861 349316135 419448916 821157077 778836824 154467928 501053409 888483164 25030920 810566497 317757655 956824210 913413558 784240571 393108764 84280410 874328032 18910180 750726062 503161168 235448855 933147798 573763860 99251934 153575712 628728877 883892119 926994305 502414165 709437879 665906166 289348264 639431452 764345275 522398622 184379884 963837431 415231680 451738199 528315670 463572074 98548784 330152139 310084982 24694991 478012349 472049358 859335259 840311831 411437692 650243757 459328395 489593398 388779575 17254878 689266660 792878592 397719789 599458383 246348468 436628234 857039772 894270704 530148063 762182327 352056932 673766573 48677881 781516311 501193351 828134727 237142866 145402241 203072024 908467992 279778328 574471674 898174958 289964761 526462518 789990686 442873070 111471982 852128912 186943214 812927906 50149028 731546775 69642458 133194768 947637368 978985326 463321408 925172175 924237240 569935754 265718747 682754252 960529456 628173702 535097004 499367348 295837119 436287805 264622379 346294844 254884608 724186509 596005531 211575442 722633573 757283749 820885336 470707625 360581390 35436297 489990966 169170470 450507466 798341922 786622747 190514296 913479677 922937333 446774474 609786621 686494075 757649798 816933656 944608988 68149628 32169325 21849198 603142530 267129642 962068831 394244304 563960735 3048771 972152912 637446915 224073187 72496464 150091155 441007459 208998421 114808257 596486492 440209609 397071230 752678501 582013654 475595768 26910970 375411265 473355726 487939102 525162631 756817030 660200591 61460869 573804931 689990102 863338630 846457972 615725278 844044311 738151491 26704287 800055207 803165220 642217537 110907676 648953632 930860093 864710780 140886070 645098105 959883855 190299306 126855137 930775468 799225057 100227921 433108329 634921345 895685547 928241387 367101050 312808613 968311581 883486853 850495417 398429203 871776114 406131550 535734173 328549475 646441781 460736288 714439932 40249363 553038510 26033016 969078819 9281614 488437370 682495451 637151 644718388 783482915 58994536 336830014 602233156 209629114 5220674 938712961 664812343 895658170 527295242 627828606 399666532 707317559 219669699 169979477 610027546 407615553 820899774 670707982 331801898 573708207 419289238 448747558 174935833 544435205 652703835 900778825 372579233 193600286 411989534 222251038 153961166 959821534 551044374 333194718 189952538 917161141 248574179 491375003 262883336 253888448 90374832 922446423 738265820 752632903 891800011 518630854 4499978 523964790 458541071 839778494 500348347 205597236 17999440 993856577 249283809 159167620 362674594 524345435 946198941 869674157 501614193 298261359 742723850 794694889 676274767 238825438 190935488 195436931 878044114 151484107 775283495 555177464 432919935 664329952 346446022 385457710 832515322 649465535 137096568 615544077 588433752 268304594 236379838 679383773 242227956 390432967 833618712 537505911 720731512 112743932 739670717 459896262 853486787 308059640 827026664 685150889 381518912 779977023 970704621 48609232 793027573 339582046 281525985 11969789 719504432 560188015 588152261 428948930 742665336 323090721 806409743 365265146 997437910 405746365 977054390 713964911 82169559 519696390 135102465 667495407 258102737 849722457 880139322 324090556 164613829 147124484 159896551 709851616 189903417 895713617 668233410 881963504 269617987 650060706 329439908 504617208 780174026 618000072 610611639 429178493 315710398 860106735 82811896 612082872 519028270 973391113 91453209 248499944 162812617 504590441 913006701 123779969 168090596 528276428 22125567 360646876 276417375 871033117 693189019 682324836 855195711 566845321 912956549 639208138 291742071 636182836 270032388 295078450 492228213 221817341 869658950 596830080 640984705 799222784 303251672 672174025 109767055 717560998 540081269 872548 676250253 729032465 920372317 333342990 838872150 915201011 423395974 210620421 955654719 806571160 395555974 367228937 428112395 663691576 25314531 919400219 315596085 766424979 176969431 506207762 20380815 15890735 772104754 69180289 187267055 382153065 838174711 48836487 347205977 765515372 415771908 716347879 212363568 609564985 558427197 97289173 624696380 523978524 299450563 412689210 220225155 201106549 574416593 196662615 469206083 125378053 705484446 155568741 237638342 15367995 713278018 8362521 608677867 254166953 914189290 255916451 912198918 133041112 260793942 597329868 744486537 295026903 913387872 632459432 764486495 399501244 452051840 586614016 958668029 931300119 588532572 956851177 120907648 581618784 458020605 675359247 261666758 229898489 799925823 636354364 839840224 44302257 114363015 399632244 964419573 704196599 759179464 581425372 345084683 189553722 702491777 43945456 449400994 770962751 134424325 661773095 626642542 315300985 682908579 922075560 790908655 71762263 40067669 6364888 436024027 459424650 563192864 653563079 369558708 508193441 846139846 822176743 50350956 961572661 975350837 48527707 207577263 961561204 275063233 531301393 605074675 363552863 40111542 562911577 792539677 995718091 656575710 200298757 97671040 996965548 203184345 583482661 819659770 354274070 478744220 683305803 742868134 129262395 2002845 176796708 823561908 779250092 364723333 650639184 864532047 283222574 340075344 872180524 921080898 874696351 86040209 518524727 983203222 840821822 557930160 372962331 967781291 523575825 330384222 910400036 670993716 462049213 502992530 213213338 255683751 514411450 230282130 667190434 52161563 766368966 792878969 854190401 430953958 899828583 421761166 201058937 558316510 681630190 289663102 524828023 498789011 949836057 543764387 360279470 119758001 94833440 880174218 786727175 223721029 107752178 335979012 35955092 382507213 761378231 499666583 258087033 546623296 595617616 266591459 639347747 373759494 953248977 978539651 509023353 904383475 231803088 198506964 639080902 87846224 670972047 786571578 283591239 537918889 243431802 868083667 952460057 21552261 120193395 706314381 239989997 892701990 837641253 681428740 169020425 259916113 235773193 720790795 40332005 382418083 659488111 158302349 648321122 585023287 223042868 62019326 750845782 627368401 586726712 641571204 228170039 5502918 197450420 249351370 282469430 295017654 775751364 224768705 435338296 237640083 688426159 714782492 265724847 855742228 970040161 629063461 858272672 626384393 816217043 296922528 928899409 720475322 296726659 276447415 687868596 426027989 594976118 289577337 897379358 38487955 54235964 551384024 983450939 116328322 681269991 907046826 777986219 899936848 715961254 263542115 803856975 356892900 637590091 768952618 21747850 945352820 586704969 917821208 637877300 94490707 608095827 410599518 816146675 476321708 412679886 113591077 278703452 466241005 740238119 285576069 937378788 781653408 71255609 17817066 282777552 856534869 270129348 527499391 727688112 155395580 347246497 964970770 756018272 852555488 141339019 422416543 11811343 720532478 5753930 730142969 889032243 152200998 22365208 13154022 949487305 698670041 397002479 875777867 954513388 937697202 903554691 985139489 656086614 267271082 476886168 931901792 763690170 30948209 248759037 176998813 551837675 57918507 237965901 424852105 674076832 481144576 891952260 245124145 256424103 618046717 477441365 652312388 941341391 118012089 768023453 715499652 629419262 563081305 826110328 121395525 831255073 433955907 846381152 617392402 930347051 761613806 325536871 895007933 636633254 327645826 67401889 935094786 337454454 376835595 268057668 106888243 230991712 769566011 611666141 790524707 757415378 541175030 380175889 139547115 395517186 16202153 532137129 114989519 974777101 288864444 831711079 430002983 577085580 254261161 647721780 40748607 794096249 596099630 435317139 810416839 515830506 82751617 685709851 940811448 639235207 643588895 260412590 399414494 539682917 703032484 800992243 474790010 488419883 90085695 974102918 178619326 611440550 834934118 595358001 280141068 284389067 418076702 1229951 744154820 34352465 686498850 960597378 614520916 713334879 150447934 452275592 512155504 703240999 410370265 709352194 957089661 101434232 887727717 415716866 307036702 565567453 656499795 191602329 600341203 241570171 77523119 271750966 68375617 892425022 362266467 853128606 384498171 833703971 598727377 220571374 863111289 980524960 627876879 292759373 249907903 413169172 961173722 784752400 785965450 48974071 508584496 165631540 402244055 948637219 207907758 250436359 588492746 111946338 201324128 772307263 717217836 333204138 496322293 84875367 19298568 571081177 159895026 966566245 694337455 279237500 193303611 357372962 595465124 894522073 541041793 35181454 963723519 113042361 697687208 870433453 514729881 872845899 969866234 805735292 887120357 841026706 516991931 849531667 275719863 1878730 655367681 302235290 543268762 118572592 301297136 757911392 734134063 837666263 336107649 555357874 68673532 993678366 271383497 436299170 703681073 318521227 591895589 473115095 199912203 341057076 238643387 329441876 295837405 678641635 653706760 347547822 971759793 324851097 840939245 145347042 244596369 641870309 583002917 264726294 885978591 752443285 275700257 131321020 90150189 679076495 69439180 967626504 764123173 765928530 107916017 652142589 420685565 41088295 768467710 246323045 599674363 815824598 832897555 356980792 881864211 797934764 215530245 468889135 902820777 947449065 723727261 107390871 462057024 596593186 378683784 310917689 458494605 195448986 707493618 680843373 634870169 161514053 271397072 463854627 968859025 610975709 39196108 532137073 256214762 976098103 282789708 603108288 18496589 970335856 158997356 93264088 746221884 75094674 991627370 979694606 959898063 258527477 981811631 393433133 876302114 167396614 993701139 510080717 518251671 961272117 906383933 79991618 161068297 809466435 106328284 790983814 903886722 28766863 270380323 971266500 955855091 270628676 903206579 852990543 703352418 69733442 108095938 836185137 157085446 650993954 304831813 627624508 369108188 733234319 751108748 476870908 100236503 553651098 638651276 197172590 728191133 950376411 984820981 612796366 831017500 988381775 416595791 123643573 353349370 924817011 180568212 870355382 57321469 636677635 173698585 535208532 44027921 891624583 420033826 920322173 27970368 548249773 49448406 563752368 922104370 682292095 412007509 440016644 35923921 340273345 507390304 496332705 989325549 734069544 591414926 72154809 732512935 118831578 139926666 838475468 19117796 156183879 744815810 756534404 354304865 424616863 912072854 964625789 788547075 242956851 36505441 769665261 152460970 769743538 91175406 647234098 769890849 740787699 465416341 50044213 854842792 761521882 228293129 240174901 640365035 526857461 890295880 55460330 991528169 696519370 140470893 4490414 671559573 390886486 435932688 599835479 502107297 557768471 940945905 497893889 893679604 526835676 877734846 917534953 466498178 201283539 457795724 593054623 248307439 511472621 1170074 267064697 261330800 72800632 624837236 539505287 722395928 709781072 200175078 499319120 988442152 18533984 67617537 353017199 146785337 503289456 695800077 95099074 270156232 275989279 530126245 683551068 380587567 189185796 684752332 606206705 747702694 661053081 323683827 65084149 497831107 372937161 304113166 370968001 838170969 302949125 828101782 78508187 123832024 956123685 464513202 180570041 820649515 548042231 197264347 258794125 933026176 125857506 640224769 407637551 812411588 800088542 224231390 950873319 27093061 80243826 246225965 345830822 917668349 544207821 944669361 424689757 757922496 324163410 647749891 997984069 469063371 205594592 916615304 329956865 433836231 56345227 169716462 957481178 719645544 765742317 929000357 681031475 410359427 976159522 187086689 16306744 130579479 181053973 867171131 642933230 110016317 51948924 467682790 151282587 236140517 990584648 368031812 700304763 88387120 955930634 534457216 294557488 720964737 303786433 889643417 788156270 176789039 145791115 92643521 470966609 715828195 360896596 800783910 193925198 681793611 437872873 246854506 56051878 68933626 288806410 524572716 89183061 7729809 421345617 80799399 895248178 408231458 535466092 624123475 758623734 887224875 995322597 594938897 205646040 965690149 611407766 71809532 426125254 901733028 337872722 75600039 705273874 365754740 856939579 974896578 739874019 186412652 970695183 592687239 726072786 249324508 269342818 437757301 600260431 300638455 156877363 976644961 53151018 882876786 257988549 614608807 657143165 616904612 729105034 394190467 124907722 161405226 69671894 672815281 201946597 601125796 377847509 188648991 878480582 889371349 67924202 339715084 627771027 17967907 595100900 563444531 942866181 750129309 709966267 982503307 407497389 404288166 104296709 116677863 157099261 622867928 634501898 99530521 862350476 453726345 576494675 754770840 541140414 886027504 556655186 880991664 131983776 860864034 552825000 342099097 795906378 932286286 585931536 682802571 985488687 271562390 30369577 123605178 173401407 708357060 296700903 995193026 611670000 779646526 382885117 614596228 853604822 472770621 50766608 101621692 722878962 881272890 621946852 395600940 433833360 801099757 305980235 243375612 421861621 463759489 786072023 91282151 228947192 871233227 811156232 314642669 670603229 32360689 178428212 116695222 796283393 777347507 296711159 590150894 486063625 127709310 626762730 204726604 339135078 471437439 883120839 367578757 353933896 560232487 10307901 294609019 424612036 280317961 788896545 675929680 628725370 900028778 678074816 658396545 529292809 49001711 98483148 505027941 229117533 46783848 394288254 488062463 325131749 942386733 582297943 683508602 593098205 177701457 823459857 261492929 502998288 96586955 391690518 624797686 416410061 24072832 742916151 72911660 136517443 584304727 654780214 167757327 836521950 734885253 115019557 204751286 17070164 77644221 294422480 113789292 20963810 519842497 645740886 524288586 17929529 267593456 941111489 55515095 650921523 914561502 495739758 352799755 464536810 758509111 311248127 816774232 417808798 540781959 192860483 429270652 354704794 922437714 327673840 411022060 551733983 656181726 806958862 775333636 144433505 740860722 644248209 173696265 40601990 857150489 538442416 112422883 750146116 892287482 305093874 349947671 33041022 124483215 684490859 986676799 526896298 825839668 720837700 579663450 534549345 632904728 385973838 166760566 177692618 819898104 177638302 19942858 809636631 897350096 508058876 74562303 372028679 105199007 614130030 973900669 511771976 383193308 95549407 476880932 676356732 898242238 739993810 620634199 768110388 190618690 550066142 970475638 892669674 241927789 75018152 91117430 550503076 822757278 609827067 578155640 831243116 426535711 138034683 576743942 550441091 464681207 690178731 633886403 815010495 12975577 772576395 121257781 721181774 531289663 629871789 988365071 986920754 498510466 463486544 929153148 425478530 508370084 855949793 612443570 988429051 158181807 940106754 700846253 720161108 445142366 284815199 530565576 354230203 84535289 909155856 165772331 20014571 408648139 298269553 118327934 251128508 914898800 433074092 684451395 170924363 569228081 34413699 761140958 307565008 573381189 674521015 436986314 836487725 519848160 648082368 581272869 921968304 63321351 767780175 418610273 124752263 447687860 218314021 812089315 781206934 490324184 455923919 394641491 530765457 739848869 176680325 92342529 23822153 250203153 211056602 537251886 377161544 472653180 874697464 704694379 556027651 803911533 426594995 307311855 202863910 555029249 911496695 736098788 132453446 49054354 648867122 754125786 967609299 122187503 881549562 179035208 664798014 681094916 231951089 794008950 841538397 105013658 382707836 595556198 709858382 683541480 417959747 828041577 306581481 755710324 476435509 366746536 398638063 513944276 103986602 292463544 332768688 363549610 692640710 458436330 416323124 103901030 580546661 414556622 293935778 241808883 6957796 929206365 104887539 162012449 286513270 878275780 370241078 687045953 337431907 919720685 755838106 99502488 977181477 894645729 441083809 620885407 874903595 803503549 671137618 28295552 411324593 178258073 748142631 318658115 277038066 992872254 905456451 484483544 178028017 287199608 350691797 976560696 513985576 614764786 851252590 3918909 509477175 584954278 656761994 99852657 739117447 628007873 653260297 284591632 175373682 234640974 914904772 575196745 563239379 731496719 27014194 850610159 584951366 878060614 817340794 12119312 558669582 542342339 239935058 792876761 961050512 639700031 933528461 821548268 219773854 748595094 507397194 653515878 371241940 357711486 640383646 977088370 255585205 653957939 241025775 470828378 811862451 684804239 874637913 264631504 719027773 883283154 114263675 66446520 201821287 922933448 612416666 872891366 269737876 763161961 910066927 315343261 869159753 789988829 326179702 242796049 742820311 870782024 330411850 107531214 890124829 415074970 659781888 973818244 338031173 335553009 916938765 898980271 471140772 709049430 444691933 553027139 662245810 923613853 866458713 58935037 917950376 280603271 803428887 905601709 811406469 244833779 57610103 129656024 82859900 96005738 30633696 977450984 825690272 454746195 697693108 410844998 628499107 737329794 171666823 73428629 381559969 973645745 507759549 404238853 617527795 660504649 467805440 596507895 487714500 427168032 261312636 281550578 110324011 195384413 294005151 857044381 942118733 949330106 274367055 168554047 802069024 696123858 192544052 437650982 992335769 321508870 785529345 479257785 335712510 408796815 273416716 260107833 86903123 253176965 884185389 332306950 772516240 748671558 466854091 150984018 931768527 216503057 648128545 583470906 968902136 240968649 788693770 531458409 975410658 648297466 954509653 86996170 784084703 260926197 102781186 701327574 596258613 153249046 838838476 186884641 365895482 484375454 216237884 925523398 222966351 726222616 21962658 450544680 168340068 289706211 286362466 719079157 577653505 214918132 384481776 143123492 749822762 567467671 822268703 191456336 267474776 279139011 673877703 712501711 75047016 195305628 912134597 72726311 701406089 810507538 678839501 474009016 337689862 857284503 347330165 718789567 466269105 756685328 636123972 833938527 509806834 80463923 517999901 981118713 920128880 159759157 222283952 200971689 701384050 668780435 257627735 662508203 653576527 412589946 21443029 557807711 401303242 673256063 147399397 870580860 353395304 980966058 141603900 170625307 383585583 687289082 367546144 241799604 580425570 317244347 182332630 373898518 113532162 272174054 508087318 418072645 186465860 165742770 764855681 403286941 911012149 677206244 951909464 331944200 107945214 282767265 670864446 567731533 132689510 458915673 904796384 280624671 216807416 246205943 89296666 189083910 632603785 206979115 390733111 839720037 908413290 184007374 62694634 255197280 359202970 969469177 93337293 7710229 616197404 250274378 997962781 64024838 186149926 487315442 885428119 614203084 547362668 590071671 937511284 776254928 645001621 956430635 26613504 873704629 374092653 135491268 166029083 168228485 520960403 210423609 855371811 454158325 313652767 330513054 112454440 157160728 352639324 524759418 892396013 383377088 563313684 427848766 795220888 524931667 455223014 947406778 342940777 582619096 204480191 612780926 152726993 531199801 35603285 856535753 799845115 283378128 680417157 264679334 309728936 106592694 226505430 327760747 583793303 5129628 546080493 914087834 365651904 727634129 5706725 994731953 155310047 756250728 653278160 967304144 915264861 935232393 150048954 342952792 51498498 194549858 420360536 510808452 51456477 427392566 679843467 924000728 949853763 521806406 77013358 179744136 898427627 564660008 180266921 324889829 922898352 780174206 163861250 632179818 420892345 415440552 283478709 649751692 600933577 153152287 642689251 720945310 228387384 498059148 627995600 788217855 789986256 50076305 749117052 789407129 100997234 28801000 794742875 394184433 738016385 427823393 126833152 52192514 284272539 773294158 928666684 329275152 306833850 199721441 793487037 346643087 519150854 712786487 431875343 343120651 647304124 296736033 919587785 788782010 807190164 405236370 361708600 113730710 881882131 868353474 790025380 667763072 208692878 869764497 854003071 595705185 201328085 500533535 23181355 438016515 683416422 776338467 870641521 213686408 700713473 842255455 656848738 485601897 441682134 598698558 811836832 137388037 984684198 927925513 634530054 157189044 497166788 538206042 590724160 119298472 771722385 4269337 177875804 721542243 754014005 972018513 851084543 452923866 215141087 748084044 767872490 181977730 335262194 971797516 329373996 387588421 965888571 481152600 399225451 453502841 505457793 268504601 167982549 826731598 523087806 412783597 66087258 390164542 684773704 709308965 940832364 570607284 974724084 111425936 49971888 940105526 342813432 391722488 57017181 960186789 448886700 240795975 880094561 11365581 973218506 411088403 488853427 997812691 934252903 799306699 601069283 964776701 230748308 426315525 445199706 601445024 751350521 148405729 413088114 305618881 622293821 746445828 311349043 152803578 132960126 910489478 461513308 59754059 554303868 126859324 917751977 732938855 525491554 291168289 90509626 85702923 991765007 770751901 543465587 388281002 890203182 81898269 116895450 799516333 310276687 648305724 321375399 626793805 846044423 498421893 537191378 487607970 641102099 747768211 847416248 700936406 944308799 604827492 151031148 733947463 370920513 502191971 220917068 832678025 330357686 600772023 338009528 608980747 20913398 934020870 12211653 103199670 617274864 589792205 860463816 764493778 283942157 937942601 129055226 548697161 813481018 761877658 58979464 943798225 768802774 602519776 135523880 611327384 852501707 122219455 978255684 208266279 775984520 541694397 745704001 839190862 177902924 500934029 101359915 619143680 347684266 273821396 242345254 469961592 701858778 894298148 356817235 455036286 360573413 621796472 11622546 103360748 880304 226364940 47404743 568871931 301876846 957505467 935322419 82270476 374078775 246668496 579613542 112949036 856726771 88122090 72395479 528058027 57006489 125769390 476885380 650635191 230533394 99921181 104172183 453722858 767472184 397423479 800410731 874364495 267763057 792461336 834652109 931366008 651920765 340429661 505087664 83449826 796209645 720955228 853383822 265172241 552795683 49810791 279956166 918655632 195424726 857642065 196232491 5773684 969830670 196155371 616618832 560551236 597005939 484331763 584808141 441216037 518893659 278746888 117314965 713362041 310144669 553436980 142193888 431625131 774170034 614300256 344765646 326981939 932857165 863922576 144028617 379509179 443235718 814069696 175105238 509133258 610926023 75271406 8072649 442049624 878649272 272162492 917650275 192802057 623653434 684134780 9240153 88210499 115748757 716586372 702486062 653881456 964508176 77417509 665616946 296345743 975888241 672241279 480280368 663045029 326930154 361404874 27183638 500664024 566779207 16079607 721524879 861580455 734648013 131600157 639102106 573360091 463872060 52186029 870425724 626375203 374676281 921241758 429562701 720087055 880278365 332966820 488186133 309815689 70000053 885015890 476041638 101002603 594114236 904869462 944004946 529675311 624042254 59033705 455765889 124938329 339747027 144206980 879885341 996107437 685478480 470188412 329623359 650907579 396873772 317218448 507437159 901451938 598444199 156823440 285623725 61827401 344630898 455932781 69023068 251985447 327846055 639923219 893379832 491995242 948027930 424698065 146159364 350325099 862328327 169619418 805768982 839522239 838002698 946572055 434810542 908674927 273969336 32687178 824282496 685483371 624460596 352330232 474727111 265282193 476132241 53159936 649548169 624406905 287381396 743641064 49493515 137388171 459069147 294249355 397505260 754119716 343680857 612736561 920507256 481056393 441922323 711718441 306768290 16056279 9941667 311665945 574085299 130157401 676279917 728556801 69235695 861011759 912101229 182808184 771523332 709487958 700854203 896897425 251503862 927679528 838890663 936642555 793777325 795000275 893470207 51350822 177126928 86562665 122065649 21146645 136966638 381888520 498211273 405603137 754555199 914176325 347934629 625422651 879980251 670259257 403858925 41617025 56032666 101747101 230269572 364132429 305886971 379780181 280858622 347796246 832371586 358113042 832655364 284164156 653677187 208381053 65728480 633868121 311304190 828077137 798199500 83092010 667081368 976138670 966236279 587213969 607989326 25630392 415673012 870713389 921079887 558681806 458072667 196466925 542412877 589310141 389905913 839679346 927868891 825797511 311574035 290388818 250550357 739140625 693464045 127756167 317331975 560452375 389919531 513975064 855125 982479628 778739181 191032991 934467066 917870526 915797637 29716303 321821568 573429308 677185446 176038448 512622754 983656777 232265738 755997126 665246267 315174335 117031729 226532388 6588507 380098609 351147641 781196699 811672733 250537381 185677119 53954604 338580582 930948082 765285917 661563392 32247499 24518913 628821439 177456619 921624924 181790303 932667961 548730062 521334525 333203877 404332148 558252460 349865496 976639037 48777098 509056444 12296637 174634384 704427441 890503712 573657432 399776520 203034116 835837153 988643092 275866685 96174082 752139245 941765802 86046252 730463579 186538862 954991057 58599770 652048560 70478438 828897588 957196793 762860473 400942850 388286592 66290907 529565042 341547880 827834250 488157304 490263629 963553909 120916340 756597573 849386306 534300620 622174077 901598916 85437824 516634494 668483619 469687724 949972614 553964910 684639929 562975243 287209063 648586905 723830257 933214985 122806556 175005487 124059798 197437315 550189227 831198633 772115836 608056327 949224669 810640944 541055361 502547250 959599480 853031391 289116019 89820000 19765532 371714909 594016591 930993475 932727962 285574710 131262725 647163253 798078385 19332918 846547900 871902730 185379169 641222481 870348817 389288553 981134901 291929634 98615483 325635127 350770637 830397906 840709718 302620136 620539626 392995308 168575763 244753485 460897683 540742338 699141729 423899147 430962875 816423065 470417722 844680058 602028738 965631008 260158966 715637874 637458279 257734126 869056309 553993686 787035230 9761111 509429971 702895575 323749315 348972556 270461888 631484592 889007003 706468012 657980988 384954216 867066781 260866614 33168020 567399041 705520917 725981758 974976078 790357394 44406228 230624106 770749521 571060888 868402844 689259151 961634408 860136408 344001872 677286857 49033797 596212621 257406099 762393714 679798963 477368340 383022432 902209444 236822616 370404254 153412184 787449899 826843574 318387025 620650323 982793343 696330176 795662212 675970428 504904580 128911904 764166742 230895030 667183737 853396725 505433123 504064756 917757721 662505288 862292191 527293290 985625165 597985503 129675412 605380819 638762282 875405878 236159605 140844158 78050191 128652189 73703926 153637456 867089885 366170888 194711428 384224851 435381641 698073197 184167084 640664057 519606069 681999854 724639501 837422293 671310199 369903356 99323831 239066030 278961856 644339636 728964013 448583490 399642800 279940303 556737426 532087468 441926190 804342644 485909216 624038014 115935769 893370512 925054118 225760110 369262024 927782429 495471372 274406905 510116416 364120300 260137518 45329188 476162230 71648829 659475216 198963006 636887299 767522436 840411523 743482510 544030354 125181304 340240195 218454685 357001995 58721930 729510859 138616746 675215904 304556546 514148208 420722824 344825696 191867582 859800792 227047857 951120457 181846199 878516314 290405268 422299224 727895464 399889390 521768817 42784460 694151585 326976678 515925597 415271206 253997785 957735769 752432958 16645624 629872204 570568863 37900972 741486078 856980666 293152114 315137448 728122724 92187674 288332883 663844267 733037209 907940080 407185427 819283862 647386912 52547373 177920855 72590838 948833603 603594132 274830935 645773009 409881509 57929547 414152962 543612236 566365620 144794479 154722979 214964541 30262329 108297885 37143296 832114793 56430709 867895063 570151380 723659231 512333256 586507286 104300838 889737295 805385805 690946110 417551464 586784168 127415730 814189469 697883292 11035791 898933068 484688798 572802976 244525318 959604365 71227529 268832375 996006287 45948608 774491465 432171376 735857132 622203586 640411539 273308791 969616984 361791196 997907455 147729354 287778288 272578235 810778107 1491832 953643762 459252159 341703865 420175642 209392628 575376907 682481974 714904569 996739736 524381966 964475666 32774786 270218848 299427127 12061845 673789994 886716643 371966199 433468416 782818532 712513925 293790040 480784038 769867560 664061806 487100403 60058647 668144546 840529102 60023821 392407321 352886920 927949562 547697474 508093291 588085431 176083470 441542920 677714223 730830538 443665824 718490829 358086188 538293648 946938108 542802091 223286966 586773471 705391312 541904967 759905892 963613188 313165265 914597069 852401204 603131611 703686802 305984729 392309960 471127113 914239322 345151950 515710199 231984833 703183812 680485843 918562135 826657240 992545438 858316398 203668066 788498890 156280235 855423315 960103376 640425570 12850100 461689405 624132227 169338992 753713487 112236333 965799734 687942034 168402553 645297885 869825755 752132151 816286515 738947117 385143185 373899943 460793386 56400940 433270789 288853178 348451456 8944000 258036069 505154033 182510131 468019460 104434384 357856724 398222886 100415216 279416424 810850312 793001842 177482615 131397934 328215339 75860183 95105979 892435169 112643887 778043073 610397902 587175971 703114812 716599027 666356563 425743188 104131057 582033142 760461544 863914922 314277622 812031351 173503571 423377727 90908937 1009393 13913389 558115338 487949856 106905489 698325251 558296479 320043031 338996639 637708570 949001066 474851162 653918466 769222742 911062346 930327751 327071175 53446008 772145045 107675655 960486244 14181441 227735199 649447043 229659109 521252805 898135504 686142584 605111709 508339031 777756276 715560297 157369388 794420134 234647853 684021833 680049405 53889831 660440597 277754877 752882931 386069875 524148196 355479554 8438789 255116590 79272462 699025020 309089170 533799107 323709348 371604936 46640102 784398716 720196250 437357315 253665868 750367626 841969822 9072218 941277721 685310912 929112998 325276640 964870817 508788935 331977894 731360678 463945451 11649578 951603526 299607026 805736490 363991415 621826078 139588188 33493738 437629549 298817966 733862742 782154458 286120546 988747700 838728495 703950933 452271905 551505145 567182670 885957075 468934035 472308296 616345517 73712592 897232466 481370282 432479949 760100048 944998659 626738288 195604960 699047931 928956283 28154882 4632088 66121277 579527600 335111251 474813249 30092054 591779988 41857297 98034620 105178625 567179385 345367774 67356592 816871697 363211732 233343281 241786331 658947370 131660047 212880223 858488617 205340348 148494984 234690255 757598345 831658403 512722441 253423055 853860923 34832373 475222123 108699286 908638781 205658959 508928346 42043138 213472922 436906397 149989191 559509729 893890249 773742451 704880452 266993156 144160289 180066286 499277116 605657246 53768601 838927594 894853005 45223191 660478590 185471760 166576230 545987639 914785608 245626105 227012487 393973338 609009983 432530126 337324725 54383224 768078099 342522684 556903847 207097117 212525302 772697422 477669100 231701462 371411767 798799154 365422647 806804351 520691485 181997317 901418391 921082412 137737405 395791590 156977858 231209370 188891526 121746488 878845208 687250145 349143174 761226919 323266856 772037659 855247639 933578272 539891663 176581668 128822761 25845920 448692037 709221771 768986536 90879400 621755242 517157143 650241184 821185016 220240921 417196307 542662142 514216368 541294602 140936967 555277817 437096064 503241272 669041182 533273706 108253337 754196221 784673439 646807768 877833937 445859442 517148588 612019978 694869187 608285400 150583304 393471936 623996619 98813597 781222113 108985403 319765845 931096420 392016662 178014316 951829839 820364687 670209720 236646059 42356299 308521131 979637092 288098367 852805499 380304658 997470580 773746216 297179033 584527504 332060684 309470804 964365086 713646779 635231373 160893768 463415295 363857790 596355618 909277082 192293783 864767012 173690064 328773877 892134679 459571191 856342110 4322367 889098222 64782708 914564487 927017594 577002389 156903091 817858317 116388753 53042393 356512479 551226970 472752853 563032129 643302613 503602576 231510049 325257676 542982467 149295443 274006116 610939549 560834518 253947391 488339683 206997250 77654657 234655741 552320336 904468129 67769894 877812047 465655011 659920817 923483555 712236221 970601039 255276601 416923729 993782740 567572684 202166228 514914537 945156802 876912044 121945488 358382453 975232739 935628377 407574900 357286895 989488737 609271021 529081007 76427646 619407510 922505066 239739647 271319023 960632822 672608921 94476587 896486938 17725725 392795608 459144999 201099010 184470236 332824259 779631690 407123386 906850068 528224687 750100944 713270206 431009666 300732901 160329654 155359793 842926221 840962829 708834614 839922821 213815613 295657169 531233044 529978172 716030127 630828261 615216170 862903644 416618420 792439631 177108316 599522447 160575525 483938887 842590120 23273581 589404601 805091676 84326469 756442768 107294442 440391770 328338537 892729665 555154381 539977934 405419961 751838387 969014763 828357448 690879777 299908584 101221784 974708558 428619280 108777393 824809088 278727341 224311102 584743372 271257462 493339428 470630240 660849460 570036809 269246313 653992350 223266035 587683306 128029624 30379407 951262089 424908498 441277424 288084744 695269514 118173303 443260336 481786097 848151460 779467537 701875991 305761470 12532244 120315270 970921644 152814423 952781709 630393232 840076209 761812543 222530432 126019987 360086508 499080245 615368532 494320233 935153706 526215979 308078073 277520727 463298477 765842543 676855206 911984417 375557931 300489803 306858787 567496038 55833622 758041339 961475706 514291721 859457575 461307908 118018260 575055201 862972832 300137107 783846026 904813731 492794010 451790806 262567588 530579086 125999999 390920851 590183839 875811440 216590345 780107512 237254376 276984895 259167856 295266174 143072040 733364347 132758928 107664914 542869537 614087706 145905423 221195864 756293247 557161513 366465972 431194604 857197293 347556013 231280310 230602508 827624366 142547484 685270413 556066284 657861381 804631722 430885041 875222414 316507143 396520263 334024255 332863132 754752112 809082490 847008062 884000383 882681853 766932848 166383862 986838167 734211769 439185031 173283374 311882440 384594234 180493773 702387500 767996057 946837497 525654767 113706921 133015060 600062216 820548747 969383597 35209262 726986279 719549859 887896254 514981949 870654504 937147547 919451687 505500695 387102132 728911704 9994291 238948039 69814403 651718551 668359810 272117696 913519307 354270611 672562291 119684434 63372419 354121518 849626753 821378363 790210087 727027513 3983534 212346162 140022886 381535428 117428587 536052112 334297430 405640382 233686353 382642679 152858127 170298742 889898864 541966058 296912722 819981458 825990828 305273508 913081401 920175271 708125257 809364410 838048534 996625329 942422210 847230579 958071816 762068123 874628459 104171687 408987140 967062502 675573285 228533317 588072719 522119969 217490171 980402069 676821631 357155742 44637707 835643817 395981899 490525141 780553171 904467956 574231243 226613282 880366001 24170428 10454739 653003329 585906407 218554709 32593902 255541375 662809648 436966299 910896402 675364699 392537851 192595367 159012051 49389734 445932491 540477054 705286089 691804201 847352889 52586455 251646629 780333971 380910996 207605040 747200764 738958070 964416139 821716873 385734607 238166183 25633961 93602379 944141384 374508113 38961805 904691480 602071000 882404003 406181537 129648493 801203610 961923777 544302735 712428237 893614740 889052487 441803303 76864570 257695154 353547737 152321547 868766788 959101153 101225090 23000027 743682911 634445268 217246214 322095977 336828923 591956078 340544272 685986267 214862592 843489723 250987892 910477524 175254171 399174029 949686817 761689719 70392577 456906739 416760210 443117678 172534874 441900064 330380937 880674688 232715893 98581452 105172750 910309904 55197088 280648855 807789384 365751321 482169921 801211490 970640500 958908711 84150022 98482242 421347098 74843874 70888213 132060688 115744181 119444476 294223580 818933284 545020622 752810145 988863041 295294613 469758261 631894339 279649485 147513166 161303565 752388109 948007316 544378035 640441986 193148119 638711539 516425071 887545852 598798215 387984266 864372829 767268642 713601400 303597029 165779512 80244378 278661336 194429239 967197626 878336820 112805528 501715582 15205864 234351995 846134121 763935211 697763436 927149222 952588830 696498679 915119890 725444486 769067860 25712077 601948518 216935772 422670308 90546318 585362584 514250149 435163044 987544164 13410205 139494509 343174019 397253293 674784984 870229660 515089833 908399504 126300161 153847823 960036157 879321695 595567034 546338774 140419512 27723368 776143284 592694679 62739235 407415505 34798480 874077325 352443173 922456605 318647901 843323429 979174968 319503892 744041681 670707409 904697242 163843992 783570896 73646575 243203047 121499533 356459452 386508722 277312577 887639805 299530669 743376782 421881598 807816619 357322707 75490570 685956091 665020531 49691730 600237798 413837728 300504013 147845070 821993431 715566754 25836357 9693395 891558121 156734724 40019092 51351441 567656991 292427449 378064621 589577798 879815646 432429704 623767698 67834301 347857802 562479566 62551615 122260964 929968005 866143571 886825432 855138450 690652788 578152568 732559093 64154970 308106767 501719733 675101223 921953007 728598035 338702745 632184658 300911299 913111471 941032538 184592872 801983374 402985279 87235876 782174430 538507558 521658802 560706121 231176237 638049159 795812523 153101030 32918226 665702459 862166645 493860838 170934393 366746058 881018787 556797309 29216845 969295439 818266303 890575120 584461135 265729320 604026073 840853256 501889761 133361374 868227742 996494054 422359299 955364290 245538215 855513559 808829495 342838847 784293727 596516313 896620294 32326125 975192900 195945719 360466067 535229469 331497923 349339793 732033966 281432402 707057235 423834498 865480858 793908319 197251599 872526528 593321627 568669429 653986703 590863199 163193635 188290335 107786711 486682286 811067660 45288086 928021926 117244993 527706753 644901043 779795714 86442570 557537673 644995817 641689950 685452456 662644875 833489576 757893694 393647361 318661769 261071291 626242069 328799974 375268506 709860382 402826378 974829813 715433338 776737939 184803851 567681663 167927542 452485636 523420656 492506872 747017823 539939895 960041781 671671985 649128123 374028604 780671314 675706440 178288479 801403040 362468266 126958450 259269538 796921095 590176069 455155965 727849401 921650660 575843663 489140472 518424325 471474175 600823449 940390053 572325771 50194913 42703012 303629816 362519022 577625065 662447041 74577778 544388850 643203441 747588896 106786973 219697919 411912371 264433946 252085785 34696404 154757919 820211218 165541197 390327115 510636170 55533893 258012656 874129232 453111599 237049439 380016952 700577030 743641303 243437527 79006344 654080609 71867739 429204664 145441743 463143397 869554969 563682885 408815695 154572181 911717324 221606713 884642909 224719168 644209421 616103997 603888083 847985165 973328990 472539442 435375533 520943630 456035145 765255026 119973989 967600292 790711020 822311422 364599239 801957705 471390770 111566915 532252437 907409017 425860004 79851543 322835708 157775965 909151167 283937165 724837652 647869762 297228013 604344618 286800022 800951201 741249884 742583093 926510046 855201990 86467709 695614270 689506707 63604718 804118870 173452940 847232889 103526537 211789610 527188332 507452319 674020272 52450062 995562716 997898066 178814230 356453583 978837556 801945385 291114668 557267748 275061175 18317680 277306178 480169429 471833682 210131565 166365887 993059675 904401450 153027654 973926596 481162057 945824477 381707086 35173830 672214641 50578226 86089429 831808805 29928009 805763639 145240555 533591717 466609905 842789425 942123907 671242291 431264273 590099355 571512763 399116957 209426878 43931626 726078242 60283282 181241944 902242256 28416849 116670231 505085544 81848625 113094557 711636352 932930622 765396618 135570441 276516909 669378619 268741558 464544421 278350612 974459041 107735456 787380072 693500003 361367217 716438494 526725245 312399992 972739989 538534136 504582411 235619915 284374809 120719116 497965248 258545207 347217057 187510514 604547406 361539753 957525447 723016892 522060094 330087422 570531666 250863440 363348145 138410193 855346729 355981942 557201621 225306573 856643860 340211828 553724371 872885736 319362295 35975977 102035631 400817242 467814583 763391161 816985269 76281490 121811426 140348963 21534901 216813414 169949969 4852595 572776019 482029373 410992704 52459075 685483696 746664556 271356636 971306502 776822769 622489178 857622775 929355208 928649305 363920361 106133495 5912913 435445957 532745581 395559280 147413331 956023995 980830301 427172098 247416661 588050642 892660143 854480640 224927844 845554930 328010083 58273616 926157870 588371889 617639432 366088485 504698146 100541433 559461565 950371716 858519972 527636164 533074421 319269451 726184802 426105837 482902846 565169349 612375870 988988704 256998987 880189168 10154962 947340065 312675936 705152914 327689528 476564334 418388755 222828676 289291521 422309198 782810085 877058336 754132479 182142103 502858218 761159383 168657595 139192669 748278480 620342972 850669444 183435149 682355090 238530351 925980001 848947435 297416814 106970381 308195960 213323745 241400033 197637811 764723025 382156366 625877283 220484491 150630633 677522949 692379784 347329598 271489939 723230128 875156049 672882272 467375383 358169090 292999161 529730035 514671205 685321907 363291774 117847957 656188757 958486571 607432745 950091665 720231362 304368897 696312086 444849342 941355269 63115191 382207223 364638427 332329675 306347497 749582872 735046784 29969943 970798139 824595346 487136424 405933575 795951122 170311472 38562792 989985198 4817953 531335918 425978533 503641095 822383510 901866304 228045094 750120059 206268187 66421049 250569291 773200333 544442713 858553004 197773820 721553547 922338914 352552971 858674129 952740657 688298512 484248031 443205968 476698876 239116819 924629628 83843816 135854058 945608168 177749945 793460355 180689804 571187054 889862824 799803099 356532879 846672033 138091 119671363 665501104 955093286 868622970 265439835 496192880 244914783 195624632 388253068 423201631 814782411 847438291 375483215 627763309 758409674 296708268 646335369 837192705 70632955 923823418 889938541 751081877 505159063 381222382 455895124 979739184 655644906 692321043 709596797 685396661 291200476 91186120 775513216 716116048 418240202 686637315 481265224 298808566 302865136 595106080 487964595 884624967 468336283 771732069 335869449 671223893 335231172 149648318 105643703 407647625 269924516 619270535 863326056 581125411 392589295 547252861 440694104 111688089 564916178 794875019 225088030 148117921 615926810 489533506 667816811 187838507 311946009 901670596 652319902 974146140 614730670 113204741 86355121 952057043 756675296 434191713 886814551 78540505 97723296 912762437 124751389 837141639 885748482 670917407 520045905 604292100 613295253 467972598 81367652 31613419 912846330 491917024 517564423 972225568 93835978 708746151 404615848 276833987 410526674 258604572 420723930 244966866 358203109 956777642 977687809 553270793 617576886 81102398 517050129 90963923 619924958 22973114 998229967 662627311 715981682 384674983 702772294 46440138 751546573 856608056 207133720 33412633 824542661 278153746 603509222 841821523 67690325 76204536 755842761 111541859 772312678 989299314 571420402 16745714 903387334 444241701 427151270 107801224 175980238 770076343 581531491 850927301 457924758 267138926 131824661 92608048 560949362 858371931 392342343 314720846 599667951 4002292 482792022 657524862 175521955 211530232 187185758 431034219 744668859 914295847 727400781 929341337 655436190 712517048 181940556 924393136 264853618 974554952 527683129 817946206 560927806 264975097 170081400 990637746 442630098 689911683 524751492 809579332 825149094 652104003 292016161 295482354 634884403 312614303 581131903 757947241 825886697 542744637 329835032 707638220 530937881 833349332 939436271 919504763 888486885 26627050 422416789 778380837 882849527 704548089 697745454 265090416 678317676 900629061 574763649 988279775 16478939 227035535 726300852 206330048 223491497 38848295 32273063 217350786 837401674 49871635 27182544 992388243 784416375 404490416 926051187 995759517 504446815 822085853 97876411 480923269 518185771 614062669 872941925 226136081 615423102 523969530 159602594 230555290 270311118 68822738 404059436 469453364 855224056 626536256 773472458 318438486 653225551 412493141 590483850 309973417 485312260 742415121 1249389 536407264 897615002 67310605 873091868 98070102 588465536 118113870 61939409 114778030 997773215 429016588 107354699 885852949 20989750 538099348 954509128 949491611 352227274 710448452 439657294 193853343 629092446 24362412 404244797 836309456 504072460 401205020 121223705 361025688 100832486 826402041 913280536 754671803 165703350 628352701 323399004 688608946 736182499 144559919 294768998 508341471 314794720 226933252 200015869 380319349 85374572 203221959 939325824 311303384 69578055 663033318 493503386 799149972 689378004 558902088 147104459 651660119 364499652 688848259 842529772 44988338 547346824 385911267 519109726 42860252 933083510 723201827 864095602 100968351 721881611 699159769 665594213 318060461 493419576 55118842 431104108 131875411 99082240 616309572 419422645 385494245 149116336 830220314 309987242 529704593 299853969 453345092 662422263 922221011 996693814 737153933 723946245 995594273 236234137 923074041 919104915 739206124 3902385 966440621 577793235 158161210 273413670 37530063 103345167 464566204 983944707 648318756 635670605 639141512 902163358 479880961 586734852 646613685 594270865 386948721 756010138 364706580 378094311 261275889 365871339 342030355 661484959 224229469 565234186 853443204 810286602 304182531 984604578 259188350 402318614 543345290 279809144 406704288 876883621 672980281 985274667 532751984 765533749 470433364 73338847 710513831 167704132 367137727 867370009 722563060 375071529 602805291 113391844 694034142 201172344 263759611 304731784 910886934 410675669 579799345 823106204 372053130 647540567 806897206 175416573 968622328 703317672 899802145 620082103 928918746 852733981 990191308 736227466 989656284 342721297 639315219 76355694 436315578 98945480 836049939 378878695 821393071 570655555 808839498 478595358 627267057 442327021 578962603 728630541 277532777 553883234 601810815 696600494 363307643 446384429 905326416 967897516 370003482 386696782 322018570 989098162 990765013 527794720 863090016 983751608 450393320 731661173 796424196 23384416 774320342 610903999 427450573 937777619 230323194 735902513 107245843 79795724 276972427 686058047 876233190 772438860 787349193 886094226 666103590 471959689 675056793 148472809 492656548 875208553 399554739 74814603 250220974 26641932 117575003 186715849 327292853 577311240 977303023 170619438 359094066 448422194 225359820 70701618 501916734 694108106 939348110 70705385 958100978 915529915 62919761 644966087 653093082 367168505 321897684 692385959 792128575 765477983 868935697 778876059 717965761 50089181 465323463 693941922 25973606 272689556 318383694 656979996 178909131 315510009 132178070 668935517 114690266 370436358 194764071 651036464 650250066 980883086 292088705 604026635 479626231 105210129 558851771 933531397 936664905 934802834 456307701 819381333 468458183 843741502 531049469 95976909 676402458 316940815 538805679 521089937 522838404 64963174 19559966 36658105 91506811 360941415 875748058 119898432 524860078 73795050 364415279 286863938 852796380 109045512 736592664 274073133 242248274 801886243 255759275 22120151 543625481 526876137 611558053 837605937 373167858 980639060 18685958 235681968 453374700 142181763 921620079 289432765 805035747 685852528 752018944 617024670 801593822 904363911 403009799 886584963 607955837 921218170 123955653 431351100 762646140 212915853 261106104 681896734 899606451 618858642 237218005 82615045 647251236 930953847 618264389 637876256 748117355 103599800 846327805 152552052 886325123 528089013 72484871 685305379 541115818 278086715 528522411 588530723 420943793 831611558 899478402 2347550 501557475 722588307 547701548 573686661 140711902 575241782 809185714 483885539 633142643 279791742 283022500 191753075 997556767 519296776 731372446 714176541 22987671 164627849 368101596 143614194 48587300 194071034 975509621 150284449 299798646 606634666 678303653 58208632 665168035 400053820 70990403 661312503 941410816 7688075 105938656 979793488 812268809 173770992 295619082 358367226 80529397 32355143 278935573 236635151 932584249 962678812 317585813 120488477 279019121 252742349 341130008 606260008 641323109 470157247 521453562 894028085 444268193 955329816 209326338 642541120 963228027 532461372 511483347 8577720 344330741 751904177 458585794 544794878 365817205 982671022 300571995 141344628 239370761 382169473 969201035 844670709 438094270 46737201 416428860 144351929 422496320 61336713 126433783 355601181 662264790 387776423 30538225 394369250 911702255 159024284 756155216 64807161 262484869 599879896 540185338 564800864 220047714 70955318 489083373 825573377 212682842 861586385 204275134 518130928 99343275 842457266 784001272 369397361 16865130 387104785 817268419 930799415 377967127 747473010 421209857 727607923 947778230 493310502 161868540 757743850 19510576 459712159 520561547 107099797 184114034 535187252 358390277 88363609 695263441 475836840 954741416 804772054 624838085 516689914 855707784 970327474 285823995 878859755 636859833 900440033 603512726 948438572 485115325 220139821 954550192 989084727 210999880 355224270 805144519 559694546 524206020 430283435 596859414 856345067 242766002 250734409 295240364 147734695 932214771 764307907 433154668 43288234 179623372 815808025 361827856 571955817 193757315 675246289 77161492 72044944 789140987 659290744 972495783 760594065 368667902 252355648 305616921 958937632 332326835 226524769 70803650 943307769 278239759 798876797 45292369 397248849 434498096 46090575 662485138 848617973 129898389 708188907 625339892 474732958 970923752 223119635 979206733 482411117 546701940 684601710 915172233 231934919 708738755 59720933 797344444 489709447 748948607 916414482 668946554 987017594 151456667 245312456 256208306 793250436 574647755 511284577 175612550 417059071 109449329 559777818 775221998 381032514 63532403 405483017 578108044 985059586 697197128 888243757 690178200 412896569 635378173 616042904 644162976 98185533 56323439 399182731 549445629 543747572 548349497 574766826 312895028 677047741 575115717 168149513 114598511 747994009 316785138 482077295 292454366 921140309 924352508 148202923 649661396 611831267 686289169 603824115 663935186 580997178 605364498 438650363 355105663 993714735 597119852 178627884 716181232 513940189 683346974 150353620 394094491 105114557 183037650 233386397 277024543 113180612 730730028 35317339 137284680 528851380 467746178 643351944 839075229 889185915 826330785 345587266 578564251 162548468 418929288 994190518 783202587 140495611 918126965 46735718 924426607 811408301 769909083 674656325 368563301 778125456 924629763 469128657 637914960 551585785 627324684 949406190 491939234 567243122 529236267 252134269 589416731 449327374 903107015 121232719 674030829 619024579 289662936 279484243 282453088 299254274 873353629 152905271 557922173 237161185 627715038 76364378 41700364 728607180 466392223 861354104 933053123 885304318 792824991 41917275 279673790 952249255 58999824 828121386 24404411 76443077 801115127 194257159 53072923 11710597 201293468 314981520 112510473 159589697 508921307 152715624 52417623 338241694 748257304 779795956 597306915 23249684 87227202 337736711 775679407 293478060 361806834 958766876 29319331 776794785 650009119 919521160 901555338 539455029 810872277 519968655 10734153 982269794 454744570 346169507 435116033 715430997 829988189 277466086 828445632 95240336 813833451 482475317 578610552 666332358 191712949 403288746 402022575 559498471 11577240 775483175 395456076 832460315 615510093 848517305 832468281 358277685 305996639 378855266 443971639 781237831 1555882 660158342 668550121 222872400 617583449 627445882 19065755 459315280 119528300 500130400 537206779 125222407 630346849 935484625 973140706 780439483 637241711 978373368 862200853 439991321 701923228 126818276 308249151 247301056 20521020 57241302 194228904 167778243 214349227 117009800 646815690 539577376 426103421 83172509 361361091 537545209 971211571 383469225 481283505 301037136 338397572 497732195 513401731 729985364 109181901 125348616 956643710 231562117 54975098 131355632 539814208 282140744 784102949 499172716 259839560 162692406 337011096 981273294 794350033 108439190 332694280 880064065 438081375 538455267 207445180 246280694 79413869 553021179 625201364 425465042 538065875 151140183 626567623 995311138 366001167 832142239 878499158 242809311 153887835 754608913 958521735 309139459 2542258 343149102 122800157 855373729 121401302 472095191 531566362 834133086 96269218 110492623 75659582 727792196 736572151 738001693 488450691 460361566 127183353 690779564 153134266 830901756 251126277 775380829 769117402 427112015 512458889 150363503 148555510 701369858 915518015 708160001 557840433 560294295 764984676 762308151 681524268 90508315 607911063 87004882 709691760 51818341 237894877 452275063 354454021 592030243 177816830 246029717 214132871 887949526 745739124 753464515 197074825 497942621 659998676 579025158 139498300 602173560 329760342 603073006 322011187 319113721 845504005 80527992 147783031 291741501 331597898 894480684 624150066 46026530 447129096 644681943 918900960 859074530 872365609 786585776 485172204 871211695 582701253 396319361 430861499 665048620 901330149 661062920 576541011 905025983 310821969 137114780 968914438 513452871 284511491 514668425 402457107 983898618 704908967 419564653 609537913 152795988 933170271 385991394 498932881 884332455 810751072 236939546 156724250 893530233 48574586 610964423 843447323 579820455 607068484 689386781 308492694 217655586 298899170 107873886 323346915 920196690 241902841 435382036 462487226 977209027 199465464 405491243 445687743 666738775 350296682 440687108 636949130 870316851 307431951 947767411 392390720 332904563 839897611 598307305 197108558 563363198 598439662 153618413 772653374 939583431 876357150 700264391 145066314 581735501 40811763 669783632 491067764 395040461 117213753 399968235 776626574 473847065 34059351 270140120 976702281 423932918 100516092 831293125 337680315 104002022 687670888 248924670 765963185 926493104 410318700 809353293 446276003 992589055 511150590 311555080 482841776 361992733 814387454 580406944 608941562 969605836 816668512 186042651 167136124 715789928 390922019 610317132 356093022 509453541 472582436 247965059 181744593 32435457 174642496 250494111 528280542 68377424 538176191 305195068 663334688 834827959 30637025 94592753 77974255 890688967 678454243 748091168 118186557 422333572 53885414 75017598 669160708 196969510 405508877 431054898 651521055 344704686 650603117 971626338 436893311 361342620 376856764 560714400 806340777 188522000 66099990 924005980 321774477 213233315 802835864 775548475 572700305 532260686 893108800 453550725 598289529 939860129 231963376 363170976 6275418 108451483 648701243 303913905 997331118 426934455 702312186 643120076 884592150 695015525 5880430 625630270 882081838 957651802 118389951 434313117 106692114 404690283 41261330 250324249 318553020 632302135 615946297 543057316 110420793 576413162 641429200 195387885 624381959 758855764 97790428 86612715 275125691 199995388 56963857 528853454 427194776 759055510 554046527 492383771 46687740 727897167 629012643 234825575 143353176 408621631 448960274 560591860 231268436 144125628 986864722 103573198 145390534 803901182 422191695 820787130 789764901 424185557 636028326 121066675 198531373 866491542 970317161 805585162 375996579 39034981 962353944 274651249 971123143 734854122 20938940 141941984 784022452 445649673 260401485 764542688 54833425 611796783 671741575 672414215 968232988 832827345 540236110 833059098 313963800 48682837 787250485 752175178 763771070 562157650 639676070 540889427 521107714 410991704 411966655 933310378 528657022 598302213 188438562 329169964 801910703 543695418 771466208 742389085 989878264 949620189 422696035 541988282 526189682 318196555 219248448 423146253 507388802 940551797 379241779 91544251 364185569 357053114 617215239 235853442 867034990 40629871 335177554 268476198 330821194 953881434 616485769 51652820 676533336 771286284 645892951 689101459 744456014 2602794 29822303 955458615 915418634 473761580 793856159 710609982 403070071 601565588 636439090 357254001 442222544 670153348 394976579 179752928 12956588 373711927 698547665 676273865 11852200 236884577 307862449 172934 389346302 318818009 479879426 190432841 837496667 501029753 973075411 489840339 34432987 860631441 447397051 173788167 170646521 772400575 623746720 750826662 421018980 379594601 190465827 235355280 450955909 435286234 843705275 849034282 14698185 895154276 341572080 935622191 2108574 541810664 145379498 712636682 705334035 26874048 75349128 549336448 224245395 370452325 225855505 128049990 361820606 951425217 421608442 460439740 841107419 708148421 787063061 701220145 887324335 288607969 642298771 475023205 878903982 834050381 211902280 900648885 92631073 850891749 693988517 84419053 361329758 320095901 717793584 539532830 197655324 804792808 909214133 605392092 836866086 363538300 828259921 411478724 621049708 536854314 771448309 208268376 117963415 592370861 409160994 738165966 615124789 995053754 438133298 296606853 104740827 608831937 33786439 824828753 624900441 619018934 19971485 120553431 612883970 181597201 337428595 448545109 708588822 635056971 370261786 60258814 122665765 363039973 414621504 718624473 554945260 247490688 397061827 935349200 947994978 133058014 279454949 665088295 71661876 865102386 646375414 90348274 635554697 501196960 394319361 97780011 504019717 754266014 958795058 863071816 978064935 763283403 303662053 510490099 896456018 771481817 51666792 710430034 75457946 56125601 54146198 464367018 950245572 303611976 113016919 597828813 175276624 734414818 802419298 500339565 490398185 991891124 48272035 527113507 418769411 34474973 449176041 837075415 514915457 103753358 107684226 863639193 122077356 103360257 15563921 971484981 830715236 326325884 834757261 519480680 538148407 937251423 27565012 687532608 564648106 980377439 840845080 586678715 51002654 788277012 940217947 541757847 172501036 208352036 856684639 637211252 307586013 817080464 301789337 662590347 533851161 95808450 239733728 603632780 122035821 465539335 20500132 857172932 630102985 525863033 877051679 106617410 750112271 496944658 195032195 936349280 497829816 316242099 807475729 773490687 129028816 459842753 772398591 888958056 787961138 388754424 61565976 387270034 694366803 64035008 434125263 827865698 137171478 748338921 791200769 634432395 478890015 551716116 574041351 174447046 163053437 326695058 331572143 946649252 275745738 904029229 150851047 745967939 543380275 38753632 832316065 339001984 480231932 866684032 625854349 750093158 125814270 530190493 104007469 821839733 126589977 256991951 241374765 901621792 259714451 601000460 394237876 725279732 445809753 296660939 119633946 112066234 304507639 313499625 435917964 255584433 357277491 66116976 473961051 419757221 613153749 935415375 161388577 91605497 939922122 923461568 231597242 414635324 557145667 215202321 741654125 216341258 517943644 159806916 184154351 101378167 107032373 865885932 497160834 121069751 578272975 422305454 836930014 80979159 179647891 661647485 487764374 489157778 100140389 616861267 431204525 403633566 134331000 187933503 497942687 863703602 40611069 695486552 634645670 641392985 288593885 550196672 689112593 640953399 312297636 457348196 827369095 349027862 700797132 898296631 604399698 576390280 826864803 277320982 433368221 940545478 603116574 210810576 415299543 109066147 62531527 548294206 791630619 178846837 96451951 371234650 117160850 686040270 429559105 230749156 596669654 507559182 394762119 815786121 485669541 130315391 233104389 198450373 174281289 892780613 890314872 685049824 876288306 720917884 744301434 401230700 264825989 581891265 781713734 165119015 525292958 711545672 7687463 211582650 730727761 784296535 212829151 122290844 340795651 531279174 428373281 258580442 486373317 726395643 484227355 364313266 476458354 685102278 790501541 213313222 406625180 191384647 179800272 150233139 636161607 934680175 252151628 748087238 804532940 981572331 491402824 470532242 182475075 702057157 35660499 175429016 848546232 318067014 298104289 342994910 826269890 301689637 619279292 961045029 539000813 961916413 38110336 67747516 543738063 680336545 231892718 825439728 979179973 721069207 38724741 366574577 760013796 100570968 849640145 181548477 524303291 477082538 501333013 116448352 409284658 381215264 537090917 339336123 525246905 517219347 990864220 52514956 88302310 942204735 832598086 384032388 645473429 870470386 903194544 452954307 657631118 437732915 446034097 116267386 381980631 921108009 460208498 849307593 531599017 970781618 257986536 549049323 552592645 525792595 681850516 26333575 839957547 292112269 429717630 347988358 693703766 565179350 701754891 325949780 678437059 493247400 218961792 842340827 551932093 507095100 960221661 365967931 958010118 418803942 494834195 103268662 110186384 722887418 98300724 856012436 163230763 674639247 579156054 357982006 768921571 195817539 210363483 490315108 586231529 937663374 867633339 689413933 549335059 803813462 837498375 1185831 595876808 153395672 335747741 523894720 861737196 199989992 687177290 608114426 926194567 670543484 896950183 849434111 64719491 666537600 592181245 565965623 136878108 689868549 117019978 745244670 191308214 257904371 742453644 812449448 413003396 726258827 154867489 128539830 465544948 29605150 466663727 607928752 146954885 747451424 534798879 910598806 340756624 904383582 453673014 65132219 346679950 237847869 675854242 473493829 825661221 13934963 557917086 21948372 287191291 380090630 812600599 428881129 110835917 457767258 357564062 519635102 710075894 446396043 514039227 654898275 633656759 273324433 443836129 968440535 184770555 371569558 529727695 622724823 465136046 723399921 948866001 390023312 90894414 622205359 58237961 616772801 503471911 433375644 618577812 937793094 567962143 810943152 228396515 95090 207003013 362164016 916161039 482356153 196643087 344190422 197030462 170228276 252821380 935684360 144783903 162059196 487061854 13106250 356605364 793054650 905815267 636964169 244199278 66399132 536117183 706603406 50790680 807515667 38688350 550125755 301416795 859567240 67875630 357359722 125218628 994384118 41515960 740293817 399903685 551695465 825429839 240543779 529963240 995308433 516353589 497019438 258599556 840428207 861647958 859172185 218994558 868142309 875457452 555367039 272605285 52678441 936793018 837849860 491598099 311040729 257368270 127675960 784142930 432593431 741518659 783586838 724726487 13520309 344784126 337550783 678984378 834924395 917237530 162447781 224753535 822121413 703833277 747028813 754838451 496424050 365779921 954584074 808468199 251937881 559260110 212287203 971904251 893162915 773756902 646591347 420247777 232362194 628198139 908961655 603499160 870608013 662454246 158676600 507534421 441456129 615038215 575230829 59627112 342091235 368526390 957561856 229587862 720402989 600577452 769808403 878469053 731679427 890720203 381450175 712392871 683022048 554012902 996452769 535977872 443372835 42611474 662225404 473568173 696711778 306308204 9348686 45011771 269480325 900384605 155477264 938760513 778200248 547286890 613252294 726973323 965711207 88233407 658046935 493422574 37335226 790327087 519366155 434510707 880003834 748708047 921946243 401218909 868324747 379790548 7939444 512963134 199765688 739679353 411929628 721412953 838908418 783205523 946159689 550817254 414220021 596661855 497573367 664198471 715839986 573795374 861675574 612623680 419540808 298604473 45093252 743909082 209638735 662932205 841001595 287115854 558262939 756616138 135911708 227847531 189060729 421993868 165475291 731814137 661384077 984911636 512614212 614028772 515446375 668731893 757344441 815781321 456130763 892266035 67986174 643651544 711885148 809627613 796635210 652956763 926961041 346620959 414570811 12825807 586330791 937088156 482021533 519825581 739505061 536413769 208440686 138723730 925681251 256692853 261325854 977448512 690534558 579458783 419482917 869547624 835470237 30563810 410025011 463754515 790382547 261358360 980785055 23657988 742461214 875498161 88221086 491793674 426318450 251520409 649226447 595850708 664610188 735923454 899550882 333458705 829615552 697725762 818425401 400094046 689254585 727573767 683355549 655940442 198551497 556787880 959733908 585185161 639110939 458808634 981081719 617088909 654443588 668955283 130568176 104717403 905667476 61309359 46365703 716260445 3837650 650063431 224282229 586963123 827199959 15583829 455651676 778066933 806703720 709381529 238349478 822852236 228706604 203745876 46807744 4378105 847607652 55267634 807362653 327038489 401743023 264047743 115772270 836666502 492747370 651001669 120329832 446406657 945125258 816678287 96262108 451623412 759223575 924477545 437799150 396078211 363028188 438142576 884216879 818979691 478267278 102270678 593101888 207812420 282692526 374393339 554429772 384396883 90719082 105445698 32208999 187593189 230688490 236616603 721519458 534383447 255056882 367109821 985539203 215331168 207104008 796878176 50975829 3105274 127311311 862856980 374941572 649786247 743116466 760398789 968717103 241066151 308049385 148011770 813461910 727582585 333894611 163731491 685782424 105263466 451442675 709402078 588843545 364015793 648172519 64002481 977340305 796508809 108553453 465120435 660808410 780431405 641560767 57428120 843683369 176729327 611007022 468919453 470951971 940853376 728279170 275053240 828672240 936327493 112170832 507631584 562478085 55285202 251677315 315750410 668845464 957762394 586141068 503273663 612303678 375759833 115749751 515179279 79342616 214813974 864271475 193344791 219786123 960175048 574925212 531554301 874469633 253805223 588163068 78082126 966631011 519636828 907548452 659130349 55681730 810434666 403265453 629356811 720264967 499099049 466712995 502178138 711950703 450312599 973586439 639399789 548411357 698554585 608044928 206854934 141020522 418210086 58562228 300040188 72899358 919020610 822167616 240386869 363380364 424484561 590518060 290897949 556528926 308311081 794038231 754865605 919411437 622530110 470653193 272441969 305782968 813685871 371731558 770575716 121930757 316820032 533436475 994355269 306079203 977614378 34727330 523015593 824878957 678268606 54999393 503699465 62297739 855119020 65038857 796344789 469199860 595295679 988817506 717972863 860778372 713559906 997682609 556374384 74005374 671864195 465295092 202398894 995069905 953085584 671989155 518769641 29484235 564325292 199700016 77356414 230942311 427511891 623044601 737676030 114298312 464967311 168048797 30656576 464035573 278424431 735880423 60326224 570682401 93281381 385634235 339178982 381429529 409798621 449657395 120775639 289726713 28857794 639560900 909188751 7873663 434892427 602494768 688837485 923949759 337456688 648309755 261530080 700127725 808707454 401099576 700331516 330050435 1173003 195357023 357012951 62193687 238913204 881038072 837429002 69009559 217372206 31395665 310552800 107175868 907489494 137628809 912167073 247586593 515996491 513366832 940799364 872019678 883996581 348963132 60703479 569096098 654990334 484887892 62746169 207231701 618260691 692216610 411638025 889755985 914587761 525002104 761830651 928042848 404325660 541318631 484125374 167786062 452213708 901624918 41646226 554164925 100455922 585191653 43989808 2644093 16014105 831672898 478044514 368531544 214184877 654473091 130143799 385499354 580593750 501596918 604137145 934804242 394502834 469239782 465205923 29665498 805303513 256225645 770863942 705283385 890123850 819029702 549446373 262051211 85335919 812529273 431194295 360730580 463855342 379622741 350052622 585659139 129931539 742582911 887375304 726051130 435502479 570123406 965466580 737923479 306137117 19410570 60437397 128845435 257599388 76012982 235851448 264679707 412892373 945761391 454614007 818741256 615260482 419354201 711906043 320070882 166111381 521284866 583726435 53831427 258848293 152685104 781840415 440760828 422253652 89971783 308186454 801086256 671361477 648268923 606556995 609639398 345907157 587832203 782519579 40969298 167023244 838497298 372956882 51756739 489318067 868719681 580008481 685635463 96368831 954990253 133453985 672869945 320705611 744025511 552309988 830464582 232214479 299621727 289187162 988748641 827438679 169206146 358224979 779144239 809799319 487246084 462092213 682000165 969740933 201330959 830632337 691306158 179747657 818278397 795767554 439038956 343761948 708773184 677667288 594073885 39334096 482502 862536944 924529153 422400518 917946231 581656733 967759919 182877803 616544735 474517841 824605165 220368980 11050813 375590599 179457145 382934913 785764997 468558756 416363288 798585014 948531988 145973632 268301001 261319296 171128856 176709725 312382584 576378131 666078538 603746098 440413342 401687758 972423939 665668405 581481623 892815837 494688544 359283923 343790731 759328210 922361427 935320824 22535108 155478228 563275733 463548517 830712627 410409339 633428027 662397278 490313179 712380040 518327212 973741695 592920017 544541074 805419780 88591491 540729428 945659605 97295559 303704117 159415528 160620972 704771149 347352569 195887487 75270964 340450561 738554672 600944854 595704139 985862275 852316955 157966939 693719140 497904474 464137618 988633864 740273455 677216995 670498894 558934402 769269362 678042977 176030224 781857789 199165325 748599327 493343321 761150632 463400217 480042541 340612928 85043225 715872653 418288598 117501299 688510565 338572748 387287891 342756007 106979145 400472296 556291495 353592886 821429492 965600370 356066332 214395152 196073726 543014640 645157823 82349461 784092515 523374413 559471277 229361168 944058428 334464795 484915426 563638037 371372696 628067922 13970094 936967857 267573730 704740328 462817281 211672125 667000886 357311051 69966726 118008920 608211741 804416753 527397957 781379875 881134609 472066057 514660624 764172994 285283636 403317771 559925539 933493347 913937582 776214659 647259111 151403589 299692147 517103808 353301168 479904222 531333889 191143830 793874270 551543014 435805616 710178148 375732503 760057006 632621297 83775033 171168355 240708200 186370419 869235362 213492217 829051161 204155125 118462953 252180935 8112818 378674671 382390640 750169266 196104223 671181940 766968697 9664706 89115797 917490458 783677894 211216205 99827584 683699785 100402969 330041292 473194704 613125389 341685720 86775733 764506906 865130628 167002427 748716583 924504208 398871602 270894904 346365697 288011273 54465943 416129296 874399761 263284970 108005940 235452740 779541495 864895406 534320789 423140558 329504376 884814865 44307084 319299907 151807425 491558299 208686322 374813157 834376797 502738117 13510329 541275955 575452587 930443140 952622600 668451534 198835718 173073520 901841624 903965677 858009913 548090104 637949117 144362151 390816236 358366724 502106997 629344626 346048532 746946246 566076646 533656598 88828378 227833762 39736459 865920530 973866923 773924445 857073475 571519897 708622248 8823382 307206027 410699576 81250518 834598638 115102981 956918595 122568676 885428800 567360361 161132620 168960813 857959703 716044102 227091171 771002082 293838339 721932320 618203086 40774735 461856362 58062164 513038580 645873292 687288592 104041334 935722677 674931421 350116799 392743921 975574427 810637518 395356116 933076452 48979607 920830846 274094846 142715903 637942761 922918402 506736509 117553534 511693607 68475405 2389206 687825051 970100630 291615451 866042697 520024053 571871895 302037431 284662357 190103967 309763945 818036987 647510342 329294069 554443150 778718673 306191140 8359555 940146807 64057009 544545302 511620547 167595122 313566467 787775995 175571129 337682774 817322216 925006019 654960909 701459964 488458131 769332789 910817149 417879876 364504281 203071118 144450300 396724794 483692134 961234137 960794709 514320247 514452828 287982392 493949 246886742 280719421 114452396 466557324 993054240 530827817 128196033 557322676 556803889 615446330 649681896 186827252 386703841 881441267 807058212 271884343 112013898 48294550 308531337 865012708 440824296 949115928 329334638 767743667 983355685 430999345 454646412 250323536 601347921 144318363 309618361 624309697 259186436 191131559 399647972 873742443 972033828 627991792 649273784 647171848 34675034 279329469 570453696 32600590 556545997 229369859 181355695 901602436 555726901 4839383 668816208 907016591 26142203 610152232 30532169 177769866 848640139 889273534 182101088 184334360 513199465 809194998 80631041 386672899 469453166 18435123 948862195 660953855 628880627 19391088 204920512 978087372 639196319 337274110 538024984 336273628 868329354 432688920 126582335 646322925 593578538 978185129 297184741 801345130 765698021 818703033 241287754 934970153 334242448 755550969 166550885 561055535 321934003 232004303 256691803 368965786 187502396 946080391 32118647 145741353 697979508 689459919 457932090 182143238 557676108 179522932 69885789 2930365 924551146 663949579 542377227 75777622 246726184 245977715 401403477 964459329 359475894 78993108 607804005 79300470 254686312 403150855 140405959 832469333 880681600 583049610 384706352 34809463 463250680 936791395 529241558 995538816 858844878 130314002 329648545 127421582 454202454 759890051 539478248 665857711 337668730 729482714 91066951 643733302 39052178 402001700 766831098 130972710 356519262 982727131 521694205 15443625 591732597 28891601 514555643 694435974 188464204 487520828 944443515 857882690 415971810 957041572 289804027 683125154 543044569 425054832 599876498 243277719 95119263 552707847 367000189 462038118 895824584 955975614 273168293 318681237 326881084 204514028 473304863 836262614 384291300 413526182 694380901 836671530 109542672 908359898 644148719 912687195 134105610 344738588 939624114 820676058 417767754 3383318 561485253 351343593 122617351 249339450 637999139 120276023 743629688 323163867 379351453 330448281 776734858 972656854 460614762 479955130 683906579 496016514 791085273 247999036 892581855 262847698 641875129 622839094 101608720 633575773 968188087 692378781 560524553 732746142 452814310 129067484 889016789 960621127 404342343 697428439 600787716 426979039 627822844 617685701 397837687 446096057 280836264 612312382 374212933 185132969 378628907 950837734 190384891 161069812 306705950 325194246 913550199 784365831 184949026 728862437 883660247 632521136 286246477 713277881 908260157 280937382 760754991 933920695 140229220 159285775 658508901 865327942 847204426 410004584 129189777 331737133 776702240 138452500 902440466 838544172 560563880 416301948 713815397 419075084 694638033 818796830 280932873 861185531 790676553 964514771 718549147 383039393 311498850 528455831 456269759 693410514 826468105 59849332 201361130 320092981 79859840 202875586 274764022 15763541 663393827 796420450 119486602 886745266 830458756 884959170 206374032 909916858 770189953 679878203 368014835 295431753 700773551 266507999 241729951 871983861 652764945 420482657 576167769 369809196 840497787 185056711 230155147 882936672 312837337 654817697 544053993 283120879 418171196 981405577 486347905 993362018 648598778 46377087 828734065 477552617 43105486 305203864 796312345 124737379 128769091 190391678 835118006 476722826 809513428 246111330 812424884 359694293 832439050 340586998 930657912 135026696 206151157 902042718 233922375 388582063 782227383 858329616 627888166 469294371 835533290 955410567 121428808 756906988 893406511 454433275 604748955 619208782 54714112 320399160 966924947 664965093 665917535 839370390 736671165 342164002 835714059 340909973 739839678 550289291 569434637 731354062 218993405 752281602 259344872 911432024 59974865 288388911 57227261 746479258 615754386 886851180 159301647 775126110 87500234 441280676 781306586 538695385 928737532 196631893 476548286 246319887 808983008 757738105 782881751 714311004 774341745 647997742 477331140 778591267 509151276 595425351 64193211 519110009 935158703 739887006 867415891 635963836 229457107 214020059 56416049 206304299 20528789 529224144 167876573 369537919 181483362 652845610 423173952 975219589 270145108 571759928 906303566 700878322 135697476 442092927 48301796 601344263 161760077 332718058 996104046 376939237 161113975 451963550 231039538 781459711 575621403 36656267 980442182 164664613 587107785 148270325 287563920 725664399 668041243 235385353 190646475 956551529 710045424 673303411 312185274 720909925 381352197 754087378 562153368 37271710 663254590 498164332 346553160 393408148 383949005 992790617 472526706 248497022 272012586 706786267 905322885 874781803 187036466 31612756 255515264 353945140 661275501 654776638 218656803 101360185 287671804 965289596 532326978 737946351 720639281 308727881 103603657 246342151 31157472 830009798 267643770 780549824 719290509 770715874 856997620 120027958 573176250 645059706 67269225 275412229 422566763 772286885 55312733 66785671 753416101 752003030 96218194 750568931 131473473 748198957 459845577 657487036 68121960 217062698 44882420 353564975 801417970 492083961 329449106 826749816 981553943 89604708 393139556 810959896 220462777 712186875 408630175 332912417 715891318 63365113 216584654 696948558 923003666 78973292 615814525 815507895 447234416 786271568 890681584 668741978 109296830 243496655 473909542 891261101 665751574 759304705 633923225 66098744 806546056 252008239 169730820 149856759 430133970 306904954 161832228 624612774 927773359 544724085 584172470 119583558 354174383 697613394 791309802 318413704 658735244 832749099 667291778 701241714 957727465 481425015 644387164 855196202 79945459 979422033 444517688 101723405 251127799 462045347 796973134 946084415 290321474 497888353 238316646 500292240 250629717 909035296 808365010 155933955 205267667 582799531 700748224 670748100 782261418 915880257 80819931 622836462 671649542 322793962 173077727 851155797 926677931 517437754 166997848 596050613 114449838 426400365 898139392 536347985 791857197 346941728 13902563 830895665 486332271 92768534 471736538 807374302 301038874 993758457 813036675 939142651 396684705 324041873 491847935 222725491 124244850 731880487 870416379 834755074 170328922 198827733 699996871 628888662 230444097 831202861 588252826 876334384 804254434 451275014 57693497 414387574 358601237 880414680 928357813 566406338 290730120 287137323 327489249 866119530 294467709 492568444 105493208 923680930 173127874 950104568 919597670 996230456 378517954 949825526 179101096 16206581 686505177 281671116 853976358 363008792 729313056 822490092 43476732 443753496 531162622 106181472 376889594 809404879 343938195 597568821 787403700 855115284 869366275 751998816 909288627 607094024 894292447 465282985 367643894 711671734 141189575 213614563 311752407 640503711 232087415 262498704 140094347 343807240 475813746 835237647 670126455 245133966 708063099 210356206 911798475 184774538 328737577 538268424 578152955 629264411 460361550 710310421 554517999 261225410 741104353 584272754 972371505 713809268 552902291 107164448 113697849 918494103 530789923 162279717 225929883 227070705 166099482 878405790 392042905 782235212 601602962 209460952 29640672 333641439 510155423 342410204 952930105 124116442 492463749 220668703 948216154 961562370 565588943 506757058 164489925 319444217 35041578 312323078 717165547 803147421 190539769 553151888 668371823 537656401 797751179 331289613 520462419 260079115 885331872 621688694 977366529 735745958 171770666 594683997 409284153 367295865 231816039 786327448 670425855 614138621 408630205 779481671 894946561 660233451 785723983 433463770 885804266 601747994 973814660 177008631 195577721 650773521 410600877 162164163 559861041 189187666 313421120 658594050 30928340 368545690 278953137 976745512 773470250 170289723 493888677 559779260 194117141 253573235 270068545 375407341 561175937 710981340 883241040 986099110 324062494 116378959 232307732 591703500 278517440 669179166 408253148 156108615 417180820 864981906 290118994 59822082 150960 26641261 98604101 595267190 342780878 860828922 857698134 74960696 367680631 707270344 698131520 517095738 399397661 899030941 313537409 633783425 866722807 842603418 659347370 733770110 618410669 955224019 176356233 345038333 735732393 871708932 734033885 10020827 933895810 970951850 944676822 361151640 988965944 240557346 264969295 967132010 555149338 88189600 884229709 814358565 333658761 388710032 27051381 400028194 882257119 756737011 448934107 394681625 163113574 544973552 324947395 945416712 537233949 682840619 217743803 297752316 468404095 301839627 552214291 182002311 875511092 533294798 487564867 464742016 759295296 979970904 992438172 12349337 249253940 574334227 216016891 562684407 193882015 56556075 450717928 905788987 630883362 721111058 448865200 33241605 884832430 304270565 530335273 260365974 8160235 858365847 908054350 548404692 871634073 59862560 257843884 249576625 299206035 796880456 18016529 986449857 920020382 737534994 590715712 486483192 705517817 415866469 974213256 910508109 125836913 952048713 477696964 461462789 63088011 413493585 994906669 526412200 894103539 564254774 296612716 389644103 935069475 895526936 441057400 288948207 658456967 573421779 461167305 852179438 753373086 709567370 726627303 468573607 934532792 55293827 324537053 46487155 58699820 342051973 728987461 798420231 472721405 602490952 141027318 739213663 421855921 205675886 895583786 726074651 104942392 1495140 39647213 546443726 683263301 867766106 155708229 812056358 960479798 974711913 931292495 168064697 636579618 387781839 914278850 520418742 323264336 102523180 516609663 93527132 102802712 231529148 92431002 57639992 919104107 916494478 228659301 305101943 837792085 253336368 310003810 379950368 915159572 140232092 153769755 844419148 606199827 591873693 239422254 906131937 248627139 607021018 784343801 311081947 415394163 573986465 287688531 761800679 641715690 293309537 443622429 513232626 626423882 538131422 224894711 685158613 889832858 489044389 142464467 898464602 807041366 284361195 551916405 497660476 274520232 456946508 512628545 756311708 275090342 586249999 833911331 479908376 854684372 997969576 963015438 827044068 873463874 336020900 508989367 252411590 215729268 861257403 774020476 684800443 647129855 663447240 704190084 151258948 854092046 762497914 732375864 364592464 956357059 789146989 182566001 202569139 108323892 855400401 670192643 229707134 866049440 355420446 660677724 175433987 615145445 977067175 199564134 940894572 462217615 369634480 688220722 278452993 523267953 114138024 911428480 872037917 637524244 967616990 17951144 615101730 251949592 322619632 687926515 364176402 405177244 311803463 732017762 927290311 570414035 293207483 193573902 41558246 892811810 74417502 745708359 29883205 756026158 470864750 857016309 588260203 338330035 847139596 936307971 942108717 658354176 331912921 868146362 273450279 931642508 830997357 34792225 416515857 933227704 831976825 692327877 475071224 233323893 141784104 668142597 772235373 597774665 457766880 278125296 301356770 234058749 679801947 452660298 30183579 423258091 647617844 677030856 209841587 196785981 401155219 424688935 692558051 814033318 84658849 440357703 406474130 470977265 45329126 436959770 344882017 249639963 563229427 441836958 668581935 66838740 510205016 122314553 32306377 723241758 219560201 786780322 402630259 667663593 11601658 988396336 376121304 47989649 828137856 798980015 498399130 782650410 769110531 798473697 553756805 444933141 634494980 192948374 712491927 850914005 467903465 915809816 460955931 476192002 262050385 488673157 536912279 433173354 843937372 264981154 630697320 310173153 654470291 686418130 604445303 163668677 913623120 78617485 926006617 113461761 840658968 563823519 338366103 325633359 392165030 764244381 933112472 588276352 724910636 427569163 728272599 178773161 298695674 165343341 849268226 301145055 893689633 23511866 485531923 150367125 966235107 741871435 936044473 363490760 626184902 304548099 473135197 99024607 163030038 123923975 843497183 489380079 674478834 978533361 116649291 717979212 354414343 168850541 348473060 601356300 7142346 345386990 755127302 905726873 232693582 530681505 703605505 478376479 520780928 881515970 843818588 58058877 239835917 497534801 869314519 114229289 977531061 572973919 920991249 96848606 862391662 795996972 492244928 782154709 56914837 786038397 65691208 741168857 261264262 391635561 190180025 600664600 311556004 653595140 981357889 661094958 914667712 250049141 484627160 715251149 382367960 944053359 348190092 370219131 347755274 385045494 917141052 130455858 434995118 711895097 63944877 32624346 490584842 885508618 290366480 4374371 863126906 596219196 774885136 574833495 360354671 34940592 81593171 435194664 566739870 908344291 898524145 756516135 844527758 199020320 993306667 723034785 672339095 527696990 592421040 462277151 831377020 4664447 541997571 736481229 67655830 663647722 332396669 326614466 939559829 564625054 625817463 482517283 399136138 82717514 680013555 491065808 655533835 40484062 503124491 685451770 896602713 745789876 25692292 146055869 994644595 394208206 704093412 698863213 390123549 721865870 214641457 431288496 258580235 168255370 269701678 205434765 890576129 453435087 203635575 421204487 394203885 419821464 508576977 421849293 525797051 978072886 67289130 791064060 515818730 89907817 950845804 261791870 382672666 135828887 722031944 992262467 975131635 745355139 9751286 708841241 589118410 982980868 427646627 94114796 51176076 72459139 451546630 623183769 75256569 611539273 627999189 306179373 977963506 420963564 533481574 823756411 232395719 265815366 888647053 5359074 768561159 507740872 615550212 604313167 460508268 80406719 903103547 953603873 994264673 945578004 136686135 397780251 147830579 570628145 818314224 394421270 215238073 280940736 826714146 908538162 617900885 962275847 296336786 229543160 640396106 891010210 152649259 612594725 28780239 874453469 126393280 859022108 360374195 792690229 877252535 970312210 886351683 718230609 862480913 691529429 127833000 450722106 469131227 137508361 211862081 929650133 751327119 35391979 943456588 436690224 425679199 224595708 257791458 147656408 938963067 995688225 230986106 508990214 313845626 829533511 324369282 322570713 512709526 893190346 263584197 312494164 662435445 655207816 61441514 337404289 692264797 640641808 208101194 884866243 865463955 97400285 364353653 893672 241733858 537211791 223482928 123616622 331779310 590058375 572563623 324822783 804646861 63927613 361211098 541082897 866179377 482631690 820505718 547717409 91927997 318639392 72593070 963479953 298425388 454211554 178747086 187038054 955453900 404800258 193493233 704848413 767530874 545110198 476364476 6223913 454857162 335838507 885171228 3047459 750179414 250786274 243347640 355271453 149343567 570969501 295170057 806466738 242586780 843883937 52262014 414501076 635314653 410415171 818422318 861745528 433291688 528429769 300533781 479396756 812358288 418722375 272846407 418663772 360015091 209509596 917389785 306177009 159728383 907582589 314320431 768690811 77323434 159842654 547735652 746700106 318621283 27930717 474366700 109737210 441936917 685203828 385406693 316663983 547086873 592238333 215513040 347600464 810853814 912764828 943069626 973764201 126131767 320498106 744761314 201314304 466664717 440205362 48467394 703876593 711265204 982301544 200797935 781574597 618381345 367807959 477202009 614315773 234688286 420596429 782297161 276505835 410368003 204493371 616743053 394290442 826577472 625978072 516941191 250236970 613622397 565248611 225116371 678086576 392607234 250154325 489013928 409402107 146918984 856543967 559923385 305665734 876859303 843003039 111749231 860959458 599941183 320251850 975292967 782460268 455733584 657492410 653652217 55685466 261317461 451570228 6196781 397967088 936486527 808006961 231152249 833616501 36649906 397677914 698678508 148577098 831817207 161365119 852416192 144380541 36033501 589421417 909665720 729288593 288155930 2206819 220906370 520080555 746267399 410454146 638427018 414908864 597658072 734634925 688008533 119250412 932565156 997663416 59503795 642981627 666572298 246173806 475368265 746445934 379972676 129915680 966917955 757992713 856747973 778263475 253251353 238123836 901203719 361363657 920416775 647854101 167007066 807206473 282182399 82818871 698088815 558387614 861422996 912209643 350858912 37978598 585488675 358264035 254353669 672653166 234237075 718955598 785069819 221634461 490196493 476327245 435001119 129290237 953959680 474686821 728191617 254616509 309501502 598858555 160365372 352277606 586641742 942721551 347492844 805711576 655579741 196403067 246581796 502675005 821814628 220755148 957892392 822696321 655240333 724584709 599089294 868248775 790821418 288858538 251790623 451721866 628831944 596369419 616233101 580494517 647423789 243162197 171786311 118476924 42556688 646300051 252658588 957088260 894325432 164988547 312096255 445448638 152029988 79991501 184948410 388294714 483103079 776848472 994081796 567788197 221924102 129050418 889756570 630557657 899663745 107430360 85198657 584716043 495748651 975010570 761704929 718725196 551594287 272818221 713605225 417072960 167056749 413289775 906889358 948039901 968769955 123649082 579909494 306752106 625728883 474554853 130604848 720328049 793065360 242776971 972166244 723081995 241125507 713706729 272325535 893154669 124617972 504283779 704710702 297441146 575246011 813034225 456356870 255023666 460008521 486277588 975486782 743130946 787483007 873878178 856296295 669639185 877682286 96186911 33936445 806061044 390787140 329817687 70619085 698521322 174051694 625659168 38043868 774283658 491451137 532832995 247053268 335155427 748791563 871022521 252967692 352761811 605927825 78200879 703715639 649802021 929306285 355285412 879439564 599623638 9145730 282300402 464777449 289863138 352472599 776570051 200197206 103196160 311428512 637938044 598012355 623301267 822330527 31674183 318888692 833657583 881688026 326938371 378112604 205260802 840031270 447828080 643553550 661124707 597987240 448126210 617418764 616071922 795957294 932999690 732220268 221984143 316206106 289636305 128022853 281038217 485447132 617855845 135946420 471779157 989553523 377639819 905355288 318133848 489848896 764030310 308974341 815908794 586947989 527424682 34960406 815554910 348987213 786064422 848454004 484260433 791290216 834213732 689431953 832951827 322386412 758632091 805398359 829870105 220704295 283193264 541222894 335095710 639412105 943546009 810908946 864696505 122136493 502732078 690288862 536404470 994567124 445140320 835556718 257319880 187714516 322137491 476915036 469499061 698069002 368453089 168930162 164583332 588399917 21905141 356552205 629633091 359504768 7797918 75118666 199963153 626795823 453006404 948121409 222757116 296931646 555605152 95118821 931948648 603634398 366951053 716801889 347720937 44515642 97876942 596858934 468171292 732162879 809676403 592367508 718655391 79756125 742342036 663829262 269787057 466481790 335813918 659110197 879982558 339100995 498204707 183668410 945086877 458078198 824445609 302586266 84445897 199787595 810467759 87290930 150775053 277648882 393084017 792614023 166088281 587484221 524449583 634111434 659418342 697278164 499404650 162358886 394745477 835467538 592560288 756734696 450052547 880072278 71551121 588746818 585363131 889002480 118629247 105650133 95118406 384576691 963757303 921869061 552627763 346650846 765476778 727004679 784004240 700921342 328875867 670252675 6204385 364282715 320313212 528422503 982586296 579340323 264117825 228133151 652897601 597401593 372896126 984014042 680942005 997571970 108080335 785559300 621401325 678257802 22918800 686303711 301655418 704306176 565450859 374350722 348299170 142295507 162595078 129324212 978347987 144161134 833437798 747815168 408249150 61992801 837017144 168074816 693068544 758175350 164935243 927504065 379221137 502048551 425278592 9897455 633754876 820630867 589035595 176486296 982355525 957080204 129389917 5757661 912577177 498075722 546261888 300576755 452558283 419310360 950107277 316739926 400326329 628719671 1742993 323109823 919551750 682187288 143076669 286997367 94363266 260682727 329536374 872515379 607805455 872439086 374091870 477734045 882820241 447721519 127857160 412612583 913669458 211361176 150607364 737603554 335764301 799687169 463597254 254590973 669771688 433982190 737502987 932472061 541702940 514030047 550067485 188864213 248426416 366573377 586452545 407475049 644196860 5928373 375817772 167967133 425737896 732319224 443955875 444690375 309399799 994850843 262069720 765874921 305503796 653846184 384800010 350260042 925402166 133114546 759629328 703010210 689559816 624536119 4040699 90012338 830451575 236385454 124394282 563607845 241154353 548276999 373848572 620148411 758268682 766455914 848261396 663376762 711348483 481541177 554574807 911475151 830080192 251608073 154165555 614927140 581218829 562898046 458187184 305911547 71240558 191125879 848000739 352594843 471828347 672667328 267448350 870199049 976387306 64670086 387639560 886386867 594678853 45816226 138544728 894539133 972772941 735886765 497973078 425823159 441159349 64126210 961295705 210885639 249841088 288936901 549451590 9476582 882931976 121384536 903466624 338742231 922510049 997999926 27086600 750997828 626855661 623756689 324200049 973519678 828275120 499490173 601627782 347180306 786204542 828733382 973430738 152618385 355519133 931817484 152483765 403010416 67150210 248983154 392564368 321937025 477841949 959822894 365711152 768083752 650739067 94623839 745486751 726911700 827023733 802320193 978068987 641001992 989488067 220802733 699095906 823858348 290366773 248165456 885798265 74264843 875165284 708292664 927895362 539665955 737608062 943952238 386242744 938120520 719455540 199781710 200180574 975062261 40803724 313673073 236349227 330886569 706662708 443005846 946654417 126439645 797486988 763892919 427362512 611592657 559056338 492183085 875378730 793283989 461284797 608469922 256500462 99576880 212351215 276605657 64536012 776014175 430201082 534832495 7828256 632173034 328408339 687957912 993520273 715859817 665882088 178327312 249084921 221442670 125915742 28795592 387936705 901613771 324742407 523305310 729020654 815178070 840743361 17756518 475182356 511490267 485219271 218879387 409913285 982130765 428196947 415188419 322497003 448438497 295394838 786917464 597500711 568798697 94267578 644101335 569992615 601989129 112456940 514150002 586430460 268559277 990831599 547457098 695955162 62499151 156361033 668494603 472948473 145124589 135579276 393028032 937055641 337351292 146574731 171592068 205872287 253786852 640998775 20000024 997910465 180173480 798969588 506336761 618642983 967333192 360227858 148221781 897214281 436851192 881349359 494484468 59472496 302711142 128676910 307950051 373248009 60762305 305659127 118116182 370216058 808282027 638228599 812516570 146413415 607535394 158409046 857818927 519873638 624153829 755500724 356235380 11922331 248659883 260488694 877431801 119279780 525785777 264212241 298427381 638928506 384227647 3260144 363559709 808701544 833134617 331933264 164275443 541495934 644262371 776697229 461214837 764478470 973218161 588256158 50023672 870380979 459947713 564208592 986111014 304816217 994168138 838979349 159078575 367298461 412495563 724721362 708813490 374021043 658303701 692570195 208083144 572557715 232007279 830957958 538034513 46845394 207451646 38256933 571798657 944881955 340313894 328565879 674325914 409036507 982610666 818661744 379043450 229334716 600405609 429512155 280263367 850404533 866354481 341329639 332739091 361455915 415034436 177257505 930979356 761307073 419624923 422360059 346361692 810833675 693861204 576460900 158368638 851099687 20573858 995463302 552700466 357139072 656729687 316067501 223545733 286421757 550607430 684174408 60309167 430516940 742184342 525442999 946984567 83798616 238553353 981606252 274920381 548387164 277200697 667606190 22162306 664859027 426275857 719330678 347748465 115523863 805732966 553250635 610971609 368056518 601632340 385879254 378772169 5660042 478422173 698160435 174083819 225898640 769345743 983813360 93729285 580578287 382052670 349345730 238242895 53533053 557048643 44726620 457264540 804608161 980341917 184868516 868851171 538659862 833723405 755358692 967190215 29446626 875692860 856656790 697631996 849164712 134757131 665950057 838741138 363484775 728286013 888505675 108389768 382201851 445230029 399947606 130837968 12863835 288369858 812777509 259797143 346994892 607385612 512304063 398558052 971496657 944697861 208240875 327079440 199367158 126795515 897363211 667540443 38284542 186451449 779157359 911420253 287877622 449001310 723978130 466357723 415881860 755344708 923142100 600567510 405083367 282539412 501811135 836181938 109210385 658589064 461450243 135205346 442966364 126677904 216624841 463763290 82917889 944601529 935498961 821003411 948549463 918308710 302534580 520707552 564330287 800471151 368125989 461949086 685621095 598266946 527993654 94866335 879692880 754190094 997523663 370108644 585215679 483779884 751043950 808960593 61848087 230899257 401784887 466433611 969280135 852598654 530796236 860662746 646757392 485734718 81718756 71705685 845518409 169664623 954795191 995138667 334380874 108849135 457429774 893984141 274111438 176860835 919861247 434968606 918678354 119842853 162813657 741183667 684592300 504409116 78104726 889266099 31502407 639678322 945372290 565745122 962060854 85064264 143948652 546845897 240394175 410449393 652542808 643468876 767084286 168773559 800349030 653476151 983313630 37154581 810911440 718728997 101510110 509815217 393903503 648346771 813902559 407225560 605902836 813856658 840993718 433408513 634995328 82371251 402139251 301164374 385895883 189293850 809059112 766624196 877934524 825113150 511394146 490439608 445528128 968140831 455236044 423593485 945667300 108633960 198872354 788438574 595863712 178759518 794782156 882385674 672451333 271688322 958406598 460824532 682539376 456472618 279423043 322891586 274311462 904317871 720528168 779260825 934787992 407084250 710436624 232580563 863844156 185356407 28225354 616413972 458263031 760420383 856297936 532107677 106573690 851715628 379834790 903041718 32387782 797903649 29433105 219766235 950917778 885901101 388570164 322068092 216228850 529014857 971994118 583114019 153911792 6018131 328990065 148960090 181136869 690272940 655660670 502813088 114711043 562829016 508743562 587865157 749543889 444043286 940815029 700707248 322219218 324275365 619177898 450350401 794682388 237581666 596882524 271423773 325969487 473906056 754380604 401808463 693504858 200060952 61124733 408599102 199143006 718731507 531885778 809399950 528381177 262669906 970182333 740512252 437511769 961479638 983715819 680969521 7113232 627178861 387542760 174877492 163557665 306437277 664834654 29353507 130942641 576345341 435824525 33242637 773174833 65199429 867728008 977138354 726246885 601604744 537616933 733590984 143734604 149680160 145684760 936617868 287789956 909830068 146626840 576307360 693654653 144659923 684795881 940488203 948457117 432662051 949973310 872586487 281808057 864602150 259541179 178331724 628132051 359636506 806039141 253526186 757275625 569761844 468878411 338192090 693984167 476312580 923529904 121404887 120333004 819111581 460755596 549797413 7245141 444694236 920138390 411681074 459957302 535403587 3263643 508642011 737541553 829670926 884665872 210585459 884637555 375887119 546979434 847569011 893664855 708617469 611666027 226626164 287634531 693441424 550990981 342955734 180058136 530560068 88610063 66281964 812169375 667826267 178569353 656270189 70568741 56695921 335334837 886279354 896019388 820660738 808493027 918903001 764845994 123737047 640708969 84426752 881628819 1327761 200480213 908656389 340568814 504594888 429661555 195520417 267901767 471555791 615971699 946034980 793894690 220789409 257083946 71057834 990429414 874761978 925954907 930749528 82223244 661523834 928720738 210366076 230847946 383378777 71440098 105305425 351488634 290347227 487343251 786862162 107542399 681370220 805730008 559960948 485032694 946079879 806405709 108823237 448195945 347158211 206852473 754642828 174625809 14010147 570311958 486674138 75669613 985655515 39697269 173957627 846741152 904110401 359610289 462668017 706329536 854538342 603332643 72950838 748827146 771271224 104052688 657770921 41108964 992110039 18131264 150484234 100442680 212546681 109444530 712276064 478029310 63267487 108813023 522781355 376877264 353272712 631616897 810533676 851270597 308137974 358043879 824979736 810174969 443958924 748354561 529215436 905519620 681567281 785450878 64279276 991896401 687007681 989629314 241560942 421256753 332900042 177415734 371775975 292654238 46771437 264975629 954637666 932170905 329310214 243939343 43506486 669208312 422348667 915559187 158157692 92806769 578256910 184437077 300447905 934852369 214753323 249963769 157151612 442389568 144014235 190757404 194365178 229087754 559055168 737593245 87022721 346227357 483450311 901399685 380198666 493024168 499689731 127279228 762610755 84110564 349868301 349974602 199851552 384971149 103337693 216220458 924199422 479967266 135871594 360022567 267629236 496866991 698977045 12120229 281661399 120432139 501048264 750668765 709231491 160462783 851092658 110922834 154788780 260283267 564149478 401860352 807638255 779102420 887785606 360190322 766971978 53895573 276863468 239300029 571243659 216733787 568258131 774798519 273340969 923649207 17652062 558854570 17359389 602407228 609808314 619236367 37138010 660076143 65459596 759129123 910352085 507143117 9244856 531699550 770297777 424750294 19066836 820619410 218374812 718569505 618184039 502440248 275855642 508159548 443509675 136662874 633207695 879537151 459798815 208970104 584394335 27829129 279474750 410456020 545176135 578195272 347398663 527881804 547811547 926178964 174706361 493975477 362687667 894926292 484933041 567282946 496260313 285992760 43854648 281868563 299211471 605836095 373436233 16487778 372550402 182051699 921929386 537776104 489177051 398018401 810042830 63523495 572817112 427239898 811214871 246157209 740009089 215983277 241365114 639484957 389522106 378236480 835439410 100592340 134367997 649988274 533090798 733586382 559156166 648048147 973030789 666105048 718787543 892173222 473681232 64893785 425012397 514686229 823088468 661459891 970031456 433873000 671031728 774378104 909777639 816320915 581308344 778929621 295617319 977986420 504987286 963130349 404866735 146302344 423893408 453034536 334509019 448281668 927996731 975211448 393957793 396119942 969545678 670876842 487220505 978531641 546516582 904578053 440873432 643469130 44159664 786549 575328864 671449623 632041325 106842907 207490405 258181201 864164283 984723087 634638343 763779610 98766193 164564742 233402665 484665070 109671453 534127184 439892951 395367668 249643571 579823049 81723880 656166578 29240401 74167891 722604974 747707078 496974706 497606554 486620598 428439332 138976828 38844782 301116338 425477216 156672372 991532091 943912774 299195292 489079855 987291930 50762043 689155305 457904916 708290812 337568427 742168735 926348967 743996477 627253423 112420089 178479155 935620420 717138482 238003281 155499114 619806076 687086416 802534072 255314009 362420743 830168654 327184290 918297940 761077194 683306081 637291883 688527010 468109507 536972387 491070353 36271655 988672286 765016446 606145184 930683839 429129325 116494549 818774171 934661549 564791831 345301605 644866447 888636964 671454736 454978410 801157338 571741368 112077969 138660262 780791508 67576144 226345459 728177280 824463322 24332548 485234175 83996320 886951954 685369906 531358106 657163139 212695547 242345196 608071143 446386542 633659608 235353456 71633424 619365847 998054551 417974944 434136424 682112051 834126353 949385623 173075409 989783485 889286798 452566450 439989049 797704552 266794765 362964924 774597075 133817799 756824417 802265 447075334 467497576 60906168 256271985 81620728 389408434 994432218 726833057 785505618 994301523 349461856 574300174 317459930 417993827 10937150 120554755 137265854 152622035 274189968 202538513 714049115 504793876 275999113 133273599 780016342 311569059 170415703 889854409 948476338 323873377 394579464 574845083 467322371 75081140 347330924 642326453 284543177 142289893 914291381 961475186 796570545 660194444 414200231 843431850 373144602 184644377 871544741 260645458 415258217 440290450 565703576 940384531 151286369 341384099 229240083 200484603 912197820 579966343 569627207 974742768 237585587 694441604 59126220 932220670 293005795 324218181 254660369 427506541 263376937 474021861 319809029 652334036 243913884 550977563 888192116 896621390 585069313 478499251 143595964 465619711 972134614 904964310 335329566 853954636 858703988 590647244 866239227 67703847 361367056 989574303 146719345 142000053 4347236 80082823 91759909 438756759 119392507 232889524 698638919 942454838 182655673 482406648 214910384 206878618 877282710 100308881 96811778 62281320 474502532 389189672 632438749 838994453 224559569 966213070 18841192 81549457 870472924 943896371 441260191 981157821 125301176 163506427 245616601 560952765 51188600 416651154 889363491 832771952 304950064 386872681 797369143 520247935 539657341 177240799 318138047 182401864 139327530 876495281 240358251 923135968 146540367 21877399 519751721 945098385 976507381 672548578 361819517 598036258 678914907 459262475 913536863 328127377 264598390 231417991 990596564 318443804 402010802 400729171 746936024 532982997 648609886 381535071 343168732 262945322 815708280 332452186 507672262 582538805 126764522 659142794 656636254 207633842 699933561 670186262 185604235 371608709 755476688 205494124 788992687 918746697 283620599 286214962 325106119 573764713 30170045 229198023 949558902 654378887 413791556 476715322 628147701 506384110 100404423 64343862 47902887 952160994 560118206 619477379 568042702 622390692 654442502 894619931 849039050 983275135 601537542 94147513 912062905 670047114 450865553 800383772 459971236 777268880 790202710 656906119 341876071 886154268 123873734 553278654 933229671 650959088 753871282 165868404 613720296 821596746 774052179 855145739 108839920 709644376 522037014 633843339 774562401 540934226 491978340 577994452 602576727 892391842 262078852 961617216 537872853 540190290 159581840 365714448 135736575 583568103 688341561 854095167 155818870 717998205 231204642 761645233 745499982 401782184 511618054 982154422 983151440 427832408 251446443 941779253 901531497 960313344 966274192 542243610 313732982 936433599 598523836 766405413 791410435 9244992 931856938 371830982 146403098 19933372 515339816 972892164 876898878 694716351 796041494 275693750 571611392 471849347 292940106 264420036 560994564 511656256 595516398 809925324 816150296 242110071 427904813 87385945 837864338 627497934 828222530 585934650 312788690 125197015 775890091 708415893 771873618 292659326 609755031 616247514 528504108 847865509 283386688 589071011 793781311 725056937 317116702 918462285 658705072 423778095 817292036 554113505 877156224 653913774 428315149 21256048 95189805 384081105 707220166 194504119 207011244 858700358 501247209 460525692 933538101 298671181 20858592 219609998 871651097 514636466 179035560 555807264 391823233 887738876 22017692 603073748 466742720 763512131 572163256 108250234 222393600 874737959 119125227 737640321 949863828 517903878 677398944 668543023 212363356 959287582 801748426 230534542 94050563 917833691 283175398 155497142 997658100 997904327 172438026 586299157 385853438 291999106 623003450 230892153 745137226 959010737 171010355 926045391 614442707 110495282 913248959 505003122 481037915 293291060 868124176 220014518 608923435 392242360 698314640 959788907 560687528 130620619 750437927 828154674 875837195 888146943 966744180 736758505 509861028 168636797 422461680 288934680 602608212 952619559 675894774 986163357 490623502 777980291 852797075 787003579 862643943 37034793 908215594 151100352 440405164 476461551 972829507 729439953 674874178 548980043 189816828 297767688 543928611 271618546 242064578 976528150 672241971 253046645 132676233 890391292 205522434 243602417 519950765 531702708 870353934 582027639 321411180 485693057 995027750 213949647 827061563 384042092 158707829 670075819 881726240 673449529 649316844 866492256 491898283 348383542 464919947 418662934 313903044 544416094 889739095 454339485 88841010 605182224 385955737 13282557 707684106 265062335 158958733 756825862 748995100 512776498 155664733 416133440 285176936 611519620 542798083 322320318 832590995 141740834 967035708 746955118 246504400 920682243 473194638 660234453 56146525 815860539 648108129 903394823 630912512 757346938 832876854 900708290 479844478 383704706 28452881 657678594 775918310 4511564 164390884 788136701 162395845 726000575 61033182 61868738 703669966 315488274 784182904 171157444 695694444 504780446 59150517 197904715 706005729 312287053 146678014 820230013 390301085 374512384 548136884 783641545 427596387 761648260 166639548 268011254 462569423 33725811 961791293 529095896 637089533 17270712 184733659 415530362 117870093 716481327 83765372 966161257 716928600 632796398 415590202 768710842 27255676 179613988 171895100 259654288 103048177 276135126 733148304 810036524 645566901 609741066 812780505 500814636 375726940 919431676 366987965 100419063 334133158 996967042 354124117 30382116 102882878 978488414 915765553 693036966 8676180 427131604 724838588 52638583 360863256 18421565 252242630 349628491 626389236 503004541 63460554 759930135 173578112 580371449 961769699 271926794 424211195 508528177 698780356 19463374 569353458 26379582 649059206 434547453 887729756 238481646 327547882 194218337 464228681 69959788 700968202 610177464 652762502 740900801 252672051 675405930 857060348 508233407 550537092 53532075 980984885 559466880 69674467 41498853 387498876 894624618 56924244 227100247 868885997 867348256 225702850 751599537 240430976 689519015 126601223 541496179 310335897 616271011 780573376 875872157 182758339 995530057 130743809 460234040 350636379 34190816 309358803 98692276 776653042 23432738 826443177 369410412 882651282 987522645 912512387 623065343 604017271 662090529 567749707 639424696 13131516 95589408 568676948 71519348 741862826 433163833 886740775 772815210 728726564 458673856 144996776 870741185 10077482 179426592 961821711 488868814 282518775 806392894 927589767 898389187 647762888 371525340 655813688 549989203 423510249 391165647 609046748 715538326 8369635 531402273 46880349 454250800 493958616 927395664 683146445 186736002 308948208 284975271 82096989 385356950 75824063 858065283 676880082 427658464 458385530 873837309 472000557 139830449 544628726 567029795 37242323 191501413 662083247 963741684 110546850 345315121 576711765 535222788 695622391 2106827 391992535 806952005 651085674 253339978 193527356 651709424 967363130 720157390 924603898 98437678 498335761 658115754 852742023 509805219 697275148 653068600 945080723 805651404 128366332 181409094 6940934 334678939 19115434 220195625 786147816 463562947 128291787 633530219 210701124 995556115 553763744 859558678 673513076 394233765 773715136 830362565 723586208 511819557 90617440 48835356 221494879 713385914 113421471 132593564 110626149 466341720 114691398 801416941 748199423 279179065 884978815 523368776 270225416 189189019 498453983 433116317 427908391 757148987 592727073 683423971 740841460 650831453 954647678 240080573 932883374 728735547 570640164 462691537 424671718 339375721 208905372 876625666 203718342 302577258 520035953 511602095 362400802 516145218 311049605 764472562 403644406 21261914 500170052 170320580 387517585 949797000 935953876 675607704 264411689 350715844 664872050 108504741 141614303 550926601 142381587 585841576 379998792 70746189 901060662 327091850 714830810 655644884 510319174 48487685 555646410 583076797 574281090 685720298 509140425 3857705 447231452 89549913 870284398 247939156 170405262 928252881 946901137 304941 494382797 84849627 13190589 648792269 346561007 325816741 42597175 962582450 896460889 269388103 586553806 325032484 649881113 379576088 140763600 296940689 361210736 445502006 872560031 559020848 208207273 83822693 479045441 29593558 866182830 374412418 110227592 445607102 524558362 975786037 982413733 443030756 118090261 170451598 709729704 351769230 5817370 757770862 345346382 952163306 57742092 81294691 305281872 85294043 276465405 849490246 407753272 921285332 653115216 386228680 218175514 414612384 318850570 984314988 546176971 153186248 969482158 30475465 30158802 921601989 316125166 735338086 179092102 166684211 56297135 323479473 171356329 112476382 62967979 233399127 676371230 350409787 592005661 258457433 189774680 799421550 756548178 129107507 944947184 408488240 429567192 420247995 303103338 530084312 784709264 61552964 682116198 878144180 843941658 634514108 855423590 672182290 518182375 757144663 873385516 491392489 405644474 626796743 582800038 468870949 106652197 857040075 147384180 894496192 732780647 707807296 405083856 174078786 91440852 658769714 791731479 517405823 280986260 804776609 507863960 363711438 605600286 765240341 504792275 679983191 475021398 541994220 88389397 605489237 368527308 673012818 273588470 675423532 473875539 378506256 644128204 339437813 756282600 853327527 763208989 248140168 668133534 542040787 666174209 834854974 975765627 160107682 43212446 973518049 230896446 877077597 369376942 660831484 206213851 474508109 272335291 102414512 666295200 550947488 529459057 226925116 38472686 726458479 690102583 283236130 793925329 592692716 204653474 716079726 682095427 439715386 306711672 610482294 603486069 410434214 778326802 101586569 220666044 216151247 746878840 839912938 505797046 156436484 835108599 748124473 373412148 334000426 790643198 957193416 814170627 9947053 33567955 485967459 148923156 377630776 579647105 454434156 444156929 983061592 87741242 405159446 4255916 410639340 868443951 328110859 244666847 903526978 910896149 13230863 149885492 451855648 36042769 571445711 929832396 455775692 479092366 846047832 434886465 541224072 984971703 391883908 196302780 419133680 752060110 371582064 204172862 623491085 531347883 863934902 308695519 156512633 175818526 839612926 746688783 451305377 450930551 851282805 252962433 279773009 881105162 239624638 143434338 16520672 160256882 846507876 932227657 159196091 652483667 473089042 327156447 52789986 299182563 847338953 835421776 192803993 60425865 584049891 745077285 34235492 406701903 93352468 240268085 764775415 140808127 151156804 588578773 658592490 363352772 843854074 95180851 609747288 321689104 608941297 738742033 270978259 930022766 707162007 941993467 481069451 641463374 830427649 237767255 521548785 47339789 833886332 157396836 436777977 915252959 225610864 899306770 592351647 59172554 385314360 432006031 310249460 101370942 408996970 3895556 436821482 822260204 455875803 610145167 342394739 620997241 992404141 753531270 557897601 306293185 552738086 774245980 447345783 239769371 710082929 960478166 207563404 185018630 410014289 972024391 437378963 247434402 626667114 94035758 492051710 765861115 708986014 418549741 156630590 63403204 644890360 18798449 898174613 674167322 605588519 480381688 202556169 385405421 619504171 738639110 228235985 195121039 381312802 490418373 831753417 131327483 488898215 816719266 107333296 215691664 955091505 41963437 207325822 505451533 11492800 734759649 331116786 900030623 216206899 972793103 135704589 279536998 750374500 95363973 483773634 151491675 90389977 206936860 577548305 476272317 873242042 21365647 795249112 865910859 668537658 518395155 724916955 973156739 693368191 577557496 507746752 353819479 535543189 598869963 143105967 998191772 265597020 648981417 265130076 688858362 90730611 528048569 516120347 867311193 592179593 481753297 860817609 72397742 899753940 822264736 823186350 962884609 7248660 996828243 824855488 515021788 277862054 539265170 168591437 855482622 444434517 654605909 72278693 278910005 248822433 168535877 318231013 290298742 736700705 489027614 808939686 157131186 845277593 71371751 82666970 641628302 92833602 260905932 514837312 296751520 505341615 14050390 199634476 406773434 996966432 33241083 941288328 2093100 13222479 896960673 686153517 921861221 44206679 221797271 301919555 534505198 178891297 360811320 667251240 97232973 317373256 963564060 550590374 523379666 796493304 654890856 13954735 67638229 69267960 370504316 458963529 195425104 60593865 165968173 460947387 314999971 242583044 872207565 740324597 651874597 407386401 598518788 359464808 77222328 520719089 659266514 543311901 36612056 219634573 715151953 350890322 46834114 533476008 563387377 145079189 992224186 930954201 267128816 403268282 741280233 397403195 882856582 116587573 352540324 540092285 406941779 902291512 668763410 188136381 990146388 678645942 832438083 533616052 258294825 840411231 732036709 828702417 246160195 285957481 74119201 673601351 326097917 682607027 190970907 667847302 834545695 739343498 892628849 420409358 327056006 842745426 853712123 287468664 414993165 441869232 302358050 315635063 120184663 296786993 486247832 289932612 138173034 652281435 519091979 731422566 693930005 283726848 179618011 171578394 289345335 176099957 893272220 537642264 665219870 612692515 517986428 644073479 190846601 468502306 790233872 555727670 535295723 509837542 527179656 122384737 896278013 668024548 575816322 176423259 768069639 932726105 790804120 820930241 899891037 378048844 122371062 231556794 700055269 568405649 374223209 289508530 904886545 779396757 921677123 803910062 844886260 75930727 589914472 698241229 811105632 973620016 630506859 986513149 286589527 255265201 671037749 934321039 865142386 647630262 246973867 724148910 47180217 157830523 593115818 549282141 841323619 303753774 793848797 910676204 368965391 377529917 145353298 547085776 721848110 412349645 235773701 802703767 889189284 431907423 87241950 991183353 412908909 639147624 592794957 626096700 155428339 917159335 357148603 356663108 671417013 126090896 278008514 304293732 459131438 490990386 741576525 224126893 287934009 921542254 56295336 906933967 750303296 648872663 912029453 902958398 432764093 876753945 610522697 136166782 215314657 715181881 519594293 339736382 470797139 24209427 214273633 301116489 252712748 954597869 537211354 385983151 779717123 371777223 304552950 89002277 621784920 712034355 788529317 185972521 328752587 50750769 493733121 669892855 580982901 475452168 859862591 930446135 251851008 605804271 375741548 517899902 422294084 680718112 53923369 154667918 856257612 485123217 716222691 174608991 970148995 503096498 956781770 250068203 810644683 570066881 332276252 498119326 718160602 410723054 69255389 329428685 864788313 575923183 558915947 298344650 854406366 307717843 370672531 416503076 164847725 79153765 701690760 675960660 996118847 346920798 973168319 848728512 200056833 839313450 539632339 68102671 26286473 225082928 560074729 916040854 10079503 883722379 425678877 804645888 492473744 190217801 448565167 886316713 469361477 694015537 450410186 357763820 790274718 435435510 759702681 885599258 559375063 456209464 508652441 790060104 908755455 822361577 37962953 296072780 305102329 207143350 204092318 961316318 961514668 163347476 107456421 669478684 249401611 637481530 112938648 911478611 289410498 914054063 102082499 197737566 219836934 568535543 98893845 512350091 516588457 19549943 700692442 196825924 246835604 274755524 915510951 754167159 666941618 803151546 607440312 926322229 624375144 104843592 66205709 162243417 813743429 228377887 418145354 257912167 396392150 235310151 708637640 304811929 829438870 243200747 683823678 660865816 101062244 772745383 516503490 385330751 419872107 349567735 3709162 15457090 767579615 534467235 555244689 125614812 728463931 651658845 560854494 865883941 959774868 193139925 447679538 9523108 734324103 690572951 211695589 867689557 794277206 261393284 964844479 371609422 843430398 653469867 516852966 829082035 843589992 990658921 743995428 867849936 463840312 772337398 662671217 597699335 559137818 688989432 884805406 746579882 172976389 28601477 939763383 924901595 765643895 381598990 4038763 727752433 775178855 992443076 389716632 168588372 699590850 554954903 545257861 188126991 863201970 420607851 423293743 427451143 269880104 664838487 61692243 589844013 341624105 312560019 561880229 892209336 773077975 290227383 153263362 204370012 368488252 158555198 595835217 759581821 561810616 283885968 555970180 584322232 977838115 160276026 142624121 738085742 560705581 498272375 140586815 297972794 852283625 786852353 430466261 200579344 129084361 135328828 233658038 810749004 659402373 109285626 631888522 102518546 98141395 388164787 92427648 825373855 876077732 835037121 796305407 750379533 49403845 648704048 274397491 349356125 448757439 35552845 450898024 438657560 9547428 151877613 746690269 103709339 887993607 676097444 803325708 772612436 629830107 73001894 656772665 150206148 129504587 385555453 684677401 390151278 994982972 414569624 197035694 609542467 747027672 111351527 240260589 136708975 329344176 163697244 404679858 294005357 818462465 279699751 258898938 221319739 737879809 303729093 109856880 975515944 90124097 338918881 680531651 331721549 851779238 733741364 975743414 734346704 394140100 977073168 321757780 551998695 114670845 560745246 597460215 210824221 209075 199444919 55071807 193605396 717282323 499105523 291918528 303610970 203078878 248171208 770356677 814575312 791450722 157745364 261167347 216760909 632109768 131490803 857612971 511358128 93486434 795986116 988556464 581464653 536041589 747852922 790188207 727592682 325906558 491298193 5698182 412765390 462394708 432006849 880580306 904901482 863674574 886162274 303413337 890837861 299650525 439017747 7194592 573498178 874063260 470679979 700183908 944082914 479081823 263890488 214236415 183121955 809968128 876805253 597440718 612218255 898604075 414146410 825780774 225783931 598305814 277528121 551183927 250083233 991017855 544667035 315452519 27652817 561643253 59249208 108890765 323268937 385543827 120600394 645907400 570316071 108859071 770004556 583344772 719715256 902948089 226113384 758340306 571143110 329184101 993695254 274725359 687865455 311613143 410046257 287485970 366319143 949013932 997800595 702329472 454339761 637182706 667298810 242452751 671876841 924883545 687955253 133168996 218506264 850120608 101991889 463915812 889433141 857150296 570726498 35123698 235495938 846569887 632177839 15860015 178959299 741311918 39578459 572721342 734377414 301183311 594991574 255464330 415086642 152374690 303177621 412834556 187848040 446089996 110205145 79185477 845854939 566031565 729381954 611863612 444083191 948821039 793646810 147714348 234626380 512717060 710686575 9110468 992393169 990095213 590561858 266298637 675495070 20709937 794630292 139825574 778974267 159176935 409264829 249442266 756679644 190129027 140328594 436950358 112798036 862690225 838184310 833920567 346001294 524367868 262170848 180261440 469894878 705754215 590216966 433832690 134734274 236881652 440412327 169134898 177158793 523085472 204597778 493489437 455946861 673040122 958547281 78154681 212875323 550434464 602816211 2942827 240080507 193497782 511107838 615093660 97654807 709776985 438379987 535515780 787477293 494102115 84478350 796067340 47841679 374911183 299663394 112144389 914362124 547591951 430010598 301986792 948958212 527177428 946421823 199505633 207254415 536347338 526634270 147167494 414875421 848657240 111100667 28714680 380964724 213799023 13024097 71782070 950055455 238181930 373543169 698959333 111872234 574597602 242220265 829683062 520701896 94111914 473557181 75142206 806602797 46678546 568736215 714700106 859266608 677831155 83570155 960595346 471481591 569002423 236653412 133846417 605184306 947415252 760397102 626594855 406894371 439532253 163547440 888373822 200498690 926297590 131132801 556899082 44802457 187801192 430672600 888901501 718805297 96272301 459878823 701621194 834936609 677119449 830582207 624031394 615010669 144483020 222742749 185069406 405171250 70370865 225667736 866813398 552051276 681934256 953991104 942122979 456567437 576713658 830564965 913578771 183356738 600703489 661306720 131773072 716200884 88052046 776906637 827859600 446015438 379916253 150039484 951383109 468561853 430097363 206997738 508867475 472398399 995662310 134904518 455169726 233510744 132888596 521962373 388477738 104282299 851540043 435972789 921205358 787980745 114008805 442221770 613984264 675373355 282972452 722320027 664107828 985532625 179365393 267234759 571734354 108855301 728269236 351148444 241181053 759476660 970428875 345250584 593357862 786442785 167161320 424237297 226498145 812759749 457538592 550892842 256851806 376784840 26897794 859702034 610629621 840482936 122683185 649299483 667765319 234590599 889655076 856162282 683734194 109000278 683725941 698045531 564575077 131357843 558360314 700735645 493535678 304283602 943187079 107880791 545037357 324995298 32341078 680233888 662298115 201276641 243269474 361210224 52768756 550882714 631662963 900066656 977581619 650566602 703462127 42246757 282102177 722421761 996322098 711763261 455488425 541597564 553845343 133897363 643527049 975637952 667430522 78427224 407834178 820599267 824799486 154116954 902672867 416889807 149818511 869561987 786708930 850185494 843775100 338611384 794001930 353986367 597483919 507871541 454482823 740454496 524339580 366956617 165849176 858762866 250417534 643045917 447984906 890033240 346263241 223015035 417139481 689411866 126889919 940492899 882589099 229237270 842041896 714129624 216591370 257106793 542455981 677871498 440714928 627341921 39625956 596775249 852906258 437736675 146017368 536733803 430774720 785347278 915545135 641843285 201426869 927803275 850955122 196390608 481648756 150228792 31420936 536210359 108654696 81330718 936887000 586179592 291744559 829513016 952726750 85574138 403348403 510311140 306883545 406501861 927579707 681364580 636319012 422656805 486715805 956945881 300591001 698558632 184514663 824239974 740380426 966533297 310313283 621179527 773872830 468885060 513050377 396198218 901888041 460679271 724090303 265878970 563070319 453003570 83471695 803413047 356361043 290225393 495932008 128370538 395506863 707832200 699832077 529500965 186175965 162537386 73862672 566485129 146224864 643008407 977668716 19632276 279620629 933945046 455554899 470600906 865556851 201689221 120373516 300818648 797409924 784509024 769037737 462371581 740983380 748966125 761857809 24938454 872120975 291010510 826955076 702278094 749350748 533060542 432835687 635128490 958655182 93317562 173628607 691709730 872462289 927339372 450232041 546134213 979877459 190717767 144918927 193334373 715813717 918191574 906804793 953987411 224347589 13215403 444673542 415250011 50626203 372900017 261509867 609572987 758268520 595078555 513431149 214488753 231626678 29264394 451150018 71015819 57893507 674028868 5257134 496280870 813022995 763235141 602022430 549905961 894006055 418056826 504306853 99204607 793289047 174340074 772131520 22856547 201509616 349939864 19500675 504952904 707012395 195422509 995233012 345303808 247159587 558949176 826013408 361437764 342120352 588136722 93531838 465014662 631218205 952133463 610753047 194261614 916779068 321337436 556937977 336937747 8355991 760051695 550216520 195099554 436370734 167236144 842343597 978583588 487230424 169202570 245529623 9105838 554620906 356281271 75262032 893848365 936049248 881527454 36530547 195591214 134912901 691923320 272387700 339728533 748661431 656278160 116727267 901279548 17169052 988832038 640930763 670458259 334233740 856067281 314878637 83490144 969579209 691469680 296619576 928447927 744153248 36974658 725199810 630933390 132965173 979622625 647010030 404315667 100675350 44304411 66028203 198760282 42455843 697372742 188479326 89578891 71990447 59379767 365057923 948534298 473097317 887302796 509163963 595360142 403311604 464989139 291652782 475925537 769076537 814998056 594993939 362318869 920818668 681270760 665322009 889075710 716612335 244485277 347887803 40760294 460576058 100421272 772898930 598087149 857245601 790052708 598140917 423332443 340604508 86637154 350293318 208695587 346707102 568716944 194719620 361104673 234074624 336414879 697432944 909268181 940760132 967217877 733120284 490985175 355942121 757395011 801204795 955619260 961156989 527690811 102925104 925598703 266090985 795781203 657923118 459508824 220845440 459041899 122060515 722331489 454271754 258443810 984853732 55286791 309794777 258961446 387101164 880568143 654926480 615997931 787543972 836991922 457788548 176154367 616328702 262469168 728551095 534035690 133339862 140095269 690834446 24993217 2080596 838319413 893763786 224006838 218617267 376083480 43971225 648016139 7545968 488621204 500992380 569486077 545613814 373008244 883587405 198908626 5043317 27974343 553142202 793739646 913542858 389664033 774071481 382057742 131282171 721935739 335566181 287544740 256054764 673797996 778775356 954818881 767873266 782730203 580052155 306867688 64877900 176459759 162747718 259749679 314582722 843232922 780106790 334225798 383290929 87032067 188120097 707661472 324372126 753267488 811169435 472725736 463333761 158891204 260652937 741340623 835748006 548959765 494670727 303202210 85425763 52429177 995792892 172070873 379932232 160425391 305288531 577884161 225438363 228628768 604545652 378212287 27464841 786235493 804142291 123713331 964394720 992385692 286912571 857794717 922322705 56529191 143683846 945684904 788293801 284916352 246207017 398457105 684973159 42601282 873564068 523022406 710703425 871400703 397453841 477885295 554794849 801749967 534777869 399945037 595319600 201141782 458455688 777826572 4882380 382284211 828226922 227293520 769527196 418101083 139750299 172817134 253243622 135075704 439453655 992526034 653501988 810085885 549743128 750775742 985432034 844325539 977562273 390160308 456085494 604974706 476439526 140017755 504186450 640078826 35588624 460097876 234738309 444424245 533349549 60727205 655040410 252075094 979808772 885186920 722730170 713024949 940600964 532482836 908838793 256487737 877399006 872966886 9559166 727539613 405485804 968988905 18344908 86250580 273830181 879429796 178336711 469607573 463783374 452618688 729456309 775078777 382482297 640345153 57844330 704668709 413799261 486543247 565974095 987351043 328801173 493598093 920843121 141116597 121994181 114039874 839312727 796522356 331241255 941721174 866918020 261679605 835711287 421167005 344281611 27859774 726236906 849510983 266669919 144005303 837853301 359955128 190941370 124981215 678036657 587640763 913628640 802575384 738150565 641169438 325830033 672944962 11698307 34006528 632773031 28184521 885675858 219826537 621384165 593144400 838383672 37075374 704764698 72607692 24568961 181306128 560999596 773740257 139183871 948796792 835938720 177026537 163395701 815077562 867574080 692821361 877515422 696073246 826378573 800451305 272363799 270265173 314201178 348146241 356037947 68254565 809239401 890077383 377782959 628347029 488684421 650893345 669862460 389674058 449102546 774577098 108261319 149026575 92572220 842288828 448674909 64106006 462564495 983426351 674974816 929636681 441779224 98845536 952180495 196321384 695988728 559908595 921609288 849678345 678682699 508577690 891821047 527004543 913790591 350340799 962824646 625388743 845575499 600126715 906168774 611969521 746682420 701832196 359754474 718445550 900811821 703428439 822785583 375493059 964518264 801368673 398147692 602205771 188165888 239676613 246475343 695369170 981106505 411677079 461680887 256040303 783429785 933907113 489222961 214990724 475539225 450482333 36883905 659246988 71483334 852883135 758287063 394325710 202375971 297867428 890307372 970341231 252221772 391953525 277777839 229178942 365131971 534229399 574343417 453633672 608254012 436208967 724635318 62850413 968189468 29936745 49723573 334202786 912195030 265872796 897158374 724485163 186036096 689790072 568677393 690923959 447975566 121953642 684019294 537439432 302132728 124915339 248486606 897755558 608102752 673768746 469696995 432959493 455664972 773221702 34324487 994084024 550023643 524018877 537512913 50275953 140323172 815049224 786921867 560964286 117016316 188809667 378198402 225529903 937131384 664620551 673506851 803788786 644593406 93493466 921085810 874202288 208564205 22079968 974121507 850830882 565039381 586224866 751764406 235484960 650584185 257321633 603735070 737084239 247003214 75907472 679950069 879625970 705851783 832182927 748677785 619475135 225244557 253184235 637875308 86563901 236740318 692358064 372614484 34120389 645054400 523185441 919523084 327752390 190975427 337058806 472506714 13983823 769612792 673690849 603401370 766297361 705452149 20510126 813297108 349654116 811176847 379080707 605579082 101507105 711324759 868298342 131280350 811906518 394562766 114898493 546345022 162103738 738441300 94350067 926091985 801976045 654526739 433802893 932035247 420790177 740734816 119700955 854975811 190306570 516496983 208542590 571400180 2977354 420164702 439844840 893772161 486459176 54312040 912142731 805197344 911739391 588166321 920552809 492701947 229378819 462536242 738790071 214961743 805410415 56734338 911061118 561394316 631290822 231083326 747255048 838824503 769638389 349139645 242430495 579488530 470024820 456398515 282728431 530547000 884242704 265517662 368524094 980615755 404525116 299695135 595026503 885504241 238608785 517779103 752704873 985921987 774929104 899968415 759977968 208472438 511039517 599217915 859843021 678122198 59593514 240472287 689650281 854408816 501058299 950535853 353665828 672489327 172522780 421060740 362836917 94543793 25365558 906694918 19485132 981590383 538006443 353585848 476101240 485379380 223379824 658074942 660991741 907337227 94680236 282195248 771012531 987885345 867432533 943845936 106413633 973533283 184858053 166618999 212303891 571704651 359114604 621462903 963795526 883429801 482571179 973835536 811190230 695990135 28735355 870390755 325836858 54835775 43233787 893804886 635396415 969321125 194955056 280089217 646697362 28640955 816656050 516501928 603312864 315436480 590373789 411085951 119166744 417095811 382700738 645542230 453730481 689811334 111315981 318691101 181397602 310752036 354867764 488579655 259076426 366629161 526357093 556013679 222787536 79701731 575906445 994996994 112783705 643473176 155959972 524320386 322044888 972189933 492805477 151628005 461745946 18885297 588961441 101966240 427865664 898641721 514143547 88408988 211857199 108139326 393668064 176025861 841931223 981337921 596671659 691448618 655181499 405389722 907863478 722983344 841712614 671698992 266495634 299149296 232406471 294132585 163866208 310233419 965683321 485830071 663360956 294534000 942299157 85781991 35771169 308442528 809390490 991689610 286396262 156850891 663239907 333130856 414489427 631914414 727650959 325741392 731484179 100345278 843249420 238896206 394097527 399687398 792350433 64550714 536005085 461674767 33381161 129986826 667187121 99299738 513065445 888083500 56827479 918277293 872172751 814428072 369682558 537372136 753789127 909125217 741100775 190939382 358823703 847644138 176263697 89724008 831082387 477671968 623860279 768507411 832211575 168575329 420827948 364711618 942812145 982624153 203862991 4731077 457449068 697777829 819747301 597890006 604512459 828355285 904901457 473782189 329045210 204528288 59494928 191718896 171016152 625594923 217774714 167189873 474720091 354376176 970841149 132049202 473955578 546364963 359572021 541600561 953842687 496648062 993129606 988669568 88145476 261094263 894139394 972514027 276867584 361779659 791963697 536640527 528565266 907854840 671217445 159239851 960617836 458617189 488955376 355548577 566210496 846047143 675577688 286818752 685389479 997482245 202587552 766595951 469366416 289586862 727175167 324589628 246837038 489435869 565264165 536732931 462297802 28513007 818501835 623953716 235054521 88794797 510321437 120724877 221326738 474980516 296378637 295144446 306307471 728338649 586952730 927813784 222850758 196748991 737633395 785429983 518869278 548359604 612311046 381660315 734656472 634609301 250644806 181283505 469585083 158953220 50741050 951831022 456885145 222402419 864105259 766771048 446500939 888415661 650855088 185298593 274766216 501610818 704830014 225570477 248871512 195572540 993367082 134078026 572093452 795178831 768184652 764142013 164564916 971352536 253826954 566482471 64731100 412231953 693888065 92183007 74274285 777853675 889087161 99601331 649820905 803516189 909714679 26972285 62738912 620916984 683413496 946675401 944487968 131365958 181535268 832455566 832593859 238589439 990806574 414587301 612556560 715276207 564484646 45511977 411955719 864856363 487179099 300853049 510635567 31050281 136187727 416002070 944122305 525088891 991916719 308792909 4311316 632588752 399054627 528136976 949156390 402188008 454940671 555179154 320519501 109650570 364677097 796854846 310906795 66334302 29116928 203628079 437231627 852079195 210663029 837548715 20795030 257557710 433613427 122891113 627110362 128638858 182440989 67334380 306434762 322558955 52735127 310691064 799898897 93581062 619221810 678917118 880653930 129868553 770343071 62595958 148366305 568843714 194585028 615004557 393131461 845395980 683331594 106277478 938060140 241304185 85546418 201983573 549597136 946500615 198569402 560790459 18803364 756442959 439927508 552815631 426430915 110883839 158100096 955408970 513833611 540308024 525214834 472680030 258304163 841059003 317779169 567529615 780068382 840025440 155806510 742307199 114807836 899201985 819480944 797096954 391304688 338887166 712459151 472808761 886764720 673781492 856598062 729032908 549904748 536502979 342149228 705783515 360483610 739139989 204542663 242195920 257988725 532794877 850021860 166850273 816722491 878282262 838562869 448343046 615307392 406632845 344398569 805089056 370786338 877966528 859580182 364890179 983565221 131272937 510091640 189217441 212805379 188215869 525838742 328334432 183043946 367424408 921737744 543273073 102741498 861830482 712862639 180705562 996627751 19023536 766332157 139788799 73216952 200672665 505415815 287990507 845556479 733611743 897586655 243191777 434073153 591265042 204583724 619707195 293953706 477150211 528383696 260026057 267600104 463369510 987255039 529899674 744693407 669776683 968788099 131323708 509958566 629482275 456153277 378153905 90194578 384097340 662567478 353335886 81197535 896099785 981072206 438788407 449662942 688251816 571109808 114700977 761614515 424995772 510411180 897197882 365057175 680168294 753121418 782246227 111535994 611971843 954880310 129506427 988919535 81363184 895798615 596504956 945037556 748516383 693268201 8809905 925885155 457939732 84197304 15532198 145946380 352178387 263696700 104469627 237023837 677398050 701882468 385528445 495456517 527802973 324447363 260155507 991530033 951001292 84746699 107310966 696208977 868262900 966284749 913168484 48587734 326588574 47178049 822588262 309717978 195116859 154824841 359770910 138930862 694756298 282854633 860266942 66288521 292090502 649117316 532703033 277082894 44353590 373204647 754862704 397619717 964975930 529593448 486817649 232592399 55765548 116424000 690554438 605845956 619213356 405947900 351171806 990577114 303634985 358450986 152216342 816203676 806390068 892000883 379257640 933851828 147377109 828289500 373572660 190339610 85834010 756933813 353580390 475866952 279466340 966128820 867167259 245199193 280583842 497714356 189720072 840427920 602369508 897567299 284367797 395176089 4667138 944283539 119070965 585475651 511342216 954235972 589387430 262875546 66683322 405002784 99636141 61014893 97648803 55685794 737768451 210451189 269026128 63476645 636521587 651803417 89079123 638112196 992317557 470868498 605357365 254564668 299504125 987461138 581277740 661680963 94068415 889608840 973541686 221992100 131205719 161731604 212429028 348100205 270710764 116803473 821933372 8299325 299278327 274746 346475095 320020953 50527035 830294708 660172920 309531906 946463564 853040896 912730909 45881903 327379755 348252167 431274658 602313611 363619276 82529124 611761924 605299162 88985745 695632789 659583876 359220588 30108839 181587432 263923407 686576428 684177688 305719797 335305914 829803932 744348126 74112022 780900463 636583731 560217049 861035758 551488203 348415918 372067858 252843767 456959353 803194068 547134467 781871852 651758828 208414562 324076239 142337598 965329832 73176683 587347338 335871594 880991665 480586520 741002048 139194244 871301810 853818653 946387950 8610624 228980814 830347703 960927350 658487019 875573913 545507581 29415846 186028284 553837914 250923988 589410130 104273520 304628654 691626098 825162684 614546681 59839897 388319653 303655248 925622799 956497279 238790968 277278716 554637182 464975055 426246180 125039342 80460488 644934722 640185829 243526767 607573293 875908545 799548159 499060869 639608018 258696016 787922934 329894997 213440700 547656190 874343761 898274577 712982427 643490853 817924290 445798100 703302201 254822621 469727155 928002981 455968445 380975968 659456508 108279105 370564614 536716126 505766529 922645848 137018301 246255488 325675477 376722791 247844675 396274291 830725781 30400205 849935757 45258544 547754463 441011398 189027817 810005963 323996622 844641654 364432931 967435982 349556091 424437236 153993768 114679184 932731132 400130378 830344686 285837215 283659401 694813961 231138469 635170562 417351604 363447341 982004404 49534160 221452044 582369845 771345394 282382492 729834092 543010030 413278432 719728764 974502514 98909523 341267649 420157338 521988551 194958967 252971719 118755517 640087674 322009232 253940929 400941744 752265218 464813623 928364657 828979731 714296193 171260092 767765034 334877443 559265956 426436810 69791459 634240989 173052644 843184785 546493873 872462841 484629073 846220526 711024306 190820733 968852006 510504810 895894844 763164745 13456144 279835367 518036372 157132966 78500154 89429155 874776920 513221255 273737613 448488939 989806232 852435146 75902567 981457412 576119366 458311363 319694288 77134006 940089137 886633575 846973293 666412520 991715261 289528045 335924852 387289433 760174114 933459605 106985960 434700318 418408008 867468218 278287077 244223682 664083604 15031308 968515947 594157517 405548202 994442232 743060608 210839279 312845009 27111841 230105069 45224109 790176622 607098539 757718020 914983755 681084101 738376404 657006447 456776851 414870866 317413256 90984073 146374123 648693161 329168402 504074643 93514617 596660255 807765432 672903317 936178808 923123478 978519924 549143345 175004886 225296967 696319127 444242627 963335092 577598927 907681885 195822422 959275216 730182139 363265944 158859088 462492829 351886987 362047405 954405717 901710414 930488368 276149913 963166167 285081850 379032878 245575871 539382233 715059431 864619477 339888877 395580392 729935541 504405015 605247063 247593390 527201295 589469989 855905333 642858845 457280131 150299766 712773640 139430973 264965909 881166807 806500700 286323077 521414402 962514301 125045320 641228028 560266098 155907221 493202597 609413463 539457988 330247265 989188915 822864756 981713550 635243156 230324836 291017460 599542329 250037389 800557135 134145385 682660299 977824828 290040797 686926783 706939302 128130412 744471778 195137892 569073446 148739116 917756625 24469868 49107676 560782872 375940573 932311794 65602143 466451713 139281535 803051437 203604710 916048343 180882897 304058158 91091572 664436813 864252172 211779360 799610776 463136387 427933217 156676978 397559821 54869974 851090813 468369936 316364636 257245126 724072229 10225857 10112579 622625972 167849260 597091137 910491120 916810367 410042372 679059189 838806616 140906689 476378237 697562599 827426046 861700505 352469426 453358131 72304134 154621207 256870874 216840645 165872975 287312208 665968624 695785199 10777827 342648178 146805892 291088965 928575889 93111828 1736183 78025277 601351430 721256019 355637521 249473091 341257234 889105608 706143994 130204274 529558762 198720687 36259675 450846682 962034140 203529836 148540977 465650917 460277124 186915558 403633349 631722661 520298286 969212347 703221988 321951250 938192140 132599790 495488754 660115265 159839243 772913636 568838568 492242005 820843717 380237628 187795379 104838184 94449678 285142394 511104170 455344981 839078273 278915214 172455704 732200264 522152337 672444527 452071541 424574217 191354324 695685720 376884592 260678192 681676946 804694361 51352906 102367704 286479503 760204114 633121256 506679116 876536454 258613075 64885926 393560088 294996793 49247215 340302944 236224479 661296926 886224231 101885138 661772730 96999299 289704800 601634682 920523661 323966600 514272958 482113860 311958202 258890454 302959507 312467355 475251832 345086309 170298025 197338873 553106689 308664834 811422310 340074535 785081001 792672008 232528076 692591417 902900607 393560282 370729843 556107062 158143186 970508780 938069116 849559601 373176836 559191907 322959176 235589686 916649676 670363387 457487531 193226986 108857975 184879686 369202154 106734187 775725530 818738563 56701799 732286419 666038485 450704397 626545515 3127957 62518439 379434999 589724600 840774042 391205589 702493392 838038435 237704491 235590557 949905158 752445047 340202119 761620378 533368222 69243648 139123800 844378844 475051103 472059702 739777013 518705417 866240504 174205957 308094843 328055431 364087110 633140598 575714057 584627028 715379741 654129688 928379729 417059830 368446843 93653322 887860319 422257547 264241515 585780372 69890174 263246766 85966944 324323573 532594893 773572354 506908010 277495644 252280052 369951006 6907109 908832367 151613982 614258584 585545261 815299987 517925779 206184325 292115658 812121207 587865738 925721011 500289310 902283077 93779072 164642607 575249366 452810361 376608593 441547919 885993353 835334049 695466776 656589848 974459412 120355207 721483074 24432595 184050918 389044714 258919475 929147316 477566243 751755869 808354817 556885782 948048929 334888456 638831358 451544410 159476698 152046918 716600269 729604752 942027645 613912099 157339282 11078303 765109255 738255741 636855183 644819146 763741 741796408 815287452 296520769 87639672 510983829 590371361 635266943 984226180 827461232 527496800 765814992 107447081 644688367 997805657 296873657 91912741 979831731 723970075 242847587 400483671 873034326 850981940 375699822 195593264 630720752 234460464 461039221 823750673 181461387 28920576 608344054 162697235 658043017 783224097 475875387 839060383 651682143 720688715 923479790 31743082 30286764 582846997 820360128 571815229 458577574 778771269 48132219 589245688 247215896 942008728 950728218 347638691 197649373 562328038 924027804 463069088 48996271 266106957 215674509 737539683 683906703 19711306 766379007 715513454 885810772 504923636 46953806 86063408 151978729 420664387 288448055 872537429 684625781 741528147 586755456 976883094 800017939 639168875 875498163 460386434 727001867 611106477 924230737 913084028 909860863 670788838 549432 268040258 247511028 602461525 767250423 199775997 478302052 372576104 88323658 67426675 845594524 62609567 487977357 897612941 603331847 10632042 85645197 340808808 604766474 299002133 378135281 632460944 946892640 222592807 747492122 204396345 175352989 701238876 865948073 146219358 612955446 320224654 201172563 407433900 624022450 215883027 768875077 530755059 77712091 602579323 475407235 286654843 222006420 5432739 373354102 230628279 778548145 129703516 241323802 305613233 120831646 12004247 466624392 826969153 461274360 706473004 997492301 92729171 735891236 830925952 380535798 111973702 705655966 13383747 809932035 523712986 633656269 272438332 948685725 487525294 442497139 881429169 852863097 475258623 762668007 893784735 869821923 939407799 81412121 572035489 32209761 825834924 181825910 170733432 430520567 223670337 626882853 401498282 578311248 671167202 128479258 800982387 160028360 434939974 579896861 403114695 590560860 403153193 537558136 908756927 75845292 75258861 553854317 722710021 619890807 26096188 645682933 452706147 824013492 298854007 993515319 577614290 190874620 756110669 701370194 977559197 144517781 239275879 598282373 250757657 343991596 833561454 340558341 746068451 231848562 991769992 719387789 222806287 940544605 645439776 762686820 903170245 679047321 67848005 810440633 876506136 641712560 186062642 475817555 940299797 333068385 731095599 16522876 217921687 810152405 289839899 875867789 817746108 455547100 642262808 100659439 402683481 464850311 316306237 824570652 419267738 461411321 424220903 919180345 396166948 786980647 231867247 394646231 308568224 979342897 411543055 955734596 126433771 667940228 163601262 16377465 965747697 423305155 70472888 62363711 292065112 408551431 381655748 11864332 877779806 302152123 344471775 203765439 787739423 412085082 642325048 752477953 661153855 333052211 595232598 558712333 484407366 535121182 679699755 110222264 238748070 735136612 929050944 96949506 471193453 125532368 135249971 478776577 636862120 803492122 604964423 214749957 303386559 329972531 604933764 486482705 484441019 87087546 713791655 932900486 922259121 586061003 791748669 518944186 918161538 692016654 825690157 847669688 566603813 97004220 555055349 516696817 947069382 991047363 583757351 832156527 790629696 129857256 663959648 312888413 168323072 144982686 378781075 829048087 638474849 703085196 478365064 899104432 378429900 865046320 905953833 424015237 12213353 680691023 787286415 884824418 932930458 764115529 595233335 70979420 440532758 733658788 173093121 159779977 158751475 70061174 900176810 514460923 321175147 200443795 960575569 642463901 782026634 156761408 677787512 325365675 712643279 654673738 35739519 691626450 4294462 354779630 128916720 758211273 140761984 19513045 144852232 297120175 644972445 539061721 652977070 488142387 527772221 919726983 2105959 144712993 527890441 181765294 347841429 125203906 514222878 931530904 297929705 574573576 719365177 905485874 984746131 393076003 174526531 136082270 456248859 905476239 34711290 164788996 54414825 575333675 628857712 278679728 510042140 798133645 577519580 675662744 764614323 23617985 512695256 131261789 514330274 753593032 460237725 243811134 851596808 187949691 715715256 185171898 173681760 64280121 684431079 915987758 578360643 336287613 941177956 305977805 224849047 992885200 887964084 670752185 513876771 319407623 14047843 121314102 935207129 584913670 926522991 131958216 620837824 198248844 212855529 279553116 180592214 105393101 66431743 908896206 719813630 147748192 678871972 180057783 79881061 848588778 850282567 111231868 238333845 339731892 339512582 58740442 499378958 399213622 572230347 428192299 3053161 482479757 529491830 425237493 497978949 147373648 317907941 706013290 930363877 742321696 471750625 974061122 775943769 734329485 478688681 66857187 281503414 54702395 344702585 848592735 716728755 360552323 4145945 651022463 913495752 44909602 33972038 2583837 348426508 248430951 606417527 43838560 560603802 351109522 301148223 79505539 390974377 275398768 835235105 707819345 962736879 696053916 352304250 25303989 412911187 21905657 733403760 986453697 488212269 267981521 29690926 263450351 437655262 249815058 504993925 610844651 791159728 4208468 583983865 711525770 336288351 747521215 592594202 471945677 896556233 194369313 424202908 641308455 935768391 991930471 246427873 521550525 340902791 210091950 622834244 1024468 827242852 98936578 248280695 190783914 912304201 34369747 551918206 893930578 600749446 957999591 513444692 538732383 353873154 555613620 141847575 939850747 78991610 900474208 369973099 551834165 45189256 800972331 103534103 568944544 741334857 264092756 365859711 429227795 134328087 669544519 574094968 949932031 978128982 912474869 518164316 124732096 745960170 363692070 369416878 568956820 106513879 673336088 949059694 344774569 756779135 495756564 484101680 929681221 889135576 836604815 172649540 846112877 355833223 440957838 361427161 673946213 447858935 635563467 615133419 79705256 844006857 390491873 516187301 704001100 553092310 521565557 648401759 758775360 221120528 145776456 678788907 604341827 218931821 473490831 600257890 661338181 506736550 93239953 212365666 94765532 971274622 587714309 679386086 980002387 694828698 192787390 462287458 226700720 691841972 737857585 937339269 176003399 411140217 656655529 693768563 235557835 467187844 806256791 824726775 901990028 938443865 710220470 822240847 360505587 944776670 15788184 871322779 96917484 720868497 57156198 907378332 535691530 465006388 886593726 412900661 541115400 314555068 669348728 953520791 957389670 374054102 479873896 209926037 470748037 622764092 162021761 186819369 57469762 247138197 75719335 177965540 713726739 996893810 138597222 471566175 348814085 168594536 68378725 562127143 555370084 185341493 36977021 743539563 678643257 719493687 319894095 437445658 526484490 483610156 580230547 288820683 368996628 973142265 549775690 233159104 471923214 321314291 728554219 181233192 784549606 661441543 510704078 361900415 699126938 882275013 522626044 606928169 181840548 171313875 595370240 985920452 954795448 408127004 196873062 174502726 374340343 230134602 938681637 98010342 879569809 870462885 785048908 777734722 354660448 815386939 393211467 956050021 262392547 463709377 798170587 936339303 527674603 71790163 459275329 261572322 321210408 115995153 89280940 495307558 649527907 201288969 62908824 92685946 547765960 928048777 317097392 311321101 666737021 945362744 458259772 57400576 865775191 815678700 660194670 474706224 620195480 459458999 955177178 924511675 847291384 817631082 676079609 156544275 260448570 653461060 850968621 764360417 512529813 329621816 774691366 553341445 665669949 305386927 700932893 225951442 267103084 487347327 888221964 955791486 155632458 24170237 158184181 427038875 52927413 410849731 29747067 291566215 172076861 475094504 270650317 508685010 10438495 624589461 463426190 927684132 509397518 993474650 501054045 171861882 250063202 291872468 966509889 416840265 507683667 417560123 211342286 54909792 101366767 762314345 792475487 805165611 402005217 543615785 19514502 620298103 518080053 473675987 882737955 510993776 753155520 158646476 646088191 91738108 223811835 477254128 591816241 738686808 203236687 238861003 379632189 812943672 43596554 616265105 29676150 623495830 227426070 802387362 844057726 212202892 485749489 579580515 500030089 913799119 662192293 491432771 549887074 395068187 731836087 777288789 381788336 773577557 7615543 583752590 786497517 970701945 425934144 696994518 43849290 72370911 280332058 705694393 889570748 68390942 68830270 242341867 604899504 825986443 344938327 775189241 293086298 28228886 783210148 794962936 35765456 133914296 196235345 200264077 105303171 731209612 806995740 203456507 722362311 525387108 296931770 581798522 981497647 413165304 363662925 875072527 231672215 726785015 143831350 239793697 239157740 939413526 397109003 410787681 620861516 657807564 197777620 65197575 381487420 577200361 811775035 408447304 310994641 29091256 771944200 742385821 872483340 564772347 510036813 616935785 671814436 317037582 216379844 874023713 800609593 783136281 67963865 289760759 901005594 952918191 441113476 297707643 455479126 17661284 233805276 426137378 510636358 951016147 280815474 920215347 538933580 547828968 659863210 781084298 281226558 510966809 9263008 275435879 852486533 939044882 605084566 876825189 222203821 660084072 933566133 563085923 869162135 105286528 849395787 283807155 396212579 99917173 99584715 614474421 983901601 240497308 876854948 81504469 953301209 337564458 452336456 835002267 539171249 196469097 423260941 42828125 662516317 740204650 902965483 586490137 821871236 845528305 215449925 665569313 727771726 790675277 210139100 896185988 954582294 120878186 543027161 526251441 523944471 577758960 366637542 755944918 56405210 903206162 291226968 532156259 368008506 221259246 725100982 981191585 373202926 193829233 768219588 585101699 208453548 99052468 224846354 202903115 622948448 665861915 546739322 884326026 705720967 905917317 637532285 357013011 429554147 147370101 153099768 625093566 802456286 628184763 372628898 643200698 413937660 750909943 167651892 133936688 850171281 261055287 175394385 30277581 52050688 243646357 458825993 209019694 351393498 703603173 900721051 563744929 427523202 528866010 264877113 579920840 927873571 945494126 143222895 31621739 612077065 741487303 13531264 363871966 728716028 568073364 250240873 257460982 186658301 217882717 729873635 942723670 475919871 832588309 743497369 30163519 680114388 235203708 647325577 404299971 769457961 591414754 349865872 853624651 181799799 127297414 374076376 770970428 224265361 750072868 266517626 745515934 10199405 173443020 121087721 335928092 406995916 478207838 588892249 39517198 500736324 16724310 506782226 262221654 805981714 33344901 561339962 480610387 585908274 889315485 877288421 653926520 49671901 585537648 461063029 328677386 336111149 787918800 510341158 718876878 853723239 389991273 223986839 912812572 367269444 747586609 597239619 594021007 967609441 690016745 929262152 784032546 300848424 386978839 473550020 259201567 314027797 648661011 493858751 360286812 613107938 515104373 329766959 276963835 1659565 533458055 364138960 117283640 619538366 558912062 909111862 909328551 674924764 952410133 396185477 969968062 474870795 482148992 770055427 589306410 449186471 597232160 408802502 439293069 614829468 801175254 794683394 100367152 262520087 274797749 150456049 708615078 770391390 19836906 832206649 997129633 360155493 607470728 231695213 202351410 191078470 519241475 697138547 138102502 916236970 328487682 223253561 467155243 774416740 621491023 243300200 336656210 268637042 841817260 986412861 313503134 986739300 214173834 91229419 563288184 522695391 200194227 536853776 444622403 358537083 269882833 86823494 118429589 570276120 29149038 389003156 593060710 88400600 675788711 907866862 126567434 856997395 99061231 895720614 766323055 845577422 783331773 604262983 975401498 604035425 762698855 466971160 130870177 920200452 323254191 711673955 584037462 717852744 289770909 894563444 51344705 445621098 642088370 658354875 936693583 816584790 145907820 563971215 685476593 179795710 710614634 932857484 952436789 45539945 951224218 836642540 223925287 870706099 363333560 138638525 893666323 440567645 940904339 887106682 681895429 746714480 29577947 953198457 205126567 254418523 799171103 918923692 597040133 60079663 62967584 417250216 388981952 52163629 512459667 293231184 754410237 757451384 44471900 957875176 84470687 719101453 716354532 414430163 403696268 336735162 113418993 930543266 424164872 515815593 57411407 457670255 302910803 217338099 930821893 489190377 18570569 296082221 871083845 640478550 535296848 627984351 564320958 116856173 591044834 779654886 530239823 966230326 583848699 511205530 911783585 961659266 993979531 323026173 714514028 622548141 123650292 346804145 343231823 933135027 757524096 256232359 703389059 241508945 442524001 455955625 447686562 10708797 866539844 337666078 904102558 83629420 389389483 126829713 832735274 257319723 110398204 814880399 947422272 635846343 755015450 24720261 433285406 621028959 259463455 680580866 920502402 55803458 580027428 270553556 305860754 327527165 606465135 899430140 394401204 808645162 76014224 498892307 180142330 950819433 137434091 421492420 727762113 604681831 170302072 145736091 317651137 185648408 270666523 507973923 659283710 300006369 591037414 358007818 809845731 45073300 108886408 553046020 672819931 385546927 837773659 715170424 451073217 49248992 521254269 487522222 455825988 286326996 480699727 304687587 294561892 938288029 363369770 854215324 784495927 769894426 123997775 914165927 769899821 36864116 946268564 554630457 670099087 187782711 982036985 920043906 124130900 849621221 83082148 567349637 17911540 916852019 421545730 875974647 105385538 167168378 913706635 252608995 927956456 562821038 547041326 700995355 684182154 793815319 351321466 647420280 812579848 69070168 202032041 828407224 829208777 326165275 374571292 454448778 625287083 816738093 987081472 633245178 187357485 404990252 822189177 833820283 783978154 586357553 440221489 366965159 530632856 503028094 895185006 478627265 318928482 658008626 165097863 764403118 409704290 130682187 438368801 37110275 698556497 455994114 433785120 531545289 894119194 90826200 804466066 917434944 802104171 656527736 788971196 733002348 449100284 218992398 119264203 419085084 418919317 874544112 342510630 840250364 248888681 651544142 287721922 811954446 317645907 489708000 67277510 488846026 896331659 622673077 766978787 335055573 273307935 138817768 163213347 246249722 407388494 279493727 784141799 169486330 181017847 7442233 467521850 358928763 994429250 329424877 759003201 94590561 673757549 26781742 177311929 140423424 460440844 465039876 928007561 758596770 11052261 482189647 52506207 294035930 822947891 863660088 127024743 454129554 770812490 173816150 880484558 473127849 808004482 283319203 302125576 416416807 578366759 248708967 958047515 886962969 323959647 907981764 915857195 360289216 722310403 209389279 463389865 930122683 63425805 574443014 660107622 834981122 250282972 583579163 128786238 325071873 154636278 906067640 851260041 772736293 342100452 290702940 544295329 214383032 934075386 638427555 660394405 862836717 55059536 434337719 99323633 449813997 631186162 161071385 982149844 460869325 360531029 600239091 834122882 164599562 143626539 136764026 13745532 951164098 771040489 218906004 913352272 70123868 560211839 369366886 688898316 93662448 916334510 447391424 240300137 660065355 266720817 883968109 31519300 323714864 171865392 152062801 302710562 118347620 322798605 715143799 109270092 882069611 482395726 487004547 389263930 359338613 337754735 227767172 623804205 121192847 681827031 899948987 26596145 785691656 66998779 61334840 712456569 222933761 743438314 354405285 648100269 306865110 34724150 607978004 574194417 504414548 840063525 148774030 86792333 614914356 480915534 701161221 81715713 513284611 661724855 757881721 350698046 525142593 884881996 561721694 790751996 699113956 898139303 52692351 936887027 964903995 826036179 687226757 258611136 354635122 265995805 54793719 698538532 579703737 425779105 897713214 770907997 238131569 389682568 238937981 593035199 119573432 346055230 519419029 737350520 287058541 672311663 959099843 900253847 995300651 701547968 95975837 939678945 13878511 141870588 922019136 741004665 158256428 308528685 504126180 53068542 292192707 738129942 520145724 971351002 11606328 499013725 912880698 75977299 13819146 276607330 733532428 456347583 3963832 380194439 799497994 864312507 167051192 639395767 914434644 776426175 327971822 922203010 770185985 240292905 685961368 641289349 140187791 31887276 362212319 407925220 151690987 30592021 362828874 382256321 554860672 402163281 221993977 241045459 51620963 239319786 983487734 348030206 621443220 86849205 932661152 928199368 127857919 93608164 156088528 545866035 871430578 789447614 83430198 762000600 104197907 840043782 81693939 135962008 463210137 563366405 915664502 184926706 267137327 583167460 422334607 932073179 289972442 762651819 88613221 190666085 204283542 852319760 758419838 363389982 62655843 729389626 874776422 768515217 280167653 167395834 666240851 89982361 937956610 60749430 730977978 996510551 836575613 642205372 49127680 498091066 742504545 771784233 362195729 144742771 170155951 14216360 936435734 952750910 24959679 520529463 782505423 931197401 897543222 867033502 510160984 617335873 176809221 633165698 488428215 47478880 290008695 388718036 843598533 748671843 700087160 53783778 167473783 32992806 330892399 549124877 948479879 430879454 601376780 293732615 161123112 138388264 102772303 621829102 646983738 862775387 668095471 70982741 823700362 379386206 809653650 397100984 151608682 159182549 512629900 244247025 817916002 689144257 14652294 78699322 575892690 625865389 261643098 797015153 573031653 231185143 20840187 417513376 398995796 658497704 703904996 14335791 666626895 45708636 50673885 744810120 401709681 635972519 256688400 963852984 984763383 399038693 448300350 588797870 293115569 855058570 163436599 20988082 490562108 42984124 303030720 154336229 450342743 861872800 167103826 204986124 92225601 171174443 672054129 386019319 761629049 401106987 131296041 489336320 499274519 96278380 805913916 473369315 79790083 467819405 331935535 313775800 773749588 888113252 30791827 577228636 996923479 708990999 257615688 398615126 54936301 467675975 965712398 919842561 415160285 692379881 871038181 267058905 118309297 223401884 961066288 590565576 225917155 422320748 891502068 195622305 150949163 614994568 815525598 893247397 164394091 6210935 208923138 986089062 169454016 747205833 983509303 856232697 509836948 740907407 232692572 606741868 322633293 556354938 381120616 399390972 370685668 156275147 272963590 629412682 746382051 107933946 363455435 441673013 427754170 713383205 666469477 112104721 926723273 990677553 524229844 555558368 896563620 19083462 707636005 599848065 335816423 835462973 911705870 737040278 79155089 369238548 501878971 437619902 323592519 637707443 174141848 691768789 614085882 847222008 333272346 581530882 927075261 848025982 756836129 99263260 695413062 603411729 643510331 626063815 652673421 59916081 403521176 427834050 85086176 32089823 983559017 186010908 905253341 686772072 948397329 258103914 936469069 682272658 439564828 172593209 326431934 330704222 101032055 736559190 180924936 505299504 951325846 353866885 959641628 566057195 781656601 867176212 59409881 981872883 939033926 66382249 31432402 342496030 155951708 988888244 320185263 391814904 251277462 934275847 531462075 680203524 783708569 763400691 519510869 622939173 30723335 570504153 126964768 719940141 859679504 176803247 596698788 653216478 148128598 289451510 842160481 761902354 826594574 274149477 541632042 167946564 69901103 371014623 253236880 934452755 70605375 113870833 725292912 72940132 106754447 585427673 824957354 495294594 798164908 509570077 73768600 979020628 863262259 489914532 875415535 505603354 148450810 877326458 440501870 598256151 780459153 814466769 280061331 366924635 667365865 123698361 210220936 308413506 294316444 796939600 241747832 730595217 760728219 362456614 494863506 131549859 990208723 277440217 474209068 656624457 587372587 280220358 280791683 160967778 414328356 64225626 237760414 375968858 536034202 296542153 595968413 51575602 480476137 836688475 36708769 695284871 839237632 497829406 797771241 324833294 493562480 258811194 631785496 614253441 133087578 690135031 696628135 949189501 168356389 877039756 395064628 192093323 507242212 729353057 298204692 185409971 517517861 107059053 116272376 444539647 833825683 337673752 959362673 459404518 776169911 532794236 575944827 153024470 439181030 452803045 876664447 970111835 641527963 34346297 161920085 744704845 817674399 134442791 371926374 103747027 952907357 202790296 870648886 632021620 708224023 965983302 19443622 250916557 882101426 166852095 168807302 262867498 915091666 130759544 344534058 170707866 254962737 516863776 364348559 97569822 15652417 483632497 764216998 949032961 954521228 666292836 285223164 252669236 590212040 565444728 601742320 929950886 186094477 217433001 460544280 543557608 457466723 286056617 789978136 913135274 732609787 401220694 358530486 236954178 840323427 130972951 503201306 88799839 278959459 441365582 277461013 105975849 290094793 632623692 211049001 758153037 863757532 286258880 84087729 172015146 39332478 372552077 597203317 961333773 562568278 200976197 541624314 563771071 722373780 490885568 432061998 416810173 804758339 862519470 409254028 225319088 892348107 292821011 69510086 17737625 84355820 651018898 195202908 780076928 513054377 227190723 137996775 384605529 861159112 932162500 959147494 625082175 610996073 262956897 771995067 471202696 893526065 572547929 147735542 154863854 390359924 137734527 695586555 580652920 333799318 979394696 63437983 870995334 694924672 891613297 295778730 996539671 4937082 784041433 625193462 554846466 112122777 572755328 905006004 805569786 938466858 519899856 39623136 668079978 343233474 68967731 210507221 653933111 333213653 52489125 430552763 162035319 240916092 620352840 631262637 739533862 760588418 220522445 9451733 452345531 696256096 152650770 863122162 507937919 304902871 659839455 687556170 642307351 247806310 543803949 644188120 980669732 420119933 707162635 542113262 225996575 301591418 687909396 839671347 193768197 632464967 230898963 108447182 522705523 409374567 555677241 104117692 938231725 672470923 865365607 224890208 568176513 674202038 253366745 454205193 67344858 803090883 958675840 124216459 585068225 515156047 904447063 23920805 133977914 282484591 917705633 185486956 574589412 375013733 59814809 71451077 307422448 462964722 636846161 705994753 484279575 707348351 344297295 498181199 578018129 494232002 817597674 303532843 66500579 321835666 121804311 144732294 401190439 799116180 808885450 614122352 996879423 347555177 366853280 871794363 683268630 259356822 656728779 698234823 658284229 601024447 264149903 7212616 810997253 335243561 838590255 819311327 461433399 259871481 371628877 341240410 76197704 704222794 965555588 259805718 242442462 213465201 121319840 650628370 935772530 53711469 309040453 969414271 285260411 85179243 555550482 609656186 805200664 906139896 72548789 240022916 616959081 350106900 259184158 191630088 236794959 907011808 100897351 754038166 624025221 415388330 533627163 942604927 351918913 298567195 911440140 674752545 930556623 295426816 332126636 253784264 37020306 664581875 666678102 420981997 104658074 603509127 555743947 128257837 786606794 402314613 440552980 271424019 517809798 706367392 260401108 962319697 326244201 776583638 129292021 538720793 892426879 434503943 392981161 702895820 529964362 394924758 670913589 281938986 526125969 721764780 925251156 199388991 995550775 959213218 887542790 659398643 140083183 722557860 576588770 105839869 163274568 934290185 560646854 85891013 909983873 398432088 384608028 890917384 991553706 217982594 916861886 492720716 555548203 277299921 46964548 786288486 81725277 877652321 80053878 471617866 729127831 256112519 268018237 178775849 449020678 562235209 9649545 130817357 940028685 780812630 962826624 357098076 757440468 193426760 903296983 226974038 938828880 707812362 627432105 788000052 870314978 206480963 576452639 475685493 773441551 132252206 652818820 8468208 986706747 160665698 454790825 383441154 454795970 281696191 914590485 778007096 907974198 584217601 441989602 534286900 100894601 735078445 936523494 784077224 524325538 675827160 218462831 787232672 342043681 543819705 753379673 778351793 297137728 116805947 630215995 967631913 374669259 958195071 360937874 933882034 703434544 496326171 425307419 281378153 423621533 621104189 523868035 671647515 150775202 80565510 369094136 884636926 526628416 886500873 541117618 761007643 902129722 823267483 584395991 221694606 114148454 494793069 458788425 119856203 212904155 875111421 173909346 956146036 884012332 613341717 495512318 917846282 17329825 54063425 274911383 639489263 198181465 769596247 656831199 878246963 613550074 614546506 990596210 707706222 421658789 754233623 605925494 665950433 972651623 351371686 41711115 36361422 445221661 259586139 423703544 954823261 139197791 260335952 357239565 587496763 613007097 806456844 546727893 627269637 426836144 213426313 521588483 473066070 362385547 577465670 853778081 505682422 619732275 725820167 365872182 373967228 156107959 940493499 859901035 304235902 171538056 776958236 970996702 852069033 401872840 158383654 359485223 524481459 321329434 358399154 272152298 311722648 544722366 470082345 587810633 335045925 525019620 758515608 82391741 865108021 831113364 67132376 748339699 588446052 488734033 312250740 939071745 437150567 463095886 378626804 246138892 399190645 582354931 756127995 644532647 374721685 744832753 50321431 989043059 499494842 411038611 393336747 742465475 289724395 549644522 392217425 9581866 316046635 795468769 145521316 576048859 314911062 19927550 955548570 615753293 288490966 21272514 682117308 828499537 861448043 668827894 579712412 582671237 537560446 975069979 244699097 903484245 510995364 747805215 885040444 147803655 903516581 283663130 940890610 570373313 443279918 379345146 249426550 27743799 720441062 411583453 27992133 678694182 498985098 47792932 543233156 719440018 784252967 284771362 784086154 479321695 387207974 181687426 239839870 182848753 976747396 674473279 304103086 417986321 363582077 114137584 468660303 468036816 936976798 457248128 695344054 513068417 403863039 946474882 617662293 730694498 243205214 90950463 140630031 317985108 749003073 329580148 493609364 550213310 975784170 290928588 575817703 574138885 602940315 849655125 350960633 179752794 355086362 785177684 860208537 271800254 642958593 404943081 521479675 887725339 308314196 619064329 367604995 765089139 642937912 711289040 849472835 358750148 474769151 630583861 832522163 249729079 287898238 315816243 513724155 240585979 799901221 628882704 212920338 288475387 860792920 994668846 923483350 916235949 586947183 30407540 16939601 247684527 210930163 269718263 221496036 97547270 353529146 917053809 19600351 104947414 262241696 620151487 329692480 777441034 501474015 811756042 266560114 102277881 5435918 283678905 765822579 852182769 315959409 975151746 666847270 624692652 753765757 484561184 840876067 645998492 717479299 943197895 355504650 764058285 594590083 840328640 592017716 283586653 615545803 859785821 313185591 450109560 461146915 442690355 932941759 469662456 22956749 548495160 357959294 397849404 197483937 481922359 940866616 321303348 400675792 274578041 421544883 665900298 613351555 332556746 190028780 754096869 140855406 803003165 253972659 476330331 84952790 136912036 377878307 87821828 331791322 413182916 187133965 831916137 48504100 631938670 563453151 117270465 831193453 460584907 464457639 678548322 271753345 129950662 801982455 18420941 819427232 510155599 767409069 795796113 349424649 592742203 29516261 888142153 833438683 499314107 301943921 280151055 735644438 138151111 414566059 962751324 556117933 41720113 336358250 60561517 804291275 803438112 991115865 973224038 869541883 469698170 396666706 114411596 880870713 96916413 416612960 380311581 225045846 89191998 274667672 4880167 979768110 692857028 766643819 379788572 732429989 140847048 455762067 965564079 991098009 265406272 617602128 337344419 562651831 199901024 839371974 350058811 379105083 652053002 373966471 696882047 850430452 276516158 410221527 906109003 767805940 471371773 392311653 305392183 966865265 242719777 581071879 889240392 588885418 604384404 575846451 16183418 333374840 462387757 524307397 59561047 559923515 291972904 642245665 474759179 647127626 226051186 891604766 987115383 472289412 813012849 912344388 930294396 922673086 750076974 867325547 584312721 486823535 730850555 346326035 607904649 570008741 630836951 98409276 518546748 599002332 959929254 942779305 798168666 340110296 169266838 545356647 445099239 600150035 602181259 771147293 31442684 290803035 976463847 525411034 510641927 303733416 349717890 520783458 820145440 748900299 240580813 323986571 643631352 374373846 197956944 690128200 903519341 131810123 647073190 687370491 482370562 873118483 685916036 642366610 813037748 885456021 190967069 664258994 12243657 655342326 260112881 902942674 235656268 577628420 579744586 419965653 335739273 705652837 426257720 251877721 181616491 393241361 285481343 795149031 739614286 266446597 677861665 234430942 741230035 447194684 836757630 261143398 717650898 149978036 525420800 591177942 383054218 699527989 927933063 845567640 620178984 393039054 247102649 429101444 378463628 893095550 118538388 548183594 779757827 964048972 805752749 393658849 776730110 813410658 337386814 185262873 251223297 244892606 835052047 681881865 683288801 759800769 449613768 172932971 575723844 564833727 767083221 824658445 79972741 295690770 478463671 80762221 351868737 42885030 408611627 145122462 752317672 370028786 534142834 926155147 193127402 871570168 521553653 776227103 325883578 314184876 3056796 823193756 504434288 813745148 152555112 956562999 78870014 307283676 120991305 402176220 522525638 914361316 595688261 348484180 566484653 343122294 99591590 978905317 1992760 162891809 986994434 404394576 774742673 78558963 263496525 382015697 296860706 275667432 622206573 360356875 648878884 246890726 140508887 20515813 252585240 619280475 516639070 647171469 857880001 940399812 732969455 138452754 715561658 566597119 290522745 29247987 834906630 459917563 873294498 914927748 87435593 472874530 275526918 23264982 422573471 560727221 457588324 820919634 668165617 956713172 63123653 979251257 601908617 362260901 460815724 952481694 770375909 690521565 768700855 69970290 856388834 916176557 907292463 13937885 909748847 589479154 90505248 791448489 666575449 309715021 540278552 381696051 939546791 164462864 220203591 607189787 617457729 895697565 104581477 736764750 684417738 336016668 924269773 819640862 341282362 149625889 759815121 290431768 805157432 592035806 888680470 324761487 726660785 5719782 715332706 237981227 815155121 599183115 403763866 226593399 895766559 831856134 803877760 774397370 3422147 331028645 493402352 789595393 842699876 769824986 756327996 158931778 87796439 317342520 635573896 319474079 877719138 738560780 403771085 878160915 210532548 364464431 864469194 335928699 183567240 351647579 435252758 55030225 234752086 95810616 534133328 604654843 958801031 156298008 686083567 402915310 692801726 89394548 687960064 63510262 65633150 924798177 516159998 643891050 226094263 429739202 807396523 983959984 920245743 171849077 347915557 486834053 753956735 340855218 154735831 178010347 987840719 279115352 508126132 671201732 392768997 597399827 322689601 311425381 171346832 858348218 908468399 548255301 784024233 989543614 975055234 707494981 845103165 171650961 796124236 749851264 952625834 802519096 763716960 32461828 362664786 862918705 879987338 139855110 204177753 90840562 500118127 968317072 222412814 216188150 961565738 741625694 839636701 189073269 199433636 411163350 901296830 303792698 446265523 582132998 300314087 721971502 165104077 473007358 186120458 703782290 488413756 374563789 159489362 315630049 50911266 751532846 855223384 462461896 98273996 831796610 241207658 40046707 18421081 899898977 132722876 618404382 117051982 620575639 811122977 42499314 823883331 634892497 348098120 648812558 469346047 377333843 684846834 223054986 253391566 649705397 487500877 973956669 926788099 737863415 785353316 267601767 352970856 439047578 870276833 333346957 513611767 449019182 407141076 217662329 99147273 391611910 375713070 977344404 207261789 651193825 940792850 718726904 277618072 525527710 808772298 92615545 582160347 430761544 449434721 806648501 411845812 464126669 591401066 410199805 781453351 951696538 731272688 465396909 425676087 208473532 637751117 441282316 575954792 140675213 895684076 278159572 215917115 317306722 181320084 192573258 590877301 56593760 533858487 708763044 368750262 166857425 282470845 304766224 345445777 900412745 15428669 797175562 842342858 185225256 68401794 605981544 608589408 812674577 180492350 250838046 985085590 3021235 244833607 773931936 910594412 440841612 457670176 672171823 962513086 828450048 374637507 945800272 291504118 298067285 790723545 341368217 971102703 38577907 322942453 280085857 839963097 913811488 448258110 158664524 934463754 325279313 222877019 37219684 214386572 73081017 324517652 642328641 405543558 342368691 674736293 961253721 399228723 223528982 171098124 381673330 948643042 42438273 970493175 687675412 205024154 868160844 320013404 146351330 879599405 424755198 856364645 546669581 694596130 941343904 82871085 339473124 233159430 434898435 357476961 506694633 301129127 219149939 284769967 459272630 954082429 682186377 390210827 847191536 526454868 459748590 935228469 380643649 57732649 534953347 283566383 400376615 797721192 318207260 566293215 188367355 618011923 365578184 996125112 731204101 82321801 604562572 734738428 422805411 610827585 194023490 316732858 22985400 422990767 363363298 443225844 344581087 287640816 307945785 451613788 483521808 996717296 491887368 666741254 394189878 464122255 100602169 403925780 817019604 564367949 722474061 441152645 476119399 255986044 378128972 93302582 638227074 665660364 666246810 497358556 235774799 28405748 552347581 394061049 478168657 8857292 546366131 945085958 744684285 96022095 550943234 722869679 272510255 207462129 638174120 515457040 308507252 305039322 945552795 926833037 123791431 198542566 844541399 393130065 465975290 772302694 947845050 225546481 906047015 279357027 93379241 310954885 491369788 43613878 994482055 17476353 481084144 26913357 588319075 932366020 595123457 728450472 468286856 652190308 608741513 441511842 354388066 163361636 474928476 225157844 59990882 544742579 52301058 747040546 246059930 604325549 670478005 190395407 590548456 853645109 910333621 606046238 293961318 586711618 516958144 84420585 669805766 950607649 877377487 631451726 696501366 949426919 874744598 384782319 707133296 98899379 977330908 796882699 476309159 694472304 961317205 496186901 105847637 747108113 766057561 407962472 578470024 251081961 840940833 844973174 630669162 715464280 523754751 901994892 730070377 940842183 24610975 729943188 613802644 28710229 685982816 662396334 24464572 198711272 203152596 478107272 257451301 258992229 922484064 425328574 417887591 934986221 109139261 897036037 284783094 80431979 440792650 869925099 128770540 439478616 66933192 981303098 518595884 660205746 707757394 535346664 651405793 196288064 416239507 915978736 235475188 511967445 863144274 762319740 448446923 174854562 160783198 666908592 73803997 56762713 579603900 465096711 79558275 680812565 745341189 138254318 852331291 59448487 498503652 637392854 876423969 234751824 933096497 337701459 503651272 557777887 755255192 227092859 167543206 895243636 976288399 276705303 953465720 126108117 16114966 109397486 196072569 641274926 811358063 852937580 415751992 525958190 682475820 243476907 727013093 994679011 31466587 914236366 625934546 675052303 549781819 40405893 293142536 632747575 83306928 139825510 207250302 788481669 755577232 310379460 578835254 942445220 912746613 227358550 935989432 186237798 623577578 835429128 690304358 445202562 929051129 788461498 899494867 250882995 790115251 958524538 947055437 197047470 388716774 571875059 422031677 438601732 501454462 89783326 419572722 618185472 230491217 287409955 243650473 134689729 779009837 904733662 83669650 288260187 726827595 490416342 530574085 583998210 38566759 352880860 317957315 351525586 205888085 897551240 2010645 472116826 519847333 705952749 238358408 263450441 905473583 470045641 798201214 479711636 263822739 109073417 271796841 714769456 54742110 129925518 842793724 165207171 75982092 627982983 942838178 575528908 633855491 991473071 722991890 624970237 185778598 373098029 39323914 344231664 570397473 844428201 575324428 365370638 763901514 354304326 116184210 37144660 151895346 229121204 274330018 423365543 513738630 557158762 250980722 555189887 687186170 861973467 715516402 316502192 644306743 508278552 477992106 540952755 822711736 71387341 149413484 120687490 320977167 238206294 953584475 614393885 179862355 410187169 426865815 334773320 798757961 551007187 890031210 952417979 367206244 295259025 393166822 23094311 512983953 894468193 512760462 738466443 740051514 475853730 419516985 736812422 831369089 122877054 543669048 508040837 931755282 71254319 316801419 151571364 691330442 125243820 427812017 24315819 895619064 408161896 135289912 480779629 397994400 212483926 692746419 225177803 865870153 741771693 905849665 793689769 606479604 252048967 335511979 967135592 878033813 293659305 248571771 489774922 433505849 251488989 230063317 501784258 394947482 773381025 820697646 104347847 432835846 473639773 23390006 599199441 369585763 833689734 36962444 669904142 711039026 624549886 287659661 698111820 451188350 54268942 775742954 534195324 494897183 460096920 51368222 986353574 883956077 108887957 710703704 755261394 418196369 944710125 669494373 9809876 969683448 55338477 409395200 606952270 929639923 653404547 203603394 146795753 896702477 72589968 586855157 437512500 116556355 125322341 943366632 866310998 229224002 399329018 216179695 873251391 446977571 277714932 129063474 587157111 571674502 324622806 858286007 181343581 575776929 299287306 119754402 785322147 338756609 617410038 140009844 80644742 564108007 303249385 869532116 310283317 924439142 8326883 559005096 2408905 735121064 177015306 264387789 750691439 577970568 232754986 232429579 793774120 633411422 836078198 582874012 691538781 846106229 320038277 502385313 165877936 447086224 690144978 77394515 349675157 209794156 438692676 901828731 864113876 948559733 246845779 267313891 899434990 316972318 90551033 262163050 814450281 630812126 387728798 815778533 714536928 147364427 121547213 308973031 846248258 456780971 805578981 926233479 314004311 161776857 334047253 90878405 598659667 253778737 877557923 564754483 811001589 742469373 127550070 838182611 916664007 590025366 171543840 194759611 134883116 687214883 758009726 956292534 50135090 11079757 465531310 989928700 199832788 576196504 673387196 60773357 615674469 291137244 354692908 739021492 817601874 547660674 845543425 222912428 166575087 738474413 987905210 303053810 537086391 283845219 540168144 225702121 753025788 257172460 16391719 407749702 538094840 391687691 940024541 765744433 133748458 370080576 692236225 201054041 672088675 957526885 936133972 272673446 271249036 648313243 79833038 491189705 459832407 397878590 720841519 521293403 246047607 114509074 124326446 594067051 992302505 121500291 405087135 188930024 782248312 44672296 214729777 176991088 488749637 291369930 608660907 843575750 257874029 252385586 957274055 54787925 630734425 474577401 188358009 132309426 683130792 252483172 158621301 839949954 15119382 593872375 241882786 426688689 579654714 228082187 422608602 797838184 929497595 971461636 257610262 859757583 697254933 110708691 769119838 330032090 629616583 483660079 74115989 306430703 766887625 234234247 753537324 952071886 640370562 638433836 626422130 850666720 477611125 545464143 464497891 415690302 756014809 145308306 692056167 803275482 489157915 549200646 754906229 597448509 81631384 95198456 680224624 25052818 951769743 768030822 958501777 235654665 548176571 198370524 236527750 682349408 475349247 310710096 822518694 66967716 926871209 17191778 654924859 378142696 438136117 462749169 831709252 265582921 873657108 470857133 47578558 958138067 432008316 775701381 299949536 142346093 5846939 903229934 931504339 145295965 618772823 905844457 910974499 640516551 432818143 989212689 973234105 407229047 806093136 701929707 275979527 778424549 951464350 593373687 106311223 202246074 431818664 531842839 439119866 430346065 347531127 37104385 419449447 625360759 158861343 703920336 529331470 812505302 183279897 618959248 164023966 360913571 170434180 170272548 194654725 969721310 647763355 732139871 22771910 740124247 174645142 560234141 658146256 982550896 43844489 164637754 518851467 174330455 490062357 54215694 441003235 258249957 99242501 571251202 235170330 614223617 767350769 242148147 727187986 382822919 497932856 125215879 29161205 681524315 481316337 323476747 348066827 206432266 155654660 730169182 231122941 680779482 14458656 791563714 243273464 443501261 253002455 957271463 841124277 377622523 967286031 570612239 563293640 946875035 170430386 448457677 490629251 497006412 493368338 397527921 387639126 154789427 542567830 52327099 242994185 430595232 789311126 478345362 204788614 542924343 556613007 204980793 644286558 432157273 529172099 525217423 775331389 372159192 678440499 202148891 413797064 852951168 816101420 784041641 957525811 87452773 950148571 5411 626094246 398011137 629726971 485174530 153084007 863753010 391683714 981601995 731574448 679830147 86056779 273263624 943271719 797490406 553461880 39207592 381581788 510888157 982185943 912349911 679821118 749640719 526224828 326353710 379263271 539810462 710952047 639034567 658515675 534076278 560862414 824597088 212482558 773712135 452293728 830775733 25322025 907656523 541738713 194907162 16937325 946330808 827797726 287951056 558323511 106166596 772874766 122521521 516604195 398790504 246043758 831920850 24176571 593293705 776704316 609069117 649303509 390434324 212720240 89538937 365105350 294676139 329134401 499762427 264756862 198353610 591580423 444076612 3351035 373779388 573946408 155243102 488337979 900050011 782739813 302580193 76942259 313020125 18801673 936898289 331896535 324833111 404566405 250231596 297922768 409821121 936427330 971309075 941442515 920266391 789972573 334754874 821425975 506655717 500586134 401440668 716401248 935082941 371957959 863597458 422721979 983836455 46637035 365026394 563471571 961496410 951557632 873573663 644548951 633791966 229658066 314794606 700709636 97969061 707062927 191661129 945264247 289780351 123657429 249022007 262045631 246927295 674430269 780250032 253971834 190652709 886103634 338990472 868930613 201966064 356218578 693891892 308017111 442582372 844908125 153868772 228288480 850538701 47181828 339982900 119315286 189597524 209982434 604485180 617923048 25718151 838377678 343026150 618179212 649354612 287178429 887864296 542090654 41948713 884541661 181199134 162989199 801504502 409266734 214652154 948063622 935008934 962117278 771581497 990956756 48527613 422044565 406505490 198064549 488704609 189302491 288577105 985044976 56768902 723615210 863920414 631426660 740983964 13755188 188805285 215381985 665245629 605449598 96621198 376266807 919296477 911798953 135225884 162871350 886430113 854080142 22632382 823093238 902605062 166987802 236906328 715600261 30622102 190648551 320289312 946932276 973613243 5964146 326766036 318478886 940728982 976217325 892846240 320184027 883979306 140195510 813478155 930496144 629832533 267020383 733362669 461100278 475775800 838317874 449396180 263382591 944489391 622394661 134826187 869168224 261202002 946991739 548585690 585242789 694386381 907858054 674792189 103466069 440470465 903429301 548804521 330365213 96036070 427099812 747658323 256953802 606573888 46896125 730739426 44725225 336345002 372010163 800514842 705407857 118437000 469571338 647320775 923864446 3873182 523863939 361064593 116618310 396420187 541220223 448863656 200480615 172328793 519460011 625006925 778593894 615919917 75645529 447544775 439405437 727861695 484238414 721200124 548171682 812420377 364497087 176325859 649564477 58631224 960984930 157059281 249444090 446604867 169535943 894076187 412061208 373947806 812892831 864355948 806674843 411576883 139675990 775644415 102679512 247553279 32970396 696774364 580774263 301630330 158920251 490421449 864972610 360857786 966767506 170546201 952169688 952927979 527796829 135861843 660697495 957382504 705292643 633072418 888384266 61067145 928085053 60529580 144349684 600270675 211500399 920512553 957133164 136309578 45727207 179648730 102043123 65158973 49858712 203832648 787010174 328785117 198495117 1086128 953345710 289947820 304247207 371863305 310091932 924526986 864383548 117823885 249454495 701473821 608776968 469237768 238702966 494447214 610315108 918574903 359352015 240418356 288342691 102855623 15971004 220600844 843917157 632407648 899556309 478985261 956304017 268102254 89211589 950758643 377464912 195181818 104986655 138664169 991368193 516184691 753435470 339840344 726916081 137860031 872106563 894349827 962470304 603415522 481678923 819735737 563499645 714437254 903708910 414678403 271303283 330037405 892884432 325492172 747319569 252760858 285433768 178531035 714175803 52367894 949507735 776427974 41740215 835196032 930787289 693657300 105081555 714738548 938642096 517540250 601620173 867583374 650306764 863673262 383540794 437760166 33674616 792275977 391184607 347692368 957816745 479827291 374740520 789327241 51420313 571373902 986178264 469285210 310864225 270430448 571552685 30263335 576645758 842596193 715404749 71025862 889496763 933242400 782680475 374708811 250304228 602055035 883885993 453046675 260526150 856935977 716450736 237537241 614852048 973474125 985207891 819611228 948251308 604316946 744583039 105358324 366912403 592563492 75273505 392802625 582699210 665389241 979747066 221550041 73948230 578290491 405375386 30980115 808850345 507722365 262129744 8515740 991977662 179416402 32996076 873319636 475374268 282252352 113995615 897958964 193301141 747662978 147878256 641609865 278320150 263725982 304702684 958543740 230535382 609532141 448466980 791416467 942399682 316652043 307873134 225718204 205704415 522503634 518302842 462953041 211384838 504201502 420275596 21464984 942159674 800331398 52545976 345440356 915677521 698811623 542407740 436560891 328940226 337346758 714029558 800053733 825494095 791351876 922091514 104712151 309417282 401437156 166893345 552871598 369857411 433704009 988133949 32374048 96006865 419351489 482864805 137501267 442520824 140096747 10367507 404660570 789619422 813859265 337110833 192620584 755379365 545934533 406965724 457460458 924418831 240288946 967936688 285088811 736187454 451379927 663027202 405909138 397490335 530128259 73927691 648774509 18425482 866330607 26455511 405213397 996372836 967807888 193085673 124498909 475438551 851065608 783633017 834110230 894054954 973886676 360360943 50398717 424154227 214172832 234752578 659052790 184099812 642794957 916569088 715085055 778611956 207151025 491491019 463888540 275081905 177683772 142231676 166337624 845840152 288180371 980087438 345754183 162600282 513913910 32164902 160535059 814426864 334304353 353469024 956196971 529873081 146597608 753077067 790169659 972708687 190514244 314094043 555368869 622169715 124811010 123540533 249837346 741228202 774931253 226005352 617156126 539460341 704367583 558603600 285455269 855073375 181701440 102833903 339861476 174396315 830059436 12912246 261601719 348805899 818360468 216543151 823939706 148489608 71224102 276543111 813063471 160420042 864246440 41282369 962633989 899260276 942053937 479624681 565614100 777062998 617622221 111589961 395273259 851912856 296894518 248282768 925662062 938320750 704827533 256970146 707009761 758716549 721104044 163298620 88501577 898369340 395595991 207924539 314080641 377351171 873557778 260244227 601286213 884096174 876269600 586596239 36017019 106746460 160069195 767176713 805708673 773076578 538361207 757108840 852976248 734283590 70477975 420464855 306914162 898808895 368719185 333290593 659277357 27265950 483607800 417644221 209394183 959731719 971234119 298064681 863441003 787085935 663701338 201661055 124017856 314031333 560089945 399164589 466688195 788468826 110280197 908282435 664196786 573256247 987739149 244112036 472354061 522921636 439368258 93216499 462254427 152475125 417798620 869750933 976704076 368673779 734723030 372105923 103543436 869567034 311310755 801539985 960471300 991900403 929655549 473649337 129805847 775870606 196099671 827351001 575184049 858608928 102503546 975804801 814273006 139427808 426946531 716828555 391882742 132166751 318950072 556403214 376365739 652596394 397737926 477399919 889150843 579620997 246717839 448377487 859182114 505712176 324088449 518210076 239256416 252011964 334112633 39222050 112986924 258540567 653917319 528388860 31081699 79472142 567793194 268491352 221736525 665932091 661686976 887312211 582025678 758031981 901884739 891954485 593895521 345302003 396210829 793801995 964785535 170155285 52893782 15135564 519196645 756341722 379312868 128874645 387538239 606306538 572979702 723467743 955923022 629045336 939795772 781422851 795235386 289970149 131092496 277216289 968248250 941244752 380315821 661704596 835129920 681973751 5214918 515220501 539968796 357257855 446120712 672111173 816101624 446078788 597262245 461009019 517957961 611948753 26792414 111396701 32733143 158273809 822789635 750615024 712306603 78560537 745975233 198716073 714498482 476123630 510961265 102398748 393749141 503179838 555948051 851007002 335621159 619567278 522534330 96535674 849390495 232404434 874200135 957487324 705887574 203528165 701973677 461753750 254878019 347613719 205645979 343146913 552246845 982516375 168140718 889420521 447283960 773534204 930173699 129957992 721588306 860670630 917969647 580637969 305451466 658399997 395254128 972336236 110083938 809265413 13111945 145816698 736729234 530694562 690259094 817273904 214288143 504036124 790319016 630590143 547927892 445030886 269160491 355410667 672870389 239552375 512575281 316024243 760547320 208792768 701751450 853590322 363090297 138911001 742392236 271730242 908301008 474389496 261967979 864315978 224326633 864667451 593326663 349333011 765004533 83693433 483702213 102924344 431836486 977824533 596427796 260716662 799044002 67191084 30985355 651815563 730592460 645730674 62628179 408863445 740275690 54348610 733173515 922003690 496634875 55399284 63639257 677902250 406893675 31585420 281829412 616928282 508428794 44896325 369120630 402811011 418876372 545865314 475322989 884020764 264980860 122910316 567440928 579464661 323395992 38392333 963740230 297288712 939896103 920163335 868957676 372599495 588748903 392089900 157974036 399041868 953040856 927344564 483868513 259026592 835543007 335121732 527193151 694441853 620564376 399434845 686000320 763659901 204020174 315991728 766756362 572330671 450960714 190562761 627131426 288527843 966640035 973210541 579087490 159632470 580746823 527462969 136069142 404989113 61128646 638603864 51789300 637354567 969516545 885914337 114414572 109357844 895571728 216420650 397066011 376502427 756165993 162814083 986104489 452591610 222083511 736851311 157643562 291903915 697831715 683310840 37646562 428729559 955119806 109107062 649571835 175835087 971792482 827651326 679942604 571843085 371109977 69429843 398094459 222355848 401963865 427578602 707487297 226073544 153289700 37896964 210921204 349202752 893289943 400133900 384580802 234767936 899825437 384282518 282729547 740530545 305323202 89754929 931435260 305866607 341285002 122567809 921148051 731499593 450152118 868507440 56094630 598861500 928249839 470177639 16703373 309938459 835174707 82738129 545488638 13346786 908782944 749585861 605792156 647860760 402179859 697214897 954341745 170607739 193740981 156003028 777662776 896534626 542220548 897258968 84945434 898956740 919856586 766504023 410265823 317149584 678049219 573161372 954454751 937209200 728485693 411248504 916391406 488251155 515039437 330276258 67585922 100891122 351202367 360691182 751470556 575095519 678988183 598323960 254146180 208763546 231050729 811512450 750502974 214345695 494373557 907543729 354582203 127586890 984002388 136128738 620091531 521074167 292250680 487116775 632503477 132362706 819007748 958630762 353323742 30050704 880228117 536098624 340544290 21322902 410894415 518009218 238391979 737682931 738716341 602828269 261383377 585676037 72038940 892202967 13367034 512670613 859896007 368505912 15433020 181695414 659467502 554195076 484255821 332125416 133195029 95735274 477872298 50045258 41713249 794419451 352913821 846508586 443994204 159092201 442203812 409946553 727355301 821097491 645568607 480262272 257931964 562984421 390591709 397664444 722448136 376656602 543446528 294927017 138436662 162116225 260500567 672072171 874488693 547827572 544468564 610063979 353484093 546640799 228279543 596008650 515673717 286790377 16882612 679463683 843099804 632876271 133230697 318642270 865532731 986636927 337466419 146830366 562589882 351500831 355297725 356372805 675244381 369295561 933097542 900281754 856197202 894986173 746783638 247914590 571021346 954651952 483113548 112970780 301465155 8166728 469027882 472368673 470220769 892839310 239376804 933050416 133848261 473611969 688856059 159836204 957960052 200102736 171951588 891619242 2909999 442634939 96582117 240854752 590072183 595186840 736077861 154820550 300239047 386801429 399000255 901905339 374445704 805783039 176518895 727132208 422310333 516424849 923037274 207451924 583259898 330780221 797570985 364199677 890251952 534388796 648672964 891294385 408988773 894018815 547727038 808348066 569119537 516743364 656325895 591366623 535697184 554073747 58135967 761919294 609196862 604747383 905958046 287234276 360856212 872727066 736674751 706780621 982668520 770404243 245436088 890574742 991329208 834884898 903432655 660140248 659002485 865878077 304896032 47205015 574420666 570231467 242501047 476054717 450083884 101777427 178640243 631199279 273822734 59825453 623658074 890416549 518515985 193428004 486744021 721737278 984033070 873121639 57519482 973524789 357368129 364653500 660866237 637315762 418551242 672272461 57929953 712263230 816210036 722614411 653232811 131293954 775490045 133139139 318038409 649537949 958159310 132456444 2637095 124310060 661200117 307729803 808604810 719605091 821859141 668140438 819645653 671725301 335581983 732234728 680782490 864429665 892070213 770722128 510841874 175917824 36401969 152639344 687353020 955139701 799512757 210059271 531475024 459732728 913544490 476590120 89021889 336830118 82511456 912154234 382698887 404327771 461595180 98628721 748271406 696844946 977010042 165005782 947792568 893327402 577367236 202230123 881120771 257889386 670149663 451161155 211676537 39548429 403365913 968904317 838474102 944103752 493655270 223750191 285965230 168714109 903329050 390757831 518831744 966221355 1927801 381810665 191939574 516114513 479385364 298825910 445980483 205150030 621846538 206552909 136380569 6485985 50934658 539737759 711035704 948644363 306918273 149106040 234704024 964502898 406026589 998198089 845342537 454852606 508790515 815728633 900433172 372496166 859919292 959013837 439848862 540321584 787647296 781742863 343231401 149611648 173653720 621478932 761896157 311239872 850989383 467271024 217288928 492362644 317530166 774629635 877537949 501664720 8033409 511860119 310147804 164275358 482479611 505691326 380221378 570054163 398361877 913530724 217825017 351414095 930154893 132141554 890348033 964991591 980829531 156334585 968603230 368403916 380253845 924276683 734362203 602775956 168456784 532021723 168691780 568568896 253624411 741780795 366286153 30640764 165206930 250829076 55621420 866897362 947168598 86388132 11297909 155619479 114055525 543209697 49407334 422438235 810223844 692235810 298010947 784220125 443775002 861493636 656638663 353830525 188804713 170926536 421539682 836268243 109686868 185847921 298700811 798143922 401417790 993976073 535001281 820109191 514809969 992221068 125296974 908207810 86211475 355415097 813054176 127025481 688158613 89746876 793910504 709840745 151348046 446437427 361275699 725098352 792800709 203812273 821925169 698943147 483564401 387751974 866463424 624122547 867184101 19058939 946007688 736274898 110449415 395352781 19516680 801737422 690675894 411591321 674944539 938451371 520689639 614177070 145863117 333715290 793295338 100704793 271719055 36353727 576363914 650243570 901432558 957448946 457141525 870615946 921308163 812506685 38668634 841256506 624643086 687739448 474450888 712429860 582794308 72342521 695976855 929594483 618200716 914763003 687675553 574635770 809830821 698828019 629974869 645020424 255701055 880655589 136539726 83194114 728814211 598662896 725841232 369313984 267128667 913334095 452816257 206171948 234500612 731836587 220823002 49785830 459775746 44391906 457537705 910129233 885771109 10754229 942265255 596260821 856195155 252764330 280644153 989909649 244878846 304258652 760715843 419438189 88324209 662980532 107904725 211421338 204167180 845635305 595917665 761158316 838759406 411742400 292892952 584001787 211651294 664365997 783554909 60620311 112400964 247774728 206137526 877353546 960071265 638165850 242294692 283461556 317238322 291479345 706252596 553213988 192329491 11251433 169590426 812858974 558873202 484409622 770977425 743796341 714615808 169230610 504903718 131912700 227350256 721858376 129928937 155086404 706796650 545457635 158965482 824020506 73711145 542065585 84000513 497274395 436516420 541837259 857099813 378623587 457543544 605812341 16233682 230963170 592420034 150251959 184468842 92024016 962300572 910666247 475437985 542846600 600347364 578232071 578255474 652941975 129561627 705416627 411178152 904974018 407431675 790857360 295895392 223759869 475958240 460649986 926696261 683066278 845614663 939288068 550188711 185634367 570725047 554195338 927046178 796864686 228465716 717189033 58961163 852680832 125788778 648282162 801760521 105870269 281453204 396647692 794086361 246329987 376045697 447729789 929045656 690248913 88119291 621986895 320440934 692286778 777614098 21551340 950542369 190265146 706764145 118812570 468614977 771470614 230180939 909563094 574727970 282047410 299894817 706989371 70647799 776561169 290306336 723101107 258815935 306651142 664668052 74022706 374232861 640372506 412003536 567127132 904090311 515581259 411199147 748995074 885190302 285250278 379623246 450178425 482810667 825958767 324350287 762287873 322426474 208449600 25797211 900027316 27478 350058410 11560555 18176529 647646611 951509845 142327100 206199593 267891399 483144182 650789129 541877019 929521153 636965227 663059701 820338309 17304347 707294640 295908195 990490835 985653379 321067494 372587766 99414308 118205531 7531729 926346582 369896237 533718205 244614994 532730225 812735163 180972553 373559797 275504403 334683559 691138609 614743700 313428841 261740272 646328215 743669440 768229237 740121448 556586199 864572734 772668616 153036450 112714269 297731101 644641147 175160803 33492008 268017715 60460095 62717491 380535337 957638049 359602007 753767956 268606626 686246065 926700488 892877739 273607680 181044054 478035322 833693415 395886632 643160660 736335624 398564790 683703867 417624442 290217219 109799484 246707726 916580934 49271070 205712112 130095167 58557137 225822344 462195645 848627231 190795133 312428095 648121507 429847642 182359104 777005872 72043587 985007224 453786189 316573424 479332847 395831603 769029826 601449731 129996481 981676343 879706502 456565260 415949535 484507146 911146289 592327681 382486051 676024586 741710710 243775564 604204079 713068211 782677682 153994742 874612935 395760673 270532978 530245377 89467331 654436451 610449597 778125750 838723889 208990967 665772427 16241277 523916803 308941136 246296500 306618471 932334502 120897460 674983946 8929166 137361749 127313698 87612562 197359475 330897453 355787079 700644446 811831886 101713951 109299723 229024196 741100660 739168496 404840772 914838234 30935596 913269450 860699713 358831304 882855961 451538802 886989471 398060471 456010445 81544934 436678617 688845509 250432674 370464272 114467096 655555988 980024061 251642857 182803021 720642820 188244167 605184717 182462076 455655334 58560981 632146027 15151838 665402598 199522987 995680491 748977239 895568849 660856512 173443306 285613726 197139298 951376210 507666780 440157247 224661611 471137513 589876753 71793205 618999077 142876833 400241262 908870894 150449786 209671207 317979628 549861042 742415803 940270075 429388781 441165631 878987939 533263543 207987182 31700556 345071627 78420922 528145452 295142797 392101053 729729781 60583464 851425600 916811807 467371766 431978552 773843155 657903173 861443404 746574218 871586196 882846268 92752707 232147453 479473243 505105994 980617835 757029534 508785152 684336590 257434981 865121190 352961298 555757892 221479471 398559666 27504537 220897344 267182751 746934370 99533504 854908325 859628482 34773203 664627566 601619496 737013881 609447409 972886425 734833186 827156384 985385875 431265251 401630208 841796304 195518930 70401203 730306954 285496673 227151501 368835796 426416785 963582307 604085459 343823991 603944617 412352174 752112744 666841870 484653643 503293630 979262140 484339954 553073563 302911728 803692130 238710068 226817380 288231180 319256461 653310041 107335341 100848258 695234786 977980398 45160357 819451406 962914144 778433664 673664469 273317419 322644081 275488057 133029727 620609992 395286287 618482884 215604854 622295733 814251746 846847769 228183319 525975660 658993710 8598080 246469339 87376090 662876805 458288294 274442007 47281324 134059691 958495372 534261032 808455549 740232354 171437546 119042150 441092634 971834684 238739616 212615698 474342316 74375400 84600354 952814798 448956064 313248404 641492559 265750147 832731962 289544697 361078817 135289142 313909920 322496050 422051803 740972045 78561139 198556302 428381760 105027231 702444495 690800485 811398948 928613813 654887105 821430717 799381009 92600334 650190557 876510429 227978498 861373633 858778387 335603720 897747314 484038522 255472879 632603161 7478679 610087286 677389249 698217198 189434894 522857310 136288657 902309239 833384922 600053538 335887392 340561412 478881929 627698705 873298055 123524620 792899882 402543443 808743331 526225085 523469199 580301219 461427253 966856747 757279450 374607360 492797410 163782062 25100452 903312623 628606514 41742916 477805268 588673911 63628456 767593417 648125946 327455971 17206631 135062788 30062994 822802987 229150400 484918475 73817830 759478373 681253830 594758458 883043032 86791765 539858071 183639907 790241076 753558427 901190252 6420134 610975381 464453564 661652212 724112962 125380966 270575662 190637861 363197196 85372611 251851672 733554843 104943417 38917487 319888639 79981742 868377981 343994744 841084496 296454588 883554906 538181567 43952072 525996818 113985709 589221037 839654504 873701762 666738345 806591623 931179915 665365668 596012670 4676295 264605541 158580569 312189673 844482003 949497262 213171819 890445080 825416471 179812737 575043523 583305596 370783295 863973842 60743688 850431251 236783000 971907858 549608974 722475704 921373365 300508975 318935261 626053775 436658482 987639399 861854465 62820249 186565294 427712909 375761329 32111711 747877551 484416787 833425771 456770467 195031314 792577858 139825010 699859480 145400609 154144060 465438693 628756816 82759821 16375623 962831552 467915204 405243334 473222532 720734491 272448547 435644482 924707597 141222463 268841209 587661080 621513209 166827273 231898786 422124516 869510319 692388646 278028672 933440134 59855935 798570409 406239541 162914598 385304262 967218800 868059645 502182472 742462241 277645747 796362450 47046940 141993449 829297572 386717329 937190244 983505062 839359222 482247619 37199334 98676358 672716214 645133119 387530976 129919829 604312701 561301373 99672786 230500304 548406697 401264451 685606218 646925052 430419254 567263493 767070916 665979006 462915742 309461932 693791115 412424509 107649557 410887210 871119258 599813360 449916532 669376678 871325327 746142894 465421883 406144412 48051510 229475776 84801063 8812523 433082552 795166598 922764064 707335254 1486464 204019385 771915077 645341233 534899435 863747183 214593765 514922772 68683321 468758257 6029574 310122413 708110851 922824088 352712165 915478299 565971543 990364933 143725435 462956356 799983323 644973250 162277972 592148690 274472198 376400574 877286238 900568688 831740765 157584785 862383475 753870507 686715504 476883222 671128119 652076410 2070442 304498248 837268303 203460695 103475015 93980170 788000262 902727841 353264380 597757462 956301506 803504234 147180204 849772505 13120967 200994252 969701496 918290513 326095275 53578790 698277220 685657422 944787592 773535642 484776652 138824553 813834574 51418975 462268103 984033256 42354775 325875964 306595777 101638264 714319060 132162936 714610863 164389515 403370514 114685308 168637332 203996960 517453948 913426496 139796604 186258028 771815045 141618686 473529573 102772582 820496855 122961651 951198007 495345746 722371868 216692571 415499009 931367790 416397043 653126108 857525177 300631654 750852871 261075497 80664130 789204992 89445315 655078704 332844569 525951137 665328745 989946109 117005285 813177835 987778233 158441076 756440403 48208686 772962750 779490648 655287565 607625775 802033237 971007598 447111193 635215570 201898660 347558774 545238909 946543330 222056957 980541413 974177572 526175395 765606294 600330058 210780126 969530729 376580485 123626272 357805934 617275716 886394097 726795111 917054518 203942580 76909107 534776693 110511622 255487053 774739459 698978651 197968944 891874799 884601485 980418424 450620678 832534418 421974843 995072596 924660359 484044871 681683120 92113058 800758543 878307594 867233428 522081661 997506243 764394317 99600751 215527639 439496877 615960099 194813709 243716175 657647301 926449766 50644160 387182784 900763871 294842626 906349134 68864862 208084535 120395566 491687064 525413945 599792842 492627132 757484423 459118466 658541439 882857487 603923609 67501119 59349710 740747575 374950252 735449341 583944452 231362370 390876697 871528887 964399898 424548280 158622368 428222524 355985836 53958366 806834707 708841894 420635837 94330728 915738283 948038689 239558945 22194481 443430027 823256209 757161681 584852148 688217955 190854707 364861556 242516012 705425436 976721392 818165969 545583583 500017969 236853928 133458864 559206182 997520976 557234684 7258266 913220715 190714094 186907082 865822581 253817544 866636818 781577576 857133624 84053879 409492382 762196790 368434868 238904220 458797243 903317354 886355891 402174077 934208195 923053903 552130196 245057855 266522419 17848347 246230103 890818644 796364946 355092344 40336844 793089485 356052268 78296529 31857754 780569957 464511715 554879656 634452409 184746039 824472971 5358384 815023099 118602625 59956265 958256939 99861283 557825183 443573500 531624224 945508062 985641036 460456447 612655200 565618410 602010944 212148649 673453112 533309302 370876549 385342910 219008674 372875213 527289395 497697391 421942331 697334968 248292812 479861216 318290143 547257732 300269235 351062022 998190836 850464222 735552874 556713023 778551908 616405563 38044093 940098279 247103874 823691644 967678093 332149286 878439916 762635763 831632823 293009833 927313420 219139765 336719376 836205130 680921472 676900436 632915169 947847832 467137613 446969516 951573239 438518061 388720781 574061521 883818065 332346382 968162733 842718644 449854536 798538716 204427323 681295029 348491111 301886861 137212419 303836836 586849786 948569216 608648909 65090752 972531741 300496230 670926625 986961112 234281742 546376962 805110284 232802040 466575531 149211318 193950899 316672887 706736713 747984133 268188407 982928035 192429018 525090504 871392684 130325694 521725814 770759261 45332901 554508372 716280243 370361262 965106359 898829057 81140579 832167374 784047057 160048794 596189263 820639950 265645070 568492868 968171944 610421655 694520196 191216253 243178921 480530832 778302963 152384770 41132805 297119089 515036573 787468269 183448268 778476135 964323021 453340475 956349258 861881789 701994256 278542662 472382904 517810351 736643441 361396172 398467776 372792646 324868531 112360729 953208455 603220526 793597900 165101054 643922525 475107778 742827351 25868990 215315543 186256508 434163378 521561988 751946469 847302763 77494571 330647138 682924490 106103866 663064289 289771686 617658851 359510177 870603530 95841842 338789381 249750513 777402393 929462135 870157456 181330435 893510330 36786167 651768560 876729578 63206822 484344284 464957152 132996742 809727848 922145547 848153364 911598036 315704273 366476651 96690561 108525294 414579723 754241523 773559541 847815597 461237625 248541855 288581616 577553567 317604388 328517826 495618227 597378423 437130146 717301265 973413519 127906233 315555022 89576394 294643934 863756968 903302646 98728482 755071266 242559763 695536443 200192657 952225327 725163673 495031336 5208231 199101878 48442553 461657427 818234197 134505053 296304562 42238349 618349415 395299637 739766457 367699095 69326140 267661251 88268088 176673895 61512236 529655322 250711029 829653609 909506367 60881099 166102327 619241335 507474369 322635758 33861928 982883948 850532005 608668764 53627938 475139566 75964107 10484078 517583382 677980252 213394825 497336135 926567904 347840204 131483630 28979246 403687461 429859608 517605511 386433167 299469400 42686411 103919773 387047025 566157492 86386501 995150635 152534296 5097365 624981385 838372367 299094916 523005336 94158147 841794793 246588848 521795899 511407091 252329034 579022299 662258436 910388013 915130858 496580275 522426108 269386955 314612037 295017524 651136462 760852101 503386852 185263178 62029825 554978008 916695224 954063711 692397934 946203138 375021013 278891553 429111901 582836664 653652389 822955473 502262173 727823740 61862688 525532061 209633721 842530762 589852027 910598925 518938614 732152134 704829059 26350757 886842444 663562072 523113802 971914109 774835887 212586884 367654203 174674651 267567291 706846722 995584164 174828008 58867378 297213446 827422088 829834234 305984094 752019917 682446749 98678270 459449317 412023534 115399160 412756415 733338543 184826093 271357799 822444565 122105912 563531881 297752981 912052352 691018886 571693063 644505913 598091855 350262053 949185114 961024768 943130337 375539856 303321209 76379782 590773425 507392109 204166971 719859614 814738700 806571088 623461255 946998155 481021210 668217416 969303970 390305621 649465870 860417778 817977906 879577329 386352787 699040842 1725463 651649186 786850790 383985440 280461543 353440547 398468365 466748604 705493747 854888944 770548852 588996712 111265988 396176780 246834545 798208794 255124413 24687917 668147025 831123444 184791738 209635080 481635620 133127876 414200030 409813179 175409047 50800704 65968384 645033593 519713595 10467994 182043383 922517484 753384632 658644227 320764044 569154922 582601825 477295719 762921943 138181780 429658850 108203799 454773457 826074914 709907249 449748933 705771723 879191707 280585749 460507770 684295773 667122647 846626581 387160549 636374506 180778471 104438640 813317720 608239552 621111859 719774654 883840749 234062568 506396818 271248185 788704609 131124281 993634629 604523863 314543021 17773383 794128606 551527863 634223480 455228180 975610817 250898462 348607940 586871041 679248300 798290936 727716325 312184077 670182602 410734681 220467900 255773940 820440856 957537729 916239129 164168182 781298695 786554010 534092295 97466540 836407352 926232679 425000730 802502889 100473712 368147796 788370987 241973827 835881084 141510367 535459684 427075467 372641076 516967723 367450635 981938688 205491365 833294140 587034985 940476829 121132765 540190875 21314217 85546301 254948891 153339424 884873745 627546489 413019010 719993976 859893753 417414179 360446505 790132984 702929009 675846411 570809917 772393548 392275598 9333497 141157847 864818893 702898708 650370229 274727548 968280644 600138376 517041351 960796798 719625372 430258471 683400553 527386899 599575137 317551080 635466601 805282758 85969925 965951238 212248873 703914759 535142452 565902696 243600442 217833460 821989281 717497941 405337812 200157753 476958798 142719395 869575073 195238639 700792474 145397868 535709955 789607733 104302197 622275603 354020455 199781227 745016634 839768160 781575539 316889808 656246750 348507736 268225799 702363331 982674056 398510414 546589830 572183833 392638399 278404606 213697929 390524857 98708161 200620653 422053025 88477911 405146177 802370671 51318849 572778305 474581144 161409264 411926297 300460111 405074147 229966566 67452082 252453291 287940938 829819533 522766989 711844601 682408336 842728347 943936685 472280272 495058099 233149414 318681855 564671577 913848218 936215487 847531571 677246203 452515102 445704384 817329010 377171698 282845621 64259960 465791619 61588727 925350593 540694451 651431218 376204548 332362021 111431221 787932032 533754772 566090822 318002548 942702484 162505735 760012332 180495370 569902648 864863160 908251790 781091632 39068839 574322483 242585030 914424718 587733018 232869312 633102817 244957132 590816719 567528024 453903216 664104888 575545166 182768412 442758834 81079583 882711927 844496693 972435432 510907952 395239277 655043462 801418805 571102935 824187742 498192193 495426721 842026011 898604122 361375151 414716812 187502862 375806945 385052033 619857350 573061629 981195662 468079715 255916142 701102052 146924069 207217018 63022437 153737262 535434115 997326880 145212488 246687344 933592416 674733152 772821520 973513231 365865423 756428236 855050635 924257756 728837697 593012329 59454345 393143551 283667379 449116697 178997064 755307311 746527970 511992138 850399477 619202398 660132802 96680826 807539965 498403323 690539191 206043509 493478765 135731633 520060384 800598207 824647051 265474334 92444440 785910140 363185036 978059828 90333267 203536794 283502472 172860742 502284605 184783063 51176018 279009260 940406228 449357707 145473399 838774843 407499232 721845734 389246606 257792095 501847874 714063342 819461266 717276527 285913439 121778170 662171167 970862510 121085485 528245367 653442303 728565777 199878546 735021465 139680603 203988761 506075680 166010583 188240154 665726117 330847088 130346372 523049422 716271873 410215552 21641953 218949304 208729764 844899493 662877583 461086941 497441802 181569593 465755852 327000820 458757923 689056948 58879648 177375301 247008627 70664871 666224107 29250958 6054282 614016523 993510844 405992560 781288815 149078472 204032218 144325486 869210374 856823406 947604488 894228031 135896319 610758376 672389467 995832897 523816639 47150900 170678108 319652179 818638343 105901940 768809101 584266369 939400878 718960077 79668884 704801653 719540544 245052512 563795839 653010594 632519973 927182127 220618583 795609113 74995100 461517380 302689444 938200987 634494052 924421821 956566864 272689784 555890427 456695223 342828687 405269048 405438623 954216614 111047436 705937716 108721275 5291236 691909478 961880176 620645749 313094110 82304436 630386417 974347871 317554722 873699492 993362602 468916068 851989343 506867577 482913409 418869507 465440743 995225621 417591496 65480775 851623212 300477947 319336335 819232712 266156198 766668569 722487848 223077128 86796994 441416941 338481243 304634154 583124000 995428005 785811816 160068311 444343044 883382478 439510228 184783648 460608149 336637441 412076803 513538474 845382648 316619760 77793246 186607091 817112099 576687728 498441659 557163170 825887968 635762005 307995727 981521150 901289639 513379371 568337910 949046524 994270393 130877238 851674936 31076547 873233826 395669127 320166910 144869354 153282367 813847033 200097293 463770978 957575470 242305812 898623303 627835612 212876779 692921789 973328646 406108116 854582609 872623179 812759379 985205206 974602065 637953464 695879356 114454986 294633809 734145795 457226439 279189142 247196997 174400975 717908982 65969864 328551167 863299225 100891854 54158071 574703794 514168723 336779709 16287070 163297617 947274802 726687997 137396669 476700972 811030273 942489849 864249440 295858053 619832611 586335918 508965528 95232936 671305720 683344946 491018106 922996370 604705006 501220729 414764749 591657305 340214453 770247723 818936586 51707062 698734075 873369913 980419216 646932537 499454624 749548308 135669427 711269564 829445132 633371018 523163545 306297291 74402970 478417280 524667825 171091979 122211403 187930793 793055798 294143801 64464881 693911220 423568244 701452742 992832812 894380046 772922027 156522381 857411238 221274826 594926336 112889102 521117909 551703824 603789133 870622008 601512024 855337069 338933456 39586165 57588008 17451581 881611124 60840491 99772116 880313678 678131473 780831099 849725099 681018787 763693289 279996187 768324055 38139803 830870943 721357386 329687591 496640490 206756122 27154079 635796941 719656198 37416838 780918557 406893673 384205615 141510078 233824507 178806794 420578001 812594306 296858511 774150000 157676285 365366211 869459017 64349496 912649016 495547667 288415609 673375094 427737666 51520187 831915285 535474063 373368792 820213859 783866469 519974210 566688251 233253158 543795056 809839440 748760012 654577638 567389765 620373987 503917631 92353147 492424745 456019416 624002245 954405522 706318604 201229540 890937102 61504468 587256867 303784197 773643131 36887196 968667349 141925854 397707462 52516388 926017410 508543596 129235616 160302080 342656375 773576744 560792243 27241456 168399843 288401635 659816201 533321227 521832469 616262414 35829764 859453015 166633464 566148923 536483146 286149663 661770137 316605169 854400746 732970494 995635044 727271602 8017317 841279129 94083814 475998938 378031235 924986148 948377174 491301447 695726945 295016261 764294469 741752771 427421681 495760707 358267434 465276241 110538616 28671379 537414760 209605061 837630872 34312140 797707046 607533820 413833618 23754181 565538597 430497793 792318800 380404953 196959953 171070305 435303115 70881513 810798893 533751254 112817580 730559474 426168106 625189312 861524413 732250625 991133324 540426766 784514770 909836584 730312158 98051793 689440988 574402827 840753241 180015039 37020877 546021790 541681294 552936722 509927502 452185417 202435856 890474463 883407849 791254861 896853305 542541714 477827211 924344609 94818409 649683698 689111513 709376036 927351913 782350693 986886348 798370770 82641215 606468310 455529600 338229482 604513606 104903675 271331340 726231649 966444314 404427095 873964878 508990738 506176444 97879890 665771036 647781361 832437841 325047899 208893994 14943484 906748927 256572225 694724671 733978145 260524097 223195937 112178903 992630549 166349601 974343373 854751675 997066361 396023127 941300371 55937759 820563130 584032760 506077669 15288547 441234521 712541494 993667157 729599842 495956011 690922893 478095488 43639824 267422405 463904100 38831381 852895276 884738068 583069068 493580842 115685677 755921048 891702357 394944289 141660643 821155358 813706286 582511426 980021548 553490268 974172538 615988231 299171518 967361984 448874256 862901418 292925107 244984362 509225463 629884496 984490882 763372717 536794493 452513036 379478150 528462271 578649041 139699466 29095990 238744712 383437476 705252829 703729380 949395693 253049391 196053917 468905868 838592356 915080205 98405365 32756534 554320262 381019580 298836533 766311045 623874591 40903644 194351791 332865445 396333196 543778429 724261030 351318651 731165855 182060951 461877047 297022405 690146715 148553631 118819502 698892859 682054029 167002474 774960981 395055002 702484307 831465479 995631111 957867772 560141256 446259937 54887682 593753654 379154524 239356853 801022149 134924395 525883379 887395269 303213516 279499733 431395482 664681481 572607396 480186616 823275294 273399225 210592113 832138827 14797865 962610971 686384464 356017395 648769932 992198587 833418307 169542739 246413064 691641672 176199197 270971769 947358337 654834939 919119869 687926756 508530882 59981107 103771881 865148617 326786771 768553444 407152291 771804497 328676068 126549386 49296450 373716717 906312866 738408440 956412182 888925732 223148955 546587200 603123456 643934479 883992580 201021617 308326175 315926384 923834378 867767448 125233797 668778746 850479411 310418678 911845899 292038975 553639224 204360879 547561721 702558494 307135261 768431023 847391285 913337057 836234877 389482658 652672646 700404078 156948041 493677846 735504335 179963522 508948136 506735895 910023072 927471284 180283455 708178450 668953954 502184716 348046200 320713889 792286746 898946625 529459827 651556696 195981048 672003186 592370092 557768787 509604908 693110504 549155726 639617194 64410212 698852549 81584088 489836354 156227248 77276254 669435984 266301640 388152017 182113525 649411560 245969584 596529311 831669669 441989296 512308783 673732874 536792186 329167890 216304143 96723247 896201454 343329865 522454709 853479743 472516016 507809095 911461918 359045483 454263886 864689281 582921870 645065224 513550158 63870393 435405817 689603069 984801017 571729994 175526211 66485387 286780614 736329578 966136218 724298044 731621342 33180242 266708939 862868123 224174206 626275795 203073493 789740949 285688861 365173690 435784513 911916915 891511458 237187826 176161206 609936441 611325391 986716870 272816791 62201449 828639514 502829912 991620335 71236246 556061223 826897230 920228235 84968962 752213277 255316567 739912465 263965077 677449758 551433290 501904112 927424536 304714189 936358060 993354653 953158626 501534926 975392319 170256419 838378416 473759886 756122875 317158572 3648220 103965651 717879535 460348989 690876378 53166439 650752356 345255095 395993888 719181229 946034339 152885414 170923790 575708158 546520055 710447368 532839476 231612751 321036610 114326897 33271916 383021769 136526988 124997072 475253342 333054910 898425721 314590221 727963505 679412691 738511206 480180482 3612333 415457342 841607146 935007124 71055356 159243502 612989392 783228843 607317624 363883206 367265888 871710801 804391422 300414966 738330001 408621855 37517922 994277362 56909900 397532890 829851123 546135675 378532089 145307371 36891873 250473801 180536016 77896700 787128447 81412801 672387450 250180534 761943890 303851116 867673441 759863758 948241045 665310549 278841867 233855914 784119471 941559140 690529529 446356587 638883458 935602272 926727112 20449676 221174509 71202293 338559329 302541616 238158562 764164542 295823831 23778922 808088336 58613364 186044630 215013722 721901409 279930564 671394215 27477092 21088457 518475036 113466776 305083056 527450892 194378264 416899273 917916738 230198674 376920246 150575318 377462255 433443445 406125725 809611095 462921625 701590960 223458315 631881367 939346518 390395983 172697966 60970860 224626894 163132453 455184490 204883885 463197396 460293691 462519099 327402178 511502825 628403659 434690058 859440130 549925675 512709893 310198753 285932123 156678636 980421304 549995483 697147500 419338422 324149014 423252840 25691620 350492183 406569150 321989426 592372772 399914369 772336081 637678073 960288304 70937937 419278990 645312603 206621120 968762777 243944018 750495443 712846888 489706334 350841388 849792394 976007328 201728341 25766030 658584194 301397042 946612347 358523627 817987993 881705452 667501621 633622245 919855241 208991173 508441260 761853389 799700230 713354085 834293558 255742618 57983976 243484854 128280028 420741469 198944012 267187833 309059623 417807860 785416786 104010455 988026319 384120686 894056906 824300418 76102030 516319840 489825776 515678664 827876319 576424774 312193659 883784753 468075693 995124052 57743614 222443718 698104697 964270123 370186171 241080468 307404670 101438881 336313150 25227296 895354474 438812471 161740994 575911362 518239954 509185202 18727918 423604582 243091019 426267363 185281395 96997721 501750266 35670304 343164894 669481934 403803800 952946554 726202170 909412076 395019426 623911600 182365912 632062807 838415352 161539647 201495442 691588646 966074421 606818816 986749648 117100643 920862855 268939206 445373089 988879790 386585853 515317726 380261679 189413305 332874685 72520608 66932381 925312947 837640250 164279287 688363271 424778979 390545617 565869137 688469293 23951492 24203015 496504306 812346700 775401195 607823985 752604354 567368883 482202290 717263856 144961966 616299953 135115301 584193342 900090824 443219004 627933414 250877747 569531014 806143458 557983140 456946817 811378268 343611744 353392016 409791956 271547603 995574578 786975496 468776286 752219514 78623718 607964609 19875777 380938046 283529536 681512422 667434834 474462431 115056770 19272049 848975332 545911870 655854530 347762759 444139213 976470213 877513676 468004009 479709979 601456004 514482703 415618391 549769110 359860075 842670479 237743284 137496112 443565794 112790733 601518861 737584093 497226711 736479466 798450169 629975045 942677112 638084505 122794710 659121207 320201394 542613571 262031633 529841650 685968934 316923995 521206026 370649404 939215395 947644969 989907767 482737317 899538730 793226893 448695462 212107260 577618615 474303888 812128821 32963851 911649418 18410736 667685846 253245298 413544076 631181765 676394048 965796159 36955189 368205021 88417761 739630160 945671556 147380137 670019000 522723151 455653958 292196250 948646250 461835705 666803474 368474837 350044053 378082104 296551282 853377588 632343986 452792541 151433224 772642185 160159583 606753780 625081285 780615574 395405879 380421320 363229039 445583310 105087491 384415264 124620286 523627213 194473558 287243707 60313397 821526170 74574461 142357488 146887271 226197936 990743029 813481475 185274319 500481127 250111994 344871021 277890316 476137052 830842783 428266993 253187831 232250960 704607367 603637849 845311605 656995729 788455749 718070083 956540733 588728053 929012980 127734635 946274640 245342349 495924762 170663251 896737197 797826765 882481144 253697865 321176989 680155131 231876268 73450229 51948050 559501017 700108154 830050081 617405825 91246915 702463677 122058089 437021509 562158802 990333891 723152912 350240042 266585682 889561322 537217626 185250686 90709603 173439464 782624584 11762986 192446537 292692548 678136045 803417447 860899181 212204160 917535413 406086234 161492488 310480907 572912340 662385129 129208367 518163708 425373004 280994427 271035027 849987213 15110218 4177090 709370073 361127322 823599714 146464870 180444893 561035152 32710616 114322287 903695318 408469020 840414373 728660896 507155902 13952266 329920379 338910798 611931414 669174908 491269336 562176539 692562885 267200700 290281566 858659754 349848388 948256839 314956340 361368849 521757135 292488852 321963931 841027420 264146507 731680592 952274084 183048683 708006094 773919477 929717472 548129488 38860786 639688454 925971207 603572606 404883931 614533480 771700880 392767539 78053934 32226124 763779825 655714379 541287894 315789580 522020633 621136748 82124694 754653836 258359032 741431215 945356922 885200200 364085905 107911 100829761 755002876 154149506 22811836 74865076 993694333 990076070 46333764 483244029 909489076 375079852 392630752 886747400 851468018 433999421 752995570 902279360 486771546 638913889 381428387 479079768 743559142 745055237 41484693 832514452 808470343 474889205 956428924 435340327 693219344 728428394 597312216 35936238 121071358 791433643 716097813 336158937 7706397 634350793 59224902 894410064 402974829 795088049 378778344 612457185 916552795 300831296 658596989 312087089 86459620 503911107 278147156 695164333 293729188 923335651 218188062 864232517 916536856 170449489 460964736 531681692 734046314 99830149 495954007 313586487 939959658 650900790 786187732 83938371 185959530 373451861 427966779 590715622 442079704 70758025 34537744 623085922 751578248 879979081 192141475 59077235 752205452 20897878 251492813 487713940 762849324 752556369 787635364 191816996 7372230 915660586 421064834 413177602 894113981 4758929 728854644 274646240 312056470 316040864 440752968 519807449 796050183 501505814 716923631 996113740 623688190 513361831 271157012 321012611 814977751 796821295 284532470 207739126 437169056 571286101 21715062 500682947 354393052 653241496 732350463 717754083 947638883 483732922 234968033 903189457 143637688 919973009 596307396 348537469 741055825 672376303 393123455 26891495 836088570 109813364 554709493 23308429 447295440 149907203 134000618 903513288 93904756 633146000 367119725 895523103 529349767 689317707 293374516 784128478 284838906 913368234 743498907 983761226 274246883 789623866 385135317 331542333 184183637 746314447 867735722 575283348 9186779 583381491 113985254 702464959 829416548 52495349 315331309 306597640 590470986 87708136 810680570 310963612 739503912 166689852 28967789 573349200 102146115 945491896 333831490 263573191 682233993 327892554 919862270 808737889 210071118 126452923 92299695 78712473 471043055 935805370 655937515 226124304 442674601 96647075 951528521 693922260 964978539 108092023 290116910 327217770 274617051 577282941 341713438 689995208 495236474 753140139 400738002 11147403 143493831 845459531 626679383 897343820 459271876 897306201 969231377 493810452 256108445 648662744 51623046 462192415 113004479 340661953 129916207 193941296 43279736 404276662 655299907 335692240 167060702 126747434 473170235 729616171 42736250 320335141 585982210 217626266 926794539 766790631 531724744 388222372 716106280 504820618 990029792 997627935 217669382 411137210 185828763 551141249 101764558 660143880 112631071 99069116 350571484 635910525 275501328 428322752 971722683 477920260 906969645 969810241 787915555 953098425 144531915 162495922 742224617 208836743 841150640 175463586 61873560 981694548 112894182 781257212 619436972 472425528 507693184 133633184 478216878 862825377 133094405 153799202 890108842 944140825 188917260 855388664 672601226 957604632 327944758 776133953 144911762 669911693 615080724 959070021 299807972 497057280 105603051 345792267 447761970 757355167 293896302 280722491 735161150 200892217 11872427 755273546 98430988 146050427 933909521 707779571 96925592 213237239 163982375 842897716 75391331 6100875 502913484 506966996 293422490 592709582 431859249 685230068 524313141 186625516 693901441 692008894 656185319 750389962 418650071 528789596 927774465 845251392 837249414 800305157 29299321 724348250 914171869 356813951 482956191 16539729 852648764 405771803 965213534 302325454 312201177 499375277 957057683 397184428 908084663 367388679 503575033 318956463 874369196 345424265 686530023 553396954 763403022 524279673 447165051 667529739 149425771 642298499 233211781 396842751 622825568 355826362 374375770 145196079 551312483 574068096 991655137 249892088 431895846 544293541 1958010 646866844 700228555 756105741 643787689 178124221 687298630 955728157 248260504 829096687 24223407 435970834 799577551 193332238 895759389 907235180 676724972 919763823 551848336 811338519 49617177 364109497 855028262 387884182 605466700 660692456 992398231 610437244 274565572 261020019 119085063 325719263 793524588 409018694 210378020 811557618 474910334 209387015 442492363 881690529 254189600 63985376 283316126 933794201 167515986 645740659 508196311 32243235 282991075 774336227 154881442 272705387 545945048 214572736 807125124 94505300 227504265 644776768 644173833 27280373 259020598 169656559 755982138 420199757 73575909 4683440 156038518 546955667 71419643 982356087 803272632 946448876 521337646 934647791 688446698 301682462 248539007 572009037 100727599 295131836 37612961 178388028 555812048 719682180 777645410 176417966 623842444 972597819 134699006 670398781 947235907 896844792 187927965 910063533 882885258 531152370 60371690 339259279 210349192 17202168 859652155 475262121 85830179 708363157 28737796 235568602 299679720 945040970 657622671 927932982 135113296 443170963 783487363 481054581 909211002 439447140 687679538 225688844 327238391 11056944 568459341 514786254 207425933 161481981 229006406 460596250 231328392 165285711 246765057 491265134 844325823 659169907 717267542 279299412 220082446 148951448 442132162 903310713 752362796 590309669 456435172 163197831 862852410 46938343 173035787 62406293 273765358 190622378 379650354 728956818 760288027 106182043 944905212 969071843 811042619 386119825 697535859 9100807 361613371 502449818 798591474 170209715 786104506 280409326 632211881 801361145 829638934 798875154 199271136 45759833 664955382 751686647 955485564 885193639 45435858 473807424 134746739 718715592 444589156 264763597 114970186 782872766 828696274 922759211 488576128 510316278 72590382 250592919 749804989 961196254 63346290 259573439 367302712 179324321 201810698 137699932 389744125 267958822 550697733 429385453 371683236 831066402 817550435 456803168 972251204 537515303 460749321 622800219 370807433 960254164 300591998 2657112 610006771 333112434 398088469 174346587 995390744 522315200 143953965 620066492 364327118 432841273 994409992 300782085 496539254 681903857 465182706 919421905 993350080 150204907 879193395 367867541 241648776 501470716 978470058 215304895 472508797 170640576 388009734 550164798 202063089 10902676 763069045 650845293 736080293 242355364 652537249 612415300 494015814 804634167 974936201 133204450 64338385 512200547 368327450 340890448 665730139 7490375 909695911 681114168 507203026 301889202 867081165 428421784 581063063 332892414 184569091 861400607 885871802 153884280 378693163 52892041 180535913 802480916 731383987 188136324 316007783 7512044 594048228 927238936 262017472 432080133 431607411 727448088 191839424 398200226 24964930 997388200 869735540 988112252 340505765 953030553 941913965 278598626 720904518 365407304 219119309 990132827 521257639 257078824 994544589 128672408 364604515 770242997 959572718 406184681 652340697 873078739 341514602 169356487 299973201 319573594 763877879 396626721 452905889 791980549 979607253 274463351 483540186 489524461 898522436 535162090 175940069 511353017 893748933 880724713 593670949 412519091 565556910 261594944 384572130 790316600 466779971 53595462 290310958 463532822 266462206 365691334 758247218 446549908 957508087 98664595 541905216 738126646 835798428 432103756 132811297 438733042 33046911 941705058 710776402 57255958 859243744 224138001 238197036 903369871 210930023 344794903 870436897 900589317 521615098 404683473 486280227 904621334 145712712 87902615 717637070 252611148 111053725 766209769 65935071 431142500 572271333 399574052 265463027 674823646 116307886 568543515 603100183 338963779 794438354 698523550 984013204 233124564 454056785 232073830 951332030 404210542 364649978 253573754 6132483 422504062 151154239 995017086 424280300 862825097 116685456 801501092 281333841 363096819 823318844 532759833 782390406 571050603 828037228 977534026 851206698 15403434 994116124 881070568 488544217 915306 5097785 292886131 991640839 207350167 885968026 651941283 727044774 380432263 302035361 169828919 831822172 323968989 477660925 341802890 166068021 734871762 206359886 697234225 286680293 666238539 709491590 591724942 660032891 189196492 196855995 647702691 84485585 528844130 128173682 154649347 633548071 598420190 586920048 237694342 735004683 481210041 141314970 958702634 950848991 114408270 168604731 389645964 530416378 137798125 705935406 47226824 503405112 60565298 817169071 498225818 202123070 743340968 895786588 494855024 494604378 502995144 215773440 504497339 177632925 647886754 984175365 664394179 533692361 317581365 342690716 739185609 203693489 170029455 708057306 928292370 312879387 584884287 566458437 249446986 507254279 375258646 864765065 577913783 520159023 170494412 942681109 594986591 818430513 302247879 605987711 910148801 891033102 663777415 260335220 68660680 760360143 207566902 924951473 272784645 143173764 375769597 445095680 106861133 499595633 519515192 825737251 305953544 884100592 772867976 100672547 121362699 849530997 141696410 284333889 135883877 242691949 844108159 973204959 757069978 9990485 557692755 288685080 197247018 303747706 637357802 499351335 153846200 937868902 472913650 217114738 501132922 515619766 882927359 521015398 957154477 948889087 189480490 631375457 730016830 234018404 254853317 152823347 172270445 11059969 428902182 237576746 457603544 20338132 795626199 405589896 429754201 223095219 650687618 733874196 711240891 358131796 310742346 258683959 137331643 786408831 692849162 415168228 959049362 128649809 197572713 163372501 668462552 57334186 995276687 239084555 831444550 926742376 466111797 375133455 736622034 506134512 508872507 790897649 339124946 878345926 763837089 794961337 175108986 3206850 656887436 823950704 255448049 928651533 98895908 972958498 339932493 15041223 439356984 971964971 287668992 644025139 586826329 426338541 238513319 292312681 346586242 353405737 969567120 347188680 223153454 505221865 126276403 26059878 650849789 939340766 419134656 19183659 382250547 184607476 40063922 325145473 809236973 221802622 206983870 237579758 384321642 997846598 629563894 670544289 94107148 440006857 98457660 983056484 558815790 870214770 291435424 733002152 409275733 102799682 378322367 767927022 479461203 876738720 62426406 102913854 234502466 960220035 665980125 303484949 630773650 438651284 481432405 944089379 758850125 41254948 885424564 9343954 781909034 547026198 887351527 235698255 880676311 963981559 87909442 442999576 757113319 611159391 283679563 908539130 373509210 825645194 549881989 853330810 231523101 77949234 184019995 464279881 203823709 37570215 486790541 849473202 322666633 901567094 767908234 479970511 154017142 83286296 732329929 327325850 622981791 880787863 364987087 777491685 168345715 454643904 419766684 109595523 58693201 291519831 246788048 425693473 307846798 734393690 100379036 544189151 470209963 388231995 250948979 316923947 868803397 523387692 942854647 352728461 950152054 340344715 670090158 662944947 189428399 802101784 949738043 39768122 829868030 746091347 288644196 339962762 84141299 457426402 872084984 358336290 858800274 557977176 678167137 107330148 302513464 650544839 728701141 322539896 39682537 535417851 955844104 230773502 114566012 652972182 434901052 198592059 222797693 11336621 612565013 952537731 493452226 632952454 167260059 94627546 366744776 370277849 13493752 412442148 678706482 561202818 200158902 642423598 365646587 555333837 690598131 86730297 322036873 967234245 538663984 544590926 951564792 239749237 996959409 367747636 259272777 184278063 542999637 381220864 262414011 10345280 482540288 727324443 791071849 294038021 818666481 49829740 585579806 319724882 109986433 65365382 935090826 74475435 639980505 851200597 102195721 323962750 185876472 416712085 632891830 881617035 144934604 85339229 180766307 669521152 467786270 406857281 14364129 727988684 132866401 296187385 80101645 127821759 577390366 477525819 546354339 426436777 940266359 690876833 780170735 856293702 19120169 50797736 503135927 91869596 835711647 698565798 108512238 361143504 996250429 290013823 633230698 412326743 953805093 954978737 549766778 233782967 789804671 372988956 599662959 391651118 673637746 592740362 230306307 540083840 705064908 792925627 863579884 975972101 910168127 551547703 658628253 627610822 490153440 9213191 821924089 500747563 812559504 909659501 424032639 757944878 523823695 839852980 518871583 419973806 527468180 434259478 392196901 420817894 260492268 393506306 978692542 362543169 180860023 884439305 34319082 553790795 382623859 535705651 119550094 851954634 112253304 28342804 29934457 494171044 831752954 944860420 684546319 732991008 51496679 766836105 133388721 50128148 790985688 894966747 94908279 715035915 359137732 756814036 68080949 550056260 878050305 638932011 395687946 803044134 566379382 139047563 610685744 155019928 419683549 967037359 749918507 223602578 213952191 355723079 829330814 303746996 834899009 420664629 466953913 888418211 771941611 892875228 938159912 608677407 452029758 187016079 250853758 977809153 438326920 844559780 282432193 503394600 737016679 805704010 662097785 37691840 437523170 630659453 823991784 372701131 838398553 129023679 570398075 246989659 994303662 351451233 179034161 845410973 302575704 961327365 271643351 515359348 533914586 459991636 286523249 551704442 638357201 854111255 804645275 24309206 457019407 843507104 213963648 252045473 736864465 814214516 872583399 44560009 65186618 435652230 983832966 477669618 535699882 571329947 50775184 797932213 594471832 960623244 17593935 215792986 241141472 677436925 82723952 645896662 188689782 334786833 357005945 557971456 917165843 8000768 81957727 885352636 952043700 561838129 364198113 80879001 260071226 741014686 420812 697733592 634756945 839469441 527023865 103849117 853411795 78025120 632941802 843820260 214228593 139818044 983852639 932511084 122055347 43288419 323327739 283056600 707541552 238894255 421752985 69102146 798013140 210304605 420945658 559151902 15373200 656316970 634532879 765063527 241926870 163400004 24242265 163919638 660500933 174526960 335900841 91978265 708745017 196680935 666084382 758865931 796290642 266094040 968479931 762679100 801901945 651631777 132346769 416710461 965939048 34978763 649603995 57905755 441601652 465321666 232696544 9685341 131866947 775220131 521195638 369891816 721909401 843403577 344574674 934915487 251087827 129437748 258184313 382596037 60545054 357002142 888637874 709224676 957537583 743003023 216561055 83117267 109528239 851039321 127106449 726812803 651480784 779205819 880844171 839850602 183697320 378718762 986393447 632195911 297618716 324603360 631626218 284153041 996536459 991487592 623464053 117791219 485970851 121415873 554611402 768467232 818960828 497253028 478537995 405848352 35333973 396768411 569849883 928418499 11829535 677435520 330085764 582780733 165242033 647877241 434162571 71832582 282326582 934008314 466295308 880440716 180365425 676385713 968926552 886753645 947569537 957359791 951779679 221198843 791974315 697746829 173419777 510727189 661973548 891918948 98715380 542362364 730020177 645149132 186603618 444218290 335377717 630302934 869585711 755905803 42804246 648188905 401159459 925617619 442917913 569818297 185123605 997463845 544514951 279546319 357698982 995886069 751634462 652226500 373968305 795080424 268391269 406918211 22360131 454570454 142357660 895257585 638830796 421453941 341194013 598343553 281475650 436600438 175336230 234073281 758324820 19083491 16448583 765766910 557560198 69478207 196073938 448832721 840602872 184380267 806324703 344221928 848393060 974384083 887843138 950027419 226096348 243037088 48961528 350352713 239534077 664963092 200833171 459642886 229618251 445411705 65849485 343326081 737101064 847015287 287807831 465092704 318212540 404288869 986781733 996710726 632901261 755367307 566442363 846400210 286929591 114415882 516141710 559707174 371273877 461602357 447646689 361796489 218323802 102553683 627998680 936456733 469935078 866263636 989077764 611396974 137658385 676499979 843317772 583588366 794821777 389971120 870100991 326948639 716014950 56878380 788203767 639045731 410006240 216190420 331579422 510880506 597676499 714073581 691245817 471309004 146063822 910575345 819628377 803619833 413411731 621161912 287940537 896676123 293199449 268073071 307749182 922660745 890163785 830737902 744026785 304193245 413593410 319740097 454498274 344893643 980855595 268894654 589107235 40552102 803005908 450613566 171941606 231437015 392164687 89245345 652561165 320570041 905249353 405276582 264011055 973298506 602837864 92265349 622293261 565419778 637708150 260600544 469877919 965955525 706110488 527090435 352151852 130623671 283705973 142564413 741290704 71984588 431893757 522142053 648469115 511584641 366284705 98784718 785777424 200900528 255224076 594647930 488728477 47757004 335791829 502867810 154928526 124993515 362877577 754205386 593774739 918716085 520336188 223681470 872782705 175368166 246064135 863960170 151251778 941144972 805126745 8820849 681423320 251832092 668344102 516065065 422579308 933878717 310668669 943509134 168373251 18860880 123775900 41115626 328003243 680213935 628841879 285488702 703710878 1033303 175171037 494987831 809839602 658235901 168246485 184140795 400870596 956480967 29341281 947514590 114576972 896346187 377500329 754802959 678452459 175787417 525903590 391549650 205690044 717369273 87265089 367433291 413056656 614932117 690277525 375421744 26866408 552544729 454418875 382027521 929173565 127391931 108985339 367064905 149645808 43802606 695226771 730167679 287563634 366864524 991633394 483638342 629861997 549308257 282332052 362422940 239452134 678735988 549093101 523690538 495790256 889555935 972699474 74826719 488818437 223736583 538054530 985734386 652073039 554546276 320938450 131400059 863568827 485108580 175139936 504920303 714103405 579670638 4272743 292171348 947557060 103590993 100829839 430533367 793355297 217304706 849179269 664266812 435686978 151085060 246949191 584111668 753829837 9364154 431192026 351276481 723648489 231964914 476730562 625166263 852189834 577675132 240164609 724759832 60606222 893711897 668560711 827304172 517020697 821355614 826461200 579637135 635661296 218443373 749502935 351343619 424162012 350854422 301252437 74081406 564015424 978946153 32218702 180682108 189724904 42575259 671644995 295383708 356699374 617825030 842641121 687263284 611125427 801346573 72572304 637973882 528457493 479624399 517534602 473329457 670819983 354322804 288249039 202419023 600124883 338653846 674613114 198094829 945344733 877976454 412911768 479182811 779065070 898966449 124347958 285610475 199860379 232091167 991459739 660824665 267780197 343396199 59157316 877001504 712626257 259263939 293712214 526793200 109409814 183808966 411851531 926763703 511492943 711876592 419763805 258024140 881174098 748395658 929642371 144226845 143489358 470135005 425903240 370183845 512805730 63677854 362283215 245259819 615078858 923480246 4928375 254751460 771418067 496948156 904230432 528689981 469115940 59045432 656720862 499884985 524918559 122913651 801007219 365663819 525372927 831560123 324628613 747455166 545917303 522400329 180731423 987069489 902898484 170194113 912326805 206421761 960227622 692752583 380408121 722296697 73354730 127778922 950117460 55563281 459763601 487244653 259686686 191130691 164830820 249907575 109390625 550893014 943803223 597471935 789783893 125556026 178674777 524614215 508443814 397747380 247218352 267980814 172497499 297947700 620494570 630995520 247182951 135492639 878565010 686376945 75383627 329258730 364523132 216052486 13427470 73174497 564685355 16012990 954301334 954712580 944925185 270088858 829297294 737122286 571287425 210629949 859589261 803136639 684372266 766766246 751634112 224381297 790717578 408503337 427385275 895931763 460492274 287210363 847393891 937975346 191123851 72816352 201243186 704382165 896357651 823788222 52928037 483398595 14447863 454230637 304463185 207929844 663451434 268391440 460116919 489866233 425419934 210737348 261793933 53945426 891242744 622785845 608852183 941096694 950504599 442980227 267932531 919866682 611820651 494682757 130827033 840558434 243217478 786967181 900029774 841707523 404959892 976392692 968360039 648280434 856568916 720449930 441190834 311126315 476092802 507786825 272010096 679341219 693087326 232816295 169005225 396899955 250870678 345699603 213942118 659354094 602833421 423215083 443568615 12151716 397210423 607982452 380468699 154087678 28017340 230689025 990978280 381153809 319314111 295378048 329739087 293792600 33003502 423668340 261384189 542752743 475917030 351780102 531847172 115611237 789432371 670950892 591402580 826239387 179507902 593531836 873514888 997477720 259783528 159929245 461096063 457401748 747992377 534597415 574022174 967735133 325796145 11943626 215315161 623591075 784032559 97932207 289188221 730683872 942487451 945861310 170837031 300268920 276387725 417910203 487860334 767233756 624049805 300909122 221117811 863639023 950765294 396816923 64401913 286193831 72767705 894649993 802313836 327922818 948532096 407571919 424542793 955486945 173770338 789028616 965268615 621435204 333376193 559030775 730081294 439830779 801138981 645596774 129540299 583217680 692218296 644359030 15413193 730661396 766342579 803223059 842899189 41647185 340289833 699878463 838338746 400456212 402690411 299379626 603194341 962149646 713691497 727049228 549025175 226832079 329622455 134123379 628791357 818799944 252824281 765505194 991527750 935320054 616004890 282309081 119265486 104419931 864961729 215340562 104604606 100795108 959884790 126496777 323254434 629920992 720197007 274080485 756537282 790011816 911549746 413473298 652564708 757868232 597214007 550718836 616314471 90258207 921371497 762601661 842835560 482207718 428469606 478003304 596315307 74210280 425171680 637718808 730317947 969973248 120085047 559678892 435388884 709915932 163240897 808895486 204130788 573604419 135598757 185658324 803308987 604853850 904041155 715922412 371398721 16509415 94879814 878051878 979110270 113135397 589140330 635587711 498884865 217086470 817898165 65021717 523454781 948296696 558788801 264358418 334766893 615827674 69227916 556210871 982709659 466529049 209710367 712769467 874714932 600130532 275684632 113753873 250864398 443456303 353869871 839878491 810008075 467423118 447147652 308313941 695994624 297830082 515608044 858067479 753777074 441155732 902112536 993952347 705030398 340168284 903604979 924154355 132744112 476191703 905696875 257894998 221350642 391707142 82143897 964294737 970587843 744180887 278223722 828674291 756137251 31803871 832027413 28081254 938038798 48331741 310556787 230851172 914493147 3467731 318365357 954719624 949220645 821383425 824472911 443152908 931139474 785836605 696881912 344697629 552906798 212368782 932110862 10450414 311657544 188489594 979979676 541477673 123241521 349388825 378421176 583867348 564823536 708019221 181346128 656810668 881315722 300986856 575998556 103914721 741040772 872973261 938532860 598748811 101554160 903908629 503820454 986415279 513293731 655099330 241056731 367185737 185494084 583230480 467385788 10093896 597227836 900248948 367071424 51492510 587652683 956158311 123801299 398373622 607307637 288320724 799150422 445312460 274123938 239904234 155109023 780108656 804848028 636311575 718762641 634859685 875494807 214132706 938958085 319498589 433904850 197630595 92482602 715492162 697735349 407300650 135372028 291608927 362612987 520556615 440444029 161038072 701083041 686405443 920047868 648320106 573100555 376268744 974950883 667609558 625376890 383237942 88255994 420920317 770387595 362470776 689844563 815510344 738054128 660352928 420082500 185507134 53558564 554839112 39601722 964566080 340671848 222222171 156235544 676602313 981251457 666555099 391115789 622178700 549612625 762277073 497639211 288436716 951003526 747519673 872326970 685321733 809314321 305777262 134415683 868721258 743932892 858713875 810165110 635089056 475687274 61294072 569647818 775571453 626133716 616805913 746489520 34379742 277962823 306052189 262140780 598081177 685686426 549209578 767024724 684573011 590839116 140271342 624107507 953942507 557816567 419466636 590789322 770409004 843181122 499775865 499208385 719428260 309842035 395919054 323404604 470694919 277225001 172851488 72777327 340527774 720856143 416664401 252697885 905563275 456970462 943940261 712844177 124665669 926959020 600076463 897152774 193615267 465494030 474935455 477930439 778549775 663008391 932546912 127706711 458037585 347255931 965610414 341455151 249438465 21886672 176742311 326576622 106708942 30698850 119355353 225248345 379667815 506816946 981372747 45130684 988000452 603363485 76898794 803263871 449609971 85238079 649262943 349279484 503684275 5742404 843558146 478176202 50508139 289074228 680399688 184026334 195398157 618683672 844450861 664541817 38818427 96798326 564356730 449099171 912437290 801516132 932348642 155158808 716669816 300463324 693867744 432770371 185411228 175176167 634682774 346065709 228336800 111182141 472772264 589644631 331881730 670836756 170520876 58446700 982112161 223215971 168299546 973030621 79465793 883533183 195407386 77376347 150722787 350250309 74313862 389814561 556827176 573698960 795758356 590747786 821904827 370555248 505329275 790569813 770768219 877725689 915272663 202921357 524240021 42117239 356540515 420846134 374148226 90386844 612934415 300689441 426174287 842102839 252133776 398195016 29968258 872411826 644837566 235511059 531980918 778397396 449015408 281144619 269571317 213279941 165442729 843163135 943995207 482884302 340979171 381965758 54551708 638841813 10101420 449055744 405734631 89270765 436483152 173676446 323816749 309834305 771732307 321718538 423682655 822769572 419833610 216148848 306333019 445426012 330710751 655679633 815190375 699350995 211534489 216113693 932027003 111034973 325094754 767784266 958312130 952752416 653449940 693775945 278757165 355403815 705891090 417453364 953257022 154127456 858813532 328641161 799789161 925560399 794586724 525017294 666096989 120044133 237110874 672181077 884348932 350282196 75211749 936598197 971735090 699295650 117699301 293128768 837956932 513199624 976894596 130730960 203614839 510694716 436371978 963997083 908709967 733696953 301276188 295156131 679804270 540316630 690192055 468442004 458884039 89287832 50496004 727574275 755082651 836735999 891721130 220885284 925090107 897364106 693724313 547438690 839178021 7264772 4734400 600779201 55204090 4508297 333104864 946866038 160676391 873304808 319092526 871792706 317995768 38398014 486804367 10746279 425419959 218081901 389919437 915769219 833647233 100044443 676999317 12769175 753812285 705655363 304560720 986702506 667807284 261552727 90479240 651346236 783060058 830433847 308682402 331871946 285229710 685580516 310253565 760879463 98558805 317055587 343150856 47959769 951123474 350058869 813425703 244911892 141047565 126255838 852309431 372824426 708318677 346179756 810701606 275162952 477633759 581588539 65648240 557760316 960040033 444322703 328996867 234863147 818920152 707155597 691959287 380721969 910565591 968492617 836414552 571600534 863461091 753263080 652438808 511909717 769765277 212561511 292844085 621943849 689683683 605605310 899842951 681704059 834706348 72080037 93631493 90171847 22559870 169124160 147144805 129181818 200442012 363879478 312598004 287050131 586166999 37425277 330146188 242896617 666676154 452423833 409351129 590139266 623929900 645868798 893866177 723673500 182941110 363138311 612176878 474007745 836405752 311296135 561472336 145698104 173752685 506516453 534090653 296762517 313522148 580370312 23369077 262525309 398350775 133365397 543531074 627609272 869501039 633256456 503967722 243975833 124914376 474600860 951216604 381906784 821153654 347197330 79576966 723980589 677672635 343579082 179250062 176709147 510067517 995675755 872669393 522326154 130169530 666929940 474451885 688902781 565344335 228590026 803899882 828180474 647909344 819321473 753526443 57825493 562198475 540323641 29985920 361597391 966773007 572729341 464755630 244401750 972164747 447652829 725565970 658322911 800842203 851500277 558052825 391357215 888692838 148696656 708214321 229937499 415822340 312815226 991626697 850498589 462236486 362794304 627673852 870457397 725343928 50208706 284402696 65786935 858445256 5716925 161470090 802903723 554502151 131336364 927478086 67467731 859383400 675129559 788472634 16214290 777904215 991350299 584832902 862205465 791652233 814662201 568224263 784710978 718758639 891056591 902784011 767372693 49624559 154851656 184284507 95941349 396034443 378994382 11698996 36313601 425995407 814812047 82710034 972730602 664930553 290835480 204134716 432592635 440720325 584974162 671889057 48311704 290982664 890412190 730463527 800003839 832562530 935833235 261210021 639182376 670607598 360223514 123189977 83929836 590477154 382886839 446801800 368257073 225892168 717818306 571197064 79517815 706956045 293630766 660197083 346977094 660409609 177267054 655618231 929906248 456477169 756176728 448931063 706549790 184716949 57005607 431866136 550375955 100539341 52701393 112065102 775522943 8614784 119943594 984717501 391929096 711323100 489486731 74777213 592213203 243693470 606702011 244455157 719308762 90530581 220792475 796738663 534620514 376056438 464762016 52614303 405643441 874027506 127105614 397047440 964654336 483887540 316340639 624095082 973559226 354561992 354101709 636036677 761316111 621626506 364976844 874015932 592886152 196536431 256376372 182731013 973286534 195769653 348270739 845266997 43353167 207809782 573356588 691681281 557053960 966976047 143792320 35295836 155133851 275600125 757059918 255175898 917299968 638646709 908175189 560927850 482883430 63417783 91363334 506417146 431894564 313775534 585528870 666456523 925991613 985264152 899904519 232394146 635230738 801601663 845025270 979105715 168907583 432078561 116092939 925952681 130376269 897799797 583889830 352934190 163569767 900806553 35515372 687405465 316117329 563737069 707914759 501880625 759872596 379601202 376827041 140624420 129782422 813884949 989507270 214596952 304884278 891394962 36247118 291590822 208899996 763214803 123195101 806656977 633795459 738811274 437663652 421561785 734402463 947522984 582453952 195557079 391101110 857935796 47296279 161802366 516383594 65692177 817864727 258511856 820102511 634995889 616838118 281094074 914911771 12273220 344956439 537522756 394669950 955062302 601939691 552726607 624227588 756350736 1788993 344921025 52576060 797106785 984992399 842116049 629897326 504266749 839058611 941649122 175306800 288621968 689687384 400434286 335567084 324444350 40621229 776542207 792592610 971752670 861237010 536420901 146937180 425757855 381158162 791893108 747800989 53730227 30609908 340778624 696772619 650380553 423763745 836672326 838892909 691420324 423502961 446852577 363602181 988845555 213069345 62780652 525862613 623087493 456629507 733602898 946570635 606494753 835277931 451727660 35369899 145629987 889416193 343026569 177537783 703758356 256072680 477970587 713274576 215819453 187474288 432655052 504956997 109770060 163120166 322578277 139611254 957265346 707935068 241199998 20675531 576015188 278946941 558384920 407231071 34712690 90677075 577198903 974268132 621275240 445703891 367100563 473657212 381759457 416695057 717395591 800671124 24167679 198002336 156974177 34036189 93530523 587331165 651773975 18261994 512041921 884228017 395285865 422705140 818071905 646509739 689905862 814802985 854281120 684267302 483060402 179759789 743674740 328784371 69269619 391169965 7637258 120220713 659951348 602006510 605567885 916841305 296359765 617494507 600993381 403526045 90895490 866656821 75122523 364475852 671955265 208536437 412773847 20295407 773667253 553402881 902601744 393086141 47649800 389327829 230090115 195732758 268728597 727524216 65717812 146473426 174188088 163312508 573550235 45041407 608442280 599206406 92667317 560509261 742421561 90469871 809700319 490797055 355739805 966031576 446036969 416938538 35309628 865065731 666692314 706413897 29901387 100768634 421352027 984804050 515098395 355161719 969476983 419778354 67044115 313114367 33650893 174296054 610184141 228992468 902155156 878265180 606124801 358934328 537334866 79320007 44589225 6428012 136928922 806560172 447210649 365752030 57400032 927670220 848754181 207454098 592290257 225031024 355698275 662717965 795696780 749913559 204558107 185620082 400392794 133151391 3031808 543719252 439935026 877710158 87764484 720865001 257935592 675462219 346803500 69334498 217707830 825949106 228096505 509590762 213327806 632396446 183793407 167523924 610920199 851488004 935655380 822604499 438847931 866183959 579737321 532813573 278750417 289179464 763314664 143256806 470702314 702789191 21494677 701083904 993180477 533494796 306130661 513375368 988761872 338721659 227566367 650090562 671087264 821904963 532729751 310507314 810466471 232256898 934955447 333436495 496847718 200109405 828285728 877234752 582630808 950315878 730053647 673259517 331210957 965232241 658632510 559211586 465879132 613762882 673109297 206704146 754540390 718023120 20267787 475118687 32433426 874835324 929089096 675283872 371348097 407420984 739237351 452702674 908023552 416197812 501097984 637168471 572304789 621196145 809119710 442400520 980344787 977945341 842940382 537190057 275443112 559625755 11362024 996373314 721546349 788976329 694328735 246533936 619916897 703515901 502699297 240308237 609126100 700347254 262518165 141307661 357320201 612908874 505174983 59145295 76141888 264663207 842621315 908977872 478324592 302297805 605300474 126475949 983598184 229564920 193730310 444302527 405086651 143407636 538734599 757917390 768333235 247963529 18345126 926689869 452306220 208998975 508327350 368021644 79692509 496771513 242924999 563970387 706965487 758123661 541335994 446713023 810127868 185409073 740336968 491749955 819035296 144535699 835097486 206005234 943910588 931779378 463536704 858948886 876677212 720020915 625149881 898307915 538974040 754934109 14409416 719784572 43225116 673932560 167362573 577446447 188871200 869719874 461142084 667500901 258372446 546908208 218564081 764310459 276458650 813783939 835661762 799657666 260627907 160262346 228265157 592129373 966516968 309739225 431232126 835269584 9013507 69593040 110879208 39187206 894171735 829891301 193055187 14953265 332809640 496813133 950336135 383910174 38221553 295056687 868191739 895004037 78501286 856842226 324482725 588719548 111554377 312381943 967719653 299456317 139449089 617411565 596985851 254539638 299881948 845026488 124707101 196869306 525898584 540679218 452235313 251681028 116332866 758057473 548890563 418945474 996058968 739342884 129771600 538770761 490187477 801279390 719676810 555864916 162782098 522504241 359039925 871214666 66399419 333583419 83652636 842686905 967119861 822143057 902576961 714624113 195655671 515711887 991842215 288156938 241502282 537655393 602769123 728240845 876868772 522126462 815480571 939923627 494709119 638756026 299128467 124065201 623314867 509705634 79529952 526653069 537759000 270051786 648241933 432168610 534740387 748567262 503210420 775009193 248333420 417582075 328786610 727129752 225616104 286858634 742906448 395962672 300234247 674044838 691936571 138947440 945475133 18678825 676963173 210985610 371505424 877286353 908072962 236718461 966697903 715366402 249810587 768644725 452407879 808737416 551753355 548506488 724936961 930134516 169542683 49765463 727008223 467398839 869700343 508677879 678077108 653960187 112748130 52496899 111950140 207378377 763975916 193880355 658830271 889363705 475759704 863191864 209003049 709550626 488407764 273002442 500514112 957794047 878068140 474158258 424714837 665143073 121322596 733095976 34169748 235703097 114833161 473117765 841913430 934454621 94032853 393914767 382716983 58855727 269471113 136682931 885406302 211181734 238278495 200629590 356170470 397447436 894958739 153435456 697647480 815244301 666995098 90756542 467477078 142542272 425618430 429070181 349411703 196836130 182374651 32917897 582801346 277804884 336906048 187598795 297954305 674942597 917368177 88148379 947453005 236646312 451188699 736682968 26966284 830572744 577556460 879234530 849133503 800100445 806655270 970526775 827598135 595100615 527225247 13790099 580050887 309413819 747366192 430102684 701100637 863334977 758595736 201079897 695014648 653244919 789935643 89098654 108410178 943686565 278784782 169721636 401668323 364774450 950130060 108477084 156684405 450607281 168939848 503192489 924231016 346639379 487873025 101500418 414413573 258723583 917612755 463374067 980145751 628978273 240656018 686404540 143452889 476068455 613452397 779142479 161247467 554175141 690424416 298446974 335522339 60290754 379504016 363045936 292125813 856406842 868283414 724374892 701486228 976301587 952242206 667330402 594222689 383564888 949408981 454013699 933569087 799714569 608071574 296579099 225571232 453911522 703553115 499989890 327602799 311874831 589210519 792170848 425872930 75919568 865168583 171197575 766178622 171864265 209472427 511122989 107129189 901832758 142727709 54255022 327875969 271484427 744611759 917881111 952588133 100659401 176052504 215958335 360053998 55556222 978590984 177851880 545329020 27961269 924917952 924985739 51750827 494660456 23699649 816154996 227173709 984253509 414376490 230844708 421670244 579841079 334877022 420489066 309319445 915062101 670492095 538310883 487476833 853011502 164033234 774543623 77410471 773031035 552261125 526833130 97399797 490399983 497763713 210662756 306113496 987166362 585021008 552438113 723533971 886722690 885204240 41934577 969515090 600737272 767107227 234833954 626594289 519129642 240004451 625726088 537332696 595001269 985469351 34449149 64130186 347621236 720216014 851367721 436973379 362727163 87443511 823695700 624773667 444110078 944805790 400959219 58262878 236793093 557297306 813855589 604369625 872129088 640036215 996799702 401160340 181146 284919298 24936399 997418221 492842896 455312289 588656127 237508228 475385166 138919798 557796550 750695275 357684233 821142453 439511940 654779992 694140673 72414565 80291821 533088476 920245019 360920143 976826097 169705354 830638756 324431288 554253646 171103955 843266452 507493317 154844933 949672813 991727259 152155507 414276304 282810342 212928400 24873033 618762789 733639912 42460670 380188887 98908901 587555825 919994801 903529437 559646296 11026546 729834103 174518128 485534790 496669543 915444573 712934874 986638499 941277075 132187772 622015 653472096 596604587 785082334 468387717 606954747 778205279 460629841 233269934 963416898 532239357 737789076 844494636 416522579 657681114 732113992 577286218 995173293 733173358 451543567 141723728 465140868 151298337 811985630 423218486 652787773 428321981 293060513 825404303 161774292 181776991 275114748 763106261 393860621 408245360 335520187 369916632 632941200 882750006 416274287 936291237 14453408 431946893 565849804 220777109 110723826 64808447 608551738 714210057 234613706 265942207 203690497 794366489 277684956 301777596 190153825 506886758 205805382 275315538 443874565 722010356 701906006 137230725 950069220 57839538 656886469 382014240 668903781 972351575 450285137 51115839 711915956 271097560 960706570 863813183 541346736 593699651 293537912 260805994 922790266 868917748 592073021 9645759 78483048 356604853 312436605 247257540 920435595 519738745 732207773 933031222 158602245 936622708 860026804 580091235 44942965 631929198 133210351 865085524 655700042 988139430 112734338 292838239 456565420 804082996 585688707 484442928 745187392 112740484 281156006 550620087 61168406 913227714 847627945 727415382 909007836 261051174 922255597 503284675 68232510 452560161 12719416 794420809 806147901 329882484 409679198 92033762 892671682 736843413 355202730 241966475 234843776 919465606 961051631 823193250 243888183 889291238 559863363 819665235 50765088 73109165 47760526 216196787 966240477 832055749 697186497 63577938 263792659 434448804 611695280 241865233 602665770 606228544 450130763 23171424 833398380 216441745 374556349 621265045 818355650 996816339 455565475 285781757 36965619 620548455 99527996 623167934 115139416 868018272 989916743 360799150 862543088 994242282 316938777 159678163 24085831 254952318 807285093 210003509 485714511 413205856 744307749 114951617 437571244 171343297 60585356 845816258 679967078 734215557 852717019 903554291 930768690 781068954 56581930 391218519 311844046 353568066 953465756 803517507 119961312 647307187 255467213 610643677 393628584 191211340 944205032 512184536 581450211 324469547 978930138 686786306 678160554 423493013 310702350 191817536 574582846 536973305 437759524 929094790 721972568 762007815 952237099 297309683 720221220 349480009 784782654 143024823 354316579 312714614 844564317 611101992 40587754 930958715 804627724 354672639 813322830 724762744 562980493 333669285 290748237 60025639 215777221 149261632 727184371 659357827 364854341 11692075 24026338 776561764 893271152 332926454 482755841 25427064 577014846 588356548 110577897 908999451 11397559 965944859 628744978 101733090 488780862 87734531 550760386 815054963 676187762 985490480 858333673 508057481 540737075 483849512 110368804 671745908 319405444 597226171 336988041 509889751 166896087 243698624 748336353 246218185 160056027 810522748 701951376 655935503 553545867 61386951 900305711 219538869 763883632 696462964 932111015 116302752 783251545 893712375 186043450 333905232 904589016 902037449 154849535 950854535 879947716 180174810 779163202 763370187 674081041 652382488 875332045 467975213 733708869 417999121 504454856 171407236 963626077 744475058 322326267 870059759 238677774 208152197 972344943 966972674 185148501 480861914 662852093 134581391 798900575 347168477 919290168 497422476 235730796 185649802 553742538 876149137 299509595 402041655 275926884 938615191 100121286 107187259 772216651 397591460 907129582 474681377 297481035 326866812 486631623 456404296 389234358 694826486 708570647 108899378 225187548 435823002 279531176 397595873 474018544 249047099 469581324 276526092 200093264 45326760 896922648 99358908 224429001 138817094 39541794 976216816 27462972 94269006 347422054 792089554 270567274 984329389 495027017 902954747 522079652 343673903 92579848 100662074 467626184 656583142 142744928 733909956 217790591 406165972 385560915 228542645 432694572 435417502 536172032 167677525 787641600 383912695 396935144 365824695 265385670 790073941 959313808 802659241 249604273 407422644 772498643 589261244 943532049 67783860 447282658 662947807 684682215 700134418 402188417 657495740 759172390 935639914 405844122 434355918 352130578 269770416 645557317 992608091 521579584 121074969 403757168 218342392 305503579 444539677 655706401 30521396 570142580 742977347 128657745 707038586 340266332 156512972 429174012 13312265 864376023 663467953 34933630 22068052 950517333 860258307 364687219 136558902 215747228 83071899 14403155 638428328 287858968 675117554 482890925 785555755 87336869 429213526 149412367 453258374 248349421 451495414 791778102 378577807 785047650 804843388 759551474 861193531 825576538 898439296 12627747 502050604 977887758 237182646 960420661 178617407 695147822 12586119 819470431 732288754 743682440 6760346 56792790 612802896 645982045 603822894 456277940 417278364 3128361 733113339 25598050 484682198 959009728 753578716 383206888 729000988 323132188 847567794 892093349 298085033 374297607 150222238 844081063 482675971 4668797 204531558 683112355 633853474 598292142 697933655 932344814 507896807 32865634 297669973 916511149 103045498 807766706 756483594 951637270 660209839 913518108 867444409 984091176 878482527 600668732 615015184 349071912 168453914 784994615 311214288 253720793 973517042 508574612 546606085 988186223 630938690 728637102 923861281 468081592 913148393 299768619 250029471 362238748 867212502 203910300 83887156 429275064 543336267 622334912 202065009 943013490 262543529 122018271 727846226 373236506 475895466 501502501 874712904 601814465 988703518 191018691 5347310 892466004 893049942 762079289 580264714 357184051 704726294 807443548 270427142 461497405 836161937 881642658 471472644 344101653 138455665 83917701 824545370 500953743 422539748 635417128 466111209 31798811 388394258 805398981 628129901 148367906 961612724 617754295 733941603 951555803 447805443 412963729 827945589 405894643 264181065 785152126 190526674 980985499 186992536 903032135 696980662 772667511 713272681 627690330 392622481 468507689 194475205 38894452 725726835 222677809 481008381 353159974 23992674 359284466 734466399 369946996 756356871 363409844 814600850 426225182 386643290 406731297 995725452 375409454 435009194 495518162 71202770 942309326 587630222 766300875 376157116 478433367 718033703 59904171 450229401 868879709 624602549 11825907 681177242 713386111 445302723 666474434 674037461 355062358 546580385 286460508 284563244 704615843 855456887 36981577 272841354 664737232 959525542 583943510 108042363 232259664 763179523 104317820 489881293 377444414 398295160 920034823 494523703 308494911 726814799 213672349 623445571 298345981 479345443 279362368 466468809 491713877 903617844 913723439 479640461 846774239 428457079 960827821 617527712 95624642 128855602 260929259 107083476 875236098 808515264 506560769 9015637 470899522 690369452 353547809 911520798 598810828 304256449 415960253 317481802 60631335 933907471 789955244 479895443 73201974 849070700 705935843 829501360 563765316 53746680 425522262 979847799 56362192 555182929 474705300 405460268 198590370 785405160 146634187 781810785 9450510 284592065 833852575 674739983 884765310 483913931 449047009 650698194 877823924 219228088 752526979 620550798 542315058 834479195 553608938 622796507 347458501 386783721 654977643 21472376 924835436 801134754 937692728 147256793 555861252 296795368 227085251 682487236 889046923 387504701 632136441 281274725 687121880 89299220 45698472 484260240 36248517 904331523 896601636 708620211 687746307 670166516 434993602 556975634 37680750 467087053 696215563 688791818 796556628 73175295 287995613 54890079 167871920 212323711 609502036 458517422 508614902 704720876 814768166 707640675 371366696 715505880 242618591 717682049 206600854 828221493 679951317 603096832 555830839 566991869 289653604 146204921 21413925 192093074 232803922 921842622 580122139 672512978 153754368 138958630 207857320 799102008 824352187 250910939 811441133 882070870 110707715 278280200 43659930 870070520 266552324 287343931 888807982 63119518 634585256 144687320 491359655 850377233 436598016 321875388 311667177 497825839 316276697 209949905 102526170 680575212 804301640 387316235 212369086 871669813 940724405 808699756 734079222 184755089 618689933 76433772 415843205 699659783 25415992 522658560 577307982 102974684 806876513 399661393 765836298 589903145 910271053 605905924 769808816 279929895 85306208 287297729 945211811 498356663 89373610 675191636 482784930 752891511 350198612 967180134 204768987 648984935 959826919 275395938 96595090 597146016 468486240 24606778 33973260 988924315 643371034 841243073 156950853 654804641 912539352 131373094 930504462 904170130 664271595 555568574 206667663 718301507 694470713 347984784 661261311 116384925 59934293 141937272 848562483 295495275 163653862 827243065 238327719 463122571 724654900 688373619 394522717 169436020 6283673 342814120 40436513 20690899 21048307 680577887 936246471 187843489 430638471 363989050 420772010 232298120 621319826 727218344 19926826 901267891 91890825 809348808 115477629 310865779 588798766 922825009 83011168 601747755 392317294 742537991 597315440 587387073 910288537 343276859 762928475 460769607 542942740 778184626 70471018 940959242 163564696 93164630 736840963 843334549 278915451 927197731 631643804 552724541 798348626 98835044 843582392 755175548 808909264 332357862 6411559 918448564 477826041 160320080 534503401 208217581 526895075 203450226 644343208 768727776 874705356 781253965 201918450 102444082 276493424 619714315 542204789 22901186 557713881 261166815 700844464 371038573 260196092 776159288 951981044 533705136 884942699 517958476 600435507 250171277 696767163 911916991 324176436 921110273 14818587 915640559 786329630 612325587 571207669 976666021 48667863 776865986 545633974 397194999 588792573 297311928 475410501 73101916 957263362 643063470 393754270 80729531 163260692 624624641 554443190 664741799 266696158 164334863 866044881 555846780 42455971 885479289 749928246 679151876 689914070 55220170 739336122 182084805 400670014 230019737 507775454 31721018 303135495 325928240 375138127 25492611 599224062 395514751 694313272 44695701 565866718 219636058 65325365 614224147 396596760 166149776 361917032 304677591 926003839 661439499 366982779 136427589 417613388 715194203 315220115 646254566 996466236 104922372 491581609 147830789 886015257 391426891 535748016 329486428 661281834 234034300 361544264 29241904 409792115 62359877 639536827 349703997 557136323 532585664 969517770 38329661 801340775 513758133 42628331 613236675 866340734 741692860 649231939 420755332 810710622 175666309 306161771 853358590 952150588 990139692 66980896 744639255 989699989 364676738 264727548 566070835 772476975 981742368 139197435 667472769 447115988 141112905 417634572 766226717 365457421 310333522 209884482 672417471 612590770 989804386 541846836 423919526 597735137 559447100 655474909 367228442 286758674 939000932 326768992 26364712 644344842 310522199 222897209 983005605 164871029 426347090 127688425 431375174 227638806 583257714 123774653 954235557 124352579 55344340 892362807 414026259 293961320 88364775 817516472 323392573 71788836 978019468 317826855 74698267 674274742 68882058 259014154 632486367 208124437 268449204 565004325 19649441 588612570 797739328 18611550 667992272 82795376 755179561 200857549 823078927 578387545 207773245 31551993 892212776 567290751 920360459 751640759 120841057 858387830 232920216 996292935 849215628 537781470 779759482 824662469 847598710 7729596 49502928 344809485 803209183 249969503 411239396 242632448 273454272 735911657 642561693 759721987 33061445 868062438 68004767 974251854 778995456 878591194 290354179 525009706 794407543 901493570 239029188 503893266 342442148 264362581 341323838 488241067 155770690 132970062 650008045 32149932 446734113 52215930 575492362 238347641 385105134 365108513 285690950 65259669 226505555 441481782 221759521 814387261 167985590 581289179 670301998 601269826 198531793 393083513 276017224 167444637 411593878 269835681 990225309 513715616 202560618 588751726 747561210 788043440 263751789 924876302 657954901 689138345 336829451 136631595 511517121 843869121 489616153 125261253 477229953 470888108 111352515 839443214 854265815 401405312 473214557 117505769 564889477 632679789 628487443 421148867 344996111 352874308 789403005 127209677 682032284 225975578 73471963 791225411 55773841 70886526 176838766 515007319 204658788 368801980 161178488 708686033 502147621 928903394 975670291 714088828 894798062 40035398 698550894 893088201 818566337 90488244 840743670 76736776 282819250 472176386 404079831 420687511 190530879 995126962 31013322 598011321 837541572 406046601 450424789 780799526 377754811 549060718 843554203 118549271 62371068 440631083 84485577 878346918 244424727 676610727 121771697 954798217 387875153 85130423 342302538 187612856 531649931 879898431 462529341 468405366 90891401 337157251 780563354 216574242 765704792 147962470 283765741 257130706 626108247 693894688 454354497 975226090 35294912 72358305 209241779 303935744 378091945 636558810 404152527 348897610 728451398 157848941 959689266 891656569 304645413 730825625 156984731 111108726 6565073 206484505 941974557 890447103 910338334 151135574 293188040 433853230 757532121 714115743 371277082 455533808 760937283 306526518 841192964 958025893 248239575 542022518 918211859 145791137 898159653 798415996 47206834 110344853 638034728 308762365 410118337 996210315 891591765 828710812 1187034 204597749 574073079 234149180 901954198 442104065 902531834 31950916 150734075 196792911 46489822 173819738 588842742 96552830 853656389 781065748 748725225 388211181 275833105 149272324 307183598 97780604 505912204 47782306 321734733 198805741 269048464 696056056 11432377 586355749 994707103 143052388 111025415 944020757 729473563 675155211 620006007 701152626 728313416 829467465 153750437 748112533 755217501 524044252 369629924 902349305 706410613 759486792 757765931 731420223 857747240 383878875 909090671 117167546 721762026 177644322 101495637 749945779 729587261 462673768 481749514 526789728 710099116 461631564 270136064 269786613 165082528 842597089 531494459 662691582 589345933 948187803 682914155 205640630 539729752 292322061 340421241 187793465 868194624 794610181 493275382 233609521 740992999 862709843 67339660 227989024 408846558 709423838 507006062 809070994 697023665 566639320 928238429 472610834 738425366 468961335 157292790 158824469 32342970 448703244 131125343 772679517 27451272 786740124 804719575 445635866 405992081 525524175 339849428 227026901 380824219 616291294 52805677 762228889 721421944 868865459 922080492 611595958 547403240 422527356 562186821 210442577 810751489 863440645 667694228 332665061 33156273 161003288 541447763 422127640 626047056 275169050 714132936 641701832 443579833 521385282 540122664 842760367 171665683 243562514 898251651 964378614 385417337 312573134 34560275 25365205 171806740 670384866 241812373 817038797 520884802 442841895 303713344 807709828 934269037 50882222 919643041 134137721 478924777 382534536 442389354 34090793 841413378 80620280 386895080 413461534 41414212 582706307 78321214 232855426 546935390 124820390 571875466 853291898 463223736 39248023 218942200 232869037 454299492 602919282 65668554 442166385 494924967 473824595 799651571 664883840 954933266 826761610 550127320 856955512 513430932 752821185 120711832 408712603 666507276 480453546 464305638 226927272 904786263 846874468 624281682 722951304 413548425 362825507 987961071 409091548 871299019 325256179 786451777 104774452 923794444 718019294 49602762 32812518 712336791 463435102 359262507 610720961 663909590 223412181 859734077 167863848 717061124 447961310 841849117 194091639 186835665 761646602 401049224 572621428 461600023 778466318 74622801 703544686 458195007 494370121 446819190 652040737 153396906 790730031 19743941 109172701 36607200 655306333 993433452 703331969 434350071 249737820 596288808 272787100 770270470 915303045 262163772 702894614 988952298 298197274 978348853 809346563 652293816 291839613 473889435 809856861 717522060 846458163 252881227 473657830 478186837 8819610 685445218 341093659 518623482 826542371 583755368 541551288 332439499 557623270 725149248 266478995 91992992 840452701 301822673 762060761 214384250 180459188 443640629 493937266 115573718 59426946 157059544 331686676 193261163 730459935 812420979 125981550 365914357 941284779 728393918 889920490 737212008 340161750 505322873 80691423 106199621 218780151 460957223 60133176 998016543 67830048 22733425 935985415 171640732 700186072 333045123 121247292 956216438 892164128 521824801 559744583 759261216 500290827 981930783 553266747 779268250 680169213 405375018 996802121 946950960 88068641 546421457 873049976 534480533 192004321 308073560 197010838 69187635 124137350 336728282 685074072 85340489 838671182 657538153 442322977 276341785 59804365 631574816 904012178 611852411 306650935 147077109 993778571 197070087 720723674 573400458 832374693 43251249 451947737 731496383 865114170 6481151 974662856 441621016 514722558 663220952 749730803 815728286 693469373 51507906 689383849 127678822 327963074 844730035 227910818 382066508 353004550 847240931 761237318 958583434 74183626 222504016 651954789 113725793 446795843 215501463 918567821 298368920 184038252 251309740 272138394 950178654 466798722 199659574 707016616 276072303 646142914 132431340 443842771 629819628 437093917 392872643 848167592 116466450 53068406 838301659 188738340 198647475 189108314 388907413 91855594 203171936 963751069 948519463 86003955 838446254 747345781 350368512 213507712 944035451 152204654 39939285 781539007 286327767 920784437 400397823 503060674 111475238 525994898 961452056 911551378 143859013 389064344 571608888 422270036 550694053 755012891 549388418 57472359 638265946 80773154 516223188 992968405 652794250 422103357 451473438 352993193 907627322 180983194 997784501 841537641 578393096 223713171 354105991 830235890 190366051 112637511 441887338 813453594 658145438 981792442 326879253 494266956 87764522 723151033 955407220 24569538 384897321 744127913 354653800 681608752 781493393 704123179 523645397 560696685 898790004 676929820 684695248 133827165 712751341 768722668 754380868 44215197 787057277 231020138 949020386 159984984 927392830 630346517 933779463 696304592 638172137 995969376 971221319 943199960 892347543 411406669 869495069 61176387 442306108 382368534 514658251 880143366 910447102 117338275 427972688 859460874 944234831 270689883 887047749 60904099 682515545 803591362 730190506 112866156 129583569 647846052 524643916 131784792 464052991 256174776 892757627 235253519 536098247 360892226 714434862 131907641 659468750 626034450 360629624 732470443 828808458 459709024 248435497 506865339 541704874 588834137 4482300 812290774 88201207 829733762 303988662 642223015 416155997 272747960 574824420 500771208 850947530 242754522 983518619 473032398 83310935 549016953 920430288 153087810 23153725 159586213 610707278 348037471 918561630 357876429 144349449 206059773 815089939 584332653 459516678 550735503 734329600 230164983 567333961 155775123 778320358 246918007 92351506 128579250 65870711 668844225 872038850 493704607 338593981 40572772 216207826 457224066 100358040 937298447 596679344 416894419 724123015 417316775 904930085 859686984 217733050 611608380 544168181 226900948 529102878 495071095 789694041 74380295 403216580 340200357 593012716 54392677 614946628 889704059 513882262 284798666 176560929 304606004 362899546 500152411 384873901 376346146 192464797 782124441 955100470 744817468 153230276 436422101 598346563 709336470 832644531 4721558 577838181 918240428 944034245 593333348 25922426 677674187 248915337 252939788 543030631 780718333 9704266 392919486 512147074 78622618 55073389 339983966 975902807 748069906 19527497 228770245 88694288 727563977 242660056 779726013 442947185 852462003 435354186 590334995 737488655 54080398 747463668 487711746 243942771 311038472 468992571 649958955 416066672 202652941 153405747 963232277 578078737 934733046 430199391 757455210 787491587 593551683 405908335 882574449 756316803 206037981 681522453 472803753 176602777 135317273 702204386 122259809 146062646 372958149 640338053 951324685 698810864 386023751 691428994 237356945 743406624 26846094 342265861 88852095 485481548 617186704 309823824 568157081 658370141 981607951 99655532 569940322 736685796 780754861 442056323 794138990 418337217 790591310 906660823 73173432 985652971 613742647 537625928 366431085 345502761 60401425 647869066 321449978 155174339 846405710 601351105 133108306 639125464 982636762 777379984 815097107 297437044 624738818 276921076 664602317 736951163 819658185 70982993 426117232 243925753 959245483 135205559 864497128 956363065 306000580 71998946 222553898 747936105 427410144 600083605 359091158 697334013 457298339 580071784 25090111 166135301 853060481 36409271 464094659 436724986 167675624 48870509 544613882 307374909 888979867 535303961 630183679 728450299 698362048 316071855 970539144 27325552 240753949 823381677 399405836 598592514 63999503 177117365 899295809 333496613 781304283 73739753 354115969 530817728 404025840 595481558 23786277 877561859 724046660 824173952 162924120 765992748 496229552 9866106 867697324 432655763 229535964 820717057 307567645 965103902 181031547 604887927 25193609 887402416 277658116 115973615 260580001 22981887 388740910 513998549 384955898 949112899 851257624 725358762 385583972 183567516 603375409 618802203 629520564 457963959 892047892 857386492 287948311 517600050 294057201 100764917 736195260 191840914 74774489 562485176 31318298 628755557 886653647 991210647 146247113 219832261 982369593 179207832 817370759 523878610 395165958 211494452 443578686 448325067 689273640 26271041 521128041 177097707 73017231 327929917 653106937 362550739 958459595 973837195 769050208 715949498 850911655 498499103 205742166 549253084 699523321 427062687 210585141 165855553 454305872 799629448 434767795 948116543 565660294 660890538 523579193 428144093 515074319 965083304 771889282 381278418 500922570 709087987 381146006 223082399 627713443 226516135 462282951 349552742 958103915 813874743 501610893 887395865 172422990 633201589 721571202 664261266 421383616 964798914 597464224 476585081 170226125 533975713 632383210 977145023 667039867 933148995 508051477 503123133 156796097 577407130 764718112 523993611 369364033 31969165 589894286 250342169 460400833 815090636 548801241 275725578 262215107 336833860 335142420 236527639 206461075 905110189 411835560 698810640 899874088 483608236 282820730 262153810 449921978 215527721 506990189 101468263 888239582 128638362 637441986 826533798 428504189 741319144 246628464 256535647 696997817 904501248 290205609 582782386 839894258 219819 671647178 124875809 990844364 234593286 409478556 122951506 872628110 195202316 532268672 762395012 893708902 489127747 670894207 24067035 618877926 546984000 584359910 651399128 743923020 647533915 397454844 224345485 598886890 421444432 694890618 582036906 270964789 702253514 383014969 224353261 502240044 192452858 118008155 936976443 103334268 538145429 819564690 151457558 867331331 976297013 655200547 702943621 860158023 47150873 834361369 25794457 695922208 616726339 112543826 44707536 658108988 530186620 874096814 253251069 863981384 778339227 910738169 98100589 238565899 878984474 20041420 844135299 362903319 447611806 130963783 803155116 565355824 609357938 928570347 993857097 242848495 833964727 296302379 883442498 857422285 587254648 276093282 136181379 150773551 442189992 756662175 690333392 70528370 826878814 993816087 452068196 158084914 490527814 956223565 466088836 66005413 533688418 956104214 197727425 601471348 25460573 320935656 299544392 902931813 253174093 872654660 870896774 801011808 690769937 583239145 259872208 466158734 344092288 390777794 17153696 423823013 888746899 835775976 539193094 419438950 931638723 396874795 689959348 975626431 213610119 958051704 412731049 997987863 119374309 391175740 920319857 965914542 221596842 531206641 887568382 698819409 123637521 472450680 448396401 655293869 340733260 519428820 766818479 196627223 400772590 579826214 917470409 891778180 532742760 297614925 444409181 868594443 890527676 220587678 91857654 111419609 407272115 774317479 646962324 446313648 517073189 732186332 612786938 4566641 965169283 623291454 401246058 694724133 22982157 856251273 966247184 433293362 324643039 552367136 448964500 184862246 294285032 367450845 617161857 981084944 78075632 230504409 40480405 819656376 467904514 41382052 572922460 876577664 757105082 663164498 867110895 190574907 611703451 40515334 427635119 417315302 668374032 768031012 252814664 201916127 953196287 383016267 773550351 142882262 328146869 434355399 763556639 681534822 93878240 421936476 44115419 633339303 684438088 140573702 338761325 706351666 628549888 860922980 653127068 896719165 868297991 963885385 924971224 234512097 247084303 242857091 896756683 468531166 287301145 13669042 419116042 993497310 44126286 244554049 126357122 485383537 45888877 90576678 629709336 989543380 135452058 82565835 973394522 422008617 991223065 672853936 744750424 656926683 496999950 886464668 530661672 615105492 981887315 390473783 441218977 39190203 544774932 987884411 736116495 211626785 394592699 833383688 656002495 605167101 522201854 38721997 551366031 581113287 536479515 21573861 693910565 50887380 456772843 32150172 834569589 15204825 279742666 275151494 844224902 793888451 663006707 622551773 727070446 300160172 438331128 660295745 164723225 122519701 807338780 299375590 469711328 496358761 437642309 473585378 557823636 599643132 443509712 947495716 936423179 811060203 327757280 606570882 444204742 120130853 638911772 663253173 681453765 327074579 415453258 603201560 2151805 840875700 921944532 518587064 534133458 596590265 236524529 612989502 441864090 898357184 431614583 502843877 51922025 247934534 406259648 759960778 165631509 294642451 120522507 976722296 406357500 746050150 596569814 125108556 868550748 823369909 217575838 171324782 98599169 439651627 28689223 969664056 832415249 322863774 647504102 91119019 258420315 175809005 366054477 736575465 964320648 341482754 686566744 803314171 632959603 394979708 768365198 398276861 783957589 301125970 874880893 560311893 298816583 919276001 288163859 237282023 280619178 431618780 43010942 176367912 469187295 43462426 113623885 492410230 566943168 623419695 80199069 722540312 102808508 536267869 457324981 93725047 455155822 932370420 605120519 395646241 546420186 623130858 611353811 856066635 894781412 841122570 132102194 354098568 628955198 136540755 529633487 852604313 698142172 255587940 701279052 203204972 197610049 679384784 428696827 578948407 600912088 109833001 308294198 824460260 902748707 434602053 263442721 647845239 530314453 609644402 501236645 940948490 334329957 645480904 932048040 234169823 935687792 182305728 384910232 167753135 116162717 938133409 154256188 746737234 281241135 184285116 777580999 307821388 209179062 257987017 892800870 29866511 20246864 941356187 454365121 584281351 474958502 378975250 84438726 769884897 211815018 1889260 73635548 949968380 132896704 548617860 459403073 828452983 181848636 883571650 482232884 160792528 340793141 823018307 531269411 457171119 972892809 66627908 766827460 854029207 234648636 598713505 228685128 315608009 804468978 756041337 69547811 707603972 438836629 969946993 370252895 756799504 65901540 158393440 951858663 792930905 781786744 577611884 65205847 439820345 592113340 531261512 417970248 631852043 120867490 911308781 264839305 636585821 443180487 181106483 637754983 536710746 459152298 286412915 102165529 991264778 723261004 892929348 230575757 84566764 193538987 985362490 271403966 87788414 924302049 827114182 146460154 182861849 316788322 411348777 954189997 822376341 708613655 4834043 702656479 778454680 926783923 299108764 528749498 364076477 713598810 841007104 645655506 604953954 767180122 131639156 476597848 725587125 678481758 361370753 632501617 728283011 545629300 67808946 31089360 484472369 350017279 921353266 346455696 214829438 369391498 317773044 917289919 220864411 872779795 251141189 293404996 683231171 292734743 729864779 65876925 254541951 599438591 315239378 927977682 872332611 826666104 276329319 383379814 477967132 50144088 596356820 94112670 267879448 610129820 537593684 945911307 150059572 238217371 686239039 168407995 99076001 415910378 94130046 757788300 588352606 900707671 991090699 818595211 163028045 77834707 210934680 812532122 432826492 808946560 515861757 887755595 757076946 813187259 385467003 380886857 490509427 429966702 771828776 736758142 921495260 112115227 81780250 765367904 159760769 801207266 862537068 707375354 14740591 452553826 461605053 868066110 629312780 783126153 147483027 824107154 941497201 375470949 725871544 505007656 764064266 337638558 358532755 294643815 70954840 895288367 469109892 599579081 739520894 903041625 598199079 88547544 38714053 30703732 550370351 708665272 68222728 434621606 317795589 298326331 367101253 995234303 527027899 710467955 609747892 486693128 298542244 74773631 329318052 807830644 391411094 56841551 8230793 208841916 698218992 334806556 210079821 926568644 610826224 843131732 862465138 378933362 329434329 235588285 524497197 995635203 69344750 250678969 197788580 443843726 162101794 894530443 144320213 983312768 290316394 167022006 519382852 554794307 895898543 48891933 847257586 755343145 536754659 118753678 851038844 708238275 785285403 641395296 594773811 796136318 48667399 48843773 209857451 611893946 606319824 636556317 376941091 588649907 456670410 848316375 151556133 367811263 449121224 547230145 579489856 906742845 531779595 289393462 40207870 65085121 87156730 957946077 29190883 101400594 981809448 126411196 209767856 248851324 419554815 451620256 665831302 290524003 913222655 451487033 828137665 228959911 313540117 183731258 58068861 18631007 81074277 94982255 933691634 355597708 267486491 140415646 48056450 406651328 742501590 583623779 569369961 650711993 808733554 76992268 753123666 995744686 552177254 318430039 373218172 548340010 109558879 581642231 78685926 348610498 808752039 994815456 60274561 982731173 491976173 729462495 268383281 677810415 201875742 783457125 471580736 428258028 741941832 256803579 34650621 808959593 657874044 936504617 605474166 458483312 281503858 832392565 257239425 868690471 499705441 209448833 476835137 666004616 337261285 265447605 98049267 178923456 641584080 485482624 260488083 908979335 415456818 107419922 20444610 237236020 503580480 274973266 592569909 765791235 732225617 962121121 278545930 486253713 153912804 951912536 859547879 356328743 182396038 974526087 469832219 40645539 340216033 233576489 319408680 608004552 588760105 995439898 556839388 286604810 215433836 643125030 12444907 373657597 931295582 525850137 63604768 40032229 618492380 890134626 576354809 196988624 560699906 667852632 594955885 230530375 49170835 238828971 585608569 758026510 286674991 605609662 746479450 656547542 674964527 893017711 223559651 555542687 229639445 358971786 390265067 684114404 403587903 130654244 850095948 930900951 614756211 289833979 429509380 26359247 439571680 402580846 421656965 898084225 598950131 369737892 590806851 381038938 134970929 165166448 527255031 478899899 1746392 949500921 937516039 987411642 930263819 134027045 521513577 630654743 478159420 469678800 833358782 618211230 152722261 764469225 755213198 394538063 666417562 76396464 507093023 986797802 274650617 343052173 185271918 755385580 155831039 480665113 399265706 325432878 588397149 754384787 525515309 768452063 953399259 526937000 144470647 633491368 519494435 568835910 129062950 477601388 751176439 471775635 394244493 830498471 521185560 433482013 96137583 67668275 648466748 664145367 500729072 153933098 55566903 446461083 582116264 200957088 786783458 407014501 881774117 388211356 47127401 286348588 794664909 902744671 393337001 776007857 830616982 821112717 870555705 189790598 377569860 547747317 891802688 720651393 937756436 13930367 636271717 752967647 171801052 400394856 310437127 439120870 494016608 432913823 837360555 218443831 949100950 658111475 422267022 488573100 186433857 649037624 663579392 169660161 536155468 224032534 656260218 611141374 978236896 912267147 372227483 35290454 920478161 551128983 150040178 637986030 692383602 512434017 638497763 829099735 871841212 431088328 876663386 335554243 895763583 2984616 939849947 317931001 431362382 940246800 843310709 512903076 395379877 986576614 158638606 317188859 443892907 458075746 828017474 376087857 93926349 147649835 984518656 113612074 287472265 152472816 731901048 713088343 291254912 253741625 721704098 613798395 50200939 540225764 300861209 812821240 331813470 488582342 744688932 471749371 412830520 614464323 813341850 479486649 544548549 199946328 338903771 931010117 255728187 56108665 527676156 661187575 860332937 732478846 548278392 460368030 894555977 486307210 330072670 605034522 899277791 142826271 247063051 63160629 212207286 836508890 496740983 555709832 835963249 224002724 776806600 403457849 949256952 675540036 650290657 899439584 340816593 548886016 488152009 221009007 92591080 615680082 844519361 194756045 527424144 728809988 794337940 547004016 936829193 176028738 6146086 848654704 242180149 433313837 209614797 781406482 861844030 979723031 284504042 927350999 164209558 327030895 354236353 77600001 913255500 814915890 219189030 155423023 481943235 901587068 47091221 646724708 649324673 512022838 299074677 89954928 877929561 505167698 215935184 363627032 15001715 427513944 371907845 758335462 106349265 997754429 760106647 74827723 552781996 483510065 840833104 484722283 123391919 647045175 978385429 259676353 559286781 17063356 405477548 190094716 322901196 299790666 786913490 281071767 438109785 112184376 613362428 601551145 67292306 316072702 638006509 443710564 287481277 730344486 904963503 429077363 460579666 73556311 339526846 212615800 213039063 686748021 39296246 520963851 928285451 651221763 712732175 492912478 292316021 465314028 722453875 853342478 895211383 29735749 276896348 874329973 399706662 19958473 657360444 336266034 689382406 515624114 612288007 583714618 278095954 403581644 418075081 640117299 880012482 924745939 415260117 488849958 268007396 540991761 935072764 156125881 15077813 820053132 674676893 394859948 348454844 176403506 769100149 413683859 762433456 340104960 736664606 116180195 891829957 385722352 65926291 595142383 699417559 380978872 997163919 817209341 883161961 34178956 308015662 172181567 321461770 25723389 724810751 644374340 396677964 907466862 231089521 219101333 799328810 413477441 979340951 820709693 547992638 463451722 155191245 182235972 44581090 389552964 818773838 36400271 252399538 498890188 810596700 393411324 418371981 514255065 454264402 871447946 188737855 788654699 871309210 409277404 596339098 41758591 27704854 843302459 104473001 187715659 411190189 691268114 63014444 68992574 56535568 530620267 343485962 666905086 371797731 593251580 666001806 583889619 712976035 104023964 289999800 37793383 655497375 157769907 6092545 408745638 706390822 441654150 395939197 488302781 876213064 775023109 307935213 208531001 612162182 448285884 712552963 432860452 8907832 356832358 470625289 948144795 823737238 288992198 748473488 451998722 345512055 469924041 779484700 700559149 440389494 928872842 36111869 808409915 879306292 111304496 774647289 782675601 781766487 561807374 355653048 203500123 897281330 145757144 699412522 858641136 195044719 365155582 150108280 921388942 718381653 809880513 698266932 409588926 962260442 46650393 391068206 504064252 264768802 656348273 105635392 192026185 75837821 946880765 393254889 529642914 580718771 422525361 977574022 213671777 484493950 375096083 676603420 391579279 680838489 580474809 991997848 550199997 913128005 721055165 962715211 221425147 206212311 286203661 964112185 514614298 552910809 103630290 259514793 273568356 266267808 141233511 470317352 891265608 15507366 200043285 643117680 98866205 776174053 387557627 644140646 332490478 351187740 185506253 346553381 426790038 482915013 794217427 743933965 393844283 752562744 93428755 434946954 631446173 405820760 375078588 395487010 899401956 906989615 435539453 8288362 855567647 840380725 137239642 121131914 964654498 766385390 925662722 25254562 984810377 187333788 20898869 256463016 471680267 219348581 43659620 935243765 806153941 215859323 67586941 671204876 147614296 737502925 394085403 298778545 648314224 615215084 831762426 822506119 327305389 793476530 201319738 141469374 763827811 64188659 297291861 730714965 360303301 916023454 596139158 727620407 865997156 278426044 832445153 132414993 608948201 715319762 80794382 62606731 72000444 953048181 787727995 15319311 971242127 418070925 899719595 48312382 737316476 658776466 170409892 593935692 238277139 580770853 986793406 482673560 200470777 368197713 49085315 622824545 717211061 321699801 627457524 465720047 793259962 919947640 605585779 941112373 778530966 650647733 814766198 118781159 928152261 794331870 265373920 409222694 802158221 865046843 778337405 33740951 395866750 426356596 203620339 315806497 144886132 955130085 223059055 217691620 775341910 336078160 902812199 822994787 713309637 422561415 682661876 661395548 655964066 780809848 812130268 978340731 528431944 776330902 110690370 721102820 330836462 136779463 183397059 666763326 372483241 993093104 760628079 420324508 790566744 630212929 964686386 135804773 452526687 449703962 633830195 315606991 905232631 773556317 660560042 361017070 706103849 759223636 936389717 347024591 762966544 156472975 816190542 325993447 234771490 988684317 878165642 281260509 359390687 918955809 869351135 949398444 421863980 91220846 518444619 578385839 64763080 696134761 279533929 658376054 280334512 418882465 24093144 445978549 59216111 112647823 421483647 695522271 912665535 723938970 692046537 468575798 354611212 546176415 575859381 941664956 85912194 318909296 156924801 113062652 978408488 901566962 79057078 787468810 789543147 418531034 290128217 217644201 150148362 186504656 104930509 346007165 584962949 599150705 586863309 322659668 145334761 912192602 475785281 313975776 787302455 745818518 717669763 786748687 665825220 753795385 696662335 485595308 782216750 900943080 858198234 499932494 760185331 844472793 944898506 961826815 687318091 134614413 130590248 742780567 987184570 723144584 825456508 720549057 459569926 18451918 365351278 435429555 247366240 472147931 149027356 32505754 817805277 834928208 36977860 658962860 491896776 502596505 958343206 380817285 716693075 158851334 912875990 683551973 906076265 584478204 477797002 562995714 519386745 36135909 60667545 626080375 248347462 986676114 191494720 453348114 473229825 57761879 580674386 833243718 939582908 164490215 339662681 905393629 58073425 756713310 567093083 213749372 902169638 486052125 909926814 336422942 391025504 281855384 824918477 151440645 758440393 920656373 383732113 6892666 771438983 923209999 289171849 596042731 66375840 578850810 672007354 867079707 759473001 819570205 189540362 57030398 219181714 257168105 885545784 669223394 514649747 288357958 434320279 364709381 989203 73470814 644681171 106049910 974638341 777516349 607533324 347954959 903717630 861175933 406234960 599672192 126660933 493941217 393624328 510547462 250752849 616846783 751762393 52316162 792351902 790607240 189341760 510801572 942467136 943106538 898286668 956458054 265802164 3763359 264333760 362943064 376315384 483595945 241114881 695164994 319027664 243047418 285483828 367567961 561203908 33612630 609672740 965962261 797867144 740821390 231687792 530527355 777594452 312219048 161538947 867012006 839593284 503306639 716680809 386425663 555221720 272708528 1259433 373290776 727815220 871870511 479958415 761762679 924705185 807830773 667980021 375664538 324870735 41329185 198279608 48844070 4603276 371732980 529551802 794420621 84769908 593140366 175510764 327763284 901385614 111204440 755685530 804361760 938895829 561652410 654322781 279833916 850582444 664516880 960769774 854289170 760621740 446572820 666813772 124220607 914131038 239833523 263690537 330101399 474100330 678426544 145820976 872820694 510246894 170935981 807597953 861368923 392338200 184625212 356401739 823373050 308637424 709280339 111295368 630076582 532622418 972674048 640828181 700822701 559066822 911614032 48644084 656404170 368719708 989679984 126013116 799552884 728853961 725160860 490342345 842339744 946372248 570902174 395187737 718273727 339944394 311907813 792269925 351912084 585630849 296346170 603164387 754731519 408893900 518116159 473436513 680026990 973528894 104142401 929109025 711394302 229795505 125874804 898773582 580902075 412188601 905032732 706925371 700256203 83128834 553406536 777449189 654154635 9524305 82140314 352427736 391284798 186839846 546806005 101858202 359613143 900267241 55659803 812162361 790310897 962154755 551337939 44594930 910023260 927819037 416319878 412115848 539481132 705763097 397389353 951099650 466475051 227046139 333500697 51434489 15788143 547801566 765253903 851567138 384363651 538054352 407219828 716523959 726629446 453386900 34980876 299040824 97802231 149705622 550270069 225573147 934222381 446270825 74252763 680813914 790984650 563135353 349499906 966641575 499138387 331766130 676420412 169201626 388322007 539438522 858980178 883127232 474370692 533074388 250315297 524829270 593281652 304315376 194930690 678218370 121387909 764412385 40681406 737469265 385390494 250157611 544609413 623865243 829784524 695587802 609302396 638826368 34714650 41996575 895857845 298753870 106539277 441890216 863203615 966892884 752005801 204912577 823412083 305399675 921113853 15687966 99937151 580311487 485253464 756335870 295240672 286549761 3593403 262465768 348539551 782302104 703830116 884272722 393075099 936122516 77485165 185036677 511458325 296708111 28302919 515511081 229510348 674328283 816411375 303742838 823356962 652237434 758237015 786986761 755984331 838980198 235048992 488247083 911318299 983914501 697663101 750629047 956575603 632424299 476085415 317517444 277899817 438405289 494834325 745066975 325121229 437598718 298139894 393159316 830447404 974996258 548206971 917632427 845719941 763752666 640596079 908535448 830441249 279305652 214648494 646199882 298088269 788454389 803813698 384340583 73823162 691815060 226858643 800809991 95393128 270254034 167069141 783857603 131023593 806538902 139334563 142892557 4713271 200365600 545865244 114597032 896944988 918710995 671706037 420616759 222275351 220333035 186607502 727768377 973060480 958493223 453142064 297565414 68466543 991605136 391701380 206862179 251409889 848974651 633442478 727376021 49376937 896471140 498147056 614967715 412220245 217889790 89137582 962219523 519208688 823582341 96841871 53734308 411160290 881237351 377052468 187473105 977019560 652875645 324382105 121719948 639711896 172022822 874044359 208580917 535447658 289143458 447798277 366575094 469637951 925680324 204120592 382228249 522000846 140456970 527805482 32966547 544197654 410376224 568733804 55995411 102106415 543963373 343747025 450988505 867680246 464137160 60022274 747381118 174604701 476835471 125419736 116681402 85714525 452236459 800146462 928974411 414332525 921143655 547957240 846733990 99814298 735219847 925125830 483740473 420665833 112584378 840965234 837562205 115355637 40257693 755735959 976022994 281759156 365525962 103416239 858058709 100745836 738144165 588255623 311968380 370865117 50179914 239460362 216373784 978079278 321222030 112709535 978246260 932107453 773818964 595969901 971494614 103194248 202810542 11771262 636496171 196100715 370870996 869742675 185440046 934784788 905184108 995412623 728188128 742519216 731548138 737447164 586496018 483109507 465004619 706123731 498467360 258394123 565049872 551905697 45965452 510823238 370157729 863561227 511901482 912018832 949191903 294105915 719894728 608043704 341201646 263247691 593620430 653520042 64948602 55895164 805856088 287824511 334161197 222160907 277179108 893722403 126557384 180858108 301733526 270767864 497014361 626722213 184716342 495750119 823090344 27241351 60762873 331402055 282596222 975841025 385726603 395934812 538378531 428476905 380883560 643580837 919225845 292796314 373091993 231820910 972803277 205004242 291146197 501487042 125456409 226620238 856115942 902448289 905907040 939450725 499950173 123889450 535432508 516052686 862335042 493432658 894290208 249791622 355335729 832770779 508121341 858266672 7165816 348130268 115564093 257665353 765494271 43391864 861556045 744694058 318741216 929606834 830527622 706207826 730014017 686044648 616702144 434805397 592948400 79591464 124868047 933013866 829811733 961669049 249530700 768282970 340953365 22113286 680311240 965551510 658545649 350315072 661629950 29491758 720431762 732679459 113730362 87320364 4675615 376172552 541607502 92630362 820039229 762012274 348300814 409301036 590876435 439575496 497622501 854534750 401404950 571357838 904999489 657209484 124290072 694631149 476520112 401978727 409430112 453917944 210706372 756749745 160988911 95166172 40936319 303305208 905470075 544683943 280808876 107668579 850336447 981297299 703437812 815661325 804536414 242384641 647828781 675914526 234020688 217807950 991686480 212666751 742461126 113349436 471501740 73537759 958564225 316952564 401396747 706575648 827321729 784554641 589146294 483005440 542089230 23258795 802200356 653413673 367625750 950474959 126242807 731513414 214718756 453509006 923318261 943956203 186809664 812017223 654130022 259268973 639638406 691740918 584024236 187465416 445858238 455245561 548750385 855250599 649619974 548044950 501012362 770514045 118976999 114810655 192148545 900016961 926675302 518685212 993437157 826517910 983150313 202883355 289374741 913494663 165905243 151606297 690823982 995762172 613840991 183690112 801377890 615705041 680264563 159725800 139382262 940866512 886448326 373066997 960713470 859588886 844296007 635706805 214324872 313437712 425805271 196003430 36281673 530870042 476436182 380426990 349974270 31409847 802670206 289219811 862539393 117877550 493671659 125080916 780422147 49412989 733399820 985648455 620777687 775378684 558739064 439859628 917710751 526064220 105927409 805622924 585088365 214733262 596023778 406229763 648957133 325249808 363255780 246374796 742815141 733255529 44083938 807784243 594812930 52548862 667905142 378963988 240519564 151598687 281091567 53469211 494856233 947862381 562627129 275166355 821290561 140723050 690546955 828960946 811332587 705711145 375041768 408246924 188861094 674422050 600254590 607068160 400041113 22393007 509624981 798950531 520752980 110346721 869839362 842769363 242947286 619340877 422210004 943569274 542205854 528833878 589439869 959948385 856743103 190368876 904961962 917433324 216794017 613524716 1313870 621712364 232805522 666127705 631507465 938181170 410897054 203124993 223977862 68002413 548655113 718837397 943532444 641675185 543925651 494441209 748924372 188284206 14032786 458938353 553668796 54943701 483623930 298277558 753897333 355242615 576938936 780715457 13219833 243096039 366157329 891016741 102155582 172483648 985101446 200344951 562486605 734101432 880229875 440471566 25376445 364787979 113705819 771966688 685900036 623231073 592891335 123836588 877096130 523093406 17821981 403757374 971061412 196949934 790575198 168109841 144076726 943440925 378617779 755358791 937991384 310393438 232748073 797486144 476583111 850429978 713156033 544715472 659910094 11973300 216184416 107216938 580862277 426656157 986840906 219367323 567894036 505513635 743715144 194443100 346445603 518230828 30308035 503228017 703349597 10978143 589432308 28644642 497848124 868265256 578358538 80012424 672361342 908730813 328960520 845113456 702721806 826961093 467628036 79376012 432513832 659238706 917262965 409993778 362285820 58715657 164524348 750748059 797047071 495625721 884863888 668036897 780406734 832335493 294754863 765200779 663355698 583626028 573723867 160719784 530953709 624806764 440520967 361109768 394775730 635444105 393336046 89612532 345166927 651882851 361764122 812506127 673810943 431679260 207588359 913225508 49421736 971685580 629347912 213762696 834071038 309247516 719477230 425707812 969763673 164931265 674429566 800994191 260077522 103571391 127626446 920407845 366231398 61929249 842235043 745308437 128621524 736015313 500456583 814489074 454982139 806821760 917011952 511569724 417675973 56520163 307188353 694596680 775759569 33882924 59466063 309655519 976769261 687698674 628470874 437864264 597366512 896788511 139301326 555475266 38508380 234768235 295808200 304047873 550646446 351876209 543179004 899931234 948199352 919139639 697084132 527711074 421976649 961959370 224379705 508827492 907001022 236528604 645201095 341297279 703092815 178664109 876675651 222697160 684578116 671256492 716687545 588208674 429486929 905826714 301303552 838210647 318847845 480871474 495637871 280502918 20583910 663378019 368462585 267078740 347953574 538582989 464748405 247369626 416556940 344454561 226628415 381275930 570244570 985016172 71982902 428720435 235480820 690864028 79899240 329345020 319660559 562615920 687153148 988036078 561154496 506277419 795146197 844849581 695652283 538834190 862113248 374337543 698635193 992958579 241291699 685445197 495299069 356775907 522085324 778981963 962401358 281863590 105504431 22466521 202659250 574753786 970599545 507636375 120473750 38067150 801569385 27216867 848409597 926134782 349753754 714847837 974630504 628276842 340943542 856394510 568564314 958810949 395053880 612126445 595582205 213328 166674487 533486598 51619 799489379 847360253 512741458 468056904 421019730 926288812 152180917 780071875 45886790 67032891 161073349 410340143 502375391 62327258 658993783 522766729 972121441 929186346 119477199 716058951 513541427 68050392 847145031 191476296 690760584 557021998 143294131 547652377 247220207 183597717 672929076 673701833 619976316 976833915 675560256 464518295 41526241 366044035 488314329 285748916 306440412 836910698 6610348 489280631 471509071 81223966 603885714 429602473 684490350 828654198 840191254 82325908 112273063 381148800 935791866 695743123 109326477 291056477 549187052 863890691 113352775 196145839 768323189 340609868 50689602 536609103 613314740 369204205 555242798 29058557 670413678 193677286 616340539 248271312 86738164 452841324 526944791 521562148 152578833 58879915 964667523 914863906 407183322 264167023 790849263 753346906 108147109 84289579 688628864 561222494 507438021 108348147 315552951 841415550 371083347 161524042 769156586 511940518 603788483 161071231 777893300 344678836 620120691 867154588 116093684 854595152 379574969 746267183 494593845 637537937 239075104 359623080 134066940 841011169 674367199 18800435 97568249 459759549 773946365 819035627 658867709 30291151 160960714 350374180 380924932 498580441 512112551 372497517 178310445 387048537 280291280 906428987 45545047 895307905 518060770 13726031 15155495 668256773 303085304 488310978 925888191 864559447 584967472 27870942 945454265 768656616 505669400 662757683 896230851 241794380 475645208 17453784 644331113 848256714 766377032 475877899 191580139 422664736 765666264 836401163 995217260 385199163 61816569 332298439 528014626 381499731 520457183 521591396 444821955 728454482 815255055 891223604 154296056 425012473 137157030 446574499 985226401 230397349 263831979 249168630 899771538 16990918 928535793 436727679 127553847 997553779 52091772 936794392 214578190 927633451 161448976 600477225 704291625 230266820 908284231 814995320 677877835 731396502 893982055 567706450 402027227 220609244 217879623 126933988 203650586 263278420 482086865 552477279 220022236 600581843 907100304 277727998 22958461 277121012 408795177 509974334 96134477 318937517 499713846 525572910 129538361 995612090 441837476 616233635 122203134 520200966 120052446 520973477 824339094 634648723 630211032 492147150 874240560 588520616 204742941 84449275 953886057 288167495 677300639 277211680 755418855 40651535 644730282 524346021 90816903 673143059 601399809 988555216 633968790 455602055 665312179 946654551 455649997 134505130 290978876 535093485 205940213 229532499 154953675 531638956 378337446 422115498 517001474 844727364 884452035 654630416 684372565 414467231 636405340 889659469 39162335 489116874 755126267 76917969 934610142 599016963 764219418 298932136 172346101 34974402 849894618 194591583 153969942 442836565 879813286 224396325 457750501 710264390 784959240 810950010 956678988 202489956 153491468 658702589 643104262 922825804 794180107 598953033 739806481 778610928 262361470 159264340 570896555 418803573 813210570 266963116 390750736 746462190 638446917 453370220 650356839 989365524 849618944 418909418 147821695 547364610 390378917 790694741 185121200 40902967 877959461 239713599 185074779 733964716 961397906 345638400 495929319 459227490 23432991 435562042 344246251 147384289 992016563 607609970 589756742 516465170 684482796 286165567 370963917 871916752 416948401 832116370 553878491 393747839 994662145 394898479 856028856 69375747 87795602 907825701 80225703 354458681 871963238 399084301 152522496 452887272 264656407 218089274 478767714 364634424 836184913 511544901 268333901 138739106 870546102 871988377 750698265 229469310 783052075 705616238 844390397 697888229 630058958 51451232 787093125 474509541 725669096 315439518 881231600 851348470 52415227 249646084 157853626 800145647 226017929 83815549 533080066 199417710 197948057 722711722 722584153 22278134 424600765 957587669 916300207 289172704 473650223 178375333 689421728 980420907 880626416 120399995 922430604 312186958 347212894 730940437 943972091 93339702 101442502 80582756 461771610 529275935 874626385 590714891 321723606 46534793 632183924 763653821 800399031 980546290 670723562 835476624 564240593 436195333 277891959 722737120 288791798 72819420 845888948 654688383 302963784 29913784 916134189 84538421 823896282 323935388 507121840 514998521 261404078 711545949 502395306 642285008 893048243 608874762 295248487 891362789 724171209 736458422 609181089 231457345 637984619 269410322 681447402 564511056 193213621 515013944 980444041 509290604 226904420 644340398 306054355 721023913 314298036 878490214 929470363 528082221 104437472 606850691 176699463 579552528 467836755 776041622 379491468 858724013 149007828 858253929 878455105 150535585 775485175 220149695 54855846 133310205 801535142 510315821 880013543 651626986 372488249 201133321 215669734 448850786 292649442 206520298 760227244 912403853 663804889 566478121 550964289 297853407 813639260 430141962 279063759 312102329 107133137 918402459 768821790 448504516 585571271 942387332 666222879 639862070 993946003 409486651 346494909 102955508 198002881 823050364 282682617 917898118 878033523 454356810 191276832 710253243 116535419 626554130 753562325 870282335 624085148 591965345 387930322 160366122 381209069 613172947 74168594 281767361 637687187 158969301 431384484 615844449 729035865 810698061 196358035 697346537 984936007 769480652 545850377 827408136 420672345 527614162 6063943 642557386 622075520 309848663 62932047 842645573 912461991 93868046 54032903 563290782 246259912 261520431 383380794 284752626 355878050 23798158 680905062 260304227 652237065 858971111 687125334 222938087 850179163 622305582 247472240 116879975 438541731 11417268 492065979 578127943 10710658 792063277 534424337 279657448 972901666 112717602 919030311 317492825 249914441 501661469 429871060 987933305 331267167 757014063 558303124 74228828 388071798 836950010 21817865 653280076 644908768 136536890 17782878 688333265 132941639 169392148 38308017 325239250 363725456 620432782 254882882 638790090 628666042 804150996 67561069 270096195 78026276 337770095 555167426 369778809 643018977 629388372 397549202 671408753 566986290 646581253 649178799 307626503 527727418 233526179 804455908 358334872 283053955 311341616 836036423 923194561 926284945 50789919 832359493 978783293 244870045 266228162 749428231 76193342 611956787 25774433 397900808 450419545 405810304 520117136 444200704 943594964 149901770 251507366 535720994 971749094 230718638 948599376 426427856 85907796 611992672 528552239 678327593 686942647 92947961 620728041 327629591 406517432 121560669 661379276 42119119 217154143 19804344 824218266 985191127 763531950 85361422 565295875 70220334 527000578 599356753 572548762 441643611 609822177 899273361 104123372 830105991 293728014 90994318 437557819 649170102 830568242 641326551 226461890 348046444 817930920 593387138 810426490 20876797 496863978 185375950 849597918 219780670 61172421 94392013 824640866 690236377 28285298 118434251 277791533 626236609 663530990 716727670 329339126 45171422 875995664 458436508 6415098 137046874 919239248 495397967 159180600 553231810 96533758 885935205 947837552 955173660 348376897 880165093 677039406 433739921 109859134 103777626 401991771 22656448 694291837 751629576 890030427 347641698 105985983 149022462 673235182 512533837 960793444 550088991 222167552 135528497 902910491 694395000 646190851 616665756 609388042 287601568 908182522 694195335 803956263 958545019 153589018 29269952 881159334 168739983 630728414 858151440 562084207 927197625 772578471 708534839 118476197 621589790 598913657 369075991 919101897 459813316 890304553 408227040 342166625 31669470 354336198 28437240 250323897 333089825 91302623 234187444 941675260 59016335 244871459 613540201 700181190 456980358 696507997 897019560 123358181 793868486 348586755 389013263 32982053 802004922 584649725 114831517 836018140 950186943 301073360 549721274 577745769 542594637 575302140 537682822 921453999 304071754 687373699 305387160 213368323 686704613 843689251 48281414 830969814 607327860 51130538 319496827 137046339 451905443 260646657 742002235 82504099 644014691 456254349 947236091 599618095 144706434 690536381 532449168 190438790 773157864 336760962 118836664 196026127 388602654 449949280 495781718 948404731 917342693 830629133 329450450 338681965 735313356 514557152 791697243 258110024 536290249 970988182 541834878 162817091 91587845 268866669 643367412 349105614 236181201 329338222 160729977 712599314 376621767 982236510 739300322 478005681 811978015 442329920 806659825 601242609 374665937 209223191 685057920 420568764 244558891 349698862 955219790 359698492 790999675 108950183 809852951 427656264 537189931 831332360 943824101 529322907 533834215 505066414 167255062 712215135 34508811 653183073 282997245 728416940 343125851 223605790 911415599 391051073 134131934 194816841 783841199 801829220 877503056 239327078 10442211 14942616 164347081 690772118 587462312 72421468 909594127 323261268 268099485 351080391 214693161 736136708 25174544 389888417 217062413 751908015 971188179 903254736 563776797 679019773 710660971 704932710 987360496 337906716 604223489 392041339 531181165 795266422 40416326 230928990 506039748 442043905 338146138 679104282 914201669 670103129 454119918 901697116 720979612 423673031 93576479 871256340 105966595 978436151 733565431 11921481 281028297 547042870 997945511 113132050 905814315 302849190 347479347 36825094 826067332 216553991 777808809 976937723 260480749 730303328 968293519 818708715 988435706 701591080 201693129 856540299 459211905 985681026 883818751 269106042 164934107 426261202 910550896 909790184 990622752 184117289 798022422 820010838 679768136 390133772 195272914 551965084 675651389 208734178 782080646 958529176 902532516 835332764 232735020 44432292 444485610 828815838 826527976 477871025 25956971 73768299 378603793 93033271 258238008 891047193 576545494 465458982 60295924 86983920 529686785 705884020 572341888 498647794 457520504 603002751 38167462 932372229 349466127 174000351 506091441 881491095 730319501 443569684 657839435 440491719 25623433 330327480 669781812 311661751 691803458 278573901 978191484 25258011 870094610 986267720 898042074 284977690 388639743 159438216 389685005 919904681 352793653 528831450 414096093 482904695 479104268 253591019 489282648 17292857 573870436 548283885 308834671 209602622 678733534 940663055 508721881 300111087 809372457 137149244 552548162 545236923 291079317 158734762 222816108 503678550 607342202 676027972 360931662 58686370 934649443 464176808 982080185 876092206 630437650 986026817 336889572 898664763 146140715 368894139 524250390 720252085 611943611 630893409 755265959 330337545 146254242 4330601 542015845 642468361 228133172 392174330 519213424 874344594 344047923 45558369 149182319 202721754 146924234 96099136 245847109 879907242 168714590 335235468 192433867 812983504 799556099 658677278 456632612 215921607 214577293 856317734 811925661 414291148 823631546 337776181 896441747 599799066 727960074 573239320 5803837 852553695 715147874 849311843 351872053 596683801 201677273 901584285 344034803 48246829 936305951 465866246 741076440 271239949 792263467 754997287 92753750 209211778 8757878 565349588 584227986 248958230 948034548 988396796 674294024 568314458 212079443 609929706 162339387 946079583 872946017 343518996 744370489 862661236 970522794 712054915 936290388 490276399 460178058 759145422 799877226 681572217 830640175 925528308 309714147 789031920 971773832 877744237 329517061 61990960 10497666 796367591 339115614 952609679 179292494 193621952 134855375 181394943 945382131 603138796 613050185 561385663 453712606 363109152 972629741 791866501 522017920 68642759 574116206 317478157 51026684 232911645 628432976 3334063 103139943 540813462 423397932 120798264 323601904 651142215 91450483 835296994 984543726 59212584 273835512 746100903 133523828 465618231 469219729 428718730 367895364 679486810 906768160 852095238 269410229 175971720 313575691 299140526 707851535 463622538 766657960 721370448 256224397 312196140 144289007 127375452 319609933 294827194 181583775 882704571 99380469 200528587 39699986 515283563 119245865 435187119 497684929 796818701 5193822 85292857 256554204 621268157 964860733 867622226 91031248 519399235 569610452 408534803 383289245 166599500 566819618 90031565 273675277 325233062 442874242 197759446 646057504 794019369 929850572 990909184 921932659 911353802 160428392 906632207 944780612 38263787 295116431 651861011 405072559 364632103 222937194 555233059 707365044 703032878 599852395 430872167 873767661 204941702 739305636 10169651 619378339 896117978 354917403 531420642 804435811 472741010 755509426 643224887 578664023 855743306 927009823 75922733 987008455 303830831 299219170 751372312 614370295 827477061 901102773 815812830 817576954 467154195 885352471 496895418 751166144 649584403 585400104 315742458 791004713 17539587 349858884 541420999 43092743 268882902 872798969 521402114 983219730 358867179 727572131 656530803 512290626 353631432 776271848 265230428 592112654 593049012 68473628 56040072 892503214 314310554 984515394 237165763 83498753 743920155 537384418 536162446 356022332 607543085 619726621 474691255 137620208 229185118 544749773 499627613 44576813 514323032 554135549 726117710 987429593 429321158 260099258 489526214 27156671 493239897 283244399 638573360 339570964 687469574 5185010 18673170 401224336 956547277 140957868 773481305 462887426 991247494 946872116 825905181 479148985 374257197 732686801 14016372 689733414 707240314 484674895 571521583 672069881 3718666 233936112 519660550 5553265 247297018 412915414 586354800 523574534 676640916 666728883 415307328 800043118 96441723 869840268 652029816 432907581 36401327 20187480 522048405 893469329 636453937 275682857 249485252 728435945 172058525 224767295 241685679 730581299 991286116 91394210 664725042 127184391 497524611 268872830 85137379 435725973 35484659 589286831 147177782 604035021 28194995 256523404 524441008 616099990 106405449 467979017 76509373 226303691 186535649 88314570 332967212 667843429 259214572 221885799 393779135 387531927 583355975 758920161 849057675 763348756 630941061 329663078 27506704 626929244 939111009 892246543 695308978 175267110 257696196 445136865 57137936 965454521 739289907 753623435 657248855 779307781 266322526 970321083 802350731 590395019 334384835 344202086 247405170 108254385 950777394 633761732 986771770 46572511 64452978 882932150 936947809 152201057 5208800 831856021 611866529 85303794 90869714 809145662 957998880 222455922 595609689 506227901 949491213 936582567 560749299 756609012 599719144 20956008 576483377 479690312 701591531 126554976 18322697 397226259 187591302 160819121 440300891 537306111 352028027 992670106 75692752 423606320 173912317 654327115 645405971 520866170 488789859 56878352 718735884 679155280 757399780 734720153 201205144 289197576 354733149 771730462 880979619 607842171 719588422 807401378 321158697 12116136 131287725 9490271 72583385 609959154 874973688 269846713 476810726 546909358 996022416 870474257 549736808 767270028 652059139 3702876 109980474 193715362 218961689 2226819 612069890 839059167 140936140 931063252 818551293 222587520 414562619 147475208 349252695 757165971 78626180 887865789 236458372 974017881 719721279 589619843 282920079 194411155 579062513 543578581 382421667 414236397 677892791 66623963 482797621 794386410 293698898 832305304 156627521 373177750 279421233 559760849 824795999 820468010 401747980 733731503 605613321 50459641 33834328 344099753 74008612 198240472 39640624 176579548 558242189 357943797 533583354 455590318 572296937 238117964 54438697 74714926 991422375 201343622 312494367 933589285 405026908 620100345 844673911 529572872 871700944 297343727 214988558 878080683 850793504 964723675 184895000 187629292 880321018 278738187 536844459 994685388 805222613 369690036 441969662 268988974 253368921 945051978 22577972 941684686 971893531 176209207 870994202 222233911 189023126 125684270 453278603 940585839 981657741 310082689 711540310 485060377 786495262 512982179 421084963 325439585 735740121 586126505 166171852 844312009 104593804 925841623 437007118 534530299 628266722 268532273 315654631 973435601 432726326 971528028 275830317 247818472 672231317 32252933 284005980 485080361 802198360 80437539 293531222 649624003 209434939 358644135 379910817 319655252 798413802 911965172 419171106 882090053 40977449 260988397 885555044 807864560 554869565 404080521 643075233 296173892 94822880 110778719 632176426 633860540 357061633 222799527 238486060 3634718 140708585 329750172 388073087 198211737 904176469 281386694 461139254 118277823 946114717 879919452 409209350 25026369 757082221 443952649 773146604 835230436 228190495 265116239 126929280 923207616 10766541 352045003 653951386 602479398 102122998 515041386 505355500 471093274 521213593 260027435 339233556 272386165 838983499 899589955 284440245 648853669 224569385 259098142 521722347 454436934 422984453 204201733 457043200 795674864 169610313 502665829 982689787 695112720 445740847 254329425 291198720 574987127 930887065 342166247 244664679 227975582 657548704 945448804 330611442 867513207 667061651 847896793 716961234 618389935 766926085 376963240 552606010 686348246 373969003 493409613 561205846 639097959 558879859 620839330 823020085 586006292 261697481 554778081 964869173 72295385 185177549 290349800 28653118 317679786 477795180 813373672 13406323 713338123 927183869 67472837 550720460 265585769 592489520 572211310 567271367 826132714 565970118 716774441 288070082 4902331 546146921 997139451 346073292 338443291 49865178 702198597 217070577 846759461 322420444 865281762 655348212 442780147 913573334 470367138 519672140 565229392 680756979 912768745 168527471 442849372 235733596 20316937 74423454 561226844 365001321 205611426 711363625 336368263 176044229 820695934 286011238 512101067 904163739 937136927 771139894 527321872 242163674 199747559 197296872 433800601 664303279 490801418 403056845 34866689 459187755 462713138 252347990 460714077 565519685 513626449 222676180 52891715 452223946 567701370 520845915 207418083 200663118 710730847 733688494 711418386 78140965 817724795 643784230 646658849 694283081 42056020 450574563 293743683 674372724 146142207 108469118 67935296 724871991 571402495 45707715 719844902 504043234 657532972 802304995 606888529 457569822 556622150 79775917 410776022 111106209 693289865 45394467 419176845 585850600 952648817 683833179 890724748 685900717 391930048 246947169 730804508 44139505 255455979 841205680 736580785 538413664 251408016 913244269 276123543 442207534 476206406 26745388 495957525 667151829 178056371 588496230 415085564 575477594 39383022 505818489 721044847 212332917 72905628 945581655 578323964 433747135 89434420 536232467 26822929 702361256 991537824 444240542 303431089 129122649 151268137 724514911 840503431 492449848 43517103 417468275 445529367 970701005 974756729 374799475 18628938 482817166 715420312 838712186 815474394 126405452 776581403 700561670 540206590 585056147 30882889 623451682 643946709 223952802 119567565 135874927 548240606 307221894 711625640 247633002 12581390 787297637 382498606 319679130 415523839 719081117 676724324 872046942 324619723 796723576 532036367 639219197 245278037 976137002 102128548 242527174 134778639 654202618 717965631 307650277 567586287 779638502 879853735 845907139 753570755 196191934 393767446 370986744 113705521 647828067 896772302 813131152 759957 339622313 331338240 927621824 564933008 439443731 17427667 700872432 223353717 352265980 968033162 833333129 692260448 398008683 709105071 561808464 823721236 883042012 209697879 595320831 510680555 149511442 642352746 54533091 350616250 972534185 877648920 397213837 61486141 377631295 652628116 448700707 774412913 855147174 545945834 205794445 861473489 896531072 366670377 52297611 762970944 587443929 993992292 263076323 613555705 68325675 816537770 683990018 418273380 477156266 579659371 167784559 897390917 381318749 271873573 899062205 430887344 171019304 511307039 938169925 699241423 744742483 834984665 766908218 270928680 531809767 652345402 512556117 251556481 199541316 76808029 473826645 629279730 15738613 763232595 810399063 121282129 30129473 555022039 632640541 436631546 104834147 525272429 960830668 678585882 796177144 85616813 15193548 835436836 37095846 754128842 197588663 619296408 649582315 598309928 516076131 452421576 798914032 846662483 611764416 223182050 892116627 332291235 795755317 709211281 78410391 692293147 78122115 617804053 805861902 494440088 352121024 473254777 486937449 632336426 494515162 285607807 861286314 891335733 758778001 679661621 11841218 928104129 355035763 219583415 652068757 827561881 283946271 343398565 634433595 735092117 57947033 861265248 456964434 137821824 941775848 927259356 320990026 835337222 45639909 942295941 6117539 494086198 351124355 28087140 602423477 417275906 284526568 108419863 398948434 966573735 160103144 246226281 373264494 894519091 876814280 715801361 807661551 158627412 577844736 579532909 254355940 82609476 939607461 493859019 603965906 597725190 641769490 894670167 482911116 491488670 715982302 558292120 989238387 123262246 837134034 210494155 531800856 915783308 852201039 880901413 417761879 377624109 59608446 706739922 551176863 977338213 276209264 201650764 470096412 391820187 968205280 536520635 116429648 331228867 822291780 204131214 855034203 903356846 451414175 942480081 23859 216329285 979683337 768445732 979746501 189329684 386750556 344043387 224077479 151579409 129988115 699525415 165717937 416231245 824958710 472824047 317120155 904154241 920923800 471632904 93895057 876348634 518982050 373560030 782721543 178779854 368264674 782542849 124191476 540082683 37321378 656600796 672807365 235291943 525537335 274515378 341322306 746799234 856781170 401216832 619743690 668429422 313907151 489154462 644868766 489537857 48451808 630013754 459596858 136500217 38549998 484791229 207809376 394353169 502910375 74054847 747067656 76464167 935600936 288346310 681217319 759298420 188103269 629392144 151113971 38886387 967716711 526118508 874095769 375420953 412111122 27625244 806502107 966457163 346855751 703133375 529376757 755378106 820462763 343356508 871599543 402527338 621941542 92048634 682626790 513797257 956129509 405664514 107559962 233529586 949898472 838810366 525068331 355192812 577579389 263489451 854761954 382728812 907061402 856921075 182888684 707176732 641555201 339612024 784859601 752155852 896689956 665134849 59396162 426878000 276764433 896815257 945934636 479728883 303299269 454893194 21499393 161019995 48471065 976381088 882704268 34065211 350839256 882130718 923771668 849368355 725175749 144848156 44638733 702236827 534523579 970618537 403001336 580906550 373800301 953464969 218737312 448124063 344551129 975748070 52873815 725535892 104250908 231555266 437661963 156134282 541519583 964655995 245601196 704468437 700784959 846070685 535177282 762412726 694423716 954231290 459984472 702989673 82109147 608306614 890244764 5812804 231077607 774451037 921426776 542550853 950483232 421868547 608614069 247414525 229289549 720413723 866836397 903767310 74511282 199676376 468444949 386313542 910848361 955459569 435501545 651649614 502277295 544592755 900166920 923972171 314678301 644451816 356044993 801919758 137280605 43595678 137107625 613461171 498894936 237506326 163250497 658851596 412498305 392518292 189856643 608571633 602420997 908596769 429876174 619171105 723608924 609322105 440339681 576196285 126469062 892304409 362770129 843625938 679720856 761257101 478272013 829777854 921922253 984396806 399699217 786664617 81902445 422071936 471489913 404673056 335098341 617267851 17296008 843214440 828671682 139748393 885001155 71586949 428983059 451806611 94730801 968106331 985022762 549122204 35756444 99948298 775384737 204128581 57512288 247361502 923896215 659017913 572980317 225131540 821542009 657880634 604562816 377811776 551710611 325265940 583918809 961933405 852090894 163333879 626205464 71932004 51279748 855269242 851371582 620536422 183710521 903406199 356795939 234255551 59470299 713810183 589059039 68689316 489073655 215480031 64648727 818802557 602637475 73807644 789769625 632810970 943139212 854476775 588365497 612748826 400140185 34512095 228792170 894120607 475763024 119132274 749378758 777009633 732723296 186402695 179485212 452836986 672927746 340376781 331709986 199145280 76375102 897976191 530832300 874712548 832199083 518662519 707825029 540339548 704835928 266375601 42089569 925699908 216171169 463730844 142806991 450261306 176605568 789479668 612483278 414518269 146094593 849104459 281430093 749755909 578667340 198349152 228711293 883874391 268073633 289518052 692739845 648834649 445209998 566832764 875959338 971802194 368513290 796865116 1589157 339392117 706640298 231213235 812913600 995079678 511963328 773510813 959259632 294108333 342813810 893956295 177042206 416371378 864718919 537407463 873909352 768271272 281122748 429593084 388147094 495183091 796291234 800018170 586157937 631322760 95070914 562395269 351163084 553709886 214724214 253921672 232855793 479590777 904488963 535387880 441308951 945443729 271687238 47587740 359683178 980485476 589506151 557182265 65715528 123908935 854396564 763287518 793891026 557365186 796295305 792764089 586868548 960405129 641845722 419771903 28742457 210913477 440899201 511137220 761106608 687199554 152236900 404817913 661154214 193790821 907834813 590003063 581552598 11976883 629875032 311104411 337980864 409130757 687889684 706645980 101061843 225797969 214750962 134801579 460563942 647493741 465729210 124222231 8413052 147565968 87366619 882666610 467118152 425189666 706143198 112632336 323237544 973785483 943608247 563379562 50518947 628470577 610270615 739299378 422629646 971513753 724526358 608799691 159648304 86063430 847182341 990832956 634675515 237878614 327193194 475251343 340650377 199324652 666788437 755636323 166342144 808388310 409537543 593459221 811098129 977628655 505959230 461112183 506122200 541223638 422863371 530985812 964272776 232134508 153599386 495734922 148578185 647569930 448961286 912699828 989251976 930664378 1722290 829000687 865297257 274570596 179714303 849404568 601550020 46873511 815987783 992214368 828296098 763014068 26475361 807434021 493647291 996322494 84009274 97910270 232360682 434870227 445290963 634968217 192848017 927522132 650898768 745858771 507526007 337665035 566464295 7155225 342388628 18916926 295218679 517086392 557171396 814068357 382829016 185559759 119711549 535231519 45830791 617852040 18393278 879010579 895695435 879404314 266379510 981316793 707331511 353330134 698707217 291631068 727411290 713864530 764335715 556631239 766101503 213192802 934043802 370256417 149063213 984473053 801181511 400386242 235010145 231835492 360429296 370581310 159471936 188681846 832112726 214766219 272873687 768138679 346412670 173361257 763908874 216436369 112316254 664468801 409475056 779907135 354464880 879628253 629207986 712550999 989336360 143945613 961884994 498404815 38095932 572927214 55785451 440312052 174300092 118940020 478083363 134231386 648768414 245759780 637722699 31382693 44443021 962210679 177406891 775269541 413023317 654224181 640669101 619635736 587851653 546993732 323761043 678920861 573063825 627420552 275780713 802704577 646707550 694531558 684865183 561693105 64035934 801633150 481716460 793365655 89248873 651431538 178621315 356058542 732940338 270583375 865516637 19934420 861689162 609895264 912558576 686578518 367506117 522699660 543302136 93694203 719984174 521192561 491413861 188276747 100653059 100435588 264096718 564179142 9478912 438040620 367892641 827706574 782428114 404549482 498660196 904240308 226394580 443112272 153617021 855208080 721397052 639929495 22802851 374438781 682882895 212010282 964600460 707743939 2582185 271172421 406166873 854138165 420177966 649861761 277109869 287836672 327034622 995329097 345200362 134426238 961133284 252304402 464021703 659222412 629617248 759824885 696397274 706281382 963489256 496867624 72492569 823543258 753772191 301628531 635414909 303078804 864934241 350857285 947508907 68073706 799197027 179963678 722425693 803990599 164788172 809575127 36362201 667796044 373088589 603018866 573513789 132702262 859478349 307254145 590726136 157217839 667819491 719269320 597662440 143309518 7935056 857043152 425842632 178076199 603438294 691410738 891297178 260455846 184398495 626985668 613347048 262602198 438785258 714789019 844068932 756690787 669861690 394796036 860297119 92829114 57057867 20040827 936408739 866609361 494195756 478887542 27955974 986916359 521239726 75421256 302830650 846029641 984136900 771859637 923998447 535398789 611897550 186314277 696039975 807180455 990246663 512941092 172774254 616740892 635435348 692146867 518407900 44256039 510281980 237499574 643841844 165882972 769915860 564514076 83003126 905444318 972651202 616181333 389934385 30951405 300330461 73751018 258244367 880345003 620424810 429628213 58953250 899538449 734480006 418153103 928938411 721492025 681332940 565190594 602145304 849861616 321510889 227337244 15132401 309372826 323257246 743821675 666086561 128202063 717299912 880875470 855681442 181002430 563396499 553640376 75828896 861363558 745142342 207568723 465371780 862385643 420219257 941821057 527970916 174026476 118454983 308972596 959966429 562120816 51527680 546004300 237443537 414885363 818778637 929421043 395781040 422688053 837231715 495527848 770136186 674152765 509099760 132919940 602801346 543852199 125690485 99768655 85801387 735116339 479174052 179244400 892475253 340106545 777636373 894204600 904215447 517510237 785842965 667789650 297557104 63730481 857657013 145129877 902435882 394841716 583291342 500431513 986330274 936661225 187996920 865044766 565054407 542729222 170740126 621431483 277415138 256242644 433952199 878623730 481519852 879065389 84563809 839507255 560559267 392591893 285555830 257324834 926298029 314604068 487068570 793255667 827096924 18501352 740590320 160750370 115626561 848720017 291460693 305051656 225581282 911222096 176576303 565841435 854653079 757207907 874332695 356129541 448311551 233839212 917460210 724605813 414010471 365296472 549298100 32490130 772536360 256645281 905524474 312009983 63335348 292541621 169344456 899982191 310345867 539293641 58819361 741566160 249121731 249504874 854739972 286196819 667006518 105499487 198543106 585797631 749334723 851176242 641367080 915222705 123342490 486837512 13927735 958181347 534018138 80197635 799307619 303458154 897700066 192901943 96910397 736448097 472571435 834050699 906129483 436283794 355801138 582605513 827662333 825252554 216458759 865821055 304840139 510315808 68311043 790865580 664809976 31254998 833449188 711299945 490827950 692949070 183800309 470695278 893491883 887881655 250798032 561389019 819849920 823814872 534139684 35033700 211851855 254095774 176681493 620470005 70295404 793564783 292898135 685304798 902129162 601308632 800965622 47558606 537198182 39399329 586362241 8565504 149227248 765001466 849495803 531674011 651665353 335054748 235105826 417194997 233007904 758367770 581886212 619356490 358806288 763276176 137865186 36328573 519356167 19927099 394854528 109886790 885941049 863908281 973870802 962919806 321216689 512008338 653261835 227876779 82885455 749741120 742559879 871693162 255464024 546525517 78093026 633599434 809641950 676902644 526658583 59856522 48328068 623009908 817294371 585733393 228174048 449713707 250672837 358943014 128966140 171463799 842260659 678411021 777129638 40770579 400985659 746747573 266472623 542973291 653381049 135202633 635439424 668296841 124657737 77509811 153200411 580121702 845499565 517630265 969981511 498655901 284401594 884052701 132563099 971747510 394156445 75022123 756318340 916640075 707380248 517980303 699627934 474900289 866762501 493645986 116639851 364249250 987396521 90099727 58866092 193582159 100960286 974428982 805922990 990891685 642781690 483291235 481114120 880938608 349911372 873844552 883885932 920823724 822290942 59371229 561146491 64216849 782186226 692991661 9460520 140933601 825436182 680162711 687359156 260557216 71548226 337087732 599754052 214783179 284062072 503491411 141690761 434275465 824461449 66203018 662767302 734540956 869242736 903448898 995970862 295852060 147850959 685994365 648141557 505209624 438008198 384847750 282912535 731664701 612781582 451974274 694137863 201561589 859670339 814610528 238435159 941166624 681488197 291367987 910237642 218481088 183782465 871599422 943739445 287873582 68068515 137789276 538943434 286308170 139007366 150270509 29634880 887537644 151999042 52367878 33194982 529937233 678805961 561879581 843169553 221077258 311313526 477156761 964615915 751189482 243856448 180703385 542431348 465895016 597250522 142745128 129562027 975320470 142674544 945969117 575398081 588720790 11425471 649048829 893216497 893608292 224707565 75592660 17851237 853238024 263230386 403381189 566470569 149633176 527236175 149100571 374993508 28302430 519779548 411427002 973194937 106371400 724635663 3690187 510116190 23994637 620740339 373876214 47796361 566646999 577347709 151076737 531179480 454001905 816438471 800974543 799030690 887129688 138183279 151922044 921584582 115584425 13128659 173155902 354229967 722003255 328558862 340018200 185133104 646140282 815223504 4009023 41832553 553933255 631053604 132644347 40729863 120069299 953436705 912013427 658059372 73415281 648835488 751951790 773821723 776605279 753814625 192511181 821026279 985089841 746630199 154231508 847450552 972428339 20255335 810914958 971339356 941519562 681784728 35681171 187735383 882531861 446811418 386974108 472810891 36914581 674379469 940200299 216857020 167425900 78324928 613408161 145191140 522954224 279313395 365163136 724227488 591764150 988910955 462309134 739030023 348970029 690385047 529893444 768135641 813637350 351818374 482799658 336112768 692374208 284701855 558427422 622837352 526722388 677948620 545968908 479645577 276858514 317742715 528682273 586076426 299211281 980715483 928114653 412179024 103647923 832855500 823926322 222238898 151626190 473203746 711823638 399166855 761439893 95940714 375205381 115995890 819827135 420552013 155197765 271311123 704632438 614493126 835332438 793280344 742944300 269259617 890181611 261739938 613033146 853184701 706764665 953871261 696389635 320996584 341755001 44762311 221235787 369758392 314237487 673503370 623710868 268707246 965431133 229197847 988053578 556027145 484806151 168591108 738648784 984502244 552266271 293922800 393968482 316194057 26852261 708710084 71961452 946325746 467449557 323535341 182517342 326809340 76394624 62578437 92459613 835158601 243539404 132376947 183834907 775935237 354329146 975247276 342384608 212610813 388945497 406235739 633484905 285713020 534587645 791912169 542370983 669144848 479737360 693261669 252852762 304860113 153888871 341316497 782254807 438948200 292424533 558983359 929717366 786498528 892597553 487177325 582393276 47856086 841390304 275599526 746322426 555544056 485278933 69169936 335285271 822667910 662175743 184718359 381595044 644900984 920254259 304022593 97852996 726095113 878454776 727230271 230289901 474944962 66446229 925711794 40759781 395745676 779760622 947767960 378027443 515844064 479988568 157378247 920636892 339982490 101764688 118053944 406804908 607117165 949352289 892106113 453078458 315702508 322790513 589248328 930173981 176086932 763495698 510737360 664996009 64364949 11348101 567495245 622044426 307383720 24098566 332575236 728874920 727214630 80738223 128056601 511485350 103635855 458603356 182989663 120747521 71516102 446445245 150397596 131584039 268014179 217319789 983153699 190427151 274805298 869706548 194936157 424263137 752511211 492982384 774881322 352358868 662205319 274081800 768211679 358219464 579697416 170031647 100465046 677341335 796200821 642943066 746506328 557951408 971559281 905410174 882978692 227054464 278819756 861001926 959574640 962438226 948779932 589658495 414613588 922207495 442840404 676680410 748876097 978494828 828424609 880096931 420198869 161144339 313838412 398016354 693701631 874559254 985320455 119144420 373600705 498600037 411261317 538000450 897976463 914322491 723091501 310853877 441922059 538970306 537770230 939726063 850314229 519761808 673475053 851238515 762658839 997325751 886631104 34403167 173186032 774856400 780047129 801919809 577523433 296834698 43815814 47480107 347894757 156983235 254552651 194878340 685967542 777833678 578051491 354647217 864021001 107889310 908634218 582438368 399268574 95176291 620565634 460352431 565256363 162730392 930205811 772925169 814011378 2240268 631987528 361827248 224670555 380390186 547159364 240416727 745876331 706783255 287662268 222522418 124060821 735985043 233822253 746624332 166069440 758174008 356399735 661838115 250335643 76205888 938563669 713858435 955383069 354336357 414363974 654833075 616264822 775661603 481553664 393213493 191483167 472905911 395542851 544177007 290541562 946479986 323450615 105317416 133053201 666491685 259973622 17474898 302733599 520227482 191690651 788744766 514553606 993619597 197382021 384410316 281198481 61002350 512858557 90607793 58127812 246815835 851517966 670155966 910118040 878266863 282647413 808638583 589466713 685436819 73538390 615692518 920566861 226507364 212429434 174440294 208279761 686314864 575509422 786903158 757531272 589917819 478202191 915194888 672238523 88990010 919954383 609949929 319822395 918428178 983855750 260197895 895453493 489114608 332443455 517923396 840395818 394389234 241045323 561955909 199226194 285232231 787206586 889168639 933198243 655041961 688183675 921455279 562572470 70968645 34803544 368675753 885539820 586690484 916497059 213526240 18553493 669538499 331188010 99976623 812208091 10487181 369374300 39042731 1259574 223075801 292017648 877233316 876791853 804076992 172506925 352920894 940931254 403831809 441219847 243213644 695022703 782193718 660709552 727364592 64614155 457207356 640889475 816373493 672199169 764904555 618571866 337995468 227046516 901159808 161777904 930051934 229452761 722403166 916545023 740041670 266034588 389322106 439831723 897699879 292741463 247685625 296656678 149292030 502985135 872744418 857233040 159337718 249973431 205265125 889105738 392126617 110313999 964624818 674816076 910385406 371863476 387173157 528327730 879247163 923702346 704098389 27163071 895996217 68374297 850041199 675319773 946186140 333232847 389525779 570517020 134941971 363756684 670272513 948813786 726999602 739649092 31771270 763247484 171593518 310512223 9674967 454254914 601728687 184936560 610389520 201850004 97009198 970784144 378508078 641098730 980063362 174204190 484282140 603234602 742404478 205523731 129556135 338525234 605835716 136115090 887549287 925653585 87334760 19444044 257085015 622617293 505585096 14246415 683265943 699897319 530121906 803094584 570578359 186205130 775258498 678351187 182389496 98383387 925791499 202486761 528494987 151263283 234678404 417450942 717056499 25733790 830752621 897380285 8326536 393860018 189279718 226255064 91922245 975704539 664727329 278975153 572869386 501105010 242165917 212398401 381608862 522083802 709165090 730055784 602812080 382351714 10714719 19798481 591426712 716883815 161778934 278014797 727500434 125299788 356279085 629740341 950567498 525179827 543766110 180180702 15798140 695284940 21558588 399785664 39252184 311681318 98192686 919399668 898531143 66886487 306117513 621180918 483582807 624235614 241657697 130706863 936206835 492250613 754491792 873274294 219161301 843101139 810729197 951017507 765574103 730343148 553151019 688883738 160455671 601840931 318351770 403480790 288848885 468480659 229400242 377322133 834925198 493931050 112118187 571750231 29466586 48002256 239186344 306654336 302020001 490463814 981907918 273404414 552163372 334941664 539216926 601083588 771048999 106523223 468759823 131961959 180587940 634653220 947934859 973017277 609857654 949766246 576962411 470457816 923213242 232212627 644826083 581502471 199591053 898881775 88574275 224935075 43772183 625111879 221581936 382857579 389852446 738007805 589840585 431871695 334695318 424226348 123957712 114509520 385659702 354143096 867056831 524257099 506836902 868741792 175911320 205059418 338684790 291602767 525387945 782386763 342489714 127173464 524847731 763437321 1660003 960637109 32858958 298451317 153367098 271419062 734198465 745690796 863189729 314961208 813424208 711431495 351285950 276385677 215675356 501178393 416314842 590777768 77346988 325148784 870604057 9004769 450567354 434989317 241937657 313224510 431189754 935825563 11038733 316284628 540910675 551460203 426095332 460953241 693420675 387367856 5968977 876519874 599919018 804593116 835957311 231026304 352124080 205116153 868776556 609453334 820064662 962284215 729521152 621212053 817628775 230598607 252289989 566708957 81623640 615724054 273163005 316568837 934862765 348796219 73925174 598982175 179720070 160461201 777422220 119919446 580337804 627611525 533190726 435044488 137998496 756228815 123687447 625179257 749623819 825275498 429626275 329865214 298617715 939674441 797833162 967509586 791353431 859572047 458596473 564415425 150420901 56449506 724637174 943713104 344181086 714814667 626447891 929090206 422217945 114524736 509779248 96405067 427273056 678186209 238150223 989209858 288594187 751790948 572860381 231606796 910935883 151633783 118620172 133307661 765092973 705404874 383273950 416354296 9422233 673838410 526029250 478637763 228555339 423820455 7503072 316597748 955913357 62963367 56016771 578469278 180681102 950826929 564627106 435588781 333568565 484750601 115743547 192032033 954073988 660880630 704661861 687087622 393467960 969019212 425274165 652312074 372144740 397075907 338495223 840956249 783836942 804706479 303559399 932854878 421338220 449347289 355225380 685369735 545925181 745942393 531305900 706188693 358211761 159430981 59142461 535362456 79024843 281376136 517797091 238231434 937439442 391475410 366427075 464233251 297881128 747524865 537375858 9818925 863680792 922489355 745812326 194927866 963010158 551167874 531892182 295814734 717700519 343443794 690235346 633520956 440575904 258561260 159942853 695073985 29389927 544337538 538926308 450669170 690288398 759567240 878486313 442770227 369935919 595831543 572304524 419319831 590378002 771705425 739044776 817013026 302875707 502651660 961286466 920712727 395339297 224782373 399275702 628239460 529652527 628379219 400615031 928098521 599848340 69189519 440224020 835082181 242469705 775281874 114628802 818553397 781930079 374409388 598950011 267972898 155648573 675757431 40641181 858351287 53507358 90363060 619535100 758703581 221154625 56304733 366694400 932476475 948333811 112676369 943321597 953446132 281005230 362487545 247298738 124821656 523806119 889148596 565489087 294378012 275067155 918278738 562137522 177453542 211478043 380091157 449900326 207413001 115320707 169124895 788064433 730960206 383060993 792342121 721153241 261038940 34003761 203568599 946510579 899777731 173781898 134529000 167176038 342576903 614502138 175013473 485341667 183054076 596631424 809740630 966418562 295449174 690492717 141993309 189295459 889515451 511640804 644991055 59986370 365151188 989311396 356167539 172337384 553597128 3368693 480395026 6011475 926324434 522164690 470323681 739845843 293101937 640834495 343005192 22991256 490759388 246098188 538671282 125368694 982387604 448738921 766828683 926218806 827469092 655791403 219134687 946510924 265438920 154981428 319716919 859066779 63372705 129061379 951104780 156662212 425394464 618206075 492654496 81368202 49726308 49653603 115018448 951489301 564674377 24802041 370605696 781037476 499988856 253495737 754470648 908097704 379461161 973787968 899564965 533068063 548679269 792109200 243368896 627597667 429987259 476740116 626945193 995239486 343483991 869822872 80134217 374302641 759929759 368319864 588475438 771266834 332918334 189072980 554871421 319065926 19174869 114722637 282547893 935470382 194648910 736363075 829819564 934428989 720665291 974355785 439062921 312583618 460725622 383479760 652212021 52760606 244122732 519056186 643732286 479746721 140981210 467629098 300059027 965415515 14257533 993128017 303250433 659980935 338412771 203578033 773599960 344366698 294321223 723124308 841418441 500686091 687209648 686344900 525267178 348722745 564835833 661483904 901452446 821054422 732340479 297844781 346430986 898754439 125361630 906705314 934863142 393926944 631599731 700656681 578183964 776368598 812048004 523455826 378041730 549455683 813474999 865204944 340958274 779457582 777972583 193298564 708689058 119385368 97731411 978548057 814841903 831023344 517401319 704073937 415007398 546002230 850159405 322620870 228533168 596623314 984475170 118841893 428887400 308941895 677042514 820697808 217378699 773203415 375172485 940474969 249025572 664659486 805130083 401429355 991398914 922042468 459996128 262566135 815829459 316618844 846586806 972652364 442678927 157197523 646871338 60659507 787780875 19746837 817265271 652314659 169075165 957093135 477294248 107743797 697053883 732598131 810437408 866256030 259865766 515705613 860207076 779527132 638825904 56905521 450120029 17078802 546798346 780818395 718176220 490724712 395392183 950710957 376867800 35623489 222300229 735838200 561938323 450085367 459866098 339349039 603272792 703943013 468578442 220875619 137947734 135928526 960725311 492248279 834271695 79997204 476260398 726214286 61598779 312310675 581501134 335658751 657842143 546837185 596473202 164704810 581961137 251469161 174634625 377446180 852501014 31079677 527650179 590926594 946996727 426893422 109871467 279584111 626587186 371477636 272213210 507109245 336989847 283463207 530709894 769291608 879896458 686977051 563456480 460818659 779209609 74389403 341457593 402462969 22000246 176837804 639695995 9129022 320222336 178402028 268899759 27851416 677031980 372826956 928423814 260895902 667573910 45475850 705190027 840779392 763681155 865595583 229832121 759634556 56623407 726671377 36530051 21354062 337514661 992916814 427983357 609363584 588994285 185503812 507746324 19569772 590742523 333334637 890253165 682471642 690187624 294140736 484396392 427113941 723714231 131684880 925982612 820701584 594585554 709870493 275876664 91511921 224691841 540996927 45500328 583566475 826675995 480497925 875238496 92987911 450232579 518498610 362758761 774393453 831096809 598734941 229970733 720956447 740090160 980883272 349466408 662110647 557296960 512213325 670270568 535230298 550181184 454619229 99465762 737671407 265922006 232370411 180922054 538501139 434542918 851515188 894752715 553435331 853454411 184386609 401790444 983274902 944095292 148504845 332570451 1315547 716380066 331622229 254554535 473646070 179403079 403184402 873442146 67660978 418344188 199690688 304799711 240680051 19356224 809053508 637548237 37576059 154973790 209547716 42698778 507168394 342861217 737007085 32631759 610976466 215474841 562357311 552062144 186182616 523347708 862732667 274600420 320791831 579486412 30500339 712683373 856059769 130039769 498956897 553803169 920424968 762041449 954660106 47753821 512151832 860862053 66206785 275276747 648930982 160615756 522740266 899469593 943952534 137316731 458438446 506576188 576960859 163988037 129239142 949808891 719332577 118893005 892509535 192720034 87054373 564324590 5697375 418310845 637549534 299412827 299414699 271758500 365933897 134557313 94089123 745458774 220444078 76497206 41553060 886494197 945418378 960614946 890117165 11693574 635932770 554786943 602029984 954538454 766061524 301613144 822385185 786493272 861901608 733755775 349145515 228254738 911314912 620950169 406121974 913873026 928799799 744369635 671617011 729973416 596558031 113795965 529357507 532408565 498094307 616052064 917996644 784212363 597121294 406069925 12003315 457714192 200229749 274491271 72955054 15840078 352083858 387374904 127142775 196132105 7088403 593987369 307165639 58003751 437574390 634885161 635147140 331041147 448419880 821780328 9992896 103595187 374203481 364488828 215086695 190262196 819770837 943819550 889229281 887295292 350570932 954541330 59668471 876543039 744541357 96412455 764805988 694462738 283506898 850022309 489703489 852034865 947942044 158003224 241382318 715241755 754242239 884004576 628754083 625254264 263133911 554557581 426947508 929074803 469991972 719882648 138253704 445252416 576156888 295169709 652672088 464428782 553178483 269312661 405276987 804371807 175279459 178009555 982259720 979130291 745210569 802011523 132467064 346074924 624174036 411083040 215192679 702224031 510949294 262188889 504229230 201661301 677484499 670634799 949905589 230975197 59564874 427753282 793409811 498986640 307609782 335404142 707989316 397645030 316423854 515496681 553106161 970653707 616053627 125093032 623179282 528313249 636932814 812949850 201796620 853734579 967713713 829262869 253724057 367235938 796254570 766901001 233691475 978945775 150891338 932989334 145128113 125431713 929903366 149372973 267482547 476088721 949541924 837773978 936201348 966497002 8045168 897205310 378318062 297764477 983814156 139584846 919504586 812668734 145817120 155939174 26572711 568509935 55688546 722990010 18724688 205625082 345743729 57259158 777010489 220673896 255661468 830749310 690675588 41898836 631473364 287868650 408286001 380849836 629788277 788744347 135585804 19218561 675376460 325860397 296418884 595358622 172524514 300538085 729256864 966186232 389011814 37475501 574907750 320017039 232287007 417952584 199411835 444940282 203477257 439701791 86967513 495499699 605447113 474060695 171418910 292281887 474086988 348261437 859239058 839090902 425807421 454870536 650962393 936330325 143982921 163476195 243540510 154892107 351783850 822837277 774852347 270165992 302201085 790486378 587127707 956979762 996501574 874530573 308980928 657166259 961278212 716712690 28274711 870729003 25667553 430274730 557657322 432866062 977458706 783896388 904191264 104042714 575936451 787986549 567117130 592925288 418984422 109452920 183875591 23180743 97157967 720962842 566301045 94428846 505711508 6471717 745080463 552559904 685506469 564691800 868231603 354193795 865327364 476813066 631831328 611096540 843077835 818801048 466603427 206356775 110765971 884920058 334867645 799361967 405113645 220060080 474957614 303089690 236354031 26846163 536787192 447392620 30845738 96565435 569707712 363150307 61348489 480916719 215644350 696400811 40936521 713570999 810677531 497964541 704932381 212784231 941212090 891615037 870376970 383799607 929577704 289892463 934367281 223568203 701054348 507400390 302013540 261962318 960459131 195835946 351585563 746310703 293952565 627984042 992711626 845800693 499443836 779209063 841156198 438223413 884040039 290036476 58050289 20460946 608188241 227734978 783817217 551874531 402228746 650364067 922654483 379518147 875556525 304153434 130744566 805791105 599869434 197589756 855837275 332802786 496401178 930800945 864563591 609160301 434039101 249495890 570047591 627035045 444339100 17596820 690274553 669405062 801005618 796054790 748233472 643097985 576609626 140278920 114656646 209896504 336721048 346385271 7204577 674807909 763381821 856436777 605721750 111190740 856888603 645867400 664331923 365938778 110933421 194993363 844621745 742541782 830636629 542025738 60553480 916358959 129989949 355420966 968130757 224634951 943258837 79886639 914979407 34558121 43609566 965887096 783444695 537955569 584330338 613720916 760220306 873038873 554855589 347519015 93867636 195668206 458149529 937256125 303472879 756847998 357313111 705457537 54090274 603181313 214054558 61714440 659704572 114699262 572960645 989186496 499927103 326118101 302035880 162921454 312434344 431230741 120895758 702529697 508108246 806138306 647399698 390810391 215286652 971973159 535046111 948607675 660342647 838801506 653260597 373870995 538318311 502381388 433699785 918882526 794012800 700106201 470895428 423617894 822551681 50525252 561381061 627799306 873734587 145286647 812192599 928878422 857117431 345750772 909401951 257784373 448215041 473007994 223486963 448947639 220660224 812845868 607708992 512031964 406256068 856239577 867097994 7384360 932208862 707478778 686687177 394994682 890335310 440495835 198102074 633727675 479293449 699312570 550865046 43218155 361485607 124347411 725067532 134181531 926641206 797908797 406026242 39961645 800648043 436413527 254678496 840807771 201576152 912096197 485064870 163358681 362346223 688464767 34229895 297888054 191268405 257949983 368449729 660376183 522713149 977999842 446240247 594051480 786891497 962468726 346169117 648050423 782608530 443342651 182912805 272916219 262880544 315251899 148468962 557335866 741518748 264328255 510982312 472908830 32966895 578684781 768107620 195888041 609683182 700109398 340190096 458229253 319704257 928051861 555835806 901444931 816432145 465205448 586065799 943610126 391722302 553348047 943444909 905417166 371156632 579187878 174248127 226413168 50702893 190730101 593799085 65452566 444660449 843478105 380716345 457439530 706912480 49107073 125730142 421714450 938159792 616093810 430549046 713073522 979410742 361493286 465034274 785541693 653787319 929822159 788106431 95772440 729013330 755992831 930192312 245177068 642290884 392241110 255954055 286984230 676518706 71214945 560684248 162135618 337778995 21263521 376776693 861987818 662158194 704322117 488442395 93197157 86885554 939602962 510358622 521897072 213774945 650761102 103259169 294025429 934546541 936500744 412489141 864387958 840900040 561335237 980258033 822134477 587285098 603142976 815768584 349103258 427276272 496643577 323500548 554682057 53418738 514220519 79818545 324264673 889309982 293705723 927602484 659689235 423870901 786446 612394481 809112864 188570470 579444799 743550557 566640320 37278534 408455888 887438775 831212389 303021328 758917630 340299690 164384354 689157742 124269058 986437307 370326919 647688520 930851707 724861982 635558624 442604007 24824909 517562016 205547414 907043859 877778168 28816340 996892767 388481837 304140012 525931455 351625654 451733214 343134808 586286264 114466814 601861420 833391437 688732228 457485144 40521720 224594769 443840356 717651862 652856078 573507568 450843444 14622989 805015365 572009597 314243711 361737209 839200168 915860299 424638701 87880777 23518301 147199893 461627296 63926535 967666685 794096648 842585285 908130610 840718535 126354269 605617994 953998934 675414599 123157414 422129819 583471669 89795895 447923617 89731108 26959518 352395513 417083922 703548034 787114238 897094277 740692518 486504470 872304856 45335722 51351043 530631632 839698294 804835508 445939658 830148915 255313204 323126956 494577960 970089981 816498459 496669577 99050805 667366815 30892519 686398098 413003019 209561643 740753919 837697346 944670861 995577513 382409545 45490643 510771289 160125298 457347673 651182340 844228897 223491054 753678304 709402448 432749053 413898751 910540271 453215120 76993695 914678119 245315595 19865653 816324836 835433109 854895738 954383935 3425917 328394761 195193363 73376634 612270377 670285818 471939227 692735260 454826439 6449240 601694084 914983734 480869915 202825447 659410898 921418757 181330361 167887383 766238657 373322953 460315307 955646626 294935709 323943647 921354488 119146630 277492004 14245651 103125675 42146548 85697992 436880120 417207855 591986670 281983135 187915930 632239786 440876352 851852533 54763369 136926805 179385799 496406860 943879419 186977053 464271880 705579410 145889620 389307536 318439030 320151128 469748275 240578044 965470637 836633196 859646979 406776978 168033749 286088948 235339798 575934643 125257884 437520109 410823605 166282790 547725961 393475941 598144907 423016138 185364838 913964825 277418137 452286763 732673523 852458670 24064718 146202758 111283024 574113961 942567778 887938147 942623686 136836190 384955807 825852949 361585610 500495158 42079761 70525746 926571123 574725854 539367923 116569632 686292243 767408345 547274476 695170779 152225639 520339890 474606801 331983012 853567092 322704657 562049534 200733306 644060091 694839508 714965247 306379005 817716732 884104696 935007560 178287644 477866688 647986624 759675980 936038311 632911620 672497343 187060489 867807121 158431704 369659188 799284215 801532435 335534305 730030234 614171657 465861182 229309077 436190513 650435929 3775243 882108477 70901891 842347042 626299639 519043895 273368547 290007616 441033415 170718396 633308148 384475589 732600927 945890316 657935291 444197122 460232175 233900475 428786526 383109681 812993214 58220561 127931753 594258171 914339850 888891981 343805360 352992400 328942624 905417444 457079169 64245414 590719184 678799151 517860831 254882033 772253506 177675187 279993540 456098602 15432608 176872009 777553972 467502634 913076639 165044417 752022069 436459027 182131514 290324909 868027759 335032364 570659140 490825813 636492017 506456290 978385200 467553602 59096909 844375895 765692683 938750734 787079548 789338870 700275936 268465060 47176590 504962456 717556822 883132840 991879332 401959946 710393509 835494910 440939681 360616148 603458803 407107948 190669433 407801875 747068901 214610821 690671175 145691543 924204077 98377736 453550033 831189623 338449809 965783027 510907812 21816045 351490223 731341034 298982046 752690071 124083433 321856888 459405728 340608013 835128406 653087916 393248285 795028764 33251625 389013207 545980579 283708420 683203896 987469066 991967067 10392840 614244744 67529759 136159514 671858308 829852157 488153483 92044215 489070409 993720393 972209240 920942538 206381646 78800195 333506841 107724662 771314529 317399428 562603886 178099011 554412310 941758912 331292459 206939831 420511356 953764751 431007677 749270237 486073238 562239814 897588933 479976558 707199407 247657165 152124230 727017108 203414156 302312209 924595944 816821701 563792712 571331732 954693306 972308909 442098430 260377752 314485004 938503512 531338900 227500676 234159215 646962972 352875622 861365373 951287582 232272768 562950247 658302790 75745438 655043915 930684409 572405625 243481148 541281116 644663928 470388399 307246726 307674281 910693370 493598932 54579511 155734328 980387154 856844566 734667165 53219253 412442270 459633774 718389944 357483591 702000521 715573762 712561212 326302029 551740228 882322926 635080985 196549403 52273955 308248290 517985259 502223035 969934211 110533565 925889676 961853719 359598936 711906718 960029404 318839393 651969032 441505214 547330956 57992097 42027050 487950036 832403971 777588789 118848649 118764442 871874851 282430034 877761065 604035953 474021668 798447540 570505625 890233082 937121325 638742615 773539742 135483702 810941486 57578706 375658451 377807709 727644170 314342427 996798835 360172427 199981910 102672859 622830813 207822774 940515181 678156445 166732224 737911272 619017714 495239719 447683087 735486327 796704612 105149195 252868661 241067717 55632701 935006430 929714692 556313165 271375324 688137403 748703356 953949207 783486533 970808665 522978624 509206347 513672749 234918812 622734882 732974948 749877300 108752282 571143962 572487308 73823806 852790134 90309689 73784068 419547740 414785085 662476829 103360589 438796618 300461184 224905982 388918271 850929372 697371894 337430797 582180398 109444575 545611388 71883893 562204011 259325630 606069489 86169320 986611120 346876239 86792133 942555 947170805 122839228 974005493 443012582 818509541 403416408 971908851 96011750 667407678 822042557 370281976 75381834 756253483 17984729 74481630 201202985 413055381 365268854 10025073 942070633 473928104 213839769 19161401 242063191 902283618 694429070 513715904 257294873 7943408 429423838 786256813 896785155 741218282 993650707 303183565 585080144 159671399 772710758 21728132 246175333 728624414 656862616 484807564 513721938 322451175 285305401 247267065 710495954 759222704 7696509 320352008 217514431 823468316 679804855 912950028 985929263 189762052 734184845 228444510 63857007 73916268 126007503 764125061 364414889 767417605 465906792 210079233 699998154 858457171 120111578 138934370 80914676 556974565 869994203 125540785 832275571 351209465 891105457 890711734 515550937 337037705 412622970 742296991 98322133 510191545 366926136 951779423 153154801 972406387 931876711 14435551 653030192 144916463 568237230 448349213 795990122 553927867 408592762 137254666 473258649 386878940 15451609 38321205 526947802 24321304 30715027 100398626 745793204 46097497 795711530 814979203 898678380 396548840 69878475 743320976 555024784 971800078 993205140 762908289 685083546 409713862 797856337 789020985 763477803 736727024 910415911 843935008 971370635 664578268 9740604 831190345 184125692 313941374 725792509 763305186 554686594 441802471 927898536 257211830 367127839 348033143 524988718 483428783 38198431 506694579 606750328 19832123 177338352 49088766 657261250 591872711 790785638 874979351 583696135 420353687 209492022 383252231 743743888 560579286 260819045 551973103 245184582 423124138 225504230 781636123 543589316 386941626 306783156 839332659 862675421 510249290 733063591 766113814 114115700 875276762 600771581 880432803 351346131 992367583 738259816 252194988 625196252 565847244 782209487 220181008 434569220 284874574 89944606 585617925 436231088 615135452 429362713 787759645 351676905 706856810 681969820 95532258 823995279 806931672 357701255 708528963 83955055 94584314 128130267 656629810 561153345 376186870 140541553 139907777 704429463 300346538 533777140 943583148 790594450 394751399 209333108 680065040 554195880 272629678 311422885 548388168 208648654 782608444 574282465 39052758 98702917 839640935 730341232 160255033 984374285 530109264 694588621 319167768 218532195 994039645 601724807 876285489 627636787 328055685 474060884 600945596 174915028 965098680 173354930 715414888 772766514 409771824 291139259 225085762 949460396 829978902 867776077 245833852 652748873 552999803 505278696 266583562 516396027 329960153 222822765 319156458 839432566 558786914 387123713 741327013 332990078 522295452 756310802 720480163 269360301 179623814 125917461 82879920 446546523 388210996 132027144 708267808 574418460 78658366 171416622 931834731 208431594 711471956 539602106 343329424 258984371 440354690 193295141 891372079 77872477 670566628 965865280 214437451 897079063 404899424 270094407 571082589 560441451 208431097 125392593 422572413 810480994 732649086 511617765 571708906 789552829 776115603 839418785 843933270 528937183 104907649 596445811 38634160 748864724 686387436 571899775 544658290 293766117 706763089 970037611 784894199 932023855 861576989 182131586 35107179 588848705 479968610 73788904 820591467 384421744 675952942 297000152 956837584 700574240 459636695 762663225 787803378 675085995 146725524 607307789 612347155 865870390 28453401 325940664 79811986 967420776 439790797 198106177 767863014 668024359 539480446 19951675 209261733 941198683 4633854 807653034 997524663 699108839 136577722 356093734 316552697 183430649 260287425 711881313 682306868 748530337 993538516 354477960 504303591 89170436 520215357 987044401 688940563 325583897 650357828 465035552 190231259 858158015 207617148 944988706 715705590 83594392 742417442 226764151 448158128 757999497 895012087 104110673 189157745 741149485 508762164 853783389 411506792 819051154 951804854 614457466 936261508 769270375 321917346 281378709 658494320 263592748 7738339 143377256 666377779 351273032 401189263 412845506 50890652 538071750 148510332 395557053 857540959 747203472 147800085 880955537 417762099 26383067 967388014 380478865 729483025 39132479 630179003 170999990 175147536 733739147 925793141 503556342 762766282 985928756 474975903 476716864 889593735 553975884 674542622 832702172 944984860 90045720 112546997 675908862 535146534 294827640 651419602 553460604 467063051 503922969 103682536 460381836 849843483 393834443 596748373 657812162 588893169 291197851 791517036 749236950 426652442 304672329 30444243 595946254 675432018 574058797 465855517 460494833 264987846 357940055 515623288 435452507 249344416 714381142 319171423 661722706 16162861 820276827 617361096 578553212 213920226 226015805 655237151 168642199 260876950 377875909 553662212 764578468 369351728 205138887 66809858 256896861 400248794 307376293 189851179 680106550 202519844 144800284 774608441 393635936 402612381 418187597 324830225 86801575 239540532 782105417 755583519 552086847 174575216 285875660 826696453 404009667 143192875 380046705 946974565 317705839 506401924 733147300 921655067 874855570 893266343 915489805 502908878 577281674 190635950 148918128 166255785 218653200 3270291 285247116 82705422 217942622 874686253 859063897 273085029 189792059 527768905 762405992 397769822 743823736 539801638 767580089 925465631 856352884 397665400 667163263 599095177 968088313 111146218 10371047 546834607 753850479 118000156 89233363 56078523 223558824 686193361 399806537 804462655 238651420 614179687 657545472 549276653 151539844 811673547 582476128 647324321 109940961 938442958 141174633 944130331 210948896 243558721 762602963 108580308 465003263 798615982 398498525 147129786 346443561 774209709 943140986 266125528 961712492 747197492 211220768 658084657 882362931 289676232 138132757 95666104 256837786 711389480 214277361 520457089 594943827 778923982 20634551 780460773 66898603 802885982 253093314 584288744 470598485 904732188 487561582 839727617 559448463 807220095 95533253 560046054 85770101 965441327 445518789 709153871 749219757 459471162 235099393 509341491 776764396 761254672 833429682 353753375 45120761 250290183 153938586 819253840 700816577 655945663 634175818 661650555 717597108 678857334 931227185 241890062 738381824 731937765 623444861 325519724 482872969 757925745 429426087 55637610 578771530 417803185 592736783 52879284 12909696 697616267 339878238 876719788 378785647 903052392 189692412 952735290 637505295 403892116 276506797 44470680 987065700 553436226 810909110 605627695 909508482 869121006 113433565 229518086 301722487 147320852 29142437 729400474 180198631 697143782 87133154 583307018 771380114 40108813 722000898 399467091 17693942 399668529 805521536 815375407 161877682 564179255 940239940 586680008 718714606 835230484 461485979 293578384 58695606 547717818 18644221 772378235 813829736 287345817 384581001 546325283 699232913 596335921 250555080 608235183 678315383 816325953 455978711 330551966 335369081 63976516 376931347 11668933 940045265 158300280 422769496 578454371 597842125 526946120 879992659 333461394 99009921 242658541 881716899 888843230 833148127 779149232 382875592 374817024 436794026 647360806 915310468 715198302 887031391 996139077 876775232 565427692 14096596 835152063 225245110 310613808 855100176 706943593 840779639 549947093 184558389 686341269 298724698 168008260 830637946 107795070 212219820 433128861 607708408 183246939 719219812 170438020 722286000 132256942 711213767 341300396 757896479 21876261 102596738 42785687 166436494 697760472 465577924 302441315 394350631 252831141 438419063 521409202 109440980 918681827 525355396 92713984 143539914 879122691 498583502 165956679 691071646 504927007 868298184 120504809 988940494 763523470 294935214 57130216 465365465 175529241 691285145 68302568 28245830 119613085 168370865 872840862 927481933 807799890 857081636 328216617 181350774 720298429 573407085 625075677 848728354 355728078 15593824 776375987 452898371 390599493 42533235 388300110 845949760 166732140 949131325 844726796 474649276 984272607 417333302 468585517 215326917 609521739 543833450 346530959 651020701 905740974 842857111 960202236 654914095 58762746 275595057 244371737 436117440 42097190 792951953 940007565 743842254 982753655 135369019 256737358 684334774 679537342 403402932 954912106 831374662 474190322 688394479 716081686 815962624 271705776 305626060 812414976 539095359 354050842 307020475 45896900 548104472 850715419 203430592 490901650 287937091 764180708 787913174 38527447 956060967 78426920 163522038 41866187 823619367 909949064 820364951 995396656 155195580 94450636 784123640 172301881 890277422 454048363 876010647 182722031 380541044 12685046 687287968 500303313 857356655 727398277 301904030 436712646 29898622 699461444 519067019 391292162 936678652 582734206 917034425 617358621 628914839 799142564 740829365 91529310 44953412 880204906 99209014 158474240 505778847 284624287 956582980 758023333 520197205 978087135 588416724 621798787 484855985 188355154 206323742 814233926 576739936 560129556 71925867 790732131 89730718 590198114 778545262 63079740 806716765 659070923 222207292 512552001 853472842 973167070 521387319 653010657 74336541 952500145 746930804 497838948 486237133 764349924 289994811 952606987 628292647 937578528 323724040 956280065 399763255 891772282 601712753 581506628 841342194 766403369 704826977 117464779 727956648 498394022 895198184 911362194 616261455 40076198 709707571 841154105 464925920 441783874 341908130 405083521 679174479 318160120 701278284 734957277 115459471 111302113 737660471 957405537 391166137 955843933 408037556 31481871 57406718 335244995 531220298 706972051 891197891 945052597 464782287 608115518 932297487 77708249 711349177 984200057 161788841 414488412 571945481 598767648 220430306 746058886 884703630 602509926 621120876 363086285 721664458 439351516 827096761 817475212 468290620 657718932 527709264 772913789 225316552 362291602 499206114 461740189 594633612 656368309 974193568 904882140 761094110 926357783 776567484 91677659 214244227 780231101 648384371 758248588 157620901 259602458 295273364 493083063 9442268 947467677 752917564 344033471 183600695 473325868 443400831 480273370 68313500 868123924 435522216 742903865 520504363 489604110 776353602 836046745 72999049 139332927 595286267 209295664 368399058 523303585 705900149 544838355 535457363 527150506 414357579 6253000 454554811 361186935 813350042 727611437 815189559 713148089 685145849 357895848 548865236 888968300 215359996 424838132 619297341 178004498 682933691 322493097 402557870 696726511 204656248 585276456 997730738 175792046 584254091 396571567 250538287 83842733 257161089 200434869 805663681 487650107 415198725 946556459 918531442 514727508 836555116 935823058 877383436 95008268 91705519 114456247 94407839 136141858 544351735 175441132 169543631 797446504 195670002 700910578 519300234 997042070 623534034 305735323 988880532 423791477 853572949 241167031 915799299 698292283 875294884 860275455 268784741 104401799 343344766 497157656 452333931 456081314 452244687 787855317 323183954 114143154 716147507 838249147 759873264 615906228 300529633 183082565 602697353 424616006 482012858 543814629 720029803 707786392 803106144 380496778 669260677 194075888 199253027 146537047 75145398 937547052 849718225 402261464 575463533 149195616 332915198 382970965 560164762 589845933 307640433 579690824 648765658 94179229 757803651 227812902 655761665 534452276 622526715 72064959 134934170 110287637 293224659 248770194 523683585 783318808 657076135 534321336 607080704 412375691 105024164 179362181 462136243 331618781 78425592 337070705 440239740 501759473 969035514 158352343 34814460 157016903 978121909 670758329 182721603 34139041 318681374 898799839 105560947 936803033 342248184 193981237 678042370 252474450 182669682 593532878 295279544 821918130 989883910 234447449 330965607 660733236 26368712 872077668 215381291 447852903 776718787 528847351 802062734 170329903 690203767 701412718 128492217 63814245 267463108 813251919 620055132 90816222 29169772 258466454 172219777 292475270 229189649 175348731 454708743 962502379 655878801 923433255 694621445 117358952 256695168 371240190 751897572 542957282 438656633 154591737 973945508 993292552 508719372 765679784 606389938 611416890 693109300 996063549 471775229 114937736 600597273 604518360 367926029 490281902 608609751 219927258 866743567 600238350 207303681 159103683 947339549 429730269 812003151 203997053 958428274 175337060 369214808 255362404 953931301 438024932 515729354 944212437 478277096 399298409 164034158 803167984 603584609 738381393 106442812 611752744 646430081 53256147 175792644 286811452 828534139 831240776 278898586 845521286 835172880 997578032 382908928 157137964 573864251 127754990 491182056 243621206 968339992 863055798 705986638 764169323 145148457 360670013 535896837 946681888 537975495 235388974 419353298 819439733 443073457 959442669 366174432 753932253 276744857 106181165 380780990 153971744 96861598 659718321 623496575 942860335 842564339 764181783 295418056 875254015 624171301 406573712 64282163 202191247 809506858 926863633 984350563 695141840 331724940 420273383 696173243 390103002 190070482 515177206 192172211 146489907 357455133 715548888 878206388 143591162 517314265 305723515 960012847 9942647 952263001 429461306 681560034 392546361 44112959 127956940 358988879 205471260 809130092 83243902 312674209 761498288 789911206 225647573 30615066 541429697 301806029 841279201 829908930 410867276 672368151 530129338 483364064 645024701 278873639 901384860 196194814 809060853 954396794 370722233 366853857 994785172 30194127 860082524 461415186 227173687 514084839 208957978 489388582 951365149 775735126 22584700 970930298 415588558 707902007 801426488 123292156 616546542 553976875 971755059 336847293 782507828 321407784 725055736 468104159 631271204 273797505 295882750 903055282 54572171 158859111 596528654 562719997 52427453 466845842 92356708 519245349 828633074 13592597 201540727 797042467 975180154 494074650 477105424 926905739 821986851 671155753 161169551 19154111 236417241 896434315 529261798 508875778 351260709 952099870 119370293 428348651 101601893 573530995 867125894 554656270 642427361 742046127 508942224 839239108 710249607 513526664 465345157 54502265 672552575 342396163 691899694 896673701 835055825 907475240 234710293 869271987 138735136 68772559 996771563 774792215 849432885 806396398 783834934 113432153 4700838 359999227 835328099 600406315 275994651 739465174 271153179 703459251 190808610 82621884 438450428 362326370 57237446 594483299 856008805 793802729 293059030 179234414 104994430 258153118 279119339 215597867 16668615 206539430 747126584 777973160 713718242 704731616 599205921 234779913 411240571 155718489 905933427 249193935 74963141 630566966 931316463 380941213 920792465 746860455 479891589 144436547 980726533 355019209 262216999 748842314 155128195 140469390 985523226 278552732 637509239 500813958 816515313 310405635 467105989 5272346 752840016 488609591 762397569 553265096 26886444 356852328 15224823 711283113 37185968 317710414 809288179 834606018 600989553 299809005 918420359 157303351 466157811 552278685 375200356 493282414 532475700 241538568 124748503 91610520 207697621 790387219 411391282 507449285 282565864 834411677 871078948 111967990 343854324 3323822 897820379 201694227 283714621 122245275 466018973 262424051 856321188 217456195 321592121 145786224 213384866 198957859 225453443 961151726 797241029 469234167 796854392 962711023 265305073 634818864 808799934 153751665 555765116 873182361 157014019 561199140 464140454 219880690 532416860 761032904 239483820 639329048 909059337 896611993 483520834 659530083 256554079 379510613 602354029 91445815 888561475 685337865 777987118 377779685 993144992 27680803 192253974 374082574 446623304 57434743 437092489 2211614 522364206 527916255 634906056 57157577 438375057 378203428 933590773 61323677 320565351 441514594 271468290 950304100 349407109 885103608 485092940 988521726 21917667 413034172 127668858 117453511 92338996 951994978 770376012 327094456 187327690 255141019 673365794 293872960 268138660 203838173 343264799 709330498 56825858 393689422 237152856 505291772 699547973 440755074 945379862 481011183 870831227 596369711 65359655 81412534 297709174 726275602 523491791 295892730 293325107 362582206 878876800 906782831 439269669 903471338 863151944 223696251 855406078 389057686 982908264 20315443 49344309 408216649 362425514 362520718 677541026 420458328 439936071 531265337 402118376 232348025 893935904 287526928 594878134 360840332 68766214 168179470 135368321 14559692 147045273 258508330 755203685 242090894 858565934 124390212 765894028 416235860 323747076 979790156 199869479 403678639 450611607 205149522 831169589 251354163 193561401 835914393 764574609 672545045 845022822 607375587 503286412 731208176 269681273 562659949 797972237 197582736 150856428 557274008 269852892 933739657 119217481 362283364 491073998 742621132 62641714 494937413 621356507 802810935 876488521 724474710 855912458 683146904 599708666 948365544 241732304 739364157 911822189 732651887 116186015 243635505 901941865 6049501 805667229 576305491 360745070 862907803 840121607 354116821 509778643 716983102 177910926 464371475 190182124 286433669 313236947 910251539 429643136 917041501 391897611 183123464 772157002 390586072 357541024 615501370 894916911 905740405 182390687 539098768 141285681 422349345 828184394 133750660 520844947 219778365 324477163 309743146 803022902 520764700 609390478 52578616 824216591 188799424 719759798 756307936 495044730 224361495 53385541 665182079 798491598 250257239 82036466 895725419 343561284 846362115 531461211 339387328 973707316 975826509 232679660 927053391 895679831 977077690 716413566 968354432 438071345 851406348 482766901 687110121 887159270 523433055 198871405 383381263 603007200 391081942 603938963 141454124 784246102 658584170 517198148 668916022 919458046 915488119 993603664 773136487 862723721 926866397 883456097 755816432 278807589 501779513 211470463 939590344 97302662 678207762 979243922 267553437 825321393 677733485 170560575 701581320 629143112 833305451 200898091 25758104 474739263 932549568 407773295 24255007 958068781 610106985 944123652 311461618 596060891 997487709 354764534 71179179 48519287 461886905 354132538 237417745 501716884 87236253 777388641 228726683 446253901 655751685 982449331 720392977 313898192 772982657 151428380 257999034 539049588 278432199 962561227 110373827 4510819 517270604 709079881 979427769 929029189 785603906 639725439 621356249 763422342 587331 236689720 139817173 552815285 437750008 570650610 878846610 342522748 994446352 653404813 929994610 833080087 37299985 809335275 325208019 325438020 841350449 877467795 964248074 423845668 781850448 479971974 204577729 990366270 908657697 376629627 268978890 771646640 393628139 571649682 11498188 370958856 259822372 257476841 698848847 66807264 945714634 411158678 641332689 976045212 483672391 652305084 73321424 309203928 255880518 835318237 691504671 96606153 36246462 976705710 367430630 528647012 89367926 722261667 193546648 350814410 322010940 698001559 540954600 161076762 787387766 157105999 438537581 670729221 703173264 703809939 961743712 989579638 385056504 879940626 751833258 664235761 688778375 729136631 428094592 675120178 601159303 904086604 550171429 291126319 949816245 535763880 242155245 509174140 25785796 745529908 941962180 350876978 427571848 425720855 257819866 64864559 167961731 414596126 843511976 686418321 995674285 815559318 765701190 583957531 202716463 177195647 481131983 228047766 344344401 855487477 122995066 556417556 643805912 86468331 447353989 221302115 227989366 635214582 867552460 34846502 832821700 379668316 193061792 703553715 831700174 929724011 163614691 931118164 378689770 848782162 347476050 112429301 686497488 717299877 8122334 673836850 781813449 327043882 606705718 699552639 101771192 803037724 390998050 636351908 683976490 322323435 40495722 158074101 880422361 575854465 852069171 464789897 178297867 926866010 217660535 447571078 230332242 953035001 803558426 70845008 579072436 764894267 750656636 856145969 961248255 311613835 146306033 748996892 441017428 505867521 754533884 75345502 341942266 873101311 530686194 961585450 165572118 92708149 845105940 673963130 221696785 853808049 791779019 155434455 144553611 662119426 682024177 638875869 696796987 818054812 694393922 595981705 69923301 51710340 591969833 801550644 544991085 259947092 155676042 450844831 623255827 694460295 662877800 478975093 359843683 49105599 56211120 816182740 318444296 965878838 76449954 636237111 159137674 506623246 279789476 238635408 318621587 44362324 304024409 850020327 185971487 281343758 873816256 211093037 976484021 185402624 639305589 368673854 339156574 182290048 774517623 321130100 415659134 162426729 962812459 702573206 262794887 839292547 444953363 92142824 802173306 95493081 539248306 611090756 823345548 552846712 271104774 605971570 407347163 615861206 186193466 656061502 139962271 939126353 816817229 786124779 83239937 674021784 997017272 144733063 257346560 37486298 352408607 224054374 787591394 569501345 631299125 631160480 854999870 260981417 654685007 975800535 631311283 208439892 707730036 921333203 284256169 63054422 151841947 14148256 645453401 326071802 979563375 70106680 657627723 7724737 808019590 65692625 370329147 918769799 630417184 693021030 319878399 987222380 320667257 298532286 294897723 379843964 145987098 402788837 770143244 489634708 54279012 355333760 728047374 954103991 443270868 25062385 867132270 821493044 19550721 981005278 299401230 270887989 692475492 173500926 359545591 69686953 395503486 367507010 329596926 451441598 664157291 211618166 625129992 757660756 827223130 833294301 680512535 374803588 963812637 480616573 420012179 691992363 103100873 630303320 297225744 461679678 604153895 412595239 59396274 621068594 572503137 402311021 340259766 749300077 736571131 721853740 727399872 221316865 625312591 131932208 72250724 776284712 977216394 357674322 901334744 260448964 99387951 434858273 94004606 812826088 772741383 412091857 37583252 35176178 137699618 137706655 353081852 339507401 182915823 972257483 124783060 829131440 872089005 750589686 14031381 161090574 966204126 413155162 694062321 748546888 798112806 897420889 125285460 373926262 377548821 743430220 408000395 835338758 137004605 57008575 21660280 921151295 822450925 115288912 595166041 376188908 922606609 994846929 531898033 343725154 187471036 795943000 326820154 678209646 206260048 434064497 646279150 28738023 633156134 682396005 302776339 877169257 48542700 745981298 298666906 181535060 19777048 790937157 810046736 889413049 467004119 436864012 222889629 453239407 38839124 70916194 622954587 370448579 500514204 109357826 178813332 757259685 458394236 130791553 451005937 773095790 968049552 384099323 367122765 259961367 538885854 350164132 6256420 854211659 799516368 136097711 804809214 584232629 734174987 641447461 863112348 510976266 881858880 616075778 399149510 344873274 592658558 576184701 636457427 421411233 372914540 451610127 850170518 358441814 965951699 27732375 374567249 161232298 316318714 189453710 455783144 635973652 873814387 633942103 689498665 514013579 421566234 433127305 599610626 228572300 181265219 440239217 718045340 228132374 468115688 629930720 560606462 914389609 572510439 446376591 416913240 910087933 156527750 401945332 149228571 294482060 939985558 120911107 992555111 985832954 333267087 670652852 392965297 641402257 499246042 873067095 406484228 205059401 627295844 383897994 302718710 138955417 785729264 615358212 317714245 749184596 304041323 915180209 851533499 114339147 622595101 175950751 288641015 300954912 590776432 764649495 317375872 935273561 387912327 631925059 78149640 865636023 576655634 948670992 726323791 411144581 816451345 981083153 497195631 415048234 695780739 15573939 60605236 579204827 644957888 790066505 21234692 59457121 68940905 454560240 760282127 685872064 786024736 892388157 862490455 834410091 498388198 290600991 59243492 31854605 189675687 322528137 452551471 286078730 991510349 841324543 370838877 634594745 293083144 175288685 986011598 825923141 843846467 427382211 947621541 531868603 355406615 869958444 516909026 432290032 615858214 111108149 561693011 375662331 13231497 794390717 68167186 126744480 314217287 788270286 664519521 683551927 103560700 469446777 485764895 226257449 661746880 52043075 625039921 239004389 308673820 948450997 51735422 226003567 648942645 26000474 545850816 993748592 159428866 760923622 48358634 249090766 936919807 269716553 938387642 712807651 215248755 562754617 625032213 231215276 887223220 236550428 636017972 474827780 749993312 46606423 196807917 791953700 489961827 76059385 168234735 591491748 387328993 570259769 436544888 395489985 690298066 428185907 639620200 19266680 511662394 889677925 263302855 198164474 157231491 862707813 405358157 234043478 21654836 190697095 462175857 614805216 99350448 387990104 988751134 496228190 469326692 974218735 91741400 69250483 801360285 83935090 791095592 39910016 419207426 443816289 416568217 460334999 309233905 42955226 335326953 426247397 348107775 507109389 373144800 464434688 339836895 153033254 234756136 637744872 174870144 360771726 720883032 474698991 419427492 105208711 155900105 700306741 489276800 763630231 588139095 349595501 337715792 846857910 991575804 118708459 522319887 873348525 624290898 828513056 522235245 371541332 360211217 666857609 401142544 358654437 134459820 501167321 432557917 938350750 755637628 292137586 439465686 734471082 884898859 877325559 381968722 875936989 131506168 337730435 92609124 355659575 761407738 70784428 109189825 668603857 75174427 143958022 117770092 67579280 171752573 568242525 557729802 53175586 947141783 985885460 365557281 316519546 1958766 679088965 289156199 325672395 683279431 970066255 416661517 720764656 65009796 369018447 916768970 833805318 732939886 532497738 114299628 893449715 388301199 511464022 679422313 777126278 719830008 883468311 931018080 894799210 844446167 730488431 342914276 851898317 456710583 726464841 624321213 465956912 285944831 884379007 830829658 963409075 824181290 301638640 241502687 216760779 83549661 237963390 439354771 735351490 574918893 807071087 666805076 403074094 1979508 224933858 295542182 193016350 887582836 193318261 306015937 902267331 449515592 387182369 257374122 556107274 187862181 830210148 355777013 134645391 251706388 205818815 654537582 708771261 239377237 229219232 176664393 148904848 382870033 543999398 106546003 922539652 539158561 525403932 563440750 32719719 713369446 361430206 971390744 520498022 374329903 339542759 26878024 38020083 190507281 152010052 165620330 132862221 919064724 393939972 187062100 209723658 402287539 37828561 531499339 178468499 186745089 403281701 834109015 149515265 274755553 631707052 662602028 289621062 583131666 686744338 698554305 231691890 258223643 509000036 624933123 662707276 520868100 626757504 527884003 736280791 74318365 633375654 262622446 259883226 45497591 236281596 596300627 400297897 854174399 787951312 134950406 481224805 440297675 665858184 665477632 703351743 153982427 561352818 223617442 615979905 873198977 706370915 739227953 71956653 301465836 219484769 865498629 619393971 57734344 362327570 361350538 707974389 429802640 8380380 981275540 347963974 626353468 736552931 546932001 618972921 446906941 548912432 403723673 134158880 443312483 355909666 612382151 915630690 378284149 677144482 904724774 56942351 236699977 547301955 808013350 874805459 568270996 83760106 902834372 934923854 56734821 993288169 226255948 741525573 662183429 812356417 939324787 747058145 297042430 352414720 129418115 541345114 186725580 919898080 120996321 121308651 227639551 475189230 785095050 785362735 195213587 689190696 609392133 370487582 80063133 100276754 136240479 58589832 570484577 244794083 365407110 343178991 411529925 394911916 579697045 756710449 589806170 707230929 648273315 618599766 702539252 582044368 95250924 724140737 740824547 550940228 247818099 82494214 872078907 36958000 75400108 730368130 743070510 747744815 582143491 230374132 959542643 45181723 939752608 487118850 137390989 469234656 93149216 719173528 559297201 637117459 673188845 211369569 965713903 176149830 849562562 967452335 657769133 417409256 31843444 8094182 532891153 527738268 910287904 200695464 277503188 885704911 5014304 847303296 141885397 372176208 267075139 611664168 947481563 861833351 901912895 191914736 561810220 977629325 440386075 586206098 887512787 393525758 153505367 728508006 236118752 835819014 414822101 331033854 194040907 800058549 712840339 795291924 493218643 458413340 513425220 68820986 551059908 40563310 256871331 317825999 764391292 344128737 296415525 547603808 402103025 166437706 812077016 945203248 304896695 280794 38509219 66482441 63673688 317068690 719996574 854416427 675367824 952178266 872210525 629158599 71923279 129096115 911153350 767041645 515963425 904594907 667519719 757667550 138387017 861448853 728150433 226695862 648719385 297279855 713487890 246001357 852111252 569775984 60861540 387390513 88704201 843768585 558358821 527796940 963139670 963394882 248201794 439352091 872466488 198216895 601761288 290795982 582823707 659223397 25614420 623316102 205775193 606423108 528046032 638867964 503905672 788790544 870044955 110632763 816683789 89530177 862453710 500040881 554160091 85992824 728652588 580492808 632354576 516581344 210571428 23501956 917268878 576802572 924339578 13944979 414969006 154122641 355936810 67600289 432164801 161247817 432979718 677689593 619472725 21734891 927791401 716014335 888057559 178999131 547628781 615355251 671894304 76286599 183832041 604814740 312111264 299260935 495235935 313244283 189408876 456150237 870411895 859458385 969772669 809915934 238059853 431421614 655769450 638163423 781015388 305695673 891332891 233443260 598922260 77654356 815387645 240065132 33901437 704477876 347332783 604074562 494110185 533462110 255800358 920125806 406005600 184135574 794287680 799210090 369993192 883432907 843533799 461483269 519177009 388638396 397825231 629569508 80824417 479826401 461469077 715750073 389077950 858171090 375032602 772384884 555106191 533637628 487155908 146860023 380166234 810641702 409503527 58670979 256632546 400527250 453906780 361210330 47140870 584223484 690615893 547885409 691150035 215555456 576307817 652121105 595754364 585812241 588658151 123826730 571396591 490239452 229377847 451214893 700388401 287638188 957395087 497817587 922577943 337465976 48809167 360864386 917459570 327778558 835175250 811855601 664398371 690150902 589733392 127580341 636979102 464437864 450609179 573667455 42075714 480722594 30352143 95830122 485010600 837674418 100192731 984167667 823763420 973129797 217689492 38792471 468278554 749615785 67236613 752998711 782744110 867359032 67854371 949047042 418505721 225447254 899131357 259294683 63250651 818794534 844924565 161519918 985562902 84269499 434194666 557515049 724438726 103297159 858539723 265079863 593895890 903866557 329040502 46938245 597805146 788862718 927274233 222005582 377225648 974406745 640547241 833959934 527738834 592887788 158351393 327990004 809849679 247532268 68824336 773088933 780852210 175394378 171888621 472619898 743641378 984614015 570681682 866574695 428661030 725675562 52577847 198002237 403899866 796516629 394595099 224048684 660440851 145570417 939622991 104668408 788654880 335116140 767196397 971164521 884339163 961701903 827328665 846050884 966832200 924989568 920757778 267258833 318673555 810317013 419186550 33709129 339009188 222833392 296635169 6697985 121943857 239579687 246852959 916151787 833842134 771831907 447279594 600473098 287490151 885244335 851416151 933758700 80646560 174740573 605901200 929929412 15166468 584078430 637289540 546622338 195017501 261084068 25844527 4507060 858193142 92767484 73832952 928520786 179268087 225845389 276670344 704858718 871528730 707208093 309054103 741323832 402609234 500261154 803861763 678848757 487035049 541244487 218502313 28175870 447788018 960729718 538567632 80321500 206361387 57154415 678708620 523726036 587560611 629698926 930402570 515447666 58696093 260214970 571231988 855327291 387706026 910632071 241853311 227255480 588845135 801103383 840362530 439444021 556529471 439156400 396498917 31697275 514973406 909906412 451453750 716869392 550422892 78427485 246137770 733309725 98500744 467748461 366965907 329187730 725083921 178089578 300998303 336934286 695054389 826423421 31764365 988158542 785289678 783154988 150867588 36626652 376250801 813405731 248864537 307101607 147899557 899954789 446929622 605995568 668394823 136064961 429801830 414182414 195662659 792556535 875961521 574424177 631972478 432227143 365427873 200551241 258358439 596107585 711598203 558792042 76157612 991329294 279955485 601376590 821223765 255869048 966218474 382619242 231801511 293613192 76260994 165763225 342658683 284615489 786440826 519898212 508620512 123171441 533171432 995326861 446587785 973910672 207769742 736182204 653044241 505437737 275308477 845945844 554326829 543921660 734158195 888724625 593275755 476754250 190915764 254835640 916786758 741824969 570990223 342347609 707224815 32103241 374128938 884754064 639382977 201058908 746034563 567896873 116900467 277169811 567290556 689768426 83656084 470974885 485894357 303457968 796085772 154392346 50249314 713177469 553083626 6475221 357890870 235289153 442952495 847877976 816544427 867596764 626198502 534962857 768341503 788709786 217325298 924198662 621793668 163033498 894656038 741629473 899586069 714318245 653569822 191249647 450304783 504999658 231599752 206292954 158746406 650775348 677477771 65551230 15366337 611871202 897842980 210966051 575273758 708247324 190251870 526158808 348968616 760041463 476690763 202674703 898000163 856953505 834918332 579095119 722301674 129143750 811667579 843916935 694270451 898420108 607005616 990879448 740075610 437461387 501170889 167953030 781871757 329333442 697161345 97837116 275865353 675528238 738108746 215936215 85901536 586557601 878465183 900766886 511308506 925400784 376386896 778905412 572242113 126662621 812754928 701046070 116610616 204671870 322931300 806047578 538204884 864602508 678285383 865882893 14629608 194029694 997049022 498467594 363704202 766591070 791824752 944743536 786528918 393266456 663828111 636558345 249570926 362828207 654774150 499816200 673931890 78939661 995535422 98638099 218505619 721561399 772453595 49659577 493370711 735172569 577281410 248922185 41291397 963660391 991312151 923560143 858203840 713177284 980798876 740858077 571258108 656950758 340994194 915213569 947418623 226078566 628908166 556744778 883678873 382071775 149522928 231665640 36007837 509456889 356153111 402507054 430237869 77864435 347990066 958101551 35524124 798561234 692204239 446821276 210487714 976971119 288938923 742315050 516097630 301336759 279922374 793329080 54758239 969206038 291009886 671484303 879606883 487585555 900183186 121257643 834361602 926336238 341660754 657329025 964090221 115375340 857733853 176004321 278821305 396106160 855391384 227303953 378997323 626792089 833273935 901370883 954598722 700102695 409895072 941553164 836184828 610040603 488906577 821530616 416683041 218772520 270210129 896297719 889871662 166336209 250245790 801989258 75239553 384375657 491299091 948651057 359246770 116362617 578347947 98683317 889636220 941625069 502726478 485058701 156783350 696350568 284466123 538719441 446664561 661120800 533179850 657378661 963957957 587222280 880724739 492201583 229404815 605417369 713468122 52248674 607214933 387979112 965213014 429087286 125590073 434545355 303012700 86950520 698653067 838586418 632335409 58045777 436650467 539444220 816984012 366517177 776073425 369961391 971350897 139256578 430687616 70751339 793821997 759463909 991850233 442510588 868762320 418631792 164735945 4088471 906299964 353896911 443859221 682745538 577567904 705323950 64495772 273289691 532427609 510921097 668581024 306660708 360766433 129307115 561682034 282634907 803278920 929966691 585966370 359567107 532011995 381349932 601644375 49524149 231052904 567932392 908947328 637713937 481260543 585871086 137862947 645441958 890751404 402256736 828890577 733138477 575557723 513243495 246320692 71927322 640126194 55704846 597683024 161108773 518150821 571720161 50974900 980249657 425090442 149278650 482316520 272082357 485801055 41243015 318030246 212721471 77488099 97524850 77329929 647518054 114191525 643068253 735287432 127387106 817669576 589263783 915481733 692606270 146389011 311929940 852195977 861133885 538642729 474240390 414691817 228432224 1064808 613579831 662676918 715782200 407486546 511660780 637834505 499839523 881053770 320988349 115505725 442969353 511049707 699560888 518804303 894469836 886759536 756504785 420376768 708561458 978268481 496643419 32259433 353159893 135781419 102959048 842636951 801081607 174323730 735277497 647422757 192293435 565587156 527855750 523533637 100486616 671882350 2729979 484684736 8578644 332302853 238687376 543043751 557006267 491107068 60746305 927765619 834438408 979381157 428020848 4333650 22942974 829010652 510442286 592674458 547152147 266312826 635710468 277612834 697187785 725701159 199839048 217941314 349290034 170390446 17520176 873399816 932584962 502567914 444527605 640152130 794475223 185007698 753412822 544788837 376916890 846811665 680808386 25848463 477691138 900213496 976180917 63507237 202262899 9882974 639942620 405707995 409791426 960076321 680771875 858438479 741146115 696120065 84533082 923068780 336343532 214297399 40154647 177728191 723152685 498532413 57283172 159254471 498971780 979929943 899077139 363777877 651127069 120836989 520008089 760710077 949561936 676068905 605382899 760698748 448511377 530194624 552390349 846915457 203866155 687980156 168960883 772680676 411334842 494700288 57196683 96718048 393942766 889397500 661091742 95192989 452143038 654797091 885217906 577321428 490817972 181625920 593840918 571508473 215348062 300843838 844612696 507933502 93493686 739349209 495456248 138873642 592404158 662875724 867953075 991973178 985405552 852784037 1860926 426553810 594844121 774098490 59769892 2948719 806260517 67738453 831717431 976924966 577746957 81224102 552372008 825709945 302251835 912612750 387649857 300563189 318449141 288295522 454491995 753245455 747826106 298189892 42535202 348532515 324414295 754657951 485702203 438343673 823792839 983573415 494606790 732298620 695045133 377603177 967881790 708357051 808685078 287112683 556070326 521296239 186276648 107597020 79459724 575136213 818335493 130594842 702659063 424063807 907562565 837422098 71818202 821324934 497342327 907531937 653378599 511387160 400910963 700003135 21363845 872398634 417727181 253295607 426114948 444928101 704761095 85297636 505312756 111455129 855445258 606346190 694414142 759141146 570929940 894691064 615751433 915269796 202493663 333961189 858545028 463464513 836997098 630124372 248339729 877748223 424430550 568586906 148234777 623168517 377639453 666122242 95145437 471520293 284994087 499516326 73663400 365653434 494012245 281944567 796213750 505249043 825958629 830325121 987856658 563102852 978663837 62000667 836111943 840765543 845972722 315604937 862802463 735488575 332362128 444552070 322703516 527982514 95173126 428712979 281915071 43269772 536593051 779439588 359594692 301261354 821935636 428374013 744107682 306790541 865063145 559843823 987741011 481718742 308989382 951634134 341347889 977378350 486488736 440096459 260793031 360929564 965685191 149703672 200003441 739592504 644918197 712524336 716950428 36197332 825106178 869087382 817065713 913017431 640594991 826815363 760858091 893909287 879698636 162849207 619667234 992804341 873079514 70160125 741530751 11670625 947547984 321856316 52117608 131389823 779826561 652072632 176568813 573112336 932024517 88957198 367135622 111488593 811594519 457868356 539598026 111771363 324959595 766829960 914173241 813005774 641901039 502901057 906859116 458694568 604314300 270754655 313665931 762396767 96946487 573352312 254785035 337138491 274463196 206377936 507283656 970015164 260473123 662204459 187569490 777719154 334084341 881997870 445606962 452583434 242122389 418057913 344592744 482114242 10307107 543658705 182060620 493236100 398144515 974257222 943888484 183827383 425231823 224442164 644821994 75119949 250947510 691772028 491316319 294881440 276809139 599495817 567755608 542240788 127562431 328497085 682546462 311919659 674486262 368012046 713375391 826937360 732499649 143849198 4754061 76135277 692858263 911477038 260673512 112109139 676261919 562305855 766150215 596045944 490736901 706427985 805415827 289615320 537869952 697709031 661775991 38783541 129935560 381403120 293686936 89947519 733299767 438269349 287697591 478434792 533453712 400586225 141900265 603382522 568563020 552845354 330092170 182214514 521373111 831527119 883200351 547110050 875664829 348255251 257843656 134345727 356295268 970664357 521101059 841472609 274999351 386195233 880392314 12054105 956246368 25431365 800545036 803755302 941277878 877052934 524759756 7748803 165297779 628950634 82924262 794638428 955273317 627990748 58825064 430402596 136681643 966355129 28061339 148958109 721190154 647095645 152970657 133219323 638163654 241005501 533849430 935208193 692669701 360977147 590129550 205236068 256338335 329847383 450997392 411943375 212814386 343473744 401528140 318853142 480900132 688502853 236357926 12585422 183809945 469950997 858301784 469031615 200933520 478864008 117986507 812255793 988027707 133807639 198234286 18991971 152333838 632602807 377383953 143170543 20403530 389300386 429012552 711129190 657348310 398740150 661379928 750743797 434325919 745236849 799138167 438434611 601179838 202174970 657778511 546675420 299072331 211137158 130551512 93623632 849904490 40996749 982943740 125794359 912032711 201409658 436135126 101323050 444632950 151641056 711443834 924286921 918718139 969720502 65603245 447824512 216808797 552988744 332201481 682724328 26894382 763791367 68845719 461960451 401664497 971627228 282116931 654641119 903595521 654009779 386302138 135132112 627676366 573315337 938528735 526598105 380810606 235802785 468771418 951029641 691063081 932312099 559400881 595830464 522816884 845610079 322292341 401760447 842365243 757104436 15997975 806969237 829242780 102114890 428491132 156230225 252759184 565380776 899233969 446424082 868381505 818218773 637993934 881258299 661443351 426568020 536418544 282229118 878255818 387062558 27736278 486346757 576941921 316737739 795737106 682236750 4490485 39698943 488596172 557143946 79140650 320559013 989408924 384799667 749308411 233720016 517957077 364352897 641260806 69576535 321165353 476754592 801905881 567111244 222780392 820218316 600129073 403064563 161787832 831376693 950219667 521508312 403911533 678242189 724035355 432105264 311915737 849101112 142974942 905015901 247159334 987264807 817708963 82292669 998115189 902842007 681887415 487910022 882600919 238845798 676904675 62406433 195272483 24347947 772717247 700615566 152592270 837748730 584083743 625412148 152047968 469730621 219978505 699110862 350522113 150804218 753851564 300621990 530903432 48755725 112604080 512881548 487961272 251138371 80460171 363616879 984561353 972815537 655396870 390956900 226866322 154568533 903957385 312335481 613772663 463473529 715611144 783331476 171798353 844169863 907045295 916223572 513460881 88627340 414549860 475593993 258031316 604217511 420245930 559889645 603393742 962138755 873957695 536916380 455220746 734356257 533695721 423642739 618327222 136922570 989998868 862389841 13951696 677251337 922884959 317094462 808431378 376798710 839734970 392368651 485296568 688417819 766465048 129105406 870987276 331335883 867242345 660591455 222717823 342337264 24392812 696673244 512758512 316517077 140356829 54349280 933471334 421251424 702489543 73521246 201399731 234164362 169466101 49849103 931911160 702652182 23767579 404855169 869583551 617342053 137239927 497159180 425757815 391561388 799158767 306579234 451232724 885410114 478457478 756215655 125461934 14463156 585422921 552085386 668971944 675433470 673740926 453348384 207830648 330755937 425718756 105271392 823454852 463543884 344829030 943795778 504085416 152097376 260125508 495925898 324400373 972721465 910094774 858452232 159960282 730917683 73774588 986214043 839199439 623129269 390491179 912309424 875779867 719723465 75387062 860449266 51346993 456402069 799198616 220255113 631269535 103990964 617498371 787199310 332001042 2658154 687920876 878064276 744012117 687736611 631810322 661545442 433058557 843963292 464208053 673697840 185830330 962579813 429982934 158374848 511195173 297271644 601892264 674972795 368503352 268723605 954141585 249940284 918757785 412578662 812394739 448530127 458429426 481868190 100496347 853480509 407169719 325722387 51177921 66217427 96027241 170302390 434568003 888904022 554733237 337641703 210933958 559309600 781593397 203680262 884701867 701310990 663453801 608557545 421805164 853891503 827233726 892466460 501241843 172910953 674112871 812856696 725102186 371793180 512281491 440211672 569253986 561608655 531903294 277716300 21360784 73272080 822721587 176463897 638816105 456766018 652124663 867264017 481244869 814085592 191411072 429284818 476128964 432249875 166086203 400698108 115946823 44238848 963253111 196984619 532921452 518821148 414698950 384459119 543251036 944038703 636814353 61739992 327465928 319906397 603591769 940979284 932201538 729583377 771284540 515999448 954591024 179434543 916427133 103318265 94467222 131898356 984537654 458614480 499036712 794269669 464831216 960100844 565606539 874156237 697580877 68496348 29547333 409867214 368799813 246665975 71734540 223813877 954800897 277741103 530529791 245724047 786491462 863029493 880138726 463786672 291240955 816019927 495180905 897770206 761868374 372057379 794708410 759797109 39533944 210667871 259957708 712548196 376694888 653507288 769883567 470993806 848276422 375524458 809581607 292574074 80663219 326781635 622910542 129750487 90617378 579690037 762106456 490040668 860634792 181737576 363622401 509431359 966131152 30836609 950382167 73785799 757171230 627464200 971089151 533452804 82924931 542656127 102460494 105154575 271887292 881682982 138643875 179751824 961393534 170822418 952546333 564564763 445859143 121011103 284860767 236806736 744081161 646129563 368436898 738980857 723960599 400870128 195285547 959510768 829873269 64201646 117846573 459401839 785988110 526652326 56541066 990048967 45736919 344600184 39518527 737421173 975993113 468430443 622828321 197799716 70167117 216165453 669891294 230991566 584904744 284800584 54797564 875792259 846156055 660252522 903570054 948831885 222763024 626530896 969892198 313521000 10871153 863891585 286926630 905841287 931760509 499853439 390313032 747021653 432246198 188220867 924432617 291648183 35139977 786622196 595097727 455933858 707238672 328561522 299514003 89532107 564746305 784700575 646182302 810374909 333621246 903054492 995623321 302594242 457318607 810567966 343043400 558913065 395891310 570335673 251427240 249983076 35843559 691277990 243127771 950307419 7296594 69380918 983737523 940678127 640102877 962933447 334486658 198871259 160833690 310694347 786167493 70037628 394781912 204870513 687059044 371703608 503777438 576403705 336956184 344797112 937190367 31283732 382628035 739406244 284607363 408157382 971526412 294600168 229296146 202425535 262494512 895283732 709790011 625077299 660847241 825201857 946745029 637916272 713361617 31586642 644896403 656119150 728606155 748690864 887399841 622679863 239133849 377369291 472382380 268891897 873929730 334176242 499159082 431902847 57784869 226600033 970839339 141514404 962126885 372903796 577283937 772772072 180733240 339307983 121643945 923914658 232368987 991386887 384095335 126289712 68376379 967977830 401878218 529308102 929399735 168564827 407884445 881112720 888086611 538360486 220756128 133888000 623020875 719674612 293946878 431779475 30852896 105494561 287645395 897677567 912554613 580422072 832717307 281110513 717418858 976981679 377247325 979013062 76486959 43226459 973113283 455183330 369142117 584567261 343262973 749479511 703506271 472425650 655544248 327460457 26133301 58045123 626340650 492862505 927708973 412807867 40520326 46851335 778938495 367679419 197146565 445389720 925356524 690356079 659461991 543851381 315932630 170296706 872742313 754498796 98800202 483018649 876444748 611684973 894988959 855400476 812292085 359760763 689406845 36011036 270429614 891866069 376531306 328983771 940092880 624954856 749943398 511782129 687473436 418493294 695970018 472550720 22561810 329222340 668808290 53865445 841892315 468412623 736057940 76580255 222816949 170329042 824132148 220932413 391576616 28440986 161539210 925829813 586651906 682957762 441642415 980720981 468004679 116179987 495144686 899595984 206169130 861173002 475493300 258758295 353982843 844151502 856517608 394769258 27487341 370930980 290736526 649113685 319452388 221060701 818783179 29341401 487705516 862356390 959920969 312720940 265926297 210647763 520698359 45569826 347096866 667692930 321093504 907439554 296875261 397900722 779254866 931159264 3375800 527168266 524174905 980798595 611240840 923755067 774150921 354453207 294636771 268109844 845635755 744475660 176176653 25099881 436321259 301014710 418297581 381242740 153070765 766851834 354810138 833857379 611194120 31684234 815766503 942553383 868660157 377251477 733846586 388188482 478801853 805781041 609411692 599253139 735034264 753419248 351252747 729388881 204769611 9221930 756667802 192667150 448331604 611177745 749053794 903153433 841425020 513891585 873203547 58984391 681856574 634276592 544868340 532007961 432270961 374371095 972847793 475389323 134696272 154347087 377725494 484624016 462159067 435218218 480072603 996133384 314435518 419625513 165207961 486389259 249563685 804810612 463719906 439608853 475867271 848383204 804496538 691780833 63251203 990820429 586061129 495456073 609564497 428203394 879624807 872319570 829285595 579407237 708970396 286028472 525969497 830937378 888958088 341679565 775885053 135773779 652476578 462384911 330578914 825442620 438315814 598447066 119886453 626386318 342664266 977276905 291125137 574120501 377129492 358716925 401965776 835723966 762769533 79291152 170861452 668981411 655791079 682120357 685799010 171255339 278586495 871069698 387459801 56899967 172183829 729073932 844824435 862514931 946137772 27474471 809805033 648160287 118500665 42658738 381125427 282050327 358260452 864449228 242572455 40805951 237127672 897235462 66016817 609417456 548353607 893408001 46502019 80371911 495700424 771619975 337069376 925865172 350630177 264819365 323590784 613772117 285625876 134767927 761885586 932279947 771136781 826921980 213311363 298411811 889674266 321372625 415578442 441451644 973616840 637738195 124016986 286611922 185699381 533938667 434174437 412606089 925231663 179013800 762751772 278900270 729593933 140460037 190718785 763154738 771000497 625004326 640339256 379470828 251979864 226680953 553220565 29478509 598867442 174052142 796097816 371823498 834452349 429219755 916786625 188105312 612157721 617307474 910174772 870028779 125424177 169334141 126157112 977798026 574281926 765605689 76972226 397233391 409314830 101039269 632736922 576982502 87487174 784977863 632050482 533515550 282071554 26702782 593140399 271988109 793213809 971398317 74133726 798893945 103803409 803030796 783021758 946990822 434488210 707883198 295186157 909687934 379840912 294311520 375429377 202534478 922296785 549660056 939358885 427985347 775199205 812912575 524775848 670297448 870797290 326527958 225922950 696699574 966005894 152026358 379335575 596553197 696350278 436240683 507581604 997517204 907529301 630025373 403589351 775976400 92822560 51219058 49964951 552442879 475195197 607913934 721390190 916478013 609555097 909052720 607168288 223791862 60864929 676992718 141416221 569305287 781899848 417879175 135632435 100344249 982460644 193110782 753501978 416159844 955880521 315100742 355533022 446716218 467779925 545137981 501051594 526106898 808527281 142946790 773363238 106746365 312375464 708649113 454750380 891235252 729848921 534551497 935490144 51822517 539225042 221761733 963918047 67130541 650371187 673402576 223749179 135906211 29281232 164100417 605132165 471159930 782375638 749764238 335117985 994438194 30360611 142543985 209306412 889310293 142727867 776030791 332697135 655569593 950374727 660888911 54714649 851512605 819206184 948402339 968932782 574012122 188301759 63365089 853044970 663749540 472521090 190539582 818040580 949294713 139450315 258506582 342846130 890256597 145655189 842329511 61592709 609471010 754800160 742625097 490982789 245116333 305635116 769166614 17500886 223846102 483991693 82995301 489449560 524540047 673491284 927870852 54386861 722400083 391856601 226419343 647578374 746997731 554522465 948365121 237099887 604237516 7346241 892953300 114023249 300251018 151062599 758749496 623307543 764674491 941424259 580188294 414795738 576637025 206552316 765888867 319264902 552520954 549847202 384976623 286163292 704379193 391634466 370254234 493222633 899022429 208916349 928757038 285222143 248192290 972384030 242288177 242626548 688996529 761983632 437405036 982246072 827934789 179444319 933395387 229603944 178541403 30013745 716753248 549247816 354500406 765889935 68424990 405053541 181933197 264771590 534644144 631218264 520873986 867100628 699308525 316709605 443975482 711207028 294511686 622657359 85277685 651718855 793974888 91269409 748364369 721068920 341715310 191757648 828141533 208007073 593995102 30851597 160069977 278967078 967288773 713869215 359582017 387229370 989178577 193732492 823256121 524575051 791947257 780732376 348444722 291368750 474183342 545839036 938558023 853154663 659064856 220524733 625886226 550367030 78314386 521855164 631882863 524921881 965896908 487095848 189890564 747614889 561598998 826228654 782740736 619188722 86923285 509018561 160274053 449940368 939349143 231253023 774909676 767543650 480827580 899821234 407777748 444635883 661867838 618057283 796211899 285630933 467939176 762161363 841319342 879159740 742751838 422629667 541836600 42210011 782326814 15493168 831623418 282700924 654146048 990668597 648000651 88762430 620448801 573970897 593498247 267555205 566141691 436877283 430877941 173229314 604486759 770354788 340669573 621078314 198481650 133057867 581378361 315437713 43468744 20918257 667601110 956971791 575187328 529821649 817201032 355132674 171834690 26344679 832962769 97278764 138249506 170971312 915028277 380951036 979478402 496856824 728462424 862449719 381757919 303204936 751585765 666639403 223443670 156218937 82222721 17223133 549543783 877364029 230337370 438804419 245511236 449267099 960127874 373072940 203047 540357432 382313154 826141089 487174661 697363462 979233875 425193498 203925866 361369405 223939508 860274284 485150049 650994464 260910897 139855147 915620253 412357805 163960051 253544539 336491558 40336451 338999420 310644533 681491092 941987719 349394936 294451561 262191394 43137077 951523837 449482173 812475197 670435428 201533291 291871458 453826578 298802002 544813877 906693303 177727059 89914467 938644677 230889797 132085621 299453984 650982539 963529493 225286171 497040337 675022524 71775193 452596620 575176272 904969899 470814334 829772294 382038653 292537022 836040726 134084030 307258343 568728513 91638355 453895932 327162317 267351287 815411914 872955428 401994885 67580625 610003374 11907980 162520826 305897124 579675077 578746715 426737009 302100275 605916987 444787974 502194322 438460691 272494165 30503671 272035585 413903791 344998699 417562919 488981473 326002645 828477986 540612676 265526592 670213446 589313388 433095621 182525984 431346668 34606791 812096928 283375359 499721990 782950432 795805392 988487178 452545862 82661082 77068872 528582148 175974344 832839273 613123652 35196003 628934056 299055482 443612189 381150579 486221748 197139214 433610543 355167966 782292984 267649928 490362010 2149456 685209163 116438950 598558710 723776642 754201941 543785457 898650100 521582300 785170850 708153431 851823495 433148386 209700993 140305083 907111483 653284953 633048125 216697523 326420456 731710884 971156353 416018369 835201491 90963310 339639879 467049830 833608721 865860289 293116235 843978339 901367361 697911505 102430797 978847801 736100682 844117675 12274750 185810904 736788247 954508170 586052251 898713312 692263400 866610845 332859123 762839720 143220530 732279004 37502536 960327822 808985315 401319873 589671003 46498725 244812088 237079520 8330811 519383264 773068526 44580384 775515979 87257242 86019311 642111937 728867172 919383167 284228884 632896336 43780167 604958516 243867212 79327632 305135060 835015328 844824241 240429253 673856555 215738680 140654227 196381016 866274962 748039595 303854378 982533480 988376014 829543420 958007333 962368034 905094983 226550099 940115503 140160126 654121743 610713318 278651270 914450495 534065696 440121795 430986620 883206991 881199673 707546630 639457708 106105417 222705830 238091610 786003344 368340271 154002815 359074430 255589261 327680454 821272342 978925137 447442263 424293765 283759758 93615390 799291693 351526538 755803802 439160254 442057880 781535498 915291527 273219442 107319865 615832274 726193311 600580071 80167804 121178756 828676054 975769865 981507267 487899892 635232299 50819088 933766114 828092012 946537459 767563391 888085977 752687667 606565551 668864447 519927447 801765105 101551025 150970559 926536450 838958300 251562084 933232576 705240735 178477561 326604207 558145877 67405023 852250129 265927800 224602012 78441011 680398968 324907308 774989734 49782039 752735944 780890381 768690541 229134865 188131973 793753240 506016008 156194275 455803768 477396657 570678961 51196362 473628759 947472735 57988185 300281995 700643431 49151661 205792216 112672670 252355020 594356068 419685793 627262498 730196426 788716078 652485717 819032673 365945765 558324749 147240751 604415975 975779568 953046777 406762779 965267487 184045037 524939365 892516111 442915000 519955559 880461188 91498824 68665449 289879571 767819252 457953699 474242700 770478949 122359542 162368872 865721195 482903034 917404345 690329572 182607572 550747723 667091006 448219315 876464753 623828904 115867572 126610239 488371947 491683421 360229715 95475232 542815855 753420390 346250957 298972715 719252230 399704061 81299524 458568357 355106434 719886582 506695254 990406565 760917825 954254986 289210793 912417508 710875394 669761401 183243651 483164935 609554599 460946998 169747204 245378648 88211698 947192963 128971503 676756765 216553676 688041592 651245245 891206866 201908463 717413342 817349687 681766670 834774220 604891386 92848308 799426639 262626120 660420773 733117811 40958883 396179040 724738663 103995061 157241147 31997781 635210669 543641971 506079124 664422163 951835980 795813721 598275382 901051175 686451084 892908593 873803626 290690570 952576997 954546015 711409107 774663813 312076284 415506015 619123120 373289778 915578622 417850457 767272990 876636455 165405330 769412022 735184888 42044359 143615734 162699140 921832576 209406833 29545142 190850750 782008573 966854689 308977899 613427232 783746999 559980848 807621109 38680868 516925491 476400422 358684691 938848994 152574865 935156673 190340180 286563500 899388492 60220511 151903940 139020762 259481691 84055494 175212691 391692015 57123867 61620909 689614181 156773141 683556581 446699011 257941741 331979195 936672967 749308066 807706350 925362288 159986015 711742200 484957263 486848807 241412337 742808024 636155607 589420954 766434835 648104968 27508808 631478584 505171266 457339412 206151840 271134464 120641559 646466644 118163593 704188941 823618997 892667095 182735252 263183379 34017834 948143893 783059331 632033748 683897206 796771629 538147081 829872851 42694444 149104360 502615429 102999381 788305475 21793094 475065033 166661940 581114391 518445026 643393420 375705790 719171257 838939970 930632936 224195708 398125183 968949039 74084008 245936430 274377451 852116599 960915886 666439997 847807367 206551667 104610413 915483670 991132535 979759777 68756116 490407562 400163547 200348301 632903507 184524290 105892769 681526548 296188092 880179941 510625071 662474443 968217329 90632998 874054521 231940745 164158477 282659001 606470055 412465698 710974731 574099366 801826311 949149439 452792807 7039112 988443828 689004377 834058701 796995081 543920293 230943161 968581964 249981609 132399884 106290112 811396421 602960286 661317679 943242258 821770058 641766101 694846580 285264559 608028220 509722743 827369409 281591705 366249362 9624574 547673468 920034644 847898013 705165316 388780337 328995622 420858278 801965709 900900985 260895623 838732451 420607964 349058869 915741909 267431895 664567235 159781950 981369238 379795362 22736107 659185573 640648999 491286775 964592642 799374034 648621328 726646125 621807281 230375365 678306022 436902934 386545534 837806951 617377489 410365144 166469110 703298566 570739795 466665735 143450976 570332165 850300172 548663638 690129385 699078539 713105156 32232179 487463051 747418586 18614374 244324446 92749809 504537442 914118288 364423485 284505623 306506526 374729139 223758034 681402488 833099090 189101533 980748241 306975365 89161773 141540870 657235851 969576584 734271446 968630952 986770628 189367247 788575751 605666616 941205806 762830548 136545182 265007018 160299608 453122592 149792856 639109019 548957881 324829833 346224199 807525427 581191993 932019714 586559171 863247315 821013927 162755966 935451327 504789556 79023023 873679270 762138223 947987129 143261721 474221663 699965778 514262808 936437841 527399364 538478848 427330214 364631710 944937216 930025769 404281023 667806666 293232109 521447397 66501250 548312881 640370986 376603494 666243903 431753585 91250117 903524034 270141488 38438669 725101967 621491427 46137509 119285850 277754569 580465774 920925915 210124417 628039718 911510989 28390923 811373629 199466317 855987359 708601788 867488288 583468775 980180384 671274609 437678781 121768066 775816040 180443092 633379238 478300419 913102093 637087851 783374201 399482687 303927753 979026920 194245594 270791405 990991958 35334237 921623730 209751755 809628871 58994396 695554253 773564479 338960153 153362116 922882710 88870023 553618511 327463223 369528998 466771574 633139977 329045475 247777237 792609587 402410156 112840640 606480788 561106536 910803792 257943220 511783233 687345488 314717665 284973464 124585020 375774166 389335231 132285427 55825441 346333144 801273460 505903633 300620768 215592447 427397172 346462173 343775921 790915074 431868185 35577084 271535736 470984547 284571627 297906465 33440469 445717851 428505367 839699349 573017967 751545725 406153916 641239234 138072218 996118745 758368625 48854311 85403500 43514060 938820328 817539964 409544481 663448733 753716863 446432457 123349667 632006331 738611630 513280947 938986526 661913456 721580803 747684773 66087931 871963726 750758212 646103860 685739735 513229409 219977375 139060039 675975833 444107186 957388100 708691679 196612582 233926594 926465384 913519581 554296292 360287194 774880303 251782 679030291 573480294 521190020 651130263 907941858 472454469 778529635 648134777 252110780 890970066 107637473 483569361 531711099 80544529 960415872 847507981 121426416 615909569 937073341 399506926 482897478 42354229 852978788 518453551 367736276 931895530 473932978 925279436 980560822 744586053 680660774 574825807 755199395 259951962 875002843 985686256 890344675 157361377 199558103 546532075 299818279 299162000 338914313 705760214 851550020 63456554 277735322 591358541 366729406 512567462 108602603 787376035 244953823 68524046 76587608 981121780 598264586 381489842 7619603 106878182 66050254 955098377 588966102 365400965 554100756 370101148 228196601 431614782 817768782 354128397 127852829 972376145 12484114 774733303 93364518 190326300 870170906 230177189 356461710 255032172 288722779 122267947 717337897 606716451 37965623 20712129 788599770 563134377 36998444 264564533 725592676 345512120 3184629 478023474 880454725 75601856 43770102 820083972 928702252 836691692 822411660 362258386 981843199 811861775 190639752 117993372 251431326 124334148 731384497 79390498 945328041 90171593 758102262 754790292 770438829 958224049 575333262 350738380 342863825 79705648 571743792 273802545 129274683 301982509 376497164 521444417 533212043 205920451 22077429 264468026 794252332 123898233 763886426 786242343 551624634 582706839 901568722 755947690 407211039 783982897 382586445 213270858 831674322 327300865 163984085 724885779 28098257 94389752 442267828 294016629 176173074 792252876 383090719 125948312 431036165 223561634 479697270 518842456 351509216 403004095 885429116 504079843 65678692 432572875 431518789 552926157 198712942 196683533 195898831 200208193 404179839 446345722 531447165 825865148 701465935 379468027 187113734 668365917 138919941 469708624 740512215 626614392 406395341 346365128 360094373 36952185 292861159 177087933 13879680 868015656 568767910 208345951 616699004 250772189 105547938 823297967 36185521 176546579 151056941 953873278 859320097 503520191 74577811 126359885 388206891 865830769 713191045 737399273 174037965 515020808 90994356 200336724 606662068 809451973 388022970 147058901 706750266 667081478 396757452 558778178 163197097 476398974 440920670 768480860 353017682 475519522 862658671 713002398 97798811 244531697 457565555 186239648 533741264 395063569 501104885 316366657 330013727 910574270 396359777 144336438 819596321 371527737 833221068 796347210 672121035 463491920 822995413 770763831 111640199 311361780 314118124 434118831 264786681 511553512 605667963 547225612 930385224 880806839 694725838 361352152 31453144 579591359 145877619 507123641 884668290 929399026 88974455 862231850 169181501 629462600 226600329 231905494 445155881 674412952 205022068 38130309 425635078 795589849 539882287 951162058 652485534 221718198 358418009 313512929 296400847 956735991 940002008 504281115 746376422 825279336 855801046 35671276 171012290 312815387 982784276 928565219 304153323 301248274 869810136 102854128 755525834 273950183 751462797 355376496 494716361 802308880 347103519 756993007 703594710 768285177 670653291 878996527 911989107 692264010 241532529 952858726 786481362 522129124 949934407 726272888 527335409 231238189 376973503 761368695 601104337 311814989 418126048 528900574 898322121 837808510 642363209 161101113 833769704 105543425 123913126 602482834 880686133 611271344 198697694 89058899 807605461 677255528 580603841 227977714 440127792 694737556 403948476 532053885 333017478 890265921 955628630 675523355 372923453 848588070 412760231 51867432 9716480 13976820 960527269 49193772 918556967 553745642 509795653 494374106 541482138 812307083 762624784 707633659 126665629 268980426 449628072 45086855 392871952 175799462 687639481 640526659 221421046 549553243 718095168 863983136 563300607 46838080 60229866 102096658 9023032 632268596 293089805 641879809 414722779 848982582 344719921 741836534 39458523 556083376 508702327 665787676 585635178 911873291 339696157 248561850 997267987 674746138 52751130 922292627 94582335 25626973 687262463 731268819 398916504 867046059 445292386 565971569 618233594 535783164 536780252 511909560 138656382 555463714 297153898 447772702 201978248 803321477 839263006 248855278 527731946 150325402 56377623 357071320 806162575 895595912 570475113 567926370 78648482 425910051 525833253 279656956 488385339 420894329 414210790 368363977 354413068 261853441 936284009 418366949 332748840 468881106 976030694 614124838 588959217 516759292 450590976 422737208 595250223 105602355 94199794 956405887 759385639 737760279 993211237 343168720 356885053 919923923 433259668 332628147 438917282 358404804 231255227 995816023 768426046 418854817 595255451 567165471 484421265 666601075 398351041 14379859 882504881 35931491 598954567 732655478 605854038 939384774 877897279 622125146 213813453 129872655 939789470 277290178 61741535 922068395 773859515 252607052 617409948 945428823 422645665 481176367 389854874 251623239 220209590 955705909 799720273 782964376 250307589 837179600 295009465 804123680 796405576 80900722 500988307 500238356 83395657 250921573 859387352 88653675 497359460 768640274 876226836 380903810 208199259 870067045 541665682 399675428 739689991 381461715 382720177 182395166 624909470 493884645 523196642 60968137 264616719 503977066 847277593 459772067 34242684 619622934 602674744 327123320 647900952 658725502 790041045 972261676 523155072 125966200 420430612 746907258 665212011 244674903 503715618 239015424 928717352 888941291 765643164 860567413 223895637 422440954 676098249 759421689 802874550 379490834 989484329 647908648 466283624 486662664 420759877 201185094 635338825 970772383 298743292 191953258 375387736 530022703 700640573 943830377 996872091 322228460 591788648 863881588 27831268 517888673 284749349 300604129 536573008 791548676 809901458 497209135 977023606 493328253 893722337 566710946 162187186 194025371 750882323 811352470 247551659 579003290 640240073 145581153 479785902 50984499 495515788 299356492 501568716 563666283 188201872 802921635 148592506 315344498 743779784 318995302 66127395 701957064 758270627 477024879 175848662 989497153 808668040 57821490 218751516 372089192 63010682 220095228 239093849 410173663 855837176 271441703 664805059 926798405 639273502 946943891 773572247 106612407 361823087 615325795 14722144 817635615 108434257 529854745 481799573 773919525 982268723 462210482 500406824 267066999 835899635 399067643 258607584 619810019 831210594 424780636 238218034 934624432 401381521 69984864 374632990 629459542 715838332 288658422 401811442 120342701 823506905 246183371 87132077 838306206 47043606 574066712 413837976 778205326 509914423 983827902 471996579 227786670 265647614 387592811 605645723 499085438 132894465 224184943 998036172 210642593 429905473 614768105 268779754 588474146 772397481 808179156 390207173 884652989 166310716 179082768 362033129 912567003 890939770 16596477 146276489 509758668 387070670 194520692 594007686 705585137 472510753 601176567 117871847 757775219 627197148 701524762 136959760 298728983 100061695 208534553 577677175 832272909 380000084 377873782 176521108 775342970 611627014 207765792 694970248 46677825 631467218 714262643 72997410 400467680 859989712 858455536 104748155 237505866 663185484 130025108 802407568 779226252 149802669 248004538 431012530 145867938 321908628 870125660 167677503 375363295 138743839 580309239 81260151 802743232 806581184 460496939 787164303 544820206 629971777 410178448 35990676 647713526 205609184 979140181 394416726 854159034 997252003 731327024 166010941 642689217 692938562 820674080 131691337 881465068 715406178 183114903 555944243 584281521 723764384 929277647 933789580 345518904 228753677 5456990 141115243 710409056 174520626 167330209 216683411 139673915 532742008 602877643 881362598 617400701 739690090 412323455 823433422 26917888 657101009 546888975 445115186 366795586 392243160 338965543 578580486 819351358 775078092 756514504 820943424 83278134 582362973 900074979 41520581 699958249 91224863 115471450 995089916 643027229 197852605 81936033 200227266 430795018 652019961 523985322 242852896 71979984 658487252 289115659 460705484 315739522 768147608 537513785 906162927 590581154 736753384 393734017 624755726 699441669 341662419 144584543 526850875 395466476 402831905 967822329 904076382 365677146 900290988 735178667 174166863 241110616 594368919 659390522 865061029 926203864 972564085 88068328 366068046 490485107 997534525 120968683 267162616 821878715 231906126 363319941 458604513 861149000 55669909 763746063 719575707 843648460 398956347 145307462 808582862 981908880 957731797 104368001 730877915 200791358 304944460 261866802 543426618 110432322 485743462 908831398 650218563 493269238 233551594 853442553 381020635 882578556 798729506 857262902 139032196 229846227 705766656 921519167 443616479 622794371 992533913 998132503 216412731 366320099 580477619 49072293 798413526 829382106 142096671 644611706 184604647 398896252 953780987 498253284 354844190 46019978 488139154 658899221 287799869 257028590 616747559 187666923 635359372 894874979 427597199 139163947 905567078 536709345 129951740 250235406 498346077 262437663 2116582 646867721 859548399 797405884 808725440 168832844 813022418 370269759 678435338 885503284 157746494 58706682 287507965 672407105 238015208 345889737 559308260 112763475 788462937 357930626 838578846 348594029 321380487 194934540 939014158 895160309 306202459 786191680 391856992 921986970 661647142 964318218 956536142 255050467 142944063 139172229 405049185 167946136 367806401 645417079 675526268 340388102 539439607 722546459 222245751 562572069 446230604 262040910 917026917 389223086 449377648 784654796 53456716 660098388 356448778 166465924 259733855 992753537 377280785 20889572 169735665 29000882 609848978 569642301 31483788 882372061 527340406 239816604 557805645 905356052 140397730 983905679 138394340 825882793 207731825 113053319 685018896 420890357 941441319 137319072 433474436 355822146 875491062 160320473 561443464 504727948 101498026 48990829 542485046 645898205 276654681 516587767 232615624 229851235 593804259 356993807 789084022 775622399 491013662 6989624 758365162 870118449 952488747 657128082 799341610 385053999 372783337 932130172 993101124 739611599 568770072 329933760 837013653 257982718 254298896 930236600 642471463 305791291 362707391 15536126 483455359 512263031 820530334 735761665 442786285 410711971 900363096 987790231 719886425 35098839 665261009 327283312 957578124 497712988 291917274 242025685 491838994 724724909 912415727 190180439 623426956 663796101 124658079 772335763 600502580 213188398 899761981 986614115 620782263 161157317 188760426 910134000 595248429 568034244 517800357 928332323 110767496 613712802 674753380 756326945 78797423 639809723 472823734 186438065 53162662 372046446 132216353 563809713 772260530 364416127 315666907 339433984 896741432 50870344 504929548 490182537 731031193 735317574 919704721 460921640 856893784 449178569 432572068 896240257 302181018 534136917 446043641 273765900 192946455 550903235 325820309 918453944 116648457 894838269 200912173 186347423 863694672 590213739 513479674 601515292 762078280 915830062 399342728 806777386 31845947 3092698 444706872 80420335 538148476 291849647 95760725 899995509 604472423 542124741 188975798 434091141 204590072 697490752 470627476 135898445 181402260 886735654 562614086 425526896 802074485 931454310 475275071 346417106 461237544 936711325 1699099 69847863 231203988 969635121 35870570 803647323 658537760 913120101 974697069 45684409 24828929 323283417 588948836 453943576 261952620 804188994 729720075 51516329 258982537 122269104 777136377 467944363 713451130 386052105 656706036 160591198 943136460 8280053 75658653 906707242 230358529 606056540 506221811 53758879 398840234 934486879 405886490 488598677 1818281 507285084 985581075 266457174 960030999 454523874 619623210 550128942 476308035 573265478 907389713 711238122 513585136 232375426 727493307 122062989 625397099 433184568 962475667 389898324 733963598 636638992 256396437 504523959 191148303 324979810 21071083 831514145 408199649 875264151 886955442 525187587 86120808 240439570 969524242 993543641 235289660 249389093 942758231 742579353 387301167 753635068 846048337 401830762 955578911 675472176 482830136 786022470 250725619 458977694 45867068 106860044 433915258 94405390 30517289 966408788 292815426 563780963 773030173 236214209 776915473 555513868 397672836 76886826 827461735 905804727 659155374 188511190 315995263 636984316 329590870 50648253 353144226 687658827 52199743 611294338 600914678 680132567 748078624 615941166 693401785 153718862 649312715 710748755 545097518 324351191 14277003 187958616 548206162 567694894 153171971 612888602 191240219 644846411 85159759 963272935 261821361 226726888 104242585 355265849 395161463 911746636 39200103 549026378 377029586 210196214 829003975 790578387 723475200 566597595 229910390 670122774 549025171 907653570 667838130 755229571 398476205 75972282 403265552 588491192 637850184 390389329 554705830 448151016 738336607 192751982 37543448 298382170 286950051 855229090 259991523 899783492 713574094 965424753 279401386 718447012 717184599 104508905 306352236 608733075 671915068 779259151 291300096 260147123 423826037 448586343 49420294 943458643 329555766 390677048 693045717 313909755 356368826 670188828 807273074 10685826 954029460 886707199 757903218 908362627 702149474 47578949 921364873 438736734 779509149 868536033 633308128 476888108 819407718 116076415 870106188 813290807 677070129 578401108 763215385 253176243 19432343 519713542 411006479 745716046 358111726 179127044 31253205 769346777 524289842 772325702 149353227 725265762 956202398 611228183 28346487 872385029 245682199 168456152 878231809 200998806 153032016 954423686 415621771 219666088 607827113 237652180 730253970 633712507 515488112 709279816 403050960 925986084 227188584 663389950 674354724 958008746 475143845 82117190 634022436 828995474 531778732 228843080 449767675 174305431 236456077 53371318 300969460 190817920 690688218 520302149 324403294 612765542 19367358 956410838 282403111 485725861 131934775 672502058 87441298 258209044 966079898 471075310 881886984 741494067 572812362 435020635 810577654 434720529 217975860 421988707 26074833 606108849 711462199 109547780 238717132 533962519 731302468 399980713 556251865 944858498 865823025 307711676 974995152 764329774 979000233 145382032 939375552 827948264 316233928 13927559 799208465 554557030 325312496 624484063 351832272 151157384 755569691 863333116 632313117 865835103 353833346 622757436 11543017 354940224 619737579 375716378 297312735 744875798 451580887 64360534 51597753 483720850 814290916 987166471 275420292 956619916 130622051 860632933 864444026 194856089 816893243 674580877 330285588 448892023 347868824 45548501 807686592 482776097 196076728 691815859 439977943 661889214 822729899 510888635 403056487 855989570 638438335 68101483 240947157 87244886 456292735 306203494 788134256 63265839 830887895 745184113 717823901 635187212 766011713 717255035 238624423 321882124 532450727 327994827 988825789 449154149 200342931 190139910 443384095 770474996 415234380 25770766 722787021 18910329 64276041 258625703 9392685 948248695 552825238 384998873 810905733 865597491 891401167 694513499 10704779 174379408 96605026 659563960 201134513 155390162 650285857 140226375 220689179 812063519 840148045 191226958 242627372 172560316 571620163 213282085 729922835 654694528 731829427 211012062 134946678 780123588 93962709 432133681 856316012 16419155 125868802 680188857 496646761 504424426 324932857 593173163 271619597 643932911 33910595 533675146 703361662 913838488 586603821 699991806 540708672 752737587 694919948 842078875 551038915 127737934 263080862 995816957 509464877 734344639 468292994 77128095 943064865 488689862 118877836 145564640 112113123 758877487 451768906 507667340 558674402 680423381 624079588 793887216 178345828 751075963 294168059 160946091 364807349 5266863 270633878 890666813 460083751 336425935 546608131 368669670 376718391 609910854 591847113 690042103 211289195 565514348 590665020 659224596 264984911 868214307 739763781 816391314 177090768 643779728 45041675 746671875 488105647 341309861 557260788 916423668 470723070 418356168 533284643 987038281 996721898 127665820 166684258 671432387 260905461 599444183 546792917 272338725 729844572 689365590 974205125 693765769 252025738 211515788 304641885 516888113 754492650 778718311 852656510 349655171 802042417 398396779 161463346 990223742 295835201 3325174 26161419 629688944 703189767 106438229 181990537 206712486 71463449 287888945 834248711 290025765 891501176 465425470 644103254 901326973 185784974 261702939 199831577 832042855 625155347 64469677 988083249 81217342 63138780 325821278 131018722 290946564 373255894 568985342 81461909 829579807 442149431 257751273 72289534 417473877 877742057 118149257 797887 943801512 585499335 905021296 964954823 758420173 188472491 896061115 281586929 974711681 722413198 748937398 963670445 313706624 388548621 45268406 904773957 314324338 973100707 228970923 960084889 902730259 976954836 25986900 550654597 143308541 293632887 956463479 369696754 858807927 623136435 919774424 185146483 973972947 674824876 398946590 714149458 211039688 486727424 745412041 107578733 988040972 161427188 41432406 92445695 799470351 549643966 591243633 703097208 402503430 763363120 487631172 992010385 962459748 518934128 643284 573313173 96391639 711109476 654473470 184420082 214584993 496945637 60179582 129994845 165697164 541191563 175066629 212835651 904083787 14051827 441326964 362578110 988044361 904497347 914729463 602079650 264654985 131818299 287248355 59370458 133037913 298278727 359379768 504948068 615588862 472743118 12759702 965601540 525692152 680610429 629340073 354269722 810589291 286932770 110338299 91334746 152073159 27288791 218682448 941331624 144777860 797597447 85113463 411066758 4251948 342708359 115766687 995694023 248309166 189857234 416583127 922592998 905706129 267781422 244046765 683010724 136045511 248059540 419612855 713102090 846620508 444456569 80611847 363065158 925120585 826023513 504536045 21090143 191423902 275702836 759566703 834975908 736058490 373069037 234158944 555585191 428419888 989236998 746125259 476929184 373195236 332850422 842269325 585145525 340286525 242378735 225029592 673622949 908756073 241726027 48777180 64494261 849078277 365304261 188291118 401342193 891718464 458279830 756113788 347842136 873831815 743822849 618244773 565886159 583599554 281807616 914932011 673202344 693126844 463925999 33167543 589827355 928549856 123681151 268464516 905701495 966760559 560334414 652427048 185482240 537951978 727839068 989676736 891866182 788437257 299632357 495657452 10947316 728982293 101645169 46454756 284310086 683617262 48130355 349696605 228956313 149134679 519227722 79262217 488147758 825714855 68654630 507557285 266037120 70391035 733070770 237259758 249581725 15976947 103163404 774690945 19812250 316182096 138371456 599460699 397759427 50528167 186800687 720601783 817002425 33683017 33810211 455836363 447839951 608865332 438607140 964295306 200729780 246794398 920362084 634639307 8713564 533763200 645885426 868062215 332472828 670963956 665116823 686662932 433431171 50428273 296102306 856957167 878704614 741440690 45500929 726378682 905873555 674307806 95312409 463798162 247745859 38167369 642118673 235541472 650423550 493429798 140539914 108257350 761531804 435551296 198705009 519169908 952129567 36085699 119507734 506191959 121082696 168624665 891015685 918700637 162248241 960595122 791054030 33008089 115293559 288572910 918359276 711964032 910046382 834652692 240392291 996632551 371392759 51811750 748174947 714114750 500757413 431155612 54221697 677696075 417603091 777725885 758947812 581185119 505536709 386980618 52816473 375578515 648800351 537628720 685082558 216105515 392534905 161036915 687468737 577230402 467449311 215647102 721984585 828569788 94552570 707855012 247387821 969658362 306650035 982371414 561957470 612065360 163447773 699717949 666008337 184625557 476112265 341667764 868281863 374830032 164328840 484850899 232743044 928843963 320758181 809065633 152063006 597049443 395068887 996085955 847432538 17272493 804255137 716471666 288957577 906693920 335770954 694287514 943687903 992909120 648716792 33152521 782565005 73050652 737137447 457337412 383506490 65480464 638524550 376197693 752719128 824923445 824237989 615699028 259192802 16794746 868923623 35653427 68143193 367412179 71069572 676633733 875490014 205107988 87542340 254747519 240567515 67696605 379219396 396020189 758213122 274467872 863269278 181661123 802959595 406368390 697420979 250523308 230708806 372965378 912890667 244708628 874117513 463674752 410353542 208087037 498158305 982209127 788973671 91504271 497954506 187082640 41705409 485697221 189791360 425777776 728530602 462740965 333629854 872620960 684128203 928001316 973864815 198604726 942719056 321176589 382261615 198628023 198585352 230301039 997278977 443816908 922922237 237072513 258299429 32239171 52352389 740187405 132861564 536008640 503471828 915806875 706922997 57774755 318529789 49530010 197642000 457138806 741536517 887251202 417315474 224267958 872717966 748978074 952374538 158311198 242681540 83015233 432115937 7608607 551919345 259264440 409977157 80235632 981240861 360907979 7567649 452992003 847287933 953740031 326278447 2254890 87394320 523144488 752095305 134634551 383264285 142222312 454273894 425230981 76235259 409723690 195991806 439868090 760041883 70848349 234406139 275771968 321749272 125023337 817254687 41977065 216280480 369828147 685458308 734981141 883957172 460880920 870701565 321180535 676705428 782533776 867473197 355075906 612661558 484774498 230023671 253598943 103095982 742400061 378978008 125339486 222719294 512851928 641796904 160032496 306150367 543217222 455495684 670906709 647428756 953531081 693619520 29789487 809552367 736514758 324159901 664171977 186592591 83875835 933223485 16566663 788898614 21436151 7837625 695090777 18789010 133117486 703223777 587637181 491699058 412345413 360675822 283311160 406400802 717408857 347766220 149983395 120096004 33134272 214174468 497720317 225652834 422652956 201390066 668376115 171800793 900960111 621549272 92722626 884571139 782502182 154600583 64265685 993777701 580283583 49470582 539251213 366167503 565817434 883065223 13967655 872573258 216633222 416635534 760422483 720447430 118682575 409005508 323182985 542637978 195761854 207186257 499777042 660448936 447373939 753404964 952600058 116105843 477339292 841781429 897001803 685699134 686993461 329108843 686702489 397760725 553987484 92356825 850387763 280476104 562933684 281475374 191239325 314139787 432360795 963611338 240152483 129449571 171372648 524371960 562506000 151033327 320669529 480626142 423434847 550835006 430901337 367997678 584532029 197190095 865020926 974983342 933231803 526412834 378954057 694083817 316608562 89870520 709744252 719548988 539569458 651873548 46195486 174085638 676722137 436970800 335903241 339680264 648876230 142326011 330470459 570890575 246271435 269608380 382425489 364461006 69825975 902621826 437302169 914778905 641944550 331597882 908398947 784405386 762751568 533062322 394488946 317202200 91758895 233890924 224476546 635183202 814212258 675296734 552930385 781419622 22634899 796947380 928760068 697998025 518590810 268001367 9179522 624583686 835590625 678670494 733566794 833926184 357779382 95801853 630787588 352132324 362626232 819189888 619357324 9430944 497317765 458068008 759469800 356631038 426828627 297282242 765491730 614409100 480395805 778062463 144664608 210355582 3055164 198113752 317543235 959021245 646548793 713389180 362274925 539783851 990817363 342050054 309701313 579410601 342070161 883733076 284962290 33004863 583231527 862460772 306101884 309860064 77254780 379503424 346205984 618338211 720539577 409393691 166616383 997617685 384979744 924591129 271957150 447985041 294384758 390601169 864807172 754380436 31515584 304290911 516958397 667631948 252020932 350436959 71734730 705024729 105403948 93646211 844665964 388243094 846760532 72092547 510951133 305305901 395798202 367408190 765539986 728586744 696320011 575911926 686948668 443538894 345436089 599410476 996445331 265476486 186944338 824891026 790170375 214953466 274024967 430173881 588466673 822043948 834271313 190469907 670023442 947193265 11008530 452981875 313660344 974364031 178536426 959941787 18485464 818205086 120390977 181631863 170013564 719970049 684863611 542523371 687725276 431247407 973007926 495148971 264466699 807285595 481915855 569267715 180375670 154789753 703836252 495921212 797582756 720795970 344476788 716922534 353784091 869042295 681702040 623650371 333826850 608197121 872543213 641034989 447097216 847461364 2831104 199498071 722066567 777345223 779224384 719720990 882173825 461995104 935542043 690607271 941204288 242756981 897684942 16645162 112687886 32564236 515466227 321534629 283659796 78229537 377012836 905052056 30492771 886322285 511926789 480794119 19198112 495366881 712773267 867946452 12071589 185171206 668197113 13382737 810055009 240186657 325165879 570027509 383265157 222667012 928790471 322787182 395921700 939071734 74622867 643482405 215535872 529497358 280223467 9018105 675944407 705683085 495453957 291766981 291136389 258767199 88537529 304625743 414026364 157779461 681608105 46077286 193224540 30982671 226625122 770290284 772642556 859120701 94008990 249639195 176564662 539462370 889659044 179231639 930483787 625207993 572942171 992171601 846447265 148654701 40331364 269174138 610046898 827742659 42508852 900392920 540525975 738627425 549937415 669758626 56172484 428386920 501472942 562757725 233912122 892532110 839359987 506068673 25063237 581704642 181272423 50967669 779660666 516286660 846025492 206089556 286851238 2229908 957436966 2608665 755011219 657229444 31967984 103122742 964246611 517695018 900613339 617245678 966495096 577207436 141944077 256916711 236260367 401425662 991882863 514876754 83727658 95765986 786036898 855569813 840855317 680508257 624156655 528033415 806944529 865786652 143482803 471895666 604718111 827178255 631959719 534422246 605919788 465417932 5825016 408754219 136836205 277839183 611762675 300120508 158586493 622043976 952151161 214745184 192734742 563370380 738016211 251719799 273559820 906965194 75722966 386519040 932242581 944199142 18138890 121930703 777566722 277512274 269033103 381034148 740304172 166162568 64307489 917917065 38036064 612607289 283620947 764859158 495764669 575677890 381830714 874706600 130316700 911360543 612014965 440324361 54061693 41272325 179260023 527007350 449575710 607299130 952141110 189551846 758179871 119533907 263338240 437280834 248297750 291449407 613039980 676452532 128235278 839815201 773121607 790461602 977751800 93980229 773273391 332138380 800789438 349080953 988100508 827675847 271378753 714038364 799541092 110345281 935673493 728446854 912810582 354412680 379249654 207830702 271195736 367732319 319874669 203183388 491288518 321671099 754940150 565788672 271355597 597820800 144408917 33939923 734418877 973590369 409150439 46210556 355340366 439083945 847294795 406614420 847537852 407881998 876957037 328688401 917173881 788418746 312063454 846802440 979488492 461902944 684094220 791194142 267984672 110004988 266382738 363635956 687485038 936369455 654928218 670661633 192825756 805946413 759630946 442386950 523910992 302818508 949859707 803178055 907575255 591072553 468789214 573254484 406612034 561582149 135591728 549216043 303360407 503594015 535846583 702966898 513263995 862571790 24369289 930673306 946574735 286420033 201373494 66614778 700322368 273714618 672983754 51123261 81094987 453171130 255295909 95007268 853732411 4120625 672644974 771318963 157903535 299558352 610007859 917194782 25511781 595395582 77257555 978251141 634808400 697456211 128581575 149736887 725722471 854808337 978606063 217120569 755623241 588177259 898360585 365049723 833584666 422124273 402866343 267942655 446215831 282013385 348992968 860820050 396739373 662479956 991388616 506573699 76435977 747551918 545887742 909406211 745400554 57592308 200585137 289998429 109234575 199497495 892838698 70909726 972937547 660107979 951786982 250720645 493083291 771133759 405443640 968551881 568931330 942516923 883699432 626514949 980023221 476804567 832214938 403011544 640718025 642086736 326536387 462251971 276433422 353496998 691705538 34563954 359895754 746360861 813330592 689441122 766870977 420712960 831431031 247318038 516463449 553695019 329098528 666213189 436662310 43080052 24857691 427980721 197045482 483114739 146256181 192415030 535126525 730548469 815307894 546279328 37819854 767220485 667511500 694189922 853465205 238742127 251126956 893049663 643435990 260974556 135719873 585401492 184186108 582011057 420865312 70179414 595662880 305205137 156694072 170337485 951711946 144832764 13303719 375172191 301948928 121301439 596360229 601812191 771847152 400407688 581270514 171672610 269245706 368280535 328668166 319871980 23018143 491308047 347689824 832267614 490245001 498860523 319335790 576641288 675338150 611288526 831899218 437426804 317291195 303385280 696996074 752556027 784922876 393758338 604612817 992650676 172835565 474074370 621845517 575979799 954493209 155132175 406898415 907592553 320316159 627493020 799615926 549768081 579496056 751599803 189724034 211898183 73638566 814498587 788758413 98766034 862221778 543392924 593518598 159180917 708665373 383645038 482042609 950863448 108208024 416212972 728119187 173775558 247012078 881091881 456288948 734416788 915374215 500145182 808367077 154206157 180311223 369900854 104718351 309734431 569004793 750847762 565589833 955522763 9578911 85886377 543040608 48655902 79075874 156131178 895864439 525724357 146163803 585993054 496533918 708338421 987883120 510722226 664896555 862813433 883922775 150280143 524237703 785934214 284395872 868798249 520352417 146104544 747487468 374664241 745548319 51775255 199868887 622791067 977734339 789710645 833802107 833947333 168394014 571618701 869807175 440873473 9773044 895986553 510465124 112938445 172617073 102904802 439568581 226720685 753544778 695334911 963164646 330016433 251648507 837912796 537725530 51861807 840154743 570799525 51789656 923651383 848240382 821009669 594324785 825486820 149544792 31360516 978797297 544313555 907413745 182703839 587414797 30104482 809631167 520811029 18832166 161873019 35234600 636348363 257626916 723856383 83828671 318177340 10980393 649838362 596553764 515200153 602926405 634207 466911467 952227190 156176382 473494709 749810781 367362298 606021352 936039297 774302593 187773588 723695458 190438278 22201804 99818770 645232764 145632760 281727017 403725237 758176904 192783337 345433989 69250361 149330257 229660404 491113151 238331495 298716003 657143493 603532114 858654707 572015997 742447398 648720111 465329720 674974222 160518609 500723383 354339728 820576827 238113149 413155305 796922289 143563184 475896041 705517353 251800134 411738358 272463245 650973818 108732381 503303988 869145573 747256951 929900100 669364094 949224193 930305975 227524921 708915386 660352085 66888112 601626990 379472045 371407635 727154523 471974447 471372271 134382646 548012579 894620436 882568105 512164966 275142151 958608787 351987194 754712030 834698330 229304133 691869471 779962934 738154185 135388974 120608283 649101946 308746356 321133406 821629293 611900313 23708485 844069395 408393208 278374004 284155523 788800545 102804958 206962386 333125549 897470094 663517559 294450757 586550732 536222941 971686365 326462462 4887370 852875150 312006480 689505445 174598977 815917290 725007837 433486646 517112323 563978232 403769448 924443789 608064560 967623371 229868018 919189078 654740075 667225837 852376881 209024620 584385461 580236906 175469249 310891788 23301201 584851019 669428871 353791329 483885519 881064582 900981315 228374772 671369906 622652500 675193766 944425016 438226454 292779236 801775342 122769036 145156002 967818150 818041347 215951147 247082825 889988959 57092319 347864808 597262899 260362305 807605284 529068242 274535131 362573659 516952651 978729330 176654911 115544354 62506320 223913826 280356100 647553580 595634986 4362177 644675635 524244668 221644472 773755144 2716609 346618619 335589146 585171080 625209100 704501195 419118418 323001614 568771062 55189486 890665075 889799246 640597502 422859147 590050594 176706961 529960016 803672433 117721049 718917697 752262633 243946614 206711122 156525489 475385948 11530052 698817918 443797655 705998010 326983735 181669132 267328323 919449059 283011126 728889069 220071186 755575264 591134347 363637296 824745602 571640094 350300244 815037039 472687776 560899505 111298907 89415738 622582711 409415944 426049527 88161396 434006056 396859309 71447584 921227390 109329247 846925799 273286274 549054681 587467347 798458168 47844200 632449865 303100797 279842936 432602690 874083850 131816399 274234856 155217740 379999457 131202292 331870289 738100147 321061739 724771588 375029056 454334040 237788160 575562932 198973329 709884433 724557407 582941179 740302594 738796517 155215590 682662330 754330004 563861707 137370278 484894583 745138665 605014380 242627487 806902389 237277703 344688516 902105675 845887092 217722080 539030761 322616082 793796122 105787339 984983210 672293400 802554378 309876731 147924616 773705310 640444003 536208772 228541163 183174795 877690552 203199654 180951651 811578776 367519158 163504604 639663462 769600823 807611212 45237950 230830595 537487246 244865873 456279462 763437368 497054352 864193424 600221544 811562868 637681047 638890886 535753335 233507828 213293013 783346335 454030200 392443696 564217001 921802072 43712315 888479049 672461609 742422143 870829696 669915020 467378837 734082133 284295241 849445574 151193288 925334057 508804705 62613634 977586935 123906329 275074959 399267160 861662519 451053573 826211164 563155769 279417946 249757078 37024476 746032900 428617427 754344621 434906977 445377530 327568134 920093793 890552384 847918289 49106448 11487844 937805705 465449359 165434064 684172270 171877660 674610689 803002543 511857070 802094488 71591278 341296940 607735137 87569385 232138247 206282602 572583685 741093431 845076057 696810114 76924864 857867690 721138341 981373302 695704483 84053651 594318195 286701843 526400760 93856264 675573784 968550403 839133406 590473909 176912028 361022319 966853662 440056453 414764440 583999055 980116391 558991018 405429755 353599407 919555371 135286662 535286207 453764662 51533581 355715952 403526099 12061669 457269312 473281219 833813371 606102439 167821326 695190552 319420816 546841321 78246045 281239370 51165134 299190959 88962265 659290119 157922246 30585697 929957970 393913706 468847206 608565511 844523466 685752039 624255922 394424509 877367025 533802797 346453855 199747354 19207771 468818023 382488741 754138075 749441763 477034238 967484724 320484405 47110130 468866812 688039205 576117816 165258294 97324081 749152494 603417583 695141904 29594449 590077778 226999808 491701209 844875160 407377163 35994852 370095865 823576183 49223102 495245007 530685051 810411539 482774075 742477047 406139120 694156749 425580712 465126061 720672469 363826588 565722321 632397307 695137692 766827230 93010713 934218718 586512727 900881098 103364353 972142415 40640024 931397696 436628749 230389129 352372011 369371148 58149221 322124105 253704044 792405816 300471745 703882110 194498881 565656661 805146965 283562519 774866551 37121619 530430787 951996480 837899059 368993519 160554343 541875325 143726766 340569801 931254830 667298092 264361563 458725811 241367812 458855667 870989908 6640055 803484400 963388304 581181979 90776313 764573864 173103553 610365810 440851890 602843426 228476293 794284730 39581515 137370900 150890670 195460735 172391898 856435878 653354393 64852246 969231597 253396537 907451806 631124412 946767475 22194492 328420241 587285120 184199937 405405111 453522663 48134815 540856060 938322542 737571335 205854953 966468994 158478977 902824017 952999961 666600392 807968441 722760675 418684899 269535036 292653837 879538091 594210892 494176243 838717603 669874316 520296588 906891884 145169810 111581260 158585850 168046797 829353178 77313123 503595208 95044035 305223451 855637375 232124542 138174066 244886288 825176086 557009877 720646048 217548085 170724363 958678347 694464750 710717281 507677420 948711689 705905105 229010249 527065189 160606684 409267537 271237279 857435262 338328234 556977494 842307723 420046498 120363856 63349676 418530074 814032405 645613003 365158068 249662375 613385853 504418436 149920462 615001945 458915310 787075555 668316427 386347774 417176892 238267740 222288382 180278381 706087195 430121768 446923911 484607480 661938040 531146514 145642450 72715177 664585099 301282169 72045721 631461521 111022977 279953511 833667935 349938748 542417271 511566875 861224121 944781297 148273769 234601010 617518972 257234819 168752948 119585621 338746978 827543237 319086121 767162286 5197563 50932526 230042257 752906765 171758909 408943029 279828493 377059803 524946317 922456365 847482089 615406826 385733943 232644054 747624566 542289337 512248954 313517186 343016198 31740589 991973028 510683405 862635380 621109640 376468119 961849110 711254995 804934550 396622015 976400842 670929790 8010342 498387501 831750023 995293187 947514691 889750137 340163461 312234560 660973916 441665741 41426037 613989802 593743433 946465558 820735442 415941453 861657675 835511454 875601745 974582775 880116106 353144075 82645628 894006583 368737717 103204789 463842286 86249187 758463164 684724368 222720158 403996854 285486807 963867803 115754049 848515455 143979998 638245939 107244685 27960624 211858345 638145025 191450497 550745773 129071397 713954474 449117703 869730787 916816676 344664596 687953393 697703339 366617882 281619805 592428279 314783188 465001615 906816377 218616403 147636786 300630853 512714673 616574884 207955162 451091663 254896076 321603315 28352664 86611455 884697346 617743862 516779738 49788826 46489682 566232186 874686271 508434096 736501483 630104917 969936388 880327774 299337570 731623588 349061055 237976630 553267295 632643965 530870058 237649389 307428653 294702081 426976152 740156329 977537848 217269200 831026924 432152604 361795165 568037900 676724292 898770746 650728155 959891364 198222567 626275263 33655301 495726080 214879428 2280062 363990682 666804946 774601699 23284494 359362734 469091907 444195163 461139013 120831966 81106060 637382547 990687683 500346257 838813795 958859007 3606133 687303181 431596565 511425059 433313403 760445839 498537410 470142189 663739497 808278433 873964079 201789822 227741386 627973312 265683206 961913751 422324591 472750970 1074410 463185817 630807509 975851427 143007767 790192474 900406459 230325021 71059412 198412466 282567650 804509750 755621044 833760351 488432352 599400918 231116579 869366298 591447860 702671452 435121926 657488344 935241542 555505015 601073325 7370598 360577852 594681538 335202429 720889188 765586895 552023286 859084290 636856906 792154788 938962871 368499430 157790286 553136936 405752282 810247155 956391420 700641585 51189542 181525485 913873289 505977287 319989197 46875744 104373325 149601693 739160372 275159205 273993270 354788441 178190294 703008587 239603426 429872885 587149365 357267105 539848707 650162974 493571382 626413464 762823829 504565120 213612136 714833969 252092398 461409222 744804433 543013985 506929179 649725232 512292096 187451707 308936614 550026527 864298486 710919304 225364912 614402619 599363192 813801541 722626493 653784871 960252198 778478966 593158322 846290708 956596246 704365280 128562952 572009468 490907710 123678205 750392153 188488870 245001701 61720750 865548845 57933623 981808332 357196354 426823816 42632865 92241058 138572775 479498774 422927050 778563131 325066400 722903362 335196323 472063214 288125062 398890502 569459742 581977184 362211033 916329634 714900574 422556182 517313368 346984489 393824456 642904803 645249507 22462971 745531529 575228242 218330477 801523576 125837640 823625837 911803514 189067766 986036412 118567954 814569585 467138775 760956069 506051302 486153352 550705262 773125725 173384252 794205942 233562108 855679149 906084507 670685435 679145084 281315858 837791417 939803614 890083610 796986800 910495352 189673231 961003273 990050767 81631110 831498418 197635820 680219108 670846640 535787359 508539192 364607312 21415720 32812353 505141821 726122562 853141307 785639607 352662817 82751595 522726866 636637180 776024953 536982104 794366325 423814385 168738136 658182493 594402928 957667065 800522784 486551239 154581897 777005745 342602824 160842064 374836779 605143465 951998303 376448424 327747818 305585744 509834428 989079214 936659055 775083068 692057631 880952544 667488797 454487598 755627544 560583020 881289103 286624122 991615203 782313257 793641239 792950752 900624654 988160009 966698017 636165701 318219895 660195836 877309004 349988518 488305341 855271078 963766270 596139032 219435088 254365480 281502857 764549432 464044143 686224425 108259020 406763137 757868345 969719483 161576958 464070057 514061454 227860281 471640374 106202575 293131777 571412545 580481418 598077460 663027904 28899085 794267358 350755107 877594456 823249574 342953291 207612278 86376448 764324896 316793966 872475539 977181746 582271634 562827475 537989118 493037847 701996367 92437156 865365842 173530485 36028180 53983658 419002455 345056426 13168506 75430407 752840734 601454039 626275095 876258480 81051676 316234167 195433227 634638979 127251031 485480918 843702592 696246580 978498456 875382300 814297971 355760050 722335322 386030186 17258628 288296271 326616522 841218364 790032151 937279783 55789134 152349465 242404632 412578382 514670075 319312441 66921703 661545936 67524826 951125446 823112903 461519627 251483874 137359753 857015643 876182297 234539206 914519021 216329614 27556940 256693159 318229886 991634703 249287186 349381382 198598500 845707289 673682079 840256147 661128849 504603984 716875162 926468147 839895283 572656416 139824524 770452233 675795428 881428627 573216202 933823558 722425652 11659541 360044101 839399714 884066272 985452679 520058287 179429872 576913929 307298338 486186473 819578835 799556315 261138736 423398864 888569808 987106058 580161101 192285128 109115765 834544214 166259531 609314424 930734673 423387575 347762259 668893561 977002354 755185772 444766422 370218870 420236068 29241242 613887096 392907222 954508135 326886100 509462114 251334858 273058937 688621328 106073575 688127424 386502112 531431910 440064004 810853140 618651347 611725272 550929235 448462097 756763010 582578547 68445267 395013891 25655194 822766137 152358641 683253567 208973714 350066685 315861848 866867289 943981570 59672597 344396993 313347576 241722486 952889458 293877078 912604842 303500388 550719202 888003629 72858375 250622621 559870714 971486628 170974255 982839062 842655936 424326446 826609287 764200112 976435734 121464346 6883936 312672449 138802442 606929915 573636639 470984536 688188744 929115370 281829786 384470705 6106706 166476015 618094201 475266487 928069570 505127980 702206716 770591708 285260608 35642993 927334502 169958366 654390460 32931918 820505904 385247882 57796598 954771608 963942203 7608344 96467227 862537920 659129492 598045018 762036183 963860954 474491295 417455554 45352628 339730588 698688817 966895364 672359089 439828823 630120205 603947901 336369022 195027409 754078272 384905761 384887378 870174906 566646501 449868749 899801637 671566026 860577248 309564937 657298264 635643016 112946005 957127662 730830811 849035824 259915517 811899720 732754658 476280456 700977819 446627595 378159268 952615109 281940718 920963530 649662191 259950677 912305971 944179808 460913117 757047811 530316796 19748066 359014044 978495257 520712354 164005658 51506340 625758039 61988264 257518809 528320294 892829880 756334909 911519792 249208446 850902364 174983400 970884217 759548573 138823787 651437230 38116256 251578772 709164126 492234348 924606198 391610366 424372612 299842696 958263789 650070275 720208250 768404609 647727962 357831175 744383811 918982855 304712647 675328801 856459037 562925129 326682767 272652775 75268790 340375662 421726924 96000930 748153190 628895235 218897497 610092203 935208423 294363486 36754750 587982736 620765918 111299069 562452475 302404827 714892524 596448797 436791401 579602131 47044952 259618688 189298709 976938951 515976304 497240960 837947528 350217664 617220325 27479575 11521309 440965034 578508136 545698204 332895618 876155968 781155029 631876014 932340520 271985919 710647527 521669430 937155450 959518393 325379299 235947866 736650295 807534754 203794109 533970597 53753797 365302564 908319792 273002884 178063746 780730766 546643580 659764525 449306825 701385821 781252175 418699234 469674719 900573805 875171621 386356336 419728928 339806704 684293182 933890780 205726339 63431123 107142380 840441095 406900546 928751623 689495219 821804779 829569023 152469710 984840987 903196541 930123994 628021756 946565665 749677082 601106757 271380534 731868003 710632749 261733259 652045701 125398765 375695606 817484842 418256582 165160278 458943635 908336910 65894345 995317754 285764412 222443978 660806991 105288055 47614584 295334170 317432952 837156544 488387069 656303424 407566157 971872313 580326821 540633352 106421950 101788688 315570296 200390459 134375102 516895226 86459747 314046477 184964494 706386136 259006631 918573918 926647699 28695220 499873341 888705224 581618222 458357584 663103233 729738962 126942570 961298498 498726604 422846049 728886011 98284587 614794243 734622447 276906583 269572155 589809352 816318611 639874985 841508725 839510947 335544422 125041005 738217268 665305519 318797759 909180345 737306297 444712191 926029261 890709507 785530694 117342904 42672258 108241030 950726808 417367656 738656222 903635849 686066787 371428781 517812994 402792798 346908528 837696648 342002697 722904786 636761064 472102958 309135289 842726958 986348628 46374043 386686474 222034790 687621079 727426804 102198367 75191094 545417151 239632052 86653088 382194167 470879042 663854443 723578451 642152442 936325233 556119228 637601969 938628272 535531944 929594932 148698639 936864552 808146782 660438643 148653086 340879452 884357722 804749434 813664086 976173996 638413774 900098961 687327834 488330977 925217117 53727744 754610591 916826294 152973277 656717157 653939650 426358737 516042403 935701236 803265018 736625885 519655670 3203987 896192683 763196672 84557277 224716296 392112345 142390350 693850631 336486372 392132441 621061153 814898043 265951235 205107215 305093679 884623256 336472794 993400826 557755226 535202594 269765821 208753359 753447896 50252244 991625521 605582560 915402458 234903155 258810844 646812675 423679310 475587442 669742705 702486691 729532626 609621034 980288086 861384280 825645185 243317496 289657427 368536639 639567940 599034655 86904917 524481687 871926183 346623028 110551180 188113617 184645327 399894213 187650089 647323131 840890256 505308840 140766447 378714042 286061476 86971565 852224125 158521120 433612229 472305885 328420670 749501607 509963232 148930674 169305936 484103107 961618770 834740269 315943001 546626923 21909610 451145482 395729159 621890419 113281545 339905921 337531768 434315007 601205092 825306828 978609463 922206790 605371791 536647814 659986635 743013183 963186094 283916705 843462553 555159857 415097967 493065595 108777282 686949136 548699099 304175243 738176533 159985873 456659988 306902543 929706095 348054530 210608853 408555555 696528238 913510361 463150420 423408896 633808763 509558860 628066739 112514186 307623812 382612376 784669564 367245852 836219152 361038775 905674800 296798372 285744606 911677206 396169513 5416626 600476072 271962393 584015285 917072326 626046066 668397761 210461855 90518899 544798716 5193960 920788528 681335943 149522383 395241344 201918346 638609397 618445623 700024586 623061084 831181599 155683703 393428539 714703289 386605056 708357214 14873212 981598869 323777414 610835395 931090790 903415788 458768107 588799540 461726244 283017010 45443747 287196955 976292523 958658901 173604065 598603627 516879827 329014778 369425004 650920862 400047391 597368418 228824960 663993275 834938775 517156481 474242073 152076201 651857675 689418009 952417857 202235603 388806063 108906225 815925479 854539331 694821615 147563948 323898350 787826841 5738511 908036730 294223440 471168515 820440638 272663668 209586251 343450014 104917218 457592230 720659384 811887560 486404720 817700772 141213068 37125729 505358479 679400107 504164974 796148681 645001044 420171394 958595136 690300555 51296879 246001983 667850980 622799176 690906820 546770794 877393138 284246269 433892663 247042762 812189906 39502038 729772326 648166121 466474662 933384362 857289808 669829217 974441973 708159494 149721138 153749261 890398664 341051954 70493959 249118558 319069948 270296494 33967758 748504179 302805225 329260864 245595560 95704141 499705981 499191024 462932516 447660447 369180098 981255831 427242380 700968799 826416245 190992160 768783721 123704022 154444476 874008715 859102985 928587031 187420863 491384007 858348136 311487152 917824436 691111815 651743772 155751056 166212789 976947000 28065954 544350920 306694011 725620353 261152828 608204748 57562477 406570874 2612886 372144138 762896764 134285691 947657626 681756149 830770528 320429838 682485126 161823653 931832839 405648969 769447807 953156280 830206899 424129098 107402240 438769980 203530412 319761915 954921460 112334218 706219596 75909282 315776622 436900579 39690136 66748962 633796643 48740831 175493092 305811294 89117444 59609453 156436961 272494784 724032254 171688736 194824553 237416372 724197638 707790442 910800632 48439028 866830093 69610433 108135704 991521754 79447340 560164160 727202442 133628145 359534762 559920711 638111103 45346675 258141411 213236569 103460272 165555657 794236643 51457343 198138109 837604913 307895925 227946461 680965147 67641468 3895305 427929106 579271110 233378400 944040909 498066569 890736799 890344853 627906475 548091056 278040066 36644951 778161125 146696583 765336241 844826953 57124634 115026366 3371204 953008415 687447277 893529928 411103905 180361376 358285685 186586527 830617277 438458115 760503431 626195265 675866548 519641007 201987699 30800017 659907348 408974639 584972512 81590593 891293142 679704846 427657268 156495587 636344136 551816922 103680161 703333229 64993263 856048007 561909641 247931866 968709326 788879846 139790603 508339338 753202963 483126804 453779799 558960488 6398210 804880895 280521787 877945526 590601106 388632458 32330237 896331335 618215502 657778710 726019727 262380882 636713270 423498026 291561986 451014171 23255070 705613702 124417358 708067761 606184366 159853058 586138818 236311545 207512910 49239057 657636491 827594191 365744397 779807904 676498383 316478769 286653084 11847716 653096752 421811058 40263478 190430970 117741972 214263717 688471607 381822402 20795200 748432715 275239927 147616648 500701752 751299095 73941915 853173870 615459848 783939550 910290007 935215820 666368767 281814417 574138825 822460155 124969184 898098089 789675827 844898749 729517572 927204069 102715103 616444028 601152988 436173020 269963709 286946409 927647641 761872721 808928274 301154527 750202095 828273718 246218390 710635762 242918902 287137977 60680313 108435125 424853129 73108705 594245987 562365834 395935217 983244251 474972853 855430071 809315985 761562258 438205457 502069439 757752003 226993774 881912380 965732929 278832355 455176108 457209017 597426562 130975817 272328958 502863644 786759809 878899160 61219146 982487762 197196693 247872475 230329553 945412464 23120207 113140508 359344448 308647728 806977230 382297055 644688722 585027955 940677465 16143051 952006627 824181721 803318577 48644507 8405702 80195474 601009014 336274961 693620011 711252362 798128578 701626556 26922729 627834082 837635057 381770907 591804569 947965556 397667123 784449749 540449112 58117654 130994514 13044828 312418980 956731774 752822956 836019211 186891995 671430511 524407638 19308257 733264585 259278983 476999282 287295491 597458098 588579144 316314523 715865367 572374449 877710682 625478278 411588291 573951420 360685203 344928921 526882846 91323720 71324660 555304810 632486450 685831673 296039066 99435972 883842871 108190907 947457245 921721609 92364309 487591759 101497683 283568228 180578029 30562982 613948877 375466487 531087362 838079864 826586499 965736755 542214782 482830072 41676367 154395322 430534121 691368069 306031463 707226498 412648439 271950515 530122186 262101212 678645088 872699776 276245364 660339767 554205811 531457839 626308883 715364403 70381531 745628080 644889877 811818039 10463470 446533369 793976375 34941747 412370512 274656755 556258195 530144430 204937504 832210255 263593 272383246 131462659 412403548 262552692 349378860 283411873 117951054 678888664 872799858 661669361 84451912 630141329 409667279 514049660 431802695 754847871 481633285 52788079 325357129 926362387 960127885 240052797 833899487 240997431 594874120 79647861 36955985 984896685 386079708 519058891 90640100 214619098 948188134 928317059 122306477 467309263 233131669 271640053 993617881 50592593 558599207 588586079 839101234 161020718 247758961 529278334 158117091 269156142 184015119 517021855 79365007 450728900 780005163 211357708 780263911 394028594 254801990 176016293 736883777 320793482 858741632 148366547 46143423 184148901 286901012 690621155 997546687 290658060 478613637 109655588 189040533 160720463 231315587 677765647 231053988 357818228 388381332 641795232 303995912 450575414 543111305 687707623 993310197 160874983 341714998 893363583 376471092 207076679 338014417 996935426 67059766 115834791 409375696 711754196 598282294 698517341 985505332 610609885 578572363 150782991 371431439 729006088 382889155 578980740 844442236 725662148 692761112 952064042 826292995 187184274 768364537 811833206 206180064 800234557 840543517 887539172 537067201 93423659 551880114 665313193 564210587 564561430 835071549 553474786 700873952 383652812 854817911 12830741 947627493 240292065 373268156 223764267 239432199 152383054 583266172 973387609 991080332 431968425 550947297 653043005 505678049 863195570 404744062 452509652 218378638 961298610 114465036 981521661 637261604 262503834 187591839 9988560 891847008 805952802 949970536 624879341 78201154 817861906 104719911 843290123 574168505 205234663 614306043 143620157 299485529 928604194 401984704 844017026 393169525 436493074 614331 394381058 472177382 188431911 599798980 594046553 981650334 855182886 175120195 63957236 751983276 747142917 491115442 109652597 870128988 865903323 17875334 66390919 900895073 775371353 421547878 147105124 161738076 448822626 154318949 165396428 102839127 445331713 741335483 907965833 310080983 627520427 698788652 256502143 708371677 787019058 110156836 738299107 105547021 602626643 981296795 570532487 391649564 946303185 824208044 208153704 823423380 324053653 744826956 393153239 265210913 864030271 322964783 192675574 356844190 356942072 45901656 286056826 890541543 302465537 718316758 453204750 482952019 499668336 564237939 974527570 785018538 403120344 94735264 341803725 129304625 590904124 568104935 509845202 253604018 574943481 670872102 405290063 606976453 207715628 637990533 720360283 849845494 656421247 850798090 772972727 143659780 620700383 682392980 237903193 467526281 863365513 159319316 899138100 578005240 372204032 619911474 44715413 61494189 107262476 893052596 597960392 922125022 478807832 489584699 599786767 215068301 235143861 732926312 152403239 828695240 719617828 105275197 164620218 284543353 869851908 181416195 714087130 660514882 594049166 922656834 268517032 619435823 335708240 341481736 77539711 773069193 80579553 598644893 384751795 527903465 448681387 486096019 306556346 412719772 49571632 769335926 559151225 262985150 301036384 384456462 310280315 807070654 810754131 640284816 616737964 147599852 559212675 914201444 137802662 293008922 835033802 415779537 488238863 983179995 748036847 420897952 42875944 522954958 652513689 983356398 533800317 584115604 505408050 315533958 740746807 96874125 235284542 292135751 495277104 937572881 97132433 355830808 348190881 282648852 318062831 302742040 618418887 689972714 483029215 708739126 791159958 12379294 978055421 360017901 870833235 46486216 129834565 534877109 827693164 797771317 453648745 482528817 585033278 505688274 419824155 972200228 426264189 243890992 369875677 340954919 923372273 118366341 110042721 504826520 722430525 844030156 846163398 885592398 710827537 129562867 859282926 491526093 751513964 708472 843632809 974283059 389851528 366241635 229919312 313269663 898448954 547203145 239991229 986108224 726822220 553634601 51195288 781654345 641887850 456541214 598498379 295856293 967089857 805922022 649986344 4432557 208920086 103871790 646743060 7756634 763193630 10096183 660919485 258540133 316732971 550446320 128245730 88838355 71838230 765337605 199364201 495239864 384166591 115052760 730246381 808938706 659976031 899380111 518121099 394097345 801154910 363047370 908175545 293685193 283059041 437021895 975090726 676404853 67839471 102281655 553206657 174113525 806683491 116693834 689882793 185633077 378691105 135279458 87794309 661220080 169261696 55891930 686520708 274121137 404627765 563274283 65994944 289738024 59166189 114595254 598672511 117336021 316667090 889944937 811883265 856183226 784524876 795119464 489316215 546723572 605637047 392079407 648281150 271888722 792556175 278418388 585858261 61313643 837228495 717707588 253938592 81934512 459393808 651785234 526727051 150828379 501120203 68149437 87273602 70722682 804561957 56091744 712893185 195437074 37287769 262147018 941903848 629685579 992807705 57162472 481451751 431242291 636128756 788216215 962245817 571645366 980096240 621007118 323724628 855537068 518020133 584539717 61084462 245489517 441986238 963020482 38330450 709656540 733945269 513882307 654431772 225660386 303390082 802900234 549029393 811399811 269798260 229377589 9065532 827891980 54289569 658521598 595033409 282423827 307594623 209043360 164195473 15941777 205820119 746812506 424268138 557136914 754875996 462468600 169075329 896984952 382970186 150893217 454891912 622863702 82355276 876413084 408872922 121850939 84015816 940479726 422936408 561962971 439509950 7800096 590121196 910255572 436521467 229726688 736894019 693112459 820602117 644447581 234072022 449042460 94055351 533196594 438556500 351386831 408607301 539064821 429789922 319709454 234174304 956602745 506472361 409271861 957164083 448270297 512315927 190385912 77650071 660442508 204848405 37860952 196889837 604629634 192509127 278656750 628599855 173537191 271023318 503719172 387324519 354332594 797001424 807319382 882549698 579640228 519372432 803460109 512932259 444966791 700959858 765323831 240499833 731200307 770051560 405039929 887415701 280282710 677913582 887147665 528746834 316342257 760125220 414785547 842612081 424047316 23818988 135037886 518486613 439494622 753517256 368069501 13032426 475822765 378164149 142121908 78220724 574376497 968309729 136117531 109265826 218899301 291687028 716768528 243818655 526993461 141257114 239638096 96133222 300543912 101530014 179208692 291656572 175712496 4765798 309964164 933735911 396333274 143090303 800024211 292748025 43031243 114227509 48286876 848777068 566836025 405504918 31070255 71019220 888756725 169132527 639981081 882627535 269389752 469310214 52235026 155976021 342285572 446447295 463323389 365898004 633778815 713534099 305697625 831368160 741921781 261133531 794445507 583505891 69624236 157213695 459080023 860992127 354842640 309072563 51127370 319225981 292484732 225704579 511122861 682074109 718282401 936594555 447076587 789317967 652459748 506705094 879834454 482793326 288530417 457353965 713999352 625527226 26278906 768706094 533249572 209885518 296822392 173275618 774420592 696501590 401113831 762765059 744619189 325641643 223436644 376430330 238804109 540757013 654925973 550566518 561114763 471966413 814529621 490747165 830034971 142105290 196471258 760474078 913910914 515576903 145388435 648186996 628368499 889540585 793988744 165122420 592299552 491846904 369990896 953473689 330934496 569021184 915073031 392940487 432440973 781774530 245731703 228560496 661202467 22151719 686566788 269005500 707158082 439995810 424712258 164123491 670838141 389280735 343833179 621978544 731284808 46546092 200865194 388419359 813007456 562696817 460287541 776278309 772025033 927096454 102629088 552369882 270685382 280083951 92704146 163148244 967249912 930497662 399581107 196807225 833447149 75215826 317665843 269739657 381642821 57539874 157094269 340410301 686419369 863769048 773029424 151169016 902590535 203961525 957364219 702826429 803829074 503456986 401390574 106520601 732298358 955414004 813248179 252431871 540655811 589723493 260531852 908713149 311757129 356669921 210385150 616477696 909459123 917323942 128831579 234082238 333701068 57720170 112523166 718436270 967597009 908151687 684532301 615826753 779911778 876007736 13630297 409272062 483926435 855527239 506201942 513573804 471434035 364386721 664504401 271898859 58617791 280275520 246017756 429374643 190249793 106057331 383569538 371510184 21068345 496456973 511103981 544653833 972459776 156720138 730481063 962878221 520645384 545120117 128201969 380158815 888425073 853119638 15362676 37646795 711057096 88362475 549699252 745020797 199984723 136195109 710231945 113511924 428507012 401187319 439423105 804774790 314530621 615174169 54839137 294425798 351695849 267736778 723022690 17057767 727464739 2146254 97184371 250449624 620617957 618839116 927015481 592972871 539302897 272728185 900969477 466802483 957756649 417145242 177668286 973145410 300259130 7416263 212130937 811872254 571394893 600127922 687398545 885063546 819676317 451119332 925216541 537616761 236725134 403533816 605861573 992876552 946837149 159195420 79573492 145743923 956672073 434391150 12677439 523953147 155498784 821790308 385293406 305725345 215561454 795018914 320654207 894486711 85803976 150874233 784480085 22560078 163549604 605719427 813176271 619979045 632194392 272136700 499568667 330702298 934457706 106850696 208651532 774273134 78064221 183018317 10112539 693224994 496074694 512173771 67052011 644210806 32568353 988228912 294435044 790697235 720052586 88665600 91176081 783453307 24846191 713353308 142599894 930696132 596262544 65205798 950788619 270770203 467462729 426933323 666995446 933954750 973241047 424722570 351143024 491282519 218157725 430859208 474006104 242841316 615171721 98551559 299045618 695980620 537547751 672836619 294815505 982700392 403588452 172872379 997662850 392836297 116016187 458153268 808974135 142700045 63492389 757651904 493854964 675245808 512845134 410032256 653029751 953746621 529476786 899248279 151393084 837701697 991167230 991517551 792838422 957640132 958731577 794740855 278265623 404522247 621298759 851138257 249087178 781085419 439006285 139495590 607827625 561739985 456810909 514850064 859515817 438352928 177034557 791076305 886381517 611649060 128652146 950918862 689753382 154636014 645392148 757036053 964043564 34708294 870587503 367889498 828911382 77400946 397588879 664117308 274913107 641791460 841921674 324559883 424320612 880353326 522905432 506578562 262138618 574598120 647691808 724194353 56085552 595751234 724824851 609998054 367284389 986890679 166148453 579227794 520773392 387967377 740047147 788731155 419229656 501946243 918594919 574499699 401325777 647307453 910121521 905633955 23341546 180865699 20603375 465930354 545300305 996865234 88608881 968443823 175323728 773868652 114739279 398160124 29157224 285199646 483094879 875963860 685348291 200673988 313747501 215484496 863033849 22893486 73106109 935593782 910064686 905666005 880232461 710085696 312577486 876888837 594433963 218830816 581523771 295447623 272159603 105994868 639855254 329470143 263920902 51683495 406143376 168321424 159864766 359423569 171419924 476878210 15426844 308296298 29602693 374980609 712505140 576409943 587339696 770010922 365753085 425972927 126257871 187099947 273828646 290135460 12501279 228881638 372193699 680603248 250290249 327649062 61541157 818841367 140000080 415332147 326827401 868303935 19149480 676395339 407468829 461152582 566930894 145832460 245768368 892928996 847954256 48554818 521956609 129929677 642869757 277103555 876827849 503109583 932827670 959844161 650806823 56930456 651443929 44145714 14166941 966508953 184975108 794465123 162012598 478522061 206352064 903177976 280729673 800356594 335089744 365081312 207435551 145344455 221807797 580953345 111393658 575239099 750246716 852517732 68912366 625039379 334605929 489418294 878528798 93651723 796540313 850443088 874122885 883672615 24698647 911519710 504953688 630953843 414851586 188854376 51232961 974024058 57378698 801266987 837807839 617530559 55694736 945890354 310918983 77231587 955138005 133473298 802277972 783691523 279274746 647362700 80457542 221946510 725943742 650936043 656308528 444372702 879137802 298459378 372449258 548704312 213461985 626157377 496638565 941432371 628266126 723354371 805576316 865378064 561496021 562188981 602227590 822669693 13386179 814659588 408509981 45966531 746707389 69747864 990944157 537226953 202314798 716117622 35836509 425516841 490919485 302238094 228975442 823520089 972429168 474659774 768081662 368756241 32563628 265662016 782120833 303666809 510516409 477733028 899205582 810691057 646668807 508755565 509105602 431329091 143879410 1273961 669093681 819433355 332873753 445887304 787856774 375159825 951863443 959461131 655686174 433659655 992253753 575365407 355459844 702900224 307416735 382148956 218053173 740886341 515163380 433807284 570497725 667340714 540100146 512300864 985861618 887474196 212760219 795624854 417377052 549831481 862357290 138519259 493218387 464478527 69922646 332451572 842653024 137206745 647548267 869742435 823456470 111689132 148465672 412183750 159564576 351164584 798477113 54645359 406947946 162779918 913602506 459198045 112191202 427438768 817499770 517661206 747174922 816229214 440262569 431153926 922361111 152882093 561506343 902026896 860282156 385587869 109310057 72053359 182706691 530723051 419184220 493803256 247565203 288355780 829233619 122524081 352426032 120537445 183777909 633187078 905511447 67417965 466943181 270652611 265579287 54420856 84980593 962259259 842296222 460160018 229775567 195177655 211437826 652955997 477489745 407382087 300494906 1950744 796995433 463243321 482458087 961659839 771583757 804662265 55441011 280201494 675311799 252291808 454579177 855187790 882721140 175207880 10544190 387083463 146779598 844154554 500371666 912455066 84299932 324878633 722468986 312685412 389860198 47720959 302083528 603862136 425089980 289452967 662129343 45673919 955925604 803748561 491344696 434896414 73070097 16191587 934921703 541042446 718879527 272708671 40745591 360463789 923384620 306374580 311063460 194343249 647477262 417166857 357818227 459055187 467322793 599525276 577918478 582526509 830270536 784866618 487210919 14056997 350811004 282452211 540984620 48662740 134646811 357284959 285675846 421593348 493482243 975605732 348797281 944697594 244664858 233247486 575111229 720395453 352455065 142680539 487023583 716173556 469297631 213149183 95513202 363907701 673495034 559167950 431688670 134962280 855772058 810075668 196198213 899076491 996427063 736191574 646486952 683490931 987020525 922204978 784758388 401405480 82809706 427814086 594178389 514570787 88958003 659775188 435945712 178083251 432276074 664689903 356348623 268853593 360631989 627576299 996035552 906582786 546559062 258979367 981351094 493251659 980943985 534795661 177168643 51987734 934604752 246375750 98285508 314195700 824859853 499982532 436305542 958685598 419263637 732606456 885192061 813167230 354428014 836484122 992393233 259031838 767090418 598474207 802926504 757596136 97933152 716419267 696614711 993036417 576293930 826871315 641527129 353652788 527439324 952484717 988815186 9054517 190181833 800349241 162110026 516533263 706732338 283710170 911246469 454328399 365230266 632839186 916753519 383383383 331911954 781601995 958362623 700392297 450478687 384350803 15059854 516171987 3516390 973356296 591558122 285291550 701560900 876176246 908077883 82539081 647558550 594993246 554842259 531763408 528654743 470793936 551525688 439493334 236111680 886381225 205281507 326318805 661625299 141417329 544929123 965421652 662257288 597176318 885842532 451985785 393757447 850629138 420486588 900351203 44193371 804790841 513103188 516942129 187564471 217411129 460330918 324962097 44216617 676704390 275868205 836394367 852785106 508458316 240784490 765380294 634913895 933199161 685620111 512395675 573956700 525622758 683480594 603918397 613607608 733727365 311287298 328567903 386965303 395963974 404552331 115579185 998000117 402797002 174424713 345481178 778390841 301027063 217621053 140708065 158227958 360820579 960939523 244005006 156162400 151914004 656775013 701602517 721234933 391814263 701302091 309556674 228226849 235682254 269080070 734369332 130793744 512890128 984623163 687650404 438112765 21517338 176897905 574134066 628620659 994587798 144103269 941603021 45404192 262803179 565461220 580638838 961917467 148802557 19383883 382207164 225573702 708019408 636612387 56755718 239379478 292559192 632948443 996231794 762051166 866892033 372479267 335883535 973476438 82960747 244915134 70938384 758923845 851691847 756773963 24991245 611222627 460421191 414867036 815914691 556994476 315153046 478723010 679906498 125119894 931907748 562445090 540926810 543299390 854854638 106888823 475807572 287090292 557198653 517253751 37927271 68767417 278732250 194144320 613155313 531122081 927311651 622045713 902797457 978621182 930641864 250426339 891795217 975842478 827464769 947416909 292878582 517257684 121150340 279154340 417958617 975838222 110802082 330330385 661898137 334325928 184669774 113591876 397065834 98845128 764145929 866596968 699572023 396286045 133057864 742078678 803949324 346320026 308175884 125567951 439669350 49422299 214962669 685910169 268692838 41146267 657954384 392610173 638867809 720316716 121798850 451845622 825169002 526930643 911388967 217024252 162986863 955077760 511354269 381905071 53165760 406328436 831415264 945435717 41089555 659946202 100611010 359387197 212013973 260633869 657812157 504892481 409742309 369339589 122963569 9521076 442407478 247388539 620748390 347377900 323034832 924259845 151954103 241919174 826050686 415858457 38419323 899933762 723597763 525998336 439955771 533301674 271270978 650397981 559347050 995364055 390432835 36440920 699799386 901514314 153459392 535754583 282173294 490706076 774883120 606942987 711533536 350869219 410077865 842560396 239877157 182536435 708481999 179463023 408842612 501009019 908783753 226933538 70233456 279173912 307257803 285077962 600347321 221478876 883921317 761040831 943066132 514027380 877852384 848411227 810721971 918692211 357865138 518822847 131776916 214455357 411542057 166499418 638148220 50166289 763023381 368774860 691059035 783592123 979597473 262951614 278834634 532060744 186641919 547738077 287725852 229947513 496727858 833235958 907755054 64845223 703621627 972998805 274074616 988597707 150820304 676454900 904025404 271445286 115690629 737097189 121688134 102565061 177555721 211813893 498838418 100981539 196359250 692031741 437826689 610595055 816889849 523659872 455455723 481569174 531055406 527434273 829103316 514592726 675404040 293513670 355633864 927317904 139080976 289656798 207756976 706323775 52463599 787874791 279321153 926918068 562981100 435342933 457461382 464360901 884895584 225889108 322704742 959583047 172559583 324838526 864620271 325629199 930124598 529201615 426651907 61275130 531268625 991467268 866724061 484595179 847130168 192944750 888359028 268502284 238169390 491009341 326945481 850932072 77080969 272472323 810526288 400170111 223552995 267292280 383408471 314027217 676976926 439716348 580113957 175645350 446111689 318147398 458959806 400914502 476928759 5442183 189454667 523543910 817745564 176463451 801865639 305999610 733205227 174283698 9398841 657916437 883018352 695819865 867595838 576593200 34344552 169872673 10272903 194031996 720909495 493379810 495717146 927236692 389284487 285439392 301930251 120900932 797198185 868481053 773956336 885291789 4980514 439552949 791006711 668680314 554656218 70384706 658840982 543565385 497749052 48538087 337818170 567984333 150054381 98411314 602299195 101668277 596568496 782150973 519509378 824642830 21276293 403558544 575170573 342207255 98670183 354287720 748059436 260557760 951341342 910083662 575422234 578172029 794715341 141318239 841048278 472934992 681538961 244812453 808682419 348383007 516114472 838763215 312827590 5911618 85736932 605604976 645025327 547190580 374979037 952887778 119601769 76705067 934661126 290273701 346029244 153560969 245349489 782369218 362980640 52954993 766812371 707466673 183542057 818644501 381122248 646225252 624029370 388558933 928032897 130279048 199760062 884086326 342564335 481904376 483294721 527612035 741710356 189884994 466604159 893974416 207544386 492088020 537700019 807244273 630895598 920923801 952845389 789618468 139946335 146587172 734722634 494553355 991483101 988797765 215648816 743747901 39760966 417138887 49874937 427283039 768789496 131914692 731600869 887023808 993170920 817095066 281206603 813005435 932292034 862479105 843449746 506763574 632519466 220253227 293306819 447350249 573966053 560579461 484456306 756104998 473634422 880595438 378206803 730272611 390813056 578630694 727575162 452316906 36506142 281172320 651713868 502586546 39453102 203826878 530178320 810574303 877214090 848767974 879043788 916558038 890100774 680628635 619425192 758818448 154246839 731664009 130856934 356991878 878170617 391605022 796905461 443577525 929261527 405971653 55047781 676627474 644460751 404236071 397496255 711253478 41482584 966434719 504713705 244354235 301357306 666846075 683975178 391870322 544482253 83207866 730693463 63137431 951259842 77181315 799499352 261033958 863525182 890536314 24915985 2422738 603319286 492661852 31395208 377940710 553144099 334606505 490969277 479535828 32280660 502766794 648075519 744811195 52618168 69634921 46868802 275436909 521717208 654512610 191802449 948253051 670194606 86392348 270161011 278507472 292344569 914243336 579316447 375373541 472181145 320652895 616968625 626115098 919625928 886137380 70490468 905212176 902897565 742711296 521624752 548349706 431899849 215516508 100244063 431646576 422237217 564676917 547301102 991862685 668029695 45477766 68305371 851686922 662175556 214863730 597731616 482538770 392607965 989958218 71386581 369763595 499435920 4270621 874972768 233362900 966008285 259028286 227913816 238094159 325103019 711285607 376221146 93619672 448732790 566488641 302542105 392019029 744634728 162804045 627470657 185674374 332527186 693292719 274165436 20639442 983598951 43809869 550199799 720748403 920707074 504771960 498040334 708035712 721421859 528380698 129589241 418956808 149054524 802700263 618657145 490859296 363757421 300410913 69302026 79710817 945703811 465255356 242243246 901048801 175613798 431144492 955559323 127043912 753474298 412939023 72113857 193975637 558762483 189197344 13502713 414474546 522481258 80357183 77513174 825256937 968414210 919681370 170583746 880214746 800662946 908661763 146178119 154324308 701252652 940125660 702033715 141012014 43536604 594381038 551069168 317265372 413416253 61166357 470759729 253879057 924902345 517717664 490508833 206486351 392240050 877959735 237780328 626901934 536891584 13183547 617518555 599383944 657225163 321197979 296194057 964758783 84660479 281793044 804280681 821461664 986232640 761377468 929711655 683144003 327118972 384567749 889644606 496071878 507583185 85799963 872192181 255080488 508349799 541327675 128827417 8001270 474038762 708291060 487886831 646755292 5295179 713658619 107101031 812000194 33604572 418524936 793671167 480282784 970217648 965937349 991694520 529775384 775234769 652920868 113128072 824107573 101991556 478549024 123261063 770299159 19423499 419633238 807510253 377464853 364767221 849718620 83183039 470672287 985302187 190960233 28464326 892438943 927501525 706164239 666659684 38900776 714214328 961944686 106785993 731523321 26605040 338250598 777468411 937045074 572986356 408102196 446739408 311204465 370061457 564813897 946393743 259419639 900377622 346710443 655218258 203310743 184630987 348689506 56958504 966472950 763906436 670765683 628365432 152090933 872476075 763873621 631949086 273909836 958148413 444413022 176849246 391251351 98919432 541095551 960459681 430372379 615910631 455578068 830902186 292651187 19387975 630218606 560272480 407869848 81692299 646604975 505361749 323852724 894624356 86491746 702376631 563422808 632618667 78629192 466425356