200000 43541057 101 319124450 333 664990560 613 956494408 297 967682530 889 887337982 675 698013784 421 808852393 447 851767874 510 131252504 666 791083663 37 521134871 882 349725083 693 246176657 214 719972428 147 546919766 751 899684455 290 370927716 966 659146760 661 452618152 605 213286138 6 168327245 52 807575199 421 194509675 581 391385092 425 182983160 203 443682256 366 126886864 896 203052539 518 221464085 433 23075179 343 758928311 961 44040093 854 523485230 472 495276677 795 913358058 618 17290968 57 588504860 182 789721490 12 875843036 372 147211908 203 342749833 868 42941311 738 6479967 725 787590922 580 907942204 670 326565669 802 859860910 120 870754037 717 403285889 237 741814816 812 844360722 430 304933461 779 751476058 733 78188732 104 365504607 64 326741970 347 629491825 53 989566687 627 189078677 779 813011565 909 314629333 216 261969566 665 377762616 392 321236623 171 520235891 922 274452189 408 528515703 224 334107516 145 902262231 155 562056243 745 696768558 165 758756533 258 74170521 304 580118105 892 737238460 292 748649271 405 385105061 440 370367530 305 152767082 776 876637808 675 139207002 452 15101590 729 859393304 123 622051224 873 613814164 215 310015503 671 442922522 255 103099435 271 321303228 353 341228845 538 133145722 139 395491001 83 3865375 484 320354345 626 889819474 531 260662324 393 915231933 272 496263504 913 533965603 216 355768209 844 625871080 312 594052756 853 519206321 957 200695775 984 194483352 628 689153742 731 343755503 0 47875870 223 644193968 401 943591424 946 333469610 340 828628520 192 719356501 910 623721267 348 409053673 695 473582340 390 923102629 215 865591990 595 837446820 34 880931965 80 338543521 18 758643317 708 869630085 380 54910115 540 812361337 63 983788189 647 813623130 39 816017826 443 463968096 836 549838053 580 464541647 108 983696297 204 696888474 86 965395092 161 732445901 594 92793676 212 859663875 68 677135681 606 695921925 704 18073832 948 517819150 428 977796050 796 633813880 575 453902514 326 623270280 669 662797904 240 493843212 999 535255669 239 531544080 691 294932327 249 124215611 596 566693943 825 777497804 297 620359431 312 888159343 393 683123362 842 229198494 63 538391974 638 446791262 397 150634105 222 648226017 360 251116399 371 392009131 364 36629455 259 823606494 566 776678031 412 977293065 267 140969896 859 656206285 410 65369269 254 934652742 649 329729709 519 349407432 328 603713167 507 802467753 402 171932570 748 105495198 867 962909539 355 241902110 497 284928426 892 254951257 489 288827887 678 193758239 150 102676283 300 989001366 528 840517293 765 746200583 491 549353945 265 445881764 260 327655703 783 600574689 190 275293860 221 625451421 963 891796474 266 703119405 924 549141872 875 192191381 878 928152413 215 512821009 657 414841623 512 445968246 150 253872195 301 167697877 758 318594975 145 219860660 109 657074598 178 482612877 878 467807140 732 726096709 563 952909797 340 948474307 929 767849868 265 795394541 726 376336732 983 445439148 685 742856912 867 519066754 660 44043452 340 114996749 979 207548025 893 3836584 994 599090654 1 16771840 854 985690391 499 913338156 225 157411067 754 981600143 353 470485559 209 727725099 855 313245222 857 651738239 468 716743898 517 31065952 241 181358672 351 514045985 366 288515975 928 795182037 621 42973750 866 526028059 784 363978356 404 431438956 852 129661858 589 504217045 289 926871624 719 469700085 491 884222003 700 344882047 752 446161872 640 9063122 195 935215755 564 173954418 585 442681767 435 97984285 210 698205008 147 75419705 301 660782310 413 353688755 243 140039527 276 612177632 642 186274183 563 432388720 144 31078953 983 300330801 97 32588775 376 258479649 114 47434322 261 510425729 178 452375213 951 214703936 680 43435236 579 429119904 969 458268688 870 745409341 873 157289406 417 132341534 215 5924464 604 93988709 815 282197745 783 795937467 825 755363810 425 418212606 696 26551655 336 709545137 738 304600519 906 541083427 695 495805134 402 712907582 760 509359487 799 191080043 198 410309416 601 964835216 98 778695367 938 80315575 924 221315867 579 597272211 401 805025277 321 5407982 35 170676043 701 235886492 292 553867795 554 639515845 21 603625373 417 822303074 178 512412395 134 312547762 183 496824670 244 219765932 460 409522014 88 598879012 837 378927385 416 339200321 978 642312200 312 310034499 140 219353 829 794393233 726 997397675 637 826195600 91 185609912 543 410280717 362 177498236 342 380627427 504 55096529 880 469172320 95 237890239 862 60391609 777 774333535 667 982281063 786 288283169 119 652440778 607 321820364 797 59883859 292 172229415 999 727565204 245 833210835 544 290364056 329 251238946 463 897221624 612 497012241 743 713537119 172 446118673 180 265972319 867 403541316 974 183877059 608 357373372 879 412754805 855 784571449 673 57024402 291 21106369 152 217504926 301 982643041 428 401391873 398 602952112 768 809101383 933 725325003 290 449385550 510 247425513 862 427269379 62 676755138 88 96518037 797 86915284 822 290642228 345 605671126 956 910216102 43 654474462 58 951221863 727 715743229 984 688304607 351 17593963 508 418573341 245 729713179 508 309716552 786 51590859 734 780201655 514 293570962 173 427170722 242 11011723 205 315500063 821 228837256 571 686389123 90 792414064 647 883984695 5 958479018 496 355120675 206 462938678 668 326060000 622 98728179 970 107836720 836 121542674 768 835330322 785 83775475 425 382887884 909 183291411 883 842423579 750 743295922 71 238549569 846 538000972 822 983913506 510 136486473 287 726054420 272 993582511 737 425570934 758 987191761 767 448198370 64 550457649 763 421756794 120 587294748 765 246736540 305 933173940 714 906449963 213 267410511 169 488235994 340 9114138 195 293708369 906 699883300 119 181370388 420 97876205 56 501143027 766 748972113 88 796413909 718 694700088 471 762566657 290 509158071 271 389829323 893 117875545 212 612766880 123 781331485 399 893246380 609 689307366 609 294778984 753 600987414 386 167879964 193 412971210 96 358817726 294 666417875 187 670262137 755 23872044 554 247310238 432 741606741 831 853328740 157 682135433 905 127940012 558 254024597 514 8692714 222 1897673 296 684589708 789 601993954 766 592312667 738 870010344 132 661150814 434 761585740 468 426328786 871 713200218 450 722479881 979 197309921 240 689580295 169 611394846 886 898736454 775 156745133 617 792849981 885 835808395 247 122972273 720 167142625 55 71943040 855 770230364 79 24913534 148 729491326 220 943924850 379 833122255 945 917984773 558 963428752 941 362132071 168 32021335 699 230449778 145 265015529 59 884304324 169 54538416 378 734786274 65 116560277 974 971389221 738 187719840 362 613470388 190 132963865 352 597050351 14 679337243 809 11985204 442 153326409 64 173073052 858 980493975 559 336160971 436 432033897 434 388713421 957 731818355 206 824052668 943 260186495 340 408748409 156 79571946 411 574155487 965 205799778 355 753344900 948 250437285 254 336878974 538 185882389 426 294536847 498 82891112 273 864531026 52 358470646 459 714635371 784 312638096 848 52026378 360 25816462 257 180425535 322 533069810 85 575798718 827 257532510 856 556321003 990 793844515 815 887202063 37 557013626 728 466600548 264 533987925 699 176567598 991 754178019 414 683681140 388 908737077 474 772084771 544 597890571 67 621306790 242 788278936 31 265656040 760 861055196 525 619033449 188 48056530 167 947816547 709 544009404 618 385753803 482 251772752 253 214675868 743 283740415 962 997232579 517 390811662 723 658226072 695 735333398 443 890312046 545 9519628 600 645306573 840 624264157 639 244240218 45 135994730 648 763289705 314 730615110 610 836065091 718 579994931 855 119150664 419 112518695 324 821362968 413 57845713 408 967900952 434 637319378 703 702760715 582 865135417 678 578579825 971 387940399 826 252227300 42 686568299 694 588558482 806 707310757 973 323354813 278 699545522 125 156839031 852 567073797 328 609379512 805 384073182 984 9171480 542 764969487 741 837215569 272 772076253 975 639331520 648 416360725 291 882889588 574 96620933 314 26928861 258 205101750 505 474725742 197 300224751 177 581960627 379 905318238 248 193882537 882 520769666 369 989176276 634 683552214 15 406166198 848 961822029 781 717319186 144 549199013 9 818430866 536 154285448 294 393077987 667 654947251 760 554677592 43 496906451 685 899195312 956 214820326 13 576469553 24 693337936 1 357526760 760 334970137 351 895113275 51 696837145 392 782411337 225 720761945 949 344217891 982 88206743 694 352418013 855 863247601 341 938437461 463 147723114 683 368265657 843 443424669 470 649830287 164 36281767 863 104570037 715 423165889 224 983788592 352 531474973 923 978610116 406 115979183 501 153413552 227 642985935 558 685660319 118 932131514 447 893243837 390 912682767 952 234559445 970 792875937 348 307696281 296 387165644 731 66432759 759 221926462 736 592804721 821 337740520 763 562379643 342 988979700 462 942829648 1000 179864371 338 437691152 675 371018443 7 809296429 115 529587595 739 582488986 518 722156395 951 762423 453 410206776 288 361927311 512 882706298 527 982813276 677 507647562 215 13632399 256 212256030 827 471589319 656 825674348 923 485810919 207 362978069 483 200855460 664 566327764 389 769980388 236 746342619 572 248245951 543 968408648 681 671796045 67 385496255 907 289844597 389 973308346 80 348429047 661 260631962 874 701783909 138 398541905 353 384791620 750 318223198 25 895747778 824 962349754 147 625592087 76 397756920 838 512182823 330 80283557 603 985729717 239 834006359 417 91556146 888 816921092 554 295008136 10 929992203 483 620770905 912 583303270 288 663216448 17 992903638 695 125724040 664 480667074 282 696407132 437 311005095 824 84488470 950 212384638 452 344404505 848 61294593 627 228417906 296 427338880 853 697043248 58 285449289 57 876032497 754 182873364 614 823230244 833 772655541 502 31845056 547 321699040 128 553120959 907 50757047 965 358382143 662 949680796 520 706963937 340 101096165 999 771947793 201 237256546 202 884632001 286 871972713 209 168864053 926 163976927 71 287720351 944 155054575 836 726634561 638 582349544 27 195630076 773 520805620 678 936581334 18 759309147 855 768866637 388 366268074 465 412891135 96 808655699 925 59937249 330 21479764 643 457033619 479 99219975 669 837994315 570 439170637 947 345797453 912 403635517 443 787869810 485 126097742 481 790967840 726 632482459 92 42021759 35 854148196 495 139123288 272 137026640 533 309492057 228 687678163 522 667520348 457 18413459 188 499281100 677 347107480 283 855004730 270 989185350 218 438607143 913 382527403 733 475150627 537 746988969 212 866050327 882 855394862 420 607549376 116 36597280 719 703652673 59 591040588 781 592433844 721 403048636 847 784043278 474 626001359 384 561187600 734 463919598 880 38237676 395 137590224 110 911620077 809 570870838 71 137176513 54 827998908 201 996545388 542 923674683 638 718126725 227 380710320 646 578258430 339 392933674 266 392211511 273 851177615 432 210422767 378 249704669 280 997547588 181 321399855 729 351057268 923 695883602 768 487547651 670 433614884 594 30869419 64 429772004 600 545316218 299 672280232 555 753906926 41 634747116 587 637488917 622 4375261 865 180119353 507 871193586 593 329777330 424 725712234 814 388066975 623 806484404 231 983574917 417 760151354 251 853273793 311 196558685 409 979067317 287 470296100 181 450044315 97 121411910 171 152406634 275 993403871 201 396503218 108 386183468 442 626169003 716 718376766 69 428526271 283 312506469 587 172605237 401 468950672 368 250424295 961 809972089 18 163233202 301 1536569 597 883778368 143 426854799 185 602979033 295 304048386 876 521011762 720 739234540 321 338545903 362 982320862 986 978630270 31 148754322 114 165309873 120 116183270 470 707849940 628 833135471 281 149548178 133 912781224 667 756160710 535 165518569 960 867906176 904 494518869 633 408353305 14 418725333 378 928747591 713 750858766 517 656030518 957 362852859 90 675415470 743 874373744 857 165059282 209 377906240 202 51443485 922 696401566 928 829079909 945 628105146 705 564539245 172 417341528 876 807870573 137 704192072 24 606849890 907 818933896 500 606979296 23 608692660 990 846380894 434 82341816 754 837423044 931 412644227 425 863881173 314 283177360 944 318458482 454 782460584 849 142209707 910 237112520 221 503224743 896 536641487 989 565255264 89 193328633 340 899698608 313 505582228 525 679775527 297 119445147 349 857274718 532 687998265 368 159616934 125 718851779 7 395657511 168 641354717 727 456484787 797 515834179 48 31322819 633 12106132 597 847193507 593 341102925 966 683561132 713 409755065 31 943083492 265 886877689 970 895656034 606 535343854 356 592668314 930 885663273 966 172485814 768 921059696 447 57312467 622 93608097 271 417388426 725 440149122 126 581993772 102 318608358 684 254411680 942 98209031 645 40601453 77 487327845 303 538700962 618 102975091 69 161131485 977 255857047 762 144615751 668 945022886 463 640961521 830 840767873 752 254862815 251 365159589 784 247673627 447 213661478 663 837347692 166 772048905 757 309679193 641 961560859 244 668571868 175 347167355 94 759133670 882 759332080 14 575878618 263 951587646 825 280327019 811 707860920 909 399817546 432 81448682 378 488059048 152 735297473 201 842650396 798 288474123 52 894186054 945 711921889 283 258297276 865 726615370 218 492226477 484 92576612 763 824576546 162 606117356 466 864445345 167 438535798 519 229318334 818 477857428 824 364163785 225 723058736 950 850029954 125 515444440 774 297673052 991 449302172 846 871119570 5 565031981 58 791480373 546 24465411 759 765358444 322 15640347 958 124915239 167 350357951 921 852692664 377 81158127 779 898959428 791 376735684 306 268004757 776 95824514 320 617231017 498 248849333 972 9049842 333 188523146 651 735601962 368 531796272 592 688549376 399 579224034 619 287621999 552 785550625 519 991464662 75 655504186 967 508578857 497 531196555 468 408021809 287 250836808 2 722589937 93 652559143 270 871069455 478 135388276 640 746057713 94 667396756 800 974498764 246 136853895 255 278017268 870 40534096 888 266580371 261 216512679 108 77829668 22 759957495 621 68330825 854 603131001 826 951556587 960 344692182 280 735409740 440 585668951 804 912476530 867 631365739 574 600073386 637 344103312 788 361544284 778 546163301 10 362915189 285 962009691 104 976980899 940 302731841 687 654992917 734 542342793 188 748880096 493 633142718 46 280192030 402 512860894 80 481824466 284 167923244 499 475693690 483 694985200 639 157458802 489 331127835 585 943091303 446 540722978 204 89662354 652 459200839 958 787588943 541 434938583 577 631148926 931 323973513 479 247828909 397 362288382 884 379586627 433 151978167 5 663730769 265 499889005 366 848443807 421 69380634 200 607615953 307 90776177 299 82635074 125 391706426 569 27701526 567 798617473 87 628975598 609 896026568 169 751513751 383 702915966 217 411366738 962 405716828 922 689499702 221 396507012 246 466202376 103 723132674 328 551663815 866 892017873 133 800413633 192 689314376 684 785289613 156 358354335 115 236857285 89 678799930 293 696274777 588 257406901 520 717408997 262 198016192 939 922620475 837 687259246 347 40183708 356 824097862 62 453556016 917 131836832 481 156434479 765 925680851 455 739644093 143 348712724 545 522775731 135 911465044 127 668051482 781 247579202 905 414742093 479 516468553 585 988642295 533 954370783 793 898211968 510 567094 368 469391696 44 202865385 713 815328384 834 790805653 668 351008897 810 395053756 39 196328344 121 366637977 433 310891282 726 324604688 94 19196312 309 299428209 166 417581670 322 883374948 986 206860537 274 921031174 792 13639715 909 461724868 860 442652801 823 494594313 367 64169943 108 345519141 586 623145192 360 706216865 894 357725402 88 439775197 727 235897820 571 187191562 421 927304871 472 971250800 517 997577711 966 404775716 456 522199775 434 471854963 82 431315965 907 517489877 272 223644203 833 48857882 794 216873378 749 407652662 98 889551924 501 602666135 20 380643474 163 772515152 416 451256716 862 892092228 818 401564879 110 719452301 324 586672120 283 309171172 576 91804818 518 137484506 286 559534449 300 494208872 978 728841764 404 614886877 553 172587659 899 300711128 958 401517742 793 739906707 304 62513532 658 948840748 480 810007389 53 198937259 666 250715995 639 252305698 453 665898347 578 688573112 27 564753175 450 166178641 895 573675847 926 205637814 72 850132085 518 400614884 117 862050730 661 430224647 477 862685560 97 19641312 129 534961455 27 97168208 108 592934443 288 338650476 278 60298334 305 211961630 546 935892853 99 529671108 771 792927529 883 491404171 312 814973366 493 805369343 119 457562159 874 266988597 190 342757792 863 44872350 371 820629620 699 34507640 208 243150238 123 768624303 337 213521057 669 897783868 117 257331276 971 397516416 711 166231670 941 177597590 267 295491086 642 412745841 36 795867914 938 316029919 937 480318984 282 20957473 2 264969656 45 991200558 135 107275951 169 147724433 931 39193058 875 263460218 850 616407030 32 39588632 406 94853994 776 524013753 298 845324512 222 563937798 473 741625918 82 116946491 186 856063358 548 58885537 455 118616218 492 849609771 463 347956980 236 260749095 784 873029743 554 199745663 736 881465910 403 220493871 938 108864703 839 721777635 886 754927061 968 440221511 255 987698373 375 582257300 728 569792471 32 340430422 471 681347005 272 804321524 549 610703244 824 216609174 21 114572513 836 71372247 615 489191997 755 781809975 998 457197583 599 715833969 418 631480345 357 573511385 611 731835817 619 818600247 256 507347802 114 690238360 30 673045534 318 206943805 979 98263660 491 520269047 866 594177748 754 656604807 936 248335044 999 460184134 216 114659907 562 974962693 267 58451393 836 431273734 67 752338309 276 709168029 269 980695874 6 770792224 53 88235261 832 166620203 189 379145885 602 518947641 888 667995697 885 245251366 199 315104365 562 671636637 324 192471221 296 960281468 454 848308116 477 610581507 760 323393006 816 350390050 67 95755364 861 787527820 831 693267942 867 440707730 439 581158636 640 294407896 981 845266657 222 998528412 852 374497431 923 219887111 646 130821403 135 658523135 541 975918544 306 725292419 282 697420799 628 231609723 89 312548203 838 125058658 860 372824671 99 481607430 912 372489873 577 303161954 711 427265643 98 814957892 981 752007651 757 935680991 293 283554475 539 190541852 186 60778097 88 774140134 833 532151685 420 536391380 228 837218776 957 672844620 358 416686107 715 59690647 823 713005582 463 211828505 393 622278321 990 263820564 971 528415973 892 289023757 417 525270254 459 529607961 674 619770210 8 766110940 240 587194929 188 56823424 836 580726416 398 216189871 83 944703505 640 66008324 914 139431031 438 470527094 26 134285749 700 129811443 239 323374534 642 467558391 787 461222419 785 120193915 346 15565189 334 260558929 654 181291618 654 850186606 579 408091512 252 217304927 800 922727418 582 346649337 876 669453674 441 597372636 696 826168372 396 843607395 317 490254393 381 151027061 34 728863682 878 511595292 637 879947844 288 796043029 565 447629558 990 323417252 214 796250430 367 859825063 794 392832324 882 535305145 976 482153340 732 327097907 6 182328091 753 871696277 165 976203757 800 490204149 756 120348803 956 771748503 776 548874884 808 998618873 48 446199075 206 513247756 657 523936695 212 145354358 578 824093425 57 932055111 836 711523236 317 963998569 235 822633540 279 186158536 731 223826913 200 48350363 874 408946708 705 958918290 846 667060378 104 382853304 887 494443096 304 40042821 722 120504044 794 446925576 530 286411747 982 492068832 376 482924459 726 456900679 983 488511018 513 128874664 334 1104508 284 658856185 991 987407174 904 102246523 161 787428101 128 620914057 570 805765772 302 574054174 281 339757537 936 745345260 774 338461824 70 556086704 577 892469316 220 991400172 933 495558093 155 919330230 778 376895680 51 258069950 574 42629852 540 109948885 859 885384671 341 594291067 879 963450581 889 691052648 760 709735605 741 296543401 617 555622780 807 853203048 75 395011876 534 130515901 179 888927787 697 423056450 284 384756597 153 953407447 414 98392431 28 801453496 272 944963580 877 48075094 952 478758514 865 35189911 686 729619096 630 367511563 88 568479787 313 894961704 782 117344469 866 907994791 165 53857269 483 582115374 977 142399580 82 30304311 820 501528393 780 650180064 161 102488069 339 665913668 564 715655028 754 915064240 241 84151359 291 612160374 367 462619420 737 210434553 663 1844263 115 181497040 338 645508709 420 628342637 437 751994594 292 267741616 28 268642316 845 977757115 926 234867510 826 8610278 981 775695214 676 486634863 65 629099006 422 50968048 757 359354945 24 587998916 687 349916779 452 48055471 873 323696863 455 708691658 162 328114136 253 309612159 977 928728704 53 610597657 178 244629697 791 810754184 101 314818954 31 768573983 207 529524925 695 896154413 817 545231455 601 570409292 760 207421696 399 612269095 719 534308359 199 741447082 151 381330785 58 587204452 133 968746355 153 954681673 527 726983861 740 440395281 946 59422699 449 957559001 853 531825035 371 556336041 869 884561147 701 34211286 339 6069143 864 122893523 249 266862581 322 634458057 297 41256261 307 216151808 855 863024226 984 483056747 281 492962871 669 574555443 626 452852630 508 976564592 82 247221185 236 414039638 171 281082270 450 660722159 581 182308893 650 304958175 236 51536871 581 488832237 95 281081144 281 438890046 665 505387801 19 850505457 543 491004492 676 236633293 805 842460020 642 108642858 243 657932262 742 435797418 652 682443088 77 226407560 373 647202162 155 765857261 425 287417152 559 106642260 278 567685502 423 505110288 205 880315599 1000 855162290 847 991789548 441 520122894 607 26760568 393 956906748 390 301151355 521 238887424 667 304384877 642 652330679 407 286441027 86 152018219 808 638160621 271 562074849 495 684441397 26 15461871 995 649197641 860 135395433 130 887831906 401 972060110 363 378555955 662 261990549 825 413025498 634 703304398 130 581853616 868 952877235 106 248659224 388 352634147 137 653520667 193 598272378 902 444688213 700 727759894 290 545745702 655 579894799 235 72204889 261 107839376 201 285918346 8 266882330 582 170015083 64 85026785 641 765477178 955 292564330 801 114712874 440 178332832 595 23995600 752 728961903 905 309543234 178 236972673 981 210640870 412 521980887 873 125405109 290 894971041 386 463824948 739 493869798 84 290364773 298 660176637 199 159871617 606 376838360 637 315004966 299 573739177 472 821743478 536 149755334 840 508947207 664 326833053 56 527952613 639 46639715 973 231966119 249 696362145 490 831887953 245 197990540 151 2039797 250 741147088 854 460612135 903 122523602 264 110549472 788 272261726 899 578816998 980 707497073 844 697612041 614 470996435 624 184854539 607 807420383 793 203840197 597 944467761 688 878159710 651 880103718 1000 144271264 0 705233096 473 727714280 306 78915493 804 718769375 233 656624746 267 188182212 332 891686223 318 278101370 792 446502355 300 784761755 677 24870903 833 50148001 692 406567026 662 231742656 901 822313853 217 951564680 272 787803471 74 37395751 803 256758819 434 381812655 972 316445430 181 98493617 426 474226426 506 789314042 708 1766779 472 406529761 21 147395993 106 779776735 96 839237378 88 26651570 850 396413995 153 216127708 837 797529014 140 282112127 494 793376195 887 755377031 957 55763573 194 771750396 922 184506158 131 103342478 844 696689592 330 639039219 357 941200299 302 352441874 672 388037216 996 655544418 779 453725853 756 457855426 318 785736424 223 480347322 836 187928983 134 306238500 373 881499520 434 392221403 872 304929994 893 80861499 44 694256195 296 475025241 126 109764592 446 898930660 626 416296298 417 377823188 19 462845776 262 180295329 389 83106071 0 711568300 493 803817742 183 943205708 565 959548103 649 521051128 640 559490613 731 810819725 696 701295372 609 783415380 879 676286044 593 221647420 441 769675515 242 249758633 294 469064220 86 677803191 963 110492882 545 696318419 662 221777802 150 318919430 383 247672667 617 887542195 857 490939212 507 539120764 663 880863221 241 574534316 455 412758143 253 910339510 489 210725721 340 880939826 728 293301589 334 948897401 871 191813437 31 552238076 489 521152968 772 97400149 849 774334328 624 864834541 107 389932914 158 603576491 273 941870431 139 939060168 853 360988912 893 106522853 415 418081875 589 510285034 488 449431146 756 617725702 477 622427119 706 899084723 889 196534298 103 707467426 146 725633591 170 809612647 619 420712644 292 45626344 662 632603141 999 340672463 206 597116532 439 208557993 821 202581324 393 728656812 655 848210797 446 366523545 140 541866288 182 991687803 760 792426616 669 78188992 630 234049349 81 664261813 5 672749011 317 373800851 151 930978400 499 783022593 787 397064879 25 719663849 617 487143008 932 840282456 863 981128297 886 677121492 539 970490764 808 220284535 248 900260822 609 530741998 591 416987764 344 754614689 446 588611099 34 276496652 655 558280707 183 243739768 732 986186780 933 509201495 725 417046498 324 280515494 427 280939497 236 722215608 254 504607257 604 459167886 268 773931734 74 644992662 230 900082382 853 603121465 467 947960945 759 355970115 259 570381891 894 303876285 605 723976847 972 110081291 385 370610527 321 77052258 496 736281160 550 626090001 108 917997042 910 245171404 353 961730330 57 629595170 597 703935417 602 263451796 468 44600800 383 952140139 521 644452495 88 445297199 137 842705982 824 807069526 834 351024433 652 992396032 870 203697947 884 367264137 111 480456644 39 515024009 318 119889130 268 866581901 539 401301366 337 990041325 793 133544352 344 296749503 17 474782097 919 363505630 409 904261211 541 846354041 680 478378703 948 778669343 457 568208594 135 505870763 407 472690862 730 899851046 644 784627659 654 815922961 699 133740009 387 296409458 891 66693668 821 584932824 450 747698276 498 6375068 417 382554668 487 949853639 154 59626785 866 641488280 540 209642822 836 66238453 519 775791809 5 700462689 327 985004690 423 49203537 439 32846001 648 108921986 795 457047225 627 668397542 948 816178838 239 27016221 917 299910514 745 304998243 646 13854571 251 741622682 184 179351640 730 214723218 849 68779348 704 344666954 587 645620687 98 825970838 603 938563441 981 800393040 948 237133554 441 831205900 582 711241733 97 353506022 194 310299049 406 879259068 553 418440267 542 472829442 639 313597187 331 378110608 489 923779297 444 823444508 34 481196583 719 983247416 292 928852170 84 278737064 776 805181020 972 495754247 926 996591542 885 966777469 438 580009675 595 642518493 469 593243879 831 26252831 792 453533811 973 15716383 120 181609872 907 882115119 807 441391189 707 268524145 120 716624435 968 360338353 713 491755447 260 638354488 114 675444938 980 479316771 735 594621380 306 130622363 310 767981198 106 61882196 632 365220991 808 418638538 852 246200629 435 105200151 907 238719520 65 581585527 969 797447011 769 268720975 370 792088055 831 596510923 23 419152124 42 293619946 933 646216517 21 170245541 248 986447734 989 339393933 945 581555933 8 949520497 223 463396726 553 556293203 640 334086191 326 566807601 321 485062828 398 982214642 279 131131525 557 2639692 431 124187231 607 633454679 651 142623752 904 840932808 908 549445130 444 776094242 916 927091252 518 833748131 991 777998112 773 75008303 625 208826775 251 74496617 162 579250915 254 827599614 134 453624505 990 213158264 143 253398169 183 249563799 660 562124405 560 249173104 332 789385454 556 115795131 891 707427837 643 171112501 224 582984294 263 170312449 641 504302441 140 541578338 29 743352944 174 43089880 352 615007827 446 380690713 129 657097513 450 478735757 178 749078998 82 512201906 106 274025235 874 481366290 460 359673119 700 876455690 475 798127593 685 701061090 827 584111026 325 368717965 232 453117352 875 215783475 620 136617079 155 877357602 922 813782897 77 295608810 986 892930471 776 762669270 67 470877368 993 150165330 52 471761241 656 892822249 928 8763245 31 638066507 678 864656316 994 85319013 61 957576436 255 240759932 9 539468656 428 807451645 943 898144382 109 69318733 795 480651435 126 213401427 890 613520837 840 837795303 831 842194436 558 537546613 178 586203361 972 900073261 213 636348006 849 537169520 993 638167587 517 176249607 227 807675422 20 198481953 243 567225633 878 726993 157 859541004 82 293096007 259 269430189 241 320896223 802 78919934 755 695651424 54 719793121 876 38288645 669 462877098 867 970200869 962 810534753 404 632269488 194 467594067 467 330694664 871 820554181 690 86466128 775 560922978 531 871893562 706 194116837 133 739225811 629 841128885 164 206667174 576 126601102 934 318083451 736 820036315 330 671077038 308 471442814 429 921668683 109 252578175 383 258634209 717 647460708 494 607349491 46 569535102 427 493551240 866 662539583 968 71053892 490 447938313 952 490416311 497 242736090 512 24287134 491 144625907 310 336912664 736 746538912 63 212298106 723 279652790 490 1063380 554 358407776 167 164062796 142 480570776 625 311352761 48 275900916 182 670892517 890 553731667 917 662416294 845 983055559 703 461356582 560 4721397 582 723163109 1000 745678152 579 363580938 855 696643092 468 420097262 407 12120834 437 637411338 617 350665141 372 460075379 429 221947633 216 593027222 776 41876316 153 249408131 971 825647360 564 949132693 378 555283450 567 908179875 250 374302877 693 505696605 437 673201115 639 114574296 356 132218432 347 550621516 731 493477053 554 553973673 906 25379172 140 193484261 796 55822803 172 591098804 315 276483913 31 837716428 655 321786283 553 579856667 127 962675146 295 2262928 592 963549673 669 797035592 472 244255884 592 939346369 181 432682986 442 554295084 372 73447378 316 934006238 932 8481469 520 432333477 708 55423545 67 441151639 649 542890561 592 393252529 1000 593140134 155 694376425 331 567990686 428 546574207 797 195453859 635 456743976 139 81486759 277 909438561 64 847744590 551 143664186 781 861058837 798 561338952 72 226018993 851 90013590 537 539690759 360 322189428 310 899903045 49 815150306 596 209902050 116 607032181 3 734483938 664 498665363 266 476265699 14 461541038 935 77526906 778 497957351 312 600749626 69 362463061 968 717128331 790 716634696 562 327899762 750 788444734 254 181254601 440 909677237 429 383134731 302 655014738 736 153829973 922 131516915 388 809623293 387 126440611 53 117817551 621 234481079 180 54711097 792 657817213 701 486690865 90 577247694 565 865616487 586 214114349 600 224089076 593 386310527 24 10113026 653 703553609 744 236298912 816 240933157 526 517346320 521 427669647 224 654351105 638 265855261 36 128950403 960 720409371 477 37337299 705 949803446 870 473760353 401 239727135 372 998863093 862 686529380 578 748661785 818 112162813 201 953358553 490 880364403 761 917878001 51 942361301 797 561711279 764 254860976 244 884653606 659 665487948 715 186794807 816 504030347 72 636320761 167 825567032 312 843531234 376 796525040 683 605699442 430 592869996 258 783215324 401 339843174 994 720299129 44 158830125 332 546565198 750 19263949 197 300013381 456 654649778 923 503130917 920 183600572 424 695500836 305 95708236 886 795384560 49 172315338 636 394883645 707 331473720 177 387145610 455 965887298 489 511450799 28 153370257 447 191180086 356 212613083 319 229253049 60 872201864 746 329376130 424 470430740 917 317476004 13 13519774 842 436285901 502 800673091 886 808128457 566 851751445 487 241838973 885 633568858 116 386632641 864 960229796 573 540916701 454 455188588 153 937094998 127 980827880 453 198387012 837 401257838 917 489458528 828 596692309 599 596229384 760 474910707 826 873950996 907 890586537 420 263023060 317 936447560 286 333849086 636 85191666 35 991550384 106 269779354 439 693120537 445 32954909 453 167908228 142 765006682 360 839781578 680 82826041 332 26814090 229 356995154 235 526826106 621 590956491 467 808194542 292 494941304 12 582605372 972 298493443 621 181420473 758 715828696 534 20214589 920 147513121 414 162884379 290 111856954 52 745470135 557 315828314 49 36180605 868 116415460 936 572535018 412 347458752 550 89193441 289 489110986 869 911121600 523 547709309 688 143509637 325 228556586 654 952742716 586 350691515 457 112845344 590 538521919 9 772276874 947 754690459 798 367606148 164 153787894 523 541893268 673 5529563 689 157795726 158 728928278 223 512848405 116 605628709 476 185570914 132 831601976 124 686166368 454 666242179 384 319322019 170 684278368 345 830371183 374 174174178 91 723459352 870 315215902 24 675385808 716 486468711 868 366947839 809 95813863 868 910558245 587 727066233 414 691914822 438 862453282 836 54070241 963 879040174 967 2288903 119 542292536 411 971088525 406 242070029 384 580660276 293 617071600 954 618718368 552 738344222 217 504552059 114 418012185 722 258924098 326 97730878 696 655446317 293 956587249 27 612001545 884 992230742 111 705674960 486 681795937 542 352701533 645 585280836 264 585379725 162 651029706 309 874734722 362 503936358 102 903117621 397 438274755 108 620876472 158 646058322 82 357876169 804 628408802 448 823631741 595 765709611 459 294691095 422 862992745 517 936364478 322 333524917 978 537083233 928 222614510 445 227624267 679 956376915 790 331832623 861 65064240 399 433319262 369 232227083 97 820817486 470 767998585 817 892851995 199 997281295 466 747109498 49 644530418 87 438742652 968 11321690 855 947489976 960 996976046 281 623607721 850 871540161 322 262939334 758 221242542 339 427562540 581 541858801 256 111940195 250 576461428 825 585828280 711 239891885 221 31887257 35 716909430 734 168927068 585 324738153 57 31580017 423 884907364 894 212648061 63 904158800 607 741714432 364 222461158 160 585016559 60 640632483 448 71571487 655 50242749 734 389367910 988 507349692 188 318080117 217 610349308 384 309820375 753 611074965 576 624126418 147 178196031 17 419815350 124 187415161 781 487037516 18 838317578 937 3285809 783 484869239 620 285953338 247 206319351 889 904261319 879 206467338 133 459141077 289 219101866 187 990291004 862 446323352 20 308893693 950 191853765 108 479480872 929 130105588 376 395420822 178 542353129 867 595430687 170 388259979 669 657530820 35 638911812 787 397968521 794 379643787 334 919379343 496 338275777 611 52157807 973 716889718 907 216674703 241 321526910 882 118310911 10 447172570 149 973641745 98 137802764 299 560495411 274 646470981 39 648828332 54 424901319 459 952909637 380 698899866 477 349419459 351 877270426 768 238650623 347 280156748 745 40443002 33 169433552 90 617596265 575 895071455 60 299469508 306 745832232 974 942531497 631 480252828 860 751966501 985 70675380 837 225269247 296 794046416 894 180548151 892 107087828 463 649641100 886 712604129 934 769195647 222 309300829 399 817871147 991 672830209 507 384673022 915 186869698 159 907309882 222 948594455 222 638146062 519 821692042 765 546765859 20 82228511 905 457050382 588 316394183 25 908069156 130 84782958 875 153004030 594 514941237 571 995214029 309 314143858 643 336433732 983 399785965 950 648989393 67 981991727 57 943150457 399 961225543 562 128628290 923 718800155 425 240629978 118 206981314 280 140670942 950 714383898 564 913339027 621 863796032 983 541568836 26 847089236 789 31181730 440 679450456 48 316400656 407 408457890 172 815735693 969 526102165 752 591246491 687 228632272 278 982191239 502 661255025 452 196777348 444 272703838 846 845864889 916 473722379 556 314389844 595 541966334 656 158775174 649 932769961 983 114650954 234 65962265 820 61387845 479 819572850 318 56223852 280 877573680 257 403763911 511 97585949 533 275206061 123 510426313 393 977515418 643 193943439 820 241512142 448 704452112 736 506812296 771 852946063 548 309926438 626 2394675 563 680970116 998 218358756 621 577872917 917 221019097 683 57593232 208 468401690 8 886146914 266 621404691 606 543829796 533 177663494 303 859847300 34 688286244 48 953405938 108 237202469 378 115416471 600 778236208 135 148279143 453 781544501 731 816757576 896 770868073 825 733965989 8 358556148 894 297160067 34 511825155 778 486598878 257 786661386 578 322992098 372 132029125 913 803712268 446 927842930 340 289392092 668 396606733 146 429313158 47 540970109 770 43071613 417 541502569 90 947447097 823 868588564 548 679984461 878 81307675 890 66557483 668 995260028 256 2647006 179 187586475 144 87467955 625 693006475 320 287349791 840 178236162 466 259352747 746 850008489 534 447885152 135 58305700 426 897535915 271 262888638 620 593082487 297 799127270 666 464450687 342 732033174 804 455800937 889 250269930 925 245421267 597 438677639 354 865561156 14 961903974 736 575129981 482 682466687 328 590530917 905 317759931 693 487345621 726 251312190 639 580946543 444 911241802 755 387950405 124 74598666 357 393300394 950 37580567 774 819929222 757 669187014 951 400295969 303 345557303 968 331847761 924 919850615 924 265659391 971 530501511 871 170482862 811 806141466 586 630592091 259 855636370 919 211199707 725 200081785 946 579255315 530 950726319 198 832267078 266 649641695 490 52647894 716 672747368 599 456182577 266 890741830 970 416984058 863 98678243 818 384730118 710 354656902 678 859422985 417 245879541 192 257831860 119 459961095 366 476063995 367 476438872 900 95968825 27 64094682 514 159260986 651 404698432 883 954692458 365 290861301 970 613631550 490 508933383 521 696040149 828 498451963 251 482891708 596 64731202 944 51917454 890 20225723 815 79604386 225 282063275 275 921807347 448 649260269 518 387443883 202 813257499 880 339610762 809 820716488 312 676762174 494 244286395 710 792042168 709 449244730 719 319175045 86 613000543 934 172641276 16 537811425 119 775308650 197 61790065 269 798997624 585 872133161 926 806939997 314 748226759 461 993229039 540 439189454 370 826530201 713 691917434 982 327780996 46 226361864 207 901007108 395 932637828 890 239055537 380 392338252 598 805186296 291 409180566 62 74252263 415 486445050 766 947703382 726 362562829 340 867018659 114 850121987 292 477073234 232 918761339 168 62116161 108 960768819 346 552089187 441 62801212 872 940738036 48 655121613 798 289711301 754 220599920 53 876461542 38 672956563 837 582041471 475 490356205 139 731187819 790 983198262 410 199100487 531 579228461 340 11864086 751 195513772 563 619934940 206 519102739 32 782354486 31 385619624 889 263299526 807 409874405 242 72301317 648 710680326 687 556053746 112 147064535 877 788765192 779 152137281 385 145528614 649 671415603 316 978921453 118 614470700 355 387638277 102 498186295 514 409359686 130 33230935 724 54984784 919 496412457 919 376167000 453 968950446 524 666917357 501 660717371 183 832651373 197 792818246 658 177492275 597 620966331 360 728723544 628 664214023 759 310697059 327 200704261 986 707816081 664 370773664 995 869751801 942 710476416 853 159501748 892 506122605 920 130580528 750 45760719 290 269599070 191 264763032 826 129191091 439 693254414 944 898594313 413 551038258 532 267449867 382 39116916 299 896526708 944 776475562 684 19307957 857 532145649 896 393144427 97 881657395 374 433269235 850 529516666 117 12263473 60 702389749 870 151870454 905 804501833 556 272107960 946 711531130 868 677245419 536 509447900 662 460555126 670 365717777 0 255153471 755 481885924 551 767702217 521 585599145 453 515807889 319 951077716 951 264997803 607 232368123 713 605321153 711 447122411 350 309879262 890 482552337 395 874509025 106 19375766 164 286928763 86 495291796 388 910648102 544 746366768 176 881103037 762 295361863 855 646490574 171 688085512 987 971029484 510 320376745 596 615125419 985 186506189 165 887886262 715 924903975 853 879965170 249 964890852 704 43216338 387 198125968 24 542820295 668 458718221 510 686790526 938 332018174 599 860871196 543 615882788 380 824220421 236 119684807 963 854591535 674 349680127 752 403727110 928 386752294 959 128246435 872 275225936 90 192882907 301 757445793 754 236789565 380 102295403 173 328212005 271 812740837 160 591888407 921 117069343 701 767844287 645 510592672 666 253492577 426 479684181 964 289878833 140 667859906 253 948840375 992 801828907 237 267953580 344 471499374 497 678166185 45 93029547 123 125065932 530 224015641 754 123069589 403 819596199 242 719871230 687 348828944 158 265124213 875 344994131 960 488666120 863 941766639 997 325914313 830 847578573 199 345824836 176 339627270 428 524352623 492 713308537 385 592595253 474 758632537 869 469840420 367 886218998 425 224632372 850 274657171 532 580415051 598 392297836 122 293298277 801 36765996 613 102373434 85 49071774 852 458518624 89 480216179 663 914952412 762 603936170 129 879107451 349 689978416 940 429251350 588 485860790 339 724593655 464 925767919 555 702131308 474 205202684 957 978673365 984 935223736 868 932858392 269 519272046 804 334940379 802 365186150 451 550944134 161 300368062 693 992100807 161 56055559 692 107338802 111 205080629 252 804417094 844 820280406 672 383292779 13 159888656 724 713358466 874 768582601 458 515826398 315 806765195 990 393488146 157 471848657 545 958697041 591 505843838 597 776290087 938 985109299 639 970215946 407 156354538 330 296940697 909 911343597 579 622194219 401 792575577 264 417919949 738 490050331 392 826273664 999 324525256 465 374196635 183 968760474 174 723131239 800 3254779 488 938267138 153 13218842 649 244839578 375 926779033 25 230415794 795 367651030 852 445135957 932 405537667 871 437290968 47 38500459 593 397418974 651 461686363 205 932987508 763 475005421 463 597041838 829 115668064 690 79549694 802 440970839 290 341905221 486 735556483 319 20913949 585 233895146 781 720026866 973 557832266 47 6115397 700 328856621 484 443353118 172 477687154 260 855872830 438 108785586 949 69688688 697 712704361 643 115048229 430 997719450 630 249850965 904 328396617 557 934396209 836 865500318 185 245802399 971 113495546 567 346355651 129 490006467 127 775046641 402 314135813 137 491097686 736 921662977 424 331251037 8 869383586 847 700048732 708 90309377 828 265209042 990 924048124 312 835741384 883 78234777 762 663403031 595 217697547 783 299623988 75 614231957 523 123822505 810 39410397 743 784308842 437 215889193 984 392877693 606 176264637 200 604444057 10 116297817 895 844732413 86 142833706 451 210668900 256 500194030 98 709000155 921 722107988 25 948093052 733 320352224 84 34613256 672 377296860 559 190578008 239 867673888 235 990801950 165 127911968 976 24347842 208 615249497 674 250673839 984 668289685 276 284871565 391 595500327 342 483905884 949 699093493 129 379997174 610 827705601 656 157317617 682 140252947 958 692097678 768 232149675 782 559536263 149 881737823 116 597320624 180 451620273 104 511251073 831 390390410 239 157356691 591 416419557 20 825814788 325 733398100 995 865024433 323 354818084 349 804930283 619 207313547 659 613801370 504 800928930 19 838657700 341 78803726 647 101359640 341 963886116 231 461828980 695 632819012 455 705722041 806 397938945 791 127515099 730 810470739 587 862354115 138 204543442 825 112456239 877 827338169 649 427595387 752 387245570 285 355391919 507 744095603 880 974324493 904 471996589 978 626820157 447 485403348 794 130793265 272 333119828 207 840865778 6 555739633 29 497685245 985 20079166 453 478351175 820 632392639 285 419416871 95 196883294 707 709510912 446 870268985 35 879326012 525 260606186 401 387470146 351 830120780 99 211517593 102 819118656 469 227156796 216 578323804 221 544829786 910 551980308 319 980249249 131 532021105 101 698199386 72 943368160 37 337471162 204 727827518 836 151820660 889 602629637 321 739825160 201 320721282 946 281138352 436 962550799 789 558146418 422 918218166 294 132787564 827 881319832 87 544178944 22 124088909 8 949821576 762 212288044 718 387238548 368 790843041 791 447868818 440 539265941 263 601243365 754 408951604 530 819451376 45 940274854 822 292699590 213 781053887 806 295024868 322 81602627 172 556214858 703 273334037 425 243476961 261 732022572 83 527830055 324 442668422 335 801604478 902 893881700 165 351585151 530 549008679 266 229508209 883 107924069 454 605582363 383 91452175 903 946554875 672 822244731 540 561325890 49 152128224 769 707119824 141 904789220 13 227611770 893 49419040 345 329663311 49 139906697 833 334716076 450 881708331 297 802988141 590 779675012 395 5398280 874 935071369 618 44269351 470 538460873 999 191388700 916 892981252 907 338185113 537 300274681 379 257638437 448 505508685 80 741559318 870 505665935 857 575360610 292 380228333 397 390254938 681 720434355 459 373120617 531 770705687 52 865829895 62 294883713 299 514951441 214 343999721 938 703431899 742 512120642 504 586076936 273 97742857 780 462202601 890 303742205 734 948220941 710 561614274 561 32628070 461 421069621 879 582707838 170 167797068 212 812955204 334 968471012 971 199435840 415 685060449 308 899813374 373 219710313 283 186282496 978 596840067 214 660513342 733 343434464 915 948866895 747 762894947 674 820854217 778 750314656 93 731119558 683 334115951 158 450498629 527 43600981 317 965738736 100 387022758 145 875896369 291 363394688 586 19371952 281 203421746 421 273042187 324 948403650 671 684370588 861 471353361 164 408968945 600 39005609 446 788111291 166 825876409 445 619455705 3 574418130 848 324872608 607 994133752 82 684563213 184 431316726 481 297168502 62 536232701 568 651513816 931 459737597 155 130068202 672 285798661 837 201974884 119 968228013 795 722116251 972 476245707 534 794110326 586 475310092 55 226765026 477 332797821 958 754896069 642 361340214 692 277343593 990 862011922 76 885797483 431 236589200 432 842087941 626 593753630 874 560677259 427 544147119 74 436276570 593 560561109 660 979545999 79 375641893 456 63442376 176 491650290 983 135572933 909 158665818 572 324475400 467 569929904 396 38898960 361 441407344 407 120728581 21 540820536 668 425529531 500 429904495 652 968307635 585 336847990 531 986796406 787 341208265 733 620857231 0 414654290 374 162986633 646 408114232 632 479693974 13 128995440 930 703252663 66 269682780 128 162141198 566 137964556 32 58019182 164 13029840 229 753622948 488 271292337 647 311322313 888 721247035 798 962199715 327 362658746 50 389932580 998 198507330 468 87904490 789 600696124 942 917493909 847 475808820 440 354692207 255 29118302 804 443430910 207 585039793 361 249697004 297 802187785 138 215253279 452 526381899 239 895225214 764 165303885 219 711027054 618 141912645 946 399505111 528 738972753 674 852961527 900 773249962 140 343294559 546 432680037 601 241383767 728 56229808 58 737526000 965 921456160 290 935253592 812 476864322 554 954027734 930 785669209 342 381347121 147 563456190 217 938165370 970 269094253 695 381078930 864 924593195 181 754171083 559 705772911 331 327528865 756 881820536 231 304169852 970 798339883 683 632910997 218 583739823 163 694061449 949 774612792 498 112323879 891 384729456 838 996302386 316 939747104 225 158768861 555 464716850 529 905794071 870 507973071 976 766311465 685 266802672 616 329284140 232 362052662 495 787586178 217 552650628 237 543865658 183 152697930 646 859020244 31 445992466 721 367703173 894 465516633 962 321813286 43 709561732 935 400900002 117 817466631 174 198550862 792 923568071 858 6788264 734 818387767 342 121547590 72 645679016 264 162211428 984 574359325 126 315067338 307 673421869 647 479251553 689 367543137 758 20310404 585 805472999 366 844514707 149 806539903 37 476226224 22 476592426 967 383906751 96 315005168 275 3616970 728 700804603 813 373796984 485 471608299 36 898605737 936 875165033 667 677942048 51 827199618 505 145770720 103 992701542 222 51874363 784 748110180 610 671997086 282 759758070 653 505648343 106 125932803 101 774268263 119 523363955 952 388351985 745 872442309 417 272495637 82 636057545 901 171447989 169 671809930 903 964813269 69 593265317 730 659514646 342 81221358 744 947449525 864 238851014 21 478145708 309 486220770 496 204100467 37 727456602 50 861059894 947 593255070 95 241655207 105 524429493 73 877646855 910 521118125 715 633818084 507 40506456 709 22003356 479 71136496 734 349041341 641 337023013 280 660545339 126 771734583 36 478778506 871 988721812 669 644355396 863 787637076 572 435440845 815 403264349 345 956153553 205 557044769 679 182292303 626 395428528 807 276078067 367 797784980 403 627246094 644 832221709 50 744751582 775 871963396 285 880901433 347 886651102 543 662772321 528 945520131 293 254855939 204 471713066 825 357321787 310 883530344 976 364768568 321 385508098 393 735877938 353 543466211 691 747977583 519 176737456 523 437807180 395 706523237 631 937484287 721 510733894 690 339305311 155 318146490 988 372563587 229 909366154 708 276742701 171 725558673 153 645041894 815 349708578 907 405886428 422 177847308 669 557128067 144 741613860 505 55508320 690 127436313 467 962615580 463 874491314 366 360889958 683 683132176 981 79086487 644 889479791 246 380936068 42 625060335 287 781337079 734 543782821 533 74927514 236 111461550 336 369719586 766 924454816 570 241336341 147 354260429 180 540358520 313 903342293 66 475910519 811 485156382 564 9979219 639 565587252 764 776852914 454 900273944 110 743600664 491 706213173 251 443123804 402 734865348 489 525134627 830 376221617 922 191961910 87 145733625 970 937447109 706 124839849 352 567562298 932 130391836 930 580695436 627 582363220 362 516702516 199 732038417 987 649723660 389 423183609 775 521237657 538 639911516 850 162949276 55 201391603 254 207228025 834 334985832 476 141249999 586 808888913 821 348313752 987 500613399 918 183632210 517 316164060 763 249115587 919 189561626 646 713583603 817 486499025 422 72410762 258 993357068 660 965081285 923 108454430 316 236054188 9 257185223 96 853757284 686 325371214 643 627726630 174 174128758 603 506703634 333 476806242 872 220132 456 711030624 125 608142645 416 380301063 521 248742465 264 373951256 724 925169617 401 616484876 0 182409264 792 53878862 63 339123006 43 76794082 97 577365224 419 233945480 430 679831426 696 75320201 519 194971634 487 572052605 644 393379827 963 636565652 901 462573015 607 380459593 112 623594785 209 58677861 925 244123521 232 115144443 258 96956534 733 971012844 827 800914131 902 947067943 158 758437953 593 980393199 538 440818929 308 389273964 779 917661789 233 590537402 629 629529546 658 517515491 392 242357231 129 422540131 286 917671350 355 298139587 954 323153719 688 69460184 332 946996085 659 838883444 717 908106830 42 166412000 671 42364475 312 839948460 505 605317051 914 697031324 267 365828410 494 903003324 381 591025072 861 974870644 346 985562066 811 58774175 443 315828303 809 962094513 274 570975175 924 413730245 724 680528692 333 335135991 478 317490684 302 864681022 723 743643718 765 666994294 271 136800417 214 363969194 565 948848781 903 321363870 156 307924944 308 312417370 486 306521074 988 911995947 553 866514882 667 584294588 912 721530396 488 286504730 318 725994120 178 542890742 339 976939162 15 725534964 95 256313900 193 648179262 211 703095556 240 125425111 219 296380240 26 995144989 967 143370187 644 716403168 280 969994705 177 330295713 440 940227399 130 139727610 700 339451532 4 719673868 411 561633748 88 289710455 761 45816323 121 422804481 774 774425798 929 396429049 706 438446839 972 57706353 260 150828021 305 337991187 355 55946837 934 596500703 126 33336687 428 453697687 352 296670618 316 209574556 738 625669411 435 866019562 0 146101774 346 672070416 472 218204489 586 78209323 596 870102682 160 54421494 869 924615557 373 979347865 418 280712448 514 100770694 524 374793737 502 844258270 851 272113690 778 515764849 460 195501702 526 585858158 660 254624291 285 140788219 62 115738215 389 575355409 581 812354795 72 632375746 644 361750380 847 505304831 424 832503221 13 553272628 313 467840129 845 644412292 515 6166539 540 925829464 374 739231862 339 898304569 992 157858372 722 32879619 382 579421381 301 440821529 359 825544978 813 489434696 113 554557552 660 94671137 199 784352907 953 292782744 169 269868161 71 69898407 238 428130233 953 513216385 410 687561471 549 626781123 642 624454353 790 119031827 945 424268519 928 801837967 229 519222876 281 53038212 396 80025011 536 533253266 288 917634597 859 292297086 546 392520461 218 961167026 738 85646207 875 589107366 937 903022334 226 959902717 520 437731173 970 234791001 170 593832883 920 946341415 25 694540189 972 798976654 199 329064943 117 877042368 933 537842363 973 97917429 402 598909333 325 3727543 889 35174706 103 803094141 772 463622293 81 274256454 746 36643149 296 833244109 343 176242738 827 610069954 879 419779198 312 160453155 393 904524487 234 295646883 307 671980455 741 579661950 63 313587375 202 625020417 934 448477901 574 199017999 734 107570201 284 707837810 891 321365687 650 967388484 940 699686596 328 168004428 966 960698101 996 310388845 601 127058763 770 237506096 680 980349367 903 25813875 88 893199910 280 626780855 933 939209449 702 112182972 170 465526218 268 142584707 992 355789919 785 916232344 756 982692650 599 400371759 823 339857703 486 480870469 667 404530456 646 726270520 17 589749841 547 45357705 538 435068950 878 425892859 568 782305223 878 622228787 217 947831928 737 770278512 372 95030204 626 951877709 730 807249715 790 542059694 454 956698551 641 210954936 201 188119849 47 950063367 612 888954867 951 789551486 674 255013304 577 375291243 967 334015133 581 93636106 691 378640966 206 875469163 654 716663678 890 88870243 18 494056241 293 601629612 536 761274751 315 740140403 828 577840841 568 230664262 110 517429074 686 585359372 597 742719813 775 276886895 127 4389980 451 471895636 2 877272599 818 245382809 891 427551614 719 530694622 257 374975413 228 898383956 460 444924779 746 609246045 228 733243914 727 660617450 871 947354271 90 727491818 779 775717089 234 408109804 598 20533891 402 809277368 649 724826412 424 915940446 974 861657365 879 924672897 288 584812844 799 883091498 748 347516248 397 20636043 97 347224018 605 205465096 652 108049236 183 74508185 608 656136694 178 713948687 584 17747326 532 610648023 663 970543083 998 744727650 47 326275878 508 200682251 477 18325123 50 9651195 761 115829422 963 885632009 323 883712723 358 628034735 761 552741958 91 386048656 422 771209583 654 87704051 960 290053030 81 627243181 491 656622443 170 557309882 911 782316336 296 639597230 673 711139648 962 548637172 390 746339154 870 581329251 809 98831544 588 69487514 869 84143812 785 889384807 506 345596757 463 327645001 574 390263772 458 36788791 922 539184224 821 513845891 388 155200044 801 936894875 240 1693388 812 409139027 700 748198583 319 609760038 746 104026326 621 456238375 174 478380285 438 302175870 593 126146004 196 770871632 37 448518908 235 621370548 965 105361196 617 744639220 383 1590597 285 512015608 701 66690854 32 715981010 332 863429473 14 347445784 644 996476745 112 848838109 744 91731697 811 600871953 983 176865433 466 271225967 520 880148578 299 629552633 211 785772564 910 968170910 659 462314130 434 647685146 36 642997206 877 874976520 168 422793365 485 125522472 195 279397004 199 369669260 237 293805875 52 759199679 198 954422753 832 559889870 786 420299586 57 858394110 42 748768471 128 274187937 104 23689325 218 408628806 520 527769815 727 389216327 247 206284467 623 800173357 968 21790043 755 218709059 267 667407430 104 158341803 369 424480618 977 509725319 738 974541881 622 39819980 218 916604100 127 27599017 920 866483196 211 155043079 970 528110730 171 147731162 437 487280874 148 867779829 294 898185099 48 592057585 345 479677278 256 572269082 492 570020582 611 234082743 921 967548343 338 715747337 210 495619556 547 35766099 252 80573308 565 49302081 535 932606851 458 816889886 738 887322018 717 828171123 229 202630166 693 742574251 695 332289993 936 197352123 183 236990226 961 741542575 858 789614495 421 38317520 315 527910425 500 723575262 870 922552456 848 47056850 355 700476503 385 994295226 46 142109915 921 935439004 391 604633565 227 80904428 112 822298643 665 70910015 112 684786680 530 297323221 763 985132110 462 489067087 203 284443694 930 689969795 23 621653339 671 643639002 199 367053956 978 284700455 784 889658435 98 603378696 96 19022449 717 614140291 973 887966470 599 388818176 271 641870616 426 792982309 728 697412869 75 803677346 243 714265071 804 76972412 410 907828327 877 40106690 956 385587619 501 457710138 65 625581062 123 441790097 481 155604448 916 789961021 924 788582279 652 115736394 173 691615618 131 306153944 929 294406251 817 504823541 916 993848919 404 231101691 991 460131186 143 869407203 971 55092033 714 335684882 132 283563179 622 9726580 13 570761166 406 703487977 752 496365817 642 536410522 733 427094423 795 830837224 451 547810609 431 727893758 203 19384364 119 113532649 875 812244192 511 501659213 246 709122821 524 345333179 888 45054622 267 907357124 570 844287782 597 664724176 171 193414853 755 550869140 359 479718361 594 825460514 638 645306636 828 612397753 131 984220715 459 214880182 996 431030094 610 565071892 295 465939590 815 382002132 478 427257961 600 866559685 935 472427518 830 766398638 652 572183139 651 843183522 328 654697227 0 121316493 133 770770609 18 448734759 900 955557355 219 30650739 985 247039304 370 715912061 57 780121113 211 97809304 346 59956264 595 255336400 466 255739042 920 703599810 82 973565840 318 994550093 609 938158856 167 747160387 815 950371591 947 942434660 923 377103460 493 958621499 502 501952524 812 252252301 394 422322232 995 476129426 65 327455929 393 470252396 376 195910815 28 300933983 8 722333000 171 499443439 75 923638098 769 729832396 306 571410710 398 977806005 529 934439329 768 730650213 150 596911419 125 372178987 765 804024521 398 890115815 297 94492413 4 942738535 687 192479632 79 496825172 952 641764236 277 641879552 848 895454355 423 260817532 940 299543418 698 473075982 940 529007739 22 272785628 762 674199324 406 990243952 675 542236595 90 365601696 101 105859247 341 40598215 515 547928947 893 291183330 760 545460098 687 653929439 102 118822971 270 121273110 725 913572255 267 637780470 492 973544379 415 691488612 999 508260300 137 532942726 803 34040801 349 745486609 860 100644193 286 512664971 624 900721727 805 510329707 784 658707212 624 835677942 499 678892652 3 53824859 890 925776336 94 574513400 720 828434095 973 309760888 673 858108899 324 574193328 439 915030025 201 486207787 317 84729528 470 509678556 790 850136063 442 441530358 243 699273751 314 55474114 703 816885896 752 282531385 502 26011383 545 913335884 772 320455069 504 831639711 174 522400133 265 387176797 623 862013474 401 117338924 317 467469704 67 444990720 187 682035085 27 595882488 341 870633574 285 823580562 546 876602516 667 24141966 993 302403179 930 504729227 460 260518118 760 634325169 998 639017517 481 848238211 113 953501822 283 293862784 888 687216961 700 139735695 693 241065954 304 824042423 738 915411418 598 931873894 154 909148454 518 305057120 811 513045390 251 718545875 272 165783081 764 698774786 869 629727577 262 194627532 281 242259933 332 830314131 364 384497040 391 798148514 384 356229547 861 832442505 739 448534408 352 775518660 946 110911719 757 140472062 160 934529350 223 779800714 320 88184395 452 59514162 401 503661519 545 669947092 534 200188227 811 996184597 936 721697180 899 70561020 998 186342390 984 176002180 540 767827966 378 151433636 421 632079484 628 339959263 785 600800751 963 786451797 119 983658150 881 342734498 445 182465893 698 247965485 79 762891164 692 590275991 41 130551822 500 799773477 846 796826552 29 526037815 312 111021683 880 524884291 936 559913394 299 822442332 40 851043884 548 693903455 974 685146772 775 916552725 696 292247422 620 957199323 277 672932709 372 419804353 863 524420099 790 636626646 809 928783748 377 243021430 886 656564524 62 100938247 348 328340549 101 34948389 114 50515368 773 12268869 347 893308497 925 242193278 134 954790948 387 104604706 646 105408479 974 563499349 227 84436063 348 24639541 499 205745859 150 81834149 325 727561715 743 240441485 967 397185816 550 274322239 698 301778904 572 595350859 144 563182360 626 949851598 914 15273541 762 798811293 75 67638316 912 940191686 373 730595518 552 686496740 98 692176636 143 654034993 922 236634469 264 741725543 970 22647275 700 986568131 586 752214492 756 523855139 763 864355232 93 463634019 586 822889114 892 46418731 655 75214219 954 149818193 477 976616008 710 124222493 118 953067729 905 185045718 109 870600469 61 604204386 457 757697434 937 671396464 349 456303128 915 317425252 640 685980520 282 44064880 129 741939276 579 288442 186 642979070 46 895086157 303 852838365 248 670329800 126 726484552 662 382042966 211 677729651 99 619433784 747 773659281 243 286238529 857 177820874 646 11210613 879 22059800 101 1569316 308 436228191 289 208305706 440 765971690 877 534426300 25 320564787 119 78828709 351 940489165 107 169949818 113 116745408 84 897274430 153 794114526 829 431994371 804 683645248 796 569626078 236 256118493 815 278079404 667 273527817 490 206468602 247 228648301 841 945142186 781 412511017 651 47464370 181 983612869 920 32438240 419 168119533 645 751286047 601 932090545 309 904831575 219 139746831 572 335166014 748 720031269 861 807531505 903 239159402 201 138121811 154 700130151 414 365464789 380 822669442 6 831306295 858 923212130 964 415995727 325 447011039 103 53570899 199 594821215 119 556229956 46 381964789 235 558291690 820 825044068 587 256952292 97 638882109 798 980710785 8 321319528 244 34677305 115 440219457 989 193368351 962 225531333 198 308637308 657 425364996 904 674918213 698 917329191 414 256790063 298 314746634 579 90938258 127 871656243 334 316934264 946 518987573 892 976847705 734 626426875 324 313392626 6 738722170 407 799333038 175 336512153 738 765582088 432 716749114 215 953841133 903 567701768 646 803618321 972 99460875 131 626106671 669 387507075 75 30434585 431 836643816 645 201251757 417 602150013 836 329967882 404 717800674 850 973949284 463 187036394 63 49174686 903 871207707 665 862472559 121 684085091 918 490805031 304 230837755 961 579529365 114 523978470 13 269601502 746 651089781 538 868153156 399 617188799 561 484081157 183 593856011 820 590776031 202 333423630 193 250524081 392 178237863 931 688758654 206 902889064 658 439456872 952 606643644 476 768005887 503 208536324 588 988569751 132 921196302 122 581051534 492 382700126 691 299457389 351 500227834 908 245270307 30 370234444 936 951837894 505 701558482 913 944638398 527 924824569 633 146603659 958 428353512 435 478763556 109 91743421 185 438163834 618 90759071 957 544065644 494 875001540 564 808485831 905 538713363 353 257536753 521 928124847 890 800154705 20 642533168 505 538968563 226 583631626 660 629707151 186 294755297 222 796649719 136 35387087 227 321304340 340 343429469 282 698530445 771 580709949 810 978119313 324 616849985 846 288930139 938 738465537 570 218712859 89 83469473 54 145269502 918 694278151 813 464512788 424 525731807 361 377366130 165 113739668 203 52474953 651 378900199 569 358373404 334 507889229 424 285287170 251 496439387 682 287649735 969 260611900 254 300333647 300 498903980 891 973176138 325 230780619 493 472394349 436 426648113 299 252514656 1000 804383216 461 766277843 33 578612604 749 906401112 447 547592671 953 645857921 343 820266522 157 452301253 566 442179764 195 325292487 373 985503217 558 976937793 862 92110755 978 96674145 59 749726989 800 538134055 266 779863924 765 482525477 856 197573395 102 807564537 209 471003602 306 202223226 668 881345041 801 675387950 736 231636157 134 524606 381 197981593 283 390505172 681 381110505 410 266735385 760 101898059 908 330478052 533 831681744 44 528354423 10 877315654 131 535287517 633 143740456 638 783825966 445 482661185 820 653270444 180 179301565 735 107110426 602 391364262 324 893503995 912 682589779 709 533566495 228 889173039 477 651900658 645 618368276 972 530130511 933 386467023 759 435500758 885 881375628 35 312391875 734 707856377 235 663954739 512 293939428 268 258362164 646 854324418 403 354095073 141 272671006 551 14189694 926 916844332 695 89202702 398 637372246 102 508193053 210 911211205 64 546954778 184 267831352 124 539881540 581 595836024 549 679456141 55 248993515 568 943553874 870 960946533 29 947962689 594 814204353 493 568616354 734 444460910 786 987129527 982 64831028 538 310310829 168 389907594 978 143378426 713 83010424 824 922799339 872 236535911 35 596920807 127 265126690 60 83799443 358 195354057 228 384474150 989 631255620 660 625933028 370 577283258 1 73987907 952 308328204 42 300630850 201 70683946 297 895680645 995 295645426 377 433229102 413 923867714 981 140610196 727 899685060 664 570221457 208 800753032 839 91941993 828 614368995 67 486196478 973 260165786 682 740306552 237 404671525 844 462465665 220 259502263 219 55381011 488 642145174 865 581124833 263 203868965 512 563520541 989 610349275 545 489936255 234 323494729 199 351623509 325 494185277 9 113599062 581 940027782 350 669332107 365 444424973 884 330524567 941 910494946 881 585242947 864 907607865 716 135378130 925 84898019 706 838333016 879 749557136 264 814816541 585 39467285 958 19072423 388 533447632 421 969815728 373 643969136 358 590031778 786 410351620 53 130647561 248 381303969 38 944940443 660 268236530 491 458220261 690 292447671 300 605683449 167 674386675 624 665598157 815 496251045 737 663078582 212 502931644 899 854759932 741 253018165 280 399696867 931 564171301 162 232619163 369 981074985 889 835062849 998 30828942 380 103188923 341 553209225 71 550373707 229 146496108 744 628005376 365 336955466 55 263413334 704 943473725 371 576120394 819 130002633 684 92630614 907 724494715 33 204237307 161 812055150 839 969046006 385 833695423 856 152478438 923 187370879 376 17408079 388 957257946 320 168438679 839 653262120 930 119377354 566 89221275 697 106897409 481 536745479 484 695757714 809 340948438 879 337470631 588 356273722 433 542091041 263 495056686 65 305878142 416 28769762 686 793898190 458 50677642 613 574023252 405 103870964 254 995612618 998 553493849 384 988444928 618 784784742 942 138798193 456 952852529 855 796496370 835 861137265 984 478811379 692 350527047 488 22392599 646 533427874 820 671583690 722 234495590 686 440763828 392 421471741 0 398852053 947 120345976 0 588922302 377 682054311 219 262015538 92 857340886 478 591336907 38 631801008 594 428346443 953 852386016 787 771149412 756 75230421 827 691595933 228 686907603 793 930171692 713 221225772 753 372128718 210 346597315 144 913355212 550 295976599 156 765908317 270 384787017 525 886878263 430 929971052 498 100516756 346 197566548 824 255949555 566 168644001 216 690389893 759 362871371 419 695106264 333 93551526 921 246426260 566 626620865 854 561418602 499 710291817 983 112133087 701 551784543 131 222703407 741 845263605 142 419578617 431 460326273 210 698732873 316 670201272 64 901810216 452 996740604 674 458467488 903 6707385 944 814382792 633 548477602 11 976488299 64 978921654 808 444613468 326 913814957 285 598117702 649 172072650 866 621791692 487 820229579 656 355022115 503 431418998 921 649821173 608 139258281 403 514049169 413 377834669 334 49776961 729 628254888 773 842794110 175 887559262 669 938582790 143 459478677 756 354948278 463 141289992 454 993084146 680 958727965 798 612817165 428 365034036 139 629206724 618 549191661 737 372374500 927 489996252 244 812760609 517 710458436 166 257016015 176 64353253 680 407058972 932 918106447 969 332823271 226 161013683 923 550559787 686 479740479 542 993812464 234 863147982 230 698509452 845 639434640 598 378658022 211 743402661 515 567115149 374 644933726 191 874107605 44 8772531 855 320626065 809 12210154 289 428618141 454 535599225 148 493235270 198 993346211 837 48897111 58 988598091 611 8648408 527 187643747 7 887727759 690 136048444 23 282323738 216 987463778 530 203970582 254 275589605 574 637340834 779 604550747 483 789408004 241 27114488 468 518453219 937 81735397 645 521265016 716 892497783 579 371720822 595 997136188 1000 158266805 416 890992130 721 252671781 902 827181226 686 261396042 190 361406475 912 561451906 501 656883436 36 149931446 91 415533830 776 427110922 361 663344933 424 376503920 995 834368752 515 229403417 681 71345603 294 12218355 832 385025836 842 52565220 502 392295582 118 740458687 598 905911476 122 128209057 427 391077285 161 571530282 162 327197795 976 892362790 322 875214013 252 166983266 624 777076016 627 455753541 707 32013185 138 344427988 370 194459927 261 358155624 782 22666535 772 716614277 354 484428610 560 906149217 764 919817845 690 103786222 884 239522490 895 800325305 71 856493756 78 358218050 288 676631597 222 513332072 227 450302662 449 778008537 41 270738843 971 664329877 708 209651721 3 28564325 227 996361669 62 133908335 750 863369574 145 79489551 474 626685264 560 22968932 653 179808186 1000 534452435 61 245341713 868 978454007 222 656534978 979 765928058 185 654416136 255 159888736 132 982984195 761 370514713 515 679052153 394 522446546 847 283579011 502 693360919 398 827167445 285 372822632 414 125674300 777 957509042 233 370714094 384 710177035 790 195286918 208 346719982 447 461485987 218 968921158 466 424500713 885 281326963 659 205445748 733 199452974 97 474343532 643 292355691 67 462144138 857 393948000 259 677792759 466 427781145 757 710616454 430 174138521 924 900561464 748 283057632 817 590402302 921 988903568 566 599984428 302 65175504 616 643747089 693 970849472 432 66097848 940 439091763 541 868144918 342 236735979 352 188852894 284 570607614 532 845641475 468 961341592 359 769463702 231 663369358 143 922642978 179 167478270 707 635915019 203 372536603 556 55084410 20 977129767 445 319666371 332 161706758 110 741619498 332 318605298 134 829754598 667 723733318 823 785897034 11 209186537 531 227258645 759 333093552 118 59412293 13 361180569 800 808202418 314 729752783 579 431380212 207 898369538 168 785421878 22 470296534 769 12508586 12 775980961 768 832632164 21 427555099 517 554093398 300 688473020 402 22055776 902 404949252 61 874658288 544 799626095 312 42816832 143 699563542 882 656230527 656 65215548 213 943449186 525 189741358 196 917270285 992 375126367 642 719520219 607 92066281 517 736928224 337 588354972 533 479542683 260 765810367 105 301387215 797 220589050 135 201089031 423 475615891 158 199324648 765 296527992 893 499159829 443 273275598 582 597254265 563 73316331 202 643839340 333 670766150 177 782529909 116 721877764 301 528567981 990 959062658 990 985249028 794 26397588 374 64909155 872 875896516 598 95260068 187 310681792 865 915796659 270 937061616 697 463094130 123 823726055 119 673694161 176 600106463 946 635305639 919 831475264 374 866837647 419 274938122 824 637152016 684 748129407 361 321484486 125 132456412 670 781331163 742 590444764 762 714919619 61 66603116 106 490417771 862 102658133 324 142661359 301 897514981 111 771453338 119 431383143 956 332403300 17 513953503 45 843284660 891 647172339 985 358883853 120 94192803 473 560072947 245 215487615 696 830060740 258 764667296 251 158374806 330 642424968 496 725718730 616 125623071 81 167579061 898 120821607 202 341778793 633 634351194 101 68378842 356 76713333 927 46271920 425 335730649 421 334211684 939 875485287 26 15999109 428 407051303 241 588127378 935 620060649 319 819797548 490 26927957 221 258759980 491 447721669 965 45566546 340 731238037 870 15076659 576 278275765 960 41709608 678 149265068 487 80717003 479 690713795 27 860028971 55 204825166 873 403184625 884 687102250 204 702206399 78 989232238 718 431548243 466 965040250 819 819371799 629 925729034 257 803592098 988 569266745 1 838697494 706 849263744 770 702389707 133 228119324 46 328696746 174 960445523 818 938682377 768 532085601 574 930270405 632 675195966 793 482178952 205 554523859 314 920419774 157 59367741 622 666142364 508 795648895 135 197133732 869 678783246 599 583194630 333 974306989 547 161907518 145 230504018 489 262013186 213 398224181 638 609677677 42 616880702 617 301183585 887 437155163 522 370252083 232 830642408 75 348643043 936 265947066 18 31263516 219 177865694 639 847289561 429 306846842 727 88719505 25 881232429 414 47449224 244 507459481 146 462636952 564 920997825 205 726174995 429 212515588 556 819684770 818 642654974 284 937368811 137 479504910 609 397530522 238 513585985 413 840566366 714 589548666 758 350410189 112 28716073 187 683796162 530 369039405 850 501266196 112 369563905 836 601627313 898 111369918 503 372630552 375 287477141 641 378296882 74 639089543 125 117049597 747 835271475 729 468656723 565 496677424 108 817065828 17 6322564 333 564919529 471 569035799 633 465725560 49 992043149 299 116987394 149 970035312 526 48135777 877 319493336 669 370652186 627 607447618 21 977749675 188 150196384 432 905314127 371 67419881 981 425477271 539 660048550 680 724159213 664 294055756 495 749784333 281 196092082 140 988704318 594 538424563 664 993526240 601 982815337 732 233693543 306 745666818 861 956042843 156 774745142 706 890525651 28 163939464 626 867229518 571 958190745 950 770973933 755 110860337 39 72535040 88 605123510 212 363433811 287 339045838 287 474222744 407 213084482 277 725880419 485 427528202 324 730738418 961 717361846 988 560727786 20 654676736 321 355813560 770 650683700 252 28436584 47 704266631 332 641314510 621 150777831 609 748351191 330 604202853 167 235767581 408 508629388 778 374917696 704 329621868 506 360029116 509 221667765 544 194097845 881 178529799 900 918838973 683 226380755 122 847855280 488 598079039 132 317576683 168 569861485 301 867350049 980 526641485 39 653820969 354 363827328 943 885925784 584 711979411 192 242410754 748 550433334 70 228079834 677 545291141 703 383420145 583 554607026 504 781182834 847 164496012 565 132759759 48 712352018 906 348727390 332 839188448 542 967187686 481 876191916 9 708894032 412 891680013 663 271907983 48 985702590 206 324536711 542 894467124 415 308360331 479 605973136 883 938087305 347 767905415 156 802927092 24 563375578 201 108846518 142 681475604 955 695608450 743 130848460 405 512640507 695 382922730 698 866422820 661 928904187 94 858509105 951 868381369 58 490191696 72 785865261 8 301524184 237 771651383 488 984423545 792 192152713 161 617036623 620 732965238 649 502575559 235 916812656 159 496231156 337 603459423 946 829109208 642 682917074 143 441415717 250 520609330 132 72612751 163 742691527 712 477102263 141 554691412 389 95807687 988 328646556 654 512277502 799 701232533 556 662103813 428 799772661 140 886969450 736 7589264 317 550574933 495 772182057 309 38420685 782 941413690 959 103507386 931 48619145 18 709560948 917 639429225 993 399700432 555 30585266 802 87225080 515 825679816 2 917033802 1 238836445 393 318548167 635 224797159 793 129676120 318 629952504 681 901834188 806 413096390 804 328925591 356 872692677 149 915550027 80 461584806 121 586054554 720 827800585 756 571754484 984 371842846 733 310038724 206 30908136 838 924486920 359 735625979 292 560336614 385 31922226 688 405953252 249 642178645 982 96372649 691 121733110 229 343936527 528 551860212 738 736362763 822 503583004 690 887231390 737 135046167 479 992027904 83 78724375 887 611360716 918 489651799 606 442207946 165 241557907 672 802916910 894 168760861 145 57337300 248 601474708 652 449482095 762 859029317 19 87557032 93 931552176 814 585097314 856 274342057 739 918524252 831 463106450 40 882134543 271 546044460 712 8926022 989 848892105 446 892452710 136 946332827 960 534040429 249 777368842 321 62369939 892 657474661 785 953737056 112 955860397 924 967651344 676 403825975 663 223937075 891 535579795 193 874921295 212 71558107 657 31704185 958 877886734 725 961387211 778 846634120 265 482191170 517 703041036 352 325577535 129 634146048 220 918812385 25 731100633 180 617792793 819 353244460 212 81402705 825 636282966 587 62512270 94 814429586 564 257283665 327 710757553 274 757826137 58 563248296 268 810730269 661 710606694 477 943155858 358 840673477 54 30309682 540 965597669 855 515465433 119 331699311 289 741649690 60 390018442 747 846803695 250 956798 696 221079760 957 536497212 333 404457851 671 19980408 122 923849784 928 304212461 1 828856883 97 427051168 755 115711798 81 975186430 357 912337348 195 440167321 742 8705787 177 652680844 765 518869370 630 682948054 495 162093498 538 694693948 600 581141791 361 974136874 817 175290321 158 203127543 30 648678281 46 21265391 802 137052803 902 746722174 37 397371766 917 715796897 384 585181398 151 723629990 903 187340698 571 524186115 110 515596683 597 591048989 791 62642230 523 48553740 701 503106664 888 716944385 377 838750431 624 1527753 585 865066617 261 223022713 55 529750340 97 342372193 339 183327590 358 382066023 33 708562614 842 207129001 975 833706018 683 994966268 847 355973725 36 320162680 860 722751463 458 52620127 554 516325940 313 551653420 893 212699003 872 110343182 150 698932021 124 964144231 893 839843074 432 543471107 976 976560390 951 202297353 546 478054568 905 800777447 143 481450059 103 211910978 638 237111418 970 183189805 191 748573675 107 736670112 387 932995947 816 159816306 913 726647617 676 105178991 552 374439582 732 930243963 666 58288971 523 549744185 655 501550635 307 398154625 871 532188149 500 598740729 448 966754288 916 901458914 906 465235375 732 807918161 915 484206641 100 783604876 100 482134854 501 210535583 861 632952748 711 824351524 728 994235621 272 594355487 533 513606247 24 403989142 588 550735813 942 870597492 358 598546954 208 574410511 829 167907274 914 840017432 25 707868447 649 336639859 860 523538587 745 694361148 318 610069402 554 262125989 535 301574641 442 999223167 264 188591081 112 886503839 909 243766704 197 725473755 166 534208909 453 405503377 664 723924862 79 977743809 532 398623042 802 185796050 915 450511935 31 304130926 917 593272315 780 963008426 627 433310309 457 847335797 322 692082243 215 554855114 948 371653452 523 792465282 39 457747517 457 536835274 464 178209700 475 751004834 122 310604319 2 457771781 822 703935340 761 447695854 844 720263270 954 430785885 371 90635511 710 476931171 184 376901628 447 677637947 964 389979332 339 882503021 207 780509858 765 902629314 938 630303696 592 553983809 58 286520064 745 702443155 32 145987501 3 320939809 259 806828057 852 971971438 561 758843194 980 183235930 664 172344864 225 149563809 772 473425701 984 41561807 159 957669863 278 87706485 804 346497636 275 71916506 869 824444198 50 536290021 795 727842170 733 422516235 586 807685913 845 886071183 329 625865131 176 519839574 384 747439056 171 836236892 825 127632903 881 921055107 316 564946125 316 774911856 719 803715915 132 363727764 83 864006794 416 52955107 438 183174125 780 138461277 257 779399466 211 578878400 216 533697124 138 203878464 652 563173824 25 128977469 805 513959685 201 11995546 417 15130839 251 750474946 59 511869020 760 642786852 834 991588434 453 140171471 51 732017685 825 263711305 380 542565538 8 680313750 196 816150775 951 958454668 41 595006207 963 183163651 135 365251802 788 674204445 257 825284371 309 958526414 605 704009569 217 93889764 130 293547854 632 726628754 55 468504171 371 595243983 165 995396511 389 52305667 909 13794944 632 70715885 391 704797649 364 793526497 915 329179711 965 81672596 507 793159055 556 586440698 622 97100271 214 193809275 694 77516776 165 143870893 756 319459001 899 215581542 882 880601021 531 5385727 377 389703217 759 562368508 210 643865821 435 452896130 649 242679641 994 911120333 621 162933133 304 181183122 182 450447004 529 994322043 75 750742367 751 658587539 731 561979090 547 192952152 414 606045764 14 953846196 961 760092413 33 443878135 616 7383348 263 986511402 375 624580706 214 633301366 444 837071981 252 153242544 185 72460048 436 831755365 547 497564849 509 730446175 73 627150771 245 592305160 509 161670709 441 420939930 543 309880446 986 231091573 467 801863915 683 201138896 378 624264070 174 813077412 574 346208094 116 183761796 875 19987048 360 314413090 714 712129148 952 415792283 949 176699688 49 686605726 984 423041489 144 318192064 768 774812099 235 764946050 856 46939551 801 155172964 239 721954961 139 989951607 324 317619619 767 124307575 996 289298792 774 793096094 213 725220703 744 892198092 568 875236827 488 610303693 703 525543522 494 582815118 443 456350094 315 714354415 875 643788554 318 778670955 404 592281899 827 602683176 420 625957361 124 611829522 554 359915282 805 780059386 997 928757312 40 834564719 849 693440761 962 232284407 392 626385554 217 52558173 731 323612882 292 811797655 633 574585582 555 727360990 308 907915058 184 260254789 857 363086367 148 46644196 797 715718130 957 252814932 490 501411759 693 538233207 999 16854650 84 264249532 158 500232726 739 27410908 153 536525656 197 676887325 267 826655771 494 231371478 373 233347105 587 984513229 692 373447452 706 975847196 449 233765529 128 315682771 415 46687463 28 875787838 228 505795108 240 626138959 619 104614597 156 114934558 417 631796727 734 367149654 328 33737618 116 158704481 529 459147719 399 640191402 596 710781515 896 279696949 822 942566689 918 588203876 891 933955493 1 651089931 394 667781451 440 613373740 887 188189580 553 671961095 222 715062684 399 672275664 953 958546126 363 936049349 626 511867740 675 107742648 814 624796404 693 343045721 650 336170868 958 290617401 181 266425949 652 894283025 269 790043157 516 991690575 482 708874062 351 236130507 580 860469041 363 573584585 793 278647784 516 281237847 849 491395483 900 43758307 917 763954202 403 546357468 928 271509110 390 837251306 974 3555868 584 130140284 230 928905879 581 725909341 60 843302079 324 902324742 797 439285322 612 325045535 518 999898364 943 151549439 374 397886360 487 329740426 840 963901357 784 742941193 114 778571514 657 728813309 239 247917130 536 214213192 574 385797017 782 611573075 593 358323678 894 813609814 166 134068683 668 667291661 941 410968284 8 489887349 679 895431822 637 900170060 261 64023469 832 551525812 96 355004860 417 800459165 103 374248277 442 554862795 554 55823477 98 429524857 676 716256685 514 174053060 667 985273666 901 578775854 774 123278398 405 935918744 476 494531189 459 90909087 96 972577951 485 69935655 19 69001390 208 246321827 962 995565243 37 317401433 637 403217818 315 402290801 122 514592510 135 336051460 572 373122290 998 78467006 800 628442587 609 61531436 611 285425808 876 356483288 653 994982447 57 634449758 227 282438748 770 349666431 328 434325879 995 510743895 919 558159815 439 181502697 377 82521443 131 827878047 834 21404140 400 437239483 945 38270547 858 636951537 839 115474217 2 748246722 371 3853288 17 350216115 149 106851216 895 273773664 200 892355053 592 955640509 151 328386536 879 585541306 456 636473359 43 713413536 945 101324421 91 733444490 662 293127060 460 178712914 447 500111513 726 511090658 940 726329680 26 183881875 798 526274354 709 373744767 136 59007285 56 2661609 728 154949247 545 791199539 126 952898455 684 187114667 922 691197594 581 762084085 380 273517727 624 7583066 23 782994531 760 381724113 135 432921439 1 213238350 114 420636384 978 397996488 824 469160460 29 761351717 325 110098902 18 255690483 999 982500234 181 978776348 462 348198201 897 484408424 505 893662004 426 859746129 670 157089022 99 406658618 79 301017232 27 209213717 835 816921870 747 298283042 342 850143539 135 110692466 726 503711789 460 366945121 49 622093651 631 824982692 480 875934306 700 809899344 561 892185518 528 757919818 452 637499475 461 441249453 551 248379416 103 24748210 523 69523479 72 323246682 679 799850694 105 261596824 776 225859745 479 46079369 673 868343558 668 801092054 946 252880708 642 628363378 508 972597358 629 887791544 297 843664476 559 303298597 411 399998212 236 232444191 877 384625331 764 489174237 178 731715711 181 426343656 954 706015635 325 492264505 709 817322634 8 91644421 370 285766663 969 656831883 817 814661980 343 392060206 487 63840770 230 26677430 687 858764522 815 41588963 835 963758394 542 784846322 38 343407678 274 528625893 223 400456614 849 906770703 405 678692416 429 602111074 576 824981800 453 927888847 930 771295353 140 328986798 309 963555072 862 672256968 99 662721420 279 380245102 896 159861666 182 952488058 998 776075828 904 890635833 624 719113306 283 97081913 90 650234537 536 166720547 922 775036616 477 567336897 152 286276978 349 828681686 39 110723957 578 366843046 959 728121730 403 146343053 248 881990162 107 177824523 605 939871592 458 916630358 329 522775491 129 369063231 390 45518326 121 686873041 308 881048806 660 151591943 984 932652315 423 686396095 13 799428762 947 963774917 697 920230269 349 992461434 209 328157523 458 695666261 552 762685081 342 49896587 462 877960065 52 221332229 514 659583816 336 445147960 471 141173610 266 440631589 253 569280579 973 673249376 487 717352933 718 759176428 558 413896101 61 461594396 760 998468485 341 952823343 393 903747274 950 782088753 934 158736817 968 619734207 426 377898129 481 463220920 451 917625534 334 939749955 53 363861028 944 232116716 891 895159584 708 38537790 519 860157606 408 289823139 948 109259569 198 236859053 263 167860274 585 500705524 905 624599778 282 559383589 880 830388072 648 242990184 614 840487405 864 388978065 678 609940014 371 571434065 402 51621656 783 778096577 966 25578348 640 282661555 365 145448450 653 29097697 171 886373709 972 671546830 978 915189338 238 795175455 588 914657545 883 696516834 954 265926999 27 464789144 672 427444486 450 30860345 183 929709517 547 349922072 968 700029918 135 353463370 860 669984214 73 840089723 937 448576907 716 739363196 862 761093965 329 333910975 959 117476715 800 637969916 592 497223382 820 909250778 803 37589257 330 205922299 279 127907246 162 778158232 440 517495899 734 114344804 760 593240234 450 728525245 665 873928440 52 309826057 179 945285496 981 225067262 403 134889633 435 165756170 699 485015490 909 564765353 106 229108752 343 464267975 150 590444700 827 709480082 952 121222398 158 390721936 476 310445749 689 199810498 224 296908162 419 618541555 352 17354819 840 901416692 856 440961615 800 819401567 269 11230891 346 203854874 20 934334228 540 305508741 427 565678815 511 91305312 186 582985008 301 460286590 713 257856882 980 548259403 549 582634538 602 47002650 896 1548350 651 508536510 936 81588182 671 585938342 870 909993910 725 254966661 464 847288981 149 765996067 46 241195687 307 334028912 364 341179751 552 167113593 871 422635299 365 622300939 946 235995651 786 71336220 823 732820522 650 72807322 530 251709727 870 414016686 441 716280878 868 802000036 168 771122510 312 139830904 997 826418939 558 267160023 398 125161852 983 723252357 830 673007372 823 602626407 281 353468950 503 381775393 560 647503215 569 25935496 836 549634954 259 66904078 645 202200719 506 825973011 828 111849517 318 415564434 555 504746450 580 744661887 347 403507976 588 954186794 32 297626879 871 498880251 193 309953215 657 227222439 854 231039266 23 893354775 87 235167422 463 649088918 205 974837360 90 390773724 200 399082621 381 643238449 790 789822704 785 581007728 153 115176370 934 813197477 997 357179350 768 864128345 903 27962334 187 793987624 984 475859985 316 247034148 47 236100145 445 564844827 343 76424403 335 460004682 868 932140874 583 19592827 499 907878556 236 363500050 338 923966045 857 429192225 282 735935515 931 842210307 800 524271581 987 350204590 290 78123635 719 825436249 868 463162873 570 139342534 791 209988288 149 380354084 504 259888783 189 698786224 703 490199181 831 849955884 655 990835363 960 161161907 605 960097081 774 452892339 52 28514606 170 600996739 942 582629532 318 129083734 555 777115335 648 694460973 342 450712991 790 546053349 385 568835665 911 108777502 599 117781604 148 837983462 790 582784769 360 692980542 645 72820717 662 95834316 46 196340041 277 857325770 538 258430897 781 255021401 809 481017071 150 686783822 403 12065425 326 591203105 482 453076810 629 323974299 657 932980534 985 975734823 580 378061296 704 371062207 600 843233316 952 169165329 855 614041755 572 87697996 404 970837383 4 797830408 745 94383167 362 570712538 703 582252932 550 772661517 6 600434282 269 447521667 104 268072209 743 762236714 176 202322540 565 803632586 544 936614801 286 284333938 309 610823718 340 710924737 631 881270064 524 57092111 899 909911621 530 416416675 510 600564343 291 446949912 131 750829388 89 467050966 684 826173137 119 110685416 105 74180549 117 473209054 885 800217825 865 668096750 166 690106242 372 713729183 189 255236483 49 767634644 814 145169187 582 58604885 949 395700247 788 312962066 474 169434059 705 582021300 290 59111635 377 579482693 661 908547324 241 522639290 903 749330663 401 138292107 3 915966208 633 106192596 455 200201979 762 897186358 433 2084359 855 660776159 50 233147369 283 750231950 98 364509343 412 227876691 113 689109759 110 731590724 972 511286876 387 354352185 325 343214075 827 421867430 84 649448843 820 773188985 374 962492882 78 391365289 198 969478603 714 63405847 25 194072222 856 292569172 658 132510012 13 264848314 464 44980015 282 113728745 505 763875929 377 65236507 616 847310528 150 660539824 508 327304769 640 103238371 234 33556488 372 242681994 463 739596116 762 596573482 220 582116679 902 264707815 763 476198088 98 410330804 739 78406649 917 203996719 382 360912736 601 468439871 419 932381802 425 511088709 148 14015099 143 487582652 933 32079849 661 75859797 122 584373012 440 98778159 281 704809428 820 558639858 984 638782046 617 731871537 24 322897461 545 419904960 442 856534187 241 192265027 309 779360450 244 43322180 456 492798483 159 288301676 169 667818858 689 788011360 315 994041709 544 348035567 817 879695583 681 236744434 617 418419820 173 823296045 507 682866938 61 731006529 295 77543538 775 490590839 184 924355219 79 295748121 11 670274415 168 448953652 44 447800418 718 991070824 553 448082344 636 940295352 616 214228558 32 634254487 357 864070307 312 134445407 24 508736953 175 316450809 713 583780263 367 28297682 251 410885399 400 939473517 812 555866788 629 690336655 149 214776351 552 384709093 866 569162428 102 447160899 986 762202215 975 85948536 493 792593493 699 751966574 302 909835104 876 252699997 894 811762269 20 2819572 472 436088054 769 460778524 930 511816374 705 135515394 251 290309778 935 833185114 875 702758460 856 274632085 599 58935300 576 576743289 608 818937746 360 112473488 360 926392590 225 117759280 171 42573518 450 768708780 997 690230928 576 674554142 545 988298040 330 128188542 449 187738133 539 977077208 684 996077429 610 943714275 373 786141474 950 247181128 298 160315662 811 662040559 801 650157584 548 625841567 608 55549522 1 371895447 457 103502679 805 470250436 474 351794277 695 584224978 355 602425819 823 96146074 403 392582032 106 786055895 283 44311318 296 609738934 602 927688037 247 9902863 209 550303003 367 564943760 187 528145797 970 200250623 769 292886555 395 142996388 234 48432910 983 559198707 283 376191243 742 917634960 557 498421146 556 585785857 130 200000520 565 428239251 95 936540755 918 716890319 185 990476818 561 864205881 659 452970616 334 277435303 546 472443646 56 33692625 314 726969268 671 359535485 471 523938894 753 863509592 533 956363931 975 566230643 621 205438572 617 436076871 747 322234480 424 62277082 136 48988183 289 223861621 829 547913729 939 264054380 939 611494803 473 340201628 452 112325312 355 781137527 329 607263315 329 260285987 373 542176080 175 454013620 976 754463270 745 131491565 499 96346712 281 388728615 880 878044686 917 19766440 199 285441517 114 310029841 474 359469980 171 636754586 501 267879155 547 167908444 845 762966774 473 126757246 1000 523599241 141 603742916 587 230049315 972 312744551 322 198295479 993 326552594 806 690969807 72 815319535 352 593044804 231 573639772 915 788272842 739 378000555 610 184116474 420 589337081 66 132920758 671 870788897 718 822361111 455 639879186 834 342424004 745 319794244 506 189446260 439 874574200 286 837231749 281 339104513 723 806252664 340 660008773 182 730984014 292 567780716 587 347003878 150 773268600 169 238185085 910 520286685 925 300489557 51 694150187 211 267122219 549 644482088 55 918185425 599 995894512 257 615620706 321 118159040 156 812315551 94 273610268 346 997975459 41 841317024 316 113495975 413 574739886 14 394492992 922 794081229 599 605131177 237 663850153 864 844579892 203 181774078 599 566380160 950 58091910 22 48895280 263 415862514 457 924545992 822 512875619 921 139697182 975 212067936 321 820574034 401 700591239 422 913805862 624 170809048 780 998245636 861 603075117 203 326503965 567 233483639 591 810945959 819 644765399 401 282456647 645 318001440 540 605662246 17 758824270 600 522914322 303 607782626 53 49332718 918 763384543 895 969528032 812 93237579 370 736008747 51 744234194 298 790831180 753 10043676 638 381767519 67 767456014 955 349487481 790 66586508 820 62554967 167 435646816 822 686840160 869 24476183 123 897307528 623 447020106 396 436001408 734 536753045 175 676365776 807 475734670 459 584988752 851 693991709 951 60356888 318 393929562 399 818827664 45 502828330 148 966278207 889 563494387 845 775568425 391 729481511 190 749728646 20 791244811 989 772440299 231 63719997 588 347729220 565 327694413 356 69564249 1 144103857 630 533571385 264 656426109 959 81319238 345 254644840 842 363791675 860 353191752 209 196085333 35 291682044 468 138627025 655 722646908 100 6537009 228 930200742 746 926159729 692 374654093 958 615334727 539 108843674 40 584309310 593 290180143 123 418351758 125 317574832 197 82228342 860 12020349 25 784238644 786 55887426 90 499434352 722 43998736 948 301472951 928 834773723 925 234680448 991 489390063 714 420727458 746 402551581 1 841801976 693 220127723 609 182989060 87 137631721 267 592160351 934 118857605 5 15710463 459 151849761 904 919182450 67 157149852 108 119939124 462 586936468 326 942834289 338 211601794 910 100695284 880 313718575 849 464026341 514 344054614 89 28869058 879 829907294 422 416710387 249 748735621 688 302075652 980 843153834 391 5340237 484 296185981 677 999992753 771 404747844 658 978313988 36 377779921 312 730721319 860 880823003 117 718139199 570 573453984 15 526012449 502 267566301 134 538156710 198 382386288 268 732407865 581 924071422 567 322656868 114 345995462 3 634352896 741 93426080 353 669298341 732 399089783 822 477529745 191 382687648 666 981130398 895 805907696 966 263088531 217 205397714 479 764883710 565 50752134 902 535011472 877 255987909 120 124974988 858 506347484 624 775166399 699 789681859 884 866856234 746 812694575 951 966278200 543 120005092 738 305039784 525 519271264 610 869895867 295 302046599 766 664551080 865 869323648 98 64337947 631 98360469 57 104346844 579 475153890 149 365499849 17 756556809 804 724928357 952 789343798 66 475913768 291 874529509 702 815324501 173 678622372 15 411803030 294 510178066 44 398132565 976 401937201 963 384585433 668 500600965 382 392798549 830 873254660 741 949371399 658 151317729 583 200365522 56 584186255 283 116142990 313 319000179 95 996888380 852 38341435 986 227409658 379 346725526 559 433621870 11 299007857 331 841615860 221 152803821 40 589379800 158 978587939 425 441210922 157 949169766 55 481400304 379 985593906 221 146735785 704 520089132 389 828090755 362 363607804 106 683808704 358 691673239 720 510508436 821 832917700 215 566453303 950 541914901 477 574358133 562 225731096 401 622447924 760 687345338 693 280550949 605 832896044 974 718233229 827 7298503 499 867313000 794 881084597 43 211076769 311 975451058 397 344176185 421 158657538 159 816047322 988 777174077 754 973094124 875 177370992 761 248824277 500 122078635 215 192250809 948 553695366 617 660124748 699 638973558 924 387254656 938 803560644 786 761755405 259 478641099 630 694404745 347 312581298 873 595713050 326 230652703 691 855190569 559 970273068 861 323626292 73 866013151 736 231938159 186 758519914 387 54363411 426 502197909 173 450368824 742 51260792 351 249213891 706 279096609 145 684851069 731 682601973 966 508804882 310 620816876 388 89242360 83 127665614 421 274645099 871 602751216 71 427017877 739 518699158 132 78470180 627 957069334 438 185962268 881 233618052 210 827965189 39 726800630 486 324575596 764 338915271 120 383351420 108 298110178 280 248300069 895 556306564 596 693367690 915 305714582 68 258940462 271 833341400 501 555965182 788 279431596 663 845079624 421 897976959 259 275958032 537 201891562 620 247082650 632 14221268 353 815813938 156 450228044 613 878697160 606 142031401 762 168577124 514 529421323 399 171867148 235 185800097 378 86092706 465 247076835 943 480059762 445 237439914 198 909158037 139 941643058 152 863620885 163 324952191 248 252713151 94 973387062 947 54036256 7 926048523 41 723241046 443 711723713 27 95707602 695 61163736 21 381466525 309 265553036 979 723036683 52 15602231 191 40980919 454 907230891 970 864200591 705 918817771 526 180285684 297 851918437 553 835857650 508 98480273 877 438867705 910 928556266 547 704393256 752 851276225 733 77268946 81 555225280 105 350063441 147 31469343 859 886477845 345 903926583 381 468386327 960 669291575 656 292066283 984 36279160 844 507118711 286 843420961 670 68157840 461 374759500 349 70802412 146 100188068 121 260454284 450 322372239 439 15558312 19 129150799 758 344965210 754 301443395 594 72018983 767 495743222 997 570023195 14 589621875 741 534206210 928 833837766 487 776491594 985 532969526 262 475548016 616 201495649 890 710684206 609 977642332 572 979243472 44 147834276 102 224769249 362 50292623 104 41258823 81 415150537 339 168337142 84 982601487 948 240741056 601 572664701 364 50325425 232 158370786 975 979037469 14 179380156 115 418731603 482 851092435 350 349318959 993 774206761 396 262068388 734 169216898 679 502788270 131 512723977 401 755810961 441 496443179 91 225496219 815 529543032 794 542888316 883 695693450 649 467398001 160 651411193 923 76335498 709 36739971 99 423812419 507 585879014 550 997399690 504 3849146 783 787145280 770 312217736 782 470289767 50 600251275 541 526361482 741 679844249 632 867690379 945 182663033 758 473516162 453 894374304 471 562061284 533 970536101 445 868682000 323 322325204 998 261775379 921 645330063 569 249229316 689 8177633 510 347968134 96 993816311 941 572843686 198 447418236 0 697277471 336 436471236 955 716512908 226 194972707 32 458289713 86 161313520 581 80763261 868 723097596 799 211060641 730 61602171 239 185105824 587 730401544 914 551758746 340 768698106 510 533753926 643 235811207 591 319452232 723 90091692 93 271472645 797 497763544 151 566036290 42 5009756 429 576813809 258 246494416 846 4198965 79 916412547 370 257141412 55 844226191 243 34421455 75 877272681 183 747511314 264 108211531 62 933629679 286 747210636 165 66532857 461 684341178 59 835388941 561 279507995 495 596383119 602 512392441 835 754388105 922 751027222 700 722692411 505 154779827 590 123227077 929 301819124 255 804306751 70 992989872 118 956028981 837 293705653 823 81614534 742 338235450 295 406773909 212 666280031 22 449606723 627 532128956 524 417552504 694 964496807 773 289396469 465 689252938 315 804908835 233 351219997 232 184765799 891 892192243 249 698756106 25 845355066 218 122392949 754 980926437 948 405513860 96 679147914 558 117402616 877 614254553 376 97076647 382 173793330 544 77414271 555 335234078 933 792724203 122 473750664 963 788029587 778 370159593 63 776068499 817 923646215 461 617494451 241 836737945 608 936320832 256 284177697 712 493325897 228 73872742 226 946190645 341 462519345 356 847270552 646 66743495 800 153821802 860 921275740 571 322728775 517 775136862 501 67759016 641 490908627 539 383820456 60 446530000 96 648537077 51 129840132 220 133944038 266 917325704 988 543735889 166 300618445 246 958379251 477 820778868 859 751887745 435 683561616 797 179463683 678 870005982 623 341079625 649 202988794 794 317752932 388 480861995 443 240012981 898 6951144 15 346003306 23 863178005 183 58011086 168 494574995 27 315260555 587 754830649 735 856683568 385 281838243 90 841499190 829 768303480 935 569705653 337 744428927 357 351460314 391 151990612 256 469586453 827 699156933 76 604406187 299 797823042 434 370869105 131 415428578 967 714403340 55 317009433 367 183433348 745 291540999 232 211732972 260 688724765 517 705872420 749 321233454 50 519415367 348 272222764 443 762412058 26 304954729 237 925913078 111 685864167 71 406028965 285 953929333 139 591409777 873 575697852 682 200684595 257 285933268 744 460122536 816 310144572 174 373459338 807 220446139 794 730820916 160 634151832 85 585364830 837 121761537 96 585678998 964 851468935 607 24854984 714 210249037 372 834498849 0 259254707 421 391869128 55 788669738 116 609007331 326 899126594 378 790108764 940 959539598 348 291680522 847 458813776 710 394073531 593 326498400 691 924102922 762 23056915 531 694970938 710 347853013 52 216142924 322 687057361 527 767680082 236 950964366 891 518907203 761 44425274 976 800147233 744 298217362 321 633084421 970 519755749 998 864170859 989 910165099 242 126742577 454 485842139 90 52277719 907 971734799 10 28792896 787 356367440 760 497839056 593 425547942 823 860188336 254 524614527 671 840914698 74 251260805 806 652078680 577 644203427 941 278874908 534 164822295 2 892773124 341 837444925 324 485942605 590 449042490 149 132406736 435 939831293 624 326068843 841 880942503 710 279298043 586 427270917 550 502420726 696 311815781 990 39323282 920 135361229 305 129959976 312 137860335 958 787593882 600 188537904 56 409888093 477 685864652 664 149681922 143 201210680 321 479399018 664 58746042 408 322862969 179 765238498 926 75689242 546 525031622 25 265894382 767 885625457 318 909194625 150 144941555 464 683161660 764 420023087 570 280261090 770 431563375 290 257221958 605 815521073 839 514377290 525 708328344 416 306983257 819 13934401 787 774626414 623 24407245 748 130308319 636 879414408 146 2597162 14 768896319 809 949133911 131 354952009 212 244160497 523 28726223 983 300084929 131 72886524 859 900893552 640 271475010 993 829966553 357 127590038 198 117674008 161 42114408 921 555841617 989 880004659 69 997369146 203 171040132 414 97349544 825 924214913 363 945065504 342 894862894 139 173181283 756 739120361 517 815348945 621 92201316 222 14594299 665 121971581 244 433862992 440 16850125 548 594940679 951 789086085 569 96855899 759 441028269 503 290207153 863 714557880 50 293107509 87 315864583 725 765732203 750 920385469 116 28105605 203 306976974 248 373819936 252 875227951 283 927506238 972 773766173 416 959484033 214 148167132 281 601528693 567 613428360 208 959760233 155 121408997 784 137581032 396 642895886 582 922979508 978 667207486 931 798572324 81 765470387 963 128943270 691 665067832 811 552819153 290 875310327 179 611880509 440 412948966 854 353995625 77 37947519 686 351750907 779 206142138 230 107846184 534 692739231 278 400148182 176 528959319 705 458302304 135 593864912 339 494409056 582 450835894 897 154186469 425 302918827 765 168453511 124 240590784 586 348610525 165 505980185 870 131120544 520 472335262 333 95293172 858 198551460 204 127143847 92 924753138 540 279854512 919 278103883 421 869380503 100 587087765 506 554352045 634 375472265 298 224342743 114 908457203 899 150926989 214 519296222 185 523246581 554 327499663 604 596068962 526 386238151 996 317898630 429 399692802 75 700118440 372 950335889 804 933600353 805 253726180 846 550573297 381 26968214 914 34406993 216 457458899 681 638137006 238 498948708 931 413811451 655 449401470 204 227870331 229 170916420 734 618010537 479 859103097 439 226537625 596 175236732 442 503995657 941 214805583 388 620365599 206 385095419 769 578648987 113 755346112 165 95462615 492 199379002 87 197410078 370 322390608 94 291974339 697 240563527 298 98990622 247 969968670 716 552949028 92 316943883 80 497448664 819 997733381 972 773024188 328 527076110 376 87580321 386 207954279 566 67001659 91 524916464 957 540020865 685 670391282 338 964309308 980 38078674 970 705693355 650 722639414 905 391163049 445 696543910 8 564419002 431 69401927 772 366222500 682 998395699 612 117638664 117 710206009 973 835946323 808 243189863 184 996571625 469 49878843 955 119449747 769 904417703 123 843616169 181 713861490 237 889652993 427 345309507 934 837260796 300 326851436 78 259888707 982 486397493 353 647732229 453 46586493 110 504403083 994 850730842 912 115167319 776 528777287 625 81572425 513 918661724 872 434513136 443 817110087 710 98272829 646 496926187 697 647176180 987 724237078 376 775455180 298 637126434 291 626643911 985 924523773 944 362338980 44 951850839 216 521420060 432 786988724 223 43158489 931 898388649 382 386135122 276 653666349 790 816398637 521 868686906 583 342866755 290 48524664 573 963726680 931 690184377 384 503918980 510 758390176 940 962551514 174 308119412 635 649456785 418 609638746 906 687615374 526 70647248 852 601766242 436 50282965 43 446470001 491 218175570 337 994968633 811 581388362 975 194933147 932 535383924 503 649641048 625 516985278 198 608635658 269 445657082 577 236906524 799 608298920 450 591996530 325 235412914 820 246520998 960 942766383 857 566017854 127 295210957 423 942642875 695 987818835 437 737006702 913 826992006 661 863435305 652 303920760 161 514811072 342 298736778 852 998842602 301 504657986 712 808877157 87 185091243 889 154223330 716 210740716 593 348828292 705 535766917 289 431308143 967 6017418 109 348358029 636 687047905 345 245164154 379 481340883 203 919048961 141 113697603 849 484472554 31 61801079 896 208226405 44 82720428 651 829291951 593 828923675 282 36182230 970 829397590 696 257314415 284 928631804 897 827499129 317 289786450 868 56684550 1 68973434 825 482579022 696 956142182 18 306807674 419 440259830 486 85604549 763 410290322 124 489604069 347 189670533 514 407155826 16 221159735 36 567657286 227 275015949 698 329400212 207 370885483 79 34988043 825 627223669 622 253867038 242 146603011 431 784050080 467 223308681 355 26759715 99 949657254 434 647444652 205 688904303 819 778073085 137 874861198 205 331245786 82 221152632 22 591763420 917 730033189 885 646859823 309 841310045 560 787250246 483 991937924 359 44148362 665 831238555 457 217045905 100 768945175 313 380040128 285 108101353 865 713832611 814 479524562 552 544636933 421 448207130 129 125235707 278 650281169 759 205014956 120 827684026 926 295770564 483 43744034 363 157691323 571 389907247 576 44556715 150 971174688 779 215708676 738 506221448 980 941914546 843 154947255 292 138821211 329 213992914 241 708730647 11 558060038 200 335009110 698 524893394 489 443386280 109 517191431 74 292537570 189 989418980 792 374551898 888 326661583 833 385443643 119 124028370 748 782781486 495 763097450 281 372842779 423 812003429 807 610890848 129 606722706 288 721191604 47 678715770 924 640930297 579 84249941 743 956381112 472 443801719 33 594282971 300 665535283 17 590596032 133 227676010 971 928921814 477 637707841 605 691674286 368 642546801 250 79492486 690 72079286 730 225025765 248 120421318 251 811996033 718 928866033 335 469018304 333 390508115 140 359063797 490 241184952 392 521909 768 805790852 742 40315241 668 962976255 365 891330898 700 801531315 557 543713370 937 705909013 275 44095867 705 434453508 2 324443152 543 355043736 466 634641010 61 253216255 679 215898541 307 1708134 180 151804947 855 866423865 349 35693767 305 847627679 627 812860843 647 671475297 960 693953403 309 571038595 800 783879667 751 927705890 546 356352916 906 729204569 413 632285018 467 305141281 890 722618388 652 164697716 735 769782321 568 913233230 83 921760465 366 338572510 225 734419143 496 384750494 214 895941709 560 577090968 970 992068508 517 349005397 658 681860397 300 975100472 341 65792462 264 523606725 716 125368715 165 427829828 426 829308926 271 156099074 612 368709673 692 256270150 503 58167083 77 515421582 995 286702592 260 441605318 22 375262956 179 953949854 678 575866375 446 909424738 346 786513298 117 330661006 487 932242365 546 574766331 148 939043706 183 949104298 111 112677502 329 981457603 2 387048532 307 489433123 286 403306080 123 760703575 179 339615107 47 715722737 148 994369666 816 361701525 364 76283135 37 536047990 347 46796185 843 285471045 299 569205160 107 362365211 633 815416836 248 932686815 126 218435403 925 589790824 34 592904180 85 857364563 500 487443069 11 61312058 552 685608826 747 113680884 69 11715482 970 761895258 386 885442855 196 283958388 200 145132150 991 246867074 447 724508755 235 201318854 224 273853450 892 258203840 149 739653674 325 796759512 287 841051811 12 103909507 711 392572657 532 923782990 264 673746055 806 813256875 642 976626929 809 751274362 887 684659945 857 77035377 967 938088622 758 53650254 755 949696499 353 806932811 741 772511027 81 720255099 515 421556025 665 122096955 51 460297801 539 316558609 484 307832717 330 300395851 0 305627961 892 813629952 697 908975471 251 770843129 441 323392322 690 691137313 665 26171987 855 173290510 254 995933167 300 577925384 104 108287022 203 848003917 361 50415294 926 622644237 184 306692015 750 285458324 770 295477397 558 982634174 873 151571953 345 236128294 398 597860980 574 179635290 87 299061313 59 502649172 80 98499771 545 206825165 941 539773212 523 349568013 598 19965030 5 768905476 962 323399586 462 746142739 244 448099036 174 242837367 247 172098921 435 832876649 894 874325909 222 911557341 627 51803154 124 601907777 487 140201984 175 151359506 473 618057479 482 343944139 55 752363372 285 454389927 269 817091670 292 434532630 1 242654382 172 123330670 814 368227027 858 778617128 759 273016536 963 549179279 6 523320964 411 196319018 861 377023111 676 102860531 918 4338623 560 971081202 862 368330219 992 409732475 456 712866317 630 297647358 630 226399512 174 85021734 274 812061654 588 317341406 470 12312598 527 774990346 546 167763149 146 982820488 17 822760636 401 878428869 12 674752464 969 123872161 464 986476855 319 50857249 79 584784919 553 52027905 766 855462061 183 661148110 162 986756074 840 107983371 988 609574868 424 54356294 61 701130140 478 430729442 129 747558194 107 703101862 972 334415445 302 209670369 840 482942829 48 588682206 141 798747981 268 33818467 338 571572603 129 759070153 18 849406151 270 870421553 400 800435221 502 789542146 298 935344650 134 569650820 230 423900469 150 631049814 496 121432433 980 227007193 286 727724971 218 113281804 475 70335056 554 208920864 308 761682186 996 644317607 879 994586465 318 7668149 150 358226869 931 979923430 275 528976879 959 963867156 329 48610992 151 502015924 81 617515325 646 5896073 957 150125477 237 394313771 158 20359942 49 426177924 371 186450926 553 584403406 297 851866156 502 708703950 939 472055394 478 779646602 109 10702122 270 935398766 557 655324077 625 415220955 658 777695052 357 925606243 158 247906952 394 706286228 331 149750365 523 879094202 224 396746423 995 992161415 213 796088048 355 363788195 304 680692770 923 904935132 514 674956153 339 795910093 323 382597439 731 415288102 460 827073591 695 971336674 545 51995828 381 170659018 587 567357579 735 533541875 785 580163356 835 23296441 208 503268461 141 532827547 447 889631172 664 812768450 5 446215197 447 490416523 513 244541397 386 234017268 269 906037286 643 98435924 139 805886157 26 570114706 909 110096709 118 367893754 958 889160487 908 467853228 931 892340495 602 575507066 20 621494302 731 772598205 590 532039137 406 533368745 978 490472496 543 987571804 712 598811232 184 111821900 245 904120640 339 671577824 893 702412420 919 511124607 177 772444217 825 681331523 29 747876154 572 199778095 933 453708395 632 532735727 405 590152726 485 264243 46 176595229 227 219943327 145 117486809 981 674456958 490 643199962 397 430086310 937 524745802 357 887534843 1 354859078 44 716932305 541 83976104 562 15867739 332 402865704 308 406738972 516 416738330 540 704155168 563 772039235 572 991653289 266 461143096 919 137701549 862 12574756 844 222330513 1 842961085 12 828669633 732 802075321 297 370504001 206 507527442 915 880152990 523 896464704 181 897914257 688 325150815 25 154090104 96 726241835 111 946307645 821 256411444 36 871428009 541 692470315 549 273634199 926 856756610 994 737424048 682 170924985 189 910044962 51 926895440 660 470348412 534 439319873 459 822861868 982 578547356 33 587467566 208 739444280 296 337129801 613 891517372 9 17813364 944 503353884 928 581939046 13 414641479 460 377012763 841 610038193 458 49303147 946 766396337 981 296140743 951 759009245 225 893292886 37 667786222 476 390211628 815 372949293 497 665404524 934 636939824 374 883347550 316 606711950 79 978547065 469 212223285 67 292134490 226 909551653 524 147596282 835 374369766 990 342757334 337 779021374 93 177769810 483 502061208 639 951388589 456 460409591 644 745520725 862 485430542 232 832062789 647 504591112 393 610642360 957 615601998 944 172028644 387 713313217 362 715587521 890 525864175 876 794661443 250 887539717 730 83093406 350 112795289 590 280266165 691 506897245 276 336371182 127 944131899 490 611971247 936 568532187 188 553586635 489 865531371 5 856686356 779 31300308 725 638316477 936 97829925 871 213366820 540 212584446 279 743080889 641 173140659 493 426362051 633 416266869 591 506875683 553 109318208 978 661216269 726 829610503 577 596518350 889 599754484 370 109098030 922 125103612 468 538911587 89 989986310 419 59550819 264 921811344 926 167199681 532 212317018 44 92242966 35 192603390 75 548580707 669 409398259 936 575690968 840 936860366 945 586899768 264 990037647 709 160987757 527 126001624 278 153708253 476 938995263 246 404529115 71 911187435 393 326613478 586 98845673 450 489584729 281 996596667 316 913718219 107 346461568 218 741223015 595 213043988 726 339803542 420 840549963 820 208608729 309 498493434 831 901845205 879 307109392 516 761535847 205 65384063 131 410988045 796 497489187 354 792564485 813 647008124 391 533999481 538 635532109 148 517679326 665 401101240 738 844984726 395 545783806 615 853607291 369 307721931 368 877818809 618 750044805 563 500359285 207 966526790 862 382373824 232 525139187 390 412191613 70 145216350 691 242752084 492 150739574 879 826996777 217 830665220 77 27773872 88 47965345 616 570843506 935 276245 103 391612031 728 615288724 382 237931553 301 421727995 915 771981587 50 570279686 322 44139560 1 72737950 703 591619465 926 748537789 798 598438220 212 716596715 27 485028965 960 366147800 354 892403293 481 628320181 110 931987274 902 864858619 332 585815686 938 555991067 671 602281876 600 611444432 483 94639672 47 363053994 604 989396607 695 343478316 814 133184005 312 729571918 196 203321155 964 732736908 393 722590504 72 82950474 770 277529724 472 309039408 33 65026487 153 47720198 170 468054804 554 278690410 126 372679795 949 197486372 169 684181344 945 352643168 471 667749494 483 254521713 78 522101276 994 772318486 218 34867185 899 553015221 561 125224454 96 113263668 236 205723947 639 41028376 795 360189051 65 855624235 368 869981593 467 959426263 206 212504900 780 976324199 610 681915368 927 693653298 72 972232347 665 285371639 277 65982815 827 385924788 123 935274760 331 803271597 276 965646630 907 649232697 566 608449794 726 266741222 967 387000734 725 246603459 779 146563554 902 444036611 104 446076192 233 219467291 557 456792287 982 779311025 124 182036024 385 509885915 503 182796701 681 689465893 307 232579171 163 571694491 310 581138003 49 764111205 467 449256047 29 888942244 859 372790314 787 803141283 753 514578143 820 443827668 999 594238734 183 338836945 780 695297966 470 38763195 679 851518894 745 487305745 127 841441463 925 885491283 652 419077206 946 871277711 587 429150360 466 396908972 798 714559393 570 55469940 441 24406512 848 718704640 212 125130716 150 330605496 794 139022360 237 578257272 324 121099196 42 405059794 588 395740884 117 625048840 364 545143818 580 182630044 676 458358313 925 628407437 447 625681552 738 988459347 985 483334311 988 930316201 336 816463824 463 811673810 752 948077082 520 125031561 238 910904416 724 406402769 210 603691261 499 451607632 501 840658831 652 901741834 720 189732409 674 962933190 303 94422573 211 552894864 85 429822914 510 968596917 841 611377058 5 420749864 123 482291603 407 427716439 178 225898510 741 375272208 176 377001318 594 609645516 809 731139151 671 753161875 424 723613110 498 25830748 538 679388175 92 583527324 669 850998716 312 488702712 484 445233074 900 240141825 345 703391882 620 961985694 982 491341577 220 228804069 397 63532649 764 174443508 801 298790546 701 80593043 646 237093154 907 572161374 940 240682956 351 615263498 197 730973670 472 687170035 473 387652194 486 407256165 316 976221643 46 611966233 236 385601084 935 443376822 422 438555590 198 256645854 379 973015570 279 101068579 537 621503751 96 256658099 390 889374097 807 298540394 610 558154977 415 533380042 129 894424949 738 629249812 422 415267158 158 599256721 199 793915925 646 928937156 311 961543099 639 625100277 327 127395650 886 421074261 181 807690714 901 483721069 831 692688698 736 196948339 584 585374852 729 293990284 50 663036606 168 281021851 889 614311638 161 343819331 763 22263351 429 647953358 786 493271875 455 588555224 328 521405981 694 576294826 564 588243305 43 873998925 827 413423018 920 976579779 133 157667772 271 143889206 904 571221406 525 896358444 413 337280091 567 260031583 805 575073339 641 38169240 346 635499703 332 512998815 896 990472674 672 279946631 483 709321114 183 323733366 69 879206806 780 704931100 912 721482063 46 817205377 554 970947807 143 190181420 125 579494314 778 192910531 796 498271828 205 787774851 131 186273532 160 600993752 361 33776410 668 690551894 550 779594046 930 648398155 421 96839886 454 493800973 686 111563923 41 149731352 767 930772789 112 519373279 987 392591645 217 934895916 244 4375247 373 580595723 950 93625000 18 376160303 417 596630352 882 278390610 882 484197762 421 758407885 225 266835860 543 210983590 139 379875019 928 371221557 665 742274341 597 983306536 863 440842819 729 542119472 760 717285791 562 924319171 414 150783971 99 475940454 343 766422188 177 342500373 493 508348122 476 1545964 737 999835812 988 452627053 800 546415650 615 37653424 594 183853604 117 176622454 890 398325405 51 615978873 424 18047612 555 435561904 998 526928462 636 635870541 414 303914872 270 184391887 678 420804355 72 555212010 992 88911401 848 294247392 691 897792345 340 866068381 830 642511187 13 626608514 570 326131771 892 312588853 643 821516717 594 706366402 976 653067802 500 987813583 453 86921354 815 203646032 741 395459685 275 475976832 405 169391798 135 925833549 750 218824537 987 601815828 649 529526644 360 227579743 610 738094220 894 343569436 116 907530782 907 136136071 699 623790386 918 747042741 537 602489159 881 244343784 224 767618005 746 40355381 373 19042342 760 87956471 987 74662725 317 975172255 637 748688238 152 501973632 917 891805220 884 9977179 491 332789345 983 225908407 526 459898725 573 247002332 39 504229438 900 257780327 112 323665849 992 351769812 267 647615753 493 914145543 371 346035729 815 812091453 731 757684544 416 787087668 138 277928748 695 10920681 501 723265059 927 772311192 18 20522661 98 176629863 903 961369404 611 953644709 581 939351315 63 367287440 846 192855776 244 260970912 170 903273862 985 538348828 339 497205001 696 151040705 144 531274453 711 571374215 944 630958025 806 188340472 308 500144720 435 200137823 645 598735407 247 531079086 847 414258024 388 56685956 295 652201152 720 561475938 460 598800184 680 319816490 346 657112541 502 604884127 905 403518701 476 356857425 667 581126419 578 336018885 187 131571791 813 808956748 233 40633210 467 806031318 510 610468820 359 681513992 102 727533939 544 860443530 417 213751826 696 813151014 644 599182323 767 694030610 193 334733045 750 57012369 67 468533973 968 674511305 460 764203441 43 860865511 241 465621734 583 813148433 219 382683206 336 460210480 393 867842501 641 359321615 730 295887628 813 871020863 888 12311344 630 367201928 994 761107141 967 880349126 981 904327161 624 384549390 103 155457446 506 554792965 922 429547505 640 556094305 52 414924926 639 596588767 338 199974741 462 545853242 944 950479323 340 862533446 954 254914024 367 919438813 897 319107593 245 696663663 603 728022266 219 912281212 425 176419339 335 220653911 898 401344901 532 885525315 412 415661709 441 898778969 431 57869198 516 420829948 796 277392066 681 647625255 10 576071715 640 650893565 434 641083727 287 46860118 275 727722806 324 832271706 941 905766767 589 575681492 589 593630991 120 527898429 244 693642198 497 736001629 81 168196311 571 123419807 832 220975959 608 121202171 59 554947781 786 578529991 152 462303939 569 927177396 222 834971781 949 323150599 34 836324893 746 408386416 165 657037335 851 556143621 311 816429703 934 345359279 777 655087963 510 893632956 509 289010429 452 267316584 302 654290556 515 52576773 451 102806357 820 317396629 856 488096650 627 441723634 890 9200570 384 96527740 65 156073879 843 445843179 824 647667349 957 311266022 949 666436968 306 363982442 338 965048580 475 124396013 675 802042539 904 548713752 782 857733302 921 380419844 506 798860272 978 477950623 226 742497588 24 225894372 203 589944618 270 768023618 318 332052412 547 358009741 860 497982223 188 743327731 6 774863914 53 25165253 692 185605333 262 767098185 635 445103670 420 72119446 687 673817885 787 600942932 469 458239486 186 79594834 785 531007006 322 161728698 578 885804335 30 37272407 303 333898070 594 256149030 602 237982811 859 116779353 941 396489959 996 577510742 824 209546246 407 745054869 305 450882638 373 401361488 980 658927506 420 910729170 176 526822675 986 52882654 770 803121160 661 567265139 887 78475090 394 981319218 325 782266070 763 916968604 627 36526570 11 258398205 43 472029362 106 235355336 212 407462868 733 568943389 279 126399452 775 762538855 652 47686313 70 557605838 744 588815108 176 561049740 970 256432703 166 352203648 862 172997209 908 577769019 560 500085268 373 995888391 406 119177365 926 684371541 190 263383896 91 658803034 416 883859465 83 262486652 612 257015752 465 260286504 278 194463792 453 781103154 63 127148240 512 123559832 207 260841130 334 36949033 159 140190305 613 111170302 592 151794358 821 930277372 279 90503975 994 548189918 879 167274216 162 11743821 597 748176040 585 99876300 82 738999928 500 983408490 892 258532086 236 607682126 104 122804975 964 763164906 682 253040219 57 581096607 738 574706758 510 585604239 899 263669374 873 14164955 480 154041111 747 20439396 53 590904122 829 431640962 307 727058990 545 276570070 575 139816537 59 448093334 23 359106356 159 395634405 559 471685660 632 605643009 670 602933336 279 400649962 227 583691386 969 304878749 451 482272349 528 708262838 377 93367461 196 452351401 272 308630704 504 290555977 433 350418837 15 763298167 760 395838507 248 685506707 665 408844286 797 131614804 241 623202618 377 467629748 486 34511304 390 861024393 660 301977276 592 21784528 68 886851314 858 478514851 302 463505425 136 242344152 922 445395777 176 142812345 952 269225244 744 688975215 235 389920685 724 23517088 769 476355245 766 270256230 760 934293414 19 797723425 369 391755928 372 117823815 915 360162795 729 127878993 29 277484608 946 694442867 904 714461120 989 813072395 329 290687062 40 675622967 473 520707796 939 366156094 371 891657631 3 781212089 845 714256607 396 471844062 133 242863957 122 920479129 454 248977621 58 435937698 88 589303157 488 519000804 603 569978251 13 342217117 354 180820528 373 227914091 78 118760445 674 234063879 12 496410125 364 645487729 75 88265672 646 533988545 391 328911070 702 640989816 295 885140754 137 111409766 325 568271104 507 662192645 661 579306695 668 447804529 576 190072318 595 986687622 489 673223671 413 721949464 950 215798421 6 167487872 955 607120751 463 490666425 882 719647626 102 635190577 346 215399212 35 95444942 546 914232869 841 196759154 565 743900819 192 307079773 951 937922523 690 644301741 561 663411774 789 455704113 291 247423279 926 158535994 243 886291845 961 967920260 135 40823359 18 378765448 500 744685282 550 835837435 805 642235701 232 317224478 67 219532005 931 479978915 843 897474925 285 730464896 824 118658660 74 796373721 906 479233000 350 887699131 817 696157619 696 673703895 86 186089882 533 936699417 695 968591822 946 917312963 707 556494535 368 896162368 370 324114184 126 119967476 518 92422007 738 659455556 500 879405902 753 727870701 412 713998015 853 746883314 705 435556425 526 741344857 531 276373698 771 265936293 722 234932825 272 801060198 349 33124485 476 600187920 317 360934584 509 451604070 551 66226637 283 705348155 403 576666855 85 735327960 768 45756934 914 976435011 891 101455901 0 965250564 309 21392279 391 304894239 926 67304635 398 383121683 778 283351470 693 782401259 965 136420798 584 991876928 319 30177371 871 606665700 935 355174638 445 40208309 249 824587718 831 179003344 836 405953853 662 40047913 379 651759857 201 613611138 207 390490146 79 441197444 344 788788214 418 289408204 922 841979275 950 899752158 131 123486067 835 843350379 808 458562173 886 29039976 999 86855752 743 248340635 323 527777194 868 946546852 622 601338767 242 641771355 104 551210963 538 714659461 295 912278529 231 309352392 287 928407544 890 917549088 293 92442465 211 161265695 910 576465729 489 187196307 809 151950935 280 435550438 633 379205730 822 924201205 210 647066953 284 804509843 983 469229355 178 468953588 523 359290037 743 26400120 700 925310868 460 98877606 193 128795978 381 952839567 980 620079802 39 523029408 30 166147472 379 787558338 163 264344744 125 790327016 416 86300013 373 78681668 481 390864871 827 135783812 993 880931529 18 169308902 926 263707527 479 827478441 909 463837228 117 242043587 975 990940514 562 646333964 245 191477681 767 201571926 905 848268629 657 866440659 764 587903425 37 931433162 488 949350262 774 437056180 797 689024414 160 638252186 619 889060421 428 412308413 462 758633360 197 96565515 947 404392015 327 825655247 526 443896469 492 861741843 765 459515081 714 79703042 310 550476898 789 462119274 29 428632906 910 177493929 975 500040115 520 615813219 956 983682086 944 656317066 114 218634597 588 437933920 82 763284571 101 498417969 800 120646619 437 975188713 563 845592545 588 71989344 625 982173781 291 604753005 496 183288652 209 480181782 568 587075640 489 644858761 419 937606870 845 361716833 128 134070406 991 916494589 471 335004575 965 7218526 240 999014492 424 814990533 707 485888111 745 652859599 896 840078020 253 419085297 600 551282111 469 581636509 510 102991554 864 720409803 365 329038090 80 19994395 849 162284292 754 232086819 272 793267257 965 708750329 19 194511661 956 65006900 751 28915872 49 368655799 53 499001400 120 118839768 994 171987361 538 809966357 62 8962962 832 962408149 313 112160924 784 746105102 193 777009219 225 872682808 597 852361389 129 761645013 814 364911864 266 37335863 683 77833638 604 283640178 170 269511242 0 967034701 153 455307730 922 854060450 957 820670025 374 22440632 422 554279329 806 515737070 87 190809490 972 916577915 117 270144966 989 552004861 930 191696209 842 591318968 616 684075702 178 692795552 991 6111385 793 370470551 87 446938138 239 92752486 961 195759540 870 690542057 127 215763471 651 760604323 710 442369558 746 932071936 122 423707874 826 677328642 446 271740966 73 493015564 749 996213827 939 116303898 567 684862497 453 244544130 915 210049630 765 317068353 483 460714796 651 707799570 592 999606731 399 275169597 484 18883304 29 896865943 290 14992224 401 421125188 396 296267650 754 133241731 617 494155271 612 906184960 474 987976232 839 387238493 356 406641960 597 91262299 122 37953384 541 438798951 812 364938257 260 858830886 474 231699477 319 518650459 772 41273701 247 274376079 638 128316494 109 749931271 144 50697036 725 374468008 642 12475649 399 245961605 382 158846573 688 787389456 523 140412899 719 272240384 920 332816932 772 960722466 777 988928262 715 292822869 732 197209785 301 137743520 176 925435408 853 470155677 350 837363495 251 193474974 923 182763385 153 407484214 575 628079062 686 966435596 231 615124320 768 700221671 72 996178959 770 591067050 611 794598009 583 518593988 303 8109938 517 161179675 353 753921116 307 815602952 551 488695825 574 457037845 842 655884063 583 655415777 904 410037598 944 775423853 64 686603990 279 762286926 52 94575913 845 650554311 197 249227906 939 679427936 774 234040660 391 595664202 459 978246348 934 125997036 719 239625979 709 49322040 884 556272314 856 529603818 180 903369670 182 534965969 341 863153852 422 786351804 877 919780933 596 124574406 843 767303072 62 579546603 893 269881195 226 826445774 422 825771939 207 229155207 665 322766797 413 69104594 884 358260511 282 125904141 341 715469961 364 571425450 116 923625251 749 892119540 241 8591831 594 993253344 293 635040946 950 777844450 596 213276730 316 861167983 232 152930856 822 780662446 827 180080363 340 597915190 740 441699231 47 605690517 731 744596637 326 477881107 75 931323381 766 490263230 667 723777120 540 9784994 740 126327051 70 362895758 148 669871822 219 867241679 849 460701418 371 951242940 657 984420131 596 84096710 213 524814335 704 643332512 497 816298104 274 151893000 464 1610459 793 408537797 68 642818573 938 300915823 762 828594519 532 119491490 842 539125258 147 770118505 837 982497256 355 674777638 356 749268464 473 418954983 770 223171251 626 448839901 750 863870078 288 17473369 680 974023601 351 379795150 755 921108069 674 53803279 585 241063838 934 834253306 970 515486419 775 523524453 140 477258395 940 171928423 493 61878922 411 176709083 784 355965614 898 805020080 656 25456850 347 6714547 87 3774372 618 762722598 96 802713151 46 222950704 326 955683250 530 396151038 127 466642376 394 702470964 912 573499278 552 943693844 845 586362548 640 306590252 599 506486079 467 885515058 127 773320053 746 517847151 687 364179110 798 194782439 272 594045888 979 316818383 909 834921074 805 357144175 797 241797276 415 319152697 864 850911707 479 579356028 745 880861162 236 959708134 747 447995459 499 398045879 538 364650735 118 810633320 781 412438876 73 614611363 49 540016104 842 18226878 316 249653401 536 752254202 875 987174398 998 113172487 856 978959958 145 330781134 643 100115928 641 370226506 53 754432517 178 978842146 146 728074448 2 807952607 176 417277952 231 743155983 200 293696112 312 3986425 869 386550157 461 349723068 447 479695197 623 3198609 657 904276233 638 751579214 998 783875649 750 927579355 500 973453606 228 451202572 768 264511387 820 930228280 710 633607204 975 627659202 516 512003272 470 203893938 791 662982663 312 9610754 714 121733437 696 627320782 764 683912611 934 590305369 714 792718544 605 256942121 190 990933 504 145472112 949 927373615 73 344132068 992 608471454 214 662105691 212 203077099 61 549154510 391 456010388 302 848617837 168 148034421 207 786690169 1 885278011 285 711722368 144 874580135 203 321718674 278 693722183 347 170819620 58 906203961 638 696531165 96 106354586 740 508039575 305 849140698 571 341311118 360 522902218 970 819057989 768 46259640 723 833571605 823 31023077 789 972282029 440 862137703 572 686062809 24 862170634 196 762498509 809 583293873 749 452509881 898 227973710 487 316494919 547 158838877 224 239489029 625 392720634 839 78637073 576 723401181 739 398126915 998 127667037 880 326719204 413 259601555 735 677856277 549 806531108 634 353467354 293 238923282 975 105498652 718 322711872 926 471026194 975 491897410 251 637591194 705 894797611 765 644938454 928 647019879 823 732320343 427 631718181 224 13863833 15 530172148 297 421568868 673 769952855 428 701422524 778 709831070 866 651178227 202 564863847 145 389330490 179 703610427 582 782226525 604 425878885 467 208976609 713 950370816 936 174425460 536 406410900 786 955546447 665 491022469 423 846559349 799 349429642 588 946404417 503 864627410 230 937920163 139 763087234 848 959227902 680 863174379 307 556497844 382 794824624 360 301138886 880 3065115 529 830348350 185 598771284 832 92056547 414 585757383 98 688881219 346 989881993 351 323282638 203 292208854 877 20249533 755 904974657 10 745102581 90 285113932 971 42856959 798 387580618 871 610114287 189 922408966 222 586814009 982 952181936 887 80843090 170 194425986 742 248692154 207 510335071 487 571245423 186 247124654 576 566222159 454 342087605 264 103351430 324 336829373 830 373353605 117 60105418 303 746677986 662 750697931 105 356852102 236 682633338 738 661547647 222 348748780 716 318917360 883 199379540 818 125309545 905 540287854 475 20670600 195 640690505 507 221528283 106 872518607 476 299625578 915 933625204 497 261344700 775 57763512 804 170150521 547 425267050 213 917653154 791 616819280 833 794592354 757 689774799 4 24736083 777 511737427 523 885146812 92 680830848 342 752469026 470 149235572 389 553831014 955 216198560 593 368498791 927 984260442 944 533647146 931 296422324 926 314469094 765 323222863 16 545956644 901 297454826 303 80115608 135 731731380 226 644622457 740 734803863 638 610521181 696 713233830 500 769687665 478 664328950 343 899267343 969 871701332 318 885440178 887 386841430 665 781098648 849 111682604 886 108219119 345 547800726 469 122132328 797 780435166 674 643589090 881 60604387 536 325365037 737 142004841 870 729662179 418 195659730 413 961060126 589 866995506 897 35283957 900 251409634 461 949617923 999 705770296 745 206916488 10 850804598 46 794177063 470 513533076 142 751809452 592 155010480 425 872372605 45 69650313 551 699652425 197 192811862 623 937144702 142 563616800 907 528011557 252 296055492 218 999106067 838 601387967 957 820647805 155 611463198 384 541236711 245 870277163 901 225531488 148 405723796 78 998828467 311 294379806 52 400235961 978 894685822 201 723457796 847 279905727 564 624814813 961 214159858 451 842804127 263 798555223 776 990267609 965 149031785 560 582286568 814 324068677 676 857076245 538 462160681 678 200445297 183 608714837 217 734680348 235 112791562 821 925825994 311 587706968 517 339132186 170 348834904 938 436239029 112 808124254 821 111636126 916 37080037 73 917028517 402 702047093 267 221145569 966 326787846 947 528868038 878 806289565 28 150936328 835 508147728 786 315589103 772 445016020 245 808631189 402 932755856 245 20061759 12 369768261 442 213022400 138 315404850 867 867219990 82 739068881 12 925430149 395 211154292 796 327435348 239 779069068 566 112494705 678 101172003 603 638028761 53 407915865 365 910691505 724 752058163 883 990484179 684 502102922 182 328923847 204 220009640 560 144085735 830 170869111 164 288448033 76 938942090 759 244339879 943 88864248 46 430166707 435 897812724 344 948667614 12 350061130 584 215942080 269 131788736 354 600797853 941 289837180 233 813659101 370 35239897 671 673922877 154 556584152 349 573772578 88 105308425 860 297000192 336 581933919 993 414429557 245 975758874 902 273947761 250 129724792 863 306581214 238 718751778 375 358821439 780 652166127 123 247084174 585 527322432 891 516437647 539 729832193 370 820357847 927 371162986 875 658071487 265 808079423 740 336226090 644 714178410 37 564796902 668 257159526 158 914768343 207 926640354 771 695843227 107 698024000 635 963507240 305 620999182 523 868860871 978 277170468 900 503612237 383 593510425 232 560209014 502 354275333 448 376880830 653 649699009 348 304960396 157 35775020 533 948317700 583 90107317 364 230588930 696 189891071 622 421968847 151 299605534 147 411043685 181 149103519 251 625457057 546 470901036 75 947181825 161 54297207 1 886989649 535 482397958 167 998301021 707 983156998 741 820624582 242 881745251 144 478676475 902 405507260 932 807110244 698 673079138 951 501659812 520 771494887 496 443647924 498 159457234 557 792249886 182 744287113 46 272422585 89 708230281 852 793950595 232 10155823 119 795880498 823 255038271 583 934691137 854 82811342 586 96183436 556 237966827 45 729442613 516 231965742 278 886466811 278 969448892 93 498976096 673 580492971 660 749564056 806 103656313 185 575337667 458 731330662 991 669931640 166 743477130 991 298348365 457 969437534 18 531342935 184 655403122 249 375534974 110 917125891 348 692351100 641 497990128 292 494511036 588 845633935 245 900146600 6 525583403 743 904334663 531 701786535 736 312371283 973 898698967 962 119043689 872 56596377 947 201324842 419 704456128 24 441406664 967 485470762 340 428495741 62 961009563 374 122772333 24 950331827 19 717215687 306 710344924 163 248595062 888 561827904 477 296124984 260 407401008 116 700427412 614 726888427 397 577647746 363 253076691 357 481171679 216 556712039 685 14410108 174 966803115 884 326186951 915 753717154 107 588145092 718 455839497 251 790441040 764 708223843 216 136816529 168 781926895 929 534314513 524 899270166 606 27940694 240 418499238 724 940416657 681 934218569 174 612771799 636 628173971 74 573966516 117 803312929 440 547794746 841 284343261 663 126154917 498 473086200 911 149991812 92 668827531 968 373492998 833 75760913 209 966665149 343 205927436 821 9188821 795 336982129 124 463663162 64 22863530 246 52122084 167 171471298 579 279263749 229 579672218 486 1280223 722 776894747 114 229864299 363 986196844 795 916689166 827 557858872 56 402656778 508 620514318 254 339249853 155 335368356 307 340670248 65 377154590 442 10623722 943 245955643 836 159506833 199 650463769 543 727311462 356 646042054 480 225129809 973 832260997 354 928426942 614 668215118 852 442721911 402 849894908 186 403284772 706 188496108 668 92866861 87 699901312 804 407507944 375 987270405 73 425861118 272 152381659 554 363812883 95 630223544 373 792671271 770 868488955 710 267130622 666 228930331 411 283372497 725 862463927 824 993921178 28 328350933 314 29927171 787 729919563 402 212963309 882 596258217 993 814766619 286 587533262 25 734856294 382 743350429 270 988244158 941 147823368 14 250537846 745 635888160 644 354620244 114 248319658 591 952311337 14 929678178 170 6961161 590 264864460 745 37079093 625 508835082 362 924233123 998 149777678 301 128238640 114 713940334 165 710872961 715 187178298 600 889143590 334 209844 389 125454206 85 575847209 909 711721615 336 605314711 243 50347653 282 723476035 982 674683281 877 306274681 405 227061548 10 39310441 707 432060595 800 386714665 920 644791661 816 52670702 349 589560457 772 658688016 540 304147040 461 230886289 294 316404454 124 294728841 690 275573084 232 366602635 189 936507150 416 905659942 10 98670765 390 528894151 817 198374940 72 78481785 989 597216985 884 749143458 894 540347643 148 131791941 380 273442983 987 56494445 205 124429990 389 674221973 450 828633523 650 274342603 116 994833681 986 175679085 452 349226009 323 673797123 302 213096988 655 682101042 617 319970379 212 428147690 699 978151595 322 841372986 94 510122044 731 340936858 278 990925150 205 533230876 269 139608784 827 653066885 208 197421220 435 392306882 541 710460851 646 71875998 340 163215613 412 479858885 436 999771042 823 264351000 2 382159146 152 545716237 108 958110476 398 757028167 6 424704512 726 26632064 725 846889908 944 310296710 508 371823401 985 539636187 530 897333469 198 835166027 452 258158124 884 319829877 492 255374849 750 53541565 26 840110458 732 805148698 769 254323888 892 316581349 67 835638233 50 865932187 122 642969194 452 343502356 661 989343281 697 268470849 410 835991465 739 161889086 182 202574969 874 124309030 894 980857119 885 427444879 342 901082742 46 19111101 12 230331107 34 99458960 202 261011303 100 702609665 672 933986184 499 168385175 191 77733373 85 509450034 290 994618377 724 428061738 157 402068054 667 917342050 652 410417929 727 333174483 62 257800617 52 870103138 436 906347807 347 354609505 342 516381161 989 793978847 664 955209979 234 281597087 624 256908533 485 486999008 610 224686298 557 836554959 833 851911169 699 405237669 809 124837978 755 205504706 728 484425006 426 798600146 983 321274955 11 947272859 876 528131551 24 894084607 783 378084878 500 417147916 373 264780151 773 695629722 806 671082010 176 476248021 775 886346030 823 294463468 413 816574322 639 373699275 190 640002108 252 639644423 16 978846683 633 109142843 746 604847573 357 657086479 910 858876727 753 607651113 479 18867167 448 869791797 326 961514742 809 252257375 799 827440143 70 619933376 416 945139115 204 72022391 102 828104885 684 53572954 50 301912489 823 951043530 507 952844694 596 393391771 215 383296055 85 397622304 644 99020136 796 560241019 743 756967361 707 764588282 533 166591152 88 246240009 388 205537429 436 991108331 196 992561645 144 727777718 575 853730036 297 468704522 494 956784552 503 578795985 420 246587280 113 742357590 925 505237479 61 129081848 780 183062953 759 661358483 911 758746493 401 732556804 161 870745217 453 405147008 323 262184053 132 520296135 301 36167093 980 885649960 498 919430487 726 135552651 559 996379098 735 933788817 570 879649592 582 485263608 659 737706188 975 211826752 485 606317982 633 358724752 920 618558631 945 985994709 533 652186116 680 664390501 873 822625278 698 535996889 71 519479623 280 966371575 644 909741145 330 898784079 48 29515570 408 548741221 580 725175350 677 785121398 607 344190094 584 562134125 744 470152551 48 103755032 226 12554550 502 735876532 971 401011987 469 241511539 823 747292592 347 17384145 593 964743518 947 515413103 454 107476725 575 939882246 27 813453561 435 96736235 520 548175344 280 138832304 147 370780983 311 148994688 64 845037860 860 865191485 36 309507996 906 989217895 932 373330358 764 740361208 145 148896943 348 342951755 561 942754021 457 650832642 200 720891000 725 421040020 739 899519325 706 421888669 114 638989001 55 956267425 147 818561675 837 88820890 327 516935162 464 501203426 761 82559853 32 676446491 196 751957725 329 895345259 846 657532152 932 699710858 95 417958044 983 174921528 396 509689376 232 449510456 893 379263450 295 935822869 140 844806006 43 28893381 456 977602209 789 106260157 739 631678188 84 456674559 13 357857886 605 334749065 825 649364161 728 563126029 447 141421600 944 175996101 824 277799683 861 981183920 70 196234466 819 301185731 716 11964456 239 715879830 285 761627035 837 3482876 730 376345207 130 644236508 942 782867959 791 405337463 615 276647269 441 410310116 459 690547769 978 76598984 287 188926775 713 187011040 103 363692623 693 884034372 961 597700220 169 942275644 324 306193033 693 270415240 224 642645218 895 757875725 499 650043270 787 30606581 637 235741958 328 611275266 63 615559074 193 420972179 71 13813547 756 280314599 601 521327127 366 429644430 486 905810486 16 724233833 95 818067959 563 652394057 463 113155323 311 391245699 311 936940856 386 347007530 911 895747137 891 539512312 778 775328469 27 907703216 4 93784196 507 682737755 862 339961496 455 389001859 750 193605679 12 594331710 895 221497731 827 41860853 114 602659699 75 456661335 832 32348575 442 222033321 310 406635359 616 477409929 811 51179839 58 38579520 953 742134425 74 515729508 698 442904096 24 547500211 474 806481645 257 994320274 30 21400904 504 173157107 947 355746637 652 901163871 374 562944990 769 612552274 646 869507743 599 991022663 91 357198482 974 343279468 330 750780430 834 873406711 46 711629395 878 514915728 940 156702440 680 423405169 971 345382640 979 840860338 505 666616188 194 633238531 221 890899897 25 177522849 664 132545158 246 678788278 128 345426901 317 242531130 185 254529177 264 694620180 269 332950655 446 715201696 380 401595582 555 674324855 15 444614946 495 995354888 862 545348798 321 51532292 869 387954434 213 659575753 955 435200536 19 585729939 638 643457304 724 674843646 664 606988060 906 522497909 462 989887036 445 573920946 710 19964145 181 752042981 682 136314781 880 324522355 485 913592986 843 674253646 778 638028783 855 546747954 923 447413166 390 115471475 86 910767525 564 959099568 857 552525886 662 549974210 474 264558874 216 289088542 750 830139411 551 201372979 845 661545242 420 716629545 743 621101037 81 672398703 492 993532504 168 792013245 247 921705308 561 208676634 767 94544688 422 19371042 690 107748064 690 944306725 550 836899066 258 758905701 565 204692872 35 200876427 447 564745554 709 204925430 109 231474830 542 861494995 157 339156635 276 309927765 989 605399933 220 667942483 532 412985561 20 151490502 386 532697152 875 37190059 978 746987247 865 805724504 519 67704190 444 174831505 121 993984326 294 479535362 638 487749224 281 656884053 633 941894077 545 319197360 411 806668795 966 369199748 358 91884839 376 437449994 919 68866256 763 736639183 814 268373826 76 902705778 163 994269254 284 268863597 116 216570294 144 575351542 5 977015648 978 904121378 67 333340923 679 188047205 132 335017235 975 644192204 50 676753790 712 147968172 197 861392805 290 301358700 7 802554073 385 891102605 90 834322898 319 48405212 400 543766944 857 532442107 341 43674704 309 840057246 823 514535277 144 847851716 590 806842176 876 633954255 435 415357308 992 692747548 760 877682546 236 37560261 464 806560633 803 21231234 449 302816243 678 459940301 826 82475242 757 993041767 647 88134745 593 741122232 431 330880679 670 914497570 807 413795091 444 117300182 257 632607712 893 689496747 23 528498647 370 249775287 717 378028554 87 538073309 264 76617777 31 144383680 884 606866573 488 331018792 379 199543130 52 955934823 626 287510991 259 306137534 399 815872967 27 393443305 629 838116910 759 640698856 215 945931664 178 303552645 599 301148014 196 406388853 921 33118220 558 743653585 319 681319339 57 959875249 477 671680181 488 731213429 75 844798285 529 686759609 285 447513181 925 607036034 822 899390468 419 478118716 631 443872969 664 521047615 317 460856089 823 594799046 705 846279143 919 34821021 784 10024699 981 925455648 217 888520487 866 346152083 709 820944276 796 163398465 805 64063266 569 54606552 99 377343698 543 699697351 940 86310862 149 723434481 284 940275220 337 840653694 277 167848541 10 893909490 864 526963661 404 661594327 205 701155778 679 339245099 51 810485273 969 378162712 538 738039324 965 134082063 99 366115220 535 562253586 426 370413308 105 87340218 952 896494093 971 428476954 175 646315491 600 619392167 492 151032893 952 895900231 660 811851388 48 50475838 139 68781370 856 86945902 606 798685341 784 747200094 682 535119785 177 60322656 134 621108287 529 673208182 3 823503585 198 385658725 828 835426815 459 122847198 612 246465519 409 20791954 662 755697285 151 576067065 97 531209409 546 92189356 510 640473975 860 622873093 162 521387270 728 65692004 686 962770510 545 630448012 940 463534209 422 58549284 929 978910075 36 954743037 707 797931705 193 55841980 841 369545339 245 18554322 514 554347416 675 518378450 475 920971767 677 538898213 967 803837489 1000 928792193 485 930453429 630 357331470 537 257809192 786 432012561 989 695361424 912 714362070 444 209693972 324 226021311 973 920500093 608 103931880 111 301841579 202 823627048 57 842303756 219 568577282 216 900068322 383 12958173 741 868985046 218 113884495 35 76726666 132 668174595 766 454135743 918 585533678 763 37064418 362 134457755 669 628601126 807 317491130 970 197698433 849 861923700 166 916471173 594 576415694 19 167260812 620 686508577 447 913709440 166 348735286 782 249561718 29 815864742 668 378946208 935 282432462 273 847307445 542 959879418 753 295676362 485 62934694 119 57526377 637 528474400 477 780009051 96 905967905 541 647186295 900 430672316 892 192739156 940 959229117 826 611686820 92 523483805 941 683388552 249 320831390 131 768041099 375 71274657 989 460215827 364 225145548 548 362022631 639 228292748 992 985421018 401 992306917 815 794523330 484 126658688 968 306536577 55 296325378 177 523827902 326 486247068 526 609939577 882 244551388 798 58282382 162 331824956 510 401960875 250 258056008 531 115650952 828 967380700 539 569110130 847 257547669 592 159167855 275 904319526 620 421118532 116 509198783 914 299675316 323 249499525 298 17506334 856 56166848 691 353441897 523 21024443 92 915043287 840 552610179 20 155892879 52 665169808 744 444111626 211 715574694 873 66948808 400 75558811 120 728848281 798 566951459 374 978629369 457 719333222 37 186451082 143 501625962 715 78777403 995 400122142 695 669423312 460 401352604 822 672053839 754 5294975 421 64609359 192 7396913 767 275797643 61 625619179 379 583653078 599 305419509 195 672976110 450 567655337 304 336164486 196 902232438 42 78598466 245 530399847 8 646259014 511 465305869 169 496118014 232 42965168 336 146499103 794 505109934 777 951229478 42 318891009 366 533174861 898 761672658 244 593077445 628 154484624 147 982520085 127 80336500 444 193565095 377 610122589 78 81146753 90 177346773 149 800227429 304 351869911 552 386749953 534 542190979 374 88951143 162 128728254 851 670136932 465 95762257 647 673747135 493 301779980 173 860545235 10 187718458 656 82215114 576 884276518 56 679959343 761 425865443 571 582183652 468 279905798 691 18036815 579 658520336 713 112775782 9 558111373 650 54859301 7 415637932 88 679683323 843 496056914 45 355441217 156 225323083 905 999235763 874 589452606 245 362292621 267 196338803 794 144399821 605 441567268 588 338072092 169 848608151 892 499390301 236 680802923 72 217882067 584 344719986 860 808500683 843 222008286 301 871072867 880 80774686 610 110084275 262 73542323 913 891380251 582 756064155 931 687698960 829 374227727 776 789436060 164 14204960 895 846693856 609 546892304 480 361685691 696 79517864 16 522324759 936 273467488 184 319258582 618 468579533 280 932565202 524 153882760 222 611527509 714 62185162 74 175075268 928 893612693 222 354638626 780 261944772 152 706209685 833 350622494 816 399618837 855 502338711 329 961867982 682 712325239 930 777590290 826 804526346 108 685200912 146 328026189 945 873755127 348 720092962 908 488740800 628 154063923 3 307927650 390 654441599 64 897370343 758 948996962 601 153663516 645 33735232 289 999029282 375 989463709 849 213552373 426 490785257 306 531979353 921 388991225 212 657337886 8 949313136 951 236552903 626 77976459 275 989641196 231 931603273 582 463936890 760 155611283 7 345895274 866 366560858 129 523110099 742 782538575 27 252332773 333 909643888 185 403812750 208 439295799 390 280348778 316 369884805 817 2850628 862 702439126 420 560674064 422 436219470 251 235093265 433 585602250 338 468500494 431 632594346 396 55086794 722 778429197 630 87205597 622 146465828 879 403671863 243 518946958 219 193909022 598 244855967 785 896816198 857 507984695 693 269162072 898 21631801 171 644039005 381 818251372 521 439465099 216 794702360 100 510791332 914 606642186 931 337975290 231 746288489 152 674871729 576 740950071 511 746366952 474 233742457 569 645431532 34 34257132 884 300968598 57 220215492 468 627571859 16 63235511 716 661245948 278 665291798 760 21216400 221 73779411 503 997589463 257 674761185 211 909100737 538 276662335 913 639136998 632 890766332 778 856088175 633 39292702 291 7938864 662 107383723 656 262782801 361 15359438 764 231371645 588 648871476 531 284191820 268 727662835 925 629717122 793 108385273 966 993416378 663 110129590 489 703291325 372 186712784 245 508718217 626 989757104 310 583695842 421 844226636 350 218544897 986 37037794 59 228270229 818 805662223 59 950318167 848 219188303 410 939471209 555 961798352 137 801513206 365 652550631 461 594532334 19 382391268 723 110756062 165 411944905 485 305011590 598 255620890 329 973559484 640 202275521 385 808349433 524 282275385 831 633692105 596 710116353 168 207532914 853 743430187 87 831345690 556 43337307 91 984604569 927 657462860 677 249588006 133 732461868 663 533534634 109 750411878 412 196993630 164 524571236 257 331314212 281 606060774 848 226266774 148 285222493 954 747859802 573 492933756 553 384873229 135 959262595 602 59720478 870 49289810 365 371091654 442 790090563 746 123498626 449 825703677 48 819816843 264 588053401 148 745645109 734 757861054 78 307111004 669 924275480 7 714579020 489 262301746 728 312751421 973 811243801 555 393269254 593 795708391 661 642114657 790 190073350 568 7666138 790 427745994 815 628385611 788 234305831 706 379419630 154 918246084 920 451069555 509 838847587 44 679681288 802 119982663 507 192471623 747 577387386 463 62295958 436 66037917 575 168865536 651 994131827 277 126850663 681 633520777 723 88654799 489 670177650 207 140567190 548 4535106 315 388145612 271 55282242 104 2871603 101 614110590 93 256698085 511 712783940 177 764507119 930 483634379 928 675788561 210 419860847 330 942136003 8 467083233 921 686982998 461 397621730 801 360621085 35 230668418 836 727146730 280 315086938 725 111215195 821 152932795 566 477507409 898 568094383 450 621213306 180 315344613 298 812087052 808 443558350 842 125342291 14 723488661 27 326024143 571 659914812 575 101125819 409 248833847 83 31665683 180 453173969 78 343274047 867 467720080 420 806432121 107 794009095 828 167045644 327 261364169 485 848495884 402 210614505 778 840300787 437 721189479 513 601239224 341 441071721 327 303900506 850 388068296 672 85740526 678 917964875 948 107134426 922 28828325 518 786834771 91 771142508 697 262854268 187 614724473 709 979599204 304 646363809 516 45769049 994 485148562 270 729243793 616 202296297 407 452668253 378 940682250 571 581013964 798 529530903 687 451599796 125 418450174 212 86528881 906 605313483 899 397344270 689 346937254 833 878940101 245 236963676 448 310820093 632 437655149 564 468217977 378 905469433 529 373393334 530 304750223 984 435537906 221 476162215 318 939266045 9 625058853 109 538650966 630 553344297 946 550550211 230 605918528 869 889441036 842 975173011 31 415263034 567 527043995 816 72100310 180 677276418 800 272926653 206 290719714 523 183240565 906 953114652 1000 490268702 667 855171132 195 409490378 58 877014220 183 649686404 566 558828869 408 919035306 966 31084830 175 536601250 89 523439685 880 819707354 880 855394774 881 343232069 590 64730848 675 984649205 992 529197766 438 125907961 479 834700452 584 146359100 467 850385000 700 342436360 470 637180482 943 512688064 393 960690373 216 59422954 863 973763127 649 55516713 629 291944700 739 571417994 553 859805156 237 264464165 737 375178734 500 956009038 771 14620331 547 420159812 857 890163661 583 227728841 178 54641244 890 847896281 578 678140050 228 157016722 74 206513067 821 34295010 742 450653016 11 42987223 958 465351542 52 959768476 299 275246569 846 569719801 288 713264686 779 609406783 332 663350463 875 51409519 541 797467317 282 869730779 186 373287422 399 749121179 631 50387208 631 569847612 412 603002185 796 226074835 667 879041295 944 3273944 746 997522237 398 568001811 664 333803903 863 506688876 388 573791289 238 204248439 786 852799551 331 815012875 221 896645174 676 606098093 671 762484989 436 461017645 317 41800298 102 423243427 20 464968296 836 243717497 747 298068128 190 680478255 172 768955289 870 676032289 604 267810233 738 813397058 489 466458901 14 680483518 681 100312623 741 347943099 349 421107061 598 816924209 545 943143359 833 279074165 958 788088521 398 493008623 706 145922271 861 332589129 534 800261946 782 750438189 114 999663572 854 12723632 550 165537446 41 991371293 397 898336252 578 518040829 537 998694943 629 614919994 413 833064362 200 155122618 782 615400017 971 160145868 492 199736439 198 118083851 517 673796455 276 116748960 76 167843550 151 808690814 817 707728850 284 581288412 36 785709874 452 91639743 864 637725625 398 506986455 176 902440196 54 433125873 69 634833091 607 869367491 1 964129419 137 462484908 623 299214398 824 685980518 465 654538834 16 80327349 602 287366434 535 331974558 749 91808455 18 577425799 971 900633735 495 647195338 5 487800193 381 843504279 729 474921968 664 877467222 38 552272207 998 477973374 88 479909879 435 605201000 838 763438972 595 828556981 905 552959681 257 519964117 366 426421288 763 317369608 684 207610129 922 546319400 228 618051721 984 779134935 601 467968893 775 460012744 222 305201403 126 670877323 600 987986675 273 451215808 281 377822005 990 382914056 634 542556716 184 430441496 131 925833252 528 996433891 395 699935752 670 763821015 64 422913915 704 403178464 815 323926193 713 823134225 863 263220744 652 834602996 175 351128715 483 52873255 606 794271567 870 736327945 939 350640887 409 977196841 753 212569577 752 30328850 582 442026094 499 251103868 914 521359677 121 704149949 698 58449755 665 273534744 634 703560268 548 158622072 499 222979133 329 782519419 719 46763282 83 101623632 536 739206955 150 574597629 674 885386790 793 935458007 800 624136345 728 833710110 185 133835278 681 6989274 559 660723331 339 615023584 583 638143088 48 696405491 595 621254089 9 761507991 963 734028706 34 67569203 828 151985553 579 124126604 73 633976410 198 248411392 452 506035874 449 940545286 594 872415056 902 798018097 695 157042129 374 660145073 297 211382066 67 787825434 184 356836090 458 337613617 642 755641785 711 551744707 929 826256478 381 797978563 313 726535719 506 778579297 643 67731718 299 344664747 570 489584024 94 698445016 579 771802518 661 64559098 980 867456754 97 603070796 682 541165311 957 964262025 47 438226278 786 464691564 931 325647872 487 129647968 122 771735448 781 653537664 399 425619590 118 529608834 923 620835703 379 175583964 975 20843577 856 78937888 748 239293121 629 41046779 743 432373619 676 891984100 280 174566490 608 780842552 129 814000835 686 728822953 13 448962855 932 251247620 225 285843051 543 598443805 580 411750417 513 293673097 395 53863514 424 483879730 328 111731427 292 95322559 134 117854584 767 449431842 640 440467713 942 215821668 343 701817696 696 345051952 135 84931135 591 142175820 945 714774628 596 422403213 544 828772632 837 846651261 125 554040378 20 530885371 594 663876064 425 920642825 298 139764750 560 692318380 87 678107237 122 790455333 765 226178916 652 314752915 390 297642788 462 227166735 356 939404818 803 934791840 270 55353051 657 952134195 15 410272359 953 574299587 108 435812701 521 929411250 204 231554236 339 74051577 179 496140295 264 395854183 519 3839910 377 876560000 492 400795815 144 525942573 181 869557767 106 787472415 515 713567852 164 755983002 715 974559618 271 32199630 305 408164000 397 75823761 946 790159967 369 79301710 577 935935826 518 242946804 910 698012028 585 523655762 711 235993053 143 970412950 738 317524702 647 327220715 734 766104442 430 721160106 57 800540128 684 644148344 94 198578776 710 814425265 125 587750006 360 949025989 668 656022171 407 565077000 523 645688327 346 300674804 176 239614662 311 819039650 653 497181144 437 748863520 781 155164702 12 442307452 771 491701620 227 829918757 662 268132154 301 46381282 244 992401676 705 239746492 209 878293017 475 519120181 119 186010230 615 318288273 689 847676685 155 43836958 574 207297626 619 413207473 881 926103306 345 673647219 801 389047018 456 887292876 439 151200084 140 747603069 902 680088964 463 320494369 397 153771767 291 441591831 998 426339902 780 911619743 769 518887084 554 463329375 944 574846883 492 344271759 803 157333550 84 571291110 320 209160458 519 756006429 458 753953571 774 929307052 206 326390889 616 971212863 944 497506507 323 975995941 209 526363791 821 750595477 282 813034084 100 470767690 280 274853186 177 296591457 903 203032759 45 806447228 238 99823646 978 372787641 444 758571253 276 454451866 671 970733741 998 512162821 908 477338792 169 416523448 898 348531610 841 271733341 846 169234602 637 787501369 296 209379716 641 282179559 646 938338721 397 92546409 348 364942272 733 949536976 457 292045424 41 442832811 433 16694317 813 4152468 7 742574527 380 464879325 107 203049661 964 226068365 456 883810445 695 54529356 255 449510356 363 552027080 953 283589310 400 572417332 371 725848144 256 224160491 854 145581432 893 606742048 654 632705460 411 858427272 627 446491691 223 569408395 284 698662930 268 205950636 201 756897401 30 314520660 286 93547062 29 596743154 292 404281595 12 752634204 940 269050842 995 670243629 703 387310025 653 199435616 364 914962014 729 340970970 906 715353068 595 216410815 984 62953532 965 637275669 974 232176646 830 662156646 317 805276565 968 488699689 884 259116079 127 449702185 17 92104972 861 118513137 163 945370470 688 713029550 226 600352606 232 50470487 503 226028745 375 947843374 750 804017501 44 579680738 153 588289945 591 10833060 621 775738224 467 818513619 608 207594955 956 891453515 210 489581967 39 175349580 644 394252393 718 312433006 593 921483338 626 612010 941 414448245 660 42853145 845 152577392 157 503106099 588 172848641 622 886973848 217 449222573 702 175227495 288 562674192 334 532038892 439 170940485 783 925402619 833 975097597 780 533346532 931 92391426 916 261061922 372 908813643 188 455057649 273 571379670 625 666864024 998 378673774 316 248933651 491 873829477 948 164298419 144 553167820 512 788462693 867 430937624 394 114979099 624 363287933 81 59671995 36 934623368 842 483751492 754 963392632 640 302164618 859 274155899 594 61302886 658 592421968 272 995329189 626 765026914 116 181867449 297 916239676 269 154037441 99 793635668 360 916131404 807 307017686 691 859216251 328 718000425 189 578494499 383 546477413 350 677200937 270 27813584 877 573176055 576 203604712 699 234321628 908 365194932 673 834484190 957 71637593 375 382454108 600 351637941 731 680873271 882 967624987 959 661747492 609 813139577 51 146025023 14 830120453 156 278239643 104 289474857 614 10032342 193 3476410 670 509773053 798 400384969 713 543894773 487 812101223 47 243873557 110 762200142 646 701861980 438 460270384 643 541571121 267 623258192 204 212715694 653 496958053 359 596509345 735 459160068 60 685286799 355 723782517 52 265663680 438 230898725 134 430406569 851 438278 615 227758917 810 875259981 987 241419043 129 794941363 329 547763626 959 732513994 991 869562888 327 978826350 205 606934466 779 553628109 98 871908775 893 266609132 784 445007433 523 489800963 891 838580792 357 903462412 738 25774311 718 335279054 659 977555425 864 575098686 236 660856066 640 510839583 546 412269177 511 407150338 930 924014709 489 124595526 964 748602546 817 278486343 356 40717721 348 208213315 461 4249263 112 980709892 56 344346904 445 16004997 933 290783408 910 605673610 285 294653229 734 752126830 455 929127788 565 615680708 613 215486632 580 249805260 96 839474471 443 983804584 58 53865664 474 43605463 593 696862856 280 358486551 442 239461556 803 84942679 93 991380797 700 234768825 742 83721725 844 256804179 677 200204518 73 291306043 456 788597099 384 797012537 894 677500841 284 627172745 791 235105386 52 589070697 954 877231804 949 62081111 562 700962401 78 250608501 598 556897815 453 748114822 513 668636373 351 832971413 584 387379176 868 899447871 155 433099143 949 454891153 495 685604736 63 545032317 80 600101462 134 535584835 745 88021934 908 567813158 788 759061205 46 988435697 760 830367025 390 897328669 654 531287553 234 995231711 668 522841499 947 829336071 179 300507397 652 352190001 258 252088314 644 803323135 363 56514703 222 887415154 989 83244803 599 249295291 719 432660730 516 616580910 183 818788093 463 693203342 154 602541557 119 744393932 391 353095633 182 99400402 931 85117903 964 422363521 295 636389089 996 902516555 346 493801245 396 569925581 996 667272058 513 350171518 58 851247295 401 769577039 839 284004293 891 304285426 86 121071274 398 797830270 682 975489561 739 133377826 116 863195237 310 372643309 502 706593832 386 822801988 429 698233496 850 324682435 13 147225467 262 640043345 234 862153815 897 779113762 954 18701266 239 694049443 274 333478744 656 703088370 962 313291828 957 650560000 310 756357719 731 742036397 639 390357337 297 368199891 867 720216337 764 773834447 396 675354884 263 598062150 157 572414849 264 441127311 182 382512923 733 45598856 212 769773985 810 441447878 781 118656627 815 773331475 321 437699360 604 580973692 967 730566521 692 252181844 807 127724640 689 543466630 920 207746385 637 813686510 725 444408113 777 949593429 786 443763928 582 486001457 816 508616235 280 480935461 97 470953084 875 420069799 814 90745306 597 303154594 926 573863340 260 310256566 291 229054914 957 588379131 977 455871683 464 195163228 904 887904651 133 48561651 708 430917581 848 200965193 105 298466254 344 541554441 243 539816828 644 150162077 257 83118785 836 597668805 71 300365684 659 584362293 586 953361123 234 685584605 919 254523266 139 847824781 985 799870745 10 909274691 882 584840540 762 566039566 808 710044359 765 319739691 519 937146695 465 946801446 834 885237550 299 451474226 442 117676446 197 573501007 785 526596671 31 792294942 751 415773535 786 796016217 232 677387218 19 470560876 93 469590394 497 916248070 704 853084926 387 435667109 356 610237338 701 613569839 552 123885065 812 887348752 896 116266578 733 504504708 843 424844200 69 246846413 376 440613548 135 181171901 770 668435334 273 708322457 686 973267415 785 33475009 543 234087333 491 563513608 253 798088873 572 94352156 626 535555023 362 652472662 253 915207526 638 784200134 537 11481104 118 135256722 931 399747103 691 930140441 732 101977032 894 430963076 434 719354287 600 979188547 961 44514759 628 996343746 48 994605468 755 296580484 440 225845414 50 59507485 468 289688628 982 382395952 530 739139880 549 934111243 653 97098275 743 915237639 112 530656435 979 610001694 149 671354378 744 697434474 956 530428649 823 768641472 904 649638625 950 435278874 953 238416319 191 630745953 532 403495618 427 691461611 731 918635744 228 788605999 199 292076866 345 449081343 955 490725449 765 419420313 744 61992060 349 852870517 137 113234990 441 593343235 325 806374098 641 65745663 76 108862065 263 628366223 152 20503465 2 645778411 585 49376374 266 245467830 845 950624557 735 833640698 173 509804533 821 392709250 469 669880282 905 669487042 961 374423311 414 313818681 200 229795678 141 87737330 69 411994123 724 275188783 334 560774516 483 912827804 735 598352491 58 906125410 535 392188474 43 998939459 633 433083729 754 516633612 249 232771765 378 811612964 956 133062489 926 267554393 917 634164731 625 971575007 589 635472636 438 82674110 971 533426501 131 93476244 913 525290045 994 889548860 742 523391103 326 126233143 651 861874668 26 611599611 848 745804766 842 294802932 37 791939374 598 816319696 700 529928429 762 982999912 657 62587399 496 859517789 876 585333285 823 797455335 197 399661509 579 373185764 994 891090508 604 445128012 106 991713307 94 200733459 630 368901562 960 113139955 674 263285904 384 175534269 9 803610672 223 430958462 718 502210937 572 837467411 690 340651574 464 875957793 914 222409730 535 741689079 460 695373407 641 404874510 306 356888161 292 663641033 890 807046841 61 547786612 763 802225731 151 887400619 110 215216555 248 866157374 323 930295864 359 928349779 899 334761755 522 897168055 186 233490959 103 956288948 689 301094021 644 394390918 70 571112688 54 241537413 886 977673762 102 391968135 979 715924786 910 70474262 295 184884463 986 283889967 846 868906009 928 676039154 654 561800677 864 869865142 683 82627924 641 492784339 585 28201412 260 347513959 593 604928085 258 939702711 841 182857607 821 452726195 348 564385574 191 384245557 965 193998537 420 758740256 456 213861826 423 938601391 349 994203969 970 924071005 696 244566876 455 129089594 552 465404671 93 777490061 991 48193342 478 925615156 699 327290266 927 567780249 782 908862795 49 474774639 69 15853340 963 840754134 760 634262809 246 547538366 914 58422581 688 825317663 442 927153816 133 779641601 521 456385010 802 313414397 502 201919358 552 840318045 683 644564002 300 681996389 942 375420872 919 319063034 737 803013607 138 736197416 433 943470608 279 81619663 913 319948200 216 132042465 207 763188744 232 932204810 186 707703874 299 746183545 987 699901240 669 447850559 253 165003086 977 837357940 666 366666943 547 139489628 962 193867718 922 362444619 750 657141391 315 545377176 774 93067648 366 958633851 615 552475922 662 401411142 917 215703336 165 517140920 227 198128996 477 443136047 144 535468661 140 605550176 552 39693498 477 802747380 486 565857939 261 586126361 453 117863774 276 987363902 290 800831151 468 427485813 729 619334496 614 817928085 907 521772344 496 605374862 784 657445895 530 738487144 874 601806930 715 218090334 90 339450321 603 997114513 169 917545620 538 231240086 307 881988609 7 713504052 644 294786240 7 377523968 48 842004030 937 864100317 251 760327300 653 571403281 673 951481146 137 658044671 371 711778904 471 571518524 767 697969024 607 468699539 260 652579771 993 451414655 63 927664018 252 478959402 38 437110557 699 193492750 80 791668626 903 361481770 718 595587923 525 256160820 830 835592315 769 108530602 639 595290142 772 157754227 212 960662359 136 302405341 485 269718929 251 401405097 608 858770280 185 327808020 930 705267387 375 309748108 602 829631566 647 440786962 861 362711014 69 380603727 835 763350338 405 444740712 27 373843145 553 6679995 819 76747905 905 246106011 39 453050555 260 428254283 989 192112141 494 567656894 440 991693485 546 611680334 419 510740945 83 15327281 370 138384537 837 845390578 975 234808493 445 374735962 149 994371381 2 336798342 874 43709222 845 829559625 776 881473748 154 279448976 933 682403728 723 609064621 855 388429037 447 654714182 193 748421934 301 280220150 640 910524473 952 357130329 875 209122612 783 724247190 936 567128998 496 28198656 880 730558317 209 156094825 358 991509640 930 309590185 926 296437322 473 915974445 500 270549509 679 159105534 81 526493597 187 850597809 153 385206614 80 825196930 897 192977933 653 677051615 253 978717546 670 313807576 65 957249168 646 861047375 582 328531797 448 288055509 380 934505415 321 228137995 676 368030960 599 110135468 209 269700362 553 646246178 146 271144827 858 129356908 635 432901823 448 148368243 916 160922765 331 996025168 49 742545274 64 579735234 34 946811810 418 366139990 916 478440303 713 332839757 294 152685816 269 7772297 603 77698628 909 17055591 522 150461150 454 504291901 79 29405563 20 126450842 365 480303293 470 332286534 313 591612490 755 327130113 419 136663884 224 579912884 370 352911731 175 539282218 916 476785741 407 646157231 495 998339012 991 663107276 735 371404778 849 311772702 210 184947034 89 147572767 187 530451131 125 850709011 949 412573882 786 14844211 900 21404667 103 151351924 366 364390647 817 482487791 892 873055107 341 491157746 499 117518979 694 775523334 858 532637716 75 874099871 446 278265821 425 689847790 588 21564104 634 277088620 764 671321627 619 244944450 22 858493677 639 774292077 531 199799940 710 368871280 923 892991516 172 287562269 593 491292552 604 336113780 793 146896175 396 776004653 441 670386406 743 451868263 557 887938547 163 366061952 271 347486567 335 671280561 758 424263201 321 957900066 861 196495990 168 695270417 5 184228063 263 458088372 677 17453395 693 170952505 141 145653568 701 560674377 815 484257806 711 361441872 223 742365553 803 341483750 28 653581518 77 446613553 572 540459963 94 106691495 978 346294757 864 444227321 395 235069658 466 117685069 283 105140217 190 202042230 734 568808960 427 111765545 580 778648182 829 793051782 515 290917124 406 638097657 12 134388821 218 131764738 89 22304295 625 628578544 935 849735637 570 578211657 739 65324383 248 580862326 401 361765873 503 997252924 66 133609278 939 143868765 227 737008173 373 598131393 315 904119993 21 676594352 964 93536315 974 936624021 73 220000674 892 188566511 437 717890328 369 233049735 73 573853171 341 3202188 848 688780524 254 170061435 963 378830651 847 863965944 382 410545663 682 392146799 565 381646167 999 12006791 638 852098005 395 188687556 858 824744102 113 699293569 132 399598485 110 370659798 714 456775170 671 104294609 716 528947796 533 792733896 25 949366168 371 850694723 750 812874258 463 813066894 803 485609280 91 229318871 596 283789247 296 117474393 357 723478734 679 163123979 53 552764534 14 46571800 985 186207393 292 973421274 800 144561958 513 370538676 646 298347989 846 971175991 497 684380090 426 128773820 461 354173498 999 121046144 21 181829305 995 237175721 853 205143586 740 143712499 914 665544652 796 595212081 471 403874338 923 482262102 805 611756319 51 832573613 451 345559114 200 904383442 691 503163518 319 181518690 727 693706514 271 801174347 961 693780982 193 663303987 684 569246534 715 325523689 952 304360476 942 552489186 568 694023782 695 759732979 137 315633345 704 541915970 122 911984026 159 542399170 842 310662728 923 688221497 41 105287914 665 540321654 775 802919697 694 478327078 870 188669180 215 470115118 297 791508453 543 281249031 151 832493393 589 699521583 991 185708571 346 143807431 878 614217483 1 868846809 913 470995497 394 113998830 772 113636544 402 322803160 100 851832503 60 240364297 679 236652905 535 192570288 727 119934879 939 708010855 197 795072593 352 420590223 33 912984601 910 798040718 451 786068875 19 424791413 402 708748289 577 115055769 726 882847412 565 807023409 172 469826051 284 580867037 36 47572115 8 546846886 505 983034807 766 102880934 782 518793318 365 383625902 797 522386702 995 211175278 772 569051389 474 659336488 495 165981358 874 800183954 194 89030287 941 385398763 104 166241982 824 136589897 132 693360073 75 525798509 359 295489461 442 449978087 831 791939225 420 365687432 275 714703013 714 606460204 981 707837055 972 586710640 6 687023384 851 479033417 594 879315762 283 733045662 396 826779690 176 74302713 165 769230071 774 827129200 269 321688380 451 987266015 981 566464263 24 237414693 350 390807565 77 670913736 122 87854689 434 780909152 719 687505752 514 985079944 706 568496289 150 349835380 348 983178595 628 225462484 496 950417247 99 940371555 603 571531706 361 384856165 413 8940716 703 192273443 560 279093938 612 901499029 976 599669132 243 264619305 875 169229912 805 452382050 243 667807606 64 890043408 139 805415046 964 950107095 815 814533837 252 51353806 35 897819185 469 130108293 833 835647424 237 397994928 487 673025663 352 33873132 457 223321506 756 576585324 802 381582283 246 632719347 674 456317013 115 444603345 587 495320116 489 629338088 175 278672887 40 627556319 479 639663436 496 529606125 0 667802157 613 226556683 515 491210772 417 388349232 372 853062618 784 747600280 363 376647239 693 324935722 702 417595148 615 679068175 461 278202526 937 371491191 637 718692009 975 877030443 262 57949162 487 98475842 748 863645789 793 76675164 32 783647028 644 918487755 321 134606940 877 290190622 105 564174955 235 510405520 952 911784309 684 819637513 406 81488774 606 976416755 722 820887089 113 864653495 162 593804701 554 228393466 271 651556567 439 757448920 323 966715905 104 591467037 967 302996674 434 901419288 321 888075550 692 349148325 813 972295694 267 770139592 552 804836581 400 229346051 19 715834630 326 341592095 636 583031844 299 512002133 679 327099820 453 276296368 814 556460303 909 201431188 203 160882923 331 310663320 479 797354906 431 796535820 392 744761849 516 867171617 318 460428943 396 257780209 935 336632178 789 581367304 73 46163601 86 565290035 960 156763766 834 68697596 174 956346867 514 591877695 194 115599401 417 496837566 13 111672134 763 866933904 159 963497068 264 287882478 262 957786068 804 706732352 501 911615424 410 112407349 24 573730862 217 694969917 871 833780810 501 707146826 959 222545492 557 703241386 31 681386459 874 281148161 852 299660088 790 50165653 735 205020162 372 891050233 8 508762537 991 733468671 905 721256989 190 770682382 985 753994286 760 723205247 938 891759374 145 128203790 32 229765245 668 762346746 357 68813502 899 447441190 340 965554330 716 468767761 308 966539759 91 125902003 355 508543704 823 391849130 373 429656662 733 761793965 870 114367182 12 493789553 651 928786889 246 467254622 106 600168695 993 596450654 771 455038316 990 992139650 40 852964799 91 454655990 879 700402524 916 273021458 263 975746373 67 119039367 613 988883718 200 682589504 713 942586401 184 530855552 637 141008244 652 70078634 35 523746712 143 224834948 753 417727690 481 434571325 99 561071168 137 308025567 13 154217384 101 784203104 451 924726087 115 506821130 471 206442009 82 36360843 454 526284027 464 244033579 668 587928154 977 329473691 687 717528714 469 794549278 7 332682115 770 883184666 633 246445349 332 276277957 941 399121413 776 347280752 562 317834373 768 300319448 772 748457036 595 191616607 506 237783547 441 944471300 360 937531601 524 975530173 348 6714983 192 724863932 337 735220910 691 246398707 56 317941539 305 850610543 887 717997976 711 376260745 940 243712529 631 89253922 672 173431584 436 488363020 886 689573532 136 20439002 446 304434447 563 160719351 764 845171540 284 852866319 222 711094681 653 316172630 58 272865347 558 122256195 389 749727622 724 946326706 10 215327042 187 292496632 940 95941661 121 723077090 911 227146365 217 108095207 885 278721011 794 454483680 96 514811794 460 685962390 627 480073088 68 540715781 506 134900954 956 614429317 280 645303905 35 131076020 211 109499002 381 160366457 233 497487319 445 382057590 686 551781516 344 478186319 220 433378932 400 430819271 236 525282519 373 805842020 133 462229511 930 329468089 212 967235986 27 811921288 81 294994969 779 358805758 929 736543212 629 408388205 661 232851448 158 416756520 231 314827138 633 496124032 868 248235379 882 582111052 280 291410833 10 757828397 303 576206862 933 678342755 964 337782659 470 552179667 682 613160226 657 591799811 67 886403237 213 732662895 650 398165496 80 827074718 303 75590568 553 80238846 308 24391622 199 999048460 467 496790624 840 312814163 782 665461561 969 80244850 880 474176183 330 480301599 706 438615331 643 597011179 702 928275098 908 715194213 652 76808128 623 446527916 619 944899750 401 20510041 71 430648916 318 456854591 228 720694305 228 882569944 738 499814959 712 967865789 377 433892906 181 734441913 742 431925889 798 478882807 805 570124691 268 41700077 840 441208698 689 819988309 72 299670827 446 245570042 687 647521703 724 617040463 710 294521228 515 694783347 536 130635936 411 520146681 992 12233001 254 477520652 593 842678680 374 413776387 537 995335908 579 52889243 927 383944286 828 648831625 567 216715535 568 101293633 574 134572676 870 75668125 100 115025501 482 344725215 21 898916055 510 975828792 76 137110507 49 979348804 184 711287420 957 368713269 976 745469343 938 664811355 73 877059673 919 70745409 250 537549581 668 777975236 198 831316655 617 586653688 514 118183113 331 785339870 233 412169083 780 968317014 880 46955503 689 391313429 661 740869123 233 785975747 273 348145632 21 407870416 89 840627620 472 575671642 958 748623669 717 407367351 802 110336703 170 415561037 39 902710826 70 17513826 381 453505482 602 402338247 30 163155784 63 892984851 550 751140628 311 541926107 851 448413490 594 566205027 196 99169089 191 654362625 845 223324530 92 228984378 747 790863588 995 472597755 762 313188096 716 375065546 972 192736197 42 616294727 639 19859809 850 825919600 716 302276808 935 247381269 598 875934961 547 856236884 410 185867304 585 824403864 627 5834025 742 782344905 911 905167442 854 700533369 91 716239894 763 850089603 112 228817698 350 143577874 299 999756606 895 741614688 268 756478273 376 490669274 353 436856604 755 985747179 138 623758355 665 558908041 371 243917419 11 220223758 904 369608490 526 423255114 710 751421411 996 663584919 253 391770476 225 68106223 347 560766234 812 338681395 561 499164138 623 347143185 465 136057233 714 82707344 820 530015056 677 11688770 604 322589754 455 610597962 271 610895807 127 514727034 840 703836956 100 618802297 804 324889066 835 317251070 291 556346902 433 757843464 893 826581633 178 706029801 398 303143473 86 333812913 755 385003049 38 114631543 644 981222482 360 918329198 664 591379858 171 61286871 75 571147902 306 706954430 709 659318671 498 955388705 464 518359810 748 986175372 602 200807588 541 145384495 843 239365461 203 881563504 580 917833687 866 465517266 972 988228017 137 198705198 233 138412559 297 223003138 969 936006390 386 945476070 3 946182844 880 820358013 350 76068036 270 747207136 640 525437402 989 496417960 65 567129900 132 219805447 712 703009819 621 395399421 330 377528689 638 285165371 668 726705908 607 718471395 262 888591241 86 406842384 984 744498517 822 710245108 615 235893669 977 357238759 61 201501692 120 669481234 259 875076317 696 87854222 389 124448431 286 413767357 756 180405819 698 451187183 6 911983283 656 85609537 225 717395156 624 906747178 956 252955079 476 224622764 599 654509554 586 770509021 363 572157325 698 686250206 737 414239505 759 745340296 28 585474464 474 106230913 746 743172815 402 957219778 728 82991427 310 299326137 792 543165730 396 808628276 45 537946880 267 73370026 946 709315656 52 237909618 480 637862449 810 839209611 765 740273516 983 22369569 133 342132819 808 234395917 131 523395928 524 682766748 65 750393146 469 95518811 200 313184203 142 164928385 646 857241080 996 839754123 329 325156600 559 350813136 458 872548357 59 639893553 963 460259846 299 631695681 423 201693386 849 180371552 157 760068692 245 927429037 597 340018546 251 635231069 699 704965211 301 992995735 544 749879222 441 145780126 358 722944919 100 501933970 507 404890775 643 213602037 216 472709355 618 200974784 973 222223310 796 293200165 864 911221765 968 259113682 365 200018826 310 368285930 524 229803650 34 226409225 439 490227394 172 397178414 529 450459358 664 149773480 107 26867147 538 234302466 89 18114658 832 996428868 351 95634634 241 140768893 151 496197871 867 684089377 255 176527770 137 17926942 974 490909825 902 256702240 297 809450733 450 192674708 873 520446660 634 921278363 857 810576074 759 714010599 189 242551909 459 194957495 855 413839779 837 518807548 930 255227788 768 283308143 623 81245366 338 387111337 253 37155928 65 952191821 165 462383306 136 53561562 281 791497940 740 811573532 509 427324330 184 393332778 314 499761780 327 985645743 686 789020225 108 191927479 271 593263375 859 655130861 285 976754781 196 297998274 862 145654962 217 223038534 432 223127096 885 925767281 696 484854044 79 439072288 717 279545057 389 225416390 124 865052468 541 548012873 73 421845671 149 169313178 486 923053525 51 801545821 397 134287688 175 26439419 331 323388599 86 788041792 91 10326714 74 195571190 625 554894168 393 557736530 221 620853489 885 129310226 294 190570396 648 992678702 57 727586210 4 481261338 369 431424071 866 655613501 983 665929467 463 756366961 400 357140450 764 561939580 929 786825553 61 396664658 767 643013814 791 294013762 384 958830544 505 459169600 157 587194573 961 320185457 112 831403600 221 3922443 686 839287515 541 656250051 287 119741667 703 807510619 956 544750812 122 249058672 168 566756364 175 664208470 297 84684801 624 684323675 877 497020466 952 531030524 763 115448338 630 686604959 387 520748066 223 53229196 501 722743863 622 71613608 115 896095654 609 833192806 201 519413132 613 291883554 600 241406983 801 895639781 97 821864065 194 344949028 820 51792843 701 333382338 212 849098636 441 323522095 355 639961312 544 860874584 906 275926021 930 933032755 970 178200626 652 460553062 770 235557600 281 545487352 870 419765827 238 319299124 143 802634171 763 725391591 652 24194283 998 747638289 864 150886091 308 150883680 870 834184108 180 564322614 209 729009109 779 646473689 940 30945102 0 7619218 454 117362178 349 574667175 499 872808230 222 4367005 12 943317634 898 11948022 910 748282713 997 487588870 383 205288855 39 967569734 532 324653359 411 505587512 353 75656596 258 73906498 927 668251600 493 5533178 252 689031039 883 710907256 264 329796917 652 171119325 945 721235746 710 640912624 337 485150498 650 123331162 77 858668111 574 932882284 955 553130852 766 594707470 134 631929179 186 345034721 611 872615276 574 118579089 965 284033523 129 909838801 477 258610064 716 394998600 684 164030602 986 570155160 812 635886025 272 443223707 785 601020794 176 880403502 872 304628799 821 262883754 422 40473263 332 269424919 640 802448061 42 486178177 150 110850773 867 674744276 809 840037431 554 773953556 769 881881430 617 891916726 584 70682571 633 802588549 247 534906932 113 918909264 417 587199713 291 160186563 391 890832963 191 510554607 310 137283447 359 213054592 202 964373699 274 155036396 989 193390469 798 620748170 929 598908856 540 121982696 314 8270282 557 659630130 841 961384796 147 379152049 323 266363719 219 843791471 551 821119680 567 883281670 706 637842650 893 556978956 225 214806039 180 407619567 779 783590300 566 52376744 145 405398985 174 834918485 380 800575888 596 675435171 970 847314823 589 856330228 705 451638400 994 677903628 658 771329532 179 357840498 297 696304966 899 287555336 839 896425625 586 396494655 762 459706935 595 322033480 616 427910521 193 148165144 909 636746100 552 478476640 728 10771990 40 387246564 176 599294164 941 843233230 43 496555442 382 607042514 757 198014660 871 707305948 649 525934158 974 49991885 904 633958083 9 56959579 71 480339937 871 302674497 944 619518319 454 42981925 918 754616121 587 485595923 921 930879143 544 574304816 544 973139262 483 573891641 854 588664753 19 801111258 73 645788360 270 97571950 3 102788684 691 730189238 208 38890248 635 810989634 127 98234131 186 672153123 692 298843051 322 607837228 601 959317962 231 840089048 712 460439807 464 261225066 448 858212324 673 968746400 783 199439474 857 135731606 101 944378219 622 476916471 361 180982638 557 326535954 525 750725191 848 68796047 424 292328855 605 641019000 811 980646955 2 154336172 770 665075202 979 233606821 670 507107546 187 549662938 810 876326926 561 306014169 134 759799104 962 905360181 805 60202389 286 429915244 348 198838228 444 65696386 736 655400082 374 672320863 695 92396522 442 17000952 974 191767698 159 166198066 235 970938970 212 494081768 863 787469350 792 593608633 967 10871869 29 932705600 176 42158775 813 806894033 733 486084409 606 853657348 454 655071261 467 55384745 159 932363367 996 271203995 572 291821196 971 51119485 358 175118767 124 684946453 172 167897123 676 399377542 388 69816289 630 495906647 920 420752074 995 815676007 743 63172148 627 488540900 556 166154322 906 668760810 12 935518759 913 317615887 219 521909852 488 177961980 351 380049563 449 27824669 612 115120345 979 829361050 889 380524096 278 236775680 869 370371637 184 139883224 653 949569346 41 603873693 195 492359387 736 532847537 427 246957966 76 234718394 560 810436476 912 579533774 860 106724797 71 716492942 951 644118593 629 492852282 442 25230297 309 516156583 863 620769897 760 44426888 667 477111098 157 192704973 163 105825288 417 690830622 428 696011536 875 144316102 356 545715787 356 124038709 363 105911409 761 11265447 450 540878430 97 486667411 320 427558006 370 803376000 95 187828405 521 45389780 850 463084410 132 762428540 856 905122064 161 562110638 168 829808643 524 612382417 829 327164307 569 319300489 371 617129600 230 365868204 416 915861253 74 71970661 110 256000290 955 237252511 869 809733246 315 209247068 41 580782925 928 475245281 941 858516203 366 286983054 563 920478154 488 692209441 347 292277058 235 754283231 629 612034252 225 369458519 291 377873877 367 440050003 971 590093605 401 926404526 558 107741193 699 169051694 618 829954444 731 267369532 930 692181599 665 468709733 171 906472361 680 93015634 829 775251437 38 866812140 906 191663050 973 617414 979 512537303 29 523673303 626 524862655 878 677469151 58 918799941 793 224112928 318 829147545 148 933064706 560 824502450 227 212106445 193 121215767 111 287214320 589 436785113 711 945263239 760 149272654 831 501709146 454 90257766 615 32172229 977 912750058 330 754247854 448 167237910 700 79977281 513 97373256 240 775084629 464 647337294 778 561977872 670 994012085 163 725182525 149 976743613 588 887454402 619 895536244 823 481409203 661 43709136 379 303771003 460 684845598 895 517177490 222 157050080 749 502535909 683 497502832 719 741897126 981 639940801 158 486271806 707 870482210 58 513271734 427 821195694 394 8373363 411 580723191 310 768842587 518 606107637 913 307987653 552 876259384 813 671685526 430 190309590 909 392367325 451 201592991 306 519371407 154 443604599 980 795096671 220 264776004 982 751851179 829 863734174 819 141723049 161 475200223 417 972630530 119 38304757 733 791432174 380 275547963 301 753154765 589 984963311 624 688040798 726 815023690 886 703061455 343 310099997 651 511924258 384 167184877 708 549906586 56 84901579 330 498243739 345 663841732 17 713881399 313 469468995 482 466239357 30 141581317 487 895805581 547 424184967 112 137489321 197 383359838 35 141950480 462 463627852 487 500163754 100 500799115 944 930859717 712 748171403 72 476237507 904 435421702 653 535468717 589 856096278 888 566737346 460 511464645 909 602763170 945 151416823 893 533476161 558 980063528 875 470237034 706 535313885 477 496711049 397 600409134 4 649308095 425 362731209 661 491275403 370 546349891 273 146543379 413 244711785 394 138006570 675 279845692 564 57424510 617 31297813 205 33018734 55 227288461 736 888865881 170 658714761 428 781744779 21 673176527 60 358498880 288 991666394 346 358781818 4 66909002 776 682873250 536 5959259 674 52059518 976 722151987 940 729002965 969 605412841 377 785643050 51 741947589 362 882088774 462 861337332 781 292778303 426 494851875 598 477822700 973 935568784 293 144307515 584 75438957 964 540553670 931 629416149 508 512154129 607 172729031 447 746845319 871 941913740 843 53439985 847 758900909 372 398474218 554 735881347 196 478252346 611 221347644 887 851351498 522 128670264 178 465698512 739 419742245 566 63006089 623 376729294 193 398932364 948 255815057 497 377782231 657 652236367 722 535471922 265 949633714 931 763420229 662 874598825 98 572954957 870 185810172 85 818889598 960 699859314 709 484415354 279 26062466 868 574880249 615 285412232 586 168960661 174 364264525 649 236838149 828 597974224 324 637279575 550 852943273 473 763181496 536 919994534 265 631886721 939 249956160 848 176974474 514 130415451 666 361371652 398 9115899 145 665484864 33 87797477 719 695181442 678 175212793 441 267795776 480 532977919 611 867739152 268 145761124 641 722999518 16 350237564 716 533390303 661 284693256 202 888407319 271 88115409 15 408831042 901 783305001 62 841154287 592 168473842 252 131434102 341 175120041 211 71195793 986 535080096 430 561529066 447 622645715 272 795748851 71 317523327 628 276406208 496 807841020 714 354595981 815 697879084 915 134342643 614 884438342 167 225338697 507 714787585 484 129055987 687 280637501 357 242553143 308 561927747 564 878461620 755 571202656 292 394112369 80 550033659 978 917657852 434 213056920 142 816748416 833 936983913 547 6114753 616 541773988 504 155444204 177 98918045 440 656931123 935 862042719 154 590982586 529 920110661 358 686054681 542 685627001 601 267862093 505 671205610 353 789565926 979 464519931 717 570736960 13 486617263 297 385122511 831 193420287 822 480994545 295 805123020 866 442927704 174 731084880 967 926594395 760 734134119 535 328588629 778 875875526 238 26183146 793 753033969 384 492174229 103 918620178 954 25567609 604 160258859 193 165790848 453 86570171 285 174410779 801 908307262 698 495198115 480 972475146 500 29100676 484 276694870 796 575758980 709 93747588 541 657547333 41 472280863 647 553451021 689 629906074 998 397044386 60 73390004 736 4743835 396 326948242 944 333283707 751 654767125 628 747419912 374 235477092 196 138737235 634 571340449 249 613401998 699 825860483 187 175634927 292 327482848 578 856830450 915 415796706 87 429364177 689 541078654 137 86701366 871 75697668 393 432916746 289 35283663 489 801954037 334 314623073 545 981168301 532 997985915 944 216382859 956 991953183 373 812735492 315 376901978 45 548601639 786 396925359 105 685032412 160 37781152 834 913838024 276 941574407 133 774892538 835 506531998 547 288396349 932 734562579 604 21703853 249 3774979 643 35227902 182 698430452 882 743392886 451 481942257 743 685025247 171 22637235 112 5181959 151 235906420 999 386191627 240 288795383 463 649263613 262 663082964 332 166360208 747 633605980 715 203522976 759 556531426 109 274751760 538 58447102 937 76315675 243 498575604 713 659847686 292 15893222 878 277237392 757 901036972 137 314913027 777 297966237 638 88733544 360 349924773 384 720927642 888 104943047 715 967092498 605 869269520 702 527504255 902 81597389 415 560359113 708 656955422 662 942808306 532 878073474 621 153985577 929 729922100 259 868636029 120 318843593 47 417870320 274 150346487 806 242669509 743 897979209 165 973719252 289 892550136 120 293127741 274 28323172 469 449205257 435 992409865 677 877687725 996 494747052 636 703352228 92 435641534 59 670945235 410 526650286 670 273618041 35 36101404 716 232596394 920 409172867 904 816880089 657 915229475 672 894176718 437 860791468 682 713399156 367 680811567 138 561098874 879 907315028 374 792933142 123 345928902 616 790205016 372 252684079 241 511957792 470 395784559 12 348229238 365 349132065 628 445056096 86 309643670 67 936386573 270 176909500 229 392824680 811 3283149 471 306915499 801 635737970 0 913818805 632 673353324 623 19089265 680 215283207 323 302090343 616 224805756 413 200717401 675 193713395 86 188699346 421 49357858 276 709562328 467 511564619 879 550230946 388 124019231 647 818157597 808 306151196 761 245081217 221 358178435 519 826759512 73 425050883 149 330978156 731 626050285 233 330298897 820 435930144 255 398164748 312 194777539 668 969239696 970 246510207 459 10762049 567 490352612 464 928119901 147 141540384 441 923152291 175 711684156 42 938984580 652 817079057 937 463351815 940 191532627 620 860079560 720 32773902 565 336897480 213 96346610 781 212654941 190 611872991 947 657668805 789 18923804 798 259699296 838 997502749 93 747598633 72 799648830 991 619021612 254 845342658 835 68711724 603 769876130 954 978690230 833 157946615 321 196456486 447 10760199 690 489439498 866 787175968 565 881321237 99 932983533 569 101866251 400 23127913 620 486977433 742 588151150 319 213074905 924 666667749 484 767997145 456 974736035 380 451548346 756 5767681 847 953968777 678 186946654 242 303736892 782 520145566 366 101811622 369 882946022 185 376678344 286 691209062 890 81099444 782 841135978 455 301257581 14 935793995 790 77444025 160 388506335 543 459381543 153 456617358 764 316873555 932 586905145 836 573825859 738 478361591 152 537558041 967 642531099 739 708450240 644 571319097 334 135101676 59 343576366 870 210485228 705 648622991 166 270452572 590 798437540 706 780911197 92 542021474 753 731599620 156 155338928 739 228314602 451 951418690 360 985792228 748 155590122 288 298962301 240 178716306 390 164906770 822 911002645 466 237222852 665 51414087 301 395901838 439 978146578 980 895454294 84 746217033 854 621218961 106 740789220 492 964871003 651 463440206 756 2948955 9 654331463 542 5806955 106 272075019 876 317718559 97 825334387 177 861652629 946 719773755 806 268841044 526 969960613 709 767407586 190 786461646 126 200550419 989 924535911 109 507363451 501 794110694 8 965217477 267 183553157 495 705216701 733 910959129 470 678779820 986 593741851 232 744402480 972 757576314 851 919979077 949 951339433 958 479727742 831 618755847 985 461578492 397 619608183 936 340361772 584 494324369 923 196382921 30 491001354 28 904914359 537 209554608 84 836835723 308 241668245 558 453233244 725 56896484 598 995482447 324 332718100 291 807319163 698 299951252 368 573905950 485 495670917 795 649418773 706 258103809 166 225742953 58 822356685 408 269169714 220 848942636 694 493568562 843 2425043 757 707035453 44 95230346 633 336943309 65 265162616 620 458037447 467 432028615 620 20958684 455 377621319 917 206383873 437 444967578 949 689882968 912 287210524 736 393906363 439 389277997 531 251590488 90 523744930 628 684353533 64 74593733 72 921713470 903 277018151 656 42247665 578 68113199 70 505769356 825 149739924 454 142647469 178 809745158 791 520667402 477 926446622 211 6332 54 808716137 320 517045089 639 194252729 607 307384255 558 877815031 575 130654044 239 990311087 214 838010072 740 399304889 166 11550058 240 979742375 56 449307984 257 101221616 42 720253292 164 974360559 880 496385029 662 469859542 835 236332402 728 53437878 108 122264283 42 489929659 667 653036277 458 288273318 510 918330344 547 120813387 558 515833032 657 927113787 41 466895963 300 429004489 861 230590965 416 481529155 432 999953092 597 834016667 286 120422303 161 550682870 599 805402287 258 836069251 908 391469836 107 978354337 205 304253066 327 979734906 637 629286415 553 984995613 512 256167030 694 824882490 679 428386369 929 877129640 78 292819660 355 391475269 863 109267816 527 519371203 977 200685673 875 783649564 715 308494321 644 471125456 201 970188518 619 401745105 870 253730803 904 74055558 242 821026771 310 9915340 930 887628842 623 98195330 0 529503310 179 279161525 212 964486106 921 998345547 588 888588029 218 584723110 583 615615104 779 41503741 209 689140388 397 216550932 319 63337590 997 127621060 493 276511025 15 373392260 420 950275106 919 740605349 191 677412075 421 999204035 287 467818396 329 622876920 940 191664208 461 243301078 464 430240145 657 83304163 781 856905492 537 266202842 749 604986332 613 132150179 183 109530370 847 191336800 738 48438109 372 612502388 361 75997139 70 769203372 617 854061426 271 672168863 604 903815033 119 520321507 311 289187443 134 686247337 602 429506820 790 255832025 690 786485023 246 563548227 745 793402588 7 576646841 975 266959499 792 517112967 339 622771226 617 696138567 45 571820172 415 141718334 681 287031809 650 232454406 455 109486053 600 938897768 180 603697620 773 371484850 575 211759380 919 25084388 388 278265295 761 521047829 362 471601850 597 374279384 808 774319327 118 28275464 213 370754109 401 140219805 659 982245961 927 647543564 946 829686801 25 762241713 116 819046591 876 21752881 589 912608827 598 848544007 605 280345066 412 759295003 395 155378254 502 156123505 565 334787206 603 773648815 81 412291038 41 417803525 769 161575084 688 345874777 710 88793500 730 316140354 812 582583075 60 74318485 126 854068244 867 751056488 577 365110526 864 341851108 816 180246891 787 162888920 651 184654971 506 104347085 884 19673474 555 346758815 860 122758292 658 50483398 97 151344159 844 352398279 499 41136702 482 433498276 757 42055633 530 136177361 230 170570245 714 224397802 171 648703455 506 230877793 574 673144769 8 259904444 11 64727292 55 994865131 602 781558963 94 635271124 795 652131009 825 105015197 422 366498171 975 447709911 486 746351791 873 962839652 152 346729504 924 7013232 98 742639842 325 533016794 455 284003930 379 807183420 636 683737657 449 217368725 242 6818375 847 325601968 369 907059655 598 102632313 364 696822518 595 377695375 313 150895844 157 900247553 396 449875297 315 79013877 960 398076781 731 288794938 47 794437546 606 543641291 575 757375165 945 150428415 594 963800425 93 765772661 278 487683053 443 403013390 532 657386121 450 520429721 916 664897997 542 402835559 623 263813094 497 384681116 576 4027855 414 580134980 678 705531941 929 553988855 306 830943437 552 902298232 208 639095031 36 601803442 778 667175361 512 987723005 271 69077365 887 746977809 72 751068282 505 241346165 615 15082499 599 620707863 428 778041636 909 984579146 177 977259545 665 766104026 343 747039069 351 267006648 831 609906603 254 648177918 139 144651926 516 687248163 385 136947715 699 491577402 343 837543269 933 784530861 414 524360421 953 191262664 23 4531873 751 711962661 770 114288177 859 734551415 361 384024748 694 986009354 514 855726457 786 737708089 166 931852760 948 753904868 237 455682497 639 122249969 715 476988895 518 215365932 9 403684139 1 70928257 286 515093000 389 311505481 483 296172177 454 306307234 852 724158227 749 698068070 626 522117215 95 312056129 489 388816542 615 676120489 175 745558973 463 234354000 915 838997708 988 237204870 348 508050108 360 50188223 83 319714781 677 788346037 412 338656159 289 888949602 619 78934418 940 872588374 603 774988711 755 227888740 267 243761591 571 731422153 288 234980215 901 854806452 198 460747121 93 405431168 465 268453659 507 916171520 261 430834887 429 220487998 407 466399393 247 99730770 113 759705190 297 155583201 568 843412032 175 554232147 188 138223862 689 905142264 825 665592733 992 167871403 400 261820672 501 731936124 766 516857865 172 771504824 129 732440183 106 386445590 583 981663306 533 114765023 831 561654496 143 345897053 553 916485175 159 258442924 927 963116001 760 80385339 743 744412500 125 361682336 945 884405950 123 343088881 243 827065508 831 720662245 744 449572189 255 267204227 920 597938049 220 7232680 658 133854855 220 815653633 740 820404694 838 321919844 208 729085973 770 483731749 179 751004187 206 265862864 453 776140125 429 60675420 483 244853887 39 379062520 361 996777132 535 620974884 493 861632001 870 939754784 994 735178338 397 3860920 801 351657552 680 851407000 786 910183603 636 348525828 232 965987064 364 485567217 820 822555571 609 891003629 855 728467204 163 71701369 514 410100561 546 738348953 188 720906031 111 868219485 739 265654964 320 589446641 775 173676153 911 772536913 718 569202897 829 736484646 416 498827694 456 261161728 492 223432621 178 575039671 953 435545505 276 940154516 396 950151054 901 257613271 227 844571898 470 345408542 699 782787856 908 987467402 198 675532862 834 13222394 38 133109452 530 394309308 862 871338819 803 285869574 678 261741794 393 953307349 769 749604226 48 749284236 622 835677212 432 531435677 769 677321328 304 938561656 635 712401507 820 971780274 227 417418870 260 483620774 645 168862441 763 476582058 726 423636948 235 380595605 670 177557979 195 879809122 298 582913322 885 701444557 374 241977453 513 703013974 260 214011617 577 849190617 795 58916680 545 573095193 845 271993480 610 486485344 177 759271188 268 532599395 564 464044639 386 677878843 886 976492182 966 879536164 900 377096487 591 759085674 378 100096163 250 181244693 719 284322551 766 396205152 275 554766957 394 524677851 144 425029346 753 818172646 900 40437141 10 169573021 130 207214052 894 987734470 270 941397778 915 708523329 326 568601215 894 284348200 913 384190224 481 676114287 810 135895899 732 589793708 998 725048349 291 242505948 27 434689532 311 802477005 31 586674446 98 876763205 7 340855313 794 43447824 237 81737299 551 502375388 691 441234538 76 916372466 998 94973711 172 479952576 21 305018616 577 158942585 277 103948102 368 520939317 750 207552281 659 145614746 547 643319691 368 277355057 514 596994576 462 316368233 730 166999702 934 467213319 338 324121807 756 194951132 762 642031290 180 686880809 531 496303419 387 65494809 915 750919238 190 326436893 597 627547262 740 758231913 106 657312895 276 178309289 228 204611693 437 512277271 776 675994128 238 162299923 121 359151033 931 897961385 979 726427319 387 474955222 348 885446039 622 752345361 102 853095779 538 871466465 573 912877019 657 462282159 210 497261123 601 617362738 590 734066033 760 433402159 53 686487311 453 736209292 129 373343636 993 456697201 899 47588566 907 595364304 795 210608117 91 669985036 910 822076930 46 832553495 241 214860550 654 696742923 330 520076239 570 514937569 469 125755156 274 506712794 99 574419004 41 487338432 278 502265854 848 231364991 848 525889347 923 738250979 920 229381979 807 42120881 48 207408894 738 126478121 56 49302407 380 399369783 384 425096894 179 489220235 162 544300585 925 18691064 28 361710107 627 639149374 79 814519770 525 749460025 312 925023823 414 577473596 354 958004666 789 314465764 438 249286661 455 165501954 177 967071740 641 100034201 651 221285725 201 387267736 379 375900410 597 403918764 880 271634724 387 736294127 98 767260849 872 941868737 938 831506250 567 943691673 583 933271422 61 412535091 300 707017101 143 351361620 390 81451727 849 763796925 182 238882455 586 390744579 269 612554190 484 254859225 53 404568866 297 792075450 303 676330633 466 850504630 338 656885098 673 241442465 277 773895894 871 419360795 32 915554463 956 828987454 288 380437175 373 815470957 928 300512686 950 316811938 452 171707925 4 772331177 928 857993941 813 678977862 755 577244671 173 628219131 462 469380697 158 454219656 14 780995569 112 432095587 934 408380400 152 543731488 244 227595326 663 914549411 561 30462335 71 724933178 687 935430185 986 610454484 401 472814433 976 133235769 954 497493284 522 793181900 972 103483798 608 209346631 989 393576072 571 381385490 911 542503133 278 976654829 687 761150038 97 569813675 794 692842776 87 179360672 857 513980694 213 908395028 243 265254258 512 873750571 234 634239924 286 152068380 23 22303760 44 381870721 729 49510583 517 544911522 962 823577012 162 432176303 620 355998866 637 855691022 210 1604473 737 839228863 975 77461762 233 465720791 393 991826973 784 884090815 349 68743155 157 801930141 802 65540151 866 901311890 374 32448608 984 377134214 247 44008370 315 258855936 55 655970210 740 605118789 717 786364641 664 49839550 310 358674255 875 780864092 752 660052415 241 102763933 889 922669238 124 785697770 522 861184917 345 563722320 525 179823731 83 34662614 73 512764295 888 192709845 876 569737696 406 443739234 448 105936845 287 428176469 601 780446445 592 494924615 229 640222374 288 391037459 749 561787774 795 186577763 164 658287789 258 873512787 948 284007306 357 503934734 288 41039832 275 516883100 193 862289194 173 474509511 843 891950166 999 566819162 20 889310788 576 478550934 856 979297474 13 29759969 398 237265707 136 816936587 839 798920665 670 729548863 22 231815138 138 193473810 510 533253923 324 862737390 0 271556196 789 353483224 765 807667362 8 19167190 171 711122344 544 460807628 378 405856259 66 77514336 430 212193808 96 517251985 439 557349315 959 40425824 90 784085667 30 30219856 492 125248877 319 111534377 289 338307957 447 35718677 715 327936099 89 166968941 39 715420650 708 570886190 159 713573206 182 670628266 994 389701196 720 574603877 304 117614163 742 554680233 748 241779334 144 840547382 530 527295709 248 280796053 847 40763509 115 732540789 331 477006272 919 43084238 951 57952407 562 252457279 743 100418930 421 678185910 418 826973916 992 516675905 652 866820129 553 162233111 649 449779273 851 553418863 545 402636799 545 453965228 739 244928348 851 686409314 462 930418502 39 860905972 232 442294651 681 329255613 73 609727543 706 898409037 390 25460476 932 287959000 224 362525601 83 315591741 694 733400198 808 421295920 883 770757949 702 947645142 334 735537232 476 843016881 31 442034243 132 692199555 475 647565126 680 399251812 736 393876624 344 945596449 437 505732198 847 607569366 697 419497304 151 851254820 978 912304699 121 933775937 475 632697181 370 371764959 38 436308229 2 505740836 821 345929955 148 641174759 600 919162012 125 930201518 925 70894249 583 393565761 993 206012879 677 681586808 283 99873869 751 619224801 205 826783712 632 342530968 213 462259063 364 117217165 94 862349142 604 177069170 152 757274145 444 727574799 898 209479094 722 86621785 448 198379173 954 50925173 88 692586115 126 611432680 935 954863720 278 889235531 645 590613659 363 135238031 638 906010153 162 535364994 653 178685412 345 552887515 919 63951605 678 175580933 507 120781423 398 598704450 746 709540657 568 721595053 592 164428394 891 607350403 766 883815776 797 740608107 805 854059248 559 487695714 736 17322028 245 199351098 635 958147400 62 407961206 461 175883320 516 226397466 889 523296661 842 17654770 312 799637647 31 16072019 327 511836150 605 641630125 454 950092575 89 46858843 794 603601839 935 277216810 800 491543669 530 817068030 270 534139958 774 298351942 750 782798691 348 444506510 843 75466697 828 409733829 52 735133245 365 377265908 732 872290599 741 397671446 764 65976914 226 289815300 200 64242444 120 528276576 137 350125702 627 96539297 86 393019064 123 185106988 186 302210939 525 430637070 582 694008673 43 187484471 531 832836867 674 665244012 774 287908215 545 455441578 476 773867640 743 787671621 607 618051266 873 271428425 618 680730877 207 645003689 32 692995111 980 295516091 802 957758922 628 221517165 471 554341000 768 398030274 597 138621190 99 826397685 554 908591192 433 875669591 256 777746567 822 601335807 709 155746320 823 611416384 283 759129141 391 490548873 736 383260797 932 392916831 305 19849645 898 320843588 49 666983803 420 250109689 806 413171489 841 90553854 701 687639765 264 131291070 979 147459838 349 59648345 601 362611680 572 483663256 459 838500816 14 983060484 292 466657662 300 627591650 812 748316145 853 424586123 496 898376681 931 86909358 79 234435216 561 435702435 954 910114968 506 817966704 767 938183742 146 980558688 466 451878624 134 600509167 986 682562948 440 862317308 915 147835224 375 15453875 579 131111299 219 316138758 531 93121412 348 679339859 41 420143077 833 125381726 507 379584054 806 548292081 26 341993000 929 198634363 963 480533463 996 78331339 411 123019185 420 473680717 912 303404890 793 285042709 981 820429557 227 18752999 24 179136577 703 568546576 253 346908573 922 753809244 2 526424759 764 725891392 687 482838668 501 326363049 610 152573720 247 306450272 773 984462320 205 498784230 824 714538870 766 886816592 355 901239686 186 696480319 584 487238038 831 473970362 506 870328807 131 802559183 164 747326037 367 89222819 69 569121130 831 816893806 811 383815037 388 658943278 36 806265377 60 659616183 479 707713576 180 194340704 758 700214760 512 957734260 824 101257463 558 633147704 210 610467572 364 85894888 795 692053510 189 541071117 639 343073935 709 686337333 285 465273741 5 755010713 70 829901572 184 999201117 671 366169650 270 615462729 271 872753494 18 193712362 418 323623750 969 725078953 607 471568270 682 388636590 629 728891883 676 302814177 894 617207433 774 50348285 888 753388955 613 321835640 166 520306089 409 62691273 952 696023807 848 600451059 368 563932615 12 48855209 541 188259593 447 727833975 144 221007861 387 557391622 102 10981433 885 271221279 104 883491413 345 354893840 762 207575589 689 355146361 222 544094214 598 570114728 81 465345778 117 392961039 340 137288301 114 337093672 746 758142877 878 321148119 605 106169161 900 782473442 982 810166207 151 64324291 691 43843257 290 79069902 83 147661347 735 291904722 704 856805053 34 524561396 886 868837516 262 265565141 491 709755059 693 648793020 393 700770633 254 828442267 787 640573795 926 733627002 689 401702934 219 794970096 192 224594559 543 107188162 731 443959622 14 734422864 326 137570337 258 441908714 693 845710692 80 828770469 72 653697611 513 53467413 136 504847365 955 804950413 117 240867389 874 133025800 936 577908103 12 648695714 462 748260240 894 160405838 651 303412738 653 611147697 887 445122142 481 560894678 653 609227501 270 156130088 890 167346145 211 373940787 846 507940198 868 39244761 742 194584332 511 228857500 53 745713821 983 602136759 898 239264991 849 312559636 371 36994373 280 63211611 519 408494902 451 115893148 993 271491670 26 652686483 399 863986297 777 762889464 339 487860455 703 580272570 159 164449945 329 317113712 179 911244015 124 624656774 270 841657876 413 462838092 39 658031663 622 620893670 322 685300020 226 397129478 50 94213551 909 870509124 195 142679059 418 262952649 538 982830472 827 981211369 124 720378933 760 137636721 760 487540336 90 472592984 132 719787325 385 102335200 68 294041520 376 229338728 797 808884820 363 755847544 192 794919524 192 148996890 841 445918117 277 339706579 576 451128711 205 159329958 82 866291256 442 836399959 840 160145357 720 124282630 669 844145464 299 93001434 282 204123432 512 530024831 682 100612786 894 342157804 514 169576282 206 551676586 122 121014936 647 801860388 997 288958949 842 563416965 889 593884940 431 165860967 659 508081099 356 526103004 530 527342237 919 276481913 287 639419589 792 661261047 866 861625967 631 336020886 158 503069590 977 717137091 922 864598461 951 269151951 601 675037627 502 888759720 392 121381621 959 915172635 876 389286556 526 824020782 43 611987768 850 514266869 490 799247796 93 916672678 203 240402566 926 251114734 426 144855806 706 728283885 831 637434005 512 529610921 405 651984689 473 44587776 331 851409580 657 871897290 326 416462328 292 698962291 845 605152431 279 878470580 899 509259884 166 92416606 717 79039632 236 539649822 428 304746376 282 550661564 23 40765557 529 952339794 445 23597340 335 298326130 298 591357759 59 317019441 863 480518953 63 611115439 137 662696259 672 543022709 323 637761664 650 364445966 986 342514369 702 999180690 859 85273666 212 575424893 996 596086392 524 8999212 879 710240461 985 20988247 678 636980640 654 502276633 933 208693087 178 243841943 49 754482089 388 423406105 387 284932258 984 309635624 641 256054824 400 10080738 335 844633279 688 229117267 523 45469510 334 125952839 242 653594002 845 408384324 409 367812227 335 200773472 103 493745332 383 253078510 613 933022534 968 246034079 948 765340734 153 56669283 985 49987298 444 620665453 717 113859215 812 49230319 404 185354093 237 723129284 288 163457245 675 858400482 298 851173173 143 455150077 736 120569643 69 62936147 484 796627846 153 772655434 688 672706195 468 736530168 39 726161074 491 423952466 496 280317969 932 101855832 790 263839835 729 228000692 504 806119716 653 127293142 61 329169121 107 144873232 512 786726633 108 536904290 920 854807155 327 654145942 546 519903124 713 869174710 398 438388577 928 778216144 105 437457520 810 936172912 755 348164417 916 114194587 894 558616333 986 747401446 852 434174496 128 670370524 70 947269402 780 758716192 85 818966763 945 342944894 910 377880840 89 945156386 446 906669064 620 440936646 439 950585971 930 988230619 677 164315453 202 795565480 255 29369310 545 258089031 532 444024945 977 794457134 749 881817218 543 734642591 699 972571825 20 694058410 516 442138061 693 45833107 967 519708326 961 729015056 220 316769884 127 940781934 21 929392061 513 478207677 148 276202422 3 578041247 737 651867411 376 624630891 326 496339744 323 567816034 947 140311877 473 846828349 439 817619908 773 5902902 160 656218538 289 778785339 301 855889165 540 907494443 770 560865845 437 257447621 686 301140618 346 897846693 481 924782784 405 422720620 702 895826720 672 768054737 997 481923421 488 176578839 127 403676312 866 729202114 613 421974683 639 778253827 612 352963646 643 602852837 738 372099631 227 433151665 75 23337478 105 212676681 540 415690867 211 500866038 77 211527809 391 491212887 820 845185025 142 512749647 298 603408537 457 981286389 801 586467037 681 304979631 115 641824546 985 357853269 521 72138255 829 462602735 671 388530414 829 864524397 574 125516924 619 709835707 11 397741326 595 363576123 315 743151324 185 105372520 842 520859966 32 132366800 934 918190263 556 338492742 715 831951957 860 291906074 680 550041129 696 461695972 732 676696819 435 426324092 318 183924165 373 765738110 509 19341676 458 453595171 9 546418630 65 605456887 743 680149432 443 137609383 843 849634976 583 417703195 854 22650063 934 109808895 913 10560657 211 457362335 202 184713326 156 358766698 918 484254958 739 790537299 707 506204618 112 378681273 784 615402880 457 504185843 985 887780410 732 916135539 447 834855806 255 89198289 888 462270599 898 303039894 877 409859831 162 612983412 123 465582951 127 10027428 747 463849050 591 770952526 971 140403795 925 109362194 109 319280081 920 180082392 432 219409959 11 683378805 9 816702660 694 455111088 495 366838370 358 210276346 391 127472652 552 268576145 929 255862939 27 732660499 955 266524694 746 932207440 874 672971258 78 39877240 795 80837117 508 835868824 813 610374607 774 43127166 722 281749758 759 790930415 787 627518025 349 542868277 260 483801178 622 810236358 925 125726202 807 283304720 150 66026168 257 543723111 572 674239713 885 491148614 452 955182121 162 659077300 825 4024834 279 690723772 470 403818929 353 961026021 236 501918613 48 35973179 464 403648460 277 230909124 587 334714259 444 420914365 819 404243217 181 4295006 422 8034230 326 137112327 862 831983521 325 594175560 772 106888516 422 595491380 202 299853454 327 70209455 395 63338485 843 268146329 203 577625050 507 71462695 936 24905459 222 760312211 6 886306544 620 563052810 229 215337246 777 994957049 29 363783522 564 906624061 598 736273774 161 745838616 793 213458907 64 850133036 23 84017038 121 686343051 678 554250750 304 382065114 842 223420966 576 321553971 420 463420575 977 982611355 22 466794573 145 352832853 993 790247939 602 988982429 559 444054278 996 522616384 27 473067051 706 39739465 779 818539386 711 107523408 128 666873338 352 753585819 378 621444533 940 660014746 491 209568892 262 384873984 631 787719194 918 230393663 533 242090273 610 788428315 836 745913758 606 440041398 649 891881382 454 831393280 59 463276842 283 169028608 171 9824645 222 785516228 646 226899770 596 153560617 59 502347223 517 501372102 710 82341295 898 93224911 539 107923350 907 492281268 18 759516765 258 751876456 414 641348437 12 631741011 698 195145009 899 499746487 953 83158672 464 691443218 575 102375502 5 901214929 171 381899222 797 277008324 152 628775102 274 462361591 150 566147810 296 291282000 174 584699762 794 633152419 180 639738310 113 173391490 862 889417544 639 208345048 421 178427130 901 761712482 310 960438365 403 154163852 851 29732632 901 766199091 779 142457371 736 146610777 550 310926321 265 253252104 342 857248875 616 109425335 697 179399889 803 446791768 375 883231065 500 318938222 8 880149606 645 387901681 408 30377006 747 734018108 678 137220046 581 897457089 176 201697995 333 124846402 15 555667563 800 920779194 291 675156776 192 520854716 635 282070646 139 11245809 31 709557935 127 935057993 89 220329827 489 810472740 593 183484296 826 89100765 971 168718653 682 381641260 828 652927480 19 891333781 462 659178389 357 948514722 92 500085891 194 552994244 60 836060724 413 363457712 174 912496560 393 137758720 276 818529777 927 831148188 216 314955061 40 242202581 994 96009678 947 651021177 90 163367918 863 576609962 588 123078934 200 517633503 951 138467802 167 217059210 813 112523581 936 355008958 955 422768774 218 967347910 287 245283205 930 304796544 231 798212849 424 517297965 475 995839944 148 693040642 400 402839169 585 73643972 956 246458338 982 971545543 852 686578057 930 203301089 201 47747840 623 89358003 750 480196300 489 815068517 668 596863518 93 237538616 96 932652587 355 88545047 487 719130997 575 534731268 806 448096516 444 610384533 13 630440758 454 420940341 954 400541515 798 972439389 697 297574000 39 946472648 781 791703135 519 949542357 835 804747762 470 514925026 27 182014752 463 624051430 932 527511550 695 73997698 852 129587685 293 137903390 709 766693649 665 740097271 751 326411584 399 201743000 368 532745210 915 737550756 377 200289123 774 642180537 368 240156897 51 728375632 237 865666180 536 241333152 522 88189845 835 4775952 88 686867660 838 640478484 771 256469753 979 570969761 771 879769631 444 523293815 266 299995541 901 905602418 315 178273931 37 894968871 81 857173758 601 10326888 474 734899417 98 527556847 163 197257832 281 401930812 182 754072999 448 497644380 183 237695831 927 820385613 298 589245459 251 488307181 190 661439501 156 805217440 881 42582421 391 786152649 326 727864230 924 916217983 103 659323905 451 514030370 497 302499701 298 288276073 618 981244735 323 40590871 697 793169909 843 604443300 426 609577460 751 692621593 256 219236166 212 93153582 100 846931629 998 12195714 718 646686841 16 62301076 115 724793796 606 647143957 172 633945220 901 265307348 62 831054620 250 55362256 518 822592180 44 604016218 432 461279318 616 544511859 1000 23812583 978 684559476 75 288674763 160 707255963 636 744472050 229 77659308 36 639490156 60 618802034 645 549144824 813 360884557 153 533833788 519 309348907 196 460548382 630 724398298 762 426948840 354 780836438 123 516294918 312 112390008 842 32931940 814 400566468 723 444846520 80 38264707 141 531984903 655 871436138 271 609303642 925 27094933 386 320715316 638 796313383 555 569829957 49 451792235 825 367471318 785 231342748 346 787468699 302 836669389 914 213958126 521 935074676 732 279177975 344 267329788 759 859037418 313 864911516 466 82566705 876 428600589 946 959394085 718 524632693 747 299831515 209 662555156 981 988070356 60 463088224 587 570625835 391 77376215 593 548033997 635 848703655 27 782941217 173 372193851 288 733953346 818 878722308 397 180035290 621 263680331 450 919675066 530 401362739 224 421344909 188 293218464 451 423462009 7 676986658 764 895333817 853 442922996 705 186896825 329 784949309 989 39153634 369 370251948 511 374981772 612 324475753 221 409586014 80 824109250 201 529030238 56 854608175 979 105020348 82 194629097 321 692722414 930 61661881 353 646148172 567 44314446 269 956399647 916 451164196 103 233239827 637 459117923 960 280401873 167 576911403 883 645808240 295 7098485 718 960077462 531 613607133 834 949154729 437 985860337 265 991443503 296 511691971 521 766789540 586 885293534 927 386995577 566 528020215 809 310361117 786 869027868 394 487609150 436 202908510 951 924522063 568 803541361 881 779995908 576 422522087 515 608996844 157 599709633 314 83827972 342 751028181 749 951473930 13 279921091 308 651737411 368 517839164 601 194912365 934 35877151 543 734818301 677 665516501 789 138191432 365 456484610 706 646298675 965 846532628 652 343754833 976 640610638 211 802817055 562 657741670 214 879064753 317 602467510 393 297055811 215 940916031 950 671244878 47 9002207 759 571251929 814 775912513 609 511582926 149 306199945 244 686541489 219 9580892 6 816634460 469 781437081 52 727222604 291 517839916 50 396845205 877 811501217 974 178358361 746 356622562 74 65581962 672 750696173 968 43099515 667 747312599 619 904558414 29 861962474 412 93857350 682 662999191 337 125243030 911 22453573 747 782943376 741 808854430 303 14072491 776 816922497 623 630120936 340 332786969 356 369689539 842 995034582 361 296242829 925 415708868 416 915216081 716 205991723 70 696790101 333 565597364 568 411456752 568 204838265 514 629485392 50 796895840 84 866286416 321 98726086 454 571826357 328 174069215 453 864794688 832 497190391 10 569054642 546 250304384 41 747148686 79 813708466 423 479741138 599 91566734 236 209564404 111 258426547 442 169956754 828 232883566 924 247065673 118 776046203 114 730923284 861 920150802 453 926015200 887 827602548 176 312096262 258 253101141 650 930516804 556 97100301 10 312111386 615 196436462 824 280154700 659 947412139 246 438245055 412 797030952 722 231301079 47 546926674 812 104724701 282 870648890 739 598747953 953 606223769 454 293094157 370 284599254 413 599635382 12 383563462 41 415648183 720 231950857 358 343588647 963 406086080 752 725151830 647 459437072 223 586763431 1000 927982394 336 33334148 380 630376875 118 967137915 116 568721491 222 133955397 301 859507325 381 255326609 934 142313717 875 346252283 446 211051769 335 310338451 19 898936866 422 158597264 88 869014769 376 760327398 70 77135649 992 912263926 987 201807840 642 832680801 972 421467238 753 604736740 206 192477476 938 611392488 866 954894002 580 940733309 56 979168618 548 78645662 834 325717897 170 460288446 798 676808407 792 211276204 452 490866116 245 632798743 575 368469225 233 568834317 747 123031831 26 560517976 856 726790311 373 313444109 681 316227110 973 818133216 462 679371365 395 53755190 989 614381812 768 672385852 776 361735058 869 712892232 73 403886304 281 659994863 163 222495023 499 818100025 157 926099642 499 184763482 717 944641613 987 281108167 512 582584837 183 696787889 464 91738227 893 288896366 300 800027822 642 900709086 854 514711185 305 171779579 128 375225329 611 263046395 330 779838131 105 557648168 594 997942935 436 104784010 629 847922262 407 231608520 242 39487187 166 677467872 956 100793317 805 76239462 535 896631208 449 20358271 867 858279332 342 273869821 743 326059621 215 480708537 247 52188392 638 716229987 294 623604483 576 577925856 45 610555372 78 600637739 353 1926474 296 658153694 807 620448473 473 698733801 534 198694743 720 983160321 407 343249727 363 388836399 498 379276487 431 756754233 725 493104873 267 111330096 387 590009829 246 840662544 343 46529501 537 90432930 262 838992790 724 144112560 861 531184187 988 218651602 942 736618255 508 972108900 451 599784069 306 937964704 35 748501336 564 178259951 448 923972274 724 87501904 951 240235032 254 756461162 115 169116171 136 873592627 574 120737557 449 38472149 626 591098754 827 34869565 729 715242666 506 42706288 801 670502873 302 829532283 34 749112531 486 239039873 42 706146017 58 657625144 195 630536372 814 97216303 291 393025191 424 288927813 543 607401468 577 545261922 386 272346844 670 338846721 848 621600913 440 883515175 53 215260087 868 789589733 26 639491316 456 710086944 585 76598218 601 531693329 551 713377671 957 635824695 750 175039525 289 234206114 589 122796564 379 429229717 981 247950802 950 845503537 687 359620572 714 515732636 420 570634826 560 697335937 63 319055500 272 956530633 952 970210932 136 104498932 158 275269365 51 931498509 454 582678319 262 590416694 541 813432046 918 599499072 753 466081006 892 24852121 572 523060857 452 997980420 762 730866662 139 446166468 144 84835738 798 67627145 886 338216804 616 413855669 476 799277684 166 375678051 303 183626329 393 929815150 719 824345425 760 951106859 933 759872745 187 523571903 553 82433555 855 602190751 939 638406633 286 255725655 269 153705322 913 501852639 235 761213801 359 196702466 530 395595707 512 737380735 683 183879237 327 928180960 713 645090015 924 269267352 924 530066528 826 496201276 852 38403717 987 129785213 603 53664797 149 504847172 823 375861946 417 969343139 624 920216047 725 936097647 249 566611471 538 832468072 522 608496332 70 51909809 228 229111207 591 9347023 607 509323947 191 299436795 976 894668545 481 17246481 268 549035064 136 963876463 976 977017638 866 239723737 354 668298859 543 162229376 219 195204303 732 502848402 961 684385373 984 532038868 125 759307621 141 813495347 397 939174525 22 548703182 501 74894346 837 192747899 868 974310110 730 523375699 624 949055640 30 79273518 828 193462725 272 912982416 834 766539529 400 600183485 728 949706867 8 224071681 19 19201496 309 815853286 90 603036550 653 19848398 907 740601751 52 968873043 699 337067896 383 300613126 929 854329595 1000 410875980 114 382422658 771 735235801 800 484693127 552 374184870 942 159258383 923 831423649 366 62521247 913 13863823 945 602367398 286 182321307 130 152047445 172 988946068 215 901592121 959 926246223 200 380306762 258 468643030 666 591454754 558 827850646 941 861070897 225 601614140 461 245818777 529 947819686 457 205834400 403 609273530 309 530543901 134 164058470 8 75115772 887 913323984 150 731782969 9 100969699 960 269385676 981 691745999 589 167364023 966 485607487 424 740185364 17 729212445 488 399011001 646 884747133 549 944302193 59 457988922 570 424714510 598 819552709 397 36920334 124 807523173 248 500167854 831 299580738 823 493283535 408 83782070 167 260518928 326 586336232 3 254121710 900 502482297 653 644091639 264 102005632 790 669388386 351 783826846 129 711428423 83 74100140 982 365988127 877 888274223 421 945428179 584 304760610 183 779842189 582 657145910 805 120120941 256 666829085 807 961031740 750 447762830 525 123256992 543 409415393 997 559233221 2 130329691 507 653781745 951 987147367 392 550553424 913 335135726 34 80236212 764 243554625 949 121807056 697 928074728 788 397424087 132 745882255 531 756829867 311 493528844 497 686781291 421 430440519 384 448925188 89 839829175 396 393633022 115 687214933 910 479224191 195 505774715 303 146477161 294 902589017 405 600020458 265 962899435 2 206021641 920 772970085 534 177376733 326 61970274 618 567012524 80 960045532 531 979958734 341 337899911 86 701648549 936 486202857 303 973306330 658 440516151 417 596434022 716 143504935 946 101037546 210 490185425 838 467057510 812 381705795 114 715551487 318 137250473 410 716675354 97 168348224 433 485852198 444 815528175 171 598657268 280 498912569 330 352629830 638 954104706 90 501645522 825 127235408 91 344074751 739 331452897 179 273388824 231 252924113 986 806991202 46 997608390 893 725904313 434 224979274 295 559221457 410 585887823 808 45237544 755 519944774 719 152127397 782 779543301 331 18409523 883 575912018 914 336321728 491 824252866 283 448824304 279 816329572 819 730691722 850 86355485 540 808766320 146 362540806 535 44712291 713 953437344 69 802479253 842 55964680 63 897954913 985 788649846 485 169985447 741 782154266 652 518547248 513 668600779 989 511221531 663 732508552 580 876617034 248 814189859 993 297718964 19 721607446 965 369988665 722 50734033 538 753858730 499 391529833 480 930922855 555 79172590 169 734431491 598 673654706 78 498824183 822 902343507 194 154828508 681 484335201 333 639700527 405 18645686 219 263389423 773 346242396 816 358810295 758 345418695 417 351852483 779 510065986 809 791573260 127 106600570 949 373066651 875 921127149 937 108156067 918 671801308 209 47725792 223 580476882 81 299949350 226 389569300 4 110864117 288 230442633 581 67357998 286 948700694 697 545568201 959 345147776 63 980937356 367 514100169 604 687672925 667 141568863 344 846085377 565 688625339 622 366479957 51 673283 730 280086392 495 133559572 39 890868324 136 504144840 522 731947605 79 873741822 391 463248484 675 728617137 977 319472320 717 869614535 197 457011028 576 706606235 505 408520392 913 978577881 890 98028408 145 969118797 472 719212466 948 814533790 169 335744533 347 210993463 217 892738379 605 434542200 250 211527806 233 350565688 21 888679327 66 133888194 747 977181961 608 679622409 246 680690093 633 174053853 563 595340887 297 935363456 577 529926584 161 251173127 400 838009949 709 616327492 535 786156181 537 349376911 296 981944372 69 732461422 946 590975359 811 959984725 295 159161965 263 987243964 405 386839552 395 575388203 759 709761132 391 667163226 330 646401814 117 453879725 434 813939385 998 492289712 485 243288936 204 682298883 891 838695191 395 388367302 172 306421220 573 511829912 458 625970736 385 794846612 706 888543792 722 751848720 512 709579470 853 525939340 293 44178315 55 888573688 156 438570773 641 985575444 937 399409799 474 849032967 268 967943037 194 505067884 432 343970357 829 530937512 83 549014306 615 792765072 51 383755630 269 535060004 157 305977901 711 904942466 230 674807427 583 855954665 752 627502485 370 38151644 159 664402674 922 226156559 161 974187118 125 296546987 458 432336601 240 257136687 503 691735206 255 756704643 961 799700074 345 646182493 471 603620956 709 221376570 175 127740468 965 818398435 336 635095864 639 950858443 153 602444272 318 537881941 465 102791351 685 302084658 26 883494162 324 524467702 44 6217441 159 971241755 46 927454884 564 437839554 18 272446083 112 987040823 552 645070794 714 824793493 945 690240528 242 803840762 251 307168643 287 588247903 83 32362227 757 877695060 231 175585123 556 920309319 171 274713571 148 481526563 507 492375617 34 413565973 303 53583207 714 54918887 543 714321437 269 540756295 411 362790982 482 437731082 648 348521025 333 247124789 525 801684000 837 150488058 923 250992592 597 157986039 388 336275369 446 907258107 818 139126999 615 343149576 575 572065179 485 680294533 940 288381187 932 252016210 726 78215801 585 557756901 680 772484743 135 139628363 548 724079924 732 843849809 507 954269841 463 522481488 792 60913598 469 218040309 387 407054803 438 974993704 823 847897308 285 40670685 405 274030878 453 114890149 621 177149803 570 113549604 416 690361123 265 441249063 868 636521746 316 796485961 427 860906640 689 217193401 434 987757043 62 454848635 410 879167474 780 898052679 697 795588332 215 96305461 489 422934299 478 290673652 714 466154694 116 260821150 305 408648530 863 13880704 745 507913697 698 245689307 879 385472471 368 740560325 768 108370884 515 255196713 877 682119253 262 395440036 438 186531383 94 489526264 851 286633895 706 142222855 878 241088131 603 251672107 32 636503802 772 852525088 372 902869243 710 662296577 5 624554559 867 334105149 255 337837210 996 137242779 178 340701302 697 370702118 37 303055673 416 372596260 936 68638679 778 769057155 429 405800384 80 57423030 315 831591764 416 137876890 335 617660291 914 458416070 396 989847362 760 799775405 738 163397483 740 318605068 429 860937383 132 930709874 608 122771513 821 325463167 421 175133082 926 824352092 60 293437418 988 290788149 621 843022560 216 882113899 987 280740076 668 312208754 656 293412915 49 744318638 471 630849167 571 169728799 499 159876016 359 134954241 611 138142133 67 162013229 977 219153265 712 754304313 342 979625331 758 861525341 726 130793752 949 995426272 338 932379187 661 507517389 126 744723185 196 795814873 644 128979738 116 237725932 305 809580915 302 253431573 36 902077784 346 206086298 864 872767308 994 213102989 422 391964524 304 15156829 463 948480389 457 405037720 320 72665770 730 212950022 405 457362048 762 123751626 89 234127655 633 154763974 630 507637615 889 440349833 422 206862576 568 293686195 904 549786455 315 603056556 738 353770400 209 963187121 690 29202610 99 921221294 251 193063253 496 953368974 834 386313875 84 581999062 432 522504702 959 551719026 637 360072440 958 494994887 90 762197548 804 414238949 557 192133621 529 863735656 231 997613009 952 16701464 810 147110181 960 278593157 130 1060122 251 955554959 15 712205240 788 63613180 458 216161048 710 641849194 929 543757412 84 669124755 877 125505177 993 42543074 45 861021645 716 167880326 553 952106520 229 371313224 613 385536238 16 930855118 589 801703842 271 116779503 928 377193867 340 802230838 182 718849124 424 324225434 279 767030865 828 929135413 201 964610093 658 602412894 982 490627394 137 51010648 79 206064183 425 612569863 679 188494820 881 668657776 445 192388118 615 730701042 176 374676765 850 252490204 412 177884141 37 312634497 66 756371409 199 496591164 705 187290082 575 865852177 782 654542988 608 277480973 399 364459742 155 18163979 242 121534399 607 237574211 879 944655809 732 362378664 973 622354762 627 223875522 494 298258123 473 32151696 20 15909486 946 650815571 477 824964775 734 323338154 178 806480773 524 299982502 398 515149734 531 129841307 781 273447741 404 918566951 159 868722966 899 914644203 807 159985512 769 901565016 151 323669821 782 316270793 840 309605743 906 102294988 155 649404051 420 516620318 812 744302586 218 19363173 863 582756308 146 697028441 641 519054440 159 423359228 812 813059065 825 988906862 649 383432112 760 110205369 991 783755785 229 909380289 277 16647643 823 312645372 338 839506573 111 884135826 488 928957642 731 604194624 659 37803406 807 598438060 781 77987889 854 584740153 622 484692268 888 885166712 231 695682336 628 434309507 359 434184343 659 809460004 895 417373274 143 998341857 458 579801351 973 165353209 588 286597721 44 444173707 951 266178075 728 260535894 258 141228873 799 448824592 653 504709327 103 349053831 405 788922764 156 575135539 999 62504873 614 393704520 667 288640671 418 365973437 992 211247327 398 162664688 676 70243569 657 155927589 763 36548934 465 960475852 500 813321657 433 837004487 487 712565485 921 960374358 633 861038844 455 706602438 12 428913458 968 425552235 303 139542840 939 887437258 135 206588692 889 584501957 593 852941095 728 696216079 941 240769487 751 920949535 90 342956912 833 498720827 113 869290258 490 236996800 917 684224665 234 474047029 492 733261633 78 275673832 871 486991496 87 448029236 496 852359789 739 458442327 541 779731797 554 773003354 771 809236545 92 577809081 245 610358777 923 735590274 835 136905900 571 575599797 759 89221430 762 531723299 91 208448742 535 844973099 313 681637287 92 889244656 23 652121864 779 699904472 250 244153941 800 438068488 395 617173789 287 140878168 789 752053669 706 578438179 507 424831428 440 164687619 677 357567325 196 434970915 667 952189515 434 149770050 74 221279435 406 943521873 304 974599097 851 535332048 88 464102613 490 717319973 262 565570805 281 116600242 166 313709686 980 828723038 995 989205558 421 920964589 39 28403705 256 808905161 998 652964539 763 440129722 224 127109256 438 606693911 977 195037802 176 450755274 879 750431317 540 852590611 479 371756185 408 135753429 954 530573133 454 110392494 888 596597754 714 377638006 81 480794382 236 455255906 194 969311055 577 850452636 286 798441205 880 631815110 373 893966303 465 238874959 262 309375024 263 998226900 52 32522719 548 393798475 131 593085921 11 378577444 23 940019411 439 371984088 973 908673501 556 647262221 960 753558631 452 481179459 190 706559910 744 310425853 2 253070573 310 523061148 342 864299448 89 259418203 637 486156904 956 191660290 781 472482050 837 584534783 769 562037542 877 188176259 804 831321287 845 221493712 338 585443232 154 25876613 272 406605627 152 732181124 345 961407906 884 361969837 929 738574642 803 780373836 332 77144788 382 657082081 712 470311344 314 627474006 218 915862131 17 711987555 939 102075119 630 474661386 364 974674962 171 73593888 235 400817221 646 614430856 186 262801617 514 365022637 220 32934881 476 401438028 391 160731385 969 960664745 357 424260149 6 782618047 275 127089504 625 977174665 365 525219897 472 811668018 885 957380694 554 56221921 722 761247623 131 287861006 91 834565780 910 376294205 668 217554534 888 665895356 202 621941380 883 550917238 79 127353710 287 358027842 647 762727418 601 341822122 728 666340986 696 935460016 250 421445893 574 526006453 448 461911939 463 744996055 681 209487413 312 215383575 846 859595076 988 116156410 106 83780938 684 628979728 215 849833365 539 774416301 971 912665769 966 154519237 576 444114119 908 957901526 210 218415449 497 540086894 955 65465164 107 133684439 102 693096994 130 746020634 691 205434905 98 362367781 772 693771466 470 721988602 261 579615554 927 365573286 938 265903349 94 23736079 971 274529513 88 50047709 335 219263815 608 366846596 467 886742967 581 388505321 636 861251893 909 939632496 430 793161434 787 854792605 59 725451620 492 199114330 55 706392594 552 810007126 542 845175073 936 896185861 384 589489567 771 135413596 544 262221496 279 666247008 552 374364227 770 781824476 224 864449861 587 327605841 606 274438455 634 411572094 227 571028475 119 766559807 1000 543947034 254 536708806 210 340006760 785 25381352 908 971808491 491 288820167 453 101305469 135 983787946 64 528657685 745 321018565 689 730286331 617 490130906 999 716472732 10 53046764 584 62053275 826 852309397 910 366281129 867 920027660 127 235003574 370 994987141 65 518090845 608 326912025 267 215810455 66 376285180 268 675592292 565 932453453 609 20397893 671 310974702 700 548026177 994 149401336 288 35282372 468 337511717 925 15246681 533 218298105 51 827852384 997 899727182 687 12286836 225 595421891 509 161990088 37 368224978 753 29726312 224 419435261 979 217447662 556 625136632 540 126519318 549 110946055 556 240095544 774 176681926 852 178240800 883 868473394 907 463766988 726 882673834 21 491622440 528 706972622 182 114481993 301 239170319 196 3405593 244 17324185 370 690988244 111 838295293 752 784268972 562 938980429 72 328022385 185 142135076 900 274262686 112 670439399 164 945879173 925 442005858 245 374618846 922 32082804 232 912000457 358 206277866 415 520925499 667 819322070 643 42239661 250 374393739 371 361004151 517 520457898 271 226405469 564 835015399 803 314918187 432 618442260 382 525778740 112 574032051 719 293491269 683 536812527 931 327527575 874 107226554 864 85379153 649 291560653 753 945622643 586 354731585 94 589330167 279 417991459 263 354237670 419 14570436 508 570920056 530 481892239 581 3727337 828 262503229 638 592759235 574 81051035 536 779421068 640 323750723 909 617896476 260 61783034 13 88701532 223 204874455 337 574194269 137 917356078 407 415977322 773 721021165 149 577603093 120 644830138 639 187779544 368 27584328 450 594286578 952 710061354 505 906415770 373 622745597 31 589621098 514 822897299 205 869845083 636 26486540 29 822290968 230 936593359 515 208936962 375 712358553 604 50909121 853 61990011 318 392422915 600 152358030 846 489415002 158 650766279 268 224318973 768 449225795 693 597092100 602 183552471 158 482994190 621 84969847 840 7792402 271 461692579 627 398962647 471 575932945 419 64085762 828 166595921 556 435433397 146 127030089 470 391127166 95 209697603 956 439144549 128 12179463 463 705697141 16 771557370 155 265231124 150 189802026 572 86880213 572 310291415 650 202125004 930 837570836 462 33994646 794 54560909 106 282897610 762 835188826 496 287162630 568 378579904 491 892024913 834 771038300 539 603581641 454 982499869 66 597964998 55 699290486 597 53965498 113 477366026 374 36771306 118 348114006 265 303890122 147 96978265 218 741570604 498 992604211 392 341147782 199 749272133 792 947488064 450 280855482 740 976529985 664 532909931 875 928062435 393 996696476 915 599532365 732 960617798 607 217564251 699 613503752 338 143080012 55 901365729 957 577288944 636 371418902 411 541675809 890 846340688 260 728893759 611 295083672 694 832135090 202 232618845 388 89882141 526 435284833 829 58875400 657 40349319 748 983541382 24 168994335 116 968350069 152 808653698 587 959626832 863 316366534 688 480762592 337 378501829 598 722857796 634 755232677 69 475160436 743 551806746 428 430192150 297 44214351 311 81775866 480 907916942 3 881989705 755 923657998 513 579078582 217 86062682 794 476098009 412 112834015 574 818529953 115 738587825 606 737187233 697 911076217 118 960239341 946 265273381 665 561116161 678 357307816 985 786527281 194 371675893 730 774573594 301 31417998 555 504369832 184 200797065 486 45868212 550 67704308 401 706618171 824 512033589 228 276085734 305 505547979 465 480345229 902 992031993 735 30770742 336 177535649 320 457034149 798 187060338 855 452862571 251 798256106 697 649157909 393 391341999 57 212553663 18 680421156 249 394227146 46 367721895 249 461571495 473 221507369 483 518757780 198 688580364 779 821334040 481 768695982 643 458556787 536 664211346 829 678586837 760 561710597 210 35691701 202 534628975 507 938665463 273 665439738 898 951629790 241 429498932 992 175786227 452 209565052 411 169059214 917 204986050 401 935599203 236 31649213 868 680032108 617 548416879 824 448038027 157 712607837 390 486778251 132 443822175 737 376426943 273 294626514 739 391939212 154 259177566 832 490493038 659 878052776 295 669314319 423 615219024 278 588097439 720 316315204 13 381049002 407 27283240 647 448923039 641 102443971 838 808157035 608 929922249 539 96915241 848 887384952 473 40819949 156 402946752 550 226838624 908 237743654 1000 58597769 454 363815085 137 581945042 466 339769646 84 687321414 794 669742363 361 867358873 585 511070135 447 115228495 486 679056119 602 223705583 707 991768265 231 851614332 224 886732488 536 26353431 311 574050907 916 750389300 741 192955102 670 206375170 417 609183403 433 725287074 551 671152628 689 711354969 220 556576132 339 465462635 617 92680028 476 144067892 993 440255993 887 704694081 877 417522330 772 94874526 914 587224005 954 365319109 696 8633483 161 567671394 465 839848850 82 486770553 350 469280254 28 768540275 522 111819958 54 429896339 364 102313333 799 521359008 488 275468937 959 438721943 664 434610761 304 474556461 582 582956993 168 978396345 144 185271101 131 645913910 819 464808468 462 289440788 651 182660087 369 666089389 12 296628649 745 103844461 776 366460497 206 299537792 846 619538329 919 55059690 687 891692929 785 225110662 430 668389116 928 504615464 559 285493270 631 598661949 974 440859913 922 287503763 485 148395368 959 641234051 415 734306999 188 710722811 833 621409927 612 417321284 287 886607491 730 760490571 638 841685407 705 162267426 175 59596372 669 483330198 802 308427517 610 648328339 327 935660819 86 31356328 926 265951865 4 606438461 141 186255232 72 225498789 353 469188336 340 489281836 786 384941411 822 738350942 2 365143570 709 523204142 788 643088284 125 971897627 439 16617314 466 303381158 404 280039862 744 138131275 277 482589040 372 838665522 564 585753774 331 570423600 609 692808247 455 548846571 523 263312672 347 245643398 478 744641945 413 125685964 42 498743284 806 503797882 214 793840900 499 54650115 426 347179210 818 143228747 317 284705643 154 276762219 807 608288216 368 236740387 479 280451568 489 271988328 744 981291755 60 433646873 937 90704235 143 41382539 419 48780653 476 629034806 382 693643375 303 529285212 724 274986588 894 339687459 6 210581162 607 97465938 511 769180051 996 142406572 342 663422117 691 943653722 746 536194489 486 485959904 668 531155042 385 863191756 234 700935618 916 46778585 869 746702640 750 880518669 55 501405659 759 915504103 165 394941441 324 609667990 68 62144117 114 758790235 959 15061042 916 245058644 569 764410385 215 461767273 120 304737350 826 487861676 947 544734029 820 309314619 55 776661270 26 151585386 66 392806941 707 200425287 262 549012499 286 312497822 902 880093644 889 238114061 387 821592314 552 85905911 145 696206011 542 998826883 191 900189072 567 891509431 693 848486480 738 917717879 468 77042235 803 94748262 705 631157730 433 735983970 233 109827063 971 69679602 901 56407878 117 259012585 557 3026436 498 672746905 373 81825184 132 487460538 464 847765055 379 870116577 363 392091638 859 225039559 505 993310951 565 72005109 680 258577317 311 990222060 73 432686663 41 831328866 966 913913393 347 983160244 146 46640233 414 268305079 702 275388406 625 222203593 176 155127086 837 901603986 938 184465725 177 549016986 595 493535171 723 647835905 723 547717693 560 91778903 203 536131644 251 296162064 787 54163716 427 560004034 979 599060191 308 101256788 525 707672675 267 593990620 639 358006025 159 676839034 510 622330448 288 304778198 986 411745027 112 895985858 743 386735008 803 831041199 861 566563477 145 1816906 879 568355086 870 207627515 77 572938967 218 742376453 966 415341781 711 736688483 944 367874306 185 528612217 253 250451688 704 965689267 56 888426184 809 71053460 699 789744003 359 11708809 149 82668482 423 839675100 44 362559122 192 723938883 933 898308622 464 625557130 569 619268531 471 85281215 981 395443457 179 99321576 970 76795063 848 732328221 219 82057435 564 304736560 872 58324578 709 771015606 984 317901904 286 937805006 840 54023258 373 206133166 322 837453566 879 578010334 262 176855923 261 924883751 156 525135104 929 118170609 584 314402036 440 930275878 799 117396594 237 407843028 532 665056262 709 662114281 455 795689162 161 421355143 38 309949123 239 86221282 731 536562409 862 304736842 924 947792252 887 909523710 126 499188735 951 873554070 491 384429992 710 699000241 515 601967937 66 94646472 747 527973265 238 554642116 930 598282140 646 3525611 435 774043703 282 426957267 522 391076225 29 164496375 530 924007800 567 373760815 442 776413316 820 892843939 122 360670607 583 523113007 645 425645031 319 977948768 777 669220087 17 416506330 311 81188897 993 739574229 757 552840604 0 87923185 718 73264586 268 177832067 440 81562834 917 147869699 606 87402719 73 945453761 832 362238069 477 434443181 428 781272322 495 72895202 95 69850940 280 621924114 334 339139788 931 401030138 177 40069427 644 59966768 22 700688588 243 672350291 190 927373657 377 741503961 978 300307186 576 201205786 854 78807816 368 581079430 312 764757971 260 180099652 86 807830595 774 621384428 265 30905139 445 914068039 89 165121486 958 458347061 61 830434824 280 338378927 998 386322247 76 876434419 178 7736766 85 7942961 566 33335668 608 29161838 976 150587578 287 207445502 511 226431239 446 328451653 735 415353730 117 472969172 720 948121591 154 238422384 91 10117852 742 570777777 143 548337294 557 729487719 952 904707004 852 805368448 368 636433213 240 225206687 152 392641047 357 8054454 175 121445245 623 851305665 489 269626088 155 452582464 176 455262187 859 422861806 128 690370297 185 491070572 401 947793140 342 480055453 303 161460146 40 243068080 331 531569624 39 126904369 398 749592308 113 151014115 956 34198656 610 60291622 672 843477412 724 917007688 252 723552675 759 678709236 339 463295897 705 468933020 151 68381997 819 727246947 639 975736966 220 296016822 201 570274336 177 669071312 364 83756816 260 763042156 863 307434844 722 987449350 917 663608042 707 908399646 715 935381149 226 964061456 346 425485738 468 938490485 678 654264362 61 232502299 454 671773745 322 544330004 270 96509685 471 381636853 911 7738048 695 22653974 489 481607648 198 752468312 698 507848076 813 907106228 530 249637379 360 460465327 732 847114261 755 845133427 622 490045880 899 941244649 577 455800222 60 437438742 727 545060937 190 175889708 745 513447376 420 695208680 832 191479304 566 588002565 921 237441723 711 415220626 432 180468773 690 810311993 361 772988782 497 960850746 569 206984401 480 45423927 503 303010426 611 710109211 171 542992110 807 498881185 719 36344055 779 573243366 867 770639997 701 221994920 971 101800293 901 984954203 700 867979183 924 872032604 557 514142299 311 42572125 535 351736736 3 742230792 804 869901695 211 795634762 351 447004838 478 644160716 876 744328568 903 920122795 709 883611936 29 542905212 495 231143945 669 838468785 935 68770479 542 104893453 538 571315473 489 744839042 970 396944459 958 206816304 519 108157686 630 519068370 22 531505377 48 774894908 63 625381446 951 238586408 343 560141349 709 464854576 645 310373860 234 349037811 909 103920997 754 760425753 591 793856117 138 331819595 6 651463859 784 38377538 97 430196310 72 393074546 289 390868532 521 824128038 78 666820748 852 485744389 611 864317749 827 596817680 699 839632561 630 676723317 799 834704058 187 341974821 609 547359403 568 448408059 720 165234197 530 484655049 884 360924675 748 84866537 622 699737931 973 88664289 479 379218984 124 185907159 3 507138390 839 91079519 106 977331029 663 266219274 293 774665857 894 373231146 788 609596562 834 357723867 312 941423997 872 655125407 245 954335509 824 343879383 52 104191163 117 751114555 293 920346368 749 582127178 58 434597438 507 808430534 515 925842218 791 156038656 214 508950822 25 694246529 314 385705857 261 833227558 697 705743258 340 93551853 631 321250404 487 26269298 482 584765659 453 799695279 655 853585252 952 775817724 903 193018608 908 562289334 466 13628525 815 791702314 285 836285252 9 492556971 811 723307072 588 372428790 825 659679752 435 957907308 652 614979074 426 457857672 138 859776087 215 122047747 782 597678520 669 505924201 700 694906887 202 549550495 716 167600377 488 242828720 830 171531505 977 321175975 969 651775586 222 269367634 270 843284131 45 383398192 196 707354700 626 963601995 126 962189623 839 156700112 540 166028884 482 151469218 791 512115062 336 873669354 899 104268999 820 265928989 245 895166955 123 775514800 121 434182806 616 521837321 105 395586762 624 151860797 374 455824401 672 287445837 566 957171433 624 482282646 783 461153994 396 796545943 180 758740960 826 872051628 328 758744703 359 457095190 877 280105813 69 291597888 466 757895109 720 424860396 930 896285421 934 467413828 52 325137018 563 206654798 382 752753646 316 239301907 232 487967861 621 42507362 721 345421859 483 515736358 624 495081707 908 688388163 752 934862904 124 344597215 34 282897181 859 847942919 775 828914067 630 693933495 658 688890807 830 32278547 290 447560236 742 931709931 662 497276069 729 348405545 488 638903212 41 421661625 764 129621470 248 816571555 968 327720379 537 157223919 896 475770489 89 238222013 599 213494918 361 553715436 231 886054355 86 588363455 24 88314600 138 785165986 811 473014847 561 452414742 542 882326396 891 99466179 129 845593127 425 658275650 602 47715985 0 110915683 365 983319482 869 737431802 904 196082375 225 171706105 493 785372039 230 753156618 737 395005507 32 857283301 727 912035491 273 344158766 62 394383666 546 688164144 683 279031400 472 894122064 137 4854515 930 501337305 226 452998134 138 540846553 186 791259929 106 844435134 150 924992545 283 152733397 473 211429526 431 7181249 573 454316779 424 30959253 377 454947422 674 896072488 469 104810686 508 600894557 785 149632124 596 193391692 883 697008502 677 429485319 878 881059519 978 293679403 938 45752326 936 579218853 264 994571807 67 495138229 591 974931120 615 24803148 915 298239781 235 573831149 181 111577805 597 536483209 173 317924047 434 963502153 358 775096453 321 185067443 960 833592772 248 263074155 299 561080532 133 711198716 601 869878910 226 589915781 774 994201935 583 627077296 660 765552914 254 942116320 936 791498921 530 678346546 511 822011770 129 446182205 635 599485543 932 956118145 337 264576702 51 197301257 350 421611786 543 211094006 28 22796616 479 143013406 721 637921808 974 50041362 520 291106229 223 174947464 225 510179438 533 512286993 772 313563284 995 435662322 176 173081089 877 185599855 616 112396150 658 814469039 104 614149052 691 291572978 996 609008248 672 126504630 45 453333448 558 986711684 1 88928599 947 433995391 580 262847470 371 923710561 755 760853169 301 574097193 723 685293129 240 790050487 159 504603103 72 807866998 691 940075914 669 313501157 870 372618560 799 168699459 970 877119412 157 899857147 544 101545646 191 438838853 706 538493460 239 886443062 106 748896273 719 299839266 418 67727685 169 488397926 768 923095645 941 468725589 686 950630451 372 715197690 922 393992758 545 794061309 562 811330813 804 267478466 379 903714615 815 579224156 850 678083396 228 757968823 611 482184542 950 629231755 177 649063588 714 680619057 621 49454610 879 895244871 167 547614971 640 128349136 940 734988020 807 68500804 407 611689738 61 620824850 455 861837811 497 731321448 369 212926904 887 692174328 716 520927360 241 470825213 390 480609242 169 381534308 629 464670048 783 668993220 579 891834944 376 333419063 307 558169858 682 667719111 730 80017093 712 265981670 966 713481277 598 283082552 615 150981547 645 849996893 283 190725085 108 447223396 504 732739989 587 822541088 53 632295475 661 171704395 594 459626335 65 27738486 2 957404924 333 896751438 236 187202777 764 670056201 646 176214646 116 5873010 319 853248590 520 92557372 280 720086598 101 779538116 578 650296509 837 205215731 674 417655952 249 60271370 321 713051579 722 731976851 889 698516706 784 898104124 359 261531670 866 908274038 720 455363971 796 198382135 746 728400222 780 54204200 365 499390952 299 174968495 876 951872361 988 851713275 742 596098177 250 371308829 160 320736384 829 631115107 869 723510206 329 805881410 223 717595039 872 976160229 472 59892897 854 133738855 341 80338884 57 592326069 801 575146925 852 857154637 8 331581156 834 47612665 676 526910999 865 761718404 849 598248094 449 121972131 43 9307656 267 87792576 354 363342918 455 236929376 609 14605411 482 998257269 54 296158556 162 16409554 615 802712102 735 165259518 622 576907677 219 751510091 329 323257131 235 493194208 833 16145382 547 10061030 318 487435861 152 281327845 731 987270626 588 180018893 21 725148053 609 649613376 299 216213596 840 741350682 37 89917688 540 262412820 734 966592281 663 360302661 494 802269394 400 108124204 340 670651493 391 483057072 978 563948847 341 619391948 437 274864302 745 289101252 517 489936003 707 667982146 128 871260586 692 493971738 720 860758040 671 507015493 172 516311400 134 310204389 520 121216180 108 726653708 272 935687495 941 351835737 13 731363700 740 986677071 597 784867965 219 292413020 584 11770088 813 771897085 884 542137462 888 43558411 995 823664808 954 898888558 387 465487213 793 102075963 511 298846792 742 683463766 675 215608955 515 104099724 218 334775966 900 661525165 817 702288178 412 485652190 2 904789939 914 153552890 75 235154027 655 641418638 626 351599223 514 808213990 795 73216795 552 794601377 148 210057917 669 166641857 108 193122595 344 851978863 20 512620745 383 534798725 589 700112565 869 839292558 434 522673791 851 294353495 833 114779509 373 894623745 384 69359910 379 762963185 983 547232847 411 507511046 891 310325089 730 794685897 499 955012451 801 49629519 466 875624847 503 248205255 904 670288224 752 72104998 149 298455687 52 222116356 539 470496746 109 481228838 725 235970703 883 141864207 568 602428225 459 236648914 871 646821994 916 264889985 894 362290612 746 399532737 775 728011251 499 414136270 59 309421021 737 444690217 133 312937479 469 247697230 295 600790754 489 442845824 329 161082464 445 817748768 636 412069105 997 917998204 117 168553824 855 437218500 367 885873482 995 543876085 955 556545207 46 245368780 876 461584491 332 133323466 763 940076459 504 111127396 559 83887159 197 860118146 174 422223042 42 50253600 744 692565049 512 374971917 933 826354714 144 752301195 127 292455903 105 319193763 836 987382681 624 490766645 478 193872511 108 787985905 496 2371139 200 664680639 542 41193997 362 774190251 11 850984158 480 818897348 342 273566591 300 250442142 369 302885594 906 908365814 861 699540073 924 838755659 548 323822790 513 249036526 997 889693351 763 316517472 738 700632703 186 934095460 805 522051057 109 42628694 855 268489157 525 582764797 840 741730604 960 915407966 883 983685121 919 847992246 754 520937329 800 785258596 551 538456056 715 267087214 633 631273616 70 746145643 364 941035239 381 562796669 112 386239326 57 892337686 136 221432188 576 549562137 66 930019114 531 618647083 74 492243517 343 43086199 889 167588091 830 685717351 345 846388056 9 958052577 962 130059002 692 372668185 41 360279927 749 102057417 768 187764172 193 420567219 500 949273409 522 966128687 760 910745991 540 206941235 325 72234041 762 566371940 662 68291052 91 323162952 784 836514223 626 649990598 238 125975241 887 154539762 685 846027489 418 324567050 852 895851431 247 689664859 1000 372366476 328 187016441 554 247280928 717 571121479 475 530433066 678 694742383 160 90049046 865 971827677 945 223612105 881 965140278 58 306754465 699 851010285 638 996398344 128 55323529 836 427531696 138 606550579 914 410476270 865 155141443 46 824389405 420 469492411 41 929322221 805 57132428 669 596076166 650 129034056 148 460829851 768 427177898 175 893160589 577 626310333 575 248789057 33 519874219 236 971821164 388 182506492 888 503957310 8 425024050 321 699356018 953 141276969 187 617339669 979 912757477 34 185670129 488 194939351 248 864852006 81 817535486 773 756722710 923 340063749 82 75467545 64 807005667 714 327946088 863 828114904 355 716306248 248 789975378 421 152414738 611 90039505 154 826988832 482 195642642 639 94758010 180 659206926 27 454819643 409 852057268 452 782865131 698 681765675 547 918128472 569 429675093 748 394986429 967 633958605 569 7409084 271 854086675 309 507436195 331 221705070 103 810429167 226 843161514 696 345665633 917 398927919 582 5618297 5 699428389 121 885778805 304 668109479 98 625108289 989 577066054 976 218310478 280 237329519 275 449983580 293 775006907 373 73575639 546 573768505 369 324142669 293 981865644 473 115816307 329 794130106 521 203520374 961 307532437 288 226693002 876 268752437 261 394871040 241 361449198 67 197782945 704 61104104 815 724884748 130 734564909 324 289515786 235 804159172 946 822181288 981 500609567 387 394781864 972 795812669 559 375430262 802 315848405 843 957218361 158 765385944 491 124548338 783 593685603 544 378649929 838 473588931 67 949038328 549 698843732 783 851224225 142 388229494 553 767659436 253 8475609 779 647058268 765 590155278 312 929862690 948 587445647 324 212563942 529 509036869 938 888837261 898 283689051 293 164291994 845 143369138 869 389351581 944 537919455 335 427816120 840 50482730 192 42658885 131 259683130 770 824552539 157 84841016 644 195320294 191 695211889 414 257243231 617 993154144 997 927929631 704 205669333 487 650210639 374 217087733 18 843546950 566 533081883 892 240289566 706 858558914 82 695741791 858 583207921 366 303325508 97 952918849 149 937150266 893 578359749 334 620391902 660 18579097 131 343413087 829 517336965 331 129056369 232 851498749 620 615040822 244 930578820 696 395619415 991 119758218 210 414904647 247 275507695 658 303585522 863 992615446 72 57034212 788 199448225 353 16746563 111 545146724 783 120713179 765 517216940 979 910140109 359 346388177 637 849118777 987 57152154 84 590076714 906 429002067 319 845417837 794 128115834 730 924467102 752 451307430 816 18295205 863 289101722 174 710046192 631 696106834 966 17331065 549 877431984 809 804970100 591 389626768 344 189705155 396 768498720 202 865299539 483 725397879 57 719610496 39 74075274 489 563683005 107 778557759 491 39478356 829 761882438 571 284438816 474 885311848 553 796251410 24 590762299 97 427104111 717 927739269 471 940114480 680 942571787 259 620073074 480 637843194 709 1607993 536 688278441 358 329419747 73 350809236 588 534333321 867 527145833 672 494061384 542 443999669 660 195450553 889 334589708 908 777294122 11 942298626 529 537547755 726 81502711 125 599840602 43 465803697 334 86343040 10 45934312 812 491708195 357 858109968 193 143318789 796 610299828 718 412701311 347 958702825 509 693026003 267 498233368 684 684719504 851 43667571 128 363088557 15 645567681 670 589885832 915 68156569 438 414641503 639 734349684 317 297940974 289 532948596 363 111917020 496 218313759 936 172880483 72 433263535 426 449560504 895 479862791 819 44937845 995 701212003 323 953184004 748 369159025 23 585406942 545 997518228 612 619821571 528 243866686 605 242162390 240 149788483 111 178905174 29 11194131 745 962168451 1 201236653 377 973787463 77 317513971 532 191289989 111 967944715 333 273406035 454 234688482 662 837476534 924 806151863 475 790563791 948 356090827 638 737538527 503 101458792 302 921702397 781 523916215 695 656681494 361 413716584 59 433347018 172 165125018 863 106622868 897 897339256 662 200303046 611 707107027 167 248858599 35 524205314 73 347861109 994 7310510 410 455137097 653 334953696 321 673716288 253 192439914 541 222109846 959 897107334 744 908861585 652 489956000 68 173918857 218 67007331 56 703250612 236 153921345 523 84614420 999 702243571 525 895549882 204 868793978 935 138303012 720 838251256 43 887550902 933 888123262 899 442613846 373 605844332 663 916240624 108 22769655 113 455987584 686 975633823 96 99511931 985 358851241 259 859256948 360 758894414 839 654833437 414 342061412 161 366886139 781 776209778 48 290186700 815 570626082 465 581756238 575 4428959 295 913704089 94 730638570 22 361737892 96 136887018 746 124167019 573 945196595 246 199874216 643 68906174 788 62429801 181 633126116 515 200582492 96 968400936 389 885768115 335 346927125 333 807945093 438 616183929 860 164668996 517 149218409 562 349788748 957 639033641 4 443427672 135 39591111 551 468453257 873 737969071 68 239325038 125 758233334 905 981566497 965 823007521 319 11270088 280 414122525 502 638442239 725 402354520 252 852684454 181 114215244 285 188892064 744 35511562 929 293397896 441 431431447 916 369515098 53 305088167 9 138864632 268 373555008 896 812645848 614 702378292 341 488601221 263 450702545 180 960862255 221 190790220 795 239699788 681 515499465 950 162721826 371 833147593 243 813972714 530 515199452 665 950776427 790 687856568 830 981856688 619 267574027 54 247687594 633 601290103 190 848266097 811 245957620 237 742713076 513 655104287 391 562495790 401 192657995 119 966640658 547 378975076 92 865358234 375 536609948 265 684814755 867 71092638 646 480036787 441 860248 420 628783740 926 850302623 211 615117644 781 603368969 17 215591594 252 593476257 666 48317650 535 704670039 608 512685592 74 563663147 174 86456717 744 388225643 854 845715405 995 544432221 50 77804050 105 487763448 94 559690400 504 494846023 407 604801425 528 238311788 174 268098737 146 807078792 939 544683525 79 936849490 687 563028682 948 599308564 161 990200509 223 301065793 422 508327152 550 476271080 583 935421165 423 169265345 69 484237406 232 43902965 280 880155784 774 288963372 455 140231071 521 287278443 50 731726160 225 175878455 401 65895108 852 559292646 646 610803583 758 980476664 484 673119085 854 63280434 796 559844644 495 236290474 492 168492036 68 18861705 72 831466510 298 719052582 747 219388262 703 818016173 297 417266834 53 901369056 85 938225474 206 831690565 28 65540956 463 56636861 902 308487115 816 546720972 367 913543401 490 712347492 198 996492815 47 854252644 795 796230554 222 543260316 808 348515361 127 124450904 64 257427711 603 756635812 640 406492341 857 422154819 664 547674104 49 420506157 455 491651541 555 551425299 5 822485190 89 690027332 634 156677650 683 851265365 282 474375482 633 158677156 127 658101607 723 668308844 599 902493040 872 355214697 906 491003458 170 973780645 182 670159449 929 935079831 569 956422861 261 441487285 798 27850429 948 959860042 8 888073400 860 474385879 979 109877306 581 94326658 366 122233714 135 664342359 100 138825401 80 142430137 240 760584073 604 525438894 427 151465420 961 896038598 557 607115685 625 153961893 580 810288973 156 866972334 449 795186344 140 703883841 217 651187694 368 707036875 933 669674790 708 433078677 132 11552698 104 422389568 391 856263163 546 517658833 955 515680318 918 958778363 901 441059477 595 66834524 503 738447110 530 784712950 66 671923919 843 906170577 803 180406096 529 354772645 307 748291455 126 979956243 152 26952287 659 978744416 4 160216178 260 875412037 781 186746709 304 469862296 742 750234132 519 194244126 28 749550982 931 56009194 254 776496390 51 897754642 199 763060971 396 802850202 483 712980558 795 130314863 740 289978051 607 709472189 995 847733018 552 361501635 867 685983498 560 541154503 769 634647974 954 691142421 779 309496485 928 384909840 132 802959326 98 723360553 231 686437876 572 152893728 981 489675194 318 51610725 114 26924219 693 998142042 152 231739968 795 410745610 692 79368896 228 413223240 802 50356864 992 148186295 144 478939337 858 912494166 759 357741109 590 195075513 207 526842453 885 263760822 936 830440797 314 542098832 798 670494403 227 752356688 642 221902550 430 202147952 997 338672833 638 528574175 873 522897883 944 363152346 969 800328925 390 85027948 352 278343736 532 70889910 163 232833029 662 2235445 689 794504117 827 224019205 713 464388586 7 889335267 935 912612558 762 928492474 776 768087744 208 380028732 304 120741110 63 192536258 57 772714072 800 684860850 787 366108050 615 381528188 296 281348238 706 700540429 84 927644673 103 456653926 353 416658517 807 269691022 229 593846348 428 494773389 748 71514555 476 594201926 55 340833991 80 340618201 177 999323030 695 358833532 591 728866186 318 111610873 124 809884613 934 379031647 24 362153973 56 332835179 301 127857367 880 517010626 461 152838201 616 433547205 177 219808918 124 466732539 371 37978428 915 7779183 635 528308869 904 390270930 784 666537839 427 711289093 386 453994514 464 482696496 64 758060480 697 624357830 268 626380201 157 878952725 125 719059074 594 449215870 955 225652400 559 328261947 849 425060569 304 25791870 746 248870885 888 542247543 584 676178799 672 229410379 365 900993170 838 175676292 236 91143808 695 577029396 945 535001827 625 309370594 39 260217811 593 843372580 418 639816896 957 334929370 262 746135620 961 595070226 739 22278612 5 887462804 325 61657581 326 611766353 834 81253796 367 972496496 67 944900546 933 892994502 510 966264569 116 757790738 778 179675478 217 453770535 713 196588875 24 793035481 315 285064226 639 379950857 171 549495222 287 777058814 767 137805205 523 409805438 407 353041870 641 267876226 300 392382422 243 966053695 117 218134048 421 207559002 278 51488994 383 218699656 394 3044370 460 313486503 620 611579758 88 153449303 525 136522940 642 730838726 717 90354143 392 832422672 337 276934958 821 234685079 256 167853502 966 630769763 492 163216719 789 871349749 587 401200944 471 948914228 248 971593653 342 68835762 269 448039477 40 35211917 663 429104815 612 239159272 75 647094650 876 661631915 243 552290672 275 829822420 226 943807420 3 580247299 393 932611475 236 645166479 910 466313755 194 832636601 125 770765882 963 55203684 411 418507673 259 665967745 684 243358831 109 364116760 622 541656962 758 894902959 867 211554800 104 912079975 415 941931144 190 740323698 209 579679776 621 707975930 856 584128842 64 894783457 803 668903796 94 226238397 505 197355086 541 407164844 402 501031246 58 843377111 2 122537012 316 229364798 927 148329511 453 512610627 31 679230095 1 335040215 589 686946226 531 999768331 139 310780392 848 190114733 735 553102324 957 849687523 65 60802691 802 918922348 987 418581507 587 779223458 225 895295522 381 818141267 246 480679904 446 58999658 402 30429754 500 130411039 739 668806975 488 94950430 219 475260674 400 637945232 152 953035141 974 284903489 444 509944094 502 753398619 0 632878679 212 735784858 721 136976870 486 754967994 891 570257980 627 283480015 195 840086848 210 38144073 468 680900629 882 631312972 984 762861740 563 140354626 345 252967196 545 648956444 235 289157749 977 998164114 288 144048984 154 968183048 553 973546071 862 102617618 189 911622131 251 984417659 640 594484790 985 86458648 154 697020299 163 923250781 490 533285893 46 862815598 35 615543739 692 173594533 319 106143589 76 741716643 403 893289379 413 282556035 118 227805534 95 41104129 101 503442214 417 119754022 588 447308433 251 430209706 837 199486767 577 653289029 785 694246140 504 311666549 747 472288701 563 680626260 664 540910269 701 492032021 463 726752203 875 463394555 529 772866347 145 538405742 849 473529938 643 769177642 782 799832851 66 380603048 901 856746648 838 786824943 672 823296821 105 449122500 255 895417712 748 675616484 661 378227186 876 580428166 348 571616843 65 924757342 931 788068907 391 818319107 664 544173094 230 877559908 148 216842319 469 153623688 289 375992498 247 295009144 562 344311341 403 957133964 424 823589045 714 870162324 713 34910675 46 202870295 155 471312179 920 768422669 102 614179051 761 66224244 864 923184385 953 382652759 811 443277472 972 199310116 750 353300992 213 823588503 983 783719847 146 974284105 458 389793477 917 861840146 772 825959050 730 247362879 58 912620919 65 128263886 766 461710304 610 452396658 124 295798108 111 418410068 591 240141368 618 921838266 496 802886671 604 711658226 259 552073700 750 258691941 654 779984826 568 555712540 924 856965206 311 438831831 930 992017693 223 958755668 18 682836227 196 258320016 595 729704508 840 153664205 425 917774607 393 352989718 391 861528355 899 554707758 761 857908629 198 58152642 133 952453430 850 492304397 314 357194138 752 939445720 931 407964263 448 642873929 109 716705900 382 143811175 490 332857632 96 382188527 197 952119829 302 751436471 441 158254045 551 54883368 158 631440770 997 878083104 694 397644959 658 188253490 667 142788719 262 48684706 444 215118956 492 457939816 935 4582351 769 992379064 275 356206940 341 33258000 770 840448381 230 164904423 748 843562604 260 402729797 731 805403421 454 368149575 773 684650543 970 201508489 818 453421539 386 317357914 926 85891433 525 922295201 903 847926067 150 271779855 361 389492850 169 619617015 474 617076080 146 95269392 873 10303422 275 554429149 610 998057440 1 936041422 612 654433171 967 701102889 320 778706021 883 106643910 961 840360067 815 842960691 935 842498880 538 820744495 476 653789114 391 713431359 830 640046538 825 3602057 910 550536928 556 990191834 473 804677545 665 982223915 430 550079600 988 357197876 985 840396867 872 355646000 53 793391901 231 113898670 136 849373862 743 108008188 78 877212493 458 888914230 821 860556469 222 919209511 31 433303847 315 208401945 487 386532879 305 911687560 108 766133798 874 211380675 216 261202441 495 845111856 649 573235312 243 859996144 223 997878986 399 63288467 936 209173489 649 620554046 368 686270891 615 237292204 322 81626011 287 294841491 371 325053302 183 292851803 455 660030174 742 410316339 148 863720977 770 213588817 749 71056098 492 950015692 769 959663929 258 67499342 498 676192331 492 656792121 500 817212458 428 141330390 890 752363819 152 808887946 926 98928031 773 891250146 2 841778660 821 142915172 760 459463381 46 524602451 729 531173405 213 79310908 810 485201708 421 230162346 94 127721078 553 795262579 733 408562331 533 205881959 922 199005745 961 348560460 232 487546464 645 757966035 333 590863055 318 352520892 679 338496598 382 266857239 141 823490874 396 583637064 641 512077776 804 998736088 567 921132941 885 967913838 760 735837896 131 593682600 506 838066254 23 438951781 218 459997147 679 262993480 530 214778609 899 587096167 509 634079054 605 939393676 639 100822025 641 515974309 689 560926429 807 277603524 877 575964957 384 492340872 922 711647392 450 429714007 368 869001930 243 609755301 454 120943578 16 57636255 341 669402015 642 717324381 60 189223406 85 359461957 593 409774884 582 518003068 720 669832008 159 624850470 679 30741418 873 662848301 381 508129729 655 670842557 245 70606010 350 529878656 648 421431663 693 389228312 63 872213133 341 162773298 660 740843080 765 751019196 759 460502901 294 930939293 109 430706775 514 426716756 115 580590875 169 832515223 330 503229442 809 260898540 22 974911813 649 13541009 656 159021816 331 262527008 95 526438456 783 54917465 200 543161361 106 1700592 669 652788360 113 606928414 310 669394762 634 386324726 585 295544087 685 871138442 256 236717140 541 877770968 142 845282066 654 23465382 5 149636019 467 884373285 936 184113512 727 400473199 36 718660471 213 646821930 934 372666701 435 744994323 782 748616698 292 129812077 209 13808780 860 636083976 671 985712106 244 831173379 40 601089313 971 586426068 814 840714625 916 61409111 771 377909567 606 742408866 932 193597276 479 290940977 960 482651261 291 906350624 625 846815428 662 662003246 88 870883489 931 91765912 109 263362490 315 689010048 546 931064357 657 136819518 646 690734221 831 995484281 556 988407162 560 434441630 311 225552275 527 231803620 927 707393350 941 874838948 797 815071422 931 793627054 282 112082361 767 666436914 417 260307237 273 300819390 125 63225186 63 144100891 593 435126457 278 75127694 959 123969279 108 351643902 57 384574702 440 69600475 157 303673402 682 78064942 482 650960303 481 311548978 414 128363805 255 598639544 423 424469377 158 503810717 760 630392172 251 798411557 29 553363740 116 607283072 416 901132708 203 555463623 359 624989247 607 814162359 582 702815957 604 471461755 559 942561163 464 764362440 54 503334208 634 719762939 590 620830121 257 515851782 64 742959809 428 276216805 419 402916948 737 48455698 646 73381531 51 347544210 273 821831995 51 596479371 949 198587408 409 267505864 611 772027511 690 85541291 20 138923428 97 257426710 19 645159918 60 353412827 709 542930400 606 540275028 792 539561048 473 75290958 821 312924220 140 401496955 35 347241800 822 336820055 879 208311241 574 656469110 266 484791428 707 754460620 288 230218566 863 376420663 654 999710004 184 535599670 345 859318238 112 913225936 88 95942563 257 948414548 770 15011709 288 443315625 896 355288756 982 989407322 36 4081149 908 155840221 609 767043591 272 754214687 850 535255551 625 406548268 985 175537443 257 344130755 870 986712253 10 216528715 697 763937520 628 660694222 629 794167823 241 81465126 10 337991451 294 314803251 873 679214021 138 501423678 243 206781268 962 675725790 416 852729454 88 523907967 983 637322400 90 809376477 796 963973596 161 988620481 427 877417343 471 799233452 378 394850142 544 989099960 792 160218603 361 506762165 642 226714822 397 512431252 298 383362424 545 171378950 579 919564191 932 891476575 215 949343423 55 274202420 968 575759083 306 422856981 411 463790404 995 879668622 914 587628054 414 859629561 698 736523314 963 539459694 854 481733134 608 964000416 625 657890094 540 939071277 156 509389001 670 846278495 492 202031991 307 190848899 894 42463242 50 175026213 897 912836606 526 799194384 196 422194385 272 338665226 120 404195366 825 252625670 281 132946308 652 971363985 602 825152642 75 457668562 208 152720680 675 864866141 941 556771880 338 188628343 792 120394012 363 759862795 87 979444873 745 178846440 129 310945525 620 307983012 362 121081300 764 667664641 77 463265391 141 218988206 509 658230364 809 717512877 607 25482014 223 532707586 86 200713998 177 531500457 755 95527551 562 854376471 420 229903995 785 30650372 699 262297786 340 458473498 266 261700595 713 740709235 132 83985626 682 426649197 888 145343024 393 60183849 564 201337319 743 427848997 24 596790232 376 405048585 637 249897662 813 723407293 271 4740532 192 189623039 311 95567662 316 923059882 147 244177701 479 264063353 929 599783435 486 310571743 231 292100702 16 589157937 887 410231655 167 12990790 434 896750061 553 674759177 640 593166583 260 606758998 704 408679393 215 449716038 633 693846356 655 951353780 976 261486167 291 388559626 586 160533930 37 111569335 485 596766510 868 585311911 470 120326328 11 955645041 38 906565910 543 675351247 348 851469131 367 191211142 591 36055318 823 819234716 987 497786041 862 549522310 884 325680353 607 354341142 907 751518773 189 666259695 35 882195899 808 296744756 375 639425143 85 297935 142 771159122 812 688357634 392 310764917 704 783451666 3 129180723 501 97653046 237 320751208 426 239890827 145 884014490 658 977296504 492 109687125 566 117080243 879 517812193 625 25474896 723 719249909 313 407527442 333 355046146 609 397236456 147 846502583 936 802503373 895 879096192 901 442631574 823 806232742 445 387666422 803 714958395 385 303792904 226 921218081 601 345652870 437 569391948 47 175289462 50 104262044 114 266423248 507 732198748 243 855343470 721 309591147 444 636944100 273 792970524 692 952254761 789 44207728 656 594445952 921 843294698 933 848516481 361 453586980 612 241857770 232 240391019 577 90607434 725 430334815 787 246680345 665 891435209 84 573363653 81 46016911 946 844251129 996 289914811 224 832306608 925 381772829 527 969403814 491 404715521 594 193929427 163 367953408 283 750248405 284 504911348 156 580828794 490 914738140 132 424207925 416 441912759 905 606243167 132 663745557 827 911139287 317 93045380 825 33489123 735 382506959 186 358420836 37 300324947 784 273456379 873 675750427 317 915546508 436 995425458 148 829165388 799 303865495 934 822663169 996 295418106 682 955109044 912 162248309 187 965432818 61 698365175 594 203545644 698 318926535 593 246797274 497 984366646 102 206644550 588 863407317 432 780955011 805 978829474 359 107936119 753 779004918 197 324997787 476 868446744 747 578315560 819 185918925 834 466892872 914 760634435 540 624734889 692 714768377 524 157603956 335 567921672 86 650460981 557 594198917 232 80247937 475 28857233 937 37650922 442 706478034 558 183262467 450 887578394 881 56293334 112 423354517 689 272417149 895 612898743 810 943321511 451 501958538 749 363530224 649 530783821 980 619333607 796 950014170 198 973423193 419 3554163 809 980518670 893 43773842 494 642383700 261 274601293 289 89779662 13 593422978 342 95332718 19 746915021 24 118286487 188 461886354 272 93817664 162 140972457 732 908121352 255 179922006 336 941160254 973 153823614 421 502585833 100 653901800 101 729131354 757 42316104 482 731122321 912 865148433 941 607973258 242 332572514 264 149030086 926 925379214 907 220497769 996 365261327 998 796183671 16 959343567 595 450959394 958 863190442 92 130343494 510 882156298 872 919350019 274 207432018 284 343900248 722 383467410 807 774584308 958 325734289 103 485794209 819 862443204 852 419388576 813 444391475 224 409690283 302 624482191 559 212485385 490 516837335 832 912320837 754 64209481 400 479877175 590 414068825 394 743574126 729 63136897 141 446339195 717 933147250 456 740841276 99 65090711 325 472482417 118 17842202 306 950548314 846 217590677 315 987630132 544 712422631 209 888459543 343 270766231 887 806760737 279 860891807 178 189233781 93 691888852 469 535727516 614 584097255 283 981808683 581 755672834 217 998582475 548 763344063 184 953802463 928 597340697 371 424628910 136 516318057 790 116402437 782 717710365 970 87022829 170 902898641 461 881062998 542 47417261 609 661670909 818 673239469 465 274903230 706 771716218 620 224954721 513 711412875 136 751001582 509 693011173 155 407669117 312 954918326 443 82999490 544 957077353 810 236512368 947 946076754 247 263079398 543 981686344 434 839333934 849 411594900 525 890055495 934 757815851 761 67240710 417 466953423 640 676014352 701 980214894 882 315347161 159 876424688 558 707399923 463 930994042 45 592700304 258 809082962 74 14006228 891 656397384 642 920685332 277 680522247 334 365684768 777 451349822 260 86292677 566 845092323 139 921662538 193 279148520 920 104174358 280 521582216 636 809567046 670 346772111 753 606496128 58 529948851 459 515062413 285 419021551 681 98738707 794 794917529 549 701779771 211 428501132 523 813147234 422 351606696 528 418864550 479 156247494 515 202297675 62 654352576 688 865862252 756 23317566 723 328894798 176 247567299 588 59715828 117 477798153 387 336887256 237 672686427 530 479903241 239 791588314 877 327667189 943 897972805 562 623944627 471 766809671 659 424885248 543 801821365 520 372827675 114 447534247 601 308745329 639 77230472 587 44541935 694 880983087 863 828457256 264 665752197 661 17658521 741 90825586 759 618651998 658 952678995 428 500298345 847 861483167 382 820819823 687 314023706 396 234248447 473 177390632 379 301346093 865 810018938 552 627580934 790 29605541 974 844103051 506 851958305 822 983939413 746 594251754 308 636828273 223 173141136 65 580131489 734 117374977 877 617779297 27 682476558 60 833462847 972 530934088 873 867543105 754 905535089 504 795877686 672 751884258 473 881641908 693 929706125 141 261080821 38 674105932 512 674990365 66 210409528 230 594602977 203 957863736 866 990871966 16 270288213 480 651547948 929 118155856 104 614014285 939 652204933 240 84948228 856 754301154 552 49312890 1 624373104 904 493242627 330 956162653 747 760867177 697 434731383 884 803069598 2 149102266 744 3402813 117 781305460 473 615445671 536 279275944 704 618928194 768 220611678 686 175587182 403 264948382 980 185651370 748 27977378 322 352486683 544 925197263 611 799362257 212 673758531 340 366852118 276 390414018 670 112816224 619 357217965 171 642683674 1 120241504 419 878254291 287 759650761 40 629711461 889 97865317 55 799548870 111 133658227 240 91429081 41 500351285 865 481564661 943 15096890 945 470222940 146 251241504 640 356138027 13 80448840 5 119456917 734 870280297 289 596474236 988 753068413 729 313853652 443 612785175 531 218558509 157 900271911 79 413321770 153 634360251 791 462658109 327 325031559 329 491434796 282 320520109 748 180614978 867 796525766 635 286993241 816 428146359 128 946277921 392 721931929 891 511374957 761 527472899 147 429451240 559 526701210 10 553196903 132 608890929 512 557511199 186 78852963 71 397912983 844 212833614 535 453102857 354 657442790 84 49723151 816 213706984 889 863977847 915 838046006 183 113123725 568 36685405 244 510607758 279 603072897 457 900276610 326 650726246 554 260652644 4 664629422 711 117877598 521 349372911 746 795941253 10 327661603 234 444016067 518 764675462 404 257634489 618 670882139 26 666448648 315 507639673 531 968943165 381 206006206 488 938806165 544 792921892 241 813693190 858 832808513 587 722212722 862 207332826 340 51718812 857 644214069 204 103857547 808 234832187 904 155868018 321 509324158 711 212169413 275 677598297 381 263760386 899 429965415 926 956288977 303 823781219 476 400263462 324 784010774 576 237246198 338 435104375 228 140954626 194 981369222 920 707133611 333 778192927 824 760892026 895 150098007 0 510893986 796 388448082 746 251493851 248 952542898 112 173149652 965 398053275 903 806466955 143 429724159 421 201093373 202 273114474 399 236982597 823 57046658 412 406132395 314 368488863 257 132651422 792 520322872 347 317984546 801 377074835 782 460509123 654 839490419 574 508677802 509 234505121 55 602740856 134 886647690 211 305389700 128 79427958 70 452946738 670 347414412 91 733053726 121 553155403 361 592372290 92 536115624 446 328043337 718 259615690 554 427329662 817 811204613 399 897318875 524 902117278 375 637242627 689 340911108 46 317823589 443 721144704 173 38921355 187 990727727 913 981375029 32 594863601 842 217968496 594 927558232 500 881147075 650 875202071 264 757046382 740 166753723 327 28500528 45 452702295 36 157835848 302 961733268 215 439027973 456 565046761 851 564740715 867 400027128 36 519234255 614 225277538 381 292916370 98 479153173 645 305123770 838 371804945 117 435535698 138 938598679 749 307473869 477 118308057 243 788585565 975 181875371 797 25099244 712 118164199 480 830991712 252 170225597 675 55375753 231 725345834 528 357550901 722 321971516 602 872573295 948 816880499 598 705609019 136 144011184 741 680078097 91 837247059 566 976678034 56 231866279 638 565532720 566 764581655 220 298529169 393 717836217 175 591051368 715 95786872 959 908366731 528 538320683 417 378175015 855 307443224 910 670685189 536 338084085 573 350359097 164 641531602 922 129805247 875 137714252 177 457660197 118 923364185 67 680174783 503 922634577 408 168169272 416 518972354 490 326292364 53 970803973 24 236799881 491 967316654 720 485112662 678 902965188 802 772053158 615 416000497 209 447172566 567 303434372 337 947290868 244 359988243 19 952423792 241 977471396 20 69710030 125 560989555 860 359686086 466 864945203 104 770111222 794 603445772 374 260946881 848 114713582 883 95572445 178 755376721 220 449692206 401 974603033 475 643333782 7 836468525 721 35250281 94 584213597 814 675912509 109 306098972 452 138096089 779 136889738 662 388253117 565 715000988 875 101241049 299 357729836 659 354836839 346 123550806 563 733507894 116 70512727 345 841647564 948 750354358 240 160387241 152 767151056 72 637754107 560 870741332 288 741121523 135 29964436 634 458499944 688 54600736 108 665775442 762 402704634 664 413362256 183 591117766 683 185821556 918 685767348 829 93594192 536 753491521 237 43756266 870 535324585 799 858781189 166 859106605 918 847747962 763 762858485 834 267436587 300 618219655 940 572210743 91 317610603 179 539999751 706 807308153 42 647597076 168 770880079 924 691198630 407 821422130 413 387407282 18 527508382 106 758402250 89 245740790 490 24890656 99 939556010 762 965737276 840 472470818 531 209851223 960 899319613 431 749485396 896 530973053 682 562329217 360 999185965 290 620538251 843 572888331 876 127662522 796 903974608 510 424507479 227 68775951 954 907463400 244 523735085 206 970737200 763 791697775 190 701288088 721 207295366 844 376757527 928 88766729 463 355838499 432 864905864 172 1665428 835 617655777 983 552374688 175 56938181 456 215575447 38 544912699 918 359945509 863 168233142 77 230413312 582 673308810 699 163170279 871 517443976 131 179133808 912 607174417 3 745651343 363 686818793 320 392272100 929 192268960 983 301783637 434 197701883 461 470443032 667 682715676 405 130912841 318 412102966 813 854557935 145 334607980 177 987860947 21 530205521 861 624420770 149 640162377 465 993323688 377 24841263 77 460004347 308 988969272 753 498789498 199 235846165 567 296185144 874 23672049 936 810382200 955 929099014 28 27307052 357 519180872 191 63299075 813 673173746 109 434118271 239 210984974 790 474377238 880 771851715 989 658049833 171 109814232 473 783725094 508 951571782 276 153808916 811 858621998 961 293232845 436 649183281 547 637508515 974 471212189 404 681508735 819 947228761 839 380183840 657 531458490 315 729492209 95 711014910 453 738072076 553 495777283 711 574323589 743 448866035 513 216740857 591 795470734 345 275409313 268 762895169 369 579534769 41 331794306 207 746717017 199 349240491 164 58833047 179 45607701 21 115294389 832 132156530 993 632587013 41 390741083 189 581217162 119 146640813 71 367164516 167 912823651 596 137031160 782 770849263 622 365054875 446 499165340 519 146598450 377 731878075 577 2837837 359 330053141 957 251792070 358 826594786 820 438549363 891 545417469 696 445022085 262 242193537 757 318854369 175 609419026 350 626567618 318 150477299 391 892023347 519 626045347 666 345304149 516 934146311 102 750955114 87 159368517 940 349219140 589 725954294 239 104528584 290 394923763 399 34765905 84 66369720 214 8091271 662 128092854 838 847737590 13 20574543 883 312010960 238 95747137 622 891783857 484 221652196 101 280639758 466 173520882 937 598159813 284 295234429 983 234806167 383 22989835 132 751961408 813 561384189 456 529558379 536 934151701 130 108444541 952 393143709 977 992002416 536 191328704 546 338870816 830 733775319 262 400995571 287 711712570 714 723604630 142 748115918 240 610213720 382 21215032 332 769319610 398 234035095 803 104238366 300 913747724 570 610439366 904 453569230 266 789166388 240 173622349 229 569632008 799 562507481 412 850919460 168 140903220 957 933857120 262 639161699 860 251340681 489 306397707 119 607202451 87 696610708 981 361767973 201 513257619 700 451739044 91 245080649 355 896228867 919 155732414 934 966620020 306 967629767 220 455798244 225 616421103 347 566790248 283 963105456 861 895799714 745 147082494 528 716572853 949 387849360 477 411677761 762 52787151 20 165749607 188 907334478 567 908506827 98 410580075 648 953134294 727 163409744 515 179747090 958 593689289 255 824902031 382 889336032 756 834974030 289 751773688 444 363525045 961 48882983 69 997568315 871 472449712 43 351627113 350 911226852 198 827484046 153 478294599 188 214526595 46 351734068 594 317002317 453 980208281 218 943726266 839 350332674 205 81259086 929 837849955 753 948947138 44 583788829 104 992874104 352 429833529 406 424245715 519 965527329 633 344683648 145 580789665 704 600158768 152 378115831 451 724869111 142 549979519 692 12545169 259 169852819 510 853586213 276 370005728 75 945405694 275 200241713 997 68947877 235 842622958 631 767242895 314 491124113 927 589291213 987 605045521 912 517797280 457 812166729 567 79403363 78 50034384 196 340534083 810 765432532 116 242528577 7 697551306 151 856953179 37 980104721 498 973434005 729 594823384 22 259162500 824 38057074 559 409042699 163 599119028 774 264457164 241 580848114 621 111802976 137 383441014 173 959983162 17 281817164 524 718833200 516 746620641 594 362864652 356 888305724 381 404127953 545 421623384 285 501036596 795 721504248 88 892337726 115 885194846 804 416768622 476 380676446 553 692344550 767 195842792 558 473022477 678 925534174 178 839740101 977 757543729 204 162429817 532 786816047 535 747108111 382 970577267 864 207757289 71 985930267 240 173030881 96 844597147 589 651067039 261 397668109 941 853830681 776 561896150 24 907292958 290 876364294 331 568884054 171 489427406 218 812038294 703 965520109 484 350494123 59 844185712 416 270154584 725 190331007 653 827602062 63 507862146 547 747323559 98 256655757 890 401559993 416 511714487 63 714503437 726 529694648 428 683897714 782 822670460 812 196065166 466 957448264 311 37094008 241 385874325 988 534093486 296 210639223 690 376803969 601 165571890 892 483868952 617 439362736 297 950152893 530 967431726 418 838184620 406 3654590 987 39150818 519 113670727 216 926737831 279 423618525 578 533234272 481 446099455 861 365138025 286 449436159 92 945440449 203 31129183 154 326750288 691 67824133 349 761626830 239 198390405 584 751635604 989 866479237 515 231435161 673 324194123 538 249976070 203 708067476 802 806565099 769 966033774 631 572972800 161 452737320 709 763226963 220 104500243 910 232642818 912 22674526 199 207210992 63 727724384 165 516905037 576 425173625 603 259898574 878 50332658 201 365342603 851 652500188 644 638129614 533 818179334 190 854044849 649 306461277 231 320509037 118 647441218 548 610391256 57 138630668 43 975637151 634 752185326 980 353467455 892 720978612 374 235149569 888 485374754 531 156262940 799 85491779 81 62272618 834 464205379 815 768070171 554 196346021 954 759634395 118 805093522 431 75205586 73 893712897 731 717728943 803 411684507 149 275057119 533 495968051 595 157784285 623 640844705 839 824465704 190 358868120 703 465291609 680 837095868 935 891015541 971 634689255 601 945536667 50 646136691 678 319148422 692 857887305 308 52886010 79 847833974 184 837838228 576 821447814 82 800520342 197 537263778 568 918170425 858 794679625 78 471663018 6 894458759 207 342650152 573 978428882 661 592255616 266 62068265 835 989225787 575 302397399 150 372891675 622 122988759 515 38821342 429 900380397 523 29587048 20 692023735 703 441417258 783 438312539 97 308306931 791 518005800 396 348234987 96 904258791 460 935219372 688 382863939 271 848483463 846 543786199 520 585277391 86 463256690 952 793136749 888 755857843 853 581512815 558 1454141 660 341992939 903 585397239 717 250349052 28 124957062 412 938327378 58 770028086 560 15216558 781 940861582 724 34452415 739 778588883 639 63354800 623 653486465 529 917746040 61 340621766 314 630483230 260 519167411 51 252869773 90 659663265 636 567881507 380 730608548 109 371285359 237 587231982 157 169144106 754 201769829 700 946578876 71 439068815 767 162427181 103 637885618 357 776709700 980 696082510 916 205225647 94 934877634 748 340959243 946 663597481 690 206238651 346 117949478 275 172920093 892 589826092 612 520111899 810 742799086 726 998766254 357 507058079 432 217304954 673 332113236 899 41569949 540 229914220 50 502308449 304 135067459 112 377780561 977 90567373 408 544301352 936 492221849 190 698253548 655 153060646 44 833355979 525 807734761 605 482588766 850 681916237 799 410984619 230 555228948 204 181258081 831 966547976 201 152074525 562 481539102 498 224333567 743 712824520 629 493134945 65 437537816 523 286818271 126 599787746 191 158374658 406 482806859 883 979457538 247 73443601 909 838052889 761 923516 194 352645694 194 441679477 28 964940696 673 954258299 545 786712695 521 648774760 509 691839372 954 302046423 8 688861059 448 478387717 782 226724825 502 173901624 995 802073473 509 290501234 865 212052765 823 39520366 64 121284334 159 107150355 211 534717975 579 727209784 428 673086906 575 322227274 462 815213247 381 1228942 416 581831043 678 891906138 343 34003430 341 948532527 947 589932661 227 629235088 39 211234714 437 623890471 707 350040722 491 257175191 11 104728413 467 606684557 630 543219825 460 444160241 466 443829894 633 388682957 200 446772216 730 555363024 526 452625887 230 544689616 975 882709448 870 897905003 606 713273630 446 179199757 868 838329892 521 507740814 758 660499546 841 278987598 585 672684021 440 490400468 657 397171399 943 543276469 879 594017679 478 542502796 385 59214948 588 849137008 288 443555835 407 807141492 993 980257675 284 767777663 956 635426786 122 823252676 627 352493709 938 991910430 828 868447031 45 969161018 960 557412204 225 719078225 887 65631486 869 234133937 886 707455546 616 871070733 727 594135684 423 830868893 498 677681661 35 571691741 349 687867286 589 757774342 931 255967127 328 501446032 992 626001046 303 872591105 389 422555617 536 542790104 724 590078257 839 322246202 825 73980677 113 835037418 436 908354202 650 427314775 912 610143302 238 428411196 495 327766284 47 431081957 408 932002662 163 271955902 609 690815059 33 61791932 563 615821546 699 91157513 242 313717855 406 333351983 656 744322197 799 686018173 856 193634608 473 943657003 54 24128011 695 254337215 457 158514546 312 38933462 636 932862049 649 438556896 435 295117168 205 384113072 952 286499997 162 630722744 631 832230149 520 931211600 824 831538356 299 158060089 996 335626387 362 322366017 165 618826653 2 348829245 695 345756172 335 126137489 195 184306924 337 630910267 908 453185896 778 447395389 233 967516173 772 647509720 793 916890171 82 901455065 870 649018025 473 466368974 614 218381822 493 706064135 775 253454683 224 770623486 622 758012593 537 352871409 318 455876282 136 497267163 499 766922883 610 220552906 506 324360930 665 1129682 423 711456608 991 825747387 449 486497923 913 317656110 137 649891720 656 577604159 254 376668112 957 371535834 9 644810675 271 481422643 978 227560301 375 401884871 452 460476490 666 182393340 136 168472758 13 169122948 759 256535137 647 720994081 209 445085828 335 664125738 304 902197393 979 907937209 188 556573253 580 21671637 781 840887973 270 801665978 560 34148173 212 582976699 748 578720567 329 497582610 758 953135769 711 787128312 41 107693620 610 578113643 283 385279982 636 30335554 656 974025961 67 208783943 840 314061155 857 22365431 711 991092161 47 960603698 57 166626476 34 686124546 567 66205209 558 245722839 4 976926932 802 355025040 995 811530962 580 872813877 12 527849988 99 203729505 238 287907346 679 593707349 742 275400684 699 742390052 635 483652903 697 227212770 943 725323357 742 55279250 102 929132099 59 211468521 3 670132258 702 37365418 101 194444357 318 472439882 484 350311610 489 734217803 813 867113583 903 633644367 283 862729597 801 484387898 131 620767032 554 680601829 566 604783526 350 469869024 80 916616581 254 723211276 179 182263611 599 861708459 210 155729102 830 24705828 570 511899741 292 543158644 638 380859109 550 210954967 624 990144619 513 608673896 233 941078082 30 485217246 409 178476699 183 608132249 306 251642367 958 35359638 881 642806321 891 907501427 716 158714131 457 742691923 391 180155632 642 60906393 764 317332467 14 841941555 343 188629504 208 679666896 188 803060595 878 507076269 927 66463167 337 7808102 238 901209799 279 446569578 133 696958428 239 912585463 14 627933727 896 268828766 111 563407272 577 521581661 564 445890232 975 899131547 414 653861707 184 7057347 759 463934982 472 841784798 171 44640513 401 326422199 772 367520155 828 216628605 348 499998477 914 421205859 474 408798080 569 641264736 240 737274005 700 295286556 854 20231757 506 787309602 812 453641407 340 420870394 433 171034369 493 627613951 785 411269366 231 171505064 788 668873175 5 154952832 658 226104112 291 757211529 146 43235982 139 497563489 988 379501664 300 741812425 348 58120327 741 410578498 30 165632792 494 723072685 310 324541255 311 379752193 688 454811320 246 19796919 536 952930024 451 225047193 230 655138087 831 23632464 669 976047950 558 214972597 523 108078911 618 943046517 843 501072116 409 599284045 772 217144437 430 801178593 914 263699390 334 912582246 419 368828940 963 991738945 603 181551598 816 120293779 59 681607886 711 436512997 998 617765143 195 929210002 879 184235923 98 721868204 745 772337817 195 470071023 196 535830044 642 576225509 690 479432620 382 400667896 788 986419243 859 635938337 544 90486612 861 443060169 182 641901997 993 584987986 839 956832083 362 537818843 953 86207978 758 16661122 925 422868424 327 929879390 470 270607051 980 223464742 808 483753134 819 435813580 222 914368436 719 668985091 681 484502420 470 720392823 493 22784703 739 189384890 886 729727168 371 640675035 774 855133221 100 246467628 293 400831145 599 956952266 526 25858456 256 530832340 523 22110274 198 410785206 343 757949407 481 715740827 743 236401774 90 30557481 701 966321035 594 503585438 731 622356471 450 40743875 757 609581144 415 408382977 496 793659563 799 277265597 963 991320753 903 722913565 386 622393239 661 647590056 88 771734517 572 487040834 415 404387645 250 49105993 220 688804535 29 984586562 148 31458740 209 179376672 794 876250153 162 85690602 937 239622800 86 190261977 570 647340044 874 791788945 980 829282482 865 730570006 503 833143189 343 899278937 936 924944950 84 636101413 219 223916820 596 100170920 0 656894444 126 438548993 841 302446596 984 296180787 180 963818393 159 816082535 949 240513404 569 374663881 960 100045534 900 760315216 283 601498296 221 617865140 292 932531571 336 652659746 956 756893288 506 695889171 34 168461586 20 18571028 911 466086314 395 787150602 935 285345041 932 686162968 912 847245594 445 946700421 33 410192066 764 355644968 616 792019299 336 413191371 950 417971626 665 714246804 764 614722998 905 267634209 106 263431505 722 750726411 712 568445165 106 903336947 108 47472978 416 652118813 604 673684762 129 291428653 979 370835746 740 578097367 493 482781127 789 727788363 897 146813601 573 119871645 277 404847333 376 68642144 926 134775684 603 64488265 985 571102420 490 153471151 749 507490984 458 496407534 835 333481680 309 571330561 487 56003930 104 40683027 590 815083222 605 134161654 824 336256253 149 935300613 546 40346379 268 99682694 282 791307267 319 363801438 607 724464713 192 672969753 634 732476731 90 226331371 540 43160090 197 518227874 13 32460824 813 130542937 135 141387292 268 530237186 298 129623847 936 658900568 19 345243417 943 578623750 379 587864173 608 616742329 919 424678964 968 987976804 678 920455238 913 374253228 31 133847655 24 244634584 939 846654723 972 776669854 563 430496304 450 767437939 510 936638137 982 221107318 27 575678084 845 631271624 826 845599170 409 936350164 91 825421296 765 151429578 657 108696379 518 177640334 744 567279636 939 591235560 511 707183970 786 811328199 436 790998582 1000 505294707 583 49680943 231 931419782 331 323451539 842 720164697 421 621719321 898 911905395 355 308211441 443 267293032 94 62265494 833 208996599 522 144567935 936 181534799 426 435520548 345 994827263 963 778977083 873 486654871 858 862089075 577 681576433 563 904543975 102 371097745 97 848479949 791 986472 721 210154485 81 367370296 109 57219846 196 899228455 436 473642682 593 10038539 155 264596569 827 11405283 425 217603210 96 720353472 623 194261387 46 85585392 376 405085509 551 905639098 802 714456901 713 941575337 33 915945885 317 770682480 324 191432790 451 508363230 948 630636534 82 158946271 582 146312936 450 111709941 347 435962972 39 219846218 779 896191433 356 264781603 976 203504787 947 46586108 851 120314121 254 846464455 637 941339024 140 688475337 85 70369824 939 450844496 664 31244394 23 279296134 268 874068767 241 182067601 750 713042969 631 881514229 384 434222386 884 17295605 368 56541936 524 29969712 614 858168654 652 603580220 143 83200603 346 973302414 838 437867966 484 985248388 584 139100236 601 283073373 348 172486302 187 56698030 615 450140161 46 389305356 304 490188099 538 662783167 403 853885403 421 590448195 409 270358783 325 300926836 342 445212209 984 375664431 460 175345738 509 8131866 67 3876380 468 407838996 144 116089132 15 765066374 521 28496662 989 565839561 377 979764828 353 430195736 11 701704093 66 579070582 561 883909622 293 466462733 826 501234571 518 618475807 230 591932171 820 422995875 708 177505862 111 666321258 52 965407209 488 488332240 538 965822322 668 856625543 50 755290628 330 392339133 820 55552221 181 265388679 580 267153535 952 396394994 240 588575717 546 410982590 847 944347988 917 306326166 369 723783637 969 62115675 431 167842640 108 69646292 563 453680284 585 571254483 952 783307791 142 805012197 499 674131889 928 992459859 631 432053180 91 778762738 448 595168902 163 203278139 804 409813465 757 643392580 652 985381142 833 920312615 722 543672330 944 971413221 296 312651278 565 337529279 741 124219684 586 888681379 825 973043896 880 955178765 693 965212797 299 434616785 527 755197580 246 944705292 747 418194769 426 626197038 263 311606244 688 544424485 364 868116873 48 378307443 477 393521467 540 160751079 795 641840234 486 497122940 596 641594261 598 361222101 878 98347733 978 613036415 264 649354290 770 351349774 20 658806467 434 174069285 622 842328671 785 275307108 972 190273046 643 73209425 494 289755682 875 972601667 449 539164106 859 222839706 749 639800357 908 206775777 561 798177663 467 74936154 274 394403846 213 334074136 870 938977340 144 307249193 754 995144192 674 419261251 16 785601438 606 708750716 165 935761059 486 945378950 105 973955362 735 47288790 20 437692937 15 550555859 389 914057092 292 695838742 135 183710847 868 910613733 3 650321676 623 903125065 924 561984363 496 182856277 778 651159896 832 841734684 441 50160258 45 857073041 723 641151192 900 995069675 865 180598707 779 762135534 139 630816171 54 74013795 253 340330641 458 118828979 281 525330053 306 97512252 687 771145499 230 81886913 414 411284561 800 607298867 356 909152705 248 26510955 630 608639099 990 547039379 205 568025156 116 311042556 998 553894647 866 235182774 410 863544920 915 639356445 173 299644046 519 764480142 88 13021519 436 452465254 221 335287011 245 727681599 114 762125144 873 207390999 770 769404484 569 130018422 377 967392473 764 745309025 381 946526309 337 914124189 130 52760578 172 619940668 202 46563629 843 916975048 515 626342758 537 41095284 997 963126992 908 648636663 845 668467809 484 838273232 595 666806418 633 950508620 740 697224692 221 158611834 662 648072523 706 672250125 755 992527017 486 513830549 501 878960535 55 661737394 890 517625227 647 284060923 533 154988453 602 133641765 177 293716536 988 6513617 58 471300193 967 96873106 864 471028594 609 983882668 802 129122578 153 955053653 803 54263787 852 171856245 71 896129523 674 872338223 270 437520098 932 631493403 482 285049038 704 510952398 385 216486768 386 632741929 466 472740830 509 919071890 446 508511614 168 493236836 419 548739685 435 229546655 955 456989049 722 589407234 79 836511438 335 644892317 138 206794974 402 360552484 804 887196960 559 51558161 159 160854040 97 502567359 88 158662356 995 699338001 428 864169346 355 10341347 454 442524473 761 731413501 93 716783258 156 454789161 172 613616159 53 792694670 140 371722163 82 853071462 246 478643284 173 304758184 251 486309026 616 897888593 831 622539702 745 767848915 546 844249871 888 385209631 383 581788194 137 887555262 773 364479417 801 284370205 376 636067873 430 997007599 446 350810223 825 454091609 873 809428111 332 672169032 715 197669954 719 971993261 313 266330100 428 411149063 111 427283117 809 927801266 664 90338181 158 564932717 582 771873173 729 112874116 130 879054786 490 123769397 176 246328265 957 409996460 117 905805879 379 172864093 198 987740501 52 667824711 289 460904035 154 932775220 415 508056629 332 477328617 907 848785318 807 601709101 712 262467209 732 448533216 90 860430591 2 440363547 895 364286279 544 808302522 92 542141403 569 536856602 127 442199410 989 182341631 402 738607344 759 649204575 503 396033402 552 650367519 166 115672349 87 513598013 52 557896354 735 745315446 272 293440250 673 511500154 831 793276119 3 836312220 763 473654622 772 963175125 715 70350362 269 398077179 883 937415247 970 665144700 819 95425343 608 205833048 993 384554006 252 264264670 731 994162403 789 575967492 851 947121924 889 735554785 642 199664728 305 145055784 573 821179999 629 741039720 738 695738651 587 292189358 200 483992854 312 128868702 664 520711937 27 783956419 554 753044422 441 352185387 386 335619249 440 677813919 153 303876461 0 462824285 71 316657594 554 311363650 658 834929439 19 589243433 874 93620416 698 714128363 185 510718740 131 601594483 565 501703533 963 850570098 0 238237839 809 397997640 725 944121293 359 415140251 735 790863878 918 12376711 549 529833732 814 425425853 138 37385255 216 46988172 826 100556209 283 961700092 513 681419598 380 878330087 757 150525422 897 189417928 47 295712402 807 705656422 129 776284526 968 469365358 906 467033640 774 773648660 56 6609936 217 889915179 199 350670594 511 879753319 701 252050662 517 372195636 684 476215581 460 668778833 585 76989114 99 489971849 838 845984422 242 904044958 487 975881474 254 462547504 634 83770466 807 640028383 133 926935160 633 548375290 30 558224102 824 286795666 518 157315191 314 14299409 471 381739948 429 786962419 949 639528994 648 722594831 513 670698274 149 372095377 355 857745153 645 906882025 725 971934426 68 24957178 735 773784366 575 38482838 663 474543626 315 890763446 311 631501361 414 335946841 578 568513010 652 100988260 988 596147502 972 590772207 652 554831923 310 843560524 198 437621211 648 441968619 261 844347636 8 993832623 257 707053853 171 771162314 492 850525593 654 678272407 18 973024228 563 618131940 524 280869895 635 300791948 456 395866045 83 904256160 453 51040748 454 285456167 371 620538070 492 131238408 110 36518814 735 519156829 736 735210057 137 254432688 437 733104028 370 764794480 368 829724451 316 40991229 396 460330649 189 3282161 571 775784881 853 251059102 583 843793615 484 621059475 168 973935836 484 391430516 178 832456687 335 827022421 520 169275755 888 588606932 275 712716010 966 940542690 548 916997862 795 948766705 936 648349760 251 215919026 100 276156795 933 716320981 129 717946706 928 506516068 171 523260111 190 215482254 104 891123249 498 471271719 112 422470940 285 131306195 912 218658288 766 150974706 381 746553065 400 516315669 912 390361986 998 331920292 677 739119411 212 397676224 912 902893339 599 491330729 90 453706630 985 328385972 273 581999098 127 945603027 412 609327016 781 460865583 468 534608872 437 966091154 50 713611654 465 795614312 638 826371540 484 442942454 616 678272770 447 66101877 208 37908763 640 435460998 434 70679965 937 871163452 480 824119101 277 176315094 590 729856372 103 879934412 946 509213926 365 420837081 939 178736899 669 739107739 210 992205411 65 801254836 371 314888816 860 462812903 618 826152789 990 253225345 842 14778007 905 360251741 392 767788029 546 264944420 918 558621192 32 518250645 164 816288292 657 978783796 52 398857862 268 779723607 197 241613454 57 595850494 688 654655224 961 792860591 859 390648326 910 863074291 293 989556591 727 507630681 479 737190244 277 335844161 752 266824957 437 389761845 971 632024403 515 772343260 737 928574033 755 517482248 751 775077117 841 520461046 617 770152538 877 132315476 715 886421755 685 777947285 892 565447004 592 427660028 700 223199093 883 907070169 736 394251947 465 632427473 181 108299567 841 367118798 110 145748361 94 462882386 9 769992853 111 434746979 347 954544451 185 338203214 37 697388053 808 313803763 906 499988214 786 913804837 91 123036631 985 307020879 547 715965083 370 966981302 847 658055553 559 107544895 113 310250338 844 659048 133 754149718 421 667184200 711 862934053 658 877014096 551 700448303 785 245170375 181 96504420 84 22580509 415 570306655 670 579097357 859 547737761 165 670656078 372 665710427 618 993003043 795 670278656 745 470471764 400 558494938 420 395819961 96 482714298 822 834042884 198 346289729 401 779978978 409 19782115 61 103817072 413 237606217 5 615974721 818 729436847 712 582468092 756 722359754 918 452242430 555 371387665 152 775115352 553 738239281 686 750397812 506 495642147 760 487433549 783 109815274 663 790749261 893 245955784 810 23689937 120 812091092 888 233910043 355 160941960 171 623665903 3 608778252 997 364179061 759 753112221 679 874682522 595 884745006 728 213107110 841 983045546 965 411343175 765 698956639 452 789692202 484 705520430 577 812453297 34 507304394 201 211135193 99 69565621 360 871494988 871 744726981 32 222858273 828 686270169 43 649539551 225 584378165 598 62970456 452 630826597 746 151712612 727 872656206 321 231422768 771 183020885 448 116321624 304 494866271 913 577648082 932 50709497 293 327497180 740 263320366 523 305217615 920 214887605 966 801263539 715 709976203 816 818501473 784 66958902 318 208620995 102 857017994 515 273161451 104 321950675 292 232383921 616 961192980 597 160378763 149 502743348 730 471427632 55 505007814 288 454957543 292 892143279 555 890479393 481 82568399 710 486218141 979 430344057 220 527790437 572 798394795 992 43638640 782 829426089 905 563654329 695 54894669 248 501973992 125 453734523 731 400827308 529 140435091 655 717412245 711 187819710 308 151921873 714 236933786 107 168983839 819 29945375 448 73332699 405 742594929 616 935070538 914 202928908 628 692564149 266 608941979 849 50491191 901 281748850 446 197152675 868 891988571 654 936132053 984 501940704 122 977558775 729 427322555 313 789254857 527 72762543 462 525343368 853 907533555 890 544404757 432 846095899 991 589899368 261 515490602 890 318128296 166 125796372 1000 664113361 257 68734732 910 236529665 540 721937306 97 679335149 821 127909969 844 257437320 308 380467353 488 210937686 569 441989114 629 955300187 646 347700742 482 346409461 950 864941052 495 752088013 188 410413999 192 384078898 834 655960509 181 787404440 53 959964059 743 291870888 530 476380694 299 727579459 735 750879029 995 823614146 821 142940349 52 712348934 666 980471956 983 175157198 84 801788604 883 766199445 247 552989298 822 248755865 406 634450033 227 226023562 71 950914486 603 445036877 403 426785101 56 659958168 595 587284842 403 270682625 605 886960266 556 333594516 240 986414468 541 994044348 430 116210466 306 932624797 611 365067827 911 547930366 635 660475595 76 433116548 441 120428926 395 427741575 24 532481985 474 425119503 505 954870901 8 329294699 982 628737070 39 708176830 614 865152882 838 567703399 659 668247471 630 948001187 424 391180991 605 668108287 856 114272233 240 566249762 98 98872725 495 520749086 319 922561393 603 878742105 166 90525114 4 519946689 283 248843630 859 150735275 379 233546321 96 683020069 683 47421058 815 616270375 308 742682561 63 886303853 618 76999512 242 509235575 172 785663081 280 370003548 168 143258525 193 435545390 824 526120015 651 841961297 764 418826978 849 866231473 262 563979633 802 686987591 600 77649505 679 830362299 402 167130125 627 476868386 47 399694196 951 683748376 447 152380531 15 719560617 810 994839980 448 175520681 566 332382178 414 34764565 459 578448578 351 849391061 206 144154300 137 656433187 286 170292260 635 477384551 914 940945862 617 893808106 129 560595922 671 565309604 245 432271587 64 989852314 364 561059256 38 865171817 790 601599648 606 256716136 43 492394081 149 601982452 513 431457885 162 595737014 397 526344227 926 26568804 391 47176838 890 410346333 12 938962124 812 412563495 29 893843265 340 41207120 661 488204139 34 809006688 171 148094031 831 684880057 580 852660757 516 818436802 454 389011565 663 185861944 358 517378099 122 448144195 977 576642360 751 336905171 912 898426773 645 36937696 632 418998880 67 938868260 778 455997168 146 82680741 426 937769286 364 912799159 951 306321480 520 778740743 120 122005870 84 314906689 804 109034781 538 413010730 1000 741282327 682 907520225 86 873072932 725 880255163 703 865877876 912 114633635 987 545445803 865 309491550 158 430285367 184 119173872 444 142789628 389 529384578 109 394244626 970 873525802 399 294085279 481 845292939 10 858849470 3 966218129 642 887855350 842 161953037 749 269057277 883 941155707 41 934932794 8 44735688 851 301791548 202 184069133 470 411220147 181 830714649 178 337970517 66 225551827 983 379749065 125 337645683 166 186476240 601 119461098 572 839111597 494 607966291 76 228930065 764 554521515 233 538125434 516 13295736 880 933228494 621 562453702 584 882450218 813 11245235 478 847607076 454 340554272 848 300434655 666 882382777 120 570101097 25 301310257 598 490699308 667 921908086 791 587835383 427 825293072 51 265688235 407 392692500 501 940214593 677 132927295 285 674567771 344 776700511 627 880138807 487 107373994 246 813207593 281 259687401 902 288655069 567 109596179 987 927708370 866 342842989 578 446311641 561 966531818 185 774231839 48 953809679 389 855811924 697 34751118 993 643323412 512 379281417 455 763483074 440 921801358 581 375300060 76 194407521 329 216204429 616 913070908 256 714227428 602 222982514 374 861395341 803 369232772 833 242396319 119 958349500 614 731112971 976 216587758 451 335878545 517 155502822 799 415339235 876 95573343 782 894280919 942 609772219 245 160320028 54 594247317 40 617443795 399 846462128 869 428646456 330 238548018 779 739858288 915 293369883 228 645768472 188 502176507 347 777848115 955 655473845 689 870143728 998 968366120 45 6157316 482 776234879 728 188604462 909 403624315 325 242356401 721 746493223 752 932017494 698 310387976 273 740043966 419 953881353 949 46647225 577 407934768 442 161335370 38 721643665 831 32112716 967 202384052 904 297967192 791 924888929 879 307096199 128 913349475 345 770193184 975 231383754 754 649671029 626 218348603 412 936087021 44 351895827 35 139244220 574 487840572 358 609032845 721 692299466 854 132680786 810 470508907 169 43057437 183 970343794 88 145423351 183 687082755 938 806403743 1 107871587 356 996960860 733 863910843 535 595689690 525 947927281 906 846490193 973 469525251 912 48932219 763 728158561 63 883926738 523 847396107 628 36640799 91 384501691 246 358542113 944 294677521 601 940400522 576 669413592 858 613632117 950 689656999 425 67739451 855 271610751 211 508414188 798 240806335 717 424163968 785 166123621 435 159951721 906 921086246 707 444495815 931 26615891 931 151729419 529 609647393 874 157926746 734 364260109 904 635654966 826 253091271 185 679187888 239 819108682 99 706769993 434 562335515 934 629288686 505 196406540 814 932929280 154 542711899 854 834569755 918 605921343 182 856710314 44 346324235 178 505650812 907 760964450 138 774555600 75 930810592 484 180496912 188 166690076 838 405602391 48 289639617 79 909097976 552 103465303 353 136056284 863 915805910 173 228437456 547 521160136 274 326945214 643 375939717 445 892557256 852 989738558 893 537337896 190 155918177 732 954350287 644 832565438 805 824833871 785 839889637 881 710703026 909 908458326 77 246558520 421 661145321 828 607769578 363 691478244 146 879267191 459 160694425 624 877345796 147 70448380 382 594061667 365 332148232 233 298241543 300 469994557 252 883425002 259 125180942 753 150018396 452 836213365 480 230464858 529 472428324 476 656133460 955 508840618 514 915236705 992 206817545 887 144570805 403 855176510 303 113322188 136 790241448 97 437996874 946 229748947 619 900732354 859 596157393 486 936167851 907 107871481 69 372160142 642 336444610 770 718589857 684 17022898 453 463221510 409 557974973 766 261861995 62 860051919 298 460384194 491 497248997 980 687582614 213 264504795 252 517982128 390 398227962 662 817453804 708 599114498 371 304376409 142 249815074 507 553702500 243 268988339 948 805298800 255 862501753 849 356928072 329 130410982 108 597951757 646 603912082 159 769292514 199 776647214 870 555148252 376 66003437 334 585600978 725 322045108 82 767595490 806 200916069 886 571142974 243 291024499 164 989625788 922 382653529 562 104122685 837 637529941 156 371204489 820 13221365 233 143262681 452 353563426 809 385140144 105 742283953 431 304046918 622 708536222 419 708217640 598 157531840 19 370019083 909 882671967 235 367601250 603 33383234 823 263469361 147 683259030 668 40615318 990 665086930 892 29428512 757 246732468 810 285789811 209 202231355 323 674460172 132 747688185 438 385694645 918 166091755 826 875183571 380 424544683 876 160945691 957 80485707 387 548119088 554 211370655 632 722472155 108 400963047 406 562397501 180 793522380 905 291854994 156 711125508 328 650480639 689 15007329 105 763712252 235 685481102 585 508299977 601 750997642 329 142014657 985 695882728 191 482482154 224 660221501 403 749057579 364 746453371 779 234303350 566 191282030 13 566310552 61 890557733 212 907098889 143 878618471 125 25925412 466 485106604 348 636369738 985 382352948 370 657072984 480 161245995 728 878576761 197 946081802 12 791227287 307 253394911 977 844916488 577 864469119 481 695210014 311 43613229 963 882743539 954 447289061 863 529076388 436 219432630 510 835981723 504 698991121 449 94463335 19 233022444 514 668487220 742 885106871 642 753123965 372 128900529 246 246347156 475 391178391 497 645281920 945 362155314 800 182580908 541 688236684 4 692567445 156 496537389 111 699270611 25 503309569 285 544392285 610 639061811 206 213269727 893 416031956 755 810679304 846 579106370 383 89747784 391 899857986 722 735884699 708 356449844 267 945539479 909 410324421 894 862073316 799 114562255 483 863486538 48 261397790 803 12286711 758 920318632 794 240964463 198 288763451 795 356997220 673 116954043 488 347336646 363 167865840 190 683790805 916 662518787 616 604139836 265 596937116 92 9774121 922 103377783 58 246276370 52 723236837 772 157389646 654 891628793 696 389298285 83 783401718 660 401355892 145 491573087 221 421534782 102 988812715 231 115334812 670 91140056 60 188989341 78 528216941 162 624621293 543 829353056 40 538343504 752 103293488 976 587842027 997 281005677 85 546367867 639 95005338 38 409335134 180 806791757 71 648527716 955 966828326 536 673554754 410 887921123 138 784219019 171 539935255 414 433974410 528 661179314 469 765597660 980 49884516 322 175141709 2 43028386 792 816434460 245 327695069 403 741448196 470 315640094 855 48414641 656 416602968 456 714082846 456 51227186 991 157339118 676 331915724 721 383926750 414 827144820 11 826279060 341 495212659 776 795784528 213 745191117 468 686113689 726 906719754 953 840761211 784 906893749 354 127838431 150 758619477 383 290049120 990 346876366 406 994807808 194 277708418 417 352503996 828 573682042 978 956895080 63 507159833 412 885869985 515 81642555 157 115140800 354 287645079 955 498643121 804 454311471 610 904397844 407 937594146 610 125122494 719 600891358 773 593805533 289 542022482 947 407630175 935 386373247 407 159158968 58 927697389 937 357813295 726 710931986 417 894645208 751 820591400 252 581407596 59 863961379 717 424215467 726 678818114 714 759095143 494 442292739 755 50083257 730 311982571 688 305031315 968 223697150 488 945607280 698 429874982 679 696163259 342 884955377 90 419006132 587 9136658 843 139724854 839 887391973 507 251654397 924 288931573 333 998040140 665 383898356 406 395845857 560 75318647 115 831186047 507 70943944 609 837115104 507 306416766 741 674929782 523 260987010 907 762684753 97 890910357 472 815464269 711 609871029 437 380108388 273 252621080 797 247949342 2 454957938 503 528722954 255 29920432 226 518963972 509 90690767 244 612673337 27 987149213 869 627646482 939 412923612 567 659715459 430 559921884 461 927540193 186 230199665 388 622040025 404 362536370 281 997025344 54 123501138 505 847060086 369 397007745 172 573479410 93 165096600 965 904446557 948 874427983 72 951683708 152 117237709 864 557287145 680 887533826 654 878543435 422 571245498 477 424964575 552 902951983 895 104587328 198 760542338 990 674730098 182 511622032 611 985289469 238 530404633 581 736419726 83 997687690 65 592219663 315 566279007 926 88285240 437 289569619 263 475325580 424 291001149 552 517994604 664 764137726 855 331865956 275 359842486 664 815373950 856 59909490 420 369130613 26 410128974 666 278383245 417 856060263 779 110592170 462 110281223 349 768085109 737 695621758 751 391784893 484 932820017 731 790215993 903 727416676 258 434029993 48 954107929 580 693870504 891 63463162 349 979404712 791 297432898 769 945147455 905 436179236 969 59208730 147 558657904 972 296444378 32 813712352 938 410554385 759 526924639 643 693297760 130 844377105 954 348689147 749 104432023 748 104995738 253 483966058 80 235166061 400 731381099 257 949654962 550 537400117 285 76364137 588 360871893 838 978719548 109 68946376 710 144772517 453 944650855 883 725863779 187 395266188 660 795252465 405 120304423 111 264558243 432 960269203 74 320070941 26 982001779 185 187246713 384 400061595 216 551241430 568 142757491 732 483805354 903 614265239 134 818200241 170 338047677 513 826199002 22 263670153 651 195800351 843 244091675 931 94219194 252 674059145 835 250577966 908 742692838 595 224241921 90 308433786 571 433377958 611 328872156 482 340411752 664 296826499 191 741852027 29 501798856 446 704644462 0 694542191 470 991531976 445 379989758 526 318301790 148 129067332 779 39157717 660 933771517 492 627806331 811 238774203 647 694156542 266 430359564 962 509554464 503 415661569 26 493299108 232 322736103 808 671677584 195 446272913 977 906726679 556 370026455 150 704478771 496 512195817 154 659132470 205 967462374 160 289793832 484 407833332 722 390950423 842 271195266 903 990304141 155 966285890 282 944089911 675 923268336 567 519140850 39 100938135 281 532338169 559 801929213 214 284437122 409 743588935 204 930368724 534 299412134 488 210557930 609 407354588 77 926927983 25 790944525 200 307671701 894 623784592 146 572270441 553 958412572 470 242355833 876 151009278 193 163352113 38 446645636 92 890404433 739 797423343 557 511110297 306 148973942 100 864643689 723 500457810 137 525132336 92 487668575 831 937002332 293 565235434 840 673494900 140 604481240 742 738273462 753 365713892 296 653474544 4 164113279 419 171750959 654 525925925 706 666109 689 23334393 339 8093343 621 315387479 612 296533821 539 623822968 558 858156603 406 836698167 862 76623498 29 982037766 287 813758872 901 48449478 169 908960407 942 832258132 594 944457627 152 767429752 654 302583032 218 882728597 433 373467071 925 757728224 434 717433005 665 639729631 883 509639314 282 741188566 865 617432969 529 430368422 7 103810049 693 828508234 227 131816077 736 984390703 799 303422610 18 172268520 382 923841206 600 716142692 237 322350365 182 66993177 439 879849907 831 975110469 265 966107285 912 431621408 990 299263702 194 505948256 798 195600145 641 446146506 536 445626683 41 626622920 955 339074288 684 538229090 132 153147759 400 67203388 351 574392198 803 514430759 407 142802035 731 437558177 739 678813282 843 190056847 14 365692425 192 654915602 64 682045630 748 359283087 35 716617933 249 215566051 914 799454958 479 312116138 158 377253137 281 957032513 796 887294758 822 78577661 175 899127991 589 326869253 191 561943062 304 424312540 644 42886770 975 229159427 216 735809954 587 139850524 923 496097362 518 839892173 746 493892640 153 917937330 416 601641187 691 466285573 696 393395904 39 646041086 945 103348890 198 100079606 154 401769106 556 298728005 768 571854154 227 928825428 298 711298505 812 470848005 246 749576478 650 24574511 102 527761867 161 610350939 373 193731409 845 552223034 630 183006555 800 87922004 334 421955426 949 385360526 438 227638354 577 167673250 186 402732881 550 379696836 479 708220786 722 337567125 592 794932857 789 53608623 756 786566585 35 932250196 379 184405846 237 713578600 423 642358714 430 371273374 31 597430331 258 925879056 371 136761660 203 815131942 676 753340153 164 327384697 116 784455653 128 524478959 14 293600863 790 88387341 422 521274947 124 614643303 11 932094092 705 583909825 117 557261632 494 916073728 232 753275457 854 297480630 663 531644761 65 257011752 246 682521034 1000 150562698 800 722128107 19 8031787 479 794045530 598 874694123 249 355108207 715 312426040 9 730083640 377 520617449 3 54954499 729 852947575 571 584737904 443 664171301 567 590456095 385 769362589 280 288771289 191 924883538 837 437912898 886 273729506 684 353685263 195 658989466 830 462522231 862 614699110 662 515828541 20 967487442 732 480471183 33 606711825 172 994990036 716 791954071 950 115379451 337 11987954 467 810690724 438 152411843 730 368428096 760 850208394 144 184573858 959 953604030 634 995835404 801 295401444 111 807208206 11 413932656 493 578098073 224 348758929 308 940345553 850 873260865 135 25501417 348 720665230 736 735287539 347 440562512 145 782805994 681 606650572 878 62599910 426 731280577 0 17121057 655 828007 281 587262048 54 987835026 613 841355362 324 405356824 137 628810744 166 660508266 520 971431086 698 127707417 827 410269012 235 694708360 102 554955332 983 494602020 550 509743589 784 514933072 181 116120057 796 964942799 328 430163339 838 663079047 24 785578663 746 797120304 273 302515082 548 545422400 470 287752886 709 1006620 305 381853836 750 567623811 672 75189708 756 241212952 627 531754025 405 340452731 405 611999973 977 722093997 21 742690224 733 496210393 175 153045482 188 250006041 550 648301812 360 147046944 997 908470996 530 304569246 518 105303451 78 521483270 644 431231128 315 11437545 29 13957654 491 934147806 745 931220500 707 391338011 266 342129418 889 518426679 475 318887223 18 90728760 806 977882644 299 264481332 171 36874539 694 215556285 749 144843965 850 71925076 791 432953897 510 717246854 212 416068938 605 486302437 215 994666656 773 930200421 490 885601800 130 330828689 864 220415495 300 592051359 27 678559744 554 185432621 910 521455333 553 929542694 517 103231280 3 272523236 681 708016295 235 12206620 722 426182297 503 38332645 147 657900886 208 161608330 786 584868685 420 424819312 376 688106078 629 806774919 408 405319422 405 976595546 177 855715468 259 986734821 726 697034216 958 153429958 315 70197532 416 508206109 895 752002537 606 983680053 45 763835542 269 323942381 969 837928617 575 279421354 85 452396047 988 832402171 140 769482339 762 908664191 22 948475106 516 388569449 59 837316095 129 700334249 149 9471340 919 329290932 462 23101168 771 174706105 518 225808509 337 696708381 582 813888487 446 653636229 789 884120378 583 197746750 258 822622856 940 17802737 349 160090812 758 936515370 827 296731849 600 270730072 421 853147324 230 716686827 552 786464010 155 172722616 134 873082353 420 513418155 750 351230874 847 871732237 737 715165146 115 232897959 406 997200407 7 256204919 355 795696408 677 313981155 537 234023452 535 125173449 136 622584211 922 548163796 144 139420122 570 257976304 418 420913953 335 165590602 724 144446597 548 465675092 307 448584440 843 774813346 385 203910341 902 808119979 648 291585924 662 342100073 536 854932165 178 774089878 854 19471343 517 119440912 14 96771210 961 515824916 120 770832717 878 130970153 693 527868372 981 695568042 837 178136189 270 109193535 394 358636651 201 8550278 68 53777338 326 317809362 851 573870399 318 816445722 136 825494894 873 513092930 218 117238990 963 346029564 432 615907067 498 893943787 475 914908811 425 690584944 118 424485756 140 457442311 248 274451280 449 195263961 135 758084607 226 872078073 460 586767900 249 556915343 499 292806527 847 385665242 709 143653217 608 376938824 536 49839264 984 408573701 988 224926003 354 175547746 220 70581088 484 648928984 167 998500884 997 251217632 708 578960786 922 770820170 825 604918489 485 610826659 914 19764186 538 421142248 569 995799505 5 196086967 129 684913736 718 327788914 183 820222913 332 735867199 841 818991630 854 582868802 940 854851151 317 456491567 246 784379801 714 791323867 349 701298853 764 577361017 427 861201195 264 778711146 843 956962115 444 953863240 300 60691501 494 851376465 93 834610725 183 569607521 700 695666511 994 973347781 359 745245829 803 742306879 799 419320623 951 341555501 65 259323955 594 338598788 247 716994499 197 573476186 191 686058379 405 633133705 965 77308750 320 572408372 414 502751821 446 854677659 660 84928942 370 238278905 379 371475918 248 179847832 905 800184212 929 30359417 171 298809204 123 70435630 733 621101702 943 640304205 469 726153029 783 34280796 478 967097390 611 820888376 593 253905925 392 635282593 318 329379617 252 936210081 995 968629905 262 270377358 762 399772431 383 950735565 606 438296229 347 618930874 611 191316244 813 35038557 816 287654672 490 880976964 585 332861376 943 308224986 740 16270427 539 848847604 68 342403140 687 924278591 886 332305893 132 730290450 702 517184909 172 92011369 230 176117491 582 629789790 146 875006888 609 451439846 571 791592601 936 909206005 835 559942306 291 399050179 400 869485041 591 997794763 120 841562830 515 177502229 75 423444043 689 48582219 760 775418953 515 234374550 35 250858009 959 639173707 616 809607395 622 163539521 598 176178172 68 515815388 862 840297703 959 518672030 594 68862780 896 156259270 885 42545166 54 775218527 533 162311873 530 186910786 754 535425455 863 949533653 115 700873312 667 745043581 967 12767079 641 501661779 647 350396689 19 951540920 242 646430291 921 306684678 437 47213416 27 919748500 520 863328807 201 172440818 75 482946839 224 798681723 116 228987731 422 920779729 442 162261038 527 160515398 856 547967926 174 7261953 52 255395489 216 515019618 921 386558372 532 371741723 354 250503005 466 904433694 418 665730102 920 191875089 457 518932971 46 787982774 853 326488449 925 919589827 788 178023066 547 668742600 814 567944584 952 407944584 80 445528393 879 826931546 817 235267563 613 862286269 496 132876192 979 222971050 857 361842034 361 628708769 621 1360069 195 535280118 638 134878852 639 353770126 593 505673449 772 689904364 361 29176704 159 40178098 397 999192745 472 516166869 812 152505253 751 719174936 358 692819014 198 348878636 247 244255521 864 276055317 33 615518274 954 879644688 682 869280202 970 455102919 350 886905014 314 975011208 507 712205399 192 231319187 863 17995981 607 913194785 213 971749856 770 521858454 706 27104326 910 815179608 737 186110337 346 204886046 932 932950502 73 905127955 932 467223501 237 890782090 8 293053869 116 593384626 209 535062785 992 84539592 550 342320102 550 122793503 972 975709927 337 7401624 957 412424871 358 331899068 284 18762876 846 345973607 816 203538444 499 309621240 584 740141534 829 114333431 277 638793184 722 525035246 528 378303106 521 688551847 35 564181099 593 131805790 907 55609385 764 274472375 875 74185674 807 769083918 963 583009986 973 850791797 394 331646488 860 388333727 850 157626830 793 906903212 585 207300861 104 707820811 535 12815321 827 145804016 138 496057894 306 857467031 275 323638456 19 656978430 795 800348880 843 329189053 177 782665659 831 927109404 997 655140349 920 212052344 913 270194252 330 22365219 671 465186836 6 704703159 965 410475035 883 746596227 650 477582246 82 646948828 686 883281020 868 843685721 832 618464980 57 560477418 603 275800961 783 736590543 784 483188826 441 416035486 53 301912725 546 396025809 452 261642351 678 195249306 939 543351138 257 186122202 362 793474930 565 127728367 836 432056362 733 619415307 429 764751235 893 902058255 692 783186532 526 965498731 768 134014802 239 204374299 903 233499185 214 438506443 962 773549549 84 873993849 452 431503426 504 238359729 939 958491080 510 120423803 594 429763767 426 302615467 389 399344363 79 884549949 547 831630484 345 745159815 573 896901816 483 268557201 630 408503597 230 460987657 29 516626877 605 377903696 49 28651561 998 453505883 715 673564014 543 643089092 394 696061273 868 948691907 907 651827721 747 482747339 801 374620834 978 692536593 243 884813554 125 993651900 692 649387065 815 529321602 369 904781626 819 666120591 349 974069962 355 344779101 89 247597192 836 279196408 744 27354097 755 230822920 627 700093874 585 975504682 179 50500225 399 676369912 692 77077297 953 464518310 983 451001901 56 419346020 828 491612489 994 836554699 250 206291408 345 474008707 167 860256233 559 319795449 908 607893805 75 12676664 836 349295684 138 820001897 150 772712963 159 657559339 239 938017631 158 649802796 643 342499815 850 364565331 251 573963548 647 542076307 151 764993411 154 723710565 528 252392697 79 387098121 944 340003247 937 799813894 822 966825862 631 850777643 102 132603637 165 861574880 811 440120926 852 429100047 644 849988576 108 311828121 265 520149134 637 971698512 860 378359814 545 118804918 938 481648304 11 414557523 364 604463089 9 499447446 444 205822782 544 676773332 10 275857675 730 718758609 28 548652276 828 43232735 34 948771476 486 143831558 274 594347177 63 103124148 108 951277576 492 374767581 321 472958422 71 472259169 714 560062941 680 738642073 502 926049498 724 734097130 736 866749711 948 679785994 155 147553252 915 84970887 222 291238662 73 333560376 601 440299487 47 206247907 78 462945347 423 375541596 792 454481753 360 107107419 162 195598689 36 593435514 912 729231699 546 958369206 940 733884801 132 551431510 811 850785432 301 450492443 875 303405240 152 815812439 689 141117830 939 529103515 524 305079439 849 728147294 481 881717298 245 145243055 322 868953831 70 552931058 198 761438521 954 289874394 505 65781411 468 412307817 103 48155139 84 12597774 935 644599640 521 677257701 10 978063894 120 144716095 643 535525345 81 633838944 408 441001357 781 330616834 122 533432919 594 722121438 392 937680454 959 117255024 318 232672279 11 805866509 977 228967640 412 465727745 804 336931124 646 858190267 562 123738328 41 198863823 347 319569638 653 267475341 925 674854559 366 765477637 793 980172558 407 153304721 127 138613150 733 834838268 954 834431180 850 67110074 511 261874999 211 886288162 828 930177197 177 973462340 392 219675520 611 608300885 683 279024010 322 81069563 18 70393277 53 988350283 442 624313475 149 25877630 879 846628317 62 73546092 411 333408255 790 93112273 865 898824005 209 360237552 482 910389918 725 86643862 703 960597369 589 144240228 814 790873277 805 140439813 618 135711638 643 961532657 173 401362829 638 293816170 217 418399586 485 363817060 985 304817004 525 614046245 806 356323946 485 135263978 163 91076147 663 86098192 896 974197493 307 576035888 237 712793424 711 227550773 399 149091845 336 406475179 971 933364289 197 549708401 153 323146765 444 290191583 46 740617898 799 299275229 852 301802435 802 484343980 420 236195923 175 7014420 330 772616118 489 539681503 623 729048601 931 902531417 535 261820792 856 608148333 187 335600668 13 463926173 740 664981727 48 674577540 413 140850229 587 426900871 754 432667612 569 714827446 732 828161794 916 113268585 197 902973870 614 540924080 648 541894788 881 234440718 532 281169210 308 224258200 267 197097619 431 188333289 137 814886642 589 549561899 978 598301504 470 386137119 217 417344362 168 833244066 1000 456769565 947 726921897 107 486620992 934 754551552 793 120707543 111 719627648 326 155656423 751 172208234 91 173430852 75 35418133 346 391106117 591 684326654 708 764540149 852 379316794 117 118188255 932 530435497 29 592386554 333 588273824 30 950071094 759 17192275 162 340960564 112 128131838 913 775285686 402 837150701 961 882695886 630 98402867 231 815273490 500 198894099 398 109358035 112 673928514 91 732533123 728 675575531 447 654965633 708 418468311 988 230458773 474 24914913 886 70712471 884 119228346 761 466999563 893 372296945 490 209228289 602 802832889 394 619215877 613 786768206 694 853672499 324 704156607 693 249087620 514 758996400 776 690875672 107 437556350 143 10036791 296 743227575 946 175603842 69 506953600 906 169068718 157 286538126 581 822336255 267 876014913 599 399814068 929 905660283 309 799404328 290 745265258 555 398412244 812 140662274 119 5866308 580 974973862 770 977484415 58 728996528 494 19810489 596 143896947 146 679142717 922 544708595 217 866661218 634 811774914 907 702823548 171 131873694 897 731217222 446 912267582 741 811322029 331 383186493 776 121782120 173 816108388 438 216920402 448 528345949 98 45486497 607 796919998 117 538415295 575 15400898 106 673958758 236 856349716 224 629585743 512 276462123 266 780697766 300 701135469 672 466088918 63 974204300 195 410470871 225 297897528 476 370295060 471 852887908 468 462439541 946 312700855 615 543762449 212 187031338 246 314698372 651 666155177 338 934660700 182 453358794 723 579916393 887 457916809 679 660454249 812 982357956 254 241779030 952 825402763 376 875710378 855 666934490 244 30367428 920 197265516 765 300274324 567 694762121 365 208314957 823 693275340 572 727203538 15 558451137 423 169357042 163 821378422 707 281853807 776 574283454 180 661288979 240 972171092 322 370533047 392 486704050 92 645153016 189 675965861 861 741497638 410 114529738 255 505562463 635 587420846 514 869804996 426 122133257 532 14665078 908 581772489 724 473090637 569 632870310 90 609837319 795 479712220 197 445683497 567 808368176 822 992343494 827 404004406 726 359567074 873 568004296 975 329613787 547 75164218 940 971290633 671 171118345 624 761100274 492 358852108 962 935994086 190 578309785 171 245020427 513 103294750 372 748021715 217 114272128 251 764847954 936 157376231 306 270523965 983 719728090 244 554070991 720 204385324 973 890789277 963 365438632 460 110785324 556 839245160 97 829916937 216 228733645 461 807900026 469 389506163 295 936265222 79 759923300 37 278690082 481 470262171 170 674985073 113 147882747 996 243024516 736 288351767 823 474687116 834 598854433 537 41592504 189 505086248 296 666235172 643 224262524 980 170266104 538 227559337 69 125606724 233 94644506 397 714423420 383 347112899 384 609694053 921 57777166 960 246379311 40 66215145 107 337107353 999 794681903 849 252522659 544 692628151 475 507963187 688 444976014 731 741966546 826 301673850 162 917469625 984 180470566 688 721975024 219 720348888 680 918724697 286 999952357 994 383125411 766 699062673 560 612850735 528 729897374 85 266726212 699 846109786 174 413722702 380 766838761 96 956451629 732 32417090 873 703625285 34 400506228 329 966582049 161 628339823 577 481189029 611 696430335 361 899713597 469 641924434 35 910515891 642 153419496 912 803130145 100 874867781 842 993453658 35 854983023 382 782115784 444 126575056 46 589967226 149 128641583 156 674893111 259 964847206 506 576887098 243 691494112 338 402490392 755 911151615 184 281709412 844 92312020 711 501320250 485 149633769 684 566562063 416 684155749 423 419588788 307 642280531 321 19445256 22 778634094 799 311295497 716 83019136 197 920453393 340 325686012 958 383500453 562 107703981 541 586054420 103 327342661 150 193860985 77 97731615 477 265582963 900 209621677 352 338212719 154 717158175 510 531394704 732 84080829 182 723880788 915 582678549 580 443527395 87 851225575 119 518097042 922 838883130 240 742583452 175 85279257 227 4944200 158 89554222 125 31979198 270 889445295 76 376753638 554 979184083 847 523756407 682 92035629 704 57778921 895 510428014 278 223835569 149 943524477 546 852298382 48 979822302 597 795674719 466 785707217 606 294750000 971 907567476 316 727796729 530 375264396 394 879205451 468 553905457 546 957427360 727 336857734 429 364231504 54 243651282 121 138435867 1000 823216834 323 164364665 706 731069584 699 982771796 972 414338929 92 85943289 181 846084828 122 565830588 902 604369935 32 213688695 191 148145342 750 709245415 879 14965730 711 590319967 157 815564977 565 866141460 553 361247598 590 172347129 160 428560404 512 227154057 542 974806266 242 57111310 336 342466693 114 44679858 60 250923342 905 990222091 575 108551062 640 405021871 752 48444816 995 888191362 110 66303123 325 523882239 709 538960839 82 568655117 698 491343282 785 646214843 171 520092848 877 90173162 101 935015533 644 777454628 661 935771070 218 553324011 462 807644861 230 30404717 702 56112960 771 703403960 574 722635628 499 917698320 853 529950587 292 83127303 754 782769684 856 787137364 434 801807771 601 96164423 783 135849914 51 573277070 467 754861395 257 897884915 52 830936950 563 528298210 430 58827919 819 375604138 753 236095346 870 320001720 983 617683341 556 452045726 97 809897037 277 522498397 578 753222390 491 900320210 484 556394833 358 873817781 852 929742303 708 236031637 211 933393797 936 974029103 219 813041238 227 498407143 990 801010921 28 665756793 890 395394191 731 894395209 207 404452955 708 573948827 992 573856736 74 761041095 16 66272261 825 956664505 351 63229375 593 646216441 707 556593463 735 476757643 220 364643324 425 6148881 616 139917693 759 164433924 705 929969507 811 745089342 324 837181518 114 883118512 324 845914451 646 117076258 56 170772664 769 828534668 549 131390468 844 990398437 43 768803906 473 241862445 837 739055587 211 564286083 111 306985691 779 483432887 482 264157892 434 868216290 960 947664055 932 826402590 967 266129174 529 415105146 802 829599145 924 567748367 699 78989908 37 998889785 280 625771276 687 84831736 81 444194426 641 640926733 270 618529880 53 128564700 476 682927568 615 912708860 960 752316886 361 736074490 854 696297463 238 17148389 804 119958480 217 320112438 829 852824906 290 906366429 370 927054707 413 572932576 718 686126960 421 884959973 145 714282208 771 453999003 648 714731732 929 732861926 548 188531569 299 910085726 426 732190025 446 318317931 620 725678071 885 210161456 121 640706907 56 813153223 710 278448282 392 194687876 369 995522973 633 188934692 203 137757844 240 837271410 201 858765073 850 393960144 876 242589334 674 715177771 405 72871780 921 859881764 889 660816009 696 94983264 486 624891136 542 603228092 857 420175701 605 997380578 332 990276762 37 212311558 320 739587026 958 922489928 349 143572378 765 460788307 574 104939886 860 840978119 308 446399875 806 15156254 817 848376934 372 859887097 423 34709258 949 411087460 10 773907407 738 204688386 32 108745773 707 460186178 205 871854129 314 760252414 725 783200898 45 427477951 830 887550812 905 738129156 32 255729941 535 728372242 601 266342028 23 251826496 1 52272941 460 805531731 916 249424995 502 669794901 155 694721811 60 380282283 62 89736254 41 711954521 498 597541097 292 174363981 88 496153038 933 398836587 760 760105821 670 362947784 769 214587127 281 828039422 387 846031785 651 614518255 989 104748297 24 552219744 27 907170340 477 934359466 470 340999985 99 198021891 133 730089168 720 969334829 804 223272473 46 322316989 521 314915991 500 643519839 340 200694074 57 679654959 349 148363735 425 425724532 439 159202829 194 848769147 366 892480192 857 352931911 393 118933681 355 461571728 353 944144409 47 95072127 344 152635183 114 464499740 170 573568412 635 688467682 172 470848004 935 283738009 802 715416990 831 742893320 822 397630981 618 259795354 239 653897289 119 853900026 493 705793247 176 280698810 710 468562713 665 977758773 901 740853695 32 692626915 931 918085195 548 263378924 412 953388157 191 959932046 331 169860831 979 715831301 133 190767771 250 67058496 732 568711041 565 218001178 975 246721784 489 9575531 364 943232668 254 869747202 169 146755737 482 224774541 810 802154790 569 239763727 102 18830879 5 23806547 270 463679542 789 341996246 339 456330113 4 676322876 770 924691647 244 694477662 266 272822079 438 890667395 101 678984633 651 397108610 375 527786353 167 203692318 436 283327088 100 351511744 781 966317855 916 114748218 207 127696453 741 13488020 628 99158180 160 427254745 520 801038590 879 804337311 598 676671061 607 76289461 743 916303152 126 265852788 947 771482748 225 588988281 719 797425222 750 251531441 773 534227993 101 799204251 95 788831676 127 198311259 863 663509880 39 764123669 808 744486122 87 696531407 934 33556338 21 727588443 210 310004249 549 150098665 987 572000168 900 488935216 100 497810014 609 763486420 681 341764247 417 453777223 341 108836416 897 415428126 990 957874199 272 991025277 916 718090159 943 613218126 910 444610120 401 493344657 940 617732503 218 704047570 82 318173689 145 12046547 670 940277203 129 22209899 923 786141822 542 110880088 553 187933662 473 287014845 801 448022767 344 140991275 176 119927975 332 652254205 134 555730797 649 672158073 554 624073025 681 848465103 575 219638121 410 882021474 247 608687369 863 281537466 180 113187175 272 233063477 841 922050280 707 384238738 645 581564124 788 479521639 539 111914337 390 318104361 927 693466513 252 628359402 995 496448455 43 845620081 561 914975178 202 488787315 299 434750452 724 769066332 142 565417071 378 953244351 81 873870609 658 240871852 716 428115356 242 423404859 62 893448883 418 192090703 663 644548892 737 632178728 71 83637878 464 843298068 957 399473932 526 205893692 693 123451213 939 114980637 717 350673014 38 850906626 574 960961140 259 906859639 947 78106269 134 381101357 220 238430917 37 232926101 172 516597396 597 657415099 957 779655099 325 153885329 415 257025793 670 583119497 616 795015327 24 111355086 66 565760856 192 73773983 682 49774945 692 296092801 425 783370035 762 618321461 704 762599680 832 962585532 15 744949610 356 543599562 355 238732614 133 217971396 744 958651167 810 525405148 899 110866316 352 943997507 495 358142816 804 795057246 293 631213524 776 931028012 806 608637418 8 760188633 483 2182453 947 100026005 432 630828890 172 223475556 45 50056709 731 81871537 854 492914892 234 63047949 147 790761078 860 16808352 259 640909898 606 447474237 614 330607925 456 888434897 564 438417449 606 338692044 831 509116164 667 494527656 568 443838969 7 912244072 984 107720396 41 397808883 834 968891165 684 708307353 636 653664248 298 188489178 469 267567484 484 337288404 258 55719480 172 317537565 861 907356031 751 176994946 822 933027804 87 138923713 215 982945423 434 616294977 303 821017547 976 153135777 571 100455776 384 999211687 330 496825263 984 30434745 585 369847158 911 878926674 825 126644875 422 910103953 127 23553122 297 509426978 124 176610662 570 149030463 990 971889247 682 328913333 328 953698235 961 311132148 465 15986349 7 676138047 289 398263769 13 879319266 680 933049020 961 314177076 816 771848200 959 775217401 951 501523799 31 691363779 441 716707932 310 917802951 492 438685046 86 780710302 596 192577298 435 178236899 681 971381826 447 646937672 340 544399720 490 381086423 354 727260765 476 212943997 568 866883444 557 810134456 789 397968574 486 665036060 225 722837619 143 777591305 846 611556212 125 513136319 235 119406724 303 388036259 782 245885471 671 704786829 311 932858119 82 306371003 131 431315680 713 719329963 107 424563746 96 982804051 663 666973119 416 210126158 563 530648299 754 399928687 500 474205084 176 420203791 26 509272365 115 823190728 111 376613832 980 732292666 289 952757555 236 272373203 581 968200478 357 472635998 676 967777940 972 636454325 168 234284094 236 399765786 814 747815935 323 594489166 758 999970664 837 632836661 666 399179815 55 371324119 404 724821908 613 557694569 559 360785135 895 538532978 547 589984548 879 891495617 472 387626432 312 361795992 892 43362290 498 909794329 62 226250701 57 28184093 950 356058689 39 59291305 227 230505839 595 585036592 665 311042758 470 766106350 940 294035475 290 444633756 852 262937970 19 958292143 355 490070239 159 595816626 907 863930365 726 473395334 806 413900283 650 35900752 110 203477582 435 231418327 332 679076161 564 13350923 509 540325984 915 534838472 579 876095377 186 846012833 586 799881610 733 274260545 508 417145731 622 326894766 981 102698423 565 105280305 40 436077384 299 162645473 338 625275735 17 768878022 425 50803452 781 759101465 459 213521850 299 225898937 431 779671779 342 809017856 595 981321226 200 926696937 357 851015075 407 993728424 381 763394353 640 464457750 300 585302173 874 843898356 931 116289493 488 810148822 160 854053383 792 868963110 25 599802668 284 88013591 229 607066288 409 651057198 756 567848955 69 816545516 696 801120661 39 129235608 991 936357840 725 662136278 25 554202181 191 472986138 868 75830275 718 153211655 768 34504631 829 550787428 507 401347678 323 299349134 988 73986438 633 780888356 998 84711998 656 639896429 307 564182737 894 981774519 736 832686811 119 852286098 79 205695298 612 953660669 268 338979682 8 385475632 93 766970436 813 117660141 537 354425493 662 486046423 707 171121925 70 949143344 488 555726777 628 909058820 201 820550375 418 426845058 196 365104704 459 298551810 388 535684689 37 232932790 81 605232712 753 205418089 210 393682414 200 508033202 718 815055440 962 61155984 538 307522564 770 651022428 784 593038486 139 198626372 502 801963190 524 579184681 460 823078898 269 653337260 728 541550132 288 179807525 767 981042544 977 469229906 2 233547556 119 158124747 473 928988628 731 621334829 972 780849766 392 336687662 216 56703403 640 323078980 165 84021890 608 743673509 251 822090718 535 739850431 602 280068953 929 393948743 321 939939486 831 283879742 801 845330319 911 18134952 886 8067346 725 286160532 978 578547247 926 259133723 240 240863824 851 90400461 654 888477075 933 805907176 339 739795308 369 854671989 933 626098886 673 851009842 653 336198632 121 788728007 772 998849681 621 801104094 370 129496790 633 605000443 444 309190039 864 13225006 496 502372019 295 29250631 536 666632238 549 535341292 240 853387171 505 857509790 180 636571578 796 93072746 823 695116624 375 499167612 505 616840666 842 494466846 145 323171831 640 724927631 841 871845507 210 806201962 919 184282629 717 138377375 125 675879309 31 830033067 498 248842044 336 746140389 824 61547603 228 232608937 816 53729160 234 773611964 108 821141410 302 770196522 219 563327015 973 522333917 59 331002481 190 26624349 574 746602115 882 860037658 438 921614996 306 718126762 831 753531629 552 222249224 1 494990036 70 846555665 234 468984917 606 589654848 485 451014010 59 112970912 300 765765698 114 266865 916 305623168 804 587776586 955 925373582 28 593831252 609 715829554 918 1927389 277 245925129 989 816314081 862 489063278 721 768292127 756 626104704 258 89360912 912 629967384 63 540825141 523 462572683 341 148179800 398 438645156 263 690187851 468 575949047 31 262457991 804 399181235 479 988825108 924 823493644 371 273248483 379 874344833 756 610643424 464 928221457 348 892492696 591 860134536 318 907604605 415 109669257 430 973869803 417 695194640 942 451262133 513 232772813 357 3998517 757 200323704 354 426834094 313 987718454 721 928235175 278 512755539 249 298612083 919 589913285 241 233036510 690 20881977 480 517078452 165 626705904 949 840294243 898 174146047 237 909968609 301 21542977 834 968114911 15 408169928 628 464979514 89 645599579 350 33710242 810 65355810 438 107663979 520 966083915 405 878022160 639 965715209 787 615356387 255 550085325 705 170079204 9 457103673 638 419405754 633 599748177 671 365238321 138 749995670 823 258869343 619 584702893 465 211157963 842 688754728 762 784940191 802 866186802 692 924667968 391 6583926 687 701511766 249 870620136 845 74994045 788 882199719 426 514382293 418 655307789 545 982792927 563 460212243 428 927054595 218 276829439 269 50760639 271 911245260 741 256327467 525 492601799 955 801874541 136 867108427 848 204408253 194 224498762 866 119113291 548 38086014 486 792082744 731 503066769 280 41427907 127 438798681 486 291698915 353 136497735 661 999790572 453 239861450 932 962595043 957 722196175 171 276698598 383 60540722 194 479857601 290 879696597 487 883018569 838 874702227 564 21818162 226 714900181 488 710909318 724 114453387 313 386550710 192 561612487 338 217649870 306 966377520 926 465249232 292 169632224 540 708480973 882 54707932 127 577426524 994 662852192 241 518949640 625 238271183 525 626035870 670 433011316 936 147735894 57 90161536 76 653651327 43 810291498 360 590165021 758 83682493 408 257496854 132 38618500 251 86336657 909 640123575 718 257402683 816 146562657 51 56360966 917 814204131 143 250271555 156 455952384 671 607981939 280 397052228 589 597674552 737 983879837 361 869024941 789 543944651 79 608705899 213 896303678 553 411618777 993 416453285 661 723983220 275 519527164 225 129838708 896 324806784 640 463959443 217 211420468 797 981341033 981 333983083 435 408455735 424 880369903 373 862029733 165 134907233 494 731991206 271 46080905 873 785749559 817 641753352 623 942384417 471 861466069 779 461534728 604 745985483 241 799410271 711 934114603 373 486702545 631 364606022 652 633115842 337 197640775 990 775309110 249 992703271 962 368365836 296 421663416 935 601229002 327 490745041 162 904718038 987 442004269 625 351224696 68 20393557 385 253377716 934 896718271 520 728450098 585 586508267 287 405368386 800 287369445 231 497032 275 837822113 808 678923928 747 242042540 667 749489976 349 515576840 432 323884563 17 710417501 169 444710734 523 515080099 228 678365461 276 128660616 92 297435939 94 202869861 127 724460343 362 487173149 951 255374908 637 545749896 207 934573778 724 760932752 846 693806419 414 877697486 216 29416335 918 289544719 195 314134787 734 402687703 932 465130077 471 166844309 499 581571233 389 332487985 33 390363587 829 366336346 317 395204495 861 219741950 629 522112860 684 279274017 158 84965055 729 160203977 888 217877021 752 582167054 514 602219220 11 826755537 863 818138416 807 704215396 213 268010665 560 737210558 642 983282400 885 470031849 211 663891689 203 924591515 575 681192840 83 233355466 293 664045453 13 638830731 822 411852859 571 957093321 866 981228484 491 515987991 806 464410152 768 307542821 665 715495923 353 331720697 406 798886805 98 296435764 67 189009172 592 62423921 80 854001152 139 725643583 71 432827423 745 306385139 208 863781528 357 988877971 958 246835067 431 946125209 316 128356060 188 940971816 254 836630481 460 26965722 710 318562742 959 563883054 686 950559550 58 485364604 448 534799586 115 64426197 98 620178173 731 255208350 488 643888608 61 660145982 583 376827305 575 62070199 672 347312229 838 6479838 68 208559083 336 843963077 240 665662253 248 268666225 886 782787076 211 571203132 709 432400092 581 714039564 431 430127482 678 706881049 910 441958835 126 365105227 219 931405074 925 68893904 47 158702742 77 174269475 671 526973441 77 352731660 790 321207226 931 676952769 987 752844167 159 663261520 670 242362945 903 493262488 710 98647302 546 112696481 644 505836681 38 125072264 88 858810272 212 652903565 474 978736730 39 321791823 947 8613059 792 969847888 675 512700375 746 477497258 369 180132811 845 989079580 517 998183724 748 676772003 728 510435556 209 462789160 835 224814112 165 273297279 525 512542335 702 635025073 106 595007704 818 466240379 297 653692888 685 4389228 207 288793443 702 199794254 218 742565253 436 153256138 384 529916844 551 41679667 989 717155836 245 894851993 64 104923399 222 427487080 444 250129156 858 618414216 351 214962938 332 677643729 139 387784532 891 802573157 145 45513962 204 453145553 232 505970681 745 806501886 325 13178278 565 47032338 780 25373740 355 219511271 871 348942255 535 725831060 41 629564067 475 982754037 16 982644146 720 979910467 795 47467111 396 344184333 690 631804042 7 51418251 482 650986993 517 861387634 869 251669521 296 618674092 560 383383863 480 696488682 596 233372858 20 787809789 555 218699802 623 824243321 687 684598672 296 139486237 326 41670972 469 978686744 731 751858973 590 883896832 333 882844896 217 219923723 544 779140420 770 523449055 769 736354604 735 102754304 738 65479091 24 75349134 220 610372017 976 361984429 63 705781801 170 885546149 805 724229155 279 586661744 349 972533046 964 585679626 159 896192911 996 404623019 150 973033014 452 198571892 692 820864002 430 481000891 947 815498857 673 261168993 840 205516278 562 779412474 694 765059702 629 359076261 426 303722544 468 43908413 508 222845758 115 149307495 245 403006750 903 225509410 832 317815051 86 92164346 97 90508791 897 599193484 586 955119970 205 529347851 263 749980574 489 930113124 645 900151297 618 952281662 138 87602017 451 721788206 192 279783603 860 103655721 255 824448463 548 106432283 659 937453841 915 198362278 445 736734363 763 854295152 148 58525196 919 484204348 552 105351514 413 479104409 583 97326541 41 331017263 240 982452852 150 418520437 865 813705067 841 791513944 37 545221285 717 805798 810 988291413 206 474160123 36 382642109 797 652046404 194 13517217 88 621994408 990 158174977 769 322891433 762 97306438 984 348697291 271 483567699 60 368556379 919 937662221 54 650557317 410 190881158 784 515743860 802 154049532 994 39758939 86 749573508 984 122539655 683 911900989 531 686385613 954 203402679 633 321927323 224 551991487 799 86351437 480 537550284 608 563704927 27 852642021 741 135767700 152 86944328 494 303909619 556 315162795 494 249205280 82 176563100 123 578741892 987 92932034 205 362186 377 425919896 230 910572467 311 113674192 523 387605509 106 230179874 229 345894948 826 165349682 25 658761185 642 278441194 1 454269244 198 723018854 214 511806879 43 695897615 251 169949557 701 490744845 688 904180379 463 965622375 774 402447181 25 947180011 173 761051718 660 277758415 873 312759487 68 536230064 832 832450963 536 799529448 867 631981106 868 886376767 84 372112311 578 758440719 274 454037381 881 864700389 554 232366409 102 877921723 971 827747582 971 193494676 355 4663037 136 424250973 453 947759709 165 55903894 747 768142840 147 184453246 150 439309303 406 187379571 653 455411510 23 619144015 319 711004999 798 820583453 778 320350826 81 62837029 786 417940001 252 473368419 334 255268071 469 280767554 792 811277837 865 790902939 434 684794767 175 50594337 531 805724843 165 803807259 209 172664723 429 288719367 294 381953148 633 412204961 932 320070756 279 602690550 691 836464681 682 536810442 595 603591723 929 703213874 50 697242329 820 182708835 810 871824782 404 822013141 743 974440160 559 918758262 568 110621894 382 27258376 742 21158183 739 170145110 469 536797000 728 454006873 907 283339762 439 509231877 933 384180101 523 860824031 303 984164337 829 337962026 902 244757957 743 919805579 453 294049338 649 599850092 311 871043418 416 944051446 920 926201312 972 280588642 119 405954815 896 152913988 573 482816448 500 176798303 441 81446539 889 268826231 814 291432781 575 789134776 185 184475706 293 533966670 676 779664525 823 269500215 310 542889223 958 204358073 728 589619407 300 961790795 469 89197145 681 590846404 417 721538174 10 913093849 840 803755823 114 54589698 657 654268503 391 530124943 871 523889064 199 680115051 420 954478949 296 37738674 197 199846460 972 38181789 537 793972478 242 866422004 323 125626380 792 277750406 92 202907050 618 475342636 304 809658041 982 400234246 581 825747913 342 701170992 768 671195087 203 734727381 791 146515808 165 321394883 883 452630441 821 73988780 747 518697977 399 628536988 734 879025220 917 13686914 132 952007308 18 556782823 312 330804192 845 774184656 373 746769170 600 622054558 665 629317342 263 3448833 153 326519250 5 893825521 701 934603473 64 707137919 350 310845234 439 144955027 116 213078539 792 562122174 629 654038675 624 258032484 742 920799187 622 903239702 354 756056890 51 836076256 627 286345999 306 836790899 510 699369834 97 864374011 973 632310591 500 721087500 137 99010775 278 330890620 760 100595713 632 115032529 268 955757348 153 415985629 343 177350258 444 399295962 547 85904364 400 5184636 533 577082353 536 647525300 77 440874882 210 745823020 994 547135584 939 391952481 447 453608333 318 884149526 268 923036164 715 661467586 794 447622630 465 657476241 875 257498815 419 281036172 726 571218440 62 758549408 702 854626387 337 814941650 581 816978810 406 587024548 198 347699771 148 691277457 367 637994754 469 994123075 58 832826182 188 781406701 212 518518961 618 33066969 307 544988369 470 69714950 577 277838590 155 90706543 726 843564369 324 387957592 637 832164352 570 265489492 779 322144379 785 162256451 124 333589293 471 93295914 418 977446437 204 786697355 121 751042440 300 720836433 480 328776633 125 204388914 49 690938440 820 15508148 470 948221946 158 209779027 208 515339212 878 641595793 250 156367470 455 735047060 582 772284203 143 950315673 992 614916141 315 206343566 658 229307105 187 231763475 840 490821601 67 992874639 1000 245738432 377 747827317 314 351551957 688 877824378 801 71736230 85 536791812 542 619516892 710 187286043 531 542419564 422 978397638 177 367430207 626 50404081 982 300409530 129 307401088 229 179281759 292 233368705 851 440659330 971 995538169 396 931612521 899 466825502 325 742457336 16 781487023 950 505305520 576 736203455 394 70372707 618 237153374 930 292803048 776 851310022 972 905511630 785 666537357 691 80307959 989 555831898 496 465550228 565 126346324 409 333089784 928 509345556 187 284596369 240 358759187 869 124115845 330 211299813 416 223037277 620 127794839 822 846414250 575 547278859 92 539193647 350 18122145 839 12924288 15 557387714 448 254765813 697 280990415 670 679021474 735 508375611 736 826498407 189 256903564 710 729801393 120 365119750 528 180429581 389 945743781 439 166234998 183 4610389 231 50579852 810 981900970 825 949067500 915 146805920 795 474288803 603 41819047 115 394956602 587 171800691 661 612057835 113 713652017 997 173268429 833 426130647 94 18267755 982 444512779 563 435269193 943 752044291 246 589588510 976 178267088 434 839301199 32 995455137 708 929776127 438 189772073 316 822228678 40 338762673 543 95923352 586 521126493 630 148549332 558 587057344 995 923279648 707 149142979 933 201034372 186 1450765 283 946359111 246 325751506 590 318667446 185 573589626 457 760284165 1000 973105786 270 205748012 750 1427530 269 435469197 680 692429118 683 501149904 665 352233794 126 370344450 381 190051578 647 653243521 986 810835040 839 288484174 159 422521116 893 981707275 561 648689037 721 762639849 903 794212535 128 553219299 354 383871005 150 18847015 55 868610590 628 275915985 719 873922003 783 662081738 772 549877254 890 552825062 211 291005830 486 698262798 366 446011037 481 724080500 601 129613494 45 659400017 146 505390508 861 259497821 761 265056474 750 759835302 517 958065064 581 885985531 198 297811499 416 478449790 710 469432926 455 737892983 225 409047958 207 955367794 935 500238380 900 867615137 655 358670975 467 83758569 285 42545205 514 200666032 829 821580531 993 962763321 161 543946576 207 305203030 25 488983779 214 336393132 394 455805547 209 909476193 116 499701509 36 38825618 845 448281565 706 961414900 958 911969211 278 559826830 324 758437079 642 194318291 455 883463394 280 776868308 46 256600939 701 954357400 241 3398880 388 749973800 186 849966393 540 314126044 161 145543782 548 4004322 943 934892947 253 493909470 769 251671827 935 530132549 777 469279791 710 16618027 199 541020279 980 672798200 94 154497666 344 29230054 569 894115177 72 594010981 697 687431728 255 180009730 74 620520982 537 514348467 425 514346272 37 306092765 654 22847248 139 727854262 865 742138336 57 539066716 289 909265392 514 68205351 418 111807836 829 834571694 481 921362529 871 982117837 146 938324630 470 709488422 640 59407612 615 618249910 45 246224167 953 296751495 857 803263037 710 779410699 656 530718172 621 380542927 842 394382024 630 686478884 198 764088723 277 696338606 353 515251612 61 23584300 766 205261351 574 15767131 539 630509719 572 834532977 298 901792096 48 442744873 995 646134057 2 262746102 866 987193523 122 99665745 492 151934789 896 680998093 598 530743646 270 588566646 821 476526831 597 901072965 458 18219067 289 414448736 379 599945883 726 78709693 853 226396997 285 63010295 191 820507930 286 740740556 772 401903851 486 391830541 649 154132924 67 168213522 672 756779115 733 695043064 321 718611126 581 953688339 215 185449058 278 918012351 833 298743170 856 815107955 155 165384245 537 857004378 744 772453254 412 300902879 800 757580329 152 325849669 193 876560722 913 730234220 885 869041111 313 83141875 524 424594997 744 101632544 139 103932584 375 245330959 586 719250363 475 35180143 11 78215276 202 478598128 129 809955670 353 425348209 468 44094405 161 369646114 307 298751120 174 577617728 140 920603950 785 662754472 794 624377947 416 213391969 140 812485607 485 96815828 434 459971458 68 414839591 832 111477387 573 188596508 414 562844020 912 20421022 886 137257239 874 727618104 816 110696730 562 843925419 788 203605036 280 888232972 251 754312428 957 247777171 951 917623235 425 63688329 741 28844504 642 23205987 460 971047461 817 202443028 333 551406616 618 300203890 370 614339261 793 405134419 143 718431528 710 885752945 877 195445958 833 151710528 546 157316570 649 438688110 688 870957991 381 453455459 666 716438747 723 633994910 681 703581522 519 134351386 363 680381667 494 513204180 545 717940389 328 122728539 414 681217162 438 748928422 437 840289525 991 157306376 646 895879450 184 482047096 410 43833767 500 903338592 172 121169296 671 87418596 857 628742332 945 504866475 285 954434515 184 935434738 216 158808442 864 369673975 425 66707052 144 582180758 633 276741637 615 492545851 997 980681853 946 144156147 588 699634766 1000 919126830 915 815946339 622 168222289 709 811218977 318 629412498 953 258577080 100 138235311 138 500319663 790 229023447 579 76384324 544 746602929 488 549434595 411 100767109 746 322780233 378 457697863 947 325759633 788 408111590 153 850003562 640 37554659 263 353970925 871 228183437 12 765357991 358 984743650 223 311464173 717 908869313 552 768755067 378 810003990 382 479378209 852 9249288 381 422150657 873 682985987 935 602887862 74 834494633 593 509156922 456 656903723 244 355744898 431 201720402 206 98181063 973 45006696 744 616439985 637 431424152 229 388685469 163 878385194 159 937764170 118 589899340 923 80356556 211 40356207 163 127238385 89 332472790 60 903689472 720 377633182 801 475388413 782 932469125 956 954626262 401 719440800 29 901780421 671 811921843 382 489308324 557 182632238 198 416091861 662 144786626 894 336001461 90 110372931 795 449194074 19 247397768 555 742951839 10 385909181 510 345128778 823 367073509 397 560601306 996 924183637 922 871543844 980 88847199 355 3059395 369 944794358 186 984002853 800 397714060 438 733220265 935 95579921 518 359415444 918 805928180 924 799067610 57 674805317 435 275683667 999 82550308 313 934943155 378 868360875 38 345335637 119 828637206 140 60304705 476 229249889 919 595212974 171 953961947 515 930346138 294 929255539 711 263369480 626 671554341 16 713047835 889 390132295 801 189997386 826 280825167 951 299112833 289 935909060 714 592827024 71 395030137 936 783157597 10 166045240 582 121047347 214 384020113 139 814113780 313 552214215 137 130517456 439 356050427 217 213351454 421 321654600 120 324101488 968 954030483 684 241719493 265 238995065 995 165217985 549 30855336 636 956753554 828 979328572 947 424231461 254 412647016 214 615294258 338 365750923 216 650627508 946 174811133 214 892029824 487 689001929 591 362206694 136 65274342 44 503177797 563 841468278 486 856366661 177 140579066 616 52054362 337 41683404 675 490902140 580 453457565 514 800423560 557 469468552 262 465631485 389 956374 51 753120844 200 835080944 490 775655055 572 925580427 309 848370062 118 953791077 511 412155273 300 278761168 76 50243608 47 286146124 348 975366811 631 762969965 129 559521143 369 277945462 197 964317827 858 665732788 259 493195232 36 110703111 293 987130369 629 703260143 381 122495334 646 748989982 449 745576824 434 755513490 104 55859693 616 885347652 865 47555747 778 622839354 619 724296705 26 7385483 436 166708704 468 186180588 355 776919164 708 514929234 732 656043713 68 552290061 571 472860655 285 76019023 804 428637679 260 659634205 501 854918248 494 797173732 255 267578389 347 416281346 337 246665610 861 655745882 452 932560039 222 139055918 887 490264420 911 649796232 384 107165731 67 363168154 64 335576596 284 589485445 102 680914655 362 685545449 11 11934267 743 957197638 523 124664504 656 63848068 759 957664693 278 706662731 815 347802214 11 739046863 376 58859672 463 750838260 277 431958147 177 573627427 750 148377188 864 25759170 61 116631365 133 611379667 659 711600443 710 186314468 529 235061617 15 811433833 3 760954910 152 519502788 26 56240221 223 954413366 912 668638219 677 272217067 207 63035920 381 471709433 772 676435238 791 585659768 77 262086204 531 880823684 412 200121864 940 922518421 137 614952104 137 134197305 391 740308902 685 85635648 566 166142139 697 69971909 474 351473046 406 80183481 441 934898056 309 904458063 605 920034443 194 562122383 408 262942082 103 801073666 472 74529323 185 556441777 218 901305701 409 896306552 296 870481775 410 445079456 657 225432516 131 247414658 489 590705399 479 699854483 723 892594679 551 383905679 517 658816405 47 914828725 376 783787048 779 131182186 953 845882544 330 509460846 564 126349701 488 526180885 41 370261860 882 790238325 678 546748635 325 988724043 628 12536812 318 401026512 336 576151586 578 687320971 584 208230313 377 102654405 729 844425477 985 817962546 546 214324081 796 381519336 612 453237941 94 539951982 626 739389374 11 995597764 486 565549836 452 462833487 503 980183191 11 531155952 284 558393225 347 172596348 918 261921975 565 723063220 617 527519505 714 609578292 696 673429400 66 553312148 145 828040584 864 318004119 501 777823892 805 140151777 331 440757822 25 933264086 227 562028784 361 790980166 425 996947210 860 392242990 823 19758746 914 43499457 382 912787030 225 25244284 307 600054226 768 29008817 249 107858423 502 666964452 575 316070738 149 589398320 818 574722998 228 248445564 476 222370097 943 568182861 941 376138422 142 102386055 734 49990142 2 870604687 317 433312791 616 266577375 334 935586901 390 969160515 542 304508689 443 582648873 187 229469676 688 361800792 117 581589180 1000 811607296 156 859988134 390 749544420 142 861776500 894 86315241 67 854463301 365 831272073 60 68927100 528 619947708 353 332175551 862 904352250 663 12178434 496 119225371 198 357024706 305 259877931 774 330924152 657 988025941 903 445343228 891 408253926 853 882453963 680 522386110 477 896113476 680 77045089 254 478289144 848 865691316 760 143807024 424 305145269 81 45536213 308 479540961 426 565408408 187 753844568 551 502564727 387 872889482 901 170130495 77 872853468 972 899566656 349 59105547 545 370118065 232 205112303 870 799689142 494 175214288 16 691215259 564 174004869 24 873859518 877 561718413 519 69920880 272 715335968 631 563203901 886 408979852 565 24762179 30 848807671 842 80670417 197 919782741 580 9803315 10 965299534 393 543256081 329 724163539 338 449135469 707 351099822 308 351171083 583 918765193 524 577579519 991 82131227 488 658397657 692 187920572 579 442448381 674 171334269 491 262592531 2 275946198 974 595442876 665 755894302 737 798095586 973 403403728 435 981922159 22 360926738 714 3638941 607 135354352 585 785676623 694 434444291 431 511549841 57 901108419 649 819927668 406 350843439 297 558831836 802 111378600 125 432039191 541 325192109 420 673736911 317 329078448 911 144363683 763 685209885 195 384273967 687 915435907 757 14227194 542 30736634 229 143486329 999 178440163 629 700635450 247 69882509 440 323210848 98 573738357 280 718785199 133 416274395 373 495350125 305 187570084 563 37248509 14 886251935 372 3094912 572 626316992 28 252860448 346 29271163 290 250924603 547 415416246 633 443917932 13 733994715 536 377982945 337 325580285 334 113037163 536 668116077 327 104795563 470 98012376 718 80095961 648 390335413 691 464015883 720 204067618 133 39895942 156 232474405 124 777089964 80 316188816 437 855823799 358 596083520 860 340346411 209 380920294 666 420749361 176 311205360 794 710039478 51 206308143 224 558948842 983 975215062 295 481796388 468 823018351 900 612373076 136 431424457 565 891493711 765 182743140 610 244080816 500 290822011 261 419158240 505 68850788 601 195056457 334 470722738 580 347376414 225 967498458 83 391966378 532 680106443 240 888688661 625 604520784 468 926796934 855 61957305 435 192797122 604 434490620 681 49894769 871 282562855 689 451201597 46 521928671 234 75425693 471 757816640 161 689551045 357 421233725 216 66963535 266 965028930 916 116858021 28 490532393 145 523661008 831 493117315 548 684810944 887 109699592 855 965668319 660 895097084 174 410851120 175 900933081 414 485334082 280 40596580 945 493756925 34 990292812 715 230573828 649 398199385 296 237242749 117 781231826 95 219643464 623 779504418 13 877986666 875 246694635 544 618115976 941 866759639 767 81159416 756 984712569 738 186846204 210 638751269 471 732539104 670 884184344 590 112120972 699 826863414 466 222454607 641 306315682 118 80465413 109 851680676 800 429682108 628 684001019 31 484050932 314 894241552 864 17818479 170 149314920 428 60052492 3 236331210 78 927652813 378 231121978 895 569494114 351 712470786 437 905973855 224 792637298 407 574089978 213 960917039 456 799092180 54 989975261 650 921629197 528 543049198 346 350719133 843 837083195 625 478527645 630 564560723 890 753252479 953 72185332 94 472390348 459 6565725 822 193234467 433 791884583 893 882477574 995 974608726 293 570264997 136 159595919 642 647296167 765 654885735 263 786232011 796 636410239 27 755764632 469 126739392 147 223982150 582 511195811 785 75721309 907 356236600 678 734198458 813 412830727 598 884379906 26 309661969 848 467980727 182 568925456 736 537028788 98 899691386 926 300808246 947 428189673 742 122165884 543 173876194 455 670835202 918 993140356 314 445929925 390 124991350 181 580311981 172 437251891 356 110116805 21 186469589 96 832904616 596 44252606 530 712711456 549 186313705 264 79521001 458 655520747 11 215135277 113 584710830 559 47594473 444 133087134 60 37408109 646 391944211 874 932804207 905 970519037 445 993108484 358 10938212 146 940286098 134 408657663 124 306691620 688 211804719 807 947887003 169 628182468 477 125982506 867 605950083 128 136504298 415 463424694 23 828990877 251 970425355 81 221264905 389 755535154 499 585609056 970 163880555 930 524601008 377 968724512 529 110506805 856 556162281 377 584594073 569 135354681 121 109842591 513 161379820 239 730531437 85 5580282 178 334180524 497 134513067 64 755083813 740 277905384 477 875458856 711 541196689 602 3911901 310 329294563 612 818045016 122 968364050 951 761003706 54 542417633 770 890636471 423 651110393 73 499486238 272 522258123 183 849983105 900 556479505 610 881077348 807 129022887 201 134474627 102 822175689 795 798515708 967 548454096 31 7434541 204 830430552 109 299428644 700 940997294 840 360787094 219 693302394 279 331003069 226 761250012 774 984351736 961 480839376 964 53159695 436 11983847 157 523156594 624 186189864 610 459775763 218 6450623 906 306680471 811 914871091 297 970749043 643 362286310 865 899298013 597 254039744 865 177585257 214 465025945 62 537700984 581 721371227 806 337030303 169 735549182 296 595538295 590 228513699 713 338574045 225 180792605 381 308302293 259 514271406 501 477191594 89 652189844 481 789917555 710 990652894 114 104143992 898 13769323 762 66484031 866 599863222 493 871336631 606 939116588 159 364446921 201 639390046 883 917004344 627 980029313 688 611415814 737 844280889 168 222205252 1 944140901 31 718527087 957 526854503 211 447210852 105 960185458 282 432647243 658 937396692 710 65657885 15 549316593 643 352598206 788 616178307 581 998752127 948 59491808 56 720076742 14 511268637 876 157496286 510 436419727 923 494232540 714 751801579 148 838352794 729 465178657 192 186323399 951 386812983 806 58438579 637 209614627 104 381352052 226 272635436 785 933529573 310 434649739 666 411931116 40 227989110 403 825302336 106 419303997 337 507978664 915 421849645 132 466290982 234 693500800 385 610610573 400 916800506 227 474120227 320 869903219 340 403059475 922 799592574 590 186342171 975 118932723 666 645020788 110 349764326 204 155912482 869 84338695 89 759366276 26 854590231 773 852943479 947 673481284 843 194056800 755 271240667 555 810167534 64 261116674 106 408263086 42 119610742 222 418346613 799 426409089 232 855141077 390 404217380 680 748199555 492 974012439 303 160982978 792 854016163 560 644381693 886 777643621 926 144460820 996 72364170 656 537327910 632 490890471 736 395624019 811 589044846 815 986920045 55 147214823 527 283978343 897 16007503 25 688227290 183 697590078 897 893862654 818 71971190 517 504346543 282 343252847 715 884063499 873 477825359 600 49892968 797 307475668 291 455546084 334 428040592 737 984823856 433 452629955 608 699796883 224 110447570 787 376239100 269 357804547 146 191229936 232 201384387 110 124281192 116 764315426 438 408429549 519 934107371 95 276827947 335 810053624 72 47957709 188 170931346 908 103375891 285 231766447 409 778315665 825 443732150 669 370120033 314 848952852 224 605382212 925 263167720 76 341879853 91 135927881 947 647654513 440 586287020 799 839059052 382 850292413 8 671513183 956 519010627 244 406913735 578 785249444 542 447732483 794 739663353 645 765957132 996 373569973 772 612034083 628 733293854 543 961642595 254 110618981 656 778669184 107 577563583 459 297150448 459 66893639 474 674803729 611 656900032 973 198169257 325 437158508 907 440310314 918 691670682 891 974718773 738 904522625 608 700249000 350 445275491 609 862709696 378 676493469 81 360973444 726 609168412 644 700110744 768 95307329 732 839317068 225 8109827 980 209025737 765 778664055 396 738097697 764 687501751 922 26914488 416 27833283 501 837514280 273 268615746 712 760476198 694 767297079 68 134714027 622 74419373 357 482818432 313 798777872 170 709953582 447 510487600 77 928822608 523 149705418 224 989763545 339 68970973 724 366239307 81 343518686 897 173248556 436 559833100 934 341761998 868 164480003 871 103836119 702 159926231 527 559521504 514 658620348 342 379159087 747 786979823 256 669790641 565 770420802 734 931702699 739 30000334 46 329082915 347 894215931 796 292523022 734 600503392 878 991425752 404 286176099 574 888357642 861 592774876 896 724548214 398 717624993 767 276658068 853 828044736 962 691548728 840 36077913 144 351675201 948 286087531 256 948188269 293 619643740 865 66363906 245 868798872 123 47925762 340 427331520 723 112991281 732 524176676 610 681811448 874 806523767 363 649608235 454 881155525 652 769789612 456 715838620 26 998669704 197 116217159 634 24033948 596 920215032 105 471094872 409 530805514 1000 556643054 956 211280290 957 35159941 82 517410307 63 414388981 674 667531 786 710419244 317 686481654 683 43133608 940 793579465 896 168104093 314 125069785 326 736715264 151 884952390 557 626579366 302 746670894 415 854928769 517 304026735 58 230017396 348 503281582 593 408412545 537 844152296 36 625911845 706 215911756 244 542434187 880 290131284 18 576227482 386 280842958 823 24193986 9 737122423 651 476287447 521 270958115 908 79900485 415 60131630 882 918396972 379 12943936 872 964645546 175 556205121 42 282823157 904 134609576 964 166061854 673 957637709 203 88667365 917 834208152 89 900039951 300 72167231 510 731682115 468 868318370 162 330498583 390 272284861 171 779257081 870 866134493 404 636968869 703 492321754 238 801035459 316 371764215 116 319810251 438 850101491 585 397842738 819 295113403 659 31256344 214 390670866 782 162673379 879 970488964 476 289044038 220 570433752 329 144051725 336 807785374 146 641620921 151 743748121 673 331084551 851 400764199 520 305075539 128 225685129 761 879412359 188 660426600 801 591552130 693 664220595 518 173644043 108 511689355 765 107510370 403 940377641 133 53329614 916 738944392 410 844877116 139 860933434 34 574670551 739 45162287 139 588475264 617 626146186 430 842786443 5 702729450 144 929618985 1 636059903 436 461881975 440 68848322 551 107174396 230 920560023 856 408451469 732 440201611 1 641182432 130 721756319 478 161952256 661 289133841 633 346188408 852 97372561 30 306055119 181 861176176 954 553219601 416 636312508 754 609931282 39 233684783 1000 504615324 241 880186077 403 846236741 279 413579659 83 946586194 537 942685995 419 696468482 629 416307436 648 130961615 387 44597779 867 860187579 557 627259763 919 35158453 979 180393138 506 217956880 488 993629471 794 905471133 728 753373102 949 204644344 358 227977546 873 243269594 256 193408809 110 335725976 793 530655864 866 806193191 63 998135447 693 348885026 449 454196919 344 957840200 864 132249800 797 824421872 69 669867322 726 365484263 196 396285456 555 285418504 491 708412407 908 86709274 182 273941803 470 481303887 788 490525763 264 28122728 535 880182986 768 312710505 152 117679353 974 309612281 406 446305914 911 66488027 695 11070213 18 380318384 226 154768342 433 112929229 961 835613547 37 984991986 542 974629009 532 624453943 180 335877117 973 455496841 492 954852796 440 724718442 98 4594515 345 384095019 287 986279584 162 969094678 503 834492542 652 118291494 449 476432295 265 744130835 132 921549172 907 413311598 364 702624270 588 604765123 865 471723251 640 171448360 851 163221501 405 171892726 609 311284913 437 36263928 14 274948340 349 335179909 426 660691923 473 165599652 153 643987160 906 78110559 88 701749590 991 766020192 422 229476054 801 49575072 680 298497864 225 750295173 74 715921270 992 185795449 203 303277857 279 279317068 124 791637832 343 645721630 655 66689164 225 24886026 229 797640998 972 67562343 184 166400409 805 245631333 580 293466530 992 581289303 751 707757199 414 925444354 953 753063740 668 87313122 699 506784733 137 78120537 49 636307162 824 604144308 302 237653111 98 188510072 356 913827177 983 249698866 308 575884820 821 247391028 860 352578286 200 122813162 718 162007032 474 553283629 384 799664859 743 666580704 139 275957375 173 207915081 742 87357713 616 262543103 237 821945604 666 301281536 505 19388690 575 896142014 674 180162539 438 929842389 389 580646659 695 763487765 860 329037954 652 103677473 529 606694425 719 231307126 640 254425581 382 336944159 631 89865197 954 634209416 821 40408114 973 526519500 946 970165355 90 250553714 723 10880225 999 60926839 331 232924927 519 909398086 628 344472903 721 455669022 865 335709974 607 765186586 564 728208186 933 252720602 329 381244706 374 854287877 712 483852137 809 150329934 572 533951343 643 627094295 822 576719876 479 29577202 51 532531392 737 31958153 643 773754444 764 299944395 769 711669058 661 53187958 359 240111045 924 97954191 282 414666072 690 166682220 108 802479390 240 825949406 275 464174474 897 731973994 795 288212216 813 350939840 338 544471833 22 892791984 175 727518463 344 37373433 723 612926270 368 855064329 937 558150967 298 923280175 847 71784506 862 301549144 949 157988755 739 264954940 121 955340205 917 51053023 613 428104672 783 837735538 110 247930803 99 194275787 148 506784282 9 185036501 253 621049243 177 596651688 764 902758678 677 440222039 352 168104939 216 234838813 924 979252766 434 191148663 163 797876451 752 969454088 215 947984555 32 10070126 628 122821791 963 202350369 550 822179671 822 17095261 853 531686906 84 135772431 716 273527056 378 481316480 304 955612691 844 135674555 758 333070118 659 759535278 565 33203364 622 766561897 966 362005995 13 810470383 559 842780900 143 333804507 642 936789117 175 931646033 892 42558163 146 826834902 48 391035974 196 572915412 7 123437818 923 339852674 658 731542318 284 843868546 748 489366266 829 116261520 372 23035876 291 1695099 483 109912171 106 609256805 801 598517992 954 664013932 705 17407802 546 802040600 26 228544455 38 31290761 407 247135846 906 966735960 980 221190284 281 763887753 419 819059834 472 434225492 712 102395589 973 787291881 407 317912008 687 236123985 577 901211082 645 971097679 635 725484655 625 81450927 979 479502718 928 95550993 411 652498424 445 497847056 464 139927440 356 883049394 179 6578729 104 429650311 351 50596551 280 889566289 942 693101061 946 423501101 270 756077990 488 751762691 499 15725030 72 249143956 539 647397429 734 502333039 599 919047847 986 727770405 837 866539724 568 229500328 638 596571019 515 872485943 983 533026232 857 158350244 625 729559290 241 529402562 757 938247434 772 711982150 509 257681952 620 885421362 74 443966406 231 393626926 792 643730114 245 586892928 662 150695159 879 223627934 193 305668989 471 36847941 9 425620768 879 158276981 839 112189037 141 227456702 68 820377523 999 311463595 579 33843492 839 707630055 262 397998574 249 304554708 593 581198760 963 917004338 104 427953964 846 331789321 282 425772263 713 996654866 302 200527714 896 400078156 853 144700069 135 409465098 727 276569024 348 843159339 269 986541877 227 491376026 931 958560347 573 3743322 955 983688740 453 730398220 125 545929750 630 963559332 693 207173728 425 194929631 621 713003048 611 914794436 27 615982025 585 181162782 840 654341191 458 897686351 308 377310969 294 744922760 964 847027602 592 964317864 168 216978601 814 531810070 537 147686231 221 492244811 731 213433914 163 678250647 329 638510849 595 651465215 306 380600024 303 804769238 756 731730939 763 374527636 98 639515614 742 665936076 436 59181626 583 576781106 444 133757676 498 130606371 196 410742831 176 293731415 901 423973458 598 704255089 559 613087810 978 489285138 261 998242370 997 413087462 221 689735076 767 833999879 272 883045867 104 404481012 734 955760099 820 217391367 660 574402591 926 512492878 394 65479144 814 440362429 483 616524148 355 921122055 496 790981673 357 633258716 843 562874889 527 486386764 238 603245836 674 19626673 279 93304308 843 387881979 298 726030385 915 94365167 985 984586635 487 635148556 564 878677006 700 389122530 236 503304904 628 343176514 388 246327825 436 12912393 71 688502122 198 618131733 57 337791075 108 208886256 423 979972815 674 504840955 414 350798388 264 763069318 650 776745914 268 975740778 4 767133914 130 102026136 739 217612796 324 802717130 602 807012763 698 331088747 556 428327091 562 96075716 598 980046387 310 377015113 386 606338922 269 770536157 604 75640160 280 498078019 582 830996379 562 393893035 871 415182750 652 74647697 268 954632197 420 985483635 721 738653005 67 105007925 326 728287581 244 250331245 75 973214347 735 8209268 544 667122542 12 667728226 806 13252216 485 956825123 922 563892402 49 252859705 973 435877496 408 669283903 54 564611606 864 420844916 524 5973328 184 799782916 38 613684411 130 675749225 188 664562678 508 828503668 335 243180641 268 188165512 410 918376568 927 610772545 657 85479725 246 230599289 941 796245612 961 255542626 721 461878399 169 354374805 738 790731684 693 45685825 271 154118105 568 559157052 200 576351393 412 577841881 894 734483257 787 53622471 272 977184163 12 335974936 877 988513757 554 135114271 577 758790331 377 634923861 720 928441129 737 37081373 693 752833685 332 605382376 547 394893481 503 511771840 108 986337713 546 65411039 217 607962960 603 241377455 61 535752559 83 177705154 340 259985740 334 467497941 923 819198146 419 870149426 245 868413473 253 715702490 463 582625754 86 941673612 211 380682026 49 281805518 465 808894373 757 354346617 405 566702682 625 456900763 786 654495099 636 822651922 210 925448708 250 81826668 599 128501216 80 856608229 71 367097745 790 474170852 153 551906245 678 479035755 689 629199514 699 737110666 544 703517925 464 797773998 78 889089207 145 410652015 605 348649589 260 719146879 90 786125874 965 214436830 620 797113580 33 193170269 989 33100189 108 879657233 679 475582306 926 163842793 207 633870479 270 134241143 740 944857182 103 822287165 402 886016824 918 232963441 669 382225052 403 731394432 580 954764541 900 839323495 733 946485910 664 754594259 805 866318928 516 538333800 911 194465633 418 213492349 814 592971100 2 322512440 679 390237416 211 510297932 493 668732956 435 573957494 831 879847428 95 837634608 355 440199914 588 52275045 949 440914077 88 181853122 233 517892819 387 545866444 125 524701199 616 587110881 241 286170039 4 602210886 475 662524847 327 838361355 681 530937440 139 804074590 655 348196600 124 384804963 990 371421648 41 216917863 249 565198906 121 63828790 515 968086264 539 992590389 892 324151825 309 874316835 218 845396257 671 155368973 770 493685901 902 355897974 574 376425774 238 995064156 724 545261605 373 773642892 798 329501664 143 945685697 195 725506472 190 192112179 407 624193897 142 999321832 308 980994386 175 374558893 569 404384526 537 479481877 937 497437827 339 5499877 834 770763353 147 563888168 726 343002805 132 198051382 870 300310526 60 158867131 134 440710289 964 876112890 523 3395975 380 879630040 293 491946362 732 292133993 404 142019812 504 496730324 35 680116893 391 976541846 253 464833998 675 64939062 691 676943682 459 182850719 557 593577688 440 513733109 504 927375377 258 142066212 831 416692400 169 427232583 805 487463987 245 347309611 10 107863177 284 848165596 34 56678496 857 825628430 769 858776827 362 705352871 504 55196072 265 831715832 99 729255232 72 574837087 686 522392343 315 327732403 550 357720215 696 917593290 174 279553186 52 685595644 816 455538077 536 697179000 982 692436705 4 409394619 890 569821861 481 369288361 497 689645234 240 510494225 674 646869900 59 645476533 615 106880039 588 782494718 969 464241164 964 208687443 424 570203320 783 621574876 691 916798351 318 176867264 802 767219189 945 419711326 852 538369146 168 910296125 596 386070025 734 53017585 474 867769247 147 4427865 851 963330484 394 343687322 293 641248605 654 344278204 636 576430603 724 416722189 114 749660776 235 666314208 733 585839052 369 533455965 32 111025943 979 703613349 764 32594679 787 317755670 462 489841321 356 479616399 996 135285877 687 688666094 991 519903277 830 184024622 292 104165142 934 781342738 74 146323989 77 299333626 147 659365026 222 889146046 747 294097861 439 956000413 829 662300400 577 967575297 279 912438950 288 82638560 192 315827993 489 446320350 677 641095787 748 483127416 915 866417508 190 666475786 11 415601875 352 982822281 141 822239879 248 884876864 607 37125819 144 493031003 63 993679360 341 870074266 811 476974772 858 3623168 711 65661890 941 191125534 904 775531290 134 781068253 738 744734704 591 575130481 45 380868268 440 187905668 699 919884539 639 446870121 17 719042692 798 689800924 67 488401312 366 175807737 450 125099758 444 786696467 80 543027087 127 862446275 386 465897187 673 126627223 945 79501586 268 694568549 44 979304959 839 38597282 143 514489708 820 272759203 568 365442704 226 414757642 298 4876533 881 313747672 636 638645757 45 796493178 537 491924804 49 102611529 148 162764926 375 824116305 948 728077805 102 117511131 27 576154834 321 869321949 562 347653488 157 585908275 24 221161485 50 298323140 196 156988158 680 469450969 774 226879534 838 982938595 524 327651640 735 922942839 248 808949042 51 534536104 61 168077084 407 556192127 840 824564775 338 492908066 327 505261414 349 880756344 250 270090950 201 991358052 562 891943108 302 631744944 178 42440799 289 150388683 987 230681293 576 205761705 921 649167695 285 385032312 582 310761346 918 12267276 31 774273545 543 735086902 33 604618779 238 161228532 569 121491909 753 292082362 477 555453564 421 913219160 165 849237161 364 647535481 365 827478859 10 682784055 668 353744328 317 794126439 704 602675776 756 387434892 230 611954336 298 602422559 903 650839416 229 455031004 78 291404211 702 649863878 409 236743789 56 684095807 19 694915656 646 96453255 724 610642793 715 300856348 851 341462727 806 37257896 729 964008077 136 31701140 896 112132360 371 547424588 77 812604665 545 177925239 626 867169160 329 746655225 977 920650488 49 880969637 58 577391530 665 263917145 83 842171148 903 340144417 37 139802958 299 756412723 677 650488849 478 461092684 209 437916685 890 612033927 170 955405505 924 507075480 277 780373404 792 327511394 914 979018997 803 630776177 474 877607790 646 906200010 87 423703418 10 714979190 203 969721250 124 576124190 762 921527431 677 590280756 919 685537307 677 331417742 911 106735805 257 814990296 542 123882069 517 428847984 718 219465273 173 838829179 211 525688294 279 993311585 126 294194303 159 652237736 444 227078906 955 543757110 418 301027915 623 853838463 736 599405294 662 706886714 265 397919013 575 327933524 73 717606550 130 399180056 362 801420594 148 986898140 522 498934088 748 203478504 356 326120947 556 414639095 720 724067152 165 553373747 744 176074432 158 706749876 883 406134473 852 215698682 141 565582785 193 872308628 382 438970168 385 200821333 920 388930332 456 951278796 893 864701655 231 166213182 954 286744095 343 920748573 992 316454158 588 826170689 646 832352211 394 970993214 90 704860172 277 163797850 599 938820782 330 950782884 108 456972357 977 446212461 204 825726780 769 507625552 676 847062243 66 15099353 421 31358720 636 800135121 726 802864083 291 349727471 786 354866775 969 209062081 205 361995233 612 741786421 69 660833632 947 923671370 90 71475549 664 565248189 556 910240933 60 828736945 195 39155488 816 477537494 493 786253297 214 26904724 192 346014616 427 616081447 508 896823004 8 703245276 921 299677563 608 352296354 245 773622059 447 516259581 412 463701996 138 280513796 152 132677084 639 779092906 416 765991139 124 811981476 555 306884565 697 515692989 835 979941315 522 349683889 212 419447584 329 1316290 499 683732939 909 348632780 768 710467895 456 144440863 327 785869761 97 828778817 992 213740566 167 609139657 989 635797655 374 619802876 1000 863099271 537 134151141 399 922146991 988 191073919 91 394236186 556 597822214 269 925437793 28 528186212 892 724534401 98 192508056 662 17549071 445 158598233 921 88813177 501 14575410 253 703596012 507 262573489 586 225611746 643 671343729 552 222112779 651 10237274 872 462372796 307 732592480 10 625512796 108 474336744 948 712499361 376 341036050 400 667575955 899 105340631 112 609213626 723 845321511 558 84613092 90 51074063 245 639136093 752 936137506 519 761856625 817 294561911 465 904991120 207 516697767 587 87919147 628 7410787 645 491836135 143 228597271 396 372561589 267 699410569 414 623987313 576 404988550 403 945659074 342 794432772 181 36728880 488 227941040 926 423808510 329 509889636 527 17301982 297 996237050 673 356421089 272 805792892 75 605641170 204 198826157 771 353291312 901 408956489 119 513264603 955 642354382 780 407393827 61 616310827 713 941313996 339 670296030 413 192401191 718 730654434 497 697295849 608 502305660 71 230538879 806 163932855 367 378156514 435 900095029 207 619805504 716 754560585 880 52302257 846 464020257 725 802507213 589 402601522 19 560676926 105 240756725 297 889540460 299 832596744 805 949730110 993 760533218 629 861385909 189 324656512 730 2107029 468 738631650 557 290348809 364 333751673 102 920331269 934 77409299 530 344895524 553 645101847 916 811513490 267 560542044 4 197358988 189 400072016 964 9650852 350 169955393 967 197874464 412 840933426 803 485247837 323 883543536 868 525229451 59 832512617 31 256672580 20 230333028 996 201574036 945 428380180 114 510687373 498 181633717 801 412347941 751 664164109 811 509028425 487 50223590 231 995821403 301 347689033 856 47342043 846 254289924 462 336668945 633 184888648 934 621495501 773 792733395 41 697028290 909 872280910 435 380756206 596 89999206 495 542058321 524 832879184 516 801594798 155 158546740 45 834772136 881 150672014 616 211359475 532 119319814 231 484479716 526 646130593 713 276822957 358 132508369 883 774959996 89 170976706 762 178380155 147 503915417 403 611990524 874 915256984 517 596604788 658 82950387 532 169925048 733 163007318 662 124456808 298 522567831 929 367803801 83 470697623 720 105422007 229 711586172 474 129710659 673 212198547 58 802733697 788 522479704 860 471910647 15 214606000 265 374492101 5 993395669 777 685644715 522 97963939 2 305962070 553 539353564 238 433590334 86 901072799 673 93817242 846 223527298 24 225848413 789 474815177 66 158180759 18 435802207 403 561526490 602 263811840 383 531775517 43 843900297 191 879728677 40 468640329 993 679728051 974 54994733 229 381764447 746 632659876 90 925886092 814 938198747 427 537882650 403 212383788 336 499357518 243 975125421 287 314696244 634 709613585 333 230434141 26 545995011 86 304563561 54 695982416 780 489893573 223 110384117 705 16821016 579 179206695 422 30248141 453 256674181 480 247443426 682 970033656 29 69813286 220 927422400 131 458653021 144 970909716 730 370344657 188 958191396 100 136928997 760 146985880 785 378569154 25 966018103 135 258936043 829 213293496 56 354053128 355 42201903 235 957396950 55 144377904 455 82737695 815 971163511 533 324666465 741 463426113 341 192971338 118 873206323 717 384282893 945 223384593 892 130140093 642 170954638 114 782603251 238 597812142 276 138125856 465 511125094 774 797562612 911 219023869 985 714538359 31 182552012 530 502227754 987 598742290 233 671749715 503 771626310 720 419653911 234 118525553 599 267181414 3 88201386 752 778545870 366 509940025 609 896234302 704 109817019 348 276415217 369 112662704 969 139586180 364 995231619 376 8114830 73 689811182 563 447457375 154 588958450 684 866674735 650 329984835 454 679034142 361 691088343 657 99527256 465 219787210 280 559439133 540 397679927 547 489145605 307 830978029 118 251535183 483 724637782 776 782484249 833 699685554 397 891640907 315 872563360 316 787360307 755 127715114 101 210851570 446 754231283 663 702111203 925 225362418 132 981644809 221 445618480 618 682450716 91 487610864 945 777677916 307 290927214 435 594826756 276 654029673 463 800454815 918 868129018 50 856924367 859 502140617 141 838831198 393 134515594 280 597268365 944 836064917 315 373677284 396 260969531 488 94984764 796 559443094 770 147057985 73 456947107 588 124125421 575 859652443 248 145059447 832 225597698 902 448521568 769 31343667 855 839089905 164 956988919 89 403200456 61 596921493 887 308977656 487 176873569 861 932111158 761 700628032 536 934201519 556 621382716 920 623707284 692 516992952 639 793892335 446 611397526 502 965931581 700 607292040 72 3219541 231 548095907 30 746764540 946 238431821 896 864239619 52 697666262 441 834974195 291 264302051 147 862223761 526 67802803 547 783302383 236 735494948 311 837993257 991 579022545 531 344244552 15 500928729 53 24814702 317 890151462 589 834388720 977 288549502 702 833984720 719 566649798 566 196125544 31 79261454 107 337941096 715 944521561 296 636302834 828 82969149 838 390404291 832 306149968 213 548272769 464 279053747 594 316714584 113 565175266 99 642813202 661 262612152 566 933698135 808 793283641 64 404314483 661 386342566 759 641558721 951 556362853 92 823273259 659 493006774 81 840652243 501 48592804 703 990999392 196 139202853 222 332282080 464 25185373 784 217488885 453 392958272 889 533044985 842 294667882 471 403254494 111 972749064 191 599676585 784 473712512 689 920306632 781 794481702 488 187845113 358 189562374 705 224282204 760 132197960 512 919523916 377 273366454 458 27686975 332 273330513 971 828469709 847 714607485 75 237872264 214 143765150 572 16904961 684 309992235 222 295725532 702 583569957 607 120467946 826 408589167 429 809822745 396 379437849 130 193214030 99 731981141 608 904143397 723 134380433 461 376806781 329 90943862 115 649438611 718 565103560 316 774315406 247 184042254 27 21168708 788 614111524 414 905221032 4 531018990 588 863393532 557 125587250 399 4746529 820 917192029 625 637689873 901 139978350 725 833249596 560 508002834 924 408105862 844 179875442 836 115059095 166 8395649 938 858033799 150 648838270 211 865093531 500 882331957 671 176755210 826 798313639 115 388613920 160 393133593 42 251951182 890 320134373 514 255394347 809 293256323 504 912107026 662 555755404 345 108983813 435 88331569 815 358576594 651 793881378 359 793282303 627 897832823 318 765408377 298 833499602 489 323287648 21 122815839 622 31683407 431 249337851 953 450703081 602 607578777 187 356971492 307 133192078 182 429691765 902 820850747 608 466497044 214 677586372 725 736348132 907 234333803 425 30951987 996 434251186 775 81410921 964 233577686 941 829894644 448 270923969 17 570049858 551 197101889 870 866453517 283 264285160 435 22121468 862 234326530 757 571071193 557 215772612 132 814275799 671 459903955 934 991001295 485 103046312 75 636035430 278 557893628 960 544802829 383 266731181 422 358072025 347 257995685 907 433873788 454 593604020 277 1257117 128 578340412 938 418110211 150 986060554 517 819099633 720 701987540 567 122938237 491 820386006 719 592272388 350 391764949 181 434609371 709 393873825 201 577676361 599 718987906 656 805778400 195 602936181 929 199034634 12 216068159 825 304469384 874 419704348 188 90731061 971 289779220 632 388249623 667 375866895 186 122826838 501 77051967 623 45291757 214 80978200 834 889549383 999 74017736 601 249903263 953 564995465 270 741275722 99 155541816 157 758075002 151 764757419 29 851450178 609 84910160 61 510921328 639 133131579 672 116228662 707 673600555 302 311079963 115 362401901 621 569995410 586 754528311 644 398768023 369 60836043 430 280609804 724 951326370 677 657937454 921 493614006 154 332623119 460 33755147 913 925723576 593 443778483 190 112420890 585 925600588 348 848742781 51 129612455 434 735867301 489 664954692 526 488425685 231 944535380 212 754765267 655 23084592 440 572413172 953 208372172 980 992372481 944 846893763 685 880233754 736 641993852 614 395748623 12 868006885 465 8327774 114 319798914 454 926155751 229 464124164 115 284553655 826 373495763 864 505776803 985 83637390 527 440022485 963 956011942 704 396701778 370 485163661 116 565405782 513 869788886 706 39387265 152 803685482 891 698472142 926 46973733 708 447208619 901 488466415 316 42410837 679 935921179 871 500667271 415 944210919 642 497293723 36 706733812 829 758142410 126 880687622 901 281592357 937 717063999 541 706796248 970 476450059 660 72519458 651 295268751 992 231829767 999 118697269 257 863628894 917 843147718 26 599427702 323 501794753 208 711183055 417 27069803 137 319097579 600 206986297 55 884233095 108 529940942 113 833009073 737 145614298 132 955684418 293 919392511 746 624152817 897 447197851 965 721579143 881 130757 666 391250604 49 603402812 331 924576250 575 628257332 665 710570396 889 495916005 582 419547127 124 664185357 381 623528556 215 134316821 371 762996240 755 762895155 497 765834372 356 101558600 560 580278456 384 257421533 949 964562930 835 370502361 747 761177741 482 855743918 262 82610590 794 24363561 362 407862302 738 45999538 398 408309480 733 246596036 472 939357794 125 103254312 95 437770113 58 638922042 434 389034666 599 964698363 618 993639505 196 714323461 835 394801778 840 54578152 345 677769268 806 150420819 648 127442513 767 452425092 693 554345221 401 695364010 141 740955872 346 568565881 702 415712184 964 894879282 186 107549352 357 476798162 592 554448 533 72533182 749 574436539 845 466400091 338 151109647 324 744121817 308 498862001 456 586422529 370 117286665 205 818262325 67 155400423 38 828798159 761 154127651 0 29897732 744 128231656 427 260270703 19 141069712 830 214954022 559 582475122 917 803751302 967 971216238 808 275555110 543 436306901 768 921978171 399 60732799 195 928962168 154 353652574 611 812128278 967 799034672 639 453511093 374 921384473 748 809417774 683 54276664 967 565205764 111 689578141 95 973660169 703 841950647 193 428585238 729 277284568 863 789840870 483 301238273 124 228523000 579 472932376 23 997609284 659 39231375 36 844013073 612 109005630 237 908448923 419 827987816 912 271454667 348 988704485 189 286553080 52 992616699 197 415766446 60 137023953 971 321644151 966 666007121 221 690650246 789 246766183 460 308535135 419 721989721 394 321937719 550 996633327 333 728650992 45 234688116 438 562153824 223 404886167 150 496306830 686 623045764 439 299963295 13 385160350 993 384335071 174 707201937 721 690728370 42 719650969 517 651212079 276 625590789 954 335317572 829 12041631 909 473961361 209 730965665 788 207276392 627 727704436 404 877072084 316 246886878 929 701663867 4 615274617 740 728028222 787 88308299 974 674373680 756 211931638 444 153758493 877 999509101 750 185593336 739 910908512 565 129462822 260 228705710 219 838298059 532 453266367 843 523727566 560 831571346 93 79457316 684 893579991 238 303094669 547 741351167 769 975508244 708 35815036 238 223736567 369 393959507 948 609588654 970 594132614 679 334673919 306 604471334 307 468643605 980 114282720 931 540542201 953 416217353 728 225781077 562 566252260 307 792836162 772 176271154 569 679999252 135 555342416 988 473591489 806 554962714 749 685854940 799 702915436 585 57708348 224 698936396 337 927922303 385 676276442 272 862842549 967 148056511 193 101925863 735 769771621 252 88410187 294 369888084 778 910564728 345 756842025 649 694581728 481 750641653 724 216709970 756 901597055 910 706028592 837 709331630 438 273598249 736 924283795 61 932101326 138 391944968 368 840360505 451 876727823 733 64152049 282 948832112 317 244935108 815 539900531 169 346111569 679 153032746 631 787270752 969 405000110 407 618919983 94 958951796 302 487819657 671 557838090 586 82803710 574 195046721 319 130814391 748 937869081 333 570516529 340 42961887 781 836551369 808 623146537 283 632126825 713 628570712 302 870378453 321 987049991 309 282450487 831 209494515 32 749839110 613 682663939 228 60319306 528 160240343 245 840948841 70 587219851 117 353124531 220 948930665 723 117518130 330 197514539 94 364973648 718 504406766 72 822462939 15 898722987 750 122273548 620 628677898 90 672417854 788 35213131 718 845253053 926 730987558 782 534182975 446 338499882 950 856472069 227 888722036 885 160060063 521 569742064 231 479960688 110 53767426 807 88704916 600 487791667 92 19542978 298 805370386 774 1403592 206 147591721 370 967005963 371 664879875 676 184984984 615 909757591 861 655351733 623 142247645 441 784890954 939 758635530 752 766759728 847 26227094 178 58756985 19 161424196 659 120783350 567 868505819 717 234291556 530 871004421 313 914310286 37 229403150 299 348994741 152 510606865 288 521842047 428 775451611 294 933567018 810 337124058 686 693074752 555 741764427 377 824745269 328 369529094 327 522039327 827 919107859 292 855508146 765 309961398 815 387481360 507 118640346 259 631017801 538 42788858 183 3340790 502 590488376 250 171657310 361 484365893 977 91282118 502 801512856 532 234914265 704 248615943 867 879401479 439 996400929 726 297505728 336 718070321 829 697476560 852 466961414 176 83993478 950 338211518 910 936880893 92 329649417 500 467738219 109 865607544 84 701563432 418 145665876 729 43380077 215 522453687 836 598073285 330 19415958 538 422604294 555 330455937 540 149304846 180 907268578 790 394779096 921 126486672 162 589275079 388 196863368 833 36755873 536 739891941 446 742999929 562 854065558 718 376001991 108 903300622 194 993487761 733 549119299 47 332899128 550 250598126 380 946107669 224 640711701 436 463460850 428 658286436 81 915582455 727 428024568 473 968027756 172 626568960 54 334041543 578 27674722 478 35376393 35 823296464 793 538115953 71 669556109 399 821442043 317 242921516 217 932027068 556 137915686 203 724216728 468 373433419 881 845074976 19 699028585 278 241655639 608 792264366 598 572401057 992 481018235 541 356238959 599 656665498 459 501658177 836 174620707 677 981157701 638 128712754 469 282080223 240 873149750 893 925470156 661 211489961 784 780883721 429 592813335 28 170677161 958 277860574 662 361784230 393 891090286 571 635301316 408 567964006 952 449896360 859 757577398 291 722984417 291 38307457 83 76105621 304 655967245 183 455770444 663 747505555 645 48721292 548 633778468 506 65840368 781 227737864 949 670607510 593 294216841 634 871615742 49 493233706 840 793702985 405 892150023 802 603697805 60 174832594 176 498467523 185 793697842 91 910913755 173 348621019 548 353895281 744 745570855 975 221723709 275 300349463 991 923721347 984 640376571 654 951588696 56 610274113 62 610554359 662 501642172 278 607051493 897 162311935 260 71245681 514 426419642 170 4350501 7 979790912 243 182595451 829 95771831 878 261609143 228 125416088 312 385833871 380 749174549 811 369174649 517 718778794 683 20281864 860 307017802 470 561125686 467 51631583 818 590698525 622 507196295 444 123596740 781 993335128 455 437070060 292 643071946 901 120054081 94 712480471 970 575976125 489 818479078 198 401575807 747 111620670 765 480853096 399 579721373 974 988355623 635 940388703 287 70980663 487 190063634 123 782624647 641 139880552 570 354770544 951 798340177 511 342886073 255 687455341 108 426423320 958 915650050 965 690764929 790 645419226 471 209850766 440 319262111 801 942405894 773 584083393 438 606456826 308 572788060 792 67823072 394 488921113 850 699020207 647 272043003 939 770021706 968 886412461 528 590033802 695 725458871 343 942670385 577 232891580 566 126035878 12 374991365 632 339862851 178 447850622 385 292679747 470 651469578 702 43611513 208 338201904 239 579026950 885 444028705 576 890720960 438 143361608 18 866370759 679 36286956 424 203128175 315 818313443 618 487785776 358 928874516 480 751095160 277 528209809 581 168082496 694 181907897 856 389850673 371 534523471 905 611816519 132 314255843 801 980700369 465 976291493 626 14297135 992 941457791 476 613252799 765 664475947 774 58931134 742 146278639 940 927675936 383 434986126 577 896941458 73 613452973 451 590361061 305 879326509 849 952387500 600 195477130 384 199613964 162 678650596 91 830697724 834 417115641 296 450038080 695 804089156 670 858529914 357 195101478 77 416029752 99 698417924 202 688602441 55 315100472 480 552416802 560 452073911 530 867092582 832 477076732 392 22715929 961 769852641 682 725769107 599 4542458 345 665367963 454 633185819 312 19978087 234 740992653 14 842815815 498 370114071 592 275651314 51 515837353 336 924958244 216 328721170 567 443925198 524 316429078 991 945558263 475 896004067 558 119662316 181 251056945 738 912585852 826 835089403 471 744387070 581 875084082 885 330799579 690 247988623 510 31350317 113 508962073 522 167682998 161 217812959 861 870122563 49 174850958 202 763886480 904 748622677 952 942683418 806 932097819 157 221644062 294 49245109 354 356912269 666 972958833 824 469721926 748 676972364 162 625057025 277 682083836 904 769169010 389 905855290 493 407720383 370 431876781 61 838801896 894 894476624 12 440572761 493 648045844 16 219725 72 762919281 452 339098434 305 191855382 890 422553518 920 59776314 281 812611716 590 214303580 133 29102865 520 498330553 463 613472782 823 4665704 784 314362022 777 367876454 161 83195593 686 578152354 185 199644514 537 195283208 166 997992835 618 706488907 768 798485492 483 558199697 598 766768451 664 447888522 219 24277769 18 145090565 428 183345271 109 392093031 996 72695453 926 986170798 292 835353532 504 187227620 283 746626745 273 274166036 798 505243701 667 43446572 634 944564687 29 759314885 605 820065521 968 884073434 589 811481755 542 473406441 853 124693036 290 487222497 589 258888975 757 695742459 133 20225895 667 328208256 456 443611602 666 236094972 12 718269172 637 195969989 969 408830234 734 459051609 958 747045622 57 259409616 15 331882132 281 544669644 396 240221307 250 619806120 427 666957763 408 356346352 918 366693740 177 645237476 87 153787748 448 679852198 711 245758640 119 526680254 681 186529243 279 400452050 210 53229805 581 841250082 30 872634734 565 723725408 95 211302205 836 724960377 200 876002346 960 996828459 392 782600866 280 268857469 466 488302664 37 466173506 684 252383793 628 108134364 898 829849530 451 860061693 822 885183642 893 114662665 391 567487196 701 914392365 708 617554289 527 765148980 910 292930787 216 386161794 305 134239138 335 21725270 496 146280433 990 284926427 762 444520560 469 220111466 251 139910451 892 805950147 508 583988386 849 593013213 676 850931373 258 358859199 975 457337745 668 73906767 320 364869803 328 254765350 998 993115963 315 790735169 337 242303743 622 769728057 296 402670994 936 38928071 661 73147403 846 779471764 821 25685538 613 113608049 347 329531177 280 982695112 635 888358664 474 957134565 66 514702283 927 761646331 447 401082655 315 881824308 115 613747709 146 136797243 109 391135184 948 470789351 907 588570221 387 701100422 166 891321177 132 696231156 14 582444793 542 61338826 20 727943926 466 583688977 847 576162809 745 781866946 212 498591572 84 394443668 831 759356836 102 542825185 515 703474202 181 445122855 881 325638188 62 744137546 980 697956117 371 588258164 482 735842660 514 183427894 693 662753633 120 551019474 696 647105726 990 864555998 881 634651516 998 358280664 638 651168690 25 989926773 365 617074969 141 559390393 626 463300244 129 303014667 709 79302237 827 755611684 529 187016478 635 101994142 441 753679857 281 426741508 337 882664054 313 161767982 747 212080479 921 267252888 295 643983959 727 272123094 328 983996475 196 438747680 507 71925224 878 311462164 385 612427036 94 343034427 136 344035104 998 306670579 435 335105001 268 437292158 731 991215458 17 53333711 896 374717588 673 215117840 920 807908805 48 8263213 870 60171188 236 3983492 161 387684604 307 242889799 664 526526589 797 801111478 734 278843677 192 345324563 981 907540529 697 852401125 588 145054509 806 801506518 632 691103068 819 883421122 441 840751065 842 412879160 99 549199833 488 360602834 123 658919827 664 407568681 361 426652053 527 611916471 744 173825027 653 628080154 161 695186153 848 995406908 532 255300003 438 221289574 130 758320966 169 685458907 32 952868359 288 632908017 875 622742015 727 515114800 144 35472988 288 564263605 472 551072827 766 383610896 176 991840976 597 166132732 302 551204915 910 140155296 690 332916137 841 30811192 197 844753871 463 149240149 705 458552654 603 505720509 677 508032385 211 563719857 67 109181906 896 96867120 796 116397923 659 263870332 553 447606430 746 785943133 718 619790141 527 886263735 926 104107207 309 30495202 660 962580669 85 849093577 484 365837730 295 915268869 396 698957669 164 902281734 617 815173343 714 647594803 857 708545833 956 632562743 582 415281872 403 707424704 943 929748890 362 221668217 950 22483197 622 353141315 304 808831506 345 387276680 235 89721660 551 873144047 741 818463295 882 766922229 773 967360529 247 203199449 229 143249296 580 691697445 292 364960259 916 296164644 75 697620633 364 365265068 657 557568399 671 471682496 584 94369288 853 504626645 200 385236380 323 790111514 504 821004010 506 324738512 151 486436573 322 8991533 651 133009903 717 829490712 84 775133096 100 138031870 831 405675396 107 652933515 362 754075894 485 436564542 324 64767071 725 623472191 726 552502954 972 174110757 705 465788820 554 114924296 997 606685556 993 625395829 487 503974766 223 386499781 530 354242844 957 773702302 318 616311361 996 245564048 691 305769457 820 290139899 433 160048049 800 448282621 27 475534944 299 169228742 771 1194105 592 224107424 455 935712465 785 127894361 411 997464051 338 190528057 425 116440339 291 573351341 283 518219296 756 819554395 100 764161767 916 435187444 820 504300233 946 60756422 481 646809839 940 655628730 598 179445047 65 354519057 493 586742979 268 510533844 495 362354261 847 970933792 222 341791396 154 500875918 830 801365586 489 738178748 981 35582415 596 473901478 96 195785065 667 532871290 59 496066432 107 900900758 263 643375673 434 229020546 720 361458431 813 11154237 618 401995630 619 169970603 471 14732029 644 981392492 117 937540967 979 136340820 849 751169592 906 423951305 904 604437576 719 618794004 184 192902246 919 532952222 941 207500274 525 876177181 862 601266799 215 848754900 740 574053718 459 602980630 26 753283689 474 975305464 38 787213937 260 334158423 340 950569581 174 373968849 653 900436690 795 506877794 347 450098235 155 16568333 700 56953345 306 987936071 504 435117069 4 195604113 514 118797427 224 772343911 987 112720092 325 267056725 761 353939794 668 37543417 502 160709008 440 411189487 701 401711750 36 625251647 643 116004162 533 991819658 944 955133175 738 585905481 219 407648028 388 89706706 262 987372033 533 872625064 272 751319629 633 930227838 791 960495646 553 818031248 332 855082484 993 102437765 755 676388501 217 640896998 307 22607613 716 875417234 227 761010720 139 457375474 551 654216061 852 410372069 432 165763790 466 918402965 668 222007538 128 43245335 69 228290217 686 843941492 298 101116772 242 772512366 467 395119130 132 54558578 71 862419164 710 278257081 422 356531481 990 758890610 244 999143061 143 66188541 919 651947847 913 446176982 972 323558374 648 312724132 375 448465539 550 368722515 313 698215813 683 223902170 273 233031556 509 16420643 627 47505552 155 19215761 839 673641003 708 793908599 811 314606893 18 62430329 953 933991622 626 501323908 411 274027896 656 31525754 540 816049867 602 946746545 908 795126086 666 874751352 79 204528731 586 847772615 104 557005499 927 526915545 67 956753969 262 151467200 841 64161642 391 53447100 198 629767458 839 389930396 529 620756148 866 66759718 148 664135923 483 661102548 470 840066785 630 287415242 849 247582489 308 107599394 534 528094468 290 220290501 282 257683745 321 120090681 719 407423463 32 723207296 444 149059266 113 837341015 855 368054562 350 77859838 758 182211229 779 242815723 269 455410884 869 630275552 152 456608446 745 799349300 219 633335560 64 496873776 399 414995401 17 177916820 611 592889381 248 498656796 627 280437041 88 809533353 325 181811106 733 820191757 263 872972345 537 158633808 775 129513702 396 574611443 473 533352357 870 440385238 958 440825425 39 232993820 173 703043976 378 411822575 294 399019018 354 375197525 755 972528460 1000 801842247 129 856309617 519 83690553 685 387933111 134 139212358 791 72070156 320 243311784 661 254351925 931 633349894 746 386640907 45 896272137 639 338945708 899 824229769 51 380674734 753 509240909 335 410769189 302 884989358 197 621717162 524 929185645 165 515252736 641 166842104 715 461927220 741 52974721 82 286339668 508 314170402 572 475374910 176 760333364 652 930098925 698 485276143 138 487013629 553 443649417 73 312751651 736 550679678 419 86571216 55 351990271 675 810635082 170 922355965 875 974312751 784 485671345 417 865159934 257 879929616 664 979602504 879 686155661 549 912252545 183 727786028 604 532493923 415 118851951 494 148116046 979 321129633 686 737589121 699 601003778 322 407994977 582 890171249 349 22116481 455 913779206 158 556190380 381 627280513 824 777294810 610 483900282 148 614933264 114 374417369 832 29804200 151 26370294 387 457866051 106 732521398 375 496230721 701 672357702 269 649535094 656 648533205 194 567207687 455 546824384 588 956179340 314 339521832 108 744134974 396 189059775 386 587656436 757 377422308 428 956585421 965 198063709 736 40041933 854 99411779 388 819876061 245 365734720 418 388102395 262 843924560 319 568307320 9 831915225 896 238387918 613 729764896 437 654324695 7 861458852 401 451177517 360 791330347 281 676114746 702 84411568 826 277901280 241 972347007 310 699330684 764 865705512 103 773143540 676 268676409 760 68136283 489 595884953 164 600492376 943 630385460 624 403808079 203 336198409 222 717464363 286 726660976 559 347976307 837 544319747 418 711836956 336 434393568 977 141690468 461 326613362 934 674250175 378 937828936 208 997729991 780 858030343 202 210095479 325 315840730 737 886046995 485 782702501 329 414564754 38 939046871 508 515628813 7 811939506 712 503442119 45 916883463 240 817450048 278 487635776 221 338750278 141 349550695 783 876437592 695 648107241 68 224202947 742 692110429 559 550748113 741 518712613 984 974433136 905 531124970 233 14794323 193 229435925 136 70983693 682 700767914 9 464347716 982 190655118 356 893370730 924 57385993 665 795836178 163 337808324 317 747485244 89 417742365 626 551552914 902 531909433 255 298393735 483 987834579 843 554319446 486 47804766 961 14213726 205 955484064 280 789146690 528 835853302 481 735457424 476 708082661 664 30972350 279 98532586 589 218630998 848 664903148 286 29174788 78 545420821 387 64547666 338 611857793 983 856310014 201 360965568 453 408300953 441 450253144 27 643548829 870 995396425 632 930546641 848 471161846 600 113269839 331 623092635 200 429482561 831 483197328 286 231395046 840 928594396 555 169568237 215 364731803 619 760059890 237 262406173 253 418636796 909 365870217 826 408333320 552 464643572 675 93104203 909 493894657 547 351123367 529 832157728 663 288795732 230 313335803 498 662431239 715 456781540 142 676396168 197 338850701 400 340941407 118 323061309 937 381833668 111 640940395 31 610452461 716 67559708 65 101748236 49 389203567 654 59864291 583 7220292 903 837983359 846 313418470 916 857062456 240 740496769 947 560967971 410 357045614 732 749431807 410 3355181 108 389177833 382 793360939 771 120999512 519 414759698 810 953828401 658 61463632 529 457901490 313 168454900 231 819529931 253 269732859 354 609948709 583 966261654 934 347608381 170 873112143 426 520213509 395 60697798 516 804627115 911 100910017 380 145373832 453 511912352 344 777661812 543 572157953 809 787665379 978 33976895 559 408234369 584 122177591 54 367776274 387 792480820 357 557469081 647 957636563 579 269440507 156 220656598 88 297150825 398 708622967 636 37329251 760 464569928 932 236657128 226 852644060 456 208453152 377 321234160 619 995927309 84 973665898 416 963671916 261 720088242 894 425446467 774 594196500 410 92126687 929 735535191 509 124349526 368 72895345 303 958799099 642 701802615 27 153604187 64 39917687 524 916778379 7 184212968 893 250039336 828 45985354 61 521002707 995 755344630 809 644841493 455 968477689 772 324777703 712 781952999 408 220680822 142 791779472 984 724623952 111 68750189 664 200931229 375 93060110 899 115434666 248 653611229 860 180680419 580 259836904 135 415194108 227 654633305 500 265897008 302 454345348 246 691830875 982 113639494 659 882239688 444 394441086 169 598333985 49 388821276 97 40285745 143 454836861 804 516070047 533 355260306 726 877639340 473 769833278 907 946959893 24 99675679 137 4407777 558 341974609 615 324326583 897 627230506 505 879067507 798 94102825 40 624226637 807 443197448 600 144414917 900 363275761 97 472811716 919 647501690 270 195887707 436 917201895 106 136730776 632 298001881 271 864613153 44 396609180 503 570349812 480 984984385 987 49610595 925 347853585 219 949995080 567 449142113 299 306078225 427 41213887 725 372287899 468 641994718 974 124883938 566 425790386 199 387091863 392 251466087 936 21460139 482 506986577 750 159047183 909 263055236 260 760395655 677 794276000 921 783373931 90 278600014 635 869118597 159 455684788 188 790709684 928 869674512 544 953899768 688 318723704 997 652397665 223 827310364 375 271859017 347 152930170 928 76545042 360 551206554 478 665133466 819 315913210 300 174443200 622 820296363 257 411223203 980 508611734 501 125047185 634 714459581 292 868141969 768 444070905 230 385499998 167 887536416 574 186988852 469 599525412 425 30323837 725 450664394 393 665235359 572 675035134 727 416835216 125 67229234 313 832682643 331 975577553 342 93327401 850 30771144 51 415568839 162 954721132 221 994188342 287 796069280 36 295651732 115 673284027 843 435136183 273 482441578 48 481325620 478 399609124 109 253529909 653 645390189 31 944935767 666 467255526 760 160233122 756 833184905 576 460902564 21 331904599 141 282138053 690 873360758 560 834079233 730 379496316 101 898850698 302 772603876 930 212764852 35 903998442 795 217828495 462 303864015 843 632004936 915 742729871 77 606926389 308 410256611 92 17670523 231 376791390 150 891425911 461 518708174 798 228030731 697 476535948 451 943624080 458 992107567 732 949348057 786 534629757 97 115760557 744 759650066 867 432469561 350 189839903 367 720006812 150 910777200 831 703182275 154 83376747 99 347043961 725 327902408 329 558808290 104 347874061 906 486214275 190 697191549 171 642935425 121 613606141 596 102059915 11 416603637 321 44640039 558 238217676 197 782983669 955 897340077 883 823852031 940 525398944 164 471299711 660 265291930 895 668072788 495 898230864 951 696187745 318 636895453 52 928957962 148 344441239 985 867255393 743 649419173 164 349069350 747 749769216 892 878689185 285 701907030 422 57400433 499 913990241 609 415357214 65 62548073 891 280739749 588 204260562 343 555797641 785 533495013 364 268994196 859 585288017 224 862532061 737 927879691 833 673337724 902 309811396 79 32176546 337 345918168 703 160577393 870 724122598 411 423275330 581 365735445 196 706570722 870 462321425 744 481107960 877 822826061 30 312535379 539 733932279 920 522420120 75 10740831 244 114658264 425 580000866 547 301417307 152 169938071 636 204377263 167 842603656 679 275631721 444 807163349 757 839069087 410 77124705 422 72827025 208 716167254 917 268954914 389 472507075 768 326710901 354 337559119 675 85535728 727 815662494 316 119357679 199 590079024 166 167917272 37 755859986 272 608444961 789 232217897 456 23134603 950 155716199 834 893964456 671 127372801 725 385277397 712 42290978 661 943492430 814 470831693 796 824656474 149 98797131 640 173030622 435 197990676 176 674078227 161 950718001 484 207219109 204 696292611 95 84007805 968 349740242 403 289736282 354 923242862 665 870229214 396 709976868 465 762450362 906 557449769 381 788329140 13 743725654 375 374396758 570 817402264 745 360039775 241 704078304 418 143107211 627 678686473 15 829380333 409 587192845 605 368121195 506 620685099 702 550069636 783 874923451 423 218922142 356 907457089 256 569722649 464 641058412 464 925241798 607 45588244 145 787121869 65 501167466 664 78698139 91 684479454 362 703996536 368 82617620 748 995592947 580 798165687 97 476309380 354 677440553 285 399933836 371 471797557 746 101518045 991 178116919 853 681451791 592 355973835 656 505800592 721 16113711 633 893432414 959 540920744 296 330744246 330 243088332 92 811683383 466 400762206 505 855973533 871 398918793 531 575224627 156 360234859 662 29628895 638 180972285 123 174611929 832 617702830 831 281787841 367 653181289 256 472626568 371 603607970 869 425322835 636 677061455 995 584142926 928 497449680 811 789142655 321 638221223 370 254810000 312 491627213 509 292017570 617 888334909 964 478327374 882 305024143 890 610381148 643 176257189 385 956161191 818 695864399 102 963027757 208 690992713 18 529746525 817 831968117 449 628494557 599 167274109 999 808724703 313 255376704 837 416016428 417 901207787 644 815018289 696 738441848 384 983349820 796 96985314 762 67083984 492 135151169 621 346271693 823 302290096 226 667770573 726 520875127 840 569071508 924 527602409 868 854657635 241 361310973 941 810185799 809 347797812 380 904205927 794 484343853 124 558371583 8 485992952 364 572597097 336 727313966 489 525080992 176 242920638 904 155842707 330 942953912 477 881550975 680 197418068 105 742134854 378 344773048 720 248947429 25 816928036 961 231131302 158 216741704 895 808660466 296 463770703 323 706573534 726 547291400 472 261417748 75 626916725 796 995937137 463 791276900 202 993615772 955 192411002 738 384205908 490 818591422 895 901446668 52 845984372 970 455111884 925 984497664 644 355595841 87 851563105 351 236720231 608 422163005 567 256130912 581 771631659 639 636500126 164 56878154 10 764368514 4 75952907 656 298868159 49 392833854 92 278515922 638 109265031 210 964966176 229 897818021 384 945447848 483 366072488 17 47458558 640 106876472 547 56887475 237 443086537 0 626347445 369 334064718 124 73888285 534 569836723 106 404069778 58 247828948 589 810300321 905 182784761 665 433487025 609 114490702 435 485373642 485 338929835 543 178555090 766 396955381 410 694989785 500 430444166 214 725523215 173 233499471 178 158446222 106 192990058 78 174962856 290 851213036 176 83815363 281 560992369 654 335397695 674 737431995 564 414288694 10 916961515 843 610825000 15 901947035 970 16924886 234 612670696 261 641501121 493 381556643 794 704925108 134 734996694 37 508724510 459 174122967 132 811088210 962 717011046 354 982295257 501 255902585 868 518428422 36 462912914 178 362604876 964 503790746 890 899257116 161 490873542 676 795557357 264 691867008 82 763813413 463 377825990 166 280217879 224 425293721 557 45548535 513 407637935 768 527652559 217 296834145 893 879654645 684 638819465 39 477103844 44 488061237 55 620187695 383 771216463 402 98005545 141 634028188 99 668872607 294 512501841 426 3840368 635 893103980 151 474130662 584 193417935 903 540113810 361 622013343 87 33546971 283 99008509 259 974585056 294 455992781 617 628913222 306 758369169 719 631736977 206 958694276 296 592814513 454 249512339 148 423344783 319 830875392 161 676094309 131 555706852 41 967973517 64 413484830 645 998325943 633 680361671 68 583043737 422 739901730 827 258236780 654 647697254 822 366005904 70 338638781 342 763847090 313 349194328 130 671677200 77 95568441 671 137050478 67 301449884 151 608250145 817 148989349 230 861270971 857 187525627 792 174139099 940 326227076 145 293275354 11 655797485 561 745955435 604 529428181 292 222299338 412 712943458 872 118740119 508 942049945 270 517081190 981 558723658 670 782682752 97 48569231 221 740170493 10 98348568 493 436304642 1 693789764 598 678245551 516 399396841 999 545220666 496 434357707 2 245808641 524 387868867 810 742934816 391 410372272 809 61516917 765 198068260 807 287634670 968 65079284 468 935332365 990 569647458 968 214605411 55 592058811 368 418109578 769 808251889 80 209140164 382 612855883 739 43089457 734 692675416 965 61079711 915 31471059 613 386634564 127 88080640 461 104261504 381 330926330 242 657479936 699 763809542 884 715211767 204 92093837 947 220394659 152 644818606 518 151638471 377 631164947 135 215699553 296 604185820 989 563917262 130 766463964 378 765406734 370 684779310 236 767900416 461 440152323 708 117074563 524 713653760 297 597476078 805 130754697 789 174532627 65 730632633 651 199878342 102 228361589 121 949588649 537 351584793 324 738068430 490 328894820 824 742607166 534 413864749 703 950311907 952 802804873 431 856972229 160 66614947 951 782766992 323 73340178 340 945964041 395 708203809 979 117608407 191 584229627 110 750704233 539 739430800 913 103918229 233 710701310 955 202182568 452 46060537 359 432532898 863 910379724 328 210950714 175 961860424 172 859851175 924 128734838 516 126088801 953 1208378 279 368778934 51 991255945 826 40985229 553 918906736 155 411412042 954 923594387 169 825610178 687 933141396 135 942951512 336 585394615 13 690750522 785 365110901 205 216875872 21 972985826 298 426755060 471 924493453 86 266324835 610 202117635 453 587162027 564 989777296 371 656978268 311 258887850 152 661682646 533 131267233 108 217377707 339 915562981 30 863320538 747 808705544 386 341701854 134 622664667 418 590028555 422 530492214 66 517433955 308 786535378 822 974689732 820 802536577 812 990511258 199 536120815 467 705531871 494 79358861 73 11607011 106 654446052 473 132334086 586 295538713 455 583058851 267 229900675 802 400629056 266 219479139 750 27765734 378 788900925 890 130175676 364 440872871 376 651112710 785 342627696 662 232075886 705 449076874 303 82995531 740 450988779 85 208603215 555 331789199 659 80170740 582 719953687 305 263278342 476 542222760 705 970919795 938 193961271 932 453727325 159 762747156 820 762253370 38 713821399 92 972723413 900 419512168 396 679578915 57 986457519 164 65318628 340 638186615 434 60586193 741 766512533 28 5986736 745 19876367 161 178677094 652 273136960 736 770205941 53 198484170 498 46554583 947 64736824 623 87153555 485 932206284 555 115738372 120 435817295 269 503884576 185 838339461 832 208993241 239 324278427 218 357218970 327 156609342 21 255390290 20 406009400 584 661825103 411 964864379 918 272413606 962 546324902 326 572090571 808 206226830 221 244586104 193 166961025 562 113590082 209 328126359 637 700133609 642 752914610 438 382167680 514 351201516 949 100829204 113 61659961 66 764868954 274 895781644 337 572931207 295 121340335 677 255931010 103 11203064 463 182389283 659 65830725 948 366925543 412 290318672 692 308898687 937 403658581 813 474155655 91 784032125 24 88096480 679 4656750 126 516651929 406 256864529 680 344260631 402 869052446 239 802358051 599 894169040 994 954916390 815 88401485 903 313236574 936 194002492 864 610503521 206 273744418 713 75788130 668 835683211 683 768958493 599 943165346 187 402054150 989 411702722 108 880575508 640 709908205 766 832388635 289 365782019 187 613839121 126 243195369 358 505214146 795 645859104 635 750338152 11 302026819 848 827200899 8 535632892 964 314171535 875 603780800 803 551932562 715 816526577 542 779647309 917 722371482 74 371850476 323 562973802 7 566495050 230 58028629 798 972973133 207 999733820 146 113429063 422 92226724 419 581499893 7 956814952 869 383596007 444 453724984 684 159298778 301 463401600 585 878092235 298 793084310 703 377166562 24 618695569 275 633354375 21 674735395 832 782840421 809 623100716 596 820269749 365 82443616 167 939079659 820 156227248 71 752084185 994 420635664 807 186149999 336 607384374 931 887591997 430 76560232 866 844307131 67 763473512 169 782089003 793 482543313 698 441110714 236 723222746 821 253422635 924 820671602 409 561299685 777 974840949 400 749646384 552 509487710 208 871455428 629 921961152 365 130978354 187 417600336 655 675024674 404 221740166 429 227761479 429 858649846 303 438857849 865 399241325 380 513023460 4 657496616 129 373892954 613 811859866 78 564888683 535 847653055 77 979009324 725 262824255 129 710198936 403 528113027 438 321105611 206 722430542 134 961808414 977 30964955 570 982327796 815 351098172 272 117720665 493 318738301 541 166870938 386 148397471 637 365783407 609 95744761 754 717831575 68 862511048 594 603450565 538 831673816 632 828791097 809 234181679 776 315231309 97 704268907 656 117716964 746 121723878 209 367648592 338 292977966 995 856113450 562 731470558 101 573659227 127 77363334 41 261997049 58 199986602 846 93682334 410 541412233 590 976108888 323 108095495 599 283250839 8 238186453 934 215395326 103 295979314 790 437782261 116 254592092 101 735125931 134 751277360 348 663025377 864 124907630 471 588988147 166 37929053 190 25766765 469 728683336 549 250662245 862 538301807 512 633535334 195 221557295 314 365821491 376 20256326 716 253226565 239 891903070 179 355058507 73 315527765 64 560180998 769 530678052 658 802038722 706 981369327 887 342008600 608 163858621 912 830889041 677 345174073 19 953874543 422 222503593 176 283288309 341 555737313 587 428410906 50 419690941 234 795581421 536 681684262 57 422672557 227 41566069 501 760291981 932 455032102 793 740170172 138 465596021 636 980697154 735 568448810 482 289916307 314 235983280 575 134243674 244 383487069 943 880963398 932 180256361 937 128339666 485 63102334 917 611167619 964 401013410 341 828875297 808 418186241 330 40240530 405 506282517 236 122401765 465 654949661 850 668886671 329 426445573 539 533133749 749 848179687 592 777216760 104 534873414 884 378040614 713 27485323 875 360029907 315 92082505 347 971416218 735 512310480 997 484062716 801 10502293 963 936456563 665 751922451 743 873971067 916 810271579 524 564962073 254 589413856 354 262805263 127 369222640 112 509865537 270 426493883 385 289668198 311 398250513 215 938301569 384 467324029 210 890100150 987 669479248 986 283175991 388 976918701 595 792300761 582 770195864 145 190480878 482 415109551 953 946677713 598 259441254 122 238118575 537 685255290 38 98638880 704 128808515 752 364168348 981 225761015 713 460806128 275 928890589 659 707861110 114 703570292 461 960571958 28 106990761 709 186765191 455 601067321 943 973224937 802 254533509 636 890514638 443 665757109 445 804291574 862 940324849 604 122332329 524 65223493 700 391894986 482 99937235 23 288881802 450 204236711 343 774700349 281 126273854 207 6192477 426 262683163 437 313791895 100 328056274 162 397196128 135 440828457 723 375982328 212 13117401 690 399523038 786 992397086 940 573345451 861 354271941 872 776565413 259 271241226 347 601891853 127 162538805 671 297303395 63 945863179 880 59881325 471 96303310 974 103128350 70 667204541 465 465504476 186 865243376 794 113343610 929 185231963 906 670816129 399 170338529 820 742581114 264 823004267 46 355647856 215 497686533 942 513935118 158 624115615 560 320256083 947 126827360 941 706942380 772 435412927 303 492401004 323 110413979 601 855631461 638 85371879 813 887285230 675 120801567 853 952756804 175 354923076 638 261806011 209 883944401 678 917743836 832 808121848 921 291440803 707 961767651 85 747834808 164 148498546 808 164539451 889 950507053 311 32825396 918 817545574 493 692647273 376 783849252 727 329100685 839 247579499 10 396371712 465 314743225 798 475392053 955 947311148 745 277210871 988 951822222 546 309525116 277 927338316 182 873385461 294 11057405 565 61342353 325 371790386 850 793263413 956 9090677 878 825919786 405 987411822 937 917342965 656 455311419 205 213801148 929 906728604 772 316163092 6 501169581 132 564442542 159 885278006 673 636234067 188 94389413 761 313958153 4 249384420 252 683704930 373 458180486 914 992896068 917 987182412 989 283014635 757 327875519 817 811498287 448 406372747 139 897849851 678 491650598 194 145096133 773 998384555 778 62789695 583 380595947 171 793341342 842 982026350 346 71058506 782 426007507 149 429489555 335 439983303 155 69589235 447 114329655 37 763943323 417 181979569 44 216901381 9 543440503 216 819143622 221 631281460 728 53115147 36 607253748 888 228565721 738 441921394 614 433385570 480 908645301 835 829418743 598 113886165 879 63524633 345 754768525 848 248523397 392 88029494 681 954066305 301 821789389 439 145210517 825 208986968 14 288618999 852 25874824 646 372032288 925 526871481 479 553713773 688 953214881 97 967583679 767 822502207 509 59219664 552 330865595 372 889064106 258 125586463 347 600794773 816 869022707 9 301792457 226 587713826 949 148152046 688 733015687 949 970833337 561 488582453 540 73470482 593 7066676 34 494281687 779 681991243 135 506326542 634 578823956 130 778482348 24 430446778 242 91511284 164 435309612 132 483171389 251 859797326 565 208656141 742 669463364 779 157143719 468 339887047 584 197425183 275 278086639 719 733486347 709 281174332 245 378343451 709 751819046 380 134128812 415 125678321 160 12790894 588 588070133 848 728786184 823 4221304 391 824000274 474 579964626 942 3474143 24 805599878 497 237164742 358 605395282 415 189734477 340 774282646 824 661541175 253 369277422 831 277697927 993 863064547 425 41940292 89 394554354 175 122229332 42 610694783 480 286748275 985 379317699 296 180326385 244 354125079 133 721996860 997 45728871 990 837140630 358 413385847 397 527207341 608 912281384 201 199126934 1 209908240 600 22814346 856 27490278 828 457244009 507 807538826 84 454196456 541 514774157 195 392643399 375 520281985 216 359076649 403 718080516 367 600710060 682 313134574 779 237128649 463 103724438 585 993061704 844 858046398 922 960096978 741 947436318 139 383193181 332 328362214 346 221144146 342 849115991 154 763199227 279 864861298 805 422959575 880 521841010 675 737028349 410 493264431 200 910828939 757 114140882 633 145298903 281 183489184 748 580670526 55 314196487 611 769309921 600 335116066 860 445594259 158 555504255 438 961222324 967 42712353 800 170086440 834 389946223 786 16350890 403 307942795 161 849076603 127 816982168 506 131649614 345 600690617 801 299788137 342 843703317 702 649633009 424 176222705 154 605384220 691 537882792 635 758476069 86 804955195 873 926947047 101 864484871 53 532233368 631 116659139 383 805680582 598 372725319 198 183753540 998 76487219 662 710834769 417 723884804 4 844458945 899 33199726 337 456375056 9 201720626 611 495580428 928 544561192 798 467226647 58 538156100 861 671728016 143 485777766 659 642324743 593 884498464 512 127455231 297 103831178 57 923010807 787 542077652 622 222948267 66 546495831 733 541897486 563 443342009 769 863380567 445 689779796 992 175153568 700 86162742 269 912927813 207 259278044 948 276739951 119 217945769 888 401717488 220 973006319 0 36455332 465 426367104 649 360221154 677 494332143 198 353145995 886 318793476 226 281230056 67 390562028 976 624013590 884 487300656 358 668910336 776 585827708 78 314237418 504 978397486 426 765255463 822 420544017 389 800127925 460 344211877 522 691500020 165 866472937 508 490024832 43 147802022 486 838862356 174 120907533 878 60265889 332 387018132 746 202995431 701 122231644 600 849718052 514 223852961 724 849847544 456 226646928 543 384948258 579 634171809 273 68534515 26 238172736 904 240975196 993 18686430 155 210582248 384 311237733 980 913422975 348 672810912 186 91431085 416 642494782 768 593906308 659 481718221 97 923394956 543 606669832 784 997696434 942 557402833 316 718331713 860 16838797 686 479316417 80 658675753 544 776593510 371 272566769 917 122518740 751 447194601 244 583334059 875 93599803 703 717409893 8 166921950 340 168581327 596 156298710 948 411687431 679 867337416 395 233226316 434 422260708 604 694989246 717 8021059 777 600287367 231 634707737 470 450498659 201 720859609 951 354852169 943 581589075 905 29531865 558 287906249 800 680952356 911 769745613 743 430366710 115 469300822 526 254827012 316 29035192 985 623793211 691 889285023 645 841642195 331 223786893 823 977167996 690 10120832 418 859009463 628 37381294 170 819356936 402 953027413 12 665115746 738 566099453 829 609679848 829 933481479 719 402731355 319 375978539 420 363121958 277 814950436 745 41798197 523 976002078 253 637962714 487 982188217 395 288532765 958 790751604 988 122726262 533 367655022 970 586653343 103 876740949 987 811556261 644 574503454 404 240673694 970 196033767 489 343061355 267 773137669 20 102399267 157 273284731 874 851644132 467 725666046 492 781409283 801 669755787 348 786307275 136 87315523 90 945546989 169 500876872 637 782184471 215 414162521 930 668902816 363 100905952 261 198822975 257 398953755 927 896246221 817 854913551 777 608912998 771 924923043 714 266402136 347 6414651 498 506054797 360 727564441 890 571603354 533 7868011 888 815393906 909 61446499 750 957946729 696 840298973 218 136610609 391 132984035 922 197114915 481 92432747 42 750620256 97 945794693 431 618878333 798 427031894 48 857256494 296 865612129 349 25769125 578 29106012 65 590995612 859 211577391 556 833960374 787 639712820 512 699184718 431 71220027 40 273623403 242 403321104 530 591678192 30 774144981 656 813926317 395 726095040 174 322939237 236 97901128 801 42089963 721 994097783 159 385703022 364 698991084 862 277805456 347 685847958 407 949789925 691 435199097 975 490633143 78 551173854 792 582207817 419 145642305 669 36624565 941 613900364 139 607088237 11 52262979 355 735490738 904 916649604 532 9370182 540 804766225 435 362664361 987 697436851 660 900139598 413 680298223 841 955342575 592 623812253 651 496445278 188 557868396 572 356915220 149 782625699 100 709961329 146 639487107 531 585361777 989 195328130 904 982195976 47 62965454 521 979915159 929 525360786 939 917554761 876 315768936 629 781697944 417 229136004 18 210949591 353 648770768 339 922796279 846 938226700 479 279952242 442 885795748 515 956239112 842 240854382 32 49623273 280 585271510 875 229577149 659 807228777 134 797233009 515 82280605 707 288260127 274 15521390 969 604637361 524 857330533 650 418590881 18 424186167 671 803257418 30 198986903 283 314167340 286 87913008 618 871567763 509 982973902 954 362648381 950 599428416 886 477569827 888 893522756 315 633016397 181 233184191 29 88670983 21 453824858 531 86484080 75 577097040 225 535019509 693 587334774 356 588752183 376 12675129 222 70825181 327 951468424 650 749023873 777 837540980 897 645664261 468 439360181 675 535952475 87 30026794 341 290953825 444 902823687 591 999518142 393 118690429 391 445359296 993 557586105 229 22365523 247 292152694 757 262371171 225 567378210 328 664606186 151 896106436 322 963615950 845 955931176 399 588256869 987 919371325 488 392420329 941 459189022 938 155946084 819 438402853 238 57091934 967 128691997 125 396700304 176 16670548 73 62857747 208 512765808 200 150773396 688 865689771 716 450650507 294 113930280 919 907273886 479 187267018 2 66701977 285 817101453 781 984526401 738 422789739 650 482705471 651 487371985 974 6890772 231 556885529 579 195577992 627 63221990 475 511891277 88 261221139 617 891138141 491 435959025 27 97706180 971 376134461 481 578041644 647 109166328 405 358806828 490 679678292 561 317227169 208 474989231 897 322249774 193 61792194 12 883524878 776 918038572 638 293960217 861 462907213 46 986981268 384 85950348 963 796040069 158 486542126 26 49674605 295 103906282 855 154667541 377 874927369 153 569507919 756 532487852 957 55277633 864 805105911 709 329516046 621 787772951 328 91597603 693 736413869 425 791046053 590 902845969 811 240537596 910 172641286 586 44795313 493 157460256 284 502053307 608 808284004 826 130063838 48 755952243 766 764652128 184 596492244 739 735182609 718 581966015 904 674219043 537 561342125 381 623874285 671 817009715 741 637088960 608 61138526 552 388485574 284 57086498 945 717179070 619 382357528 385 384260043 465 87049681 225 876976827 699 681305978 970 385616803 147 86200564 385 697324661 158 757923148 891 388524871 699 166680128 163 902805220 392 518625220 984 263976345 193 940994367 45 728996695 315 837845942 495 142648216 884 224141713 466 489112854 262 337394181 492 165924695 867 463812093 214 631045001 493 941478265 744 920026081 924 124918810 113 961456042 296 535383222 880 458577170 64 985347975 540 979391595 782 303421299 457 536676738 20 695497902 502 626112578 160 635721830 854 110021735 409 846923826 464 834667427 492 389113220 466 573257400 268 942242420 598 78482278 278 453217139 717 312529369 659 924036053 470 723412632 555 733782905 548 347631627 245 706868845 957 201892192 501 779391997 759 529418074 778 586994879 490 949315926 166 956854197 1000 676811680 155 134796490 360 581598585 637 258215921 153 83867305 417 200119620 835 458994077 884 665648468 328 959134411 499 638261848 146 895741154 543 637469317 552 914877745 836 439723152 45 649015496 107 827253243 686 556373406 70 313689934 637 389100003 442 742806470 30 578002901 533 845747478 32 556565395 517 18577478 890 463559260 871 326796086 241 318977026 778 729589204 339 508256371 850 939248744 112 273004262 796 928544285 519 429624836 694 461071948 771 842396523 439 326300432 518 664458239 986 548928345 750 370775681 761 220639324 588 734618288 908 812801262 517 79720634 596 745776805 597 131722509 104 902469186 205 183151770 902 138200118 258 134327497 822 108971055 922 432223494 943 855322773 741 696953950 503 699677846 543 764735327 137 371462896 19 75351037 616 134126625 908 651664570 456 220438973 110 210548315 430 892112715 960 84076003 898 760947853 385 181613892 645 898876796 415 823457857 797 413481454 118 684197496 756 487529803 90 933116730 79 448594329 666 819379318 332 393054606 174 770934666 28 944960525 681 268090844 197 313213119 736 948996642 78 382385228 647 543212240 51 565503252 680 370443111 566 41270638 86 424891721 782 174181511 797 341534214 715 740238157 616 108155365 653 580709356 463 836982041 160 334028070 130 923537292 696 27312226 293 743478503 295 391354749 326 556792420 965 200852918 191 403308787 447 411760079 262 540678866 704 13554295 848 804783412 556 804936138 550 293714233 885 665894612 736 508546612 397 561271236 511 329900999 53 538883679 78 547278857 424 269785900 517 361660400 630 183531574 583 672349556 916 664854574 214 658684589 224 413763838 697 423330189 534 273881563 642 461987235 820 408212482 501 969519393 422 891277936 452 947171417 158 268204488 408 87696991 749 938047212 204 649448347 657 825171975 658 110842299 931 294131162 935 58513376 815 856093734 952 562547974 404 484389890 970 200920611 878 880755589 465 211270544 918 166544715 234 554267155 698 288988883 61 250823025 497 460844772 516 328149332 251 488937936 294 923133432 133 411815900 320 922996858 575 517905645 130 365256814 857 768676568 517 435818535 264 176030781 402 761901180 89 213978433 697 443826932 466 469818609 666 830769378 176 781109477 324 493117686 741 535019394 802 70206459 166 294837391 908 310456376 606 293445191 407 578788092 524 525108803 387 753832060 359 457117377 574 754837182 479 999662482 224 884811657 1 213055605 747 211563529 170 137638082 418 126451094 878 351734348 303 462471009 816 257055864 135 919271631 169 902916531 625 619598880 173 425065129 295 75224436 580 818279918 688 478368095 85 846263699 117 350865628 190 911474503 610 341092423 933 269248815 508 491892919 667 212257691 668 361230790 17 773606205 161 919806664 657 254332226 821 549032288 16 403605132 823 786527160 464 271371826 911 682970798 880 521262264 380 292667249 767 509924303 109 957001285 952 395450476 105 566226510 772 167151828 665 335207227 24 974922967 185 953114004 828 709590462 790 335588836 510 865644155 4 744692078 586 565401067 80 32072541 449 691450301 558 241287074 698 149081173 439 269919339 945 168243466 18 401585639 754 162744800 213 439724805 852 607408549 619 24180088 468 320843699 782 509106857 305 111783467 395 921294236 483 95110910 477 407859926 752 278841048 910 83818523 760 927990437 58 96712630 821 117119895 613 352699133 675 915396351 851 730456125 342 58925080 955 3001419 490 536476796 834 155427654 139 307390658 225 23151979 633 747485814 467 25318990 778 459007691 282 91535199 936 26514839 350 655319070 697 675033358 479 13615308 783 476641293 65 737625946 621 140749251 57 866038133 586 500645876 221 383435408 978 387485414 712 847459929 0 922986081 598 475061219 942 562178822 424 800850070 517 592729134 269 457737214 410 688071052 849 229638315 668 194094973 624 723296261 479 114530772 971 827359950 819 339232186 151 996429681 836 776287762 342 291608320 265 144476097 612 842490440 176 974958526 33 665000593 676 750174846 600 473851272 696 593984578 460 422683489 513 348842982 517 811164573 837 21749007 732 25560310 555 540615762 749 220064939 463 124739330 584 891674624 280 175998646 83 364544743 137 233586396 534 809669560 513 875605268 745 785525141 858 125326302 574 318054202 787 791677015 771 768284527 574 161284113 547 23752158 24 794572329 312 407842581 880 217841277 888 863831601 140 357887204 146 446870700 96 261702427 289 208696126 568 202437855 186 627641190 594 113664568 487 749052302 480 698986614 901 255104519 986 339452824 748 764830356 511 781905432 675 523414804 721 348060684 446 496871924 844 900671167 731 591094767 686 114303181 980 28450500 823 468578145 18 182925932 901 893860082 469 732754402 204 772333932 855 384241832 714 212566202 405 583295515 102 500108970 876 459691617 899 694431953 657 778923449 938 298018562 554 771856933 272 99283937 92 638459619 263 743304794 967 242627802 922 559214181 908 216999440 990 546521562 21 127992116 934 180995957 151 962154951 586 808829427 102 466021025 300 890333674 66 533982672 922 516674710 174 352281014 407 409177778 156 862777756 731 670430701 101 950694338 909 579998960 116 269940133 325 392716811 566 961057899 22 718985289 362 760002275 435 32611043 324 144088587 624 654764301 192 189560759 926 803768095 554 693092447 510 669212945 793 442703174 314 171899000 391 857478973 735 534783831 655 881854351 248 207452713 217 468735314 86 53167410 908 955473438 495 958971223 571 878781818 929 750034884 933 680063831 506 76951372 448 58427152 405 144384429 709 806877212 736 621646513 204 84571246 235 246923953 597 968002643 798 611687022 83 355944215 798 255724426 570 947141241 976 320911178 137 720040992 446 418805848 169 912873855 939 85649631 971 540547903 285 388782170 202 230138375 644 889427878 356 930429082 324 662943014 23 857499193 437 537412071 745 20661957 314 932810413 97 928714118 64 476586264 732 1327986 430 557414061 46 836759845 6 64642490 165 401637120 78 943490200 483 725624366 593 921864339 989 378654632 686 875197589 364 668109471 766 244269267 576 230953098 853 171668878 325 381198942 890 713258499 572 187996691 380 353413467 619 579051696 885 364377899 239 554150563 752 390099514 420 586968856 11 568878240 270 613040956 606 6104243 163 951322352 881 507416198 509 18855127 721 616064452 939 866511449 917 256658582 14 59780466 520 319144979 5 315057713 470 185561080 279 928817663 49 740971228 93 457688892 465 386805713 654 585283488 586 986454734 413 715635975 868 377757919 634 39204171 599 138515010 641 411851909 838 625397003 200 390822043 395 754924162 902 60125601 901 900959530 779 536503956 248 174186703 445 780666361 396 621886162 839 493308969 950 217299226 1000 212747643 851 631785026 51 736180692 405 394096204 804 87740211 160 670728758 604 486375633 764 11755912 578 842506446 640 798438534 760 109805607 99 385743418 955 163182495 40 820585740 567 559377864 549 925758890 924 306373016 591 898136436 521 903155577 665 451244025 399 673541390 73 916968738 416 160216454 745 457669680 871 412690436 162 932353721 792 580584008 235 557602032 969 17548465 826 859167169 873 682736263 734 392886003 419 120205667 367 680014231 690 552211314 325 1033440 371 926578806 11 427123676 365 892161828 970 450535286 106 143845240 658 56463843 347 600682094 915 490763737 148 429894360 220 786081831 75 352363999 267 199624891 990 518993706 49 73747208 824 829865312 633 275784052 427 285186848 867 106310551 999 296293836 674 799743324 573 836407373 172 465370463 392 377060468 839 862292674 70 158592351 334 935091790 973 462631063 958 692688726 819 948762620 183 841254793 274 165828838 559 978176102 880 654159000 818 699353360 506 690685549 52 609548818 745 207042176 747 99288707 338 162435488 517 902546078 708 464438123 146 166001949 882 497180320 382 105528145 520 994042293 836 338733092 133 987134456 502 106331891 557 510184319 577 766184027 40 174093545 303 394818456 182 816843664 515 585891719 175 524162409 945 286391095 558 200638607 370 249910793 126 808772210 790 8877156 454 655273743 949 724721687 601 358873022 519 537264947 395 877799740 691 783769265 621 823785541 779 256083115 521 252714111 658 313943460 356 6700483 591 398391014 596 694717286 518 200541774 67 182103782 625 731206009 140 287935875 806 631772353 824 617448651 605 193374119 786 725957809 396 67054927 541 461826151 338 675721379 754 783862960 837 925285845 656 857749698 445 931654378 377 168195735 980 464327940 692 48343010 873 133281699 372 549281855 228 649981194 252 10237675 677 647520293 280 807510405 387 220887780 289 604537841 421 657199527 727 38346905 250 755567220 306 439815023 381 510785627 709 629959019 910 638630417 749 289946135 657 257836782 435 723331140 797 542843945 345 199252832 82 644272166 126 974059335 181 72466297 63 981582353 343 398660753 836 620973862 765 19735036 524 404334155 928 227367154 254 714968996 182 885553441 477 674050313 394 437899211 628 859635974 478 898201041 451 183543735 131 353541612 294 111636865 388 800690843 538 989453093 536 575560065 608 291211423 918 757441144 159 897458283 74 222773679 179 341483752 0 145844328 684 76705679 194 756944360 901 314697051 925 45166263 758 40316071 104 187377771 154 356692222 835 363815246 447 517188829 616 526835216 399 357132002 126 659571337 813 713225885 985 935666328 332 855759113 597 992186316 59 244050511 927 472530131 895 483582715 704 11618596 863 583255153 909 318685453 518 891880411 546 543318562 561 353469709 569 644956825 314 576446798 748 932895972 906 515135895 181 617622026 875 250433642 527 758087781 280 117607419 640 304189535 312 775364460 284 693101821 150 621101654 966 358172508 306 720944542 981 59232704 374 732725458 348 343104790 771 870034937 769 715051203 484 830502959 279 175227801 725 99767064 712 128951810 275 638111252 81 798629886 217 826504265 571 250591256 371 478523910 417 756157699 257 228785958 850 32903121 18 573895416 925 974094357 572 95657575 48 908419839 553 25149883 296 780286571 821 873784627 128 568667152 848 312439182 775 627664577 583 413133194 259 895972096 2 725999207 917 22666822 480 36011410 134 322690087 555 892862339 634 98424016 510 781863136 941 300109014 223 773624078 934 411316152 931 158973616 305 162572261 777 565739839 881 944223496 852 779012540 590 334550492 931 62999781 263 742355277 604 525489809 698 35217293 211 904961277 463 847625215 605 812084471 308 354985212 956 330437900 689 657853380 498 146512469 135 339972821 851 749767521 205 880273794 774 159877770 552 597594135 847 81211115 752 561696948 336 125196641 769 545252731 964 251280771 940 37010074 810 144657633 33 262990035 614 646372906 479 843142036 287 683374696 439 114114256 810 910073908 620 314251591 602 48334985 679 442322811 397 263052914 482 588241698 74 137059477 177 504187367 261 938355380 937 542283694 570 477716272 298 518401813 726 118227969 354 845829704 61 466435579 777 597854866 53 303402910 655 488266091 60 526824768 402 113650369 785 983282712 148 909319537 882 409486803 793 489359783 583 127378307 85 508348567 426 945484560 809 701265950 134 370865551 320 604309189 769 524090751 266 755110449 422 715552750 440 652347733 4 666490880 205 342207563 485 65351595 235 986567250 670 288705007 704 474760472 741 796385503 963 648558541 321 288519253 762 270688639 619 335765305 93 411512148 502 33809355 293 212793119 310 50364291 47 50213372 237 341745085 131 565928642 444 242051017 67 142012283 603 542918851 428 480186928 151 430251664 972 176724124 333 477044888 209 849956500 73 193091173 951 968555772 776 675271614 539 146108724 352 403562427 444 981324936 87 655533545 191 972096026 773 278597568 575 33576473 947 985045292 540 453385603 543 916109675 913 51799396 983 576355743 770 57072367 99 34693229 29 572544543 259 340585767 566 276771470 306 243266329 63 9101041 473 192036584 9 444666684 312 601281974 978 714168647 555 847599628 2 576839394 198 790836126 833 26208849 335 375645205 82 725554263 656 701740553 932 817246357 576 543524747 757 364818146 98 448290543 544 911300011 480 399716555 900 883737271 978 814161828 662 992066749 493 491119222 609 424654894 84 447930227 957 207883017 291 284302676 437 66119456 728 192439762 181 16611455 1000 31441783 379 898251900 189 957626812 632 557999733 101 41514558 545 884105812 859 658513604 714 967206048 461 838725723 162 696612643 378 902443382 658 142028622 591 230014894 456 310033349 85 723043436 397 336516637 161 285970357 33 569806408 973 857047969 9 386957353 457 817837179 124 856933303 549 619831385 778 639021124 869 113160089 152 920294331 138 236532806 476 383577142 159 507106936 577 665579928 474 902813260 662 970173872 342 484037526 760 735978912 354 788081931 404 312774371 90 614580569 723 450863940 523 918427345 841 839734856 381 46151011 139 869434798 245 957953685 708 278754172 401 691688225 314 22940968 626 126343968 161 339504050 631 43766198 475 753537918 187 34000251 460 48091514 788 757819294 36 982822408 661 327985098 695 335439770 642 145645852 609 89103362 287 609856487 343 920778040 651 899738809 464 967955896 679 307173944 691 656055771 325 148874731 924 258821686 468 777156980 310 309695242 21 133306396 855 404244876 261 36389950 814 813871731 75 988811242 652 748084538 238 740678595 685 694429392 142 3675818 381 98487593 175 111149748 530 862107387 746 49475717 349 335714418 1000 285400022 465 610936646 97 302001988 737 217428541 174 458982805 506 752351744 691 378873367 963 783306901 92 86701031 191 645807936 983 688893275 369 473810296 587 503875377 241 215903100 534 974248640 286 558471414 582 925801768 990 816660742 4 721864265 564 766280947 963 609877288 873 903453526 833 717052525 79 71005606 422 36249626 328 876957003 231 990947031 475 219440082 928 395359531 279 289907023 761 819572582 388 871029460 504 531548361 518 736884259 669 756379579 926 158923618 696 954252158 406 400916372 638 520779636 421 634134467 41 928587396 295 650759833 488 827625414 446 356114818 869 499211140 512 892986291 112 984289814 638 525552861 690 919564181 123 446600190 49 100560837 523 48113043 584 967433728 462 412555819 108 196275649 205 583711993 942 910823470 998 54374779 105 542467917 420 489074742 935 457463837 757 542331261 892 695058800 544 397334538 699 356506722 541 644735008 449 896171477 823 117207877 970 272322065 234 292455557 487 627742965 797 460672423 222 327998675 284 661156206 627 753426883 681 979336743 430 120242387 482 589044355 121 233827123 514 898969208 916 857981299 785 905726974 132 138452414 678 573036672 619 618182602 569 757261317 924 316663800 847 687001397 853 143399754 629 427629360 232 992627407 579 757961069 155 599182946 913 572344505 436 127654148 228 693362412 335 33453352 659 455140576 133 33112473 685 193495343 622 990441608 474 53455240 749 243777599 710 638045245 789 442855445 845 732692741 303 797991915 812 243687943 835 1796764 536 122493454 205 600984824 279 215298272 487 147962358 279 681021042 973 592729725 658 540308623 300 716575440 624 154685189 920 941696080 352 157644831 104 648174356 100 387544658 578 321594365 854 864553692 371 30337458 4 780035467 185 140633184 394 232054635 681 343247204 50 814810347 12 784035638 947 183229926 632 874531805 563 316371862 301 36174404 916 989354651 227 777626607 258 990546329 540 493996013 826 247738734 241 241902046 308 328548633 75 988747642 482 229248922 733 109562936 953 7313848 1000 785062705 416 750126039 164 780448477 264 625343526 761 378507701 870 37034499 200 672149425 287 788366670 824 320717034 680 738441507 445 16211911 835 424559727 953 894878365 338 893925929 653 884956713 326 460849919 855 864113377 416 868316330 740 906516126 947 997960841 75 927992949 167 723273967 287 294869703 526 193116795 264 865007339 95 280042819 894 400790964 157 370500699 448 686788568 505 736003365 69 951662367 905 994414768 443 480411983 566 211701196 52 54733471 348 461159486 718 274625711 980 588486472 690 531825308 487 562612232 649 476462913 160 53357027 39 978668778 846 857203596 490 230846001 960 580590650 617 967903401 195 966702387 186 115701025 904 982917185 427 50816406 268 473587333 637 510488927 536 638465480 403 496960755 225 550673579 266 167019965 21 247423393 381 196828811 39 494636228 350 801365234 136 328720127 383 117026304 712 726623964 175 84360779 544 883947111 615 221813594 158 557480766 8 614165884 721 143716468 201 911272443 475 215302593 87 773633319 369 809252502 504 441223037 745 261313520 380 19804603 461 739775165 842 532353059 384 196096124 423 988390297 809 835076140 577 930080193 555 309550826 473 358668720 20 475326112 398 836861774 698 928459021 463 822390306 842 530787607 496 862688047 463 946614292 866 565546882 717 56329797 499 441285250 273 54618075 463 798353156 184 936678521 420 197372357 858 188622343 37 603383686 29 593601957 394 444856137 655 431545463 482 221946184 261 780122638 559 348904595 901 906427581 516 574046033 609 356481854 602 908879578 554 388119513 327 133486014 939 193312585 605 57371287 691 558752849 63 467269513 980 716807407 612 242430825 481 807619699 855 652123984 573 15350783 8 808035552 575 937573425 386 299350498 891 205410350 533 822455299 82 398558046 607 435484444 380 671545629 61 428734417 684 664632909 480 487766891 545 895920208 786 422171400 52 574730249 35 105568995 733 492539017 467 824937533 210 510562144 505 119563778 898 505109722 16 224256613 191 789847244 454 756917238 783 378424381 825 993364167 935 645519036 314 289659406 707 305467807 942 966487484 941 388102307 79 765966629 373 769191367 240 946209368 460 370364005 609 734001176 166 163238416 796 930377876 485 597804756 728 728873523 828 340889059 674 604215573 193 568746039 974 198363457 935 870141131 771 402629920 141 879408524 972 788793874 17 209523247 194 824978077 244 927741458 250 462327994 753 285237181 201 71694856 358 640411018 230 613315699 632 861829831 512 642958206 359 12596486 869 391062488 793 323176378 577 689115166 200 402477744 129 949931561 476 130301082 433 347563564 459 727614446 980 926309887 76 368597059 350 128936118 781 558054441 521 715181294 367 590847817 317 667772069 168 195999158 473 898255146 689 207510785 287 181829393 736 156077921 704 418590805 260 395206886 719 10306124 86 419452504 442 636189422 518 519479502 827 435579187 683 344977201 842 400151834 846 988588589 65 778164818 587 395913764 887 132406112 793 235265944 997 796257104 978 933804298 163 62964597 541 824440868 843 749426204 648 387904572 284 75442941 39 144466858 298 617780726 833 894034409 593 700018016 414 42085141 483 273754164 493 884934883 791 382401905 221 764716711 126 972866926 765 343692764 668 471545736 322 486336871 994 342433991 578 12056926 225 817773515 860 634879226 214 568728867 878 801549458 699 930796667 979 738709887 146 785599246 878 600241826 288 929159073 449 720706110 106 986560953 41 471876836 230 188820587 435 142930375 640 760053278 543 119230828 784 817513202 417 433943703 170 994070587 835 351307521 814 888745094 156 96189458 461 408163300 811 278494578 514 404851968 275 193096968 563 840510040 894 718344092 754 358218780 313 695976404 299 406249595 874 465204066 234 37046985 185 715159576 206 414775089 29 942844421 440 892052261 709 254164789 503 97106600 285 611582869 263 278833443 708 252109500 695 600123150 424 282547494 559 712284753 921 503445820 116 944224238 562 745123186 569 358187882 331 620305043 205 487285992 882 62668739 429 838124952 107 264605812 189 434004559 832 59924247 670 378663631 431 116771356 971 439278610 342 559393444 456 5973232 862 566768641 282 955416455 994 680658941 678 204682504 804 38532185 717 313767594 953 971979053 221 405497262 458 555358967 849 829405363 471 758393607 243 846340227 747 298252061 132 390393189 530 527359040 408 762170949 200 285043578 969 717087422 244 350272034 229 447049267 975 131200091 107 345658999 39 652449639 324 368566668 329 976043218 600 348843100 432 282459735 392 656959717 638 809379367 976 400887259 946 254683517 607 853296985 129 279675644 15 285865248 17 150591722 664 15183715 358 116255000 42 213199583 775 912734973 302 530904791 528 769127534 58 694037057 946 870665915 859 208415961 877 332305588 453 428843558 260 592971587 651 305947615 461 186110870 167 934856955 966 513498485 310 259557234 886 581242951 872 889161645 104 632503509 524 703536297 141 612619268 578 549358749 404 307950783 160 359442081 819 90725669 972 831402192 444 242285481 119 637903757 454 559536643 603 580851923 910 108213721 253 727752950 61 680104737 119 771270573 335 982608589 473 550547210 520 233584971 313 362727678 212 831925878 991 717537804 230 200245563 602 311240151 391 347606613 973 130775062 224 644795790 355 177299103 142 652132683 357 533089497 495 568079531 847 875224582 97 923328390 107 550695637 926 79734371 301 646472292 523 478367018 282 208479588 351 849923045 839 28217210 452 514148041 952 527478450 312 645832540 644 637840522 404 980783589 87 10966128 967 401973191 938 596341713 41 63262953 460 604136519 418 226593400 303 930079421 149 860124887 86 758744833 323 171353980 106 825432896 485 540535248 395 429363429 77 583119313 490 732359074 258 165363174 824 987636839 482 376374457 129 61153283 545 242550435 435 998545948 246 981151632 330 730284379 605 155887985 895 909360121 46 908427641 758 154652064 565 874931465 449 830831200 612 44742363 748 381835870 393 948647344 289 778537939 911 376343185 849 164181915 420 446240228 563 524449955 498 203109329 208 310251571 799 309841047 790 520818976 319 5410207 313 666853269 802 939645822 631 877510948 51 176471962 847 554852967 348 16451393 160 135313371 867 618343031 597 741431032 946 379605228 629 253517614 861 624856149 607 67633649 815 730511071 750 104432189 893 979342287 378 139678544 146 968960407 343 831032193 188 734521746 190 214599247 180 323544275 534 2529023 294 887931113 929 100703265 687 34235029 925 317526184 382 788918125 306 152030788 822 989186846 740 820575743 685 263818782 250 459021643 378 180280083 945 579042597 284 589168587 455 947014989 82 966917681 391 650978834 444 462945999 371 197600414 295 146647755 421 897962464 27 878503054 157 217824467 939 532712368 671 330654249 501 479993251 403 808005586 826 66033199 456 690461168 980 619657550 939 303202428 295 807990956 81 73594835 536 322051971 313 736238866 716 704770173 404 129756118 149 937163999 899 803392869 422 752404879 926 864682655 168 128501257 618 554013974 863 601836350 422 274283590 594 82973321 946 739385640 968 219017429 397 311932177 971 988193647 62 845835987 234 181665009 349 422635663 611 775106211 60 892059358 850 85342839 385 427892846 361 7256510 912 799880297 729 450363181 630 177834729 204 943780060 219 63544525 768 527533905 99 726943737 91 842021823 361 706237184 143 956897757 159 538905457 357 350703287 652 534922912 119 485817220 709 190204086 185 356050659 91 223922345 710 261476645 575 69570680 624 539129444 817 858527907 29 599667191 978 322513294 210 341587027 5 687661308 87 430829657 531 728638152 457 756872570 263 232564640 830 352572997 456 147207010 823 196719199 498 816966875 381 246994063 460 599445237 947 148956 435 452820326 998 682535832 186 621262280 698 40978129 499 361627112 550 734135247 289 542251718 314 870146735 631 912939664 863 669240695 395 691402861 462 770764043 26 343198792 689 574085870 180 15551300 402 792595073 598 495318425 411 230971917 203 298113855 86 296440834 37 644248406 366 334887172 443 253618600 391 412252553 682 38953269 36 886813663 590 873648106 816 216974191 110 33814644 789 653056664 602 836597042 513 975081247 62 883858469 842 860115445 3 770837582 865 549218010 931 196094427 717 949299376 640 473467931 728 419282488 438 896586196 537 13610071 130 821786740 124 953408957 962 752209623 821 97047391 249 557627182 894 858803907 24 385021159 832 723712356 323 108790791 6 957207890 95 719481283 337 366119888 166 722830088 128 193442289 160 847735169 443 272108318 60 591544289 942 150340398 289 220208003 535 901365745 939 829009692 647 195382040 66 764397082 527 987590932 519 438606565 799 655894845 279 694511672 990 704059035 166 653030558 135 464209546 289 340708906 371 613255850 806 649551906 610 954061563 513 812669154 789 790560432 935 556233588 552 630188247 8 259552349 960 146309914 507 114481543 612 904438386 222 129813381 529 422335001 65 747873151 576 872654962 595 587420390 678 482391407 597 20213705 888 668475477 975 775603510 521 416993891 500 379370577 627 966518905 756 496079401 502 845182821 939 219063637 530 719987828 520 584552854 346 647821306 737 137302408 170 232724112 651 547045888 350 812472027 140 704015805 78 431597857 989 906854053 215 903446088 688 705754659 638 459970489 193 718417312 447 941250078 693 266819914 182 554595021 637 815030917 932 975180139 499 756367896 292 299203335 738 476785309 64 969244421 274 210535245 492 676577231 447 12609204 944 980502347 887 804379972 24 955697010 310 290388908 577 17004096 358 110365926 210 97666269 761 382964783 538 214437062 887 629479793 650 555866198 41 848007192 465 541993533 129 534121693 829 915647503 918 158000457 328 664972241 759 331475082 532 616827974 246 643642708 904 259446581 94 559247352 567 970246027 435 972187551 457 407100489 888 776530765 627 205653454 221 715616292 587 836741282 186 676060725 161 355657494 837 526104667 875 83326408 215 397920673 490 160343012 353 924144094 1 152009178 640 248822211 634 994149746 88 480246346 236 954464355 601 501820737 559 545014861 340 131815843 360 289258143 598 160137051 622 738861489 976 685251735 572 816845519 550 330617909 730 50873072 228 657853352 898 116389429 69 582232702 701 292307033 795 811473599 313 123830892 472 29260156 430 89519963 471 56443662 631 979721682 101 847020473 969 481375644 157 952714224 754 562802354 433 633128909 134 74916262 906 42983297 40 657529278 570 68243664 129 99892500 544 653344324 525 234575207 370 279772120 514 555668747 23 732256698 124 994518955 635 495723217 197 932011888 662 174619041 733 314408309 303 982755824 970 616341378 964 513646816 227 852509440 315 530263002 878 666877594 649 232232684 389 853495463 289 430173542 522 593816077 102 786317723 440 313525192 734 413810393 673 748164095 12 766163061 950 375245823 796 749629359 103 118421158 450 496869993 5 214563397 352 43029288 993 81841440 907 520955915 847 47241047 951 159254213 175 78788034 767 832588227 481 669590013 807 123703620 136 909733937 575 647133559 574 409930319 177 863352517 537 766054211 410 466221889 703 190892911 652 860926725 948 92049574 908 585834698 897 519305806 778 886288953 83 160951425 149 3299404 206 898832152 400 753573440 826 298136675 73 210635811 341 436595180 304 14248481 510 34657459 847 136908101 62 41922342 58 621528887 245 268000779 113 398206621 937 526319140 311 462874783 495 725007413 663 470918574 446 979230251 632 719534345 907 648036921 973 293780394 539 312352474 461 302701251 782 782265188 690 421686978 515 705128383 143 500028569 1 519789847 327 638481984 129 154295072 949 181364628 40 819458654 553 985124174 175 456005633 244 257627395 964 330432547 309 673194705 574 761040550 825 676737716 297 957588348 788 846159709 746 33861825 206 1622818 463 705985503 738 464436746 98 105867836 465 548113813 396 174236022 978 717737740 50 405024747 929 312400278 506 496599603 877 573577845 571 787692935 721 46554477 739 331478280 277 931609287 102 332033752 751 688533514 232 347587012 699 338108205 485 863169259 255 706627307 564 537903197 488 142080296 393 897475032 996 143858864 397 647807973 492 561288470 626 941015834 860 624067898 377 836160428 859 642769721 101 278088637 526 353488910 624 489093990 94 544141051 482 19487736 633 328791735 986 157955726 621 694182566 294 476086566 67 112812960 368 548369476 860 24550595 763 753293866 987 645816497 459 38652847 537 466802381 132 465799344 239 660008392 117 411075289 645 496565634 775 629627003 88 354002245 600 10427454 618 480571511 451 682477832 727 406219719 348 881751068 921 476135272 462 180807252 303 404592270 977 953672681 98 850626492 139 415657810 199 93708020 329 909953807 135 873485357 841 836888947 136 809242690 771 157606542 845 75557260 456 482333666 245 667788269 958 381213141 507 761795533 909 115879261 358 96542199 671 473433934 515 938242165 386 720314191 816 750964730 632 71351891 816 65943892 573 238212463 880 146970858 386 834761999 450 137457856 599 589999945 153 671362545 152 531687374 572 371187730 37 80405881 688 410602547 386 357270050 214 392412250 246 21886526 537 160849864 684 135797746 659 639774111 652 66693359 129 230147426 563 826167127 520 598602410 722 394042826 693 594451951 653 394155223 777 590019926 222 363213944 735 13251288 532 4769842 344 778732732 893 481209624 600 607296578 237 477963514 986 356296987 280 740413367 143 999372981 825 532678156 740 255161909 811 108039768 657 248880988 992 364131904 942 674821728 212 460363357 743 159028960 747 335868524 654 47366457 336 175837423 722 381293404 451 500486233 231 604268139 331 463501635 960 713227552 599 350138887 403 372299813 971 734886168 890 845636905 997 273402447 272 103245542 913 242538326 532 657299967 303 111232432 807 97716137 11 640391058 208 635636685 551 857720242 978 365085205 686 206945282 100 381186518 31 797005927 470 455760397 713 337409535 542 504809131 196 871172692 1 964169845 511 520644113 837 748518548 467 883448462 280 969221031 232 366105445 466 815884174 13 467772178 11 525925334 203 757936086 782 957266893 259 642043024 962 375488643 521 393684584 838 718031441 969 13650807 444 537383194 980 870915569 73 482177142 362 841428345 938 303731783 115 535066193 353 197657614 964 244661249 476 346644853 796 669767920 796 769413297 247 409060880 812 987604788 874 996780582 228 239186686 757 813530192 701 569020851 154 44805875 205 151823685 650 840722826 928 799182002 433 928979060 113 246100658 985 781046217 696 847972464 918 66576415 434 8284282 42 806102881 133 937742662 505 134373481 982 423111198 388 790879314 652 71140264 784 665644635 910 602070504 854 89588551 349 845787101 989 665437869 84 35752327 925 856406979 588 197555455 512 220316236 751 411557213 18 977117743 492 980316103 533 21469584 897 455618346 993 947568812 819 441494100 540 208213237 231 105145283 345 466980037 920 435668521 646 823608450 162 915226144 383 33890234 793 535078065 32 165947055 116 323736710 429 455757682 432 163718488 995 680574029 207 863476294 282 18485687 237 878224848 588 506579371 555 124300814 301 575518364 768 675583907 884 696936349 238 883256722 803 150022533 112 863974984 885 97494228 353 794522970 26 836927078 93 15799001 717 259234758 935 659055779 321 789116368 200 281983331 836 930756048 41 445272433 405 345525759 675 841593074 466 853712671 208 797705818 814 49599375 841 551701755 796 408296467 951 931924675 83 595110866 551 255190833 132 581254558 936 860147563 121 6385392 111 26322233 201 818319665 399 227769811 520 233559526 372 547504232 696 279580419 350 306881236 260 480538134 983 501015524 400 798921653 884 910425200 960 116774350 680 434600710 419 496306038 111 470358824 755 39309127 67 245792850 40 423947647 697 434436616 956 970730759 479 464339499 868 415108231 950 330642618 601 795624400 435 25646880 799 672287276 478 890199223 711 273212293 510 422408166 399 295653143 21 118987931 661 538732880 425 39828211 909 328371916 141 945837002 667 823920791 120 145809273 964 146956768 457 978091292 785 100582043 802 889435843 540 273904099 573 315709996 271 786305986 496 268254326 322 953946890 6 33895806 60 897307741 275 231105638 57 866900582 554 35651257 751 355320818 688 210190181 750 768194894 847 247645454 89 573948117 503 792340271 657 40414440 136 291729881 945 407209111 493 552125940 786 524744821 722 46479248 852 907804083 124 751163082 750 899428488 508 387544802 665 122224444 227 659382145 840 168195366 821 420645317 596 695218144 237 866635023 316 215041172 424 185489285 533 777551661 709 290480244 36 8673250 664 13033899 823 732353057 337 870235174 229 600371598 483 711705100 570 183617539 15 661470134 386 298675043 327 342538239 931 549484716 326 246126445 185 432100935 78 603241163 102 268927157 435 814558843 428 355518298 578 909508471 658 102908021 913 465567763 461 743823090 263 156576733 470 573950614 479 316214692 150 66938072 446 144025461 727 559344083 667 77937382 259 813213545 278 588684894 469 601957523 652 188156316 827 545370330 654 420510564 226 598585620 505 609796918 912 982628124 961 938809055 531 531306519 211 661883028 684 465728884 280 32190106 61 478561783 727 698614073 725 490368429 397 110428454 519 956220881 820 317418931 674 56029218 606 168088024 7 973281790 565 275523353 459 663145763 305 413570358 178 544756650 701 820639564 686 555451104 471 320723637 824 216787615 173 671545323 39 824652825 464 254636778 269 825067246 455 50970978 255 640348443 873 166178311 647 861610140 339 139900258 726 319541934 268 523601112 457 949966975 361 223860309 956 761897439 664 442338432 369 532759947 973 321664354 385 91490917 374 588433268 170 633208623 297 604226959 487 697000554 51 851071151 990 69716682 867 980564124 25 60833945 761 224929779 898 870233684 584 361403039 693 362839340 190 664508808 719 536896911 971 902902872 311 97596023 578 527112466 737 747718707 598 496530920 331 287826305 205 839984484 432 288392155 844 242753019 413 426688477 18 17030471 419 59014037 910 803667057 483 561360124 396 907988819 628 41429007 698 947079008 97 768926617 440 382146769 671 802923417 335 513817756 111 394451398 592 910656830 771 868432639 78 397173646 842 447701167 834 600171720 717 452410252 735 551263566 135 862087298 519 632566814 908 48663683 630 943791502 837 384445211 341 402764619 318 877765258 310 32705012 552 123077792 383 699604735 196 61221626 132 457289388 512 895040180 309 439048807 744 25173047 420 133595177 650 310328102 848 4090128 701 586355469 434 905161733 181 88069522 197 744119552 333 712634611 593 230926857 969 641648925 805 656562178 150 83808382 528 816772077 750 918619429 465 302268441 412 159809913 285 651610388 270 337221738 858 493019257 529 743384371 323 501747084 396 840192723 150 966134766 377 920176579 503 506196903 888 434182204 170 390205878 45 333054575 27 258777860 510 387986794 392 985961527 631 964426272 511 707875732 56 221856329 294 393199730 915 983730554 173 274914900 908 551617186 683 985281831 690 908676475 627 645423904 966 788412943 389 332364540 769 234260635 67 28766331 750 631862447 785 986145238 620 50969280 440 124510606 592 579607942 642 630481065 730 368743011 556 628742353 889 221444828 799 369026395 72 199770330 386 598655708 58 204258122 648 153890645 309 13671568 408 999374804 920 834031995 917 777923823 604 48693525 375 748462699 31 543712744 833 111412763 360 429693896 955 232432849 464 974429251 721 576467648 514 162570511 57 263594541 222 703981608 386 321220276 999 59229193 506 190121195 790 124258698 292 857669885 737 843342072 791 401155830 504 186035622 18 80121131 811 985843837 290 508745748 233 983443511 438 295972274 763 484092178 259 508717946 4 628200961 974 783017789 840 813816879 118 588659281 452 61956692 32 524143796 202 193609090 492 452650967 686 524050405 521 526524007 457 23371593 26 890876100 147 226516457 260 590332806 453 303026435 553 611928621 103 895720603 858 325062438 496 812793961 916 165231385 122 678317939 58 280898267 821 549464252 738 739207233 166 717925851 441 986460626 838 937745604 263 79138738 286 21897458 877 338482972 782 988828172 650 523458502 92 35242529 736 496190084 130 309939440 918 846326504 113 465895156 913 518916505 210 233940035 439 467982746 45 140894049 903 410066717 290 695880700 101 62989307 911 199194309 745 374992432 900 655787735 499 442441689 316 404319218 695 369581021 112 669770496 488 794122439 652 521884513 381 72840147 533 674701590 385 657635479 794 612742289 149 327409873 343 809289304 767 982730175 10 586692439 140 37446266 382 749389493 524 479254810 547 261127136 411 435172472 597 808262902 119 861464402 574 495441527 312 371077290 675 850941015 503 522446689 18 884987923 992 409202215 786 243436946 675 860667159 915 731329368 97 471410165 469 699376873 308 711988883 361 700840652 698 902235443 572 467054866 540 110882536 183 83014572 574 596430839 985 430870184 503 22874810 659 460130457 754 287471490 99 966415889 857 417641738 734 616682077 916 618132031 24 797289725 515 650856978 661 651972854 927 627756856 326 119813035 551 29130194 627 531276490 210 559643726 566 688695859 575 163104047 71 793397142 324 396058595 486 474532150 210 337583914 678 323457555 669 391421842 860 15617926 19 465324273 640 897118068 870 511771697 884 335698110 223 445696967 202 454620745 120 446097439 507 641449793 78 696827109 736 118462675 201 674661420 315 980778880 149 967333902 760 925494298 218 781250023 66 615065242 404 465127117 12 393972206 919 434774629 789 601687 821 635277006 260 165354458 512 770807888 833 360536244 473 748447436 124 548740483 352 865442639 90 738951945 763 62026323 87 354121628 250 282650367 441 821145547 724 574216938 699 806325885 959 184603353 45 206843761 446 100561189 592 766385284 671 845094281 309 325042184 52 699446283 984 287674373 136 286099126 760 898422270 881 935753652 130 676854287 355 826340047 180 931124219 917 848706423 890 821280930 592 312755229 68 25839191 370 318792106 990 807689983 659 434548798 965 479398321 863 821929459 509 856325099 388 446721668 944 816980003 671 597697408 309 833634907 150 905195516 744 313103424 80 583685462 982 284972941 234 569493421 910 781014786 846 83730167 687 264639882 331 291055677 764 386391957 102 284501978 361 547058300 961 277322659 88 439498965 423 158978949 88 59478311 724 111703970 752 658657999 540 981931655 435 878146577 832 729345035 80 661077289 101 387287837 517 595154618 642 140259443 100 251862063 578 409627795 994 977303765 364 377253195 777 646957201 763 197681223 451 941694844 872 550426564 354 803879816 510 996707898 892 699881579 324 102211572 911 579373660 895 573810554 369 625376107 902 485749983 224 415527967 372 887231710 662 758374223 580 690913406 351 432041946 513 638761685 364 213461633 194 525099083 138 925707526 478 163774734 323 777381821 983 40947013 172 19769871 28 993126999 227 102596509 157 967475879 476 261858906 309 917476630 919 476893713 512 795118411 799 868576762 255 714108845 355 167943024 322 625292796 720 774804413 334 583995907 565 946886223 373 877429246 762 553040818 780 142293273 39 572157398 35 132388785 616 213704029 230 727682245 785 385950646 699 873108466 312 724280410 804 936480296 642 291108111 861 915920498 950 14922051 236 224461937 978 50635042 772 794385229 504 153852689 695 608150154 814 12959340 239 372431120 553 857667369 252 575376263 317 910279289 615 399659866 269 46869578 603 244762210 892 258783709 641 126996323 688 741839736 766 356567161 633 107693994 278 539696679 35 651543460 463 984513453 302 834529547 893 525957429 592 890748539 908 360049303 2 127214772 84 424876353 46 976934381 356 410463205 922 278651750 69 453807379 426 929841478 527 710183604 921 650984973 938 705889557 878 320192873 901 71314728 193 521552874 211 462300844 319 642970629 393 214793508 349 413623996 207 361460106 456 553519845 602 497672903 774 747060455 307 275143307 356 866214362 435 42294716 450 390289523 696 551246516 396 895821702 32 617953 570 770993708 916 18189639 872 575390143 106 803194232 686 330928276 209 150867595 791 258707458 802 138269460 897 918264930 269 822603950 731 971342667 580 358911328 384 664186467 293 403512721 451 115607099 255 452384209 856 911374196 557 922240246 606 157092121 873 786632286 322 101038579 859 127914485 775 999137445 301 739362802 161 435875471 582 298184844 198 990476372 930 86870692 611 224169385 912 502602759 874 124125887 544 988113145 801 398203893 366 358491626 439 690570500 250 742734606 855 261969761 323 148830885 295 925503997 395 186350120 920 474537332 439 171193027 0 716530010 93 69403286 270 456745548 811 79004322 344 952629091 183 976867707 16 8465550 962 434234915 560 320179345 316 713980677 681 858790911 408 977206061 688 14848156 245 471689180 536 941640716 76 239982466 555 533675825 677 859796270 635 948540794 571 424208860 849 870379833 61 105811880 108 857320722 75 876388559 638 183905505 356 8863936 445 532530145 774 703689929 592 712824301 395 244918336 504 311916162 925 107059048 368 392043750 636 301454815 755 144835031 208 436811343 874 214916900 167 849858748 110 107262781 133 713883844 627 989606954 694 71242906 633 134665196 300 570274638 24 777482983 104 229386094 871 443970750 420 417318655 365 921767261 929 903895104 12 453317223 315 157073118 830 190628370 448 71442557 963 170132094 211 748623485 884 240497235 809 142754448 764 551677639 284 21370272 732 291087701 802 106364210 653 750207375 451 448392838 703 605477031 189 298697744 185 688388008 26 280296603 744 766733723 702 448808708 865 456755550 146 293989329 801 84049713 346 238255937 620 989858346 796 177879772 826 101495300 284 768789005 0 702636782 896 478298341 343 695097648 821 249732306 784 562555321 308 509520811 763 410208229 812 103126013 521 544551560 304 76484732 925 655521333 993 187699964 46 90366198 403 459495340 568 900880640 503 273964955 906 969089536 395 704369134 837 920187392 135 696202148 908 934832270 186 720238226 106 695298981 392 501008042 846 117544059 455 727109851 978 316382026 360 880358911 596 181051047 831 108998512 371 890422186 662 489600999 186 355681859 464 190679311 694 248797966 535 948846618 420 835047970 32 709697421 359 454076048 533 34132655 219 242781388 189 142113647 252 541107379 90 124815284 883 607560686 3 175932139 563 375931585 173 738934826 491 844853683 773 201004686 54 6926132 918 56727158 290 409471881 983 54855648 883 861911044 475 582732742 557 426929808 156 701676408 575 140078269 537 536958840 29 75471653 567 312950601 999 703188409 993 882793105 552 110239752 830 654875517 357 64471508 52 692857260 391 456344790 742 648047039 693 599108453 653 692142640 53 700154733 930 621689599 303 182950438 292 983708122 270 477857387 392 837301574 39 353745689 982 671961778 952 298480958 571 946212555 977 628653953 782 735167322 401 381226274 68 347890995 485 936814062 280 931676517 176 383370618 946 127771430 145 308965800 137 882537366 187 665266398 183 181223662 67 35000289 562 954524881 65 36555784 104 18450753 985 109099051 77 65334361 3 192632550 737 840560795 10 800905433 66 530586921 244 747494613 751 235777650 377 342097565 415 356486617 582 581070628 299 160611724 495 530453889 75 529700624 573 732648475 141 544413021 574 53313140 39 316246028 292 805785482 997 983408123 767 102915610 202 914765118 549 200926753 690 587493098 852 816733208 708 127982189 541 453048831 686 856829465 548 188322351 962 530126221 112 951363720 733 766204834 114 346135453 781 231043792 119 221880458 104 416197831 103 829807143 535 65670780 207 704158857 16 212609674 685 481860006 324 947370211 188 70261851 921 874378285 320 790124512 110 854356549 540 920805609 783 411065382 769 54823118 528 880336887 283 595802484 954 94980380 332 963074821 587 389209332 306 724069822 994 311916780 980 309826523 156 650344754 864 397157374 603 942725053 853 767081672 667 240032034 842 118729931 917 494556876 934 614070074 120 245804452 872 168828763 984 721617702 225 553402832 415 299176580 825 268656387 216 507571125 978 314894063 234 565172663 40 483474323 884 634875978 761 764893129 535 99636516 942 903522001 987 833462188 749 924960051 371 1281030 586 54763062 611 391001949 767 941263775 98 820650648 315 852434048 254 669105014 754 863841822 406 285715470 942 995461924 354 693817290 781 863338588 688 172796335 371 628583297 784 823965411 555 925068693 782 906310943 149 191657102 448 399981366 503 757158054 485 206012168 768 472502970 330 239980039 881 323158450 506 861549286 711 338029876 276 431709783 159 779681129 609 897016773 385 931410098 39 75816001 48 958920496 794 925111816 626 324374244 845 894104175 749 70523734 154 27508697 947 62193900 158 658994700 742 335371584 249 489929185 374 206574506 935 115751697 588 785795535 460 145469948 548 341950183 515 663691388 154 970700101 501 626180855 757 229966338 315 808912085 301 701850671 156 687996869 771 541792865 198 358155118 882 295537872 838 216465796 425 112977294 835 719046640 485 133489462 877 618603547 181 605004922 319 846943312 572 675339308 846 150961675 514 32224490 389 171200518 312 567294766 473 168292800 100 540868501 554 258677456 623 879001095 130 159296969 736 509781885 124 301974416 649 373135712 296 377175420 495 29690672 378 17422010 329 191296295 799 265423199 30 47641436 800 910851197 696 19169904 320 362575138 666 238347728 625 535591751 527 809028793 974 688142323 356 328978553 144 117817575 632 227650178 445 476233688 313 294273892 8 474507830 867 415706598 521 453842667 869 672507803 376 406227331 902 695455568 256 877040849 719 526649813 368 293483680 446 201919161 63 240769004 952 476075165 760 484863778 493 555182240 836 187148930 352 513618903 841 526633811 633 449259350 176 647286625 543 488609811 191 467350118 749 730832342 372 825639997 683 710905207 856 388470739 841 426225951 589 625358976 605 828854965 20 266059677 166 263964154 425 124946295 586 965642048 509 807311592 322 856298012 265 524940826 15 336126900 97 824550414 326 886294427 682 678126842 253 591469579 947 935801990 631 454013402 155 67338073 909 25783743 802 312881153 574 196107869 277 217440662 572 312476324 359 582350963 400 548356567 120 421133396 853 748119429 314 872156883 727 205390647 163 196044309 748 603047717 954 207937058 384 538183132 120 541249459 707 103928388 653 616956027 732 70692758 442 622424199 254 534078415 60 930415680 171 100671202 824 916515030 373 504973832 618 734916462 419 901177522 515 720233004 395 780235009 556 400159689 411 623515040 112 107301150 884 973126176 964 884670570 289 302895993 850 85111754 623 424751892 690 780370779 361 165532396 505 973081222 994 617255680 899 791968265 289 146938582 83 20599315 587 429540531 773 689073063 135 833910595 71 107469349 931 744209508 129 354324546 922 262812918 129 500248123 834 437535043 675 599415599 462 279297504 344 506641793 926 255945756 277 831472737 600 832916665 665 159916329 178 980366098 694 692740234 1000 101154662 190 732489203 362 409539412 317 810971875 181 348984189 799 485021641 184 884191746 360 721310135 410 920648031 997 164667430 335 698557587 866 288141129 928 864871856 329 393637184 118 763046614 596 289008193 158 392173654 293 94225596 873 733585601 464 38543173 460 945244533 169 280043587 816 984068362 1 112103872 591 279127354 728 974594323 266 793972339 333 810559648 892 438069634 75 769372252 972 819648183 17 341649748 751 244059374 832 152816381 926 816032013 987 340450436 260 570990826 71 267045719 864 671650049 410 258149966 405 170647223 826 456745134 208 763968022 101 874557873 981 553397702 950 673053016 420 775561330 149 10064496 398 294862898 96 382779072 161 12757993 679 706507814 239 696546746 16 962527518 378 179453162 127 133753337 226 939581142 392 956959507 707 325067246 575 225279083 988 683704442 209 921224176 564 259566808 185 812205775 972 628874220 860 313584524 753 445247170 632 125526922 113 98154144 726 788450241 517 334000323 252 403128061 61 685500385 220 514223795 644 887979759 275 467055962 448 573233649 286 251444557 161 391669965 403 308935752 528 763353964 295 550301676 665 9267403 362 10897356 727 952892566 677 518329928 158 325820854 357 493776678 504 123299938 977 105836292 901 284133071 702 353851978 217 421599528 466 246205929 574 857208795 3 579904941 456 517128753 885 549088353 359 514996784 187 906523922 124 803073308 765 93707257 13 464838629 621 188189131 93 575003146 840 784061418 718 882390723 305 901956419 625 640199421 244 144932246 838 375654798 907 529456068 965 548829773 4 445855610 587 752487272 784 404580187 962 298922706 998 713643409 280 6450234 773 797483355 652 953358054 364 451710741 890 377611609 38 922606876 941 38863418 547 478597867 292 390440993 695 15132424 428 148085166 146 864484215 481 491567832 325 861159601 21 675859103 830 182283414 328 637706228 788 197505451 451 463204097 64 759211388 817 27211219 869 330171590 763 117020727 39 166255959 979 330368551 890 445993564 153 845720946 591 986292656 944 709073131 717 257884630 176 42213342 655 461746540 359 231552587 720 17700561 704 806174852 859 331406390 622 203888067 688 593900096 297 166945477 581 822663896 393 685354524 299 539832169 112 913430827 21 477659611 25 871744504 905 346568439 895 733756951 542 706526867 66 568193900 388 951637497 128 984675814 626 947340455 986 220446790 330 508737648 272 787096119 806 655471807 952 419202668 693 864409311 657 551853905 975 972857246 48 868375270 93 660916938 10 851478407 603 537244966 669 805088211 369 272843275 869 881148886 229 846188189 557 704764852 733 457326095 833 177960514 433 889418528 521 975116989 951 345654363 721 473258808 785 978476678 766 40527598 249 856951739 253 730025607 156 926837985 521 49667266 47 556846416 893 150119071 742 228228948 145 679468554 971 362900741 938 531450800 15 256906408 913 948587911 45 500575567 139 623028537 923 32841523 752 252779050 170 613814875 232 647542264 95 927704196 965 990363704 757 111864989 31 65150943 560 735883493 239 271744503 532 748050475 19 349418404 472 876196340 90 676099523 279 828343051 398 906970654 696 246394764 249 732032783 526 515113534 987 300462947 900 653625909 12 337200489 179 62360867 711 609903677 90 438665451 482 263561343 523 521916682 12 802669870 423 164412065 726 298094841 269 172979415 583 171057756 118 89433694 389 212374986 601 731114050 225 644848828 856 249278167 299 587733254 290 653227771 366 229718818 661 246127638 302 951846306 619 112727489 24 782490155 2 289543535 466 944836480 127 917264954 813 146860035 357 420349718 306 534993166 723 690056254 466 48654965 576 308580573 755 467897440 567 383034232 865 78044167 535 860914728 284 215323189 718 740165770 982 166105281 20 946974802 981 147312153 81 849341642 459 568678932 844 20133637 42 543453436 78 593827235 906 54383332 708 544619698 1 612665904 966 759910174 559 28573707 75 11716818 696 871965717 919 963855815 369 874553975 912 166963674 43 851920927 169 42959917 314 583413697 503 140429266 994 607272420 182 815017967 429 635627739 836 798970428 69 227571695 789 901457936 813 877594712 373 860974629 136 660239120 747 951610838 618 717263864 603 9811841 462 274372366 773 552608903 686 915657114 510 559971665 982 989959192 450 814632336 843 780204711 605 538778375 819 341551783 579 31936719 487 579762941 54 140657437 58 867810693 566 271711723 570 24124088 532 4232269 760 496956686 763 996021685 141 853631875 962 316060521 585 958039048 780 514689433 368 979806410 70 823378663 592 987897678 837 411533461 863 910462643 424 678606679 979 172505848 635 740640517 37 289280372 506 448345536 935 120852347 799 268908313 891 849566847 187 945610356 225 477098715 346 252819954 675 778974678 315 179229300 966 919828580 674 313920323 562 734521354 533 489763838 55 116003078 984 251964783 661 722177789 961 707653638 225 696088698 538 93386764 452 115406705 106 847863372 21 969854502 954 393846944 198 641868599 782 599569410 387 776285549 266 464923094 357 530113804 295 939451384 963 239735383 196 942332054 378 834336449 53 335698980 998 191295769 206 469617640 327 247129422 192 958584965 87 185460876 46 768285694 448 84434561 527 364682080 443 12072511 353 19140737 567 499688067 344 19554594 374 121907186 326 597430252 719 851134716 224 389721552 923 584433515 879 4902650 727 576652109 443 23589151 560 581533033 136 489979754 814 237230966 746 607540092 142 935003345 247 682587305 79 923678641 110 794145798 733 912861180 386 984702772 736 8655543 809 573339163 675 119961864 69 965136561 895 258169296 441 89475399 24 277667273 909 896733820 956 809381529 83 570937012 621 930549835 391 330422178 798 931050055 495 471957193 865 589850166 411 231499685 115 526867805 1 595871808 87 77649974 66 25204783 560 874572282 807 942522115 90 112169160 910 730906091 916 123427352 554 111544402 343 961986264 504 7013664 376 635450891 69 233036331 561 364783961 676 304571612 849 132302295 544 834633555 320 177064006 732 272932946 0 634253176 530 174798969 9 617458764 343 910498203 994 643592378 952 837086253 260 122451737 688 670150209 735 223622963 929 365982158 342 849316841 0 219770083 392 420619938 292 972045593 74 591549337 412 425617258 654 21098893 933 986805389 627 596839731 585 214122016 311 920821923 256 525963643 371 257009622 405 624150550 593 308818915 526 727266011 406 913942615 140 980637906 754 708431299 513 265797095 568 73225842 478 406527615 796 738668664 844 364919953 125 594014482 369 567827291 944 342016338 915 168881981 686 217765030 417 133741809 887 48849299 846 199630984 617 403574394 83 368268734 258 513066016 483 807048485 931 592574361 12 778380243 738 547394234 948 478076026 871 894991704 762 855681770 165 155075583 334 870183405 939 792032314 325 249903600 975 251504054 345 510647046 1 833810643 337 456004099 742 23784949 370 42169144 99 184389941 412 837580280 211 961875505 721 340974821 884 276473494 92 515574077 6 280617137 556 867113845 482 931453699 195 771913844 40 776146415 220 154243450 157 877838751 98 812401220 207 82171539 867 196893718 924 91063716 290 432929353 853 36599347 876 310628172 229 380796704 598 997087495 920 792012292 735 144890423 19 997764647 416 231900269 2 488062601 887 628485354 226 457350735 439 336093147 563 972553184 795 306455206 202 103161899 185 853582176 18 492606832 526 674296014 451 776339336 267 506694899 408 146642560 897 640124420 687 437461028 604 688753948 895 256407559 725 912996534 824 750121292 399 956597900 37 162684303 50 212317413 38 859224798 319 266606953 812 959415587 906 248835428 447 700059119 990 431949869 409 150968545 479 116528798 538 724367525 856 579904636 883 156979390 762 554913013 309 840923448 704 129262363 498 434091666 639 54937562 445 173074728 123 103762572 294 819677924 219 897205456 961 659132257 477 410090989 200 339508412 983 416990070 293 217234922 795 794372609 648 732680433 93 790709138 224 662044176 227 389028579 458 335818906 869 904406586 38 602870829 78 366419005 18 6800994 262 495824260 253 70967979 454 818893793 158 236862805 63 883397651 4 948389709 246 332702766 648 309060405 235 119716798 917 322476488 212 112233347 231 690714 40 743140349 230 164685117 3 613314136 603 567302187 979 312154920 504 807551041 942 542137268 760 933164798 316 92494590 716 76761162 329 570142112 515 760431079 459 498516841 952 107736582 390 21000230 301 953385097 100 101846818 342 580249144 731 630682440 983 925932838 406 309769503 837 34206802 726 987766918 94 279291854 542 962881906 4 463248675 26 80221658 402 978331536 893 617027652 681 828908740 121 43121805 136 507616540 8 770612747 805 954538241 767 909036543 700 726614062 693 328346641 680 245597953 15 528321192 210 970630838 539 721297679 634 71081871 772 457751204 343 316656387 909 609619433 485 835585146 52 806570882 144 588700678 750 452908387 607 880985612 109 556346403 874 480241477 134 429656435 200 29951013 316 371000418 923 884138114 997 725644804 747 719125499 467 63278841 199 211625599 260 147787656 107 562654771 705 84472853 362 879860731 484 771047087 206 784571469 791 146571956 896 970586996 920 157251195 376 842376409 202 753614994 824 928846047 66 947250683 354 345754124 131 140522102 247 663298723 447 474670902 343 408898390 672 420983251 545 355628957 223 673611733 475 25687266 716 783976696 119 86115149 798 325320077 883 258773448 684 362322346 589 336833889 173 522553581 946 754930313 954 598580547 516 346566038 849 265284066 815 992547761 50 628870888 154 686966683 90 557072887 316 661409033 297 563835399 717 650111738 550 93268789 476 435314976 741 798446876 306 826730985 592 137343474 897 201452275 269 751925226 44 216570477 702 467822838 924 107788622 961 281816682 420 22451326 685 630017057 552 82075009 453 726180951 811 576175756 444 133175508 356 685548396 390 727848268 560 89974399 797 538987368 60 40516669 597 213534018 933 195229472 936 976225281 887 613853894 812 476929267 220 304483465 826 303862656 136 656071978 521 513363784 476 902803472 276 530669307 544 331700389 42 205172965 412 266715250 402 341335619 40 424316068 281 55350524 454 74807204 821 563886499 556 698596300 821 285046819 765 20543095 358 602228487 1000 934249489 473 305080533 766 272670544 737 751577338 210 118750783 659 937422542 283 164689724 111 701039820 22 524463337 747 933981463 653 501332552 224 74134039 922 274433586 241 352609587 775 598900201 86 256333714 19 846768737 817 617144257 897 674963308 608 48816884 381 397272132 300 259135930 653 786118274 888 43093378 631 86013025 622 734093415 872 413965847 951 560281014 355 167831342 126 166979955 514 729935918 101 968787335 574 447180527 210 340238245 405 296196516 944 911526473 480 601220399 331 752258365 709 547369954 948 551337942 275 986444605 195 435167919 258 593655450 120 434255051 841 945062002 64 310478961 251 189025342 215 86059581 175 108505201 360 33052995 493 6933906 597 851134433 878 744913200 593 965806619 205 678070376 698 828862479 735 521187903 185 987244283 330 83974825 675 771338548 342 923130138 755 898604547 461 232937083 168 539041812 720 472047351 813 337989283 306 680544753 189 967626599 529 223489734 951 457413409 804 630722710 94 818750402 889 925540269 912 346987188 629 208500502 985 637020766 176 321513956 342 260574392 217 16511764 619 324826331 156 476718011 512 172605369 690 16671991 27 255940829 864 873619170 755 4042248 265 190403026 523 164204631 262 719146380 609 537757885 205 62399596 452 323985059 493 503143871 472 192707575 501 522766009 343 263205807 584 857000087 151 761886449 474 511656956 630 573018514 153 226793674 65 688242483 132 208359262 308 285449561 523 777531255 283 986224192 900 990982888 995 561825907 810 32009032 253 68235345 668 43926329 86 745753622 714 369549724 362 738677871 151 724742024 423 301261194 251 81964926 777 778682824 439 357986964 302 499385083 127 10944300 911 579846435 416 260354300 32 234531615 105 330433760 268 240288812 865 312463749 89 391576990 594 937859527 163 684010354 488 669150127 117 322891547 405 620364045 666 84338049 563 418019525 148 857975512 978 36387511 327 258018818 614 255824948 141 343813994 50 709326399 34 752144061 10 318343879 969 897133307 481 652085914 716 977697731 482 337220789 839 923741857 450 408742653 870 999960565 437 435844360 649 927926438 378 68778754 983 760520173 692 370307878 608 96324135 944 567010027 995 607851840 760 514691847 278 244904533 548 950943854 174 882483925 643 885673178 783 392373651 126 821500372 602 797971892 859 865978956 754 970215474 989 684686255 302 121188438 726 667891327 108 991473734 66 252301171 52 343807786 701 962730221 118 831945955 854 619301405 153 851167960 431 832271919 733 656221685 953 475526121 339 731092093 624 901209041 990 887120160 761 376726195 267 224112982 318 701294914 922 698773553 96 234360185 258 646974851 579 359454420 847 290059330 76 207474164 247 679699238 333 679938917 456 273357625 520 71838069 613 999107165 714 979429319 392 310279346 474 531806722 419 331879958 612 546123214 159 336542326 987 151783258 846 208192163 828 958197698 431 370274348 183 696790564 920 820166803 596 133821274 247 576923146 668 420280715 354 855127897 750 256708302 523 825556934 98 158141637 655 463120894 523 417403148 926 461360705 753 651358590 406 720025504 4 415371213 503 332125595 404 750954478 486 542625866 159 735911608 410 742327421 197 462291093 696 770632397 822 328945526 792 566475558 763 432141656 679 960629150 722 965403643 584 65501127 908 156599704 188 218131521 930 237099961 697 483193509 166 884048178 2 105879053 202 877086740 886 9587067 409 410673748 879 10901675 918 716398074 95 756536121 393 54015788 324 165202618 279 516235911 353 643281796 194 619645396 451 486440884 164 452745796 66 203929854 951 568653960 582 593595609 982 616955290 898 331023318 916 788552401 936 54676543 136 762587935 498 842583147 969 476684392 33 433241264 611 979177974 159 601141181 661 650302892 270 305318244 813 612580135 651 159701520 784 665021709 92 226584414 494 609432575 606 494228190 337 223410796 700 280097838 301 912026998 667 148525852 275 979703491 178 514271734 80 108044108 621 51876738 58 909262944 324 415023962 472 526907286 298 179129108 447 638372028 975 328659419 782 233174166 808 699994116 905 6392120 279 80797347 519 243733213 780 469060699 66 210330611 216 911439956 435 477089389 962 975144076 723 545252092 409 373252754 545 407118430 550 382609071 209 624378271 5 410611528 412 199236590 156 988021536 91 897510876 604 386395607 425 387836130 57 468726924 718 839992336 753 718003050 39 754004624 257 174903773 450 762864744 300 154190951 318 468525507 774 783641787 964 296444194 613 349696930 17 675070750 541 119150112 662 752569732 744 270537606 500 612201336 492 69399201 337 101013275 214 37143923 664 684707035 216 459619841 358 537739739 286 40981816 935 624495656 635 564603642 748 563702988 770 977945692 339 637180615 678 634737990 602 929033247 499 210318796 528 745779447 802 638817334 161 636904083 790 607096962 19 361219160 84 246199042 576 493656774 293 990532560 416 306363222 330 337275166 650 494306071 940 746304770 889 935453935 658 144656559 462 926323362 538 543510094 102 640864807 870 996262411 436 140725166 95 744183115 978 849214201 99 993256314 818 924278667 85 52271531 62 281961411 167 219030763 429 699988607 496 398995845 901 541154329 116 687686670 937 352273936 161 200559565 415 116477419 283 598217166 353 641052324 180 804452056 278 45242619 429 872390859 795 137571826 41 373668236 659 591407493 311 824888034 462 241467600 160 350062544 354 385251536 258 907141510 774 496372444 412 259230797 736 803465087 652 151383196 507 931451271 989 470714590 613 729182676 268 699401146 319 19041497 671 69921032 554 78827310 33 798339992 895 212508142 811 26235689 174 818079517 899 485280729 958 905274370 706 707391133 916 837963542 545 106183817 70 984699281 922 203291944 81 350819416 921 485790619 519 856365373 724 551224590 931 333896524 782 779605251 25 701700083 20 110786403 97 987615433 767 460108299 535 207038902 597 819775439 858 408840357 118 149006242 414 10275494 855 263370956 162 98460517 319 645610745 176 95337852 580 899195310 834 275138313 80 731356386 498 667616191 856 273306334 702 659499239 687 414255860 503 217350461 629 534950718 701 725305558 677 170994845 905 76216303 341 347353140 150 505446865 743 539324323 580 473039472 945 745066034 933 471950206 11 842638691 830 394944425 712 883886928 678 910843189 734 843669904 788 803186686 916 796586880 747 415451297 346 238063737 974 524837489 954 693995276 471 697409833 517 292211128 426 467012954 959 850512601 482 868054608 593 296808717 814 228259461 976 944695103 728 819044913 798 450474674 139 14749929 88 561435076 971 57961600 803 767063347 418 70499129 479 369100922 995 587287579 116 250488444 956 601605392 286 647703123 115 489908482 921 93340935 274 566669896 733 362874672 134 448256862 439 394546272 66 432925017 92 299706585 925 736613548 776 754190181 298 954614667 874 178065429 462 106642793 316 597948464 981 916182635 743 452069647 664 114577065 376 135966823 140 49222804 677 912734074 333 190858056 300 811607041 890 465440404 541 576574385 643 9933485 743 267764931 866 243841687 554 960375782 2 172065828 743 149215542 858 6897834 767 81323078 410 700599013 908 855151960 41 186108799 544 670314543 25 431730724 510 179001287 886 67270532 787 916447905 814 430395382 16 831725785 976 240629338 738 62853447 995 851548305 250 87290841 458 805746557 342 754963819 673 738209321 925 984122225 485 383681940 683 359757657 36 335163645 656 428904089 463 2065934 844 817188942 107 90573452 826 569894585 397 241883306 708 501415591 464 655555590 475 938395133 794 820040470 213 470952562 710 296560873 413 900964488 365 442102769 803 662944885 727 523531787 246 133386306 706 767902793 454 249684250 262 666547016 87 913340905 745 832669082 501 217311308 329 247882934 41 738149901 843 167573821 750 165856609 750 878302039 385 748082043 458 651383755 751 697699583 791 937997921 140 145738878 180 579832679 911 976031556 916 503314559 711 274128157 672 980359669 970 459468144 361 365319383 667 757577666 582 534656235 843 549637559 319 826244602 946 7432411 511 241893475 258 457760873 586 361444907 102 974833922 130 381473036 406 699433313 871 913545695 437 187806819 229 519075745 961 944343942 299 123553421 109 703134252 611 965036034 655 878470057 168 910260792 290 472852260 788 928790234 332 894804034 579 161418421 171 531761040 453 376141404 52 435115606 430 474510229 746 195837758 867 178919850 958 695641650 303 619767092 271 833415437 400 615325203 535 31625884 76 541729307 898 578006611 694 147533118 591 252597430 834 499789174 806 87208211 402 237303855 627 12696517 249 135086044 25 965353775 576 546736906 237 664203476 182 350775900 414 628643758 687 92408527 423 817432644 812 544664266 2 827786261 346 172604020 902 632212653 50 408339443 131 337184576 261 4446226 625 24006439 100 423628532 2 505798286 33 726921916 282 610294242 471 492619168 453 493559801 646 544912470 351 962982398 634 811904011 962 622151007 276 236465553 388 447334604 249 926455851 949 616638029 734 419150872 991 279504339 973 878539262 984 741289566 418 186816454 313 684113970 312 953947025 848 494742391 931 988507954 960 96825230 150 123794539 87 817491579 162 262260428 781 313513360 783 658076625 788 502954705 211 624121294 165 418322622 552 86659340 929 505243729 801 778969930 861 273888886 479 948283191 654 813697025 70 883282688 272 272413544 782 432516453 781 635832585 914 499431596 21 987825078 402 487146436 254 343904001 201 798826946 855 115810153 770 846533109 667 326050324 392 118533314 134 340246820 855 172943976 746 668283461 782 904311741 862 524026467 297 985139675 265 906186366 615 531093354 133 963547428 347 729069622 730 547211601 400 222056035 523 761812846 815 889445969 124 213024575 201 748658327 598 129368101 369 899354364 69 288770887 637 735489215 512 395122511 377 903203455 593 107445536 559 512596142 453 182197313 769 902296126 945 352065298 598 953196858 356 813258773 555 266351304 253 534120253 140 311946749 109 89760563 82 741672751 217 743182106 155 961067655 366 309429892 525 85863478 272 627842309 930 22288979 636 250713518 344 42612310 49 949238003 977 863853827 452 44513477 305 838201156 313 623204557 694 678275210 327 998124741 628 585164930 59 114131072 873 735894928 812 965552180 959 681701021 994 647452060 961 402519546 507 897784976 566 981006359 612 814512217 204 185855266 691 144125840 95 975887390 997 716249682 390 401562531 704 99087887 945 160465598 203 949780614 535 661682883 237 27969766 315 988076779 365 360168176 805 708984734 111 24756089 498 122335235 437 343906168 561 659993744 863 253844328 273 852251108 722 840391793 47 313777489 325 232990822 403 461458961 250 921978328 653 58272501 117 189439085 924 164766659 526 531288826 465 153869799 978 889956121 210 301403728 862 848017658 110 707524619 157 926368848 37 720340817 955 128990258 286 325413981 215 451091669 433 210786789 578 293965730 301 328475430 279 962066844 706 471388121 859 540627721 180 870829349 255 514237694 455 497009494 746 47056652 759 679362876 117 633828985 44 247504823 527 507116041 918 445567077 66 949865073 398 17267798 695 816083382 981 42107032 343 429770533 682 14118040 921 872704545 374 329439712 348 656745273 541 515486554 193 579487615 42 523812300 268 825151669 225 778210730 316 267089935 984 373392688 905 249171317 126 374471076 143 551359822 508 815528331 509 426873646 32 467139566 63 562445274 569 879448515 304 76915055 50 773773520 685 408074709 994 111871929 562 5415772 587 590040962 470 512145775 98 730458797 802 129586067 377 780104682 250 482406538 511 190755489 850 832910712 776 666935093 740 425325766 249 450411934 468 776841240 709 412511696 89 343933581 149 67712809 769 406754961 488 946493673 382 353252870 29 426878415 104 32857994 119 419531066 946 995044595 10 99607218 952 97149998 588 447402705 728 443326693 56 907901691 412 528522314 812 342723557 129 49183989 997 196694102 408 166811774 927 94056280 705 435510825 992 307047969 104 834263217 194 968478507 464 971460543 893 360804477 131 466248936 496 90943787 73 593867043 605 663104293 834 72068854 643 504834969 564 897285328 489 730077624 575 838615815 24 617593190 273 693875403 298 551886470 636 444969090 908 159523672 487 332727023 115 612925719 639 979178621 324 858558791 645 857866966 438 485622503 93 217255402 676 948570134 301 843774414 372 92934208 179 121887414 864 443060301 655 274353076 84 262289571 590 274302987 219 707324630 578 648346345 535 277547654 586 434170882 779 432077873 12 5582285 534 767739019 846 95503945 710 955051155 87 582789262 308 677150604 774 890237240 867 892679867 16 836289033 305 486412586 307 374249920 732 981912437 308 638501521 311 613605828 708 847785287 770 151636690 769 481883247 138 577437162 2 261163859 571 48557270 627 131097207 383 193172303 840 632081155 710 931184268 791 393173173 718 207129010 21 662661058 661 48820543 238 604806472 681 530910414 260 485929936 224 98917320 29 878593885 45 825890909 833 473365188 723 31776029 582 942179348 268 287341651 826 45208668 295 840065434 5 950084349 353 41074266 620 20215515 493 599059954 387 379814107 559 290357354 623 132801389 858 674093553 419 810484977 532 146041458 692 29297270 529 760071205 672 261397769 254 768817481 982 548404450 965 532255285 306 976620699 140 782620406 412 152266182 87 756184239 919 179488491 382 61389251 780 247131011 981 746941070 69 986004993 992 799239868 52 399913711 55 200834663 101 374278674 792 833589660 125 87565261 77 34446887 682 304540972 128 953021412 187 915477070 365 402960511 580 696855223 886 457742863 948 727792500 536 382377764 317 312466630 850 680686923 697 607808453 833 171755410 643 671888086 512 322074202 694 695770413 800 102314937 952 140459267 988 496371656 327 634175293 1 398657102 768 735604317 486 975894889 475 811693867 133 919571882 953 357392911 882 193071999 658 748571275 198 409581244 697 688169355 539 526668648 903 466884750 907 270588338 160 729051205 508 324167897 914 760363263 829 437608151 632 646465363 349 52850638 342 891184150 508 210766887 414 896879509 763 61934949 8 85328959 627 839639507 263 799629291 246 841537154 597 350421225 822 24685183 468 932733989 146 781941837 22 647348447 492 290312305 212 184683642 14 355647000 460 180258706 722 332886987 781 111132395 302 128633179 180 557329724 83 937922173 880 708150733 499 69547376 479 958595186 917 959589355 233 959736704 751 807375114 821 498985170 968 842570941 162 904698678 377 890137596 378 23496669 599 200822909 767 667109468 661 187189688 653 675004368 858 25413710 504 583490712 202 964927601 917 187052123 964 774424968 176 489883592 993 822225204 510 485956474 606 28129081 94 636606417 924 627897628 98 854855243 378 605375552 321 650550197 974 321133746 338 957563825 160 584911178 546 828612346 574 423979058 583 710749311 41 133756573 357 848577856 598 411830894 240 434328276 150 289062303 802 519094222 154 316090378 420 120004050 39 467119982 293 285998904 329 750800420 480 412608692 914 50854931 830 484424585 238 878602988 682 302442415 236 746913134 988 251354652 915 263443992 995 486537787 868 269068800 33 312918625 713 958550641 157 597554134 144 555830329 205 551758514 104 653329880 738 883803430 197 55081665 868 660084291 518 745249647 943 199789133 260 108979458 687 278748286 197 403642845 309 870652931 903 816713341 868 554494276 723 246007065 300 564237484 196 47518803 521 651650294 964 97601760 172 609364620 544 835012969 65 137993863 386 965914796 380 421787092 584 308800694 619 185828626 830 634358107 654 982136981 682 691629550 808 882006700 361 526758517 517 27317550 613 365740383 643 402232926 512 425548515 932 595443696 535 338160883 318 26738438 239 546491236 511 130581846 688 171857720 973 432594008 156 902627927 998 317274954 823 462047844 402 641215131 757 115823609 60 926272958 503 335471043 525 352292457 43 72050007 69 40483873 417 900263520 861 331559551 220 281147263 407 235320555 521 659179797 965 590892230 217 261934095 803 609750218 932 665759757 746 383695390 884 539414891 449 24019208 987 794077555 346 10853282 710 246369001 778 340663051 398 549009321 827 117284818 487 265551374 166 484546813 503 873524341 613 155044405 939 113996088 968 438821530 142 480451484 485 937366382 773 565142064 410 940399370 452 792928887 207 706007745 189 328912043 381 507610096 868 341613650 187 785873310 584 163540451 960 157304890 161 879648985 638 255473457 907 61039074 260 746970661 720 359836001 133 98291679 200 276628387 935 574225661 689 317700989 920 230960601 281 729498741 747 329616269 217 353694256 256 735177687 228 938268201 277 422234041 238 288996144 341 892219407 950 351892450 354 262557585 628 353821222 191 461946654 310 782589763 402 437691756 15 645970353 353 363214189 890 624565751 486 344492573 460 221276100 190 594758439 855 362151667 823 3224380 57 305924762 777 628405761 324 236418143 88 93707651 642 880130651 71 818200010 440 174939841 134 504036745 325 118059887 337 712226474 190 727438442 947 606809667 834 835878213 968 362711068 836 810084191 841 817809059 304 639645284 374 41562861 530 761648065 171 265092698 952 462928592 915 484090975 291 927229305 763 98743594 555 806463557 317 10707546 180 733432457 266 407917579 103 207669216 544 894901010 249 638077544 549 671289951 387 330976323 216 142542418 592 372691743 583 609042068 282 441397656 792 469325778 456 905485699 501 211285434 357 729283329 376 454587297 701 193305056 961 871186169 226 466503502 325 946148020 897 815208675 293 158165111 413 141501411 970 874803255 406 510249936 269 155799610 80 113313593 699 393469781 462 668657474 229 821464437 749 74551037 28 839719351 168 74730949 837 765805326 187 868435010 944 456790665 846 404504278 869 284507122 891 301564766 396 629738518 594 911843076 458 47917774 895 437970144 750 445944831 554 769970324 369 670981089 697 490119166 984 771878885 97 883373909 841 798478089 884 565045770 499 549312695 761 733459260 329 793758742 366 338189040 250 741181602 784 358583379 740 884154411 790 943499800 554 333274228 725 746826559 8 46762800 171 534271911 816 797325742 189 272086872 661 269612552 744 11299433 720 32088317 602 210020582 336 743604921 18 841436453 779 7416417 606 874900088 229 307641598 219 677783763 949 353096797 948 352819186 248 407197041 343 709069300 203 541537682 915 818593180 630 184945800 473 33039890 585 850511024 681 377709620 651 191966209 492 704934869 278 922749753 648 184585609 433 940503114 432 797047712 685 882470592 825 202439605 139 455683954 705 656356231 733 494309068 615 787417439 118 382037898 76 338037149 451 691860314 180 80652190 867 230836069 202 130969993 929 780513808 557 357108916 858 936310698 266 379628697 737 72768428 969 419463685 757 918403115 922 914641554 516 877301708 764 63466061 791 132144191 133 757364966 458 255247043 396 267712972 659 869958957 86 277259661 278 507815599 308 820491667 455 840139529 975 218286574 954 70985621 943 567468606 196 927464961 543 685443441 681 43166276 870 642921706 864 559180286 540 853171328 563 467565266 550 515588291 300 967766328 610 599755844 840 931620537 191 368385056 866 506968466 163 997298021 391 791323398 697 904961666 23 531099067 635 633185366 978 402979245 770 93897412 504 159944828 565 485338816 904 161920028 576 226576918 573 543545781 531 8156906 784 525413034 12 707155052 3 802081977 825 632483370 436 948094031 134 337241188 994 672320986 420 354248519 478 271650299 862 59459367 872 848749125 990 5522918 745 592498284 988 727822725 453 702105271 320 338797169 77 547876306 2 668082098 776 918204811 938 141643031 528 881703947 226 544582141 940 309483967 924 333691265 594 891129235 810 165422934 966 105382039 741 402968890 675 555085750 445 501866982 244 428550178 548 361257359 401 171658428 504 223780881 90 558435045 488 154022143 213 753313469 769 506869520 810 157083934 830 720280584 431 601487869 536 342573193 743 645920640 316 298899455 815 498411627 210 299466806 1000 808304176 298 366559062 867 383732661 906 134709990 140 390175127 644 573149460 206 392579443 739 550892537 544 293749496 976 12013626 377 393459013 877 610202999 690 886161370 857 161878257 97 653211681 822 921821642 987 91608754 764 229287663 940 744049428 435 246887275 523 664581040 952 184670339 226 865694249 694 691793318 394 218556557 43 732516440 562 184550196 56 681693753 913 655276714 149 972048170 337 581943261 275 196373879 57 795259707 280 424989199 355 20343434 327 714785470 866 998092686 172 444114951 650 824868682 648 498047257 728 306513290 745 547224267 768 922004282 981 820098167 774 696940010 19 869273501 225 176905868 213 438080482 679 980127147 79 297804194 196 801883406 336 271351784 738 78675982 361 774235420 341 785038059 483 818961429 353 817193246 805 152216413 670 306407207 742 906532447 910 743103230 499 605099245 227 685075622 481 22283958 690 758742982 395 40493882 854 324818250 823 56036967 977 365749294 470 179103770 4 846368201 885 859970458 740 334106972 462 606703103 188 204274818 478 638355728 629 892518247 297 638396974 802 124675606 173 686820808 522 182298377 817 146619461 564 530335750 563 662687641 943 921200834 942 440737252 240 395776366 391 833381791 858 353480143 176 539296578 915 563809589 103 694231906 182 669032143 338 371751556 28 880902967 95 979851705 589 930298670 840 391757156 115 160208571 28 101494148 522 441700310 649 39606372 909 144764437 351 617685609 485 6057611 932 17521892 29 716251686 523 619293530 648 892536991 427 926170928 442 119270442 454 899371899 679 333838945 599 82722037 847 751549814 261 698280531 88 227937756 413 155432374 92 641436431 829 633976432 779 890288389 834 553857405 84 277998191 404 911887336 520 617266964 967 710189001 379 396834314 905 423205101 618 13288535 755 954611849 790 76166288 579 733550246 852 774184334 753 853246579 829 435933794 539 616453542 973 787037712 938 790533763 429 975880273 550 240663038 16 848118424 565 803977574 127 485174799 806 174232460 465 612982018 91 11763339 179 163140234 257 858558025 142 607351844 109 376096513 594 22535370 451 355291782 240 936038342 712 756463055 431 354622358 418 597951087 721 259466759 186 901046975 422 765047631 889 746491300 342 444940671 172 931587585 582 525682501 643 989496694 633 302282326 817 728673457 61 271528378 869 293876165 47 661320362 320 774124885 4 679215766 618 173669541 867 495280424 561 575006284 692 829727419 232 139695370 21 723385961 663 519671706 506 357470492 995 210306616 551 885657722 232 964558469 271 63492471 983 62660665 497 890199291 962 390200078 9 169459168 925 286244146 4 584475397 291 54743203 255 482697646 697 624405634 872 755619384 825 979833628 66 399721616 777 235679977 883 965918699 779 563303026 287 999528815 398 981341820 166 616022033 249 181529438 587 312254310 125 675717854 669 437962329 75 479648179 632 431685608 803 569728751 369 114100765 289 472743120 215 774979524 913 333137599 825 797031478 935 365118239 766 171060792 409 959509528 321 796224814 435 862487363 147 974155972 425 50026688 135 105693342 691 844145013 206 299344867 563 444958366 831 217992953 616 636527844 973 690810497 431 879507717 936 349539958 968 384739690 156 551852045 227 205178844 233 878683374 200 685827451 453 936341362 917 64361165 852 38488434 733 229298823 719 993498667 455 760958730 201 530220509 519 397600710 248 419201420 969 492983131 589 716267916 782 242512785 133 10809173 476 401534643 671 247592666 42 411179262 223 849156655 890 382569825 847 17268726 295 337037733 569 552381904 379 989428713 492 931490269 524 668185791 567 361344171 525 745183594 128 591145351 130 112618043 428 378771423 591 944549102 212 466518876 54 615931082 709 513024020 633 953727283 845 78410891 396 451822965 224 430599608 49 801179097 657 22676673 285 915874936 578 510670083 986 233402154 599 533289311 15 601492329 561 284575360 874 586410944 970 707628673 400 351596768 507 336743646 375 994981752 375 724391167 185 39940069 23 651674359 160 29934297 800 849784767 483 148608401 16 506988663 126 540569659 538 126723944 434 247515290 115 501500665 790 735801491 523 636111818 818 138289805 155 9235907 808 658802737 847 519558678 366 865758776 711 777821995 36 527747047 898 673326983 132 114785428 700 684189690 642 450255413 815 727279767 367 544087197 798 898985210 166 643971279 482 865219461 959 689592974 349 263517421 500 324830583 894 812094845 227 302635175 56 360907345 414 78888148 361 139324741 929 504252550 911 778862734 880 521310196 713 633149891 922 999881045 591 32513160 739 702136691 369 884443996 126 788517339 670 239564749 985 145637446 306 417420856 112 71908540 416 864096824 822 945480737 266 998361843 345 37593266 1000 25395416 421 164726837 703 912376674 112 97287743 386 93765536 376 257023308 203 983556213 925 465162032 737 934847940 653 489762872 164 298257142 20 453819130 9 11468761 376 755816021 86 558035559 999 362326019 86 482739 756 773594466 146 660165969 389 550820663 979 203665629 358 715342968 355 196076363 215 147311382 637 47892764 450 960022857 507 652741851 281 930574177 663 505426071 172 499720925 73 405008523 87 781418931 408 889568229 418 725149738 591 138655884 928 728589817 464 603049915 16 41008021 210 522258847 716 96185155 661 735182901 640 512072190 685 796926423 372 36605398 50 6376052 27 41052512 316 654813778 825 20569379 424 583866696 392 534638317 876 621662789 333 992109490 894 211159006 738 239341636 144 374236392 499 469273553 563 840975777 389 476898328 755 935483596 899 440662950 505 893264820 794 255242737 977 381168460 275 769346488 147 659445300 262 949636650 761 235655541 544 653073827 173 61554793 372 350965929 662 919090861 679 709607831 370 352610198 537 898256176 75 612217652 360 605271729 564 21193494 253 910840125 200 467034227 980 394847610 116 45836223 214 34115681 987 416229498 907 716043869 425 795747129 356 129386415 790 917332839 870 544929192 488 290826217 737 227869644 149 330527943 397 141961397 732 222676285 819 525983130 236 123725521 378 629056730 416 839651938 567 926779039 379 143624716 475 415003925 983 400358216 856 702412107 64 143249249 138 838934003 78 538189159 588 281349469 675 696171149 883 126379397 117 27374542 536 577253116 12 777756669 287 108130690 80 82867995 725 182546422 269 936317361 302 211761792 716 808119372 738 519089016 287 868136171 154 321532966 433 469665667 686 120854357 764 771019610 986 322978074 312 190344728 437 886698262 88 229638632 515 747329138 887 540347763 40 919334424 311 875658659 226 1681788 519 825775875 49 248090267 677 192709453 797 497523998 492 612358780 695 325510577 697 503357448 441 38015036 980 250852463 66 867385493 834 398256375 703 65016496 270 357511185 331 284589164 644 784209583 122 657980442 194 580506183 13 131311960 622 268968093 139 343131989 918 962380357 677 381221756 72 494830305 654 891065986 976 212250031 352 873898876 64 540647049 834 961549019 56 990061402 742 227275137 674 393033309 381 96661308 551 522487700 97 364708652 499 375856015 605 822402906 127 418328908 348 701869097 133 203675701 431 1731461 948 488784293 267 395646098 976 309316121 911 549138303 62 71709300 82 374994605 846 493754866 838 735769765 995 686091713 864 33689698 753 869449444 854 597881966 940 98068093 523 835701126 754 638400603 850 240867539 470 445099999 838 599115095 833 402555073 481 745274463 239 585964853 476 667210155 675 649465868 329 589950653 543 432547348 139 378193161 840 823508041 401 624866614 981 366845177 451 130450432 758 99339273 726 116804701 85 935625877 696 499948151 496 765784966 98 761614676 973 348527874 476 126342844 672 490816784 572 669047129 276 84601321 751 496421639 461 254498250 128 396643617 634 640316976 153 324943008 252 870534095 0 702213764 73 107341170 726 561511231 292 731710876 676 325679049 37 19686362 759 442659712 49 46517435 152 838079685 745 330329636 325 497193543 225 874593862 342 239623783 687 613134768 765 618965520 298 839816229 587 832249208 376 100473026 908 97257875 882 701379044 378 609666877 748 50727109 474 599722473 345 808694067 799 551312937 465 900853602 365 568622915 342 870889789 9 83264635 975 750564603 620 2909250 559 134409812 500 701881327 944 892120190 98 966383575 582 506454982 320 643152923 322 564268289 218 762431404 910 841716206 218 650431814 109 687401915 406 125833758 898 809124227 468 274793966 239 255759688 203 282328439 437 598724967 760 468215112 424 833601622 483 736796624 145 661124728 143 258962381 133 513319923 529 373476952 404 829191142 326 273090811 415 394543922 268 859401225 717 145730918 403 372411224 730 262166475 58 987737979 520 13738339 108 384696914 481 719003100 90 737168395 758 737136846 640 702972086 100 11227465 141 957973441 825 378019925 206 638891843 788 241637132 334 970441875 715 155579159 76 257304034 417 617437626 581 368007849 641 145656287 444 478553168 974 202425579 324 475609412 137 383027142 109 962154570 997 214478849 954 313535566 524 696850081 757 277817515 575 993803647 342 769114697 37 619325223 837 497206100 843 525793776 416 252871893 196 634320305 294 312383919 438 960921194 989 744119925 61 672499759 782 973232514 52 161061805 87 413886337 728 426373657 871 966986994 938 42191512 476 112517468 473 301970754 85 512436196 974 948586958 811 482951523 327 752945470 248 878393012 895 120456430 416 659712649 324 761422493 677 891411113 114 3462342 470 316774572 269 56256136 442 545194490 481 250938325 580 271151381 426 387800507 396 174906734 610 424434367 558 266291518 168 86486538 96 17364948 31 44158518 459 905493245 448 319131854 697 100599835 488 405486135 998 224309960 646 178333625 38 187801024 465 440769522 416 85742897 966 731464845 307 168081508 275 714856008 102 73159415 510 606849281 525 203568774 5 134373222 606 938228188 435 745861980 232 233083690 542 533577170 209 137020338 57 473636208 604 646366151 225 961339612 213 24033006 375 833332162 160 185448363 240 623977931 397 439941675 534 278766888 799 208697132 685 413096408 935 866965581 866 254168620 177 606140066 405 551911067 62 312161014 134 521584477 615 327593738 13 386484175 455 901688636 135 363388604 806 949386873 505 738196131 55 130058699 977 438539147 145 169058200 385 167390316 928 41685225 862 451374322 910 298213507 901 286906482 397 789270202 863 457071990 460 349408868 92 989935270 138 695654855 761 713877357 837 617347191 268 621268485 828 355102981 656 391975257 445 436762550 386 906621586 573 118283273 950 611886926 564 923961045 919 672928730 133 920476120 268 402525015 574 527136536 586 714888857 726 989260301 591 18855098 682 18215036 620 351317614 514 387991256 79 184605540 438 625275623 454 316479311 541 28461564 934 851958665 135 846711238 383 962134313 693 181324889 794 975027508 464 883170658 97 511854256 404 769346580 870 454904046 761 488303538 783 329950455 961 183872421 863 479254383 711 41196684 926 696214967 126 728022028 295 613109756 812 978861778 480 392943125 507 281530026 615 847171917 343 498175546 565 700119691 722 13871291 78 903323964 496 750522213 947 308181204 241 725237319 731 177431550 918 202179339 690 953456980 431 708682613 971 660685562 115 546310319 159 751593598 479 598946885 541 951312093 835 527753622 45 335656774 931 564910663 585 726357740 257 488042227 856 450492853 890 26989419 601 740842272 555 611545808 194 293192730 451 972835871 850 318067632 896 980309671 727 833540272 41 174805329 844 594189320 140 730626660 950 684715890 183 207766976 113 144485539 458 971755581 760 366871537 388 475034738 350 236008868 901 789141687 886 670264119 589 801098260 82 935932784 653 828050317 252 736366625 649 635225482 476 77917447 163 509882728 550 73794994 863 138990498 722 278025202 320 886237225 25 549187225 394 807629264 828 307422233 519 91007406 250 271153557 382 502369793 520 246377917 105 471492371 416 983613129 26 772961457 577 888281531 638 840134876 984 159041414 599 360784568 682 998741343 97 884337535 385 797271746 399 679291034 84 5539563 70 102948116 951 915109401 335 167271251 577 843032347 77 696310621 159 283490828 239 550208037 655 949091443 269 787354030 171 785637033 819 126538493 941 367782156 517 440426549 969 295435356 340 903738336 782 747308067 209 371898917 602 743340298 521 230205630 469 661668478 886 176942346 118 133831872 921 784457685 385 711329247 58 67204937 966 856741134 95 264555460 362 20018566 173 482310640 91 13995579 913 925288716 788 195919462 453 478443248 550 421518195 278 503518518 575 736757546 300 408333828 786 882951817 431 522543086 794 50276176 255 823024271 669 520234489 255 474858442 38 720933755 444 878571172 26 353453271 407 196815381 931 592454449 696 325227312 558 824633153 761 896587401 243 978648742 504 59508099 242 896992621 374 858462937 98 321738867 350 603423873 761 126926226 424 787578478 400 943380375 175 856876908 628 605059871 735 10768071 353 863804166 244 222938042 285 539265770 286 695814806 587 398383450 237 280122703 877 810490362 202 315804522 328 333498416 321 502255687 1 692510728 430 284882740 783 433666514 995 139971584 928 286967398 315 301784515 108 79851677 296 797125900 104 102393316 604 77337482 967 307447057 597 445663568 187 14102178 155 894204289 105 248707803 355 676722173 204 588733342 398 249700537 381 727239975 647 581525635 178 49034359 552 681435941 969 415987785 100 851969342 934 149593948 294 592095818 870 669669798 773 822610849 546 959317534 144 391510084 193 873288586 98 643977541 793 283173615 400 983560087 276 813769877 780 457144517 560 137650604 513 669072565 761 448103156 398 125872957 90 466836591 302 417794542 593 116636861 306 502473203 636 653330047 506 473736344 85 179885968 263 890504296 795 91853884 714 750734331 644 190004569 152 761409297 259 664305816 6 996422597 89 789947434 276 713078923 131 27674824 397 44084455 909 227812746 477 523140543 286 441420331 985 221482218 700 565421957 607 224724337 399 687632468 597 451555475 756 922173132 545 722303446 978 159830590 610 205199689 258 925684244 504 481424991 319 565833264 49 784412259 983 275910859 245 544059224 356 163134823 38 729382548 319 631114032 371 963646941 187 217507664 847 268063298 803 806929583 453 365878370 32 715016807 76 485689215 597 932979530 429 97524225 347 291725186 391 762391560 967 805444106 973 463111144 333 230397525 135 22981868 805 668435152 278 776968183 267 490853314 376 296544928 832 766299186 600 80147102 759 513250388 755 918667570 147 806373311 298 444163040 105 68638868 98 568941485 146 969953179 808 966691711 243 807797649 118 57993244 933 533971210 456 823382427 621 715217418 7 94879571 225 282541190 539 915162897 148 953842374 220 410083336 792 817943838 402 345862067 676 53312797 545 279297922 186 754630011 169 854000896 574 400286165 870 423941189 428 942600742 58 821406182 122 68777924 213 496487006 752 85546727 405 465899357 913 94494811 742 513648312 31 472491648 627 147963057 190 936850507 704 169025683 259 552119349 26 647014280 165 621970563 228 370924265 419 117689959 957 745415000 118 784628350 852 47377070 643 957782039 475 234698306 893 297799678 28 230079438 459 598662994 383 412314475 182 51239697 417 904256880 13 167002054 913 272258658 236 443667150 598 745195440 141 601593731 856 976996322 494 599956601 378 32148352 611 809471595 47 711826526 713 451524503 998 939028905 241 651951475 368 252698324 165 111645852 481 24103060 390 858534543 374 859386004 13 539712526 573 656031234 315 407811776 886 290737540 183 829708383 356 250839960 954 228711454 924 865983324 514 297295769 798 846066047 329 684609695 912 100811068 319 426470422 380 232789442 58 216400906 705 213132953 708 717045524 166 389762536 879 444171425 12 278143396 622 330292279 262 885214554 608 187428160 757 580295100 407 652899826 213 510934815 968 68667212 731 30160415 454 261151397 200 962473696 897 245782433 947 652731671 995 819858488 175 951196742 782 867947315 970 763249832 172 19035920 616 550764181 451 82797373 581 654784772 210 475723225 821 524624687 945 663767008 919 431341504 38 567808980 942 598065203 111 369372697 258 150989906 737 265083918 806 172654895 545 392009392 282 118126761 904 417612417 179 674462830 942 74131673 506 434250112 734 791799002 900 104911477 32 290530227 225 272213155 237 276892073 51 190019220 381 749075434 857 469231571 965 446772104 526 766094788 988 712094765 771 893399501 26 359065812 987 166474399 154 183119683 108 439851433 405 384060736 368 27001131 213 431945077 207 282986638 411 836563972 331 48655703 871 441687064 370 949242679 526 329823502 111 793704814 642 622251710 827 588229999 432 501875577 592 826879687 126 143822509 930 123802686 757 435825404 140 364863625 181 811904763 754 188915766 401 118163691 167 304560255 336 517846011 613 732338921 827 622934151 469 745897207 424 553937185 407 342727481 242 447665716 131 166522493 468 127795768 52 153966848 225 127732605 301 436671307 366 299930424 42 748176320 129 688652522 448 837144088 936 270172947 597 93476485 369 921209131 402 376927751 384 640596785 623 904848329 143 833494893 939 683158805 266 818420514 631 75495537 373 890708407 456 253981300 774 504878592 277 383134372 263 207234461 742 268858230 769 685492625 904 200263902 205 200042436 89 608214986 110 907639169 766 540000182 627 52086861 226 282683895 537 682411876 25 657731812 236 531842898 135 633430844 965 403243698 73 647787818 524 683366670 292 661450789 378 338187851 654 152197617 121 576316777 337 866022214 446 653820717 833 572066048 702 468291725 755 177670290 664 68582061 568 389006745 529 470968148 835 830341185 439 248384484 838 856111931 364 561389313 743 528152168 40 976288531 139 504217802 270 826755079 377 986070009 752 266165814 732 956159202 781 832630105 718 531271675 779 342946578 691 367736043 683 970824599 631 391170642 849 469703155 419 636552298 603 280151072 176 783019475 104 613123408 892 696781003 926 511667609 708 145018817 910 864968891 652 635090993 849 137058256 524 531305821 143 433588654 989 489255101 950 43409430 268 45422681 308 939615827 188 631953364 527 656885961 28 716876504 981 867695084 864 552680972 471 590843333 5 750963468 469 754470766 258 525032776 662 532028565 11 699469254 371 177016869 366 813005526 332 995017608 253 564337537 743 258125800 688 122721553 863 436954762 466 321478465 830 206674379 670 718708754 699 814012275 289 903416018 807 776192477 977 95396481 822 891729387 299 516370928 481 774424776 100 944439401 449 157623033 885 405660175 999 787948939 888 66714486 485 527861219 554 909401113 591 111823936 351 826354650 97 451737363 813 789258857 321 387408191 801 548690394 580 590953037 13 877420403 734 875024295 192 42960630 146 992758688 949 185338940 860 305599624 872 458248579 538 527322250 174 506689894 422 720902778 893 760269056 675 850881681 408 694903676 335 840909485 279 937763033 301 314721538 138 464437593 23 894279262 153 317683436 935 827519541 178 462527980 970 678237756 221 881647108 591 438509648 814 364912103 186 447109182 267 770578194 595 343333918 761 814901093 301 407050858 289 533426604 999 984149370 273 741251366 801 627481877 223 37897884 679 864802145 641 454646343 135 298854071 953 425403216 217 490713194 542 168418460 580 723564928 692 446992288 389 634399133 185 553905458 638 916909967 157 961363389 510 219217407 74 854410483 197 873551181 285 131321845 328 67285454 459 901794657 42 115892129 26 253693160 161 108470369 793 192706565 466 957528424 164 763466532 477 427976115 131 208073808 517 705501276 235 74811710 586 487552454 720 189899687 833 103989406 795 304550685 565 416443902 965 509887472 670 344681271 271 513043292 299 707269711 401 196833878 45 146434269 309 973653925 179 890013542 661 24575410 909 214337620 125 205920288 546 220971469 648 483930088 188 121341986 730 891792303 584 799842159 349 681781171 879 4353642 26 70935656 559 611644123 297 394739532 708 128152744 889 660116106 729 571005279 976 918907623 654 282872391 765 388485883 65 976964508 623 86873679 49 252075896 629 745042150 261 745730023 76 310010404 182 801235696 309 641599239 443 557415870 283 388800927 232 797149187 219 592272981 162 1782461 0 430581217 664 143250878 281 669532321 702 443811712 746 968165763 408 836746074 471 571877286 666 38601144 809 205187997 900 770881728 728 475900616 527 600714165 388 734080888 50 525803906 471 923743970 387 714800331 20 115632175 130 578709446 624 249987168 376 462837283 405 893791257 640 749489058 564 704486294 25 31832716 349 682692320 168 294975602 138 170033899 294 855257704 305 954897711 103 493397398 854 735713401 347 710197639 329 177409248 882 263685650 354 358771708 721 548401086 772 208417078 575 512677674 369 751150857 252 354728119 575 842261279 351 383391639 956 16931972 443 213871409 273 356020507 929 898703093 658 771642773 605 957760158 66 551172475 538 442242416 419 873020633 79 739918779 724 797284039 295 572471064 912 631799913 996 837585953 68 372434943 861 176258785 922 221804677 411 186496276 760 462325448 373 877929657 637 762603732 913 966880818 701 733129015 807 762108242 999 898393410 384 440005868 785 779792681 571 519373988 59 567735447 162 736598408 260 289916618 524 864007408 913 858502602 115 373692730 882 999089038 39 361676133 376 198329476 785 231419768 790 290032500 6 568264450 846 930866191 39 202933294 389 928747800 548 750182665 289 983362730 638 62616853 237 173176218 877 812258185 864 442610075 207 546830343 706 635051845 785 701607991 349 704769308 624 438484636 258 528244329 623 922812346 407 685979248 221 141555916 89 742902027 194 265773497 390 391562245 420 715419623 69 913323809 215 964064871 358 94739938 968 107347442 723 446352531 352 35164657 205 710400595 56 710486154 405 14470384 462 653124747 487 306224850 348 265308302 160 585892323 974 182506908 551 492004208 367 724166560 208 417260080 777 302018345 275 197143298 601 571672861 134 50642751 334 23870009 974 267067234 431 620866336 304 348726123 279 543815386 929 508605093 774 904481778 307 778588724 632 392029446 173 910148518 783 748963131 389 795591643 584 892691818 940 821243735 765 337017790 274 457965745 333 925047335 115 466018573 655 505408645 996 568585891 60 240107113 64 792847594 60 498987317 290 786038290 9 382906574 20 148174460 9 660688030 424 513011533 623 490369303 817 621050934 268 856282442 312 630829911 578 428509539 361 554253808 356 380644519 169 391174214 466 677677582 843 545516931 596 714032061 717 498114430 22 294084751 778 508240351 721 338424576 311 929440857 594 714530206 272 444764492 129 107175526 216 770816688 80 783940212 720 916505191 253 100668517 287 649251900 427 860463968 198 796370302 343 704039986 198 511926840 452 578048069 45 825685936 360 82697701 669 421288840 913 502631291 935 247983853 482 311145420 885 686449379 761 106431173 331 771124871 198 239751070 394 186083934 487 923451837 557 19962115 858 211551601 787 480135159 641 764122840 336 624112210 436 733023674 441 586805848 89 527495163 539 738661127 264 935394658 975 190692600 432 432455577 336 961134091 924 951360611 610 705574736 773 884285639 212 836588898 119 202742101 498 161259047 506 67962666 71 132112704 884 717828621 189 929519927 780 652338700 262 607601379 577 501714331 389 26943713 697 871403638 512 734337087 532 604045257 88 376676866 502 465932260 248 828585357 904 947560133 770 910313995 380 785161981 391 433255390 567 897521593 910 587127687 893 657306560 712 412279013 942 547893105 353 977354320 521 496972263 897 418330092 967 494450867 212 516641318 502 253055923 44 844577907 370 371903176 181 183067805 573 70983587 419 69571255 434 243282330 208 894441811 11 306626603 973 602852594 240 287444054 292 493831455 397 441385370 743 386415682 235 413372376 87 840929613 953 174014593 354 938719086 44 615952561 575 742911940 620 874620620 490 317179231 116 88574890 143 96293857 849 702659035 734 151166437 451 671152005 791 588142577 605 2803924 861 82476010 126 367740685 713 432643157 587 61659136 692 616937516 292 171597538 142 725582609 541 256032551 585 118879496 708 40036192 620 900467230 683 492129727 206 58366275 543 549890381 566 839704356 201 350799618 673 195626005 157 145295152 235 361952126 528 814499855 562 334168024 654 459886948 804 544172520 970 941261943 587 721501382 252 365571099 982 947554812 892 388489860 89 488734431 798 13121287 296 474535705 654 60263627 688 690820930 391 923360056 360 711596591 234 590197076 669 520071019 244 832703279 449 706440177 966 302135478 920 75726682 668 706611256 691 473591049 698 951835460 807 965344925 913 753401867 487 515203463 496 652199087 776 412977853 935 298876554 427 59499576 199 811761976 248 189971226 963 591738483 27 680513463 946 707928146 759 861273935 363 739276339 936 847045108 318 942290749 807 198491546 943 482032173 658 815990940 542 778328385 480 709931925 738 343748299 67 479275016 583 350740493 606 178157660 302 659126357 673 719637476 577 685868015 322 395298524 978 144691336 626 258936014 35 312491263 253 226806499 890 214167809 946 106762667 989 180137161 44 278573275 530 339247509 119 999025294 598 520423533 2 397578591 51 850475249 143 761163836 75 854724964 463 621725800 118 751921335 936 707942175 367 38988823 488 270091858 392 428947104 97 117761130 581 340447652 78 413609859 904 611365047 506 384480048 906 311283936 831 460086790 854 811445032 81 278486972 866 423701150 557 452278105 807 488972274 523 892890999 291 672350587 76 718981288 471 197315363 119 499982637 218 493583270 760 519939237 189 120820371 295 451499253 883 968093442 557 699756917 751 97683697 900 625813325 326 129199226 241 130028907 735 48456430 844 768652088 584 939198190 340 177394440 96 366094518 1 252162374 872 317029695 93 293185320 11 251194024 405 739547367 546 40158728 175 82211821 682 75634990 356 514549998 861 557688208 577 300900459 260 890199613 603 247813916 16 990158611 634 371688114 951 865635857 281 409799556 758 115082789 938 925746678 502 833475138 671 51761815 653 230802038 382 744247398 359 205544857 312 623694332 199 865468479 403 187003249 330 397388075 766 7320690 868 58978853 871 611149760 836 125953283 706 85661403 470 238414461 175 661546708 520 958075421 943 439635094 152 802816003 994 999798423 342 239665242 382 529695958 670 343528021 778 607568064 136 674184697 222 153569291 631 904775006 175 142302004 301 662934532 186 821835980 745 326777635 599 414694475 643 110225006 834 394363893 738 689006312 414 419815816 489 34074769 754 197760046 173 833257433 558 372304785 708 509446944 973 345658272 302 590555573 597 56313689 14 667286377 761 859885718 639 630589747 252 18985458 999 469274636 728 413346469 208 117341988 13 469344484 200 657297681 245 878873540 242 210501084 679 78492132 459 755773447 141 806649350 97 236738617 380 144628233 219 641662632 323 689341150 737 903289399 119 436729197 86 5089244 321 892172949 912 538368040 745 624707064 406 317225324 468 243312935 345 92032602 192 646083481 125 746341380 46 672259792 326 585186238 550 61315783 250 454424470 574 885061705 843 619200170 289 728860303 39 252579157 905 636321289 668 157934724 667 766490586 756 532072672 781 462678758 477 855077273 190 794510043 373 916357005 99 698031386 783 506166725 938 39472735 764 458032337 453 581144488 993 822826679 828 44716618 787 647245432 846 39858364 918 226952968 43 362375527 195 424019106 901 908109088 687 872147220 133 71906802 696 241745944 327 424793001 32 982561215 439 203748792 332 696201010 760 394380889 180 783624208 542 352621865 7 561616583 924 394925575 931 844418332 746 843014601 774 609613860 770 625911333 405 538710714 641 417580571 573 452748906 149 919739619 555 800135847 405 908312989 550 644485842 508 939045330 710 221604235 672 123640027 791 681393368 483 641697041 846 438348632 213 704842050 314 589764157 285 269178409 650 732054651 518 43058231 796 107200500 709 512346480 621 534304247 362 177326438 7 756037421 411 200431726 20 455910671 85 714412660 184 458197849 392 67287654 549 623110644 669 479084753 949 132813525 171 177476865 92 747314229 685 254886054 24 558977120 397 499080493 269 238217474 229 949624257 877 178703582 795 551758530 92 699906837 648 494631303 830 626087522 50 594136411 492 892527431 248 339308107 794 577473208 179 362936441 476 583775818 197 281383279 126 678017633 280 470659516 681 324529026 960 921743040 978 299358822 349 853823822 214 182535735 247 687372604 976 308455365 536 74396722 333 613231347 57 963553793 897 3243906 951 822691876 953 561124197 428 934449317 711 350416910 197 124511983 334 166293834 199 186370253 898 488462660 406 597755402 186 527093839 516 534839744 138 709138659 920 176525844 167 401265923 242 674469722 964 205958873 502 846521951 913 939030442 585 497309129 697 701675790 867 373167723 610 551366478 422 365927108 633 491140739 483 569987315 848 657956660 745 23862159 829 940536975 289 110153323 906 785316018 714 321091273 649 975928693 760 727492758 383 674332387 285 145271538 975 666319795 71 637861106 870 100593978 193 407515735 625 234354501 220 930927319 353 212340935 46 52021960 519 232756620 139 280539544 665 837201769 781 960364963 277 373307924 335 567201128 989 358385777 670 177151433 756 779287858 261 675233214 360 120967481 360 169750959 766 881640643 55 19948168 448 603292525 361 208152833 631 429898519 546 725115295 445 381338746 19 950275685 757 631522485 300 635318862 981 739572191 477 924479225 536 868603325 896 786829452 885 486366390 207 272867548 179 10060739 601 172840995 456 41723491 366 138101057 967 894541913 540 951027389 472 427171394 206 63280429 281 734846688 597 773067328 533 351829152 459 966024480 628 784026348 976 587648185 114 858388358 470 539459487 875 763531312 663 957927987 460 766955958 259 933789319 777 68084842 150 718247099 116 577717506 459 222752883 17 3172307 280 711124276 564 597439984 27 9991940 646 749515985 717 404076637 366 611016636 721 837395546 877 122075664 912 385059262 956 635486171 219 858983429 66 795727252 188 140334058 219 517810964 775 429346589 334 711115568 446 852652216 736 848118853 699 944573795 486 911702396 558 194920024 962 91073538 688 604268279 19 663438636 672 583425267 55 395175344 110 246709620 917 641808830 929 992849936 149 179559894 289 155996712 141 410315476 854 532528074 665 916737740 896 334930790 344 69580696 881 534793070 469 213623190 994 535360464 624 864539219 388 950639710 181 690409128 93 170253055 351 359898822 823 361802692 572 382752948 662 555296854 932 325526436 114 848496136 42 797009435 408 849647459 213 999488335 730 253755024 349 49625701 112 974439880 989 586973531 982 598570629 157 448883471 902 606963628 729 687038498 108 27559892 337 166738595 332 471899778 13 399597655 278 500547414 270 953314493 898 305277839 269 305188834 84 637568820 788 199407784 502 161748753 588 987345899 860 106103085 104 699191781 314 80784997 126 161055623 347 205440082 316 98248850 428 493473387 945 509472085 49 675223660 951 654295571 559 489354020 917 639502690 251 637061489 893 906437926 980 598305994 635 616280969 118 94201036 506 750880375 875 96563324 711 134992591 736 358747253 853 898045832 577 792842640 895 868062174 834 121929277 588 858953388 783 14937136 125 407040998 823 646437621 669 639160263 817 80885339 811 782119017 343 881053667 529 693000346 986 394624480 641 607881929 373 326257843 848 36174840 567 357400536 308 909725317 628 448468999 280 324753342 960 992204496 374 135570002 859 406132538 137 791863897 519 73996290 903 486454763 655 892617727 620 160443557 720 722353034 425 864733926 628 35441516 538 451324647 403 142481491 809 136893060 941 6495218 172 389969886 820 105770406 246 810663217 417 361799307 769 502254088 405 982135139 988 599754338 955 976253037 823 513012488 760 77187599 892 634019874 521 348291767 461 169312559 483 419784942 386 658023182 462 658000204 91 119649576 520 99221608 152 352108255 816 611703083 938 434568160 785 696121902 910 991026293 912 566723843 732 460241368 802 434484981 797 486638984 995 426176363 678 460969226 602 354641665 418 648501149 963 299344048 775 163761890 473 548137474 358 932987226 743 682877896 944 109826096 411 165553105 367 824369555 843 818762905 737 365386955 206 148070423 41 54945669 337 736263527 25 408737908 947 517563361 689 197187871 591 948013697 300 867331444 426 209089467 691 898220691 708 756501194 137 140474894 877 302477709 117 899426102 149 397234003 471 254345716 464 131256833 320 57238501 214 695690529 884 93279796 13 181269074 712 554898411 585 20777775 686 266137509 333 860682907 217 25652293 78 27298758 561 345012517 730 688337974 565 144436119 554 460133382 233 96861608 746 771976669 725 81279098 691 852849283 849 977475294 540 191876476 855 159295631 679 674013523 296 205881723 360 674897608 72 207963973 142 413227822 157 236871946 834 994894296 584 432211932 955 813253209 951 81374100 547 380731714 430 207145446 824 501121096 745 119389726 604 46132741 382 417809497 457 63200024 485 425764599 513 476918442 869 198629810 108 694576251 828 33932186 7 733192742 27 734820561 651 97820777 859 374774760 321 911117376 921 241232117 262 390278367 194 973848476 852 122704586 193 286057924 211 265719364 994 288290184 448 92704784 692 271776754 298 730024861 678 348273130 444 887864033 996 311939651 956 771821744 956 501839594 15 253093423 496 810367865 240 504267018 836 160843741 588 4022785 187 886659066 293 649177218 34 450267818 709 390228355 105 913789412 530 769047088 587 164779049 441 333340953 221 688245927 536 98928004 401 714794572 626 603485879 971 595186170 941 679405409 312 257872109 152 96999576 621 393087138 255 500394162 809 799845944 210 87510113 212 502627071 151 149095555 332 612380447 774 796496944 593 58009747 969 771774087 358 158631508 285 490152491 845 41296310 553 798690323 670 555004861 794 242955641 504 428938277 140 269832194 997 721828491 889 39377552 507 765868905 517 880779505 26 588704831 545 697111586 45 271547548 686 77435038 226 664239178 344 502264924 858 922195552 636 455471737 675 147344371 737 61786402 533 990261534 200 337894925 796 452643517 281 981980357 104 284516181 121 828631649 194 549800780 325 618294250 403 333186999 761 215537934 823 8161346 332 710270537 5 428818917 89 679434936 361 997132786 319 63550143 707 95948193 347 87606793 658 804224994 770 959583818 929 527534540 697 367381745 851 892028636 987 72696412 55 566288276 360 831886758 898 72989137 458 533894349 482 579991501 599 877430842 347 648463195 726 111619558 120 413362707 92 811130864 24 223097107 24 287240292 854 232486013 318 228610088 9 980816046 6 5534268 461 234567537 854 265144178 241 67626421 187 928662098 182 848702168 164 231664724 398 54005385 633 35846833 100 128534804 410 230885540 406 611071412 166 594679911 747 493005286 950 908367324 978 10932294 738 39414096 713 342275427 166 362273194 518 604765882 314 304244979 575 533556175 256 647094718 632 514008599 146 311011651 705 938118242 273 394496106 522 752120633 762 598109784 620 977927199 3 81736354 601 894873455 58 71342513 5 928476128 20 83877336 874 370530425 616 986723465 579 388400564 181 143861915 233 328873928 143 150517547 40 898267442 814 882852772 595 926555776 638 973444207 706 830881976 883 786230096 169 239068774 116 432124835 38 396092941 452 749357437 4 236953435 777 920999318 704 12278226 620 661075199 566 616498171 605 621811809 255 637355332 350 197478552 131 751060920 85 697570373 263 577021358 102 799909973 842 746424931 781 884818784 597 563396743 436 420541762 470 61107257 619 203310492 42 433357903 666 860851266 962 143014320 530 18534708 627 188448248 83 411824674 145 854076263 219 943576173 132 469013372 367 921032616 871 260398550 658 905416127 579 610029740 921 492800699 794 71180284 877 90395501 697 785970269 302 82590095 401 363380679 738 184472946 329 220100506 916 702035805 342 945632023 658 901199422 78 978307683 853 882857572 407 752165987 654 774676487 964 936839055 431 690772070 976 259272672 779 880510423 497 90569145 188 784914700 128 568449419 321 447832535 997 364387420 827 365582970 393 53074126 197 475622913 405 23685557 638 287038139 538 917928999 683 589541175 945 17674516 699 57791152 5 4330684 864 204871525 683 704328074 622 707951058 207 418655193 705 254093238 127 534981325 166 475693950 637 573591350 318 80907770 220 909322449 650 869654371 998 940261143 484 977367301 515 126613682 353 229052932 91 994811823 778 605256005 468 823472554 895 949548106 889 29962382 508 693084191 378 682200263 828 729870406 39 344201803 87 220964988 188 502241289 613 964447577 372 485772432 2 767363984 201 508254541 966 877128832 32 519873747 248 725939857 936 807236070 6 557802792 248 446909178 121 959881348 354 725610030 963 749167205 912 922425686 823 417332274 126 994874191 470 55319655 988 281690197 7 883193437 116 972692070 778 278713191 368 97949549 417 860699132 845 734052420 240 179095925 590 371210089 997 7085220 166 258955916 61 632276201 113 749291204 323 295177394 931 961970126 696 961635415 158 267948326 73 543681464 363 593174587 741 197417726 123 270284390 775 175988993 65 218889613 787 464614959 230 433044516 279 651942643 172 297566556 681 194640129 887 289257281 936 597089749 669 52202860 631 711817064 315 243458383 771 689632381 617 986265982 583 171012525 547 508947921 554 497718315 269 651746515 37 767607788 329 577331804 913 152048911 658 847303038 438 639834753 357 430707807 539 623322620 775 974115619 259 583574686 62 796486009 521 949406336 951 350754018 503 639614737 982 629304588 475 810767133 198 288614936 142 862838458 71 549821830 625 471641920 287 703657075 624 44054266 281 76093037 278 366810789 345 796550954 67 602300729 980 718965961 874 775898725 350 258853738 332 333389967 933 900105049 323 259636248 792 833934446 343 413386758 675 570718820 37 551249218 887 892732384 224 606895890 725 506979459 295 988639773 226 483894405 253 84334153 309 518608050 248 822273862 313 127409908 4 20587692 205 845994054 625 568041531 712 779782670 694 745115646 104 713869675 855 308216403 413 102260101 327 512153966 734 366871498 256 848673179 136 884567071 877 843752346 8 751996622 787 428414555 665 992121402 712 905542527 996 121355013 183 709602531 809 383310572 522 375468066 435 872696633 808 175871063 913 90366215 569 562383072 732 104668538 920 699576864 977 823299769 889 2785917 671 198431105 408 434862995 747 620132559 47 846225243 472 980385735 638 215592850 444 766528322 923 164964650 151 612417980 5 737065649 598 469871817 789 40200334 902 68940693 58 818021414 981 228362639 58 189985692 994 33105980 765 979633507 384 425752261 820 70471501 465 142317172 219 61744293 201 725716018 273 87245224 56 137101394 754 315323819 631 573986971 161 689375570 60 64275549 875 742159744 930 525465709 520 218319873 451 57567615 412 923898344 94 738867253 583 725416106 438 472056868 323 605310537 175 989733562 175 1738507 750 61851521 393 316735434 208 732667169 243 555175782 856 40641186 855 675572679 554 111793356 660 174166037 162 500437664 781 525589307 844 612668612 136 542688997 890 667913785 913 261680603 743 679944305 775 558187960 579 998509520 941 192892284 639 343304780 820 440252102 121 209831272 57 677907523 902 331277364 552 638233742 171 698447178 577 697735456 104 135686503 428 985994218 877 750196142 542 801658066 501 378601389 354 464860771 218 690590501 976 533796131 553 164725504 325 999338519 59 474672067 406 888607036 145 71627784 110 100997309 215 376097321 613 355557689 399 913274200 174 380807776 71 360426429 498 210362404 175 442609677 285 943255974 40 479376679 134 292238916 309 434946508 895 270917877 150 287897885 542 476072350 688 630982554 281 890843347 956 393660252 930 684029398 158 223532264 974 685578080 909 522928401 521 596457616 827 832687523 233 955093655 875 411317023 784 916148128 149 309785681 517 949137605 176 924446475 633 444381814 789 428515950 28 713665356 373 806061552 829 446291839 514 73549625 648 141621932 836 903187194 338 713794763 9 45041657 887 564667584 259 730547480 58 382530308 431 620456934 646 291791722 594 450456830 986 282225833 826 821013413 979 488352351 629 186453447 811 469211937 596 189637778 107 795901753 184 651383564 529 900106502 823 98167549 250 732548442 327 224142517 782 872460420 99 147044299 601 700128849 321 274231537 872 445629083 13 139237973 887 984180762 983 368686310 659 619679386 835 469063302 873 675335632 878 39441067 717 142875439 936 340327074 227 504653139 511 47119054 343 340833391 742 181780278 200 605873470 305 509700812 28 20436221 53 915121800 34 653193232 871 595095123 40 418845432 115 475881271 863 657557636 841 837203919 200 556558500 599 497836663 715 697321852 562 620626371 250 306126154 257 521440177 709 661820114 778 148224889 633 751764185 191 40077680 939 784169706 663 350685739 646 730787882 451 369106178 39 791878232 607 200198612 173 498562763 72 795131246 648 762762306 962 362372495 679 122713387 245 349997969 314 896722392 503 410322403 415 243600451 611 191639228 855 560687431 583 797225515 279 460766040 678 924315710 917 79287831 234 5141993 919 234338277 622 98447977 777 87569730 270 961119764 249 95624949 706 949100801 382 170389792 425 268809092 663 928345785 196 117944878 232 726702884 524 448423145 185 597599562 524 727565616 410 603368532 967 172147936 154 244496773 841 997345055 497 848538808 417 78134776 335 107753999 944 891926531 786 914562962 166 912336980 479 948311113 710 409962596 872 846897215 862 763442457 493 693461112 661 402976536 196 704615107 345 237800865 406 950288869 10 478879133 23 458589438 765 69072978 305 406609172 327 16130184 422 61741144 91 559034770 560 726212202 170 562895155 233 167987559 340 311443747 917 464706422 778 555585672 668 394682319 48 126781025 147 256317305 486 346010210 367 246177123 545 656610817 510 488261660 575 757382449 1000 58900747 102 648702888 483 266258660 485 304988733 746 407938365 887 368003973 464 960762220 98 702674624 552 124279340 249 127029509 907 957022343 389 726148047 650 796996169 799 597801446 946 308376636 226 877120607 738 756727383 840 386265355 11 183407428 128 458537358 558 734353817 153 100152892 66 850501719 710 68718302 444 165153865 412 410567314 611 62779379 692 561734212 913 837471820 178 844141634 732 306417852 912 309564750 870 173290292 858 879461563 38 572966825 599 729394187 168 31940200 264 533008485 98 142058724 546 717925090 197 645888010 609 582116828 370 141058675 751 154487034 890 380175898 608 115089211 607 38053195 771 461755441 493 178486942 996 586872497 957 912499725 896 415572067 42 966578985 895 394885112 118 985294438 245 426798226 125 176233285 486 333875811 426 35880736 67 911652050 2 609260845 247 991109739 457 364166109 717 821540560 997 718893013 589 878702270 31 665013507 240 112033195 130 795245194 877 310294603 434 206275817 421 383375034 819 321002927 895 558093376 168 989276494 263 329281488 534 819531352 102 47736701 805 853157461 657 597531737 813 864139679 591 658064542 136 743748050 925 721872551 724 654076018 954 692595788 554 444857665 758 894852167 825 555955237 555 880164867 769 363529783 138 139591192 921 249076092 304 849762134 798 713862365 907 962256992 247 273920171 988 191218832 77 451881784 880 808300653 72 404384747 215 961627816 12 219832414 993 717765878 771 780072645 200 809006701 777 67719298 680 600286250 987 935814833 998 364419449 696 955570114 947 693960674 25 354292534 592 258000975 200 581563923 758 964677388 244 347621589 7 390573425 510 941229722 348 248148991 916 299338249 104 598178517 280 914925300 73 839277809 796 861966600 915 879162053 821 410944741 974 917907693 463 405535307 759 532026833 457 898781529 342 723831152 961 48965739 266 961345972 939 879689530 25 277640211 366 763227776 138 257337000 969 172444767 340 991804768 406 838805824 189 498670721 255 532615753 504 377281708 307 878389544 386 563621220 157 224892328 0 515834767 931 220854799 343 394454582 815 665775536 444 781673986 243 394891508 399 914539267 508 778657887 194 791646693 17 725530398 921 635773336 897 603424868 332 19234085 717 474895790 756 770235334 673 344553604 965 556623906 146 816063074 360 228070922 306 740201424 152 972550853 858 800600394 537 24585259 426 18742592 35 693459911 311 947258893 482 922975265 584 425521660 760 644116249 875 563718495 255 182654612 412 288764578 851 176935677 293 549775699 429 839726730 612 651751277 559 607306445 166 514041267 326 518881915 558 328743116 927 209795053 754 529277644 668 356386856 344 459082603 864 427704980 933 308690118 559 986679560 428 346260391 817 919531294 484 123807975 117 673222562 965 821367534 968 848649956 932 299840761 33 491608443 773 78680566 444 529005964 754 747274248 808 65054104 256 992975884 94 175366512 828 393838982 713 82389542 322 905647985 224 33561404 809 443761872 258 449978796 46 985105434 977 116295816 453 745273594 12 587474017 140 916973260 195 732495045 30 869893094 253 688022576 125 95715898 657 434323627 722 293506399 253 772717454 797 188677479 415 523817049 23 637640449 624 186877042 545 696838516 673 706708174 943 449158524 170 871526335 404 632172274 606 917329283 18 105738354 206 903041719 565 48034414 528 155949525 285 640261120 403 305294593 239 209283299 604 332421266 861 522886898 835 109189483 237 451570906 170 643754688 190 672067352 159 132543286 896 108774866 354 771680364 15 250784411 173 520593942 744 805730167 96 497234389 95 447859435 622 645600921 634 790615196 297 755649722 901 431237257 601 488450440 25 856380682 639 79986989 70 585956972 759 516290872 164 840010505 30 178932364 836 637050508 802 107314382 261 428978949 49 66561716 691 538537681 588 746331891 73 188821578 131 268521781 146 762101387 769 361597846 975 183833085 545 948627026 477 49149093 554 971094357 428 142296925 536 525917484 113 965456843 928 386463755 197 601347318 331 121123959 682 543104775 81 798681492 496 348890156 29 820244877 227 336592601 705 296496800 170 276153576 153 638737143 588 751058228 887 622978728 721 204090375 59 336888020 205 894345784 20 703501248 496 259622638 452 946083945 119 233001681 708 352229286 588 722636986 335 477914995 664 832016463 209 299948456 869 469132946 890 944555930 210 350118266 721 518351567 220 804653808 472 696842683 43 686065687 134 336170295 726 138150427 183 176797529 83 644681159 282 544377702 399 303925313 842 888839279 605 394366961 650 503149851 467 262967334 314 218573561 582 436308872 799 37765478 48 45842026 643 36345064 889 927157179 576 169619309 650 464622253 246 710026671 822 531230171 692 720987594 792 990579559 175 786822259 469 905713524 342 494369243 530 139765761 845 473712696 629 819867762 660 858581878 570 751971540 785 147029157 54 956366423 857 372443321 41 379192673 717 261629227 185 956575218 607 487374117 63 252876580 554 497842299 798 746737514 302 349160357 349 599667336 796 523449489 134 501198118 223 720297114 36 535010773 846 417255542 815 468320393 958 53854835 794 951297594 81 525803720 831 513799803 362 192658215 653 943294252 151 127840527 43 212659078 604 764387030 77 978186485 271 436844390 887 592222424 620 614177193 487 765084483 72 553685207 966 640256423 683 818297987 835 839834483 661 341840927 970 798196859 118 328384113 946 344819641 286 368494471 72 740619620 140 296325942 197 438486904 73 104495123 594 292930589 15 3431742 264 477831995 519 262205801 858 792237961 786 263416579 725 520551619 426 170581466 555 112199613 308 855665207 350 547983654 506 117536239 546 981132419 527 669387890 954 448797271 776 913946910 637 177635172 181 635183233 181 318298745 533 418532715 156 669236966 698 28463994 669 667727886 408 531671793 787 291665905 310 667231209 127 774485764 407 526214990 149 649180755 982 659421040 906 367457584 947 81607373 353 720581947 894 688411054 221 440976172 580 80648384 667 197234444 432 366011908 882 17318962 74 717290132 660 981978497 793 280620168 713 402825720 281 524760859 673 8221478 795 887416749 563 852552155 924 973000021 186 474240947 1 408765644 808 861439977 47 513398316 315 547351952 829 551144895 435 42165748 146 486552595 565 136966088 559 948366103 379 524767282 522 343552811 549 519848605 406 751110465 311 976916690 244 263277525 106 708181727 371 881453615 482 114386553 456 658445160 782 752741810 684 868641838 951 308709853 149 571711870 105 882292755 109 242562615 893 432439421 677 986106646 357 643798780 203 208537508 896 646525602 874 799808081 93 293309327 547 59644111 732 191660882 950 693061011 615 942719233 144 404410091 529 234574704 509 951327151 571 397496158 241 46053501 666 537765439 687 551731735 271 925898471 371 364539528 719 531572586 821 195490120 120 211881598 856 926607349 712 817335638 300 681770157 792 36679573 876 700978632 190 348792246 675 765561808 486 150797276 740 486958767 758 336118521 708 822705760 582 914822645 943 104226206 376 499602774 348 346819245 798 377049215 194 311470897 214 335548509 827 189560084 604 284644426 520 341633159 875 149278532 160 275970623 116 888767174 690 303199771 109 747472558 886 553071376 492 220370974 382 797124276 103 51396433 56 95479144 157 91955951 21 172711439 237 898574017 335 187625619 127 326748578 705 181360811 922 222156931 101 812959010 117 533762474 687 304507107 515 430523183 335 785896539 599 531576441 835 835368026 256 699343557 763 158526015 63 431496341 553 978664906 522 672380384 604 348153802 7 65070256 846 907782583 83 721519326 290 126980322 371 944282444 799 712472293 171 65615101 737 821219873 448 452441353 917 327145168 669 682823446 640 346127515 857 245045872 554 634510100 954 526903749 752 41210348 722 191395763 535 997014099 489 431012916 929 770731979 970 488490561 75 29039178 913 178019782 652 655747757 697 367409505 177 70548318 492 976893119 647 878353096 560 231398991 820 50342960 971 528326245 480 793659513 612 598229919 66 94979079 725 69947600 969 32970702 847 66650146 395 845133775 311 292391414 272 397538188 884 79210623 403 844781159 422 4786556 513 723950503 283 247487426 105 334763359 532 885083000 373 930100697 770 621397692 889 121854489 160 964438620 221 903983171 469 218791626 903 912465965 727 36236740 263 774633766 979 533576704 801 335899784 553 84093604 4 90114617 875 298433857 535 758824799 583 61259054 757 232798590 951 549785248 923 804139354 204 264928799 549 960096107 189 709995485 476 437224457 732 147956133 941 319819208 350 656733424 18 930209485 277 908182426 680 464895387 488 594633661 638 379638980 344 239931188 33 320136792 647 889520448 826 225433554 326 396966865 942 387350775 696 701891579 739 27173204 605 622317455 794 321665144 52 363200915 884 635839960 919 380597085 201 838121061 384 783726672 167 991549454 53 373032669 564 75953891 551 242766383 611 574007282 718 411954627 659 59984501 774 87970702 37 264921664 59 732585465 890 679232387 317 807526994 236 220987765 634 503289195 493 631525692 113 48196451 913 200008809 605 4964667 547 16538321 129 487233362 572 915047734 108 431074017 992 435052330 920 461686680 546 853100278 554 92072848 796 420833885 201 847424685 401 126264568 834 71202642 840 45285107 1 461202558 919 449929772 772 51290437 206 327579381 240 424598493 211 119653751 599 249619423 515 857212939 735 132681546 609 78629136 347 600966007 878 443668630 484 3478792 635 542296587 152 353955985 699 87990717 71 864181190 855 774945399 233 652505554 309 596886492 684 242599035 839 78980237 549 258690098 607 901749681 632 676112419 666 614283672 699 382934855 603 357198749 879 411188269 393 120959162 608 449828646 266 367116457 733 378345842 602 326919431 703 858540555 229 824810882 766 599995586 954 729131157 254 519289930 399 975244846 599 354787285 695 708899155 838 61882255 749 487301096 363 460700932 490 461370092 55 818737839 303 324518854 476 752783614 655 67188554 542 552775394 643 26164140 150 409815291 950 522104911 236 417957395 335 930494219 295 236226163 151 697684353 655 159528968 823 657365675 395 995232599 823 886766822 50 584238715 490 523862297 825 332612450 351 647728587 972 294410960 817 662309532 219 735062754 27 543046262 488 583298330 287 890144724 203 53256370 612 75986862 481 23486855 844 606361383 333 399027197 216 389100482 985 503232790 15 103588729 277 440038711 359 156084534 428 816144498 131 384566467 920 249351677 186 939016771 151 622632385 853 432792735 841 807613351 938 159073943 268 445199595 883 348237821 237 702329024 606 376159946 831 593524835 362 626352689 802 94133414 164 563326443 182 570625774 104 314351436 56 928234323 114 570253316 799 816400248 304 745357801 261 678301593 426 885036298 576 53152256 107 122509214 860 359970931 63 755491334 924 593045695 232 634681827 5 601098472 750 520326665 763 384539472 149 160136526 342 818316708 955 324540754 955 690926054 449 766721333 117 173568550 957 259508122 445 988366110 373 148982900 152 497894883 968 932028551 903 380747411 0 660646139 796 590790323 747 568312451 646 793733898 498 416420762 580 246422931 627 917731802 77 54914763 820 113556723 78 994138272 582 976900630 776 343163338 144 877247031 243 995604499 225 396847420 841 106986498 352 872545561 149 735894992 369 862554977 48 626370970 735 260470653 548 744492562 549 600710242 619 854108639 388 685158949 63 698379684 713 392180623 777 140079188 496 528534516 705 698576402 935 132615276 920 408780518 577 48996033 106 621699291 766 937250709 856 380311295 857 779083278 851 611590866 203 639407357 885 731917973 425 241401163 632 829198402 877 207358538 259 429645833 153 666764076 52 981275144 109 723735459 456 373296109 56 696524689 599 716733238 926 440618317 188 151099393 588 584409408 355 119189341 941 64051212 23 804981088 818 32955198 839 338372513 552 213767025 213 403849923 809 981940395 736 931736468 923 212006558 398 237056618 742 605759473 395 253293668 661 526594612 466 357214434 186 941978175 417 691928415 446 682598321 415 393331718 612 981032471 552 795056059 621 599296821 440 313782502 460 784354612 943 904822957 552 800801898 468 355677408 49 160795112 864 775010523 432 730887705 793 852593683 689 452135951 930 89071920 632 170960941 480 504196459 587 112628589 284 203656547 499 266268936 712 842188036 33 115597749 400 164741402 201 613648904 602 510770423 611 868056813 575 778110701 476 837044742 227 301817168 847 102927625 111 960369706 443 762403354 808 613173750 736 13366628 48 331356732 865 679088848 13 133245927 775 58340634 884 427626186 515 166672162 524 435849585 863 135626796 32 400993882 585 502323652 391 492328374 576 981112966 455 206426682 121 652509049 274 938686548 133 82212014 168 73019281 787 992269415 702 868520952 935 644103782 801 484700052 882 915232847 415 545579441 267 532536867 979 445163468 16 667205825 735 696208774 386 380607108 371 437050930 901 764912260 339 553765172 788 593506958 391 74777959 123 819085018 980 69586461 486 393088827 877 37859342 694 386632851 215 922477 514 169007832 45 983715282 261 589102246 25 829282943 42 57076675 296 261073859 435 372887129 366 284752883 116 749034634 503 820935904 866 859261713 674 508414422 784 870114021 871 674278271 284 260323654 811 844097398 200 344456601 582 217487616 245 710351478 852 800640663 947 797799436 651 739165909 532 860467973 109 278049405 656 415157794 162 101075697 855 544086746 590 694753654 642 64347243 68 887791512 336 821505115 552 994238833 175 151816613 142 886944565 174 655604532 985 470775127 95 688894410 789 829612396 742 805847610 585 143944575 992 967918048 328 704843713 60 209597736 878 568008645 647 462006036 720 447440118 204 947470345 234 734220682 741 195022342 557 243457147 957 122793673 27 458861053 7 303597364 234 365307533 308 786965414 528 995943357 248 808661143 51 358862664 231 784570612 737 703520168 22 793021181 298 111314895 304 505192850 826 490248201 946 183045075 440 519073687 447 400565705 52 245193012 938 819305207 146 348426730 86 59596835 404 183929433 88 95732451 488 225122975 712 867294968 305 185062249 239 74579156 705 23620630 834 283545564 290 622652441 941 801151886 47 80041908 330 215643643 290 445518031 43 316696432 381 191540462 575 337461066 298 30614166 86 881263362 934 297831889 482 551516579 13 624102757 966 109120876 183 432316327 230 854985349 499 188258952 937 849367677 318 38257079 629 14227236 894 434779241 999 115332102 317 174477931 282 789485907 419 682773589 376 358729728 417 364653904 989 617949210 766 321545597 717 845437970 286 962173378 849 945891750 244 384184286 634 254550482 834 700211950 84 375478900 615 735359961 42 489569653 955 346851130 185 626369528 415 817149887 790 859355383 351 556138780 917 836876170 398 267410932 208 652843436 172 819127219 578 174470328 336 510785586 30 402692655 113 962086368 44 431623771 553 566130276 63 323016508 470 654931435 341 99064604 93 902908220 752 438850556 284 310293490 521 248552611 355 261667849 165 359221980 974 228582475 238 836760412 568 547495944 273 768243321 850 870251720 524 446758900 341 248612544 528 397020408 643 700944512 551 236878643 927 392743391 586 607924169 947 322259101 853 819000363 282 806084754 809 163218287 260 635437393 739 511989537 468 499441111 836 407026662 544 305027535 311 542669185 266 347121642 450 74268899 22 835482359 573 680558091 158 972653696 615 625637284 406 302234744 58 542805906 426 700758279 12 186439144 632 324918160 277 412413177 513 808762737 501 638906784 226 947857871 377 466077369 935 229833721 467 339714896 985 54161583 463 611657093 899 263050848 328 199749900 610 603048700 557 729598226 611 527642983 226 142783738 657 154312684 486 994266115 667 270984774 602 489333053 478 182229777 616 317402407 578 787870551 616 2721701 415 863379625 437 99372543 191 413085003 920 557481590 376 791883651 735 571674503 325 865120978 860 656821731 209 106081777 880 93476500 942 93725509 188 456649240 71 575505142 637 792822004 39 35438854 716 358646280 562 591658095 557 919893012 643 81647929 400 218622022 774 820620177 509 39943202 344 957650784 722 979677439 655 558382327 199 20165577 658 581144340 523 460950955 820 850992253 156 209427666 797 438576684 859 115154737 322 719237675 53 187240845 189 90838161 667 334787821 5 370507877 314 307077115 953 434566064 402 901289928 807 989071472 222 465167089 19 594673112 285 495357779 458 282506873 532 679207225 23 180047988 311 887302645 713 567697171 964 185071628 784 503052708 70 412007267 747 295691808 495 306526435 144 903254809 325 962667245 589 724104539 207 597831856 259 219585227 787 482140917 965 174972986 889 447843339 480 152889627 373 925485086 127 629679901 872 200292456 259 263994114 620 988033052 713 808046639 591 450670563 929 989924353 672 423666696 281 555316361 931 736955173 808 437665631 614 85298544 775 897806091 670 988403049 505 388832889 987 229776944 588 748404004 638 529242476 837 504394426 473 607084706 738 285214737 222 484346877 157 821977640 178 608952546 697 655941258 230 474054202 825 230516638 0 944840193 783 932482909 574 743903748 870 352142839 95 10696107 104 543058862 79 869555814 113 318869857 577 4866767 299 798955695 918 219376490 481 964514793 809 110501340 983 35241060 95 366699736 996 518867256 439 519113475 529 693076042 20 704253881 213 366087292 599 895798441 710 871060496 638 535719430 495 661526887 495 882638488 887 427855596 238 203059594 916 464778366 88 461440990 519 355793163 672 904465124 264 924183501 143 845420725 346 120032143 477 197311337 633 443007602 67 960904768 401 492857116 158 366342963 591 608081686 87 150245248 273 108892184 682 2409406 512 772220762 705 329687101 114 394333974 620 108213759 77 679621808 63 172678221 736 726974586 445 313938061 449 157098156 259 902968527 797 919796401 985 127425612 90 239620583 702 155157172 112 184377088 524 66946550 794 428838366 551 291854312 601 952614888 133 502225448 763 403892295 119 315140262 225 944463537 16 909966498 225 401829335 352 369340534 532 819422054 30 870411069 783 188668383 271 208091907 293 710831973 73 271545072 913 990677500 394 423445387 938 744335051 513 526287232 414 641166061 680 937168236 937 319279764 83 446651718 508 73186863 236 379263936 964 529352685 407 306165801 358 770377852 6 732584772 668 164749686 558 329692654 513 612155894 85 624149180 450 866928595 230 607401924 433 909951700 174 815487164 479 650771488 131 762186854 196 809594653 908 168230089 911 549295987 172 819228126 181 538814355 105 873503354 277 297102868 879 99179859 14 165831363 18 670417423 571 324141599 61 997342055 435 40317423 357 373724219 96 595217068 733 489142770 315 83908296 435 718698615 807 929668621 561 913908797 897 619244617 760 962936382 768 586660125 862 434767917 249 988193698 297 412119790 136 592412835 644 300579269 728 343465244 62 943034028 772 179816872 561 204772944 626 368825088 285 298121715 34 839873610 721 440281865 405 25805490 27 387097019 903 429556417 619 963919092 976 506164125 12 781683889 911 359175183 364 34462681 53 434380332 609 343422799 886 218363729 229 875436131 964 689989450 589 763665157 893 761829617 811 809190573 177 244341473 847 695766710 162 804813091 828 388272042 394 957075442 265 56974022 783 776040094 573 465978255 846 759886337 811 116426573 21 236519531 946 993675174 825 983927755 537 542659132 520 443316147 62 680658115 543 330332996 784 480653781 59 179241465 112 154728993 243 716848851 643 605064043 13 811963790 313 486544868 336 799598703 858 782108879 250 967288127 696 822780461 647 398605403 758 692355915 787 873468802 750 867452021 865 135590347 569 217945158 529 10299456 701 472336506 147 466990055 785 456904782 626 28621019 888 343475770 323 700036502 298 535147364 552 101955872 486 289743351 765 506338555 441 343344086 642 224786360 628 437175227 38 911484437 436 528920151 459 949546111 944 511744083 776 909714631 70 945485263 294 950496865 798 599058915 133 891038210 934 768576178 314 176038379 209 564407816 354 111976710 540 522929407 334 159487470 668 194863030 192 547608971 291 373219833 88 393164429 432 120115725 103 444258537 247 626014365 685 571523901 481 685463253 394 786675363 646 929847280 373 282827741 966 617950904 666 336139947 115 911239656 892 235162075 73 527206429 163 954675041 740 727390191 195 8064336 903 813362810 56 582482744 778 55856598 741 386481217 754 934144397 280 3604589 834 966898890 465 567274097 559 583591908 642 489897520 666 335463790 24 411476472 627 530044848 291 331372537 631 618160444 897 927683982 364 335776653 870 99380901 333 153665627 709 859961829 264 464400902 384 51931429 13 864382598 167 310002384 645 743887511 731 891032589 255 534878301 276 908804066 348 449195814 363 110622074 436 204270426 757 942820918 9 834036864 705 630226523 926 423990686 299 180208568 846 559553397 80 606952734 248 464269002 367 231321478 866 858798982 50 518621354 621 665068866 516 845457217 998 322957715 902 519434044 221 920387942 106 277450486 132 674941825 376 80649695 116 575559429 702 686761974 128 312985298 635 194140114 918 910765996 342 784582708 248 896715292 293 497942806 408 815291828 17 100040034 773 44908890 382 74117228 481 434539142 706 544124971 430 634037329 347 684583030 923 59074396 786 801091934 103 708967904 798 580870968 300 671243539 483 713912021 883 401253184 657 840390030 141 42611955 483 759759497 110 93758551 729 76710663 738 635994273 53 181270357 710 56243401 876 484742923 344 246969755 869 707063311 765 887936565 292 593285177 844 581619373 105 755541870 48 10818491 532 89043498 98 887984291 229 450313544 862 584539779 716 106999415 655 800124760 923 140615812 299 128729895 601 932072248 308 463995250 862 88078047 474 796863808 755 310638255 57 746502452 905 28320755 576 535173527 457 905441283 370 291982638 467 44630528 539 589489956 821 208273022 443 947773545 893 378738137 145 3898908 458 329511256 954 250255083 333 426249363 214 608891500 16 470646539 480 848481353 303 881173189 886 889991636 65 712843229 61 715586663 44 816821626 477 279838633 506 530116957 955 157748079 861 870314174 230 877419028 142 927050501 764 332229429 869 109597041 201 322248857 99 425335546 248 759175588 13 505484666 598 909769565 33 4388439 554 938724954 919 808514582 756 150320318 795 67857977 734 726151603 223 388294393 720 344412619 780 387164054 785 825520808 507 181484145 133 754085499 58 134897013 715 659558300 121 663320427 628 530197891 485 871667553 159 593595812 157 223250222 126 25881213 801 200863392 670 11979506 664 430098848 768 237235224 998 123877422 26 248988470 730 775785211 70 36966535 598 215476902 848 829582210 979 442908119 178 299502526 47 348672772 404 695047018 75 166097886 229 385876570 984 876496580 854 795393395 59 889651983 28 833156549 712 382931723 649 110517571 242 746616225 443 935663677 638 901279044 281 445320300 552 285264796 664 355285677 248 781809579 219 3794962 253 580425583 284 138523923 184 180122550 710 723156218 858 206550607 753 88675695 107 995895655 406 870310003 839 72711895 397 481143188 510 945492638 622 588819618 261 21223480 16 942710574 710 838185346 946 975585969 969 891847099 506 663176770 607 227056316 351 598391078 638 236316843 72 694321778 437 12485899 461 970330967 175 166635267 710 685525409 486 577276061 151 515399920 573 321964273 112 867668123 637 87365702 241 419246532 525 653109864 45 485422147 731 903215809 851 989949802 115 6529292 551 772216468 116 20289234 39 817166061 89 983362930 555 304990736 878 790767144 351 817120766 838 934298313 932 403063016 988 351492978 1000 255338714 52 801058820 335 777940954 174 850733703 592 281649289 242 594818947 954 869381156 700 795636159 98 153243961 437 2957903 982 896186223 534 263904560 675 558973523 337 219565159 76 596131719 780 84066765 291 803321753 736 699109290 298 80758297 311 406294110 904 853943663 878 112640994 81 908448517 167 493305568 866 2911239 688 465428223 151 345643671 310 226203959 804 28340024 798 930688994 282 894392489 733 169425009 44 754014253 472 945431126 275 853893899 953 43338621 197 56510904 59 519782843 196 748896996 908 736949272 502 177981718 846 364815735 140 501561080 160 94669915 322 604814011 194 118123093 440 651228242 759 405928302 575 399277998 147 231830042 610 975982666 518 87851218 752 651254505 337 653125086 610 312937854 495 374601966 975 475903770 109 635437880 206 508213690 407 908223399 436 854281665 557 112626607 774 788750629 330 811565207 716 303376161 974 19240935 172 98358088 749 97912015 813 841452542 320 429429795 179 817305138 414 481212377 423 28266549 277 904738163 435 401259044 615 89765851 87 482718779 445 84474340 334 648927336 160 891036220 407 880059929 630 390371805 198 432934926 702 293541948 901 582045381 902 953618838 232 683377449 694 507485476 288 355328911 178 313200605 743 643120087 556 426245574 22 95380637 601 362161345 902 434152697 54 916742207 922 63064967 237 808264467 787 734731582 408 753178207 53 761839824 97 354753998 991 134658522 119 451874710 864 774428121 295 298200643 920 81919768 768 472423068 919 378907293 936 462797354 936 314100731 284 193474672 179 875470993 843 275211196 532 127677322 40 415187397 81 87484293 79 230316822 249 483963426 618 843446366 593 440553587 291 535217039 704 689601286 582 267477978 867 922560317 746 723956782 351 312418138 379 575037546 756 303683683 31 90308995 239 646464931 704 992341944 454 895088214 257 873083776 585 872681307 103 827962922 293 334422552 391 99967541 943 903737672 819 753109151 783 257524508 695 796723451 802 288387686 332 672115926 713 549606554 683 374450835 700 327128968 517 52203934 962 263696501 693 163036624 629 165606176 482 257239628 189 449479119 988 526026653 26 20309455 503 120558020 912 467526607 420 959745160 208 680716778 672 985114869 560 91744365 676 775651368 228 958749026 891 93123055 727 559139940 941 858064880 438 901631758 135 354388889 194 889577296 627 130596854 985 206278609 262 202456946 876 646684294 442 696464382 241 67571932 60 838951968 53 183691951 659 805265441 839 314266682 24 848511955 648 123901172 818 677362797 829 899642087 924 640554072 920 721947498 567 846734916 804 206567213 738 643333959 601 141408011 387 334417710 478 567431283 871 679403899 823 445180491 252 533507383 106 765951622 640 290068232 279 126047769 864 219235392 598 252817822 149 272584397 926 407218468 762 968498549 179 383289570 341 437554172 541 922756833 849 660558657 520 45728867 741 260679785 391 583520250 608 59315559 279 127214576 690 108632014 638 618578363 323 200631006 289 805952625 21 758608578 991 356043411 124 763196674 584 618875185 847 592958167 464 955069539 62 196658091 246 781950926 891 745035896 512 944314245 645 820700840 546 482635729 651 793092752 409 57842976 221 240498743 151 6669107 69 660964781 234 551720163 894 523979244 134 354795797 873 385663179 765 64995320 859 210451905 525 706715029 468 791618056 350 234623556 19 610789333 116 735316139 433 572904090 420 460057016 322 41897557 727 360554170 758 982212193 104 687680093 77 799736007 137 913583435 142 966076018 848 19072830 837 658378045 298 657428551 303 303916070 712 16517313 921 606410792 537 59478661 675 654490149 365 376406565 618 369479558 666 521575184 414 676691370 594 631836930 1000 102957166 358 773697006 567 997767943 285 287288027 450 53722949 368 384465151 732 564812064 560 941433168 811 565111491 938 996346363 591 392461190 563 405920982 876 714984162 622 125363056 884 972630361 932 625378246 931 235528412 369 740251042 779 560470476 17 574668814 953 748674152 688 901371814 682 83918000 368 516035470 299 240625477 213 934352384 696 858723673 925 946125939 764 97788733 423 6691348 962 434935730 404 613183157 945 643373786 180 401888364 524 120067688 817 124326241 739 979350754 657 128187629 492 122113316 967 71826183 167 985833457 986 459690318 638 983180804 569 846430983 805 637257248 518 304558192 529 334102163 703 670224690 297 975284387 299 27948177 871 199263566 280 974108389 482 638199582 940 165405146 933 910484115 744 266946015 640 155762734 411 198183685 775 310552984 573 915788144 743 331833499 430 287252712 3 309405863 880 760712397 94 316989122 417 642035684 518 849998113 39 281352380 8 271658562 978 910070068 366 104230986 114 848741396 626 183722916 280 338034522 215 803153030 894 846938604 961 506941716 862 12093917 98 671344714 792 286448118 984 326402634 120 745303270 605 733804487 761 84521879 337 140373252 120 798743697 264 542276400 963 273603895 696 987199386 405 969573371 107 53953297 272 644321875 294 757760701 348 757164461 354 534013303 826 488412620 850 479905669 565 83229586 377 798615741 714 931933584 486 949784038 416 476254690 809 601249706 725 163789102 308 658818056 163 865055411 415 459717017 452 296745073 430 279089481 693 946000452 450 31779873 247 548213651 504 497570242 726 192027684 177 867554471 347 779174507 821 180025324 538 66158401 216 637914057 771 105137009 733 92261410 260 535621252 874 466289291 706 194357375 479 949861299 512 629392652 430 859237854 825 280230598 935 132162941 317 59798839 979 760097096 791 424129167 245 823921257 13 877428439 537 340525893 62 919420128 119 181016564 418 379991984 276 308324970 238 15482426 594 439531063 211 660872860 383 403500486 703 792411307 38 317634273 316 133407504 105 715900294 720 615127366 88 778810411 299 481715622 490 500480276 466 579926156 193 614863879 658 604562695 132 631407954 540 800190278 22 909269723 81 126731434 233 457023242 625 769773869 524 920195899 621 620372431 593 744644423 501 308773392 940 440575511 671 574307067 74 528174914 58 157421223 762 678778072 327 441235110 96 405755142 495 647521664 598 27446843 260 121567129 167 408744617 833 316090656 226 102285953 607 792757881 295 301678100 233 598519968 0 70793334 10 928068308 496 742038647 690 301183977 491 406186847 707 981009502 257 641649028 505 953565747 584 135796742 77 275847724 88 996359813 751 62491033 592 99206286 603 542220495 642 740610609 912 134293728 79 218886458 850 384561630 537 377309005 429 376648977 701 124790637 694 372671478 136 977023731 115 106037295 230 522237613 696 728388980 652 717808400 72 300655965 682 922385740 460 405965072 532 167731514 787 303180633 130 728128812 197 891351099 245 560907617 152 351841894 134 181320423 52 128282687 270 391924080 633 758140492 645 243023955 569 8791150 987 727367409 362 283325408 779 685068714 669 537780938 294 67577588 205 9647605 96 856896167 665 75076320 753 908981393 501 954500282 823 688462390 774 380119143 6 745679547 690 274958391 310 817273515 186 681255981 197 744371567 46 782200651 625 232257975 4 853025677 955 386166807 281 47701607 302 577256585 112 692980309 490 418444608 898 704432258 887 83569251 877 578710129 894 209630681 131 884911851 849 253108008 61 482728123 686 612655063 937 124745808 610 439772773 509 633517622 572 385188276 155 974019556 637 173923274 894 275709348 129 635748491 595 419372768 594 499347578 649 268559467 833 655804909 47 725933968 277 991071371 964 464833751 141 53180301 836 177282705 763 164194492 950 275505932 676 812396176 81 661957461 610 873724432 428 678052222 653 312079972 182 693836052 63 178030286 984 98300746 774 82908547 283 908602455 235 824734862 707 724740942 195 227072419 942 581773217 423 744385419 417 374779240 916 939442086 390 657289728 515 206799138 316 227085880 288 925496986 545 902636871 442 879751060 158 183927109 505 726086515 149 949786546 115 404120066 505 348715294 282 769295417 179 485365023 342 645347439 776 100109649 491 269441351 780 704345434 266 543027612 33 699042530 902 590500165 514 24209068 173 124542072 645 566817602 150 250344346 981 889832987 201 779642426 112 369636667 964 95042538 975 661263551 416 192447534 278 920360946 470 610625822 736 637928595 736 441529053 230 801542751 359 383250648 208 144549107 355 514260443 83 304069355 198 604852731 885 227660382 813 288747403 10 891286069 442 64085584 644 701436064 256 87455922 487 419622698 77 220728260 91 108686484 932 962646187 720 748154022 697 506110728 210 289818389 947 186336986 179 547075106 705 564388810 584 938657403 660 63733726 82 751654305 878 600944163 188 510557734 163 526030375 841 284327890 235 90795227 415 114884052 524 740426918 66 833547528 224 691169627 109 428820284 568 187510630 93 795940587 449 229335280 126 433992930 854 678316906 355 656424623 349 339736840 981 869368680 847 548914908 141 794194518 334 690127740 294 702567397 293 480155303 504 126183920 206 813985653 848 386613441 686 726134391 84 902753151 677 728815977 479 296890341 514 313000164 312 472149267 104 98264240 294 927611692 233 464612405 531 664224615 717 815778648 946 552081471 310 258501295 512 514749499 164 709747272 515 835986133 547 268130355 579 758345082 117 648729160 518 802036241 873 774789783 130 6869853 955 83308630 743 105480219 516 604771224 763 185922925 749 271690761 420 344165056 904 955525961 111 213996734 596 278329198 327 621127889 138 805923187 541 597058454 558 884340143 993 293402963 720 510044293 21 734136369 559 619268085 340 183929669 731 595037721 825 285942573 363 261687312 104 616855013 297 187217463 728 511658508 905 751995427 382 346321971 430 957639287 418 52952560 180 522397528 663 44695586 97 350251894 481 142123735 729 160543562 531 525985121 723 720455991 477 84977036 481 596327351 891 369180713 824 727748719 237 632127218 299 950884822 634 822514878 214 856274161 934 182537779 581 78328407 230 709758564 607 465184092 845 245364478 611 702215154 682 553943806 262 301422269 205 456046414 771 419662883 321 299766904 939 809242205 157 675962720 786 663058860 882 985979285 532 962908012 373 225235586 464 59264991 126 337551627 421 623657561 421 65850755 923 438193909 869 398192783 652 519104306 913 92306208 918 928733794 623 101186327 614 950189135 458 591396206 456 244086411 845 835718372 991 408166572 220 363396895 679 6896990 163 127314514 483 143534243 606 47295639 627 321238338 432 917324589 472 416109711 299 636973133 335 606686253 679 3299813 575 805757309 918 900525494 230 937058490 727 953439009 87 336548628 202 941853745 216 880620704 452 722753704 615 423813368 549 361796646 625 725393091 20 328034328 751 802940307 188 632782322 567 818279806 641 815812627 8 817295587 954 256519397 217 504040504 877 486251171 216 888517808 46 710991702 547 389117995 80 926204226 456 908991390 124 660800383 568 598932665 15 685922576 730 31994310 828 916896891 432 952625368 245 507764528 213 316175648 15 46131065 684 89536343 794 478186260 982 830102877 218 583664745 65 147431053 217 557547916 596 848224757 8 453209161 596 710124941 546 360631080 281 608525725 805 631517121 773 170683912 463 432032000 366 555794788 552 16246999 960 948370974 960 394727262 175 608230305 666 745508516 700 847694363 748 527469156 999 493531702 743 55858918 990 690026042 838 322264957 344 884198960 813 903615861 133 986696207 384 525431194 344 889717464 640 284635902 768 770276373 405 888598377 869 617321587 525 479290425 766 500522308 987 650918254 466 373797012 813 938275677 667 764724018 255 369653496 2 721931046 629 163360969 783 932146846 546 39545964 406 334724843 689 836312042 133 617996695 403 850606504 30 58312511 191 596623144 51 399783121 549 683006835 544 598770470 758 465415689 836 809053854 44 391016584 567 345709259 127 126686346 113 738319187 180 711427987 785 916084224 535 750352181 763 775277349 304 796208585 483 216885341 481 109639592 36 39208983 50 685031842 259 241045698 478 882241909 272 873875008 700 283614528 326 116816563 381 982824872 705 643629747 560 634120623 679 707981859 705 229778681 375 768179811 616 781999796 800 748000616 260 85138626 154 816884682 849 987778176 148 467937311 577 169349609 788 296861163 279 526664848 273 449004373 537 369073547 737 345487641 564 919804327 712 193116446 741 930530600 943 973380389 586 230555637 350 83867387 607 431676235 500 125733450 611 243745927 131 925047326 498 518225633 944 125067562 479 148012326 444 248335760 584 892414579 33 622589491 240 222693421 805 173184432 526 291404189 743 978073179 806 292726057 528 296475303 96 796344804 589 111873977 973 606288814 695 460199529 939 473609341 392 762943765 347 841166376 879 650945620 451 360448249 557 672312693 890 712171787 992 145894005 155 434458978 176 548651933 32 324560086 903 936619892 292 182417955 585 365985985 146 16695697 258 810553756 313 977813098 280 355036641 406 437974404 646 597708467 473 178831266 457 855960316 910 625856081 67 471348163 831 84382252 64 126925717 459 154450050 271 122755492 703 552055253 589 199033350 845 312735853 98 398844586 783 116679458 985 43918058 692 473304085 620 306227237 22 790965764 22 45870612 294 93260801 140 280327566 370 442415527 899 352235752 347 29262441 98 955164425 531 364608354 373 299551096 724 388394358 456 953071350 583 779150150 230 741049705 37 424240861 26 913730980 931 465957563 593 711086812 848 929078724 956 364670570 605 682207733 769 828460660 306 284463746 715 619604441 726 787862496 347 278904558 751 698857564 250 60842569 683 984444207 704 212391552 409 992622493 730 407771340 885 437190451 543 323966568 619 941029539 211 668135267 330 196411331 841 112886348 172 777921961 794 692009032 971 394719374 103 258814799 189 846214016 1000 496128902 513 126020813 190 294623186 191 765353804 549 971146520 841 804220443 921 962655356 8 439301840 972 79849052 568 406704145 217 642290550 370 888565334 782 503797566 934 309251010 119 787714470 814 652023240 795 55374243 922 348611225 948 548717961 624 166842808 81 528872691 204 231944433 884 463376270 54 271797727 402 242654628 69 963587326 421 48764702 281 364501941 781 52015836 630 58521893 627 172256978 758 747498719 695 440739509 251 272610489 997 240816923 281 275157035 974 583233546 780 850043425 346 569251139 725 4018907 46 810157170 408 883424131 436 117341488 728 71471515 839 396884363 342 799295425 681 532734770 619 323376021 387 119663049 954 180724686 622 51755605 844 620146536 602 260535369 291 958762539 146 856327368 262 801952411 81 83119695 780 231276991 533 890746326 214 954647933 864 94653271 621 366263556 555 369398385 48 5225507 959 988525433 817 278773872 512 483188768 549 472044405 320 46205828 399 153869803 77 941688343 123 266213001 392 511908275 635 928224924 878 24368776 945 425175604 672 715680271 244 871258342 818 490518106 224 293220269 98 1197585 503 1662070 673 780990379 291 66704322 860 636620967 97 773282509 625 532896115 96 85499074 962 838281763 39 714674035 387 640719773 890 333364261 433 971111266 150 786126058 517 110989333 144 777200127 964 564484161 78 220375929 567 252456822 65 828915913 401 366331144 42 330999987 520 585164115 689 217016204 794 5702792 803 24511475 972 294225232 506 732409625 186 321743627 287 501252679 44 699595975 519 188135568 917 378200740 727 554769737 711 615762999 202 21125773 300 671925163 66 777453265 38 691816806 272 463609215 181 219510970 157 286730393 600 142393895 283 187933110 945 831402640 175 823054232 298 362480426 973 364712218 831 330708564 877 224300767 696 386324783 610 5414205 718 698986858 78 636443861 162 491305785 677 874168527 396 44454638 184 276617984 340 387716217 743 227870454 407 1241852 83 899528259 698 440728787 900 143988441 711 427057395 265 214481393 661 290216041 927 452111511 463 927024080 197 683009595 717 423272894 736 688047193 911 195102989 852 82121817 63 981806603 896 233002996 944 986742531 489 422600038 94 319526039 265 923098073 863 792356618 354 483633453 609 452861647 410 328862813 243 832305565 273 882271699 968 953794724 31 448006135 820 348322320 619 525108728 818 409053392 731 599674402 599 103339072 719 998323331 169 329688011 191 23433963 531 500464586 483 304410352 854 195328582 48 278467536 462 976018741 326 721114665 376 626614310 20 674775096 214 626766446 406 345337267 930 11080969 111 89779505 115 415592392 929 649611158 377 174864600 81 549873269 487 255902316 735 380329516 532 8418060 472 582885382 44 13214327 107 373439243 692 858925279 568 53980613 43 89310075 411 618246665 767 723878775 851 860439422 912 218171267 807 705110556 463 252144310 387 71872455 378 36219959 293 726316109 522 667377450 46 605495470 838 955254165 167 51973365 41 847543680 594 619042714 101 393067160 324 546983958 430 511597468 536 262470920 907 101821375 302 27026964 416 803198344 422 926459601 591 203982089 189 450632295 559 188487573 553 205379711 429 673057833 672 309926858 397 737904786 591 86468637 131 8747257 844 3573508 153 583506829 752 954775741 97 805884026 765 676156519 686 328821527 420 176912323 678 743625075 266 943987952 455 891029405 947 408587254 546 245161625 600 765825715 474 876972925 442 985287622 751 388123629 134 619562699 306 566797600 551 723195700 164 819435105 191 145935844 59 530785250 29 109241686 837 671350128 641 734429140 540 918427643 710 843732589 842 16418190 767 730342562 693 223696615 158 419891980 843 176348722 489 687671952 791 726226366 50 166059767 398 656370968 302 887822846 756 883279042 888 976328570 175 26545544 883 528829803 957 454721100 429 409090206 168 512592376 649 551521704 479 165265776 382 770077504 933 596656281 476 211547071 910 13261973 379 20281912 467 141856422 153 713155981 134 212759565 777 708226535 951 761927474 61 554438802 766 59371645 753 86733391 908 347451872 775 235940710 586 658172019 52 620856984 690 722238258 984 89673319 69 977480131 417 398014897 774 81571882 41 265033437 271 545958970 788 159484573 560 929090676 25 95808440 794 991771576 255 416100451 728 959514187 499 112077217 571 303921580 664 310440763 818 115315119 679 408270934 871 62248886 950 304242415 558 732274209 71 201222257 562 205229834 402 302158438 370 489955714 895 901680450 414 634085590 736 956026114 431 889776002 42 496311936 714 103323019 408 49440704 75 179035782 933 975569107 126 89221966 230 62411526 416 533681617 246 631192843 817 7666237 497 402115072 925 605038130 535 12648629 540 156164568 695 763389711 475 220850408 721 122590712 798 248698919 367 485176645 892 765500788 960 61670255 585 869097758 617 446547316 864 454670983 629 87194954 570 957562609 189 425111649 714 576339567 119 693320072 620 493832552 391 228862131 458 273321689 785 697047438 797 263446128 929 828810066 889 403717167 924 487994318 466 818854808 407 305834291 669 825362730 984 213322343 465 769028224 788 713346444 482 660370438 384 453198466 582 363457592 74 721273778 129 798839744 910 919444606 898 857739612 632 79768395 849 194343084 907 6367084 970 537374340 906 436579466 653 865277282 204 570416304 299 802443144 341 228294213 838 783690033 632 614968455 485 140658413 995 205515419 95 47572915 66 88623251 981 980411982 257 416422988 461 709155235 910 210563781 623 196243005 883 708870221 235 20938604 149 942914728 380 916178932 24 753868901 205 652509190 802 543804229 548 723450925 506 94530540 984 434740641 341 99287848 16 162764276 692 99057747 557 414966287 538 516467576 442 637512152 720 170006700 839 909628073 399 749290943 63 989704366 177 787935449 668 867631743 5 17698355 777 743459416 791 221195788 152 808906373 558 809300112 449 858908022 412 174805595 119 607463131 411 708010758 375 527794931 133 979627389 453 572615617 900 199355500 507 69796421 487 411999089 418 9304463 152 501487157 29 691438366 72 139688656 259 335949771 290 816941817 407 204319010 448 501960323 682 421438702 317 450310156 856 784610233 357 227701001 511 746902359 275 447872600 588 755149688 92 303325695 379 130685220 713 911286860 292 541281610 704 507205079 175 614309612 534 389102550 778 134770100 876 53088770 940 344766527 740 902219901 611 593920764 743 545603018 737 378535524 267 469218642 324 688056805 101 155656914 120 842594607 476 667292138 821 807169811 711 284345799 339 862581105 811 13802857 238 733736405 274 896366438 895 825926356 489 56858507 924 872434010 852 406756056 678 294734557 115 769138027 208 329396458 453 675966563 965 210891260 102 30247813 914 428967434 288 544484516 437 109818347 771 924948153 573 899978605 611 142384160 181 496491303 935 354225825 155 950872058 821 396083636 610 186266176 821 361616227 285 654981124 796 848734618 886 66620117 811 765166497 820 920402377 924 88602137 597 992481474 761 972618846 182 167810308 603 763347278 100 592956405 673 797467108 812 239381798 221 8431396 237 887112838 699 905893070 947 86566569 16 106679420 83 356707598 126 15686243 251 662739494 613 541129310 994 82866810 507 942284065 401 425026845 143 803877045 461 78908036 466 808493739 33 484057412 682 473201857 2 933149983 226 225982112 994 9828409 789 290901704 659 291761929 288 263806326 843 257408868 914 466431981 159 743314152 464 884002416 876 119533385 782 432400821 632 903801505 649 402043177 98 648937369 892 588254826 570 1039583 17 647783417 883 49454816 223 357021186 172 325434167 320 484559761 423 94362707 127 937568969 338 713556546 472 142419000 609 500383985 429 789757077 259 761385557 837 544566380 386 249590142 371 249378369 816 722536937 882 323869498 546 722617110 447 517818404 642 637091635 466 534682551 939 528637702 217 795377366 683 862409827 599 257441435 48 89614579 566 107133677 235 297482662 352 983342306 3 344040660 249 478057255 179 707357185 8 13120598 362 502738046 550 580256332 394 135076277 484 192712989 241 782688496 641 635482632 766 457311738 306 161017026 302 202741164 836 232785610 350 564313195 763 643583244 502 298454976 438 853656223 583 760649071 391 801912617 485 600657107 869 448601480 473 557295887 858 495501531 443 181630021 441 394649938 729 745861948 971 823135285 506 344934842 820 888316279 934 62083121 683 818039912 132 895018928 451 645773020 426 873862611 687 678029980 983 608597710 889 629221053 951 424485667 165 34241358 273 309139009 911 453445852 150 233521901 849 602373172 333 561927430 239 935822527 249 777774787 728 233370545 437 387868639 789 795822371 712 567320284 721 425116335 745 82752771 543 594799746 931 276604997 455 994754285 454 671817280 791 731306529 498 742301405 117 439269029 137 309576839 696 951470257 667 858283373 757 662324154 626 149105109 660 310949665 724 270412036 422 223183235 129 808202037 207 929272990 982 277911644 50 741567144 139 537471736 481 289492467 416 888546685 999 916414260 587 67140587 461 459809510 257 637088756 460 976363562 25 309329245 646 399590766 835 889297299 350 951500284 8 413510694 404 434844512 903 825231890 726 796145572 30 963264521 405 623585018 65 36616351 36 989299764 776 687401012 548 570058796 926 811187844 845 398505608 81 106161917 860 408710713 887 604722077 12 773379603 230 722997200 69 757108229 944 874415710 676 923590490 758 598754584 402 693257063 618 341735752 705 276528685 909 152399170 143 677806963 909 913851196 2 585530975 818 699804795 225 517724900 899 765020022 584 943051623 554 489048282 818 157033596 830 765546348 502 778792316 484 332416863 518 964900356 674 736202469 120 186446963 126 211360365 650 115734986 637 871120771 443 53946586 565 446267919 457 963823186 73 225655053 570 388941603 81 141145211 93 24416309 59 38439159 377 999082128 713 943864868 555 157168490 88 572841803 221 467136021 580 615850290 242 847567002 246 350062586 703 405363560 117 910769566 84 690548882 911 596960988 371 953500028 668 797462395 921 733514601 471 441671526 937 186098443 323 768223515 6 250602750 943 301833584 441 679795293 846 764794328 897 570463178 953 658939418 9 532686090 324 660572707 591 898573737 623 642139313 646 964353335 627 969080464 830 333676262 5 17655029 670 271842500 442 23989958 270 851672230 714 561430631 826 550949774 282 282905060 505 505544032 188 459894219 909 312635294 977 376709334 695 451117022 884 829686618 819 665230769 99 746036565 237 451754640 851 484249222 161 473777196 980 68121278 118 247256857 982 409350617 863 362902700 381 459526004 489 696358301 514 65000647 989 242591009 982 807727856 928 758836548 339 182816731 450 218048529 143 638340349 2 640933073 19 876440386 212 949506019 111 539211173 498 61986832 522 171216464 13 983897848 234 874578252 115 777565292 266 511075969 51 689071014 585 631499566 351 805819648 686 717755950 375 928146203 563 941753448 579 34145125 923 252633723 559 882544798 883 635347374 53 15870917 727 148932297 796 111148374 953 412928574 551 208644266 452 925774281 601 568967022 423 482728550 296 345581773 641 548437412 469 268803945 537 380852014 454 249632702 427 607043084 981 668898362 445 674142029 910 22088729 343 833619914 929 794972452 189 784241316 195 814523422 699 226084348 297 458456223 638 218346371 198 32219553 326 473828843 619 857790471 736 868513917 473 315438805 272 302271685 212 831459282 309 807631436 271 741572156 856 93023103 442 565953330 389 189560811 30 446014418 548 131147893 566 646380316 587 554790321 521 87964417 149 449291649 262 248685493 185 535021694 296 731180621 38 583218824 190 777783744 779 337452452 231 269125090 978 172441371 629 361734372 711 68444755 15 302874566 80 137056095 190 410147199 446 558540160 151 65470749 61 966473824 102 895818763 345 328247445 688 960099596 720 257744072 196 509240810 398 464046837 548 123166622 132 932836891 966 694441934 797 589171551 131 440842276 286 594829961 479 928159570 674 557544617 721 661847331 819 367771265 713 582355063 95 594407212 786 935955918 588 129254771 941 954471794 428 272874336 346 803103136 585 527341618 482 680180932 335 796363201 872 871343121 52 397455272 980 385579877 118 525456495 853 186353574 320 671067751 528 998456336 733 386342709 424 681201890 382 487131942 212 190245268 705 671931074 182 228674782 123 774863260 699 961019376 721 706171581 670 570909943 405 421517951 419 685631514 752 94744983 977 280959573 383 982384250 742 219010845 210 454888723 861 566362 723 562117694 210 216355022 349 494985667 666 366560468 433 119381826 958 12244671 631 544432427 323 946397358 264 130733299 451 906447259 435 219715907 236 830455336 745 407734441 440 724568699 169 670384699 258 102199988 232 549191217 432 981058416 815 934061287 258 811163616 609 964376173 507 14788279 990 873854886 846 575037008 745 97253525 925 525269074 109 664229361 97 293523960 683 245592673 105 501049165 276 756448963 593 134638283 80 747385383 832 467031775 801 267672735 543 471727875 572 102248814 620 42417144 442 914125978 923 158162839 960 967105217 492 740793326 971 49098377 563 681107116 965 900623894 378 235233171 956 290409288 315 80106508 613 641481900 565 707440297 771 398120786 87 190552571 633 907933992 418 354378664 868 597565111 515 861404479 352 576106563 447 432134179 763 724249452 103 84688101 184 276764744 57 230823072 437 134069120 22 478759144 469 835600599 169 222051343 976 210602360 600 168774647 403 992818879 576 855142671 947 875757858 239 641950960 884 338617125 196 821013957 430 713592936 500 2800075 37 742660830 733 996072224 42 246088996 682 856566367 899 490128643 200 167875478 850 499317238 392 459505495 712 244731365 719 882812464 168 578504493 523 642630163 431 476756992 653 325738496 48 113134870 539 933632311 419 46663126 140 168409847 789 854502751 507 606270093 857 153300658 627 574324440 279 82941015 5 468045558 843 501953027 474 693344372 959 645995228 540 648974902 348 174274396 416 227200243 770 88163387 704 610484909 66 535789429 422 275197865 78 568166330 538 782240256 213 979588640 10 933386969 462 996475886 167 43628044 215 592402882 266 803360977 976 176596497 221 632067842 662 600055957 926 410668305 898 747497956 502 17985058 894 702652683 193 194033666 476 184290128 756 684265438 546 442750264 992 866730118 306 291667430 516 813420447 446 626161209 956 424794744 951 962291785 155 676879467 91 507825138 144 160749262 108 344073941 472 903213801 478 298208320 434 813050525 466 241361164 528 339870661 283 819279344 110 944413007 155 192062158 667 323305572 578 878333256 202 213564972 287 155526929 287 118198397 639 284236050 20 624448441 555 387840136 374 427779962 510 958858310 836 791247708 250 820026413 282 309645969 128 847863660 747 43369946 956 55791676 241 150035897 254 798213877 865 713086617 523 697632142 112 286720025 365 990876886 438 894740492 995 16690202 156 794120076 177 132835970 639 572062083 75 392210430 686 86062778 571 30106659 584 903156109 532 367861178 23 960161273 10 950896895 781 538768777 459 445373383 212 67856882 47 686783159 608 314282093 708 135322742 256 355071787 728 53195551 232 503379185 683 901188278 660 876724680 969 759834076 897 367660335 540 578036067 595 452953328 275 471852879 499 855460774 393 260228559 588 631222495 539 182576997 351 167092385 414 431901077 715 911763019 250 923174443 49 31958654 672 904995164 92 217887177 152 612784428 796 270967451 942 439116196 44 561444313 452 939463613 575 717647952 290 878746226 686 894461093 221 367976696 597 155114883 160 163764453 842 150355078 700 497820101 122 820231346 316 263145791 36 676916876 944 884692333 448 341322468 323 839199634 173 65556443 136 140803183 323 470039455 894 439086440 172 826693111 628 47741724 606 498437049 38 188632278 792 852561323 143 191582640 404 242890279 474 58691640 611 820059525 712 226376036 827 615412875 584 202308636 352 801773198 734 300403605 147 790669927 366 703048645 252 858304119 926 686967103 584 647141384 789 295291038 922 673600493 654 701922316 650 571950219 268 828141509 77 749601339 834 560575513 475 967758445 717 317978129 669 450106085 725 876695961 271 298848204 333 663367119 633 310636879 49 186930069 499 367996601 234 653715717 657 264204871 704 252975198 795 777436954 412 197883496 232 514669451 706 21286968 118 432639028 594 853044083 545 40215323 421 3891267 974 73471192 681 206907567 527 257441631 257 100666500 4 745421542 808 407741754 559 896112118 513 936990700 502 833890054 953 736764013 258 944085854 112 735826261 947 719951326 898 583919324 337 350718614 764 599596926 438 21455966 435 801394143 44 196116607 961 618763703 402 307534485 879 928540177 757 99835021 140 921567513 32 376680677 856 92460278 471 664262673 223 9944973 438 912226730 536 480476094 181 384674107 972 906389370 422 428887116 900 745078555 950 117593726 567 499926679 24 55639491 447 254936118 951 610956013 761 736767949 853 722336019 882 576138908 961 934440774 924 834510592 130 303117660 630 721598296 239 942035488 605 8018782 454 194690282 612 770605443 281 31745817 774 654961251 264 915698700 355 223777202 369 202698960 483 911618502 281 692424568 909 87990438 463 945253542 506 703399379 264 523122121 539 527774458 123 396060757 873 453585148 161 214431514 874 797161791 228 545503508 25 470081051 155 963461896 55 238552980 4 996482881 114 442946062 212 922763425 250 123482709 445 335306698 541 417348237 458 619632639 603 122967910 239 740754577 752 67681241 732 907734367 735 397273936 885 83968990 611 508008953 623 231388268 761 140308606 764 37225266 109 111647230 24 854106369 1000 910585314 690 663198802 126 373242523 465 868229371 738 181512652 703 837971954 431 74828446 41 251850001 414 310751409 724 451489476 941 293352883 166 882234645 926 897742794 874 105329086 327 778469991 919 995487114 572 301658091 550 196279335 423 204722757 221 415142447 88 329806008 261 836712326 726 689535270 624 515809472 957 856802225 373 821097914 101 211485394 922 261168125 901 876203245 6 974739389 154 421003923 877 187422467 597 730973330 901 550288820 308 29601651 903 899999849 961 890684746 769 885964669 630 385379782 563 675227064 459 689777402 685 880033694 500 410330804 830 593003230 787 970785210 122 997340109 375 239150465 476 699867344 778 281807849 77 878788776 68 904070998 422 288824967 603 462934325 859 386316363 508 690854704 14 372910502 690 409342912 102 562277135 829 388475954 602 158655787 926 765799521 447 395724107 360 519723212 694 319775544 527 304209616 814 553069913 398 267634896 517 294789617 459 270604087 223 785667066 497 831481740 787 518705041 986 301078128 659 116250711 429 113826348 882 840411444 440 454182651 829 234681065 49 228549755 563 597061982 460 688995456 500 520834289 705 321034986 923 789550149 247 54358312 680 473409509 438 217541697 17 70492499 468 365508124 750 419744283 607 41184794 435 307893156 223 710053526 87 789390343 502 459505549 493 943541099 995 409882791 773 196940958 764 192070678 143 404104880 367 845090688 670 858417259 990 503368681 566 664425632 13 926503369 193 966170553 689 336150321 207 574730964 438 244710612 885 101076935 686 248906716 398 182161157 991 433524598 345 880135249 10 59456545 235 400100979 31 242132795 422 524741082 913 211970097 195 391980472 692 721078698 153 251658213 8 842979254 9 110604069 778 62801415 567 459689008 433 784102884 979 221323341 177 678288042 670 896035898 582 827622726 799 566518019 601 534533094 321 531598578 819 854170928 415 22214907 525 647199647 942 216814929 787 802156213 198 564998348 477 222959168 405 122759833 955 50126467 416 999052482 198 357895842 502 588453738 101 384648744 593 282293106 233 96477215 972 816912237 968 857701906 766 908162738 142 607821496 159 568567362 242 384447209 626 568882756 901 384398527 475 693912774 599 586957491 562 279149085 105 896403885 725 554653312 661 457067513 426 703752711 185 48476479 402 834974273 215 811448347 9 710128868 738 158606522 751 767519672 574 255493113 668 888190152 966 55435789 718 572990723 883 774623072 591 659952008 65 717279466 796 716347438 133 687813684 449 390601994 754 162745510 839 477132525 265 496816252 624 84509329 575 788050098 225 738690804 816 719224733 949 286757080 583 112505409 751 222410818 947 491839153 538 797398355 611 524067061 234 918869020 2 422118301 293 733859037 538 811145455 446 316478147 80 619702151 713 582287275 100 625330455 330 491547880 349 266130646 902 486949520 943 415342665 202 395284814 533 286026726 781 458343428 268 20018189 266 96700661 432 20902048 150 454285229 759 604514660 389 491493281 296 489280069 707 145119129 931 147476028 835 847996225 824 413687374 525 182621367 883 582398669 507 88809554 837 566168593 84 93491967 758 750607565 164 270171961 968 773219813 411 58222636 205 399211144 930 503338398 963 963457900 441 685199203 86 521033601 477 735775010 538 774716136 495 359103777 757 150437281 778 601059939 122 178728013 661 826353741 414 341453712 265 876447158 744 293193948 238 492740121 573 675434663 838 764621864 352 193588195 767 946954628 479 853292960 66 632566557 316 217648301 766 882508060 686 572610173 250 48652133 360 666647254 647 909393985 319 359408383 282 801263754 782 625881232 162 334527716 766 101820291 595 978872800 783 465277785 969 756770703 826 942835986 919 771565760 632 537344542 244 861610296 144 111477444 745 751521894 451 73081385 842 222709407 595 938423223 580 658970245 260 301748693 443 597206153 485 329462249 105 164557378 772 816489310 597 277055254 826 901829592 824 798429425 939 981362587 254 710566211 0 76181370 432 390277614 617 250959286 892 611656797 318 61428426 109 903982110 767 24930641 1000 196099803 68 84108935 962 406158535 98 619329806 489 76667200 347 119398502 397 133066982 866 803370238 728 143952708 193 237436654 102 168395130 44 414206085 332 319367832 341 788187473 177 243866404 326 900828445 652 664465979 444 686325060 641 320770495 829 358139810 444 372986132 2 537351745 626 630340984 822 876104811 561 509679148 372 82585694 422 450016531 744 325880816 921 217137461 64 937313184 196 945559589 200 646964966 989 733437179 608 796508987 593 145470438 526 865462068 270 272559593 585 794792283 158 668215193 830 444102410 90 267711213 520 925941198 503 482602727 305 657838040 216 82292665 751 619208458 340 986054353 348 182231701 568 205827756 911 566307079 188 265069039 127 314044092 255 767926303 134 148119054 108 299386187 808 320900939 730 814674832 263 720463145 151 827858154 110 464349967 442 521115533 420 890668869 641 185869296 371 513423125 299 592995990 383 223556839 784 444519649 637 932511010 63 774120405 509 336216622 182 887460023 313 393299889 831 981419133 802 855698442 997 785752525 857 821896963 16 411494992 521 947342787 469 422570227 348 367424858 173 301453615 72 27515508 688 384849908 54 925132088 114 612474103 270 96704860 735 281453456 848 445787290 869 801951129 414 703658593 951 859488630 369 600054676 109 934876977 328 674138031 366 620364438 690 730142999 539 325439975 12 464991116 429 985388796 764 386095764 792 320021362 946 292967225 546 239337720 659 591244234 240 336124110 655 89451152 589 175510966 610 912389097 942 267173930 210 155565384 236 683952715 544 700955203 38 596262222 741 720105957 996 7835691 246 686427908 584 72316138 310 222274574 497 938641615 221 791341714 158 350061210 693 92838498 496 622487376 302 934772971 950 121503745 954 878606193 620 989410124 136 310600368 120 673424413 127 521203520 436 574279133 675 625406635 78 444278027 291 699820304 242 910171618 118 471003333 739 41199178 275 740836127 27 195120436 501 994104106 794 672121322 355 245993908 494 268557695 888 95362436 873 19657149 455 967293744 202 200790095 20 324361130 951 957807861 986 307724435 269 486513415 431 912802469 93 258718006 707 712499726 793 602620673 150 478649365 727 812052800 271 844548608 324 705947427 221 508076258 364 951128464 26 430472586 659 225815314 938 235046486 958 674486343 271 402592718 113 849362473 592 623878766 621 631858752 116 571688259 421 438865601 999 377383680 182 947693826 998 215969437 347 937977780 149 825617828 337 935349988 198 533119002 624 224808331 215 244125135 228 916029629 115 871337281 746 141958436 604 50792154 359 182161254 724 621676247 163 411268706 239 217016121 520 134927 369 678508653 56 764466076 231 42924805 59 132828484 711 745597523 242 472943302 559 595053137 421 730926771 568 643810493 351 768337425 860 523868499 215 66424828 408 152433489 219 374359953 869 526330279 864 69919838 302 727456391 675 82772734 984 526783579 211 289458721 989 312751233 955 498250663 599 618286365 276 523416657 131 781782048 424 154889463 281 850893015 866 153394478 523 677877297 210 448698352 262 31238577 687 183345737 815 542276647 59 529364753 542 792575688 134 137436761 984 556643973 271 75015399 832 829561399 947 695563242 669 266285537 20 542008237 47 990757770 442 846691541 445 171593813 497 337145490 75 33948640 720 641430596 888 27236260 282 610475972 799 775143336 395 951745262 153 17016379 857 623880832 586 757054526 869 924612173 274 196181692 439 1329189 998 47749515 378 956091115 959 393672777 454 653958627 377 862245206 576 921563215 460 818940462 548 831772404 646 650714730 768 753769704 113 196759024 216 93833665 939 678024043 591 314254549 570 812833582 524 180558608 372 642404101 875 852741982 732 356276712 670 136804590 296 689044779 877 773795039 943 597839609 584 664744656 639 906016774 456 357930224 117 475353400 26 433848278 7 757257346 10 151815534 723 732648459 704 973017410 586 804030153 879 106631021 114 717892050 917 86469848 194 166169561 528 299730913 342 343739689 920 851376945 659 73254316 262 380729507 4 849931050 641 451995460 189 415679796 870 459183055 807 278928057 972 992031144 226 381322188 950 887686764 415 842608636 182 696000400 656 6341702 348 684864747 608 26699868 793 15402452 710 788614125 986 427475416 231 195679439 250 986154892 86 509681224 924 379740058 343 514297102 739 502927822 815 512317441 854 858653839 670 71827032 247 961464710 651 143663410 631 516943116 227 125714064 321 283026281 594 352901480 793 164912567 432 346970710 167 188663649 367 56443270 935 473930294 592 812514359 690 312003749 918 394090176 464 309619384 58 914082982 505 746883990 882 440928398 646 197034271 637 29401850 587 481432352 544 483809496 561 830202728 842 907899484 512 977035117 793 854666086 137 725200771 107 422085370 581 521654489 384 665905096 609 287002158 936 110548039 288 152837385 354 414517995 708 118164233 450 679890804 0 102149708 751 808618083 877 738739074 155 410770819 585 88064650 655 554855228 20 201502799 101 518302429 855 973052387 979 991552998 272 274918543 661 891078828 605 732434420 946 299947602 367 423617873 777 287858245 720 410382987 772 320803385 495 855541347 207 606087619 369 566360638 5 774068171 773 787408266 88 668898439 174 1393373 701 459477685 453 983564160 994 32066494 629 337036189 925 809108868 291 848316242 966 247003867 135 757026929 947 328721152 383 29560528 558 734415725 929 812367409 179 959709451 353 778986983 458 730359560 661 56439664 225 533318052 737 137816705 747 525596862 46 924588339 266 476124681 180 79104720 22 78811369 821 123492548 565 349556467 899 399127466 326 633117438 386 491411060 341 641238615 316 946897596 685 22610082 263 788555369 907 645832102 628 777534520 356 549721101 717 922759401 514 982000800 313 516926688 661 140152270 249 23957582 786 316101754 655 658842070 420 114845970 164 769084450 464 124519521 232 38760160 327 109859371 133 421522630 385 202970167 913 851068708 16 62722648 566 738208870 173 824980708 459 157590730 692 464281412 199 111594282 720 499266255 978 520183637 307 374181527 344 801410999 766 324531605 988 438411906 264 518215431 519 120781244 151 697258237 513 370693750 758 348456784 809 973648668 383 479561303 688 919064341 797 172831139 65 31404498 111 385262212 563 161980139 151 742887868 223 25616047 877 539020067 755 96800878 654 150603604 772 447770538 270 132089023 672 63647371 604 764642879 219 75299257 849 207225247 915 945463236 863 50252895 25 650352452 617 404288656 712 651567629 173 991178427 480 794197804 294 101114988 538 794903032 847 619231115 6 505234866 279 835448384 145 331539113 311 804259913 222 314626640 730 449369002 90 660142721 437 773867946 80 265916133 382 606671825 115 585142009 480 54461680 727 805328508 263 82034449 198 524333911 848 753087880 786 438823643 574 658447310 873 375364536 886 483243382 161 129975637 969 934908739 471 252047803 290 385343956 17 719378190 551 528788244 682 99047581 124 241489647 138 988772635 84 17129295 758 735368221 790 166165256 937 43347231 218 575875193 83 952465145 873 272799068 20 931346798 648 282056206 442 197961674 591 795230362 217 438379162 448 331326152 714 273662043 166 713780393 462 467308919 797 52812503 947 424081831 139 832124438 882 368539550 929 290015280 437 711235738 333 125814027 947 942673784 43 110241041 6 387068213 718 710069690 997 231060496 698 568294268 668 184066398 999 191507994 126 706296547 222 717241202 368 872869067 629 740979759 362 451916933 436 66327814 872 208673427 116 848063565 671 229659299 456 93391100 88 834774505 392 185459377 481 195365366 392 797841479 677 294232689 284 898663278 982 825253204 507 186780089 707 41108526 434 462958491 812 96242313 771 263816708 903 857792446 710 470776194 253 619231075 73 730601689 472 259503376 290 116003397 115 923080731 712 241991297 566 972408469 430 320159489 748 192544849 199 924080259 935 212226947 244 811184189 710 461290885 187 675662828 124 758553403 155 495439159 635 256082370 531 532332981 706 814291756 679 362241171 621 702448057 365 501444884 714 889478226 890 65694248 587 224240512 547 58547773 759 731465102 341 440753427 653 712960785 32 438867909 567 658923121 363 573738363 492 188841420 176 31606586 210 292521473 770 374042450 626 205986894 218 351207578 392 55570607 992 276614413 464 250497679 216 358578704 186 841387776 156 316557873 403 786933998 362 848282462 491 21137801 767 213230191 512 746818026 644 877135653 260 311859479 678 458975395 720 899953149 537 459982155 931 775130712 844 558657596 849 256545390 620 415074451 127 962799287 667 904283063 13 341273830 902 53793492 615 236651230 664 553927250 616 604190006 57 712857371 403 117338553 572 296976577 430 861528694 382 748734878 83 455445406 291 360883950 707 242746425 10 266085223 352 773709932 781 177971587 168 139762449 370 428422254 622 792678884 587 467376851 671 540436828 830 53384194 382 912339907 439 476215940 122 866543624 251 357748540 66 199139933 691 944825722 758 504952055 62 235572253 470 263320472 581 127919286 254 288294446 527 871495929 819 152606448 830 215303412 81 79614299 447 59860053 941 237444851 636 181272564 309 75549408 86 799993215 150 500391835 71 478979894 726 95137700 138 463154076 832 694834688 29 21698551 329 646018230 543 395504362 202 840626065 11 281399828 650 731186348 124 630500976 336 579507755 752 779798090 737 361561599 526 209590542 725 588441620 300 279853743 607 657900164 24 242460640 418 113144589 168 571368234 103 239529898 823 937489737 575 970841315 390 700932896 155 615028315 668 321826187 722 256606119 413 509413262 861 471877567 296 313841072 419 608666975 204 33676710 538 769537625 521 737535436 672 123190405 559 293854191 645 650691685 915 64376825 851 710625729 469 900895176 714 640584101 193 183648751 197 965192453 982 931946227 561 936935566 332 699512748 710 214898776 247 977069344 160 28060812 92 856871308 338 591901244 540 662997413 261 377071029 655 607335091 324 88226036 421 445983527 598 427619644 970 947690355 263 404960006 196 471519052 902 845535530 610 931888904 643 244332172 18 123199910 227 592959200 436 983082877 669 7768613 21 629866029 19 154659159 544 618126590 58 282562566 34 497537819 77 269952045 155 537387714 123 971326171 747 548968943 649 564073926 507 227619405 901 362734418 754 729617247 612 920164242 787 378881379 693 354501398 180 175899373 243 249591795 637 181663701 208 626698613 158 598909979 145 572110241 603 196133819 109 644206469 366 578678412 693 666028714 836 471001117 639 957039964 16 109670902 232 352405353 145 656682767 360 691916267 906 258250582 755 197545414 8 686808342 502 172037888 716 864484518 451 854114419 610 53860773 374 683997647 489 444205184 907 356647796 116 813519331 825 997368503 834 137254258 197 781603068 415 766661753 248 7497915 544 258400861 870 817066257 545 219535922 81 51086669 844 451293829 546 911388386 226 75158131 551 373987964 381 221553813 349 460568486 800 933220749 198 391050295 385 398514119 48 319111327 757 260625074 595 489528011 583 441807709 900 91974949 16 283225679 302 260473895 145 98407908 761 740510034 33 127905122 777 528157447 694 42063323 880 237054375 808 27306432 318 257503799 711 878207387 261 211529277 183 845581611 297 387923283 237 194422035 203 151583822 704 83765364 259 937226119 753 513984824 634 205355284 902 551653121 69 197078537 276 742997611 668 11221830 375 355950192 826 92141442 722 26233790 436 504389105 462 339389003 225 771172421 391 129607257 35 509730113 468 771345874 317 278002304 884 998317248 694 511135383 917 699737489 965 428077660 299 708429778 410 403383691 836 237512256 159 937023184 262 432510743 638 518223326 866 89879614 583 232515353 612 352063595 616 825372707 863 396615571 298 531052966 959 619858589 443 523658683 470 604895534 38 431507853 119 842840522 3 580920074 586 983131304 943 687809741 869 882313710 72 112360980 869 631564601 845 407539690 607 211112272 90 705298454 153 649334637 973 713905777 554 134638436 189 308666852 41 98137604 426 161867554 903 600946520 863 234498348 553 715920184 715 502269531 498 644831803 605 24255069 985 214060839 22 513581956 172 383605911 75 57696277 76 268212238 845 76247891 304 75117743 339 237730393 670 329403589 918 718355837 560 837502003 766 782358109 934 805009888 370 436957078 869 268803759 378 626029647 179 509755790 87 599835064 223 430385643 495 74343562 411 803174494 753 608033037 987 838225584 227 833657622 379 990943971 42 634054493 369 623911949 834 997134410 700 628497869 827 869678113 123 869231569 499 13959394 930 749524745 402 691190567 552 775884702 840 632256373 392 423690152 740 149028733 729 821521355 489 488385956 231 722016625 863 440408823 705 383158522 567 520254629 181 996809205 242 154561975 739 492302358 676 651788051 331 246318471 478 731175419 813 273231195 603 127466895 346 931962192 523 842010717 482 387007330 665 378950826 32 917477354 757 253671074 604 96460803 515 35634755 765 656261705 920 107587012 705 345453820 444 294173238 885 896432302 978 327121992 449 414274673 317 307774894 980 739414631 941 511381175 910 226752763 694 434660970 691 706374474 586 888705673 440 354371554 337 740571976 834 893671368 155 312289843 203 122558447 679 617115883 357 935488545 509 984607271 574 32655089 607 384184633 23 125352191 39 800980294 188 50292533 683 498841019 791 72644866 106 586800110 477 495060059 802 740127153 15 961246444 410 39984545 816 603467481 392 347142284 815 791008078 85 147782438 494 588670825 152 807344379 700 108950457 313 378163030 338 168967140 420 406330382 653 617999239 463 247147319 35 833693863 867 315964637 404 397691853 276 830428221 817 629997213 110 542182080 183 964010464 832 550121417 472 518698044 754 547210563 180 377173046 991 961837698 305 593256768 136 507121940 17 792058317 138 395695058 282 571667170 425 226736540 394 343699872 60 633029564 641 536152210 368 972270156 334 938029551 646 512799526 778 557653761 845 160827804 32 95831071 280 800346355 399 710906491 836 617304086 365 150329699 512 230400459 593 347741553 68 296498118 28 525183591 917 437349036 966 406981692 176 778959007 545 847764779 783 747004178 355 168567084 440 434136884 552 656916070 572 689986263 531 993075769 30 377703044 956 582514766 538 522514636 496 898776554 104 75138633 122 221074453 918 113092687 460 175786144 131 734232391 420 950787971 710 675340639 36 230149367 256 270766171 446 289191232 226 10672686 153 708623784 670 228269154 458 803479566 979 730259984 442 812764756 513 80948114 614 416728357 956 974085831 654 416255389 539 740772719 623 644863623 520 581091999 457 145449111 741 685435229 98 621239780 744 210846639 77 308874587 730 710088219 430 764688583 535 281273710 692 747954823 225 801308477 931 220859259 105 368514880 216 452865459 600 480460926 842 192028444 755 393523379 637 726346697 459 952953924 174 556434087 120 793425928 956 736847820 769 173172389 666 434094186 590 342926410 575 68763689 960 458463563 709 344064467 568 816266520 957 889670046 972 892051726 80 474231543 398 714211522 68 143828316 35 693944099 349 347108156 706 218317687 923 700996510 976 803346407 251 970279987 367 911765231 512 413406527 803 272466649 753 10243322 643 374485382 107 533925664 964 819588677 5 109443063 200 142780902 539 693427936 833 185787032 610 670173260 998 119918224 632 520559675 134 204199069 872 329138247 982 850690303 755 867473057 658 707189235 258 588311642 654 493593072 564 694037204 425 638839720 277 351332322 192 134451893 191 596925982 872 99645578 758 375896335 167 777460318 686 477232474 233 817865713 171 138376392 390 325308834 214 811894623 89 267964061 491 118158281 644 308975910 958 647251862 818 120092340 831 206109057 116 245679071 502 518904539 219 244683600 455 19768877 213 621731444 954 754209028 739 434311910 670 409528750 612 1829429 639 601596689 461 531436168 186 265079699 945 317170205 488 558028740 414 208437115 64 513875313 733 795559812 466 270203551 319 254271922 625 852439887 207 331996158 885 481806578 65 990949827 190 90262003 833 643889252 232 707703791 712 806248490 956 238204157 626 932712146 413 310815397 73 181179726 984 512345400 266 544208068 222 53497262 873 732867041 421 137780936 881 141096805 530 887873549 417 140311638 710 894478366 832 487182104 202 968158016 963 9704611 199 835767337 373 870996417 649 238737045 10 890872534 44 250577919 330 670189323 489 313854606 554 858287230 202 840674531 797 89931154 392 89056281 696 259467148 74 975922173 942 756046517 404 323302045 69 167786169 178 70442838 100 827801811 785 333158392 476 713626582 530 449248786 736 536001144 224 90072406 230 470738860 283 510285383 123 282909304 659 293465023 924 303477987 46 507628695 171 599262496 910 819715061 953 81532420 52 846139994 559 815470233 163 907959140 588 138851454 156 119462191 423 591676431 397 82477863 100 328306341 573 560912951 950 826056416 572 750270356 443 572976508 2 783197232 961 449566241 741 613102679 14 791027806 444 876829143 725 35235545 592 648549305 788 56024535 747 529029951 452 654513622 803 204219715 357 753374553 874 678139241 439 440653713 52 22251179 403 961081148 1 540043997 917 283772936 717 457576450 148 481603755 703 913306082 375 779807643 443 724018041 81 117275289 476 798206828 175 149545000 244 634152109 214 40990528 123 996897965 8 221642178 274 519907383 62 584995979 58 594490404 437 796573660 0 298717039 300 969930861 573 578654354 211 900886634 580 726019715 486 721813982 601 600420704 109 210270972 819 212463719 387 783303117 469 185681340 482 29115515 838 501141502 635 245489110 954 902073160 39 346130904 751 101167877 458 764572046 421 566443820 596 749086401 526 494694539 317 910171535 198 522925449 938 892278265 235 827598073 832 705840723 642 365270488 214 398705221 999 663995647 907 580892757 37 266437908 711 23126305 521 406179307 55 346772571 56 414803666 324 69250002 844 664573930 573 141273756 628 78179330 525 963320412 366 678204033 505 326281163 770 108181415 825 630842651 811 440181884 21 81113979 0 449862671 188 920104836 850 912660227 331 75505968 334 218019990 732 626450777 21 642824315 431 833054236 305 282722739 527 711844257 517 537506768 855 674108377 705 899952840 900 938056816 85 852399723 736 590813473 122 131410887 181 521459273 671 612222036 105 81588734 113 745788046 703 330967564 421 218024012 42 964221166 792 558721380 69 951185481 871 360202209 727 611243783 319 205121525 684 664028039 648 338117829 252 281924263 63 870773773 830 649617570 133 360604135 828 605248976 140 753087329 380 96112282 187 286737057 232 241894972 675 958420849 375 791560737 506 645504544 598 526315520 795 205256717 826 49603131 8 211794954 53 419587873 149 203515658 721 109805147 361 64848151 627 76442607 183 738332321 870 832282489 55 785490099 681 638459449 509 590506906 455 438327270 495 266621307 914 400406143 804 138132319 431 828656875 358 841651941 396 1662391 662 326248066 747 665419672 403 854363433 533 832940405 79 390443178 31 178994656 555 564231230 216 558096441 9 689256620 857 276533287 241 100660320 49 316527463 782 616547640 539 384092121 838 935399537 362 868591034 929 630206642 582 463636684 950 873300564 440 151156592 146 573003052 580 614818314 369 977061176 783 641417077 311 892056638 500 631792500 30 420499596 337 513564358 87 265510132 860 553899271 403 237812131 885 466476487 391 506862869 572 743921029 279 908467318 279 805818364 221 94006864 977 780136251 433 910602471 402 88910414 386 575806798 370 695465467 587 281768738 787 385571578 455 408918910 996 113377339 912 900229721 435 876125047 145 313401983 250 81328740 268 889434641 468 60747450 782 41867441 471 180647150 203 343719063 593 118342934 283 896126429 346 512643940 334 470681387 808 640221163 428 653086756 941 273352295 705 174112733 622 521709328 591 67819793 274 178962744 640 620694898 704 156682594 584 136112409 479 109233459 961 593127005 888 655503188 501 522503539 274 395776428 590 50608533 642 937278725 902 556000160 85 273940737 381 976217679 71 34011167 414 144215742 70 52550545 597 795736850 602 857414726 655 384720128 401 240177117 329 20550124 768 816469805 86 32186582 453 890926695 495 78755261 781 776759071 522 700351553 985 508491518 825 601170894 747 715228177 55 163763579 578 825102124 785 95646122 743 877307079 792 706966287 617 284404812 354 748253338 233 294435510 640 813062846 510 23220445 83 231548774 579 907461180 989 931606093 578 597157837 425 80426555 485 462900142 272 948643926 897 949706581 510 986749195 631 547665670 43 961551896 101 156551735 808 932265061 640 888993237 112 974446780 893 201739423 865 204133935 419 567732984 698 48261849 806 565070468 719 180069936 692 139674999 430 917240678 568 549314335 160 807534028 248 230997525 474 880554774 908 287717728 199 647460298 696 868000854 461 358738208 310 542483651 127 155911976 604 848185828 979 835117279 306 637485481 274 586983522 113 140814065 457 579314584 639 197402466 844 414808773 859 506482144 254 37088626 6 260120315 682 222966699 559 938161026 299 379839291 133 355445551 509 439248882 703 347344520 482 824226733 611 104683994 159 458855401 793 263415803 992 838478095 209 550394551 800 665494979 192 293357993 470 231845700 501 290817027 315 861480944 435 885343192 393 725478563 680 761187779 903 851647124 798 270891078 973 184812410 887 874110453 839 26920154 122 160274301 332 475118089 641 391423561 942 527287799 94 212418416 271 214759108 435 324387145 368 777441744 972 299125183 390 82921477 574 32373859 818 216439652 756 930226602 494 147026512 467 973097550 931 547316964 609 752048674 982 954264392 474 232421857 850 465642976 497 243550626 179 253773933 941 112238876 338 645500711 235 253757161 706 22708849 741 75885789 332 879833742 994 643192267 938 316827375 96 426219979 476 878867117 54 775368324 155 433765351 271 284992761 797 736444720 89 658256709 11 588621428 415 911095280 879 176191397 534 104735109 631 825266587 101 679237038 282 605862146 13 113215263 806 845287703 730 877582556 83 5443129 509 39486294 438 991594615 408 143293906 167 449799780 785 972852537 776 39698220 755 669473722 387 989809832 476 567152457 680 829825430 706 633320530 713 120339564 566 793551633 868 121612318 570 729188851 732 895533882 837 718311934 195 142646072 913 674005603 944 226226508 360 781523995 467 919590279 729 500094836 107 930999623 396 425961539 809 562903736 371 691932268 202 164634361 597 637938646 586 632585221 138 167071378 163 831597812 268 255895230 958 517033783 30 54597480 927 258853205 103 507333917 536 658937350 496 694416361 361 429530996 869 41966553 238 693088637 859 943049804 876 176160547 471 880672067 882 394398352 29 629318202 347 178485008 144 262800069 273 161073009 400 899394395 648 233327745 111 339233254 123 350939937 597 247219540 297 405169804 517 982601130 62 51994525 760 613856893 662 632301950 940 685943417 26 630939724 481 365209902 904 89697238 269 527426110 811 295527315 249 819079945 379 101349180 126 781240946 29 236673225 458 931947003 568 915892405 286 492005724 967 174754063 610 585174649 163 276437672 380 748183292 741 312041898 355 761125181 884 621179947 197 955922679 383 484398966 765 103906470 1000 150368799 571 587346462 53 183605928 456 903095201 619 639935524 722 871752270 409 495606533 251 599691385 344 898922323 175 103996201 762 670374936 553 778748555 663 881384665 476 805626188 767 507335190 295 136518852 485 921717973 440 548305310 509 200815552 277 664790581 858 163118905 73 803303040 749 856906723 913 78805367 548 523883700 874 858677114 892 628643549 940 133201658 548 601973613 257 733587937 766 652851417 675 784389531 990 405021228 894 35345831 942 708723574 947 437661673 691 161761416 516 960091303 276 289060353 447 990837222 12 291028067 744 927411463 392 547120763 366 273349956 309 42736810 569 895948509 835 82227557 35 370905376 134 747296507 99 949275152 934 784393691 135 895378380 943 433696323 947 72781668 568 139071228 779 253701174 690 401588202 298 993216038 447 62478146 706 143740565 714 374338567 95 698747978 550 729637837 90 62411131 176 68535766 809 994258307 959 478190702 325 508422418 724 388223368 823 622559835 998 185280714 763 357795164 806 401558735 901 604102100 862 479303118 813 366492656 337 359432380 322 492101554 510 770531600 913 778562912 325 160646227 909 817361304 915 141016540 211 160665442 645 591300474 458 645983338 44 886576308 4 973734006 116 230140457 889 959958823 861 884380648 694 2833564 825 933968151 542 808061664 231 88798864 36 656490776 787 840912537 260 905938330 249 814061425 682 324507943 931 669563477 754 44161280 185 948798840 548 11906315 674 377785939 407 762333778 639 443627798 466 930752735 619 538018229 522 275997128 587 443911727 491 295219302 257 290145878 190 118553855 684 605764220 470 770290247 707 328218934 314 585459914 129 760921323 939 366124138 883 130333085 714 324658435 642 644824140 996 878417585 32 348561 661 710315644 207 980544462 665 195802933 96 329724616 745 884183621 308 423232427 769 124823323 910 338201245 906 157379726 674 132045200 421 496572613 669 575199295 880 55253268 265 728229774 100 819836257 519 293573448 748 294463375 310 586439318 532 23381724 660 257295489 371 391579495 786 723269320 991 32946600 929 135366199 71 37217246 606 136845592 237 981811028 50 235101842 864 105432478 463 24203989 253 795436010 171 991511795 342 473115265 713 846637773 176 995072122 602 501261751 666 448052799 832 597375221 173 168287098 512 513362687 646 452070768 989 675304897 458 75900662 615 91733507 747 867539331 149 74518866 393 383039826 366 151505664 431 508443109 363 773153279 986 882648553 427 74203136 407 602693380 800 76094315 960 381914048 290 455270982 332 135681742 810 518019744 960 47915910 193 756940089 491 934423607 242 827157372 873 778795275 940 438268456 778 65830429 644 756153551 806 261084701 40 591595801 682 416145795 130 40842362 123 136892064 49 519577538 210 46251375 128 397086219 220 777925788 164 83216532 698 122858074 742 842399038 60 39971431 674 524384806 376 404311632 82 74638003 971 417046470 622 756815109 678 978594810 381 362394593 585 579600331 827 427389857 621 948595321 124 871216293 99 779013015 304 252203533 996 828481375 490 194565905 949 783869942 952 819998882 799 98626654 156 906488874 594 861502176 949 385164321 746 637828244 857 399689674 734 410766117 515 583499595 897 816404343 444 919220145 458 869437919 362 359966112 396 286093643 39 740751878 377 551930534 382 298034919 793 76448524 971 859456217 493 783902651 827 40427110 455 150209097 828 425437120 29 530793368 650 956820148 639 585206198 409 822477661 432 243504463 73 318063897 223 166497245 832 418529240 424 560203497 430 171828718 767 706683930 8 145840627 161 869759547 166 938167005 648 959752707 768 145331883 685 194952837 327 18840919 823 228067456 111 762039223 50 361411739 316 704173002 269 27733673 298 963041282 32 661489327 580 820633595 578 279186878 421 694167683 598 425194549 290 128146452 449 414927472 455 21375926 987 83469949 79 642069900 167 966846700 108 909848573 826 338469316 138 106465771 900 11444918 204 54857064 935 795682642 239 790446871 395 480627859 345 900308530 538 14190795 683 314263380 791 477064214 450 106918529 296 80662496 420 513686815 163 671883586 705 212351158 219 598153689 842 801692667 274 555044436 909 689854508 91 953002170 958 428042203 50 119887583 161 748161347 540 276559581 135 670352399 240 437422034 426 446412359 800 542401273 744 628764663 366 415017448 469 137465997 411 592302029 149 291161415 729 826555924 124 762598423 484 285018670 115 844714642 320 177984069 77 261501380 365 654862947 715 89109283 671 806044636 542 68095977 571 839143509 491 485839064 661 422226768 681 341665755 412 478099206 921 417725952 972 51038721 25 915506557 628 701635312 325 705297799 856 226830968 17 323117069 653 991299021 693 65281716 93 734177014 240 949101838 324 824023694 415 913789964 678 374689868 322 863186125 634 585893261 777 252634337 965 240986935 479 767405666 635 717398601 916 193723514 377 778329371 975 388526915 724 476088548 729 520808249 735 959386382 887 858532928 830 735286457 653 502057697 391 2577414 172 769018504 488 941861503 323 562328083 173 899729361 19 711842352 654 894708269 881 180895693 295 357676573 820 580427621 214 490919217 311 773279353 809 991690609 322 480474116 926 413946611 146 341900694 781 623740363 245 25827479 721 32463350 730 38731217 943 745961338 424 998396058 40 652810345 21 165325917 363 282120022 125 945560901 33 245596854 408 222761430 386 399085968 514 160969662 952 14732378 92 475493873 156 460064095 350 444102592 789 530153525 165 353863286 236 304421314 418 500526060 982 890961367 905 4240265 64 456193077 74 88202078 569 771535564 29 652511231 155 365519025 345 807922343 642 672478759 702 532894877 452 403084481 909 130655185 286 965208163 228 928214951 86 967897092 479 748720877 159 809132193 214 592873501 993 551976239 154 476632214 580 804939128 642 45289462 395 404304481 727 752622092 712 105587991 411 596820695 390 554659716 769 184129567 369 69698305 83 68743266 508 67314641 820 384552097 328 959887277 606 226116901 388 656285340 246 538238579 843 687074214 332 548761611 219 326900673 511 548110279 676 603395936 630 377514580 833 343131851 739 646954525 701 189975048 354 651200357 377 705002571 862 50631535 100 46051918 72 761839282 341 831123454 963 602633831 398 99091492 55 929692294 126 662572772 489 552161523 469 377267158 239 253089901 767 267133002 322 544596040 726 340186618 206 557431318 156 113208401 568 12338884 142 633752656 882 911586365 788 472047720 996 742827441 713 371231091 816 6133152 580 452466886 200 495911978 78 323333334 287 378434612 52 907956600 220 774308881 679 879932335 961 179972991 230 304198481 527 172377587 192 746653476 604 949423030 420 298401754 382 864312258 323 341166130 717 323261474 798 346471549 460 959163759 19 743363079 261 873264356 475 149684737 160 87363635 391 621195213 887 852009111 318 661771923 139 9745017 174 246906608 393 743212360 900 855185570 48 981277785 40 939171828 565 471312496 361 645122278 698 717716817 990 989513638 686 819898195 957 179535030 573 158914461 446 385606888 348 41863234 387 765863707 364 7356660 865 254283622 502 218962441 430 698781428 298 570258459 410 295935579 911 726709277 391 961423840 525 702631600 431 361205465 702 713002933 35 554866031 490 498526144 104 227203035 988 441410927 536 190584938 444 262791393 564 130306691 228 406310106 962 816812587 929 428050422 614 11128333 464 636147240 974 589036816 406 669557016 855 257448238 469 921569074 55 811269344 659 884667796 212 601683775 144 316070304 544 455459972 642 724202109 468 990576445 672 257403788 464 45309133 32 479183685 942 506809466 451 942959761 910 668292944 812 289951011 270 869609561 39 348258105 65 602839792 433 597775929 523 8825404 519 403630902 612 969192323 91 22920251 260 888288877 26 529712719 715 983947262 747 591762260 629 814593382 963 168709641 201 381043429 646 337828405 163 75779370 844 969696380 126 876983273 995 461780744 623 978249212 932 541665872 769 410403768 793 813419481 975 512045009 622 110385958 109 615151160 201 65746183 934 963644972 175 605854946 192 973727291 462 914298783 884 341427011 688 441161088 399 547005978 386 357937723 288 710083862 136 745712296 331 417546338 879 383573661 698 61375387 307 239169673 977 559075173 685 387357717 815 747745366 537 550048090 100 246894529 112 774295194 713 704597678 996 619838922 855 288159886 323 695485211 926 901013885 496 126933350 258 544452154 790 350838556 470 61090432 486 346020398 563 743268738 434 569357617 765 176320616 720 522121725 619 757939395 344 313310364 998 337006205 997 118891709 771 934091831 625 61602374 311 107107755 91 490777023 615 838108972 958 777494416 231 836993910 109 310373200 380 370533765 65 589788373 429 790082661 659 346297139 910 503542735 815 173372842 203 217185729 295 467695130 502 56808468 843 730635294 947 562224394 645 549852276 738 342909863 619 559993956 11 8050512 111 176432236 481 139630273 809 355173858 754 777634880 212 38828070 506 513653675 147 704796483 296 598348362 424 940472304 293 206519775 763 19291015 19 90432827 113 818855784 78 391398559 102 45991172 107 355380585 540 723527597 96 616065583 96 67794394 876 422079357 858 81881610 691 228787468 181 483696941 716 910923762 862 205774616 327 381832897 543 733669184 47 921326115 358 31497326 760 182703575 667 858735958 733 606702002 127 327957716 211 683911743 540 518454615 44 711341018 701 225484639 991 62357345 145 413062645 160 871455679 746 823232209 262 281471028 639 414946658 150 494914572 669 375653206 788 737345175 270 798006391 585 468273730 415 792382749 700 21655822 210 375178301 352 950959052 307 57022182 563 753803996 864 533441184 971 833506306 514 52168783 748 598658640 786 821359250 906 918847722 338 294676439 677 462421097 998 701699710 472 668686411 144 872120503 822 534829402 481 731547224 110 598179293 344 52339685 493 377814270 871 700157882 854 823257879 800 965777411 885 45718717 544 416315785 195 463226970 977 588546282 647 637221361 619 787544665 786 585017075 568 261302689 275 73285611 631 865401684 480 772390034 784 9591187 217 231157766 560 76013991 79 140932178 663 837763243 795 840545552 190 523509350 636 756679628 822 936918994 753 708563697 337 875909410 68 542975781 69 120251091 758 196894780 894 528961697 612 57911945 99 14758651 194 101952770 343 315771171 938 694881885 173 73487487 931 567219027 827 579305262 682 806055266 78 148663423 505 345531492 252 621962490 742 232220255 829 480656926 740 548355171 331 112185734 872 205206277 784 207950506 84 828091806 151 552531762 136 350434372 905 962384204 74 689786162 748 438576288 143 593593187 817 423624582 610 927052053 881 910138003 168 700021752 452 92059937 51 55425913 418 815299634 659 153054558 1 933742514 365 44928385 714 351908742 734 836225365 733 844354084 650 158585032 455 369162123 169 349856977 533 878677982 802 22427200 650 363227982 493 688340375 761 79465458 782 206751550 490 904368275 703 699897256 660 252384544 498 317231702 406 661315769 950 486938759 744 546076577 415 233558882 858 636943988 376 918145847 230 732883521 866 429775184 501 719490250 278 51555579 263 255368757 559 478569275 233 790681781 382 133120682 863 26890482 275 834821408 764 194070584 494 274861420 258 801672805 898 340410093 685 266357256 873 399077056 514 884933420 588 916533015 774 772874417 114 157340441 628 496008779 116 19529243 336 77364361 599 507933581 639 12424786 626 303017761 536 180829581 969 492414293 591 23393099 481 313839089 301 968008598 593 426107108 18 353382334 222 387041907 677 790838031 383 430738529 223 732771623 87 967735902 277 740776184 262 260175817 849 209215865 261 339608503 578 453186833 214 973334931 749 53291498 188 456868758 567 784652034 270 176817947 871 828678696 799 553251044 891 536267626 141 16682317 795 279205352 439 370771879 20 655376639 504 681040924 493 607056080 664 194950734 269 942474106 531 203873515 708 273870613 942 151649994 496 612880075 190 865446336 886 288512292 311 722173821 971 346039309 200 790752824 533 216874393 950 423994635 706 551652410 677 239439033 877 124887363 320 121045792 5 277115286 985 176112134 334 572729239 684 169173425 370 832949022 642 717464563 849 825564735 878 612592304 738 680656910 844 240528859 174 87107308 746 726028947 842 771129206 597 647568136 99 234196117 836 632985233 174 136430813 873 520919907 619 116490397 337 842879905 659 279901303 836 594972129 174 115517536 277 710462646 374 690634274 695 109521605 850 405553643 396 15754536 263 640197651 250 560542501 839 490235522 366 215300044 789 111799910 907 316276297 274 284643922 378 578328008 655 82108318 277 789044229 998 257130590 979 495240554 339 153417917 777 390088873 5 225575583 168 213547954 24 389255642 788 274929980 643 43955976 909 412566043 423 475890794 375 151844899 871 601593797 368 215464574 159 100053510 191 948482750 570 588429772 30 414458508 380 750804383 346 42143048 988 338143294 563 854060329 492 359749743 472 988020264 184 724675358 880 666837452 80 366605321 100 721873337 794 551309055 743 920730219 901 324963265 848 23740658 14 359065913 384 533411651 996 24389141 22 881275349 982 182800275 915 798715047 963 934059514 575 355182342 571 202587099 957 637967311 139 980392753 368 603376857 343 123536552 671 974109826 176 822248102 497 166741230 970 50635878 733 665966861 72 940009018 280 563337761 648 810035060 468 681592323 635 360235515 527 704737644 427 451824934 411 726454787 534 954351223 3 943708168 583 464803020 83 708440555 411 43722097 968 594474220 133 171730414 654 622791788 698 124416901 414 71854738 290 302922539 754 581262130 648 226786013 657 754797098 610 474781586 263 475334957 119 167972915 167 470561165 333 196470744 497 631826215 495 361833913 779 697563507 876 764015259 474 564522708 878 620386387 289 203732719 897 666670722 114 553957428 519 879343985 802 212700760 29 754954130 279 265360360 947 556958943 309 338555705 845 501532524 781 98446670 793 558645539 449 987037482 699 32194591 636 434501707 270 275419295 528 799823687 154 453268995 355 92538749 24 996186381 165 100746849 890 322205426 648 430686170 245 615332105 738 85364046 335 606747139 66 911322208 755 771224887 433 278469022 525 705935003 675 504591381 651 913276289 788 968547395 106 743596025 107 947463642 107 314214228 485 565648656 363 699017707 164 903446795 279 780148868 633 230968607 961 231337464 882 54001620 144 292132345 81 510244774 696 640523006 218 725831634 466 257884584 416 461689333 922 234240640 585 928892043 750 822187400 361 885002708 690 695972815 656 764400091 259 218210910 38 936684373 78 401262220 972 899207914 923 190504127 560 915857080 996 672888457 519 944333222 432 245455043 863 234729133 173 988831062 894 306733111 741 32690721 576 320618217 948 710381691 357 36574112 603 523084553 373 492393319 162 827644350 378 218738017 481 940878531 205 732146993 511 768317027 919 834585070 161 567434900 55 831447723 694 769819715 985 997664502 285 263877588 660 724456627 118 586890363 174 906884040 746 880443009 299 367330756 230 809265352 23 833028138 1000 776793311 175 16666383 707 17569183 575 763561673 867 931684100 197 342389701 231 359613476 269 894067263 305 523513818 90 581635008 829 382652843 54 809546573 4 777899114 736 911085183 915 412362748 546 147856737 264 441779884 415 379821910 682 755243515 368 866130491 978 232564001 514 745802079 556 373429077 904 488156747 424 428628583 110 424141053 106 4229729 804 28114261 989 329028308 303 686927239 808 105387958 703 458028492 847 912970108 650 454930949 79 875073411 108 156553629 56 377131150 487 754462941 899 34844775 307 998848351 783 891197306 904 976356661 177 946193833 38 766681976 253 247867335 672 13724289 262 55742732 367 520457089 369 183119467 602 955432111 230 387698880 435 805970664 83 283278668 393 297648911 701 153222788 632 634412894 886 448271595 398 970779733 271 854334327 836 203599796 248 967898167 857 547047234 305 966084491 63 233897387 440 496953639 919 624390520 29 255217783 66 178316364 991 849335787 694 966022699 438 319073735 130 415323781 307 673239433 782 570207194 343 711809942 615 168343648 72 149779521 672 153929971 922 135316495 573 657261767 605 343944023 750 751926527 883 105736339 393 226650247 674 317625254 107 402303436 769 298619589 584 322333231 812 736687791 179 589543200 577 202860888 495 216089765 753 418612044 607 669491177 249 868684666 908 806350855 493 797736481 365 210789926 61 756619834 598 484375550 776 425422037 517 777612676 572 377307650 43 301345919 651 428854868 630 951770662 970 123726582 912 459522066 840 506712282 22 709694768 744 464230160 644 727871269 904 118455315 883 332678422 579 414624544 808 589425791 433 720689509 295 435341058 419 539551970 387 647563981 717 564842340 10 460360114 362 186066268 169 681398182 250 536147298 203 668066081 702 461859036 515 425450174 361 11608402 709 84432891 375 843803384 520 572817839 91 134655727 485 692012268 557 222529733 420 574951151 203 621706858 140 561776756 222 459876069 895 104217180 983 638885874 949 688271275 945 722247440 414 799038550 124 352596996 19 104816932 369 389832090 630 50140660 556 231654498 994 456820442 805 138336965 191 314329156 254 155393309 541 546694045 459 343056789 589 171268180 110 946550996 406 925577347 952 33846502 283 117302925 174 42542638 250 739419488 956 531041044 380 561046768 986 311169641 862 52314608 665 42015179 207 73442459 796 274037509 590 163676447 624 232929229 327 775213235 122 280310050 900 413024559 11 339316016 14 261994318 981 818240252 579 519064949 281 894413388 730 38652395 147 216531588 633 135357406 640 419115020 962 568076250 184 736046205 279 728501524 656 814084182 76 74165802 629 678090935 855 596619441 137 163573137 554 238853316 810 66307782 875 111474783 568 82620264 900 477875629 623 105789587 621 661580555 581 389738950 863 202904664 834 824227541 525 72092194 643 410676293 954 678552156 517 61902464 554 574358207 842 921801648 620 955494695 618 824911320 614 915993741 171 276117410 282 170402702 986 766932441 766 375239699 910 317236083 876 785019178 5 556618025 889 770185087 698 141024311 926 447531695 582 550097376 959 394097768 681 875682274 535 929093914 178 511945444 761 442568903 564 803355017 716 527207667 935 361658127 110 261830354 359 28740577 664 562421030 368 518246968 41 986856319 879 134230076 830 499284924 476 159797619 152 536341370 60 960464439 831 843921709 199 298761950 143 856063524 812 962214736 52 204143042 192 110203266 728 676011471 887 717670067 621 281186450 47 908175839 2 640947887 71 70303065 666 214445778 542 214422335 674 415828450 38 252489290 171 772357724 392 796005771 448 143109307 1000 718430159 805 359655389 594 827695947 605 735536222 90 291413618 458 76620713 597 877533513 911 435377026 180 785464056 963 573509170 674 954023354 274 801069641 575 997156604 639 445825157 27 355256075 336 69582588 764 213568377 519 411810937 560 272868622 23 119849698 186 398496256 695 672844154 222 785525125 609 322235235 143 390733399 736 944273463 320 441237395 921 971622246 36 76827729 285 430755874 799 450312918 425 879710008 982 805851386 983 928998611 874 285563527 380 834981385 82 916775200 756 591864574 142 876282197 235 388988206 8 454902227 463 563740372 367 808679404 326 622213886 990 264815056 65 709952655 401 405699319 599 985587500 235 127596371 205 725747811 786 743724364 249 491880042 226 135571873 536 576231714 945 52455562 464 380779656 775 265091019 463 620983077 382 499515963 353 922944713 694 184962228 573 55937495 260 569966471 83 774409986 140 698965914 496 914572220 200 826274152 873 212391652 556 302900759 16 589096907 786 301010436 822 269085767 273 448209601 23 954235990 882 845203769 715 90155116 339 652340912 846 327263799 885 674918976 941 685446913 695 263304426 612 748563421 340 902211253 557 833324342 164 698643992 684 19888324 754 984606760 372 277811310 954 386694113 71 895138052 963 963783999 567 979785266 117 902064949 906 24730264 924 238647626 399 784258289 668 812679615 42 151800003 892 498324627 918 685592605 873 20858659 741 864610200 304 391558947 449 266617996 332 546576701 4 982281938 978 629356467 907 822768350 971 889007606 654 275537410 311 852196095 187 34179499 150 969112193 414 692888260 861 115265667 57 602306257 209 560459075 269 543668756 461 758353281 445 296850697 173 785401047 852 785578001 547 950918594 767 34399529 957 95808822 275 209242734 761 949785517 249 373957223 547 599282579 210 378985703 472 540876852 729 867314075 644 876680992 468 620328598 330 365141192 642 725129372 272 111579239 532 202433525 292 92696825 106 948390677 415 781685005 911 300896678 636 2013182 797 513617875 424 8687246 149 845085821 134 633658577 85 487192079 538 579681482 862 158823159 674 482290677 99 339840111 461 840572742 942 245226186 962 504039623 708 348548842 200 241291899 727 418560393 942 851306311 861 772666407 470 872327479 857 564998648 280 101279296 310 823107754 765 175339582 242 176610731 113 40598626 618 169250390 42 414973237 361 303865450 6 704024088 411 364288063 909 806665768 287 632494593 685 319205079 40 334846801 536 610185777 537 7899401 121 865020687 558 239049591 716 976212118 818 770704672 24 582297795 756 951088442 849 819830281 551 607074206 440 770278255 99 120373007 889 917847609 788 864787142 628 743078867 845 744544195 480 724250418 785 223574003 144 3569644 554 925094010 175 50347330 750 710847450 399 362360387 319 277996141 774 371292390 87 581514301 997 595123517 759 718265434 287 808311155 739 383662671 424 655024888 499 251664571 264 473050371 286 297596399 281 688313914 956 943754608 214 612483150 753 624909013 792 385151727 989 728828707 18 444555546 512 587054285 432 194603882 84 407535263 728 809914121 59 819502282 219 588653959 717 974309942 163 398683019 424 524866359 579 412479137 644 436978597 579 915420423 740 471549948 547 420106546 503 881023592 212 816627683 612 448943800 783 873661494 357 439555456 513 883772031 537 246710507 906 84109124 830 772867689 765 553633153 239 82551450 784 3926984 881 992197590 960 986694932 534 565613471 70 954204460 0 547517954 39 578745383 246 628777439 370 110630673 165 349329236 822 883644186 374 79857787 273 646580771 244 863987643 314 283557065 791 316707476 929 639422188 5 282517017 637 313965098 553 311628623 507 242146288 27 246624842 203 712982028 642 661003083 763 45938990 171 153213440 451 658165697 527 988024399 574 385519193 609 873525557 940 865827062 241 367282110 125 860623135 590 650135399 10 310258136 644 169959872 133 213338257 903 998522213 814 935205939 426 29068464 504 693515757 219 506679991 34 233147231 621 350764946 409 361293915 471 49146132 242 103059579 373 822565293 437 377463608 548 961816120 45 981293904 404 407294597 351 709095732 526 569151740 87 63075572 62 747019500 250 115277806 923 924945523 172 213925152 355 60767184 890 634393232 971 191906767 121 472447786 479 703924247 918 19868481 17 53176141 596 659267832 757 173227015 433 777694289 579 116658767 426 33355989 736 401254267 754 200173147 261 491570505 211 965442345 604 5444736 940 39817316 524 117141008 348 937575723 892 751569179 241 17614104 585 752480992 678 4099834 28 802643069 107 304246248 735 805259414 701 468884934 239 829713326 636 436410817 252 323541785 788 822551756 572 975178118 897 725927205 51 206635997 77 804218066 772 359909145 874 1758645 770 365822222 788 152003654 723 473067446 450 714862715 569 680457835 514 964418614 593 20865379 16 941359336 758 888071879 784 240022074 9 754736202 936 893476204 907 156511017 633 917540981 883 716829928 742 493799358 760 508068238 573 113840105 709 581238327 646 724736244 182 964383432 90 897810568 726 443663294 424 935014791 715 709316833 5 735576381 567 490386492 735 581507518 679 557242661 748 714011217 90 878304132 446 52816158 73 973112137 706 90923061 787 774927137 526 169278012 49 386985181 734 683044128 973 76269706 816 890351425 764 46810525 669 584312372 20 365827372 92 328656441 28 991181711 915 24614489 106 155992938 636 817514377 438 577333852 676 934043838 424 307292366 984 999768536 514 70445911 136 973028934 398 423613920 294 234849475 599 789026015 616 593731564 452 484243855 304 623678194 332 17808168 608 130602080 361 291180014 799 472961546 334 6416645 316 229672108 475 292752422 61 961228032 530 67331596 171 465896931 401 74802387 792 259698083 965 604491786 116 502135363 145 820560228 735 265125889 367 388046837 640 318839080 912 540613521 566 206951450 417 650206783 632 862715575 707 392581792 445 133200596 270 191736405 115 483718807 199 538763732 935 616620384 546 137781296 138 745906754 615 405446527 505 76253230 255 19182636 74 429606301 693 36355091 659 919543339 225 54773271 104 377176021 455 749250893 358 821903503 817 28410021 95 981458849 10 653641046 662 699717347 520 93922901 222 149319977 606 285201753 947 169322496 580 326254651 674 517186946 660 326803405 897 247445249 638 506156131 148 800113533 829 612470810 263 577725422 916 991008265 999 347774077 544 701443832 501 588373565 721 519464020 865 401744067 93 291572870 53 495875944 314 953380831 468 548286190 562 766940384 233 79504000 726 696513691 851 963878720 313 842487864 547 135673349 533 908416708 852 192574156 578 564275373 396 597396123 888 395565509 733 210753170 986 192806614 799 873325903 818 28417755 969 270900595 849 515416481 475 269266499 125 662772246 169 188375970 279 307324122 75 236337332 29 643171023 264 257506438 731 160375538 866 701713334 577 57461118 373 478549378 511 978295109 246 665402901 296 450908844 30 355051209 206 186439520 889 77895780 156 209269058 501 505560752 948 582099238 16 671624055 285 951151027 858 44028173 353 802117383 523 864947411 657 679985437 864 824757450 685 487986552 576 576016232 93 611541251 728 342919148 381 498423585 332 131263368 906 685124541 766 718433862 183 560302263 226 797939428 763 245554684 565 928964713 778 496261275 388 684944123 356 905225341 84 801593192 143 562212104 856 550104584 665 861372569 262 514151713 523 420360102 893 553067095 372 889862972 738 230539387 586 910433191 499 792545055 10 727730644 173 814071502 478 539878459 378 470477272 148 522252202 831 186028696 577 82013973 618 862987494 361 480599664 938 273286787 865 963421876 940 881881850 93 940675331 519 759325910 67 791559662 407 570074229 109 227838583 954 807030137 303 164438707 322 174022191 741 445459809 684 871890004 842 165947105 20 19935803 975 759751884 675 198637008 181 860775997 907 78539246 876 143508305 616 190854555 282 329639996 950 629546948 303 947819492 701 105495095 703 638397154 871 267746480 740 291275134 381 664198649 38 552981604 593 292777973 179 565677839 376 205387203 193 854171405 251 688943065 861 333861242 689 560862438 405 864097296 754 982029973 476 492233988 483 392794310 539 520382676 192 901218245 588 319477622 536 20169186 107 392977898 212 787626920 855 90872928 628 150043168 180 370748094 926 253750294 772 389787290 449 156966515 513 172401754 903 289354068 681 440271176 646 752955238 604 506862768 579 535926994 668 558876417 778 69648920 997 187582501 180 148628964 32 630012052 573 20098687 163 574627941 741 625274651 480 735946992 830 934014274 691 950867532 960 492517039 768 379477671 67 494491776 621 973906502 283 572695331 80 568456513 821 462428125 155 737515510 838 101736096 106 711033467 855 93400056 536 918435766 353 571572479 177 804938135 718 781179155 684 296065804 667 752470998 127 743154339 810 668121095 471 881305494 594 711334246 331 741808740 166 231117512 525 310433575 588 410157997 985 507559556 945 38737283 900 862865096 348 761215954 344 78524362 220 511667978 716 78741105 442 770922372 180 275912018 843 19746988 310 885148997 790 51150629 305 366829625 866 51534115 166 32213481 110 624542959 827 454830770 807 16359297 112 306244465 783 969248572 467 108016915 128 394093079 668 612174655 161 561983421 473 446665188 972 530996731 132 398425846 11 370008218 154 309122082 959 10784668 747 484862359 675 784316404 927 10598753 995 659930101 497 209847269 282 216835578 803 849956602 889 236573420 188 687153004 565 920290001 255 840126631 594 747334132 645 385014779 361 996485396 207 227187058 36 570005722 136 968523485 613 798764703 853 339568335 382 260895105 634 486805976 50 623865348 390 473624571 151 151449625 149 203936127 258 917459 284 454442223 914 399594138 996 450371244 325 657845904 202 935143432 329 124990023 119 760470044 138 8136965 309 657540689 223 859707356 896 339705397 472 727065859 484 889676400 701 415363470 953 821339820 923 817779545 495 377111521 953 271354867 654 89554467 152 655138797 430 708969737 81 599129173 622 18744272 226 497961856 46 992913136 99 274596146 371 950517660 635 335879485 861 867000541 906 187374779 591 417761596 645 728670165 944 198688813 597 194152575 15 666500714 209 79142932 669 482452007 785 294054162 345 243215679 405 357228422 644 957469383 173 289571554 301 699961653 965 805995504 100 683178465 497 737327839 333 268254546 499 737643192 383 515611982 50 541266136 328 887599289 383 293256425 399 118250862 949 514117877 227 719192608 232 301053254 741 760185312 38 424868157 206 397237166 586 421973151 892 126502225 781 569856762 725 406502793 801 553491756 465 362827997 683 181487397 788 96838910 25 718787866 246 138463741 244 27965153 213 946443031 679 129688965 90 537499201 838 643058192 62 187560970 389 686637820 149 980158496 749 962316447 284 243316999 878 559962325 984 798793429 918 648456027 814 149694030 385 615963318 406 380703007 807 928653310 310 803454977 437 875949525 343 306842267 93 224196369 221 976007764 348 167968396 46 949350043 248 497944704 532 308153124 543 557622700 449 909313271 925 560909317 364 171620000 431 962923245 479 132245019 867 409306002 232 606157832 123 237791383 957 639306050 321 886594149 846 558549558 740 988176724 524 307889322 570 907717585 407 343795075 896 293700994 829 414623368 629 161851766 958 809659323 216 497402492 638 680728550 285 113590731 540 686815366 226 745343472 471 558806863 421 212563274 739 708141846 404 902777174 196 209438383 675 974864764 83 674882577 664 537612302 827 461321412 887 529805149 117 98365533 324 155394808 968 88023000 402 159643183 39 790235585 161 172419139 514 299760986 789 623409215 655 139825393 934 241997232 794 868464846 404 35461944 213 765749395 763 760848331 293 749750907 58 951042509 493 926771039 287 868729199 471 67769292 559 574305548 311 566865873 821 140567171 744 657755735 428 516329055 422 186501281 624 659793345 350 557433239 536 967111063 219 7572545 611 658906770 156 169809200 718 167572811 639 598441248 237 200565563 735 654258705 425 659101156 800 716375312 573 194239293 731 752023333 591 397196758 40 979266955 630 644383347 723 217623096 76 18545230 448 922901053 247 560472191 509 739305334 734 584913227 120 952434028 811 492956026 459 252867498 215 769055978 251 558912687 743 696422167 191 823369436 965 635857354 384 508456610 980 186012178 361 657274331 182 590200375 851 382119961 361 148599882 995 735823522 469 529166994 22 981125800 598 425486758 317 472097328 563 940650336 324 977496348 571 218585303 602 259852533 888 660170394 103 189130388 771 841837869 146 773740158 672 443107382 26 530338783 878 639138641 103 781689974 321 367734004 322 60201243 522 349517341 943 377977504 443 340315358 691 122965195 890 584000417 825 733180363 505 38228391 198 584409144 942 250791524 158 552412282 641 357327758 122 851510467 872 126513748 933 401390556 455 869564159 764 485143315 734 938443944 928 631847701 991 761325586 728 763246002 366 781590514 998 477753997 949 853233507 423 707673643 845 569775126 6 81559907 668 558341425 959 697872326 778 93203014 93 979745741 895 641926304 690 70645251 949 162604730 631 452765119 256 981405526 301 246155536 20 843635586 330 348253114 486 643482327 105 620254373 716 497504424 111 303226054 682 397710920 578 646247560 466 227239791 518 756215853 783 715148730 324 114294506 587 209398080 618 510711825 121 920295163 359 792460676 46 971800480 757 825649805 857 31592260 770 347397376 318 327820562 2 521305307 380 616586580 717 524003661 296 162883498 365 439539446 511 159854497 8 830129626 929 939404776 944 205984600 995 255929067 214 768387642 609 688913470 401 455279284 822 834755750 829 313899490 129 589768368 57 351643998 123 54467813 359 556298461 43 329003848 70 626976628 847 878278337 818 834647369 826 790054977 361 424684057 718 473189926 949 470393705 44 238286765 852 162613917 896 221220193 987 823017199 178 370991552 575 264146177 208 891100200 855 657317510 324 447152203 215 718673852 447 780115098 230 705948461 627 594622111 112 804232610 597 59366853 263 19718765 867 424404656 307 596943188 244 581986385 33 624079413 213 73178027 767 353369421 158 154165540 413 713877908 93 801635129 867 938282715 233 552574022 15 839715649 390 129339232 83 395060840 41 929126369 455 501371535 172 792573248 395 762533549 822 176196820 563 44999370 287 723090059 456 167453337 680 306299415 771 524801559 369 196019137 78 739417209 265 775729571 247 830676136 151 440195247 366 59652866 641 298229467 535 744861426 426 858216659 72 839636778 860 639431521 124 872031141 47 343414573 639 631443732 53 171446077 595 758215205 67 290341274 969 85123233 154 520370323 48 332368095 610 900100876 384 759193866 316 161867589 82 666225017 588 197759782 569 576167169 426 882995019 879 111364039 143 440772394 39 751331961 482 795837252 256 589814843 207 438708455 454 538139465 597 342335641 865 966906326 871 634017290 380 435683978 370 964552135 78 986973674 530 822290805 842 927930717 462 53601883 705 473424488 430 36899343 197 950281536 517 340796968 441 78664959 804 946344912 609 2760147 846 550025178 687 765535855 343 712144182 772 436082593 601 194244013 790 867802351 968 464395771 731 494398876 602 978652995 725 497342995 165 483717231 53 661737170 232 900752983 208 726504882 972 229461255 622 167629535 142 134128550 263 768680440 617 57739409 194 131628125 293 314136388 659 426455551 720 30850599 305 686412099 13 162824442 781 578266800 18 736949630 43 753249158 119 109357336 194 748453730 509 579560554 713 422986020 710 173836826 29 677218684 375 26721340 823 159927660 849 444170876 419 388690938 655 811510789 559 356591281 580 928343633 273 357021527 619 374649402 125 577887467 227 111079235 544 818637343 958 319651818 299 424309144 186 170500240 0 717408324 387 204923555 785 343039742 144 670997469 112 466032136 374 7209896 593 795491088 465 884661975 616 863578671 441 967786722 18 840797607 998 391768559 178 986964550 750 452319003 831 49254286 957 189629500 817 812479998 331 482002728 690 897819685 69 140764676 119 702676892 834 560087496 258 161109319 435 957873068 684 52038076 829 431074313 900 954496750 53 153270625 194 786134368 951 691013528 697 215428794 24 804899288 204 453610809 928 985888098 518 726154201 156 669308707 505 472831445 929 796483811 594 991439372 618 888846976 61 256409898 409 31310528 464 881965319 85 804069548 846 185743594 624 26768149 433 907493715 999 878641788 220 331282377 32 554079686 900 946991810 670 361605899 566 935247633 853 404630605 963 42381714 863 884929829 61 472476297 115 31735165 234 367039016 547 891390628 975 436626939 1000 305495354 161 591287142 182 145138815 550 209314599 924 275990372 889 509017521 431 257033710 630 807500356 198 601686611 347 406512662 393 899478816 815 509307248 648 834922372 401 583670510 370 21208322 468 402681803 654 831353000 548 244043724 606 203998996 967 190384049 553 745091000 431 825024010 843 664679054 163 13016036 372 353435361 599 115906154 304 284674718 997 723299307 736 557878951 26 867162050 70 271395361 527 15172027 710 781946920 331 465023895 189 963425525 88 554345690 875 862680190 295 76869542 835 39394056 327 331078016 538 857114061 380 294897979 16 562976236 284 140984706 912 766435279 922 938613310 471 202035108 572 294128863 84 900372178 194 397748486 687 674630522 119 370009097 87 515669871 233 464664719 688 467285665 691 323380837 952 464156813 382 426414991 968 756615797 41 31953841 401 665897013 367 930674915 674 982697860 883 319100525 898 589361494 317 775124095 2 288666023 775 276338564 747 101670284 909 497141550 842 224316505 608 48882906 291 653254490 591 729746815 652 422759247 111 343963151 338 695732894 351 276910045 470 8977489 696 738381090 307 108823646 345 748307611 154 891664245 362 519187278 101 526841342 765 450126877 586 772720216 889 322909620 802 445730163 827 468195444 832 767271877 478 944551613 53 141202401 299 401264438 47 12785300 40 484132595 572 218850958 978 781296437 601 62959360 569 95891916 574 94868174 166 425554321 901 232071821 361 147735882 79 888766647 714 261777294 404 500871288 184 550595424 200 38570215 209 541486562 970 586471415 417 581878361 810 399637442 693 722543709 184 96865803 325 312861584 356 266788273 505 162843011 772 474905668 547 505005288 68 685443057 964 669514061 794 588051680 809 503361730 154 444199173 826 716417120 194 605480312 312 4551558 520 291609129 366 242576757 730 597527452 184 113061056 527 383295601 662 390261820 572 586109126 623 152679115 191 170551259 143 762060142 221 384086835 683 587737699 631 107081020 346 956709677 100 435828567 388 475212544 777 32044688 206 848862947 964 52694206 481 27929053 195 308761479 679 348250432 122 130346742 127 174331739 800 709735520 405 526158684 623 264937968 874 139774181 586 916417376 154 565674789 443 378771554 44 266817785 766 501400262 313 191307362 602 761437302 69 688376112 643 163388079 71 810571586 457 941224295 257 321899055 549 309563118 376 988973376 515 962999207 588 512852576 362 731612455 236 815759255 951 646946496 830 40945021 118 714261525 726 64772531 764 191053077 793 357055801 312 553020502 203 574853678 758 85760884 237 464085091 90 547481688 99 346034541 893 939285675 711 612076189 34 424714657 407 492261310 468 578474529 769 247233645 996 618392824 775 722278164 400 768992853 82 883489719 765 55207244 524 180859165 428 57506447 473 85630828 119 488582733 880 194729621 604 449333293 111 898334107 942 668190048 234 351377245 940 654787891 404 792708907 123 628679919 816 759182480 754 467001783 797 770812829 213 146985553 636 147235707 922 642562544 76 711778136 959 278190650 846 719510224 663 239992686 731 400674759 96 782920295 376 350534778 99 532481646 738 253172501 892 560234774 76 129759757 223 912734564 103 773338335 490 112440278 228 543277944 779 74374142 587 565575474 281 686826203 529 440355066 530 596421301 980 60278833 584 105149325 850 222625677 675 664494764 349 957494774 408 808137808 303 34531866 744 994546703 927 368946968 793 560793625 939 59495845 776 34065464 792 622531401 476 747719283 840 226398480 182 553830056 810 62434965 866 480673222 58 837344861 25 399808953 87 256238534 88 176528929 161 582281875 376 455066328 260 381216383 125 442736633 693 516695029 477 461294318 137 160001038 148 507713068 260 779780547 402 174887135 156 129452788 132 898208342 624 459063233 88 347448217 876 24882199 245 692522510 954 840392492 265 24674788 462 602562196 913 34110828 728 488337557 92 462383730 942 264984828 606 735831658 810 330214135 198 430659962 734 943973960 486 188493841 574 874391943 305 751246837 26 16524611 783 156679758 347 731373450 593 668938969 670 195657462 929 868332872 388 326616219 732 712871456 619 300314664 600 487785793 684 645157109 595 214703684 0 835151283 113 786139046 32 882809965 653 696192099 727 826821986 167 466709153 43 209829897 661 610860669 567 10706344 54 442194131 889 539885947 170 995439516 712 183603225 872 702743241 56 25041844 873 105395034 918 655131394 765 290532888 612 805941954 969 416725740 121 897183580 550 165494087 499 329063708 622 327326163 123 645573371 804 786942599 670 37353038 293 283976901 3 35326639 751 560049215 89 378786091 948 446906650 202 895907894 859 262072313 905 915237516 827 110670588 124 712940693 942 36796382 36 638472051 194 811619685 24 487097129 614 683915638 524 679895061 160 923564436 80 722287975 982 263809112 3 326588747 89 699434774 328 421842974 623 875587540 854 792923541 635 613983210 599 970515503 854 588283682 609 115016025 458 599392897 456 885210582 649 349037637 291 387375085 636 726249309 305 951143340 727 77720470 335 617639053 843 937582160 634 210354523 231 885092335 84 219632259 480 739242113 200 649521147 218 981826315 855 488553575 548 757936800 149 13464239 459 908918476 55 98895847 217 610482614 467 849931295 909 251505888 342 706532537 692 504737657 292 841771637 409 282127517 606 678933206 44 118776674 894 387644679 724 689034149 170 307902232 189 864828955 484 828995071 344 641224160 802 974908074 978 250056291 49 700385646 140 172212118 391 785584744 586 588692142 957 606004307 519 906785337 425 531228079 181 496443332 95 217747684 186 92128452 852 729316124 165 632632359 272 18465612 988 384028964 866 693920926 328 636655551 929 877303969 868 560114369 869 422899861 89 777265982 914 256014065 309 887554254 217 615707798 381 658143581 356 489290109 366 669254157 517 55052918 542 893232167 739 373225254 920 149735142 481 567310074 978 163602277 347 77838889 990 848547838 811 298669840 602 329925050 0 349395632 594 929522269 347 906200274 943 559403631 101 237590412 241 27343415 392 162797983 628 80664551 973 839705609 777 436655649 688 350386004 563 993114827 561 229534600 575 127093476 70 408421200 345 121638784 198 644009559 954 431115306 707 463061681 625 584675788 284 241660682 693 810782231 879 877295673 96 882084739 767 928702396 123 6972772 293 827890744 522 31135702 291 901562354 841 497335394 299 387177967 939 638434990 743 749885367 139 619812303 643 312894844 341 998620660 773 791143995 200 995846036 796 259953588 196 948392297 650 98860142 412 173100499 883 77554565 873 827361407 868 783236453 925 181553809 930 162171012 976 74387040 532 934042558 324 233193919 572 44576318 579 44980078 583 954010487 174 716598375 555 954483580 671 782611395 168 343676383 788 530564757 549 404321323 727 94379476 721 930470249 101 355712303 795 761438618 517 812316334 704 208978317 702 613343351 183 87568829 748 765250010 99 929194407 733 786692183 311 586662250 258 84418999 22 905947871 971 727982949 629 456752380 971 937181669 463 309831236 480 20643929 815 532032557 292 48598455 109 598251713 122 527343818 664 36563346 835 703356286 376 772646646 82 992796889 362 816964747 304 397245162 267 809743042 402 936015261 229 215803924 980 925274427 255 743169218 238 754755432 214 727259947 965 161735136 256 904537634 596 435248835 994 319299819 501 809264214 364 313891183 8 206635333 161 681158265 722 170401734 398 740904615 541 689350569 909 291482324 0 178628628 661 373539735 995 277355719 47 849337557 191 48127314 677 62176324 705 892995064 897 254344732 615 481335216 238 644926760 476 13995620 757 615907386 774 642420979 379 901515746 542 204829021 522 72361114 316 338222910 317 750938984 667 430795619 340 84112261 559 302400905 243 931434828 754 568575587 422 158837507 695 793002448 971 470962805 179 95344363 253 160441271 587 135152330 43 435750798 537 761755723 148 661943671 615 698871122 677 272742205 273 512757929 973 326437714 636 114105758 541 239542473 725 820905483 739 119259004 774 613975368 495 11511834 441 426679460 119 657402141 746 249044262 399 109487310 652 826748690 901 680598718 543 858491993 437 863215040 937 231765022 890 786457363 200 643784016 730 140453841 113 159478612 365 873575750 94 235485783 745 790503463 644 775871459 55 900158826 590 4348762 902 891217768 133 546832984 324 197914137 618 874484730 336 226649362 778 263689263 108 524921585 852 85404619 284 189859657 503 400729847 547 366596713 958 155343899 322 59026480 559 202820170 175 512218076 93 20084602 217 864020234 804 795802397 432 873310788 225 643305095 283 276243135 504 45724287 279 863512295 564 39561797 572 720411413 300 470394207 559 797523199 45 200065797 90 414662476 145 604249958 436 592926432 441 262811548 451 726786820 770 315433724 612 328424114 319 8646344 944 811199934 910 654774097 830 106951657 519 597158108 59 477134718 818 852336206 787 846719619 313 304687280 479 178333168 199 143711147 56 200329081 851 235423817 284 822747802 919 973760959 153 63981485 750 744994037 267 276864113 697 50226512 275 410790655 40 614934917 407 160184935 52 128428439 543 96993058 910 965076526 1000 427803705 133 738946299 511 350124819 915 266788279 928 911894298 48 244074261 960 934314789 221 452524998 182 339555939 306 181031901 59 634810291 504 830035509 800 138831742 215 81280888 969 823303985 848 712687426 11 46749853 594 258313019 856 478048600 127 681878870 639 881811641 196 698680152 7 243816471 211 153984979 153 80957902 51 928775236 842 847100482 463 185545402 673 364423999 154 623461506 11 481909503 194 60876536 446 852098147 720 938729484 841 305975341 392 627325222 497 291419720 17 359527558 151 629176386 249 271548712 942 981317442 937 685732424 860 549861610 663 636371058 478 48996053 864 276049416 372 85331769 590 128427005 315 252855428 354 671261846 248 245257513 892 119233107 408 264063279 597 875654383 308 848604490 8 620985615 354 602216889 855 772041734 807 664863517 806 387861880 611 841948192 869 642998346 235 131292397 181 793222345 388 336456640 897 369958929 562 475593758 715 808046551 357 265475813 781 137137680 444 493754955 509 941084264 339 444788661 251 141266204 531 258491236 283 856405764 427 263521642 56 950298806 454 440318050 932 126080044 175 951138927 302 395059372 509 307052441 52 517584304 995 107570285 269 743547092 126 530122695 499 9997244 454 469202891 111 801299690 172 763134628 71 635671054 904 995605743 634 872244229 782 860419509 999 304830052 390 345803581 191 832552258 287 394332341 797 192801090 962 629306019 195 985955195 896 763100285 256 697535213 295 536356023 512 566387657 631 923066535 907 815426714 506 878332656 644 418421765 174 639779474 776 227224916 451 711017543 960 561587005 427 966996463 305 912983010 210 755148156 717 6290279 101 954208930 775 512399356 952 746714964 53 789072868 396 6927067 418 572357192 279 462843986 612 915987732 162 899063746 210 26992320 817 576467233 771 988409701 995 213875803 591 395083966 596 824898347 439 684939517 986 833818347 15 530394850 669 373046654 734 699237146 270 522779050 541 13947425 720 986367505 409 825184139 931 426599818 364 216083207 816 709139636 231 920812115 150 525775976 906 689933916 178 186204828 188 255697940 75 967022023 373 293089726 474 637785935 831 672718707 921 752336977 127 283405153 889 814884164 118 309773025 68 430114020 360 926371705 580 781529436 399 10515215 438 118902093 51 7368481 258 568393103 257 664205284 264 890214654 911 640018335 874 989174123 175 997075492 501 734961980 307 317986636 576 483518867 87 63676548 175 114095813 937 823598135 126 798605839 36 623719346 945 670239696 541 34521389 862 769012780 952 425417836 385 771551553 596 10987723 303 15499487 612 90003205 897 208019398 35 993749727 567 229078880 510 722523429 85 181765577 916 91364717 688 888259030 707 681113251 361 198780622 286 614385980 690 126910308 334 567879932 91 896171401 871 783989688 451 985524255 637 575139974 646 46033413 109 96585888 902 963868833 589 769235216 60 480771784 196 481556334 730 770893182 536 353794809 654 62689483 992 879830295 983 787429414 594 721942572 756 547134101 294 511510339 655 103999848 598 810378674 523 83130946 711 973752288 912 693338624 358 747099816 487 457394729 241 429796131 933 43243757 110 242850731 814 449480560 115 455695579 63 903947970 823 410252752 680 235914573 671 938865105 312 87466608 742 998155513 370 989974284 40 666100920 6 366195234 513 752616371 51 198364363 746 255972658 854 689163899 662 977020871 989 105740315 670 232015604 569 340478301 389 891395519 988 165137358 756 130735729 756 299688043 658 384072477 424 475575964 900 492574541 74 623538414 157 444177790 384 487241546 1 699714984 408 669886210 118 907099754 910 51073475 443 15381893 772 656165645 878 262452879 891 425598659 797 741377036 20 224163017 335 272695948 655 130536235 848 618690787 706 359254980 999 240431525 391 736477205 185 641937982 311 998477858 378 952317352 496 206762149 974 14776769 606 456334217 755 537017805 74 189739546 494 445510197 4 872223971 206 737190830 165 819892490 642 793473693 427 370710971 837 646605948 812 844041416 326 145094454 174 366940598 81 903562503 103 798406144 929 231967592 894 930937848 594 616797669 320 688177023 904 716226356 86 338078461 870 950117856 863 968823735 337 695087283 337 1800199 827 905637711 47 71207724 931 362987516 965 496045963 625 153881037 554 233800114 76 994806271 40 640473569 265 35140458 610 925843550 219 550697939 901 492147239 521 905575081 499 132710321 738 217200405 615 340763037 960 116628172 86 206849322 203 34633280 167 134754088 874 974127052 309 128690108 432 61379026 981 171387770 830 567529001 955 345518507 935 406957061 349 214307891 777 424472747 276 350739964 526 362721134 862 223558062 96 419633232 568 916546694 793 74297948 95 870989232 436 731457982 114 971074943 419 773715246 53 766969365 606 722873293 247 645038862 926 307033649 161 449887411 599 997315314 348 282057651 933 682004101 233 494420985 146 192264605 468 556378072 628 506400566 979 147519281 729 106392572 130 613752575 859 821593124 605 340758938 831 238075067 918 728357646 474 462579531 323 376902574 109 53386671 500 586701162 303 500982115 217 851696786 342 678455444 611 67800123 890 915604802 969 103516716 19 299305006 730 496955351 72 926767635 445 955595680 850 75532784 919 27948270 923 453147637 467 319206925 134 222227589 810 316823769 879 985542258 665 287055548 743 216702550 727 136750720 684 593640266 905 743563494 86 666200218 271 778311789 116 854843637 37 426890290 636 697158640 788 363465590 54 169020242 545 649216878 87 941100872 578 171978161 557 375945432 505 147174484 996 444715424 880 476172544 211 262706753 254 926450102 279 424717240 942 227637160 723 331467349 56 494841897 111 69203198 576 600915116 641 204527634 83 541847791 293 294892633 560 780319576 210 158251569 802 167555427 174 192301068 617 815308003 683 47716115 12 883325580 140 899146758 206 617979956 407 489078977 186 402441645 868 692180164 958 931011368 654 425722312 633 172353818 173 705456910 894 758503748 964 912945358 412 694323659 68 306827634 786 539984290 905 74999499 112 758051532 787 723278457 883 694584294 949 447210461 274 797335660 623 305458017 31 411728411 863 861675111 809 181757006 706 986455684 457 827311095 728 86768491 493 132210364 858 291272145 841 864385820 725 558315029 286 127677076 868 446643166 177 911319326 888 681175923 976 773026924 609 324613070 101 983997662 115 541737494 219 788930818 52 774296282 383 262249301 369 731614128 102 492717604 524 137803716 358 287567506 895 604507564 898 814495212 370 389565580 369 347755797 219 253036225 216 406785283 879 925764865 601 172116121 575 860883123 324 60831519 417 620594096 455 917683571 732 200102959 355 293396350 225 847629821 661 67919946 465 551444977 553 403247499 804 986144573 194 186483206 807 884498571 242 439183846 508 401019 733 19681125 793 798432856 956 141160828 682 964653919 559 43530345 487 398399470 404 467106950 269 867043211 636 770775238 231 485730278 352 198816844 784 810597929 670 412341464 594 911051734 812 468100956 645 305834672 887 643471588 146 95543253 214 183582825 286 609830040 960 183874836 363 227423313 611 766785625 795 54846396 822 327571054 359 93618772 113 279325126 139 631114458 517 929825380 727 769881323 51 826674171 935 365124139 83 998950509 609 315939661 105 753908536 238 296869597 5 386723402 825 337605902 588 103631605 965 858472020 352 14624144 904 761871554 400 334340823 461 993974091 402 15343494 973 313947751 706 750032184 721 480858751 887 622228650 228 31641348 880 3682873 394 210457314 585 114290137 258 966437068 234 984082579 399 49086454 779 605508362 670 452191179 965 8756758 155 51668694 749 544194322 448 102202993 979 959870752 358 668574298 765 568491543 102 149015397 115 185654263 272 229601788 527 462135742 420 911288233 827 202914466 647 559612388 667 983258667 531 578778627 341 915225460 555 563273214 104 280764034 399 361384655 221 168557559 122 484601205 456 923859380 284 425725419 345 718169678 193 541220988 725 192360991 109 727382760 667 844657706 636 851947535 322 405222642 516 404301387 184 800636030 675 145557138 390 962993070 613 689913082 642 901181472 122 694940453 791 277602758 260 148020598 395 32530633 352 799854685 709 432222896 910 230702878 925 37372732 867 988455347 16 245486015 869 118387322 348 313520679 747 484701328 11 639513284 398 92257536 668 506037973 802 440691244 621 241257596 806 49216809 247 117992153 174 144469150 989 839041566 635 631427676 95 843311939 632 938815190 480 161242061 438 317940547 289 962674351 30 155819259 850 808591266 880 818041714 310 409119881 125 524325100 78 155427085 562 647006004 616 690950723 726 859920486 502 776343537 365 139057291 757 281858228 679 301552281 127 535844215 813 154657298 974 533413044 759 757746246 250 305058669 129 104334989 655 289910008 239 967960358 398 848863429 175 430313045 964 85121460 113 451806132 459 344701643 900 150489390 161 888632766 413 103128052 590 118115242 656 771366670 459 544821374 345 190034087 110 383761484 73 390114406 346 232260042 620 938183017 306 683442555 142 15610645 262 804065117 360 649889300 78 883544214 875 739972653 360 311927257 926 363605729 741 267602991 393 505552067 388 653708247 239 199138892 70 374346981 241 555888390 656 702030481 838 311522599 268 753247031 690 409832264 57 571870116 549 285943054 360 494748195 991 869097456 733 366327409 487 19449838 937 492607225 821 71004033 668 796228365 675 685990852 98 556832747 911 163705453 495 343370937 206 267452434 895 421371320 470 500051298 982 878172597 931 206665529 844 374348736 89 301215018 557 871393180 297 131562114 656 569900640 656 817938790 218 719727136 423 566268635 912 478187125 247 594964216 446 619063542 174 968679000 342 156048496 636 690811025 725 262043664 646 184651103 549 308959198 157 715117671 331 190432836 455 38684910 307 446555610 599 518529816 390 768907344 662 546312985 424 105251800 470 908205345 483 215734189 168 266976113 640 941523012 406 127704114 113 70567577 911 813528720 570 208547029 938 863347301 325 972186320 805 978159995 236 534025524 676 623262298 599 835335974 399 11344799 112 824438116 45 874801833 46 639163936 272 486369695 848 202146533 195 871202344 22 366680902 484 478239453 407 134424209 266 434883477 200 219663270 569 519546394 291 741513124 907 453086717 235 79075626 570 909707646 494 903172513 372 685113084 652 583462086 210 263935445 885 145810215 838 965288268 907 16663094 820 180820639 484 451964739 130 826155586 863 630503612 126 162117866 96 80991898 193 485539691 758 181913835 111 195359880 98 896055065 834 677243339 491 346565960 627 318592534 476 85988288 171 489264628 606 810659543 410 297528282 322 849009363 8 667928104 424 888366406 905 992852589 342 867286240 839 92075216 66 465869210 904 123812767 514 846531266 609 629197118 423 248522208 790 898513186 824 387370438 166 36083768 86 987274393 287 825815880 227 841884775 916 22015705 498 722193264 995 370540700 901 358700916 361 196028457 553 188433867 318 233448373 162 537820055 126 850159418 879 531194403 100 604759703 245 413066356 544 535142634 479 469244167 57 765955827 247 696129467 994 97558649 114 638393659 604 157427649 767 533947596 255 303291032 791 32004985 643 979413037 870 305781747 684 572153652 169 598679958 274 518131959 986 858486008 650 888680734 915 610305861 33 772327653 944 972736041 843 495757959 964 575484588 127 133853047 976 448133411 847 637777225 29 571996223 408 883772378 423 385648193 542 224197600 500 406755128 42 554191397 158 517667236 564 814662660 268 310517192 982 160356673 91 218065219 514 58893978 873 24177184 699 533216689 951 83559623 182 627378047 476 601178497 672 354290257 839 372844034 284 511419858 198 298772153 205 648961585 371 367820638 803 970051487 371 849765117 89 379551615 92 450601245 269 37087207 244 631723194 977 304653835 365 988958508 993 259380770 24 579963156 956 710028645 155 436554212 90 95026746 154 783148927 116 549178274 55 442118464 528 761824499 974 222219264 821 123623464 976 984341307 715 49282783 397 23370001 555 39763131 902 340103682 617 720834093 77 200172689 662 265350993 276 155535811 83 794993580 78 204251544 638 676247037 670 810333180 997 667903055 687 304533622 84 491797290 745 908867146 59 678463200 893 344862491 514 466310885 782 196678752 304 284467375 270 17414327 424 850786633 210 874266760 496 341714060 964 350177471 871 73508500 395 11152315 152 396832515 564 881259206 602 442949580 0 999541000 163 9418748 50 235101146 857 974848964 67 371399635 528 538769590 0 592933946 651 562350325 895 87231697 539 27578191 281 861573962 320 780848676 789 446742404 206 824581215 681 172110616 367 118094414 259 322803612 335 588755150 517 384695743 76 301565055 360 669964552 242 364081988 821 290242145 346 301079508 744 637994251 144 691810037 217 84913546 238 118635179 148 763044045 518 763915956 268 994384162 243 744007336 317 470405119 81 13797754 431 565359419 806 263951134 55 272651146 652 460199199 593 464042841 179 114362787 509 22195462 920 894055147 594 323057613 350 777262784 562 787816396 613 641776073 728 399395811 406 797735005 542 858189890 405 927060623 790 656501190 423 213376256 35 756093829 727 442524682 225 502890036 226 344867494 100 896653763 68 520583068 868 256265528 660 646135938 912 145466875 726 196008301 12 544447209 744 266752751 933 192891962 896 339244917 371 766878693 258 850670582 467 294330215 732 672300177 861 362843740 43 860933823 956 577391771 789 348795524 242 250522989 746 508395225 227 140997495 139 966175831 875 447660755 308 266499459 95 347855425 730 1299059 233 835580290 48 232540004 192 649061278 902 353473473 504 744977470 600 815688025 400 574156245 859 527869702 219 75276693 16 996062471 70 555007689 207 570286882 463 197162049 473 915353262 1 843342733 440 90901965 820 472241017 941 718469219 395 687577355 375 97685186 343 148062286 62 629201775 990 694961181 837 467518583 593 107348042 907 812568547 688 284356694 223 358503665 171 446766805 255 528513953 72 362426591 390 293355893 218 435671233 174 793707237 893 944260062 107 842100297 299 553972602 904 170556435 249 36270445 781 176580338 120 506506993 742 453134718 432 423329413 122 757110986 200 648454238 182 846441821 152 544845350 631 944224811 504 405570198 353 138753974 847 927001675 614 380131694 790 274259934 502 858095453 354 963347369 128 200851544 628 988863927 937 152341818 303 284978124 730 551118198 986 388773074 70 978488491 748 464256857 38 125961844 767 32341029 579 465583147 38 269650711 236 70554163 901 813548700 36 661393367 617 320733321 777 883542540 869 104377445 789 344979932 714 83811812 894 326827674 74 76924393 245 663445831 268 954314996 873 895301466 633 942935893 424 328627615 22 351940238 800 580782369 313 304243422 266 642525443 325 214225546 339 501719781 276 196865099 752 69987862 297 922999271 611 854268222 835 494058917 458 446145671 916 333486309 131 618196712 647 133108290 833 733570383 14 866748859 0 28755207 85 636811894 799 851415922 449 961361398 44 285308904 601 437474123 808 658398262 368 292626668 947 928526607 953 476589169 794 650954376 872 980259387 761 595862206 866 976530847 910 639821294 109 522371727 360 46915102 953 988991582 188 938639406 901 478377077 496 445374577 755 381921154 910 348307287 515 819283256 994 807286898 418 784702269 233 449809020 576 302456020 682 419411433 536 444677134 484 956848194 940 217459728 422 735055780 300 162142523 303 738087328 104 334252562 789 941389207 675 513708950 398 349538406 630 470296210 304 642369741 250 768243120 866 239661495 596 937115443 807 103135115 994 23120017 825 524901225 297 208777238 701 456356573 198 166607123 356 494074922 446 47482514 724 686713123 808 51679146 346 266878069 310 941974092 338 461837044 423 929734659 309 621044629 856 736720546 304 912207291 518 49873675 913 922567485 200 454838343 620 5843823 979 155845059 580 347067484 229 989690988 297 243566345 200 705077797 679 55762893 512 963063029 453 817869832 764 9065547 320 413135163 61 299231822 470 833085306 428 776630222 596 283429058 144 888365391 658 976670435 622 554648643 89 714644572 162 330060739 988 896741586 2 440975417 536 489521260 788 726566062 836 995548568 862 165978816 811 89992467 564 680923126 543 879620092 262 461925357 661 84487927 804 88559028 538 980069255 290 529396541 354 723244610 465 640564183 71 782387901 937 809594911 145 485072323 490 894919680 322 141533827 537 808610068 527 829877842 486 416480714 923 618178905 347 175052986 673 184669852 332 682287275 967 501724471 336 55385435 305 46347026 740 201684804 412 513444220 122 187981251 275 311811380 371 409916196 969 94489495 581 608839747 910 358860554 605 562960727 988 389090917 43 658322864 737 824328261 393 298084154 431 472315239 297 124819872 202 311155254 665 760504202 604 696979039 779 226146593 237 209491006 300 784767755 602 94854273 564 470125043 961 774171185 945 490793140 489 366900555 656 408757326 381 369019043 362 660423202 882 643925133 837 134963650 471 576352968 315 273683778 400 976469407 707 926401650 266 64742989 723 436196698 680 636050372 655 158528002 113 6091245 423 34491448 296 996605653 169 925902189 318 556325315 894 543311729 901 968663853 74 721129004 303 138999848 9 636671889 559 632533405 391 307989456 323 200975815 850 881043806 286 980851442 99 926311417 801 273657002 552 592566414 319 995769231 574 456425823 193 872438641 224 704724460 119 151212873 616 181720692 238 117791932 704 850580246 776 778434739 665 955305026 757 507533570 886 853754472 631 243498163 636 570647760 348 263481554 53 995037678 16 819783241 956 557621267 709 533739999 721 607002195 836 674292292 316 882398714 589 79811988 253 757954754 253 4653050 200 49935213 9 52965395 722 414538244 359 573521815 351 65538579 477 896322405 761 515834160 635 580233898 275 253549959 864 939165188 509 796385358 887 640824381 788 698864506 526 151394249 197 554975564 340 277116271 39 685287623 58 842952608 163 644282927 283 43652662 748 714923164 532 895712285 9 162746067 256 903894932 651 848664394 549 384208776 756 265516503 608 197591365 389 366693142 622 431254662 883 739656782 894 808542116 253 271150026 615 844323483 323 478649455 506 895533639 457 245211582 363 327153131 750 949813008 35 937483730 837 215981110 300 311069504 783 907552069 985 73310725 522 259461875 443 141346390 123 278714255 815 277876021 646 484858343 733 177363838 840 789147025 348 322664232 991 531032340 466 421016098 145 767861684 58 807225861 550 742923043 409 836455554 526 676398936 146 657314264 614 164773919 366 415558265 367 306901642 11 289996972 970 98930923 864 505367742 267 776816191 390 556277173 166 820546756 710 899085664 599 22576527 518 734926328 354 757003147 935 306102495 851 564327959 164 733657598 684 970767937 335 714554746 73 713417056 739 165559659 802 630808249 287 811366351 391 773898970 500 555626073 174 693299066 469 463551442 943 938544042 623 664428731 605 248232355 710 342816362 858 419068468 4 507213805 233 187466820 307 880012083 873 719840049 290 210097509 377 638944895 267 320172346 804 928080145 834 901076566 490 386274049 575 758743770 308 914858289 859 638768207 153 763195293 672 369092505 519 713629696 326 800558340 652 877870159 864 353798149 687 361788021 330 45700257 647 893816107 494 915757081 930 818492879 392 544183428 616 954038539 511 11031431 215 128503919 513 306449996 118 202796000 295 760698624 728 133544208 192 584304147 714 936290386 648 536777656 615 625693624 466 858573812 736 751050427 275 222411924 824 424672215 697 155576617 563 296629975 298 763912213 75 926165110 789 258448932 942 78133687 387 312079748 88 725839753 233 583644328 602 3205173 595 472150549 744 215929869 232 276214840 428 599223465 869 24672538 671 189990476 553 88462824 199 643330559 998 911522175 12 750461514 812 696625931 632 68000988 633 525754612 811 772904118 374 804274125 188 726507371 884 839422463 291 55779330 534 484030146 137 836920079 880 335130432 448 626370022 216 51822213 799 535360831 237 214093200 122 885806057 594 166564075 470 53041375 334 53268913 975 150372859 879 606312287 667 166584472 241 694898511 463 880193932 732 865510604 113 368607494 494 710512969 704 16125930 702 277283695 468 827233015 128 879079633 402 25097007 350 667044238 76 181702343 792 479664018 57 873415134 420 534457481 27 358689585 462 725750143 132 319416631 971 34297031 446 319225611 508 143979865 733 705902626 895 957875894 76 233694998 179 296525418 696 718050192 881 999984773 360 191407468 516 547149599 765 695965630 752 270290777 509 170812375 173 492792623 528 64743145 707 884921535 969 57676144 678 739232991 605 190469407 994 679014551 471 506041096 64 408532815 110 514968737 186 624257295 266 891274722 728 570463496 379 46918123 532 125246377 513 168508929 32 865854172 446 194571418 323 6928201 966 214808917 512 505173579 683 180807184 647 400289345 881 577395407 542 525753993 944 350753769 941 793171187 159 308813202 490 657612204 75 754293093 915 871748719 474 700150261 870 169491944 536 114389718 647 879447990 151 875414717 229 25712191 651 279034384 538 256825924 860 470507868 563 385990936 219 137745295 641 24416778 258 23382610 839 543397786 712 851142789 678 683690215 687 636665660 839 617818929 560 318445039 879 481897269 558 110962557 179 747093348 444 583003923 179 243329136 820 488345411 947 744885095 258 324041674 981 311171106 701 570992396 482 787614656 329 13086178 578 269908059 683 707985686 730 986665195 820 427108814 485 12533178 518 71908785 465 270170826 218 767581146 914 921051440 408 241207286 998 709169843 682 293046493 519 8768813 481 431628698 308 108864998 769 793007439 172 57471308 467 364015520 78 604104268 599 881010847 513 511702273 851 431834672 742 131182460 204 609326281 552 473456894 972 15481056 319 735368222 22 956648103 643 608343549 892 304328382 37 597706892 706 966724729 709 155038442 575 60240338 801 322659042 790 720055039 941 595134523 688 697909374 731 181076769 576 733555268 188 663055291 806 511937508 103 266973075 890 119813772 316 343370915 289 240302151 786 209931643 516 593883084 847 499990141 938 408084278 724 334694595 907 935346650 24 204736054 364 765766046 103 383082567 572 313364470 526 789558559 989 746056107 478 800942287 360 570744809 158 264974557 653 374051100 837 721654271 656 689900243 263 490398323 479 71129735 995 777393233 730 963849460 588 526135114 507 251282247 851 793576010 171 563858581 790 763017659 936 761355188 959 86039371 466 252265878 162 339599610 515 752091788 877 881704368 606 412695810 682 952399864 339 20797285 176 350452426 494 174803702 528 435617360 203 711897626 614 453823789 431 570666112 93 611247253 25 665856416 312 365063085 460 577268264 852 179744946 800 766535294 380 727894566 821 208523720 729 951817421 763 848935953 413 605617105 296 620614766 125 340389441 462 798437088 809 377040821 175 178773917 946 92760786 832 169280332 692 94170960 274 753460470 350 657130806 738 831891303 720 217469023 830 356157152 875 458455572 509 994329757 945 839724400 880 740766211 38 563821611 255 510065642 838 239844793 91 792066586 479 669279731 18 626435434 124 230594762 247 74857725 507 471441876 560 113936538 163 995898433 102 495286317 198 171155554 726 113538276 716 799331324 977 543165233 153 704903278 883 935901358 381 861445327 24 208172057 206 691266096 628 955195747 749 47703492 876 777018670 409 391379816 922 274885042 982 551165262 870 42719004 758 675310642 897 652516175 177 610154574 908 488278865 86 541888333 303 85353771 709 382249707 207 933383643 84 595423996 792 916833480 546 61394556 347 921998655 433 543955317 655 329700740 242 645763476 343 950679259 638 875976311 547 489737193 351 148739325 815 435875243 62 249680828 824 206069927 447 737122164 123 88807840 943 875608484 356 900132850 975 818009839 794 510872614 126 434674839 122 400445979 164 656695463 329 695909100 190 558345043 721 166893885 353 999915161 290 703439272 306 999363347 613 888648623 260 157901147 470 536501673 265 728125103 154 39868825 536 585427531 926 463905593 501 516558558 80 195127271 461 783564025 757 944815714 354 488223659 335 679606214 375 401898205 563 745597370 305 986142397 412 760381276 619 696720025 971 843228591 72 643752622 579 149314108 794 490590561 333 451493787 979 408240417 812 490024243 272 4577678 636 679445001 210 381108121 735 618169964 506 709774070 147 694252210 773 684996869 425 368589278 198 147312190 452 182082271 161 988589369 57 560456613 709 309064943 598 548756014 740 64569737 714 799035318 794 782423157 955 270359981 710 546573049 15 830369086 328 441283991 554 614181161 541 791976776 663 501173160 449 200827849 39 450815249 430 639209143 145 905095548 952 861242154 323 699560054 977 21114694 29 642346676 189 943257108 341 166546056 674 820709873 380 926685465 211 40224032 319 408869415 997 837405291 979 211410415 204 24076938 544 659684248 635 306141037 86 556840401 41 844258511 261 68003068 477 698759342 75 573282339 314 708962551 591 726691339 517 424280467 708 11928491 142 336387635 41 967523346 488 202075051 688 38855626 348 246955407 865 274985236 476 706243410 105 324460879 73 37831544 788 490997657 436 553837241 826 540860557 226 24007998 238 975483522 547 775411660 509 95798328 889 415555714 701 164404983 567 9457720 712 319334 379 607617107 833 258469602 870 105096928 630 970050399 803 502660493 425 632097263 324 996888832 642 518909346 182 723662551 992 983156196 27 762692863 493 844060627 76 393868933 412 176983064 487 121943327 341 901132024 658 825376365 342 282986188 26 350825535 420 195463902 4 142569525 335 674237268 214 963154791 620 775606661 884 889892704 443 536307047 842 762410297 844 805109314 832 845063380 911 962951334 601 376635155 644 788386180 929 755782628 299 51842213 395 86501262 781 869992701 749 355655730 364 375359295 177 811043907 648 686168431 331 554351064 711 299569350 793 148169999 502 796207255 781 551933061 441 187993393 214 658964923 494 927407712 504 553216334 778 825241949 648 548971248 624 397711707 638 692118984 663 732767292 436 640146895 700 331775501 706 887728023 385 122495614 537 855245176 580 261294365 519 932113743 660 414955495 546 108546417 106 269698871 749 719879360 573 765827114 698 477787630 152 725520525 195 72325806 168 958390614 557 635020739 913 769577595 799 781981382 834 787673451 95 636034098 886 565004103 463 6205624 98 758725213 473 742698940 298 8161589 513 548085991 933 449311743 894 151401940 433 840608605 348 787517364 586 992654308 926 631521020 316 148803618 860 768870666 678 502247796 228 651530709 892 635044270 723 893768928 681 742645625 439 833135381 910 936669445 572 314846845 469 821966152 111 810748846 331 419413223 481 662135104 362 164638194 734 558771190 926 609595939 45 266582531 172 791445416 210 914765472 874 21510186 920 777935800 834 567988960 732 518627108 57 225852110 177 701055784 444 723273573 519 611021601 728 198636807 477 514404350 398 99293556 764 433841562 524 996733386 76 996192210 320 15307924 758 302936107 42 764627177 628 449116507 875 360783188 236 944139100 93 696343973 98 729070513 237 124344506 501 663614616 639 493605872 933 829450354 70 897992546 997 805779783 483 386575948 775 646535339 301 561844800 871 797979068 108 663824313 642 760571978 30 676547290 836 533882333 87 772014233 434 19184784 883 367122112 1 19889812 225 75439978 328 233620298 188 337215395 598 525055630 25 192982516 8 415515628 834 367237064 217 333921989 106 73900195 462 742151245 583 762449762 642 989862601 709 932176905 172 374268989 254 197660478 259 265585446 823 902998962 681 751454037 548 741386652 487 221133005 995 792111179 165 931160967 173 428431580 993 570266952 136 302768437 1000 428584896 154 511441921 632 885273469 676 809623436 516 927877554 46 266198679 255 379660558 433 110608612 932 828657032 620 204967680 181 206584834 231 940545591 687 373931535 321 625228009 364 392625640 49 646117058 244 697517909 308 858663812 817 629980798 812 493251615 574 334603472 511 432732545 940 844523484 894 730592922 111 79290979 764 302652362 158 579129232 456 996920235 239 377942312 9 266143491 833 629711327 363 28425472 325 885520009 359 652276489 428 240883883 914 652251813 917 444886386 792 476826241 955 324545671 789 779767667 30 255644948 746 451646231 721 441670063 745 332128751 822 519127977 706 84052979 278 222224868 917 436876996 964 416535882 342 656303524 257 559469077 342 493591896 686 935769450 827 819275735 186 133014213 507 382642110 503 905940461 898 87746703 873 644404376 804 289500091 437 895429220 979 844149747 386 273724814 697 385760412 444 450681065 542 441418578 181 536249682 62 163006052 290 715609257 775 812773878 865 339147495 418 821631746 717 974413385 145 762269927 134 735499881 433 386996694 79 420641453 485 845559675 54 856684472 651 43837743 958 731664037 68 134893641 825 139187932 211 805587673 326 942658082 168 483383092 879 514802789 998 28442323 706 390188205 678 798550539 586 228950993 521 159095317 622 993150504 583 159128747 394 287498447 935 565139522 910 533974381 859 269134571 287 748069640 938 746723643 477 817681821 327 749006400 48 838543521 149 861612146 630 215474652 770 900690414 81 234942066 909 674581780 840 790605271 252 857210671 593 883443768 827 574792218 853 817975298 136 591050025 196 653958462 913 23466361 811 65067931 856 70015138 57 103161890 910 132402555 241 859724991 20 280303649 940 437443307 202 649066744 841 764199465 228 534944000 512 759903098 293 827692300 608 745916004 704 889736605 82 722964823 839 441160558 175 495648082 609 418079201 835 802781615 855 344758028 316 170525940 136 812993390 449 334455221 824 787126186 494 801758504 818 471124450 138 253951378 975 91914782 55 964785956 875 749820984 463 211497753 793 428499178 155 539099128 417 250039061 116 410436073 606 492295190 542 189603793 858 488865339 371 452616382 575 287961653 374 570554470 605 300516985 591 673231122 398 223514895 124 280476596 189 382495138 474 873332951 612 734089091 680 819287167 67 216824215 525 333558204 807 631228864 459 647958649 132 73877391 329 290225614 316 126295777 632 694932604 509 711177720 722 274382363 300 773652450 819 775967103 930 52388641 176 70548939 359 609051384 460 835131085 359 123992140 918 834496408 984 286081270 224 238499722 475 353653089 48 222948847 469 486449564 804 410815045 347 411701514 90 83732578 796 714953961 486 752612790 499 21032676 678 813995160 986 888752407 549 37274216 572 728629089 567 244081624 826 663760917 991 176194074 734 317099014 31 896138212 408 356186228 276 396742436 62 689609636 171 583592179 405 981599583 563 38107477 789 892962299 104 135656311 661 232577249 478 957556507 59 292791713 936 644325914 153 667582011 78 378001888 548 827656023 537 811805308 159 329360556 931 965449712 924 327183993 659 566013195 702 607970346 987 42155676 176 8495163 65 671585377 95 181610720 83 909753423 267 704125481 772 462380623 508 345045471 565 400225165 174 200458458 436 365240954 891 124436118 867 621983878 449 180289409 446 732081940 908 209528089 98 836671012 508 924920762 536 843115376 443 916712777 120 476046461 182 174455195 848 225895306 422 255458433 767 568194273 794 833197519 349 15150794 496 754193526 723 431179418 93 488832266 929 568929918 308 895288504 637 313809929 544 908213148 860 136348561 713 820456360 717 340506098 630 624615321 640 785965848 239 66651207 127 349067325 673 407784336 37 125190336 1000 413629321 938 474783823 757 685701210 138 540149091 800 187528491 342 185071972 579 798470401 533 458536516 504 785059514 838 672087579 605 704918428 80 124930313 75 69019469 83 282514043 466 829244201 517 150353070 590 786460562 162 79972388 549 726507263 510 924124715 937 771350072 447 805953945 28 580717136 458 469774215 202 927215868 420 822428698 865 865131396 656 645872581 881 954176259 350 438177783 565 961023719 385 820276090 801 473622553 155 136432663 403 253138844 458 488004411 562 969203786 684 357212430 387 959760688 888 989398693 310 223411854 591 36081253 836 531287702 759 378469844 240 603102809 907 127530394 957 889119365 486 647600774 756 491026671 891 399211602 307 226089050 357 126443172 523 309642539 10 170961123 881 172394253 492 705237457 118 104821396 451 166382324 532 220600780 437 6419688 323 324638840 528 639929337 177 433392356 552 237172271 883 701387577 994 630839205 455 435255322 685 65313944 133 208033443 278 845173703 456 979289062 828 953526200 215 423294779 595 876583629 711 586371581 830 529759117 135 968208453 222 579048634 498 75657842 613 732072487 46 760705194 272 164847436 256 55426013 98 434448106 498 823687630 865 694239679 559 43369059 947 101156077 526 467457566 704 520771590 457 80319140 572 59803774 706 215322136 366 472809866 690 924286839 664 379629111 634 999686362 537 944917462 677 107564402 164 225363770 426 917728356 84 822219076 695 229912637 504 241462946 507 775235949 868 517240358 170 567746577 259 369452725 766 927279841 696 361076947 692 477187345 83 45014401 419 387049732 599 692297284 252 80607455 637 560964029 873 69622092 962 282167967 162 364942389 207 150934511 73 212953504 606 759012101 810 375804726 67 132805107 232 949330904 445 795237056 894 517307995 528 106252746 286 285758689 443 313234133 368 275233752 469 422170362 310 330866697 176 787359993 194 343089978 653 653189870 517 673890229 828 854142745 389 716581971 433 54814107 498 67410604 638 474537054 242 130236792 165 848721395 715 943795444 636 262700893 943 431443846 485 932840734 470 925283247 801 469023661 820 963293087 326 434627869 547 19011060 518 942134634 810 687575292 623 19721606 935 172774758 983 550963486 535 240569120 12 302929019 451 69279943 718 929667940 971 64535546 804 132004628 659 218450916 829 947623758 471 902407581 593 600089521 456 139525578 398 602270282 544 31857496 867 572277900 622 418061936 181 672840889 828 797616174 506 561406941 975 46675262 692 530929093 86 774891706 490 919350250 72 389685109 611 816135974 181 239531114 648 803781837 345 198543653 334 63325732 933 116243480 757 439027833 836 541569068 179 544370625 376 407267661 138 751764889 508 290722408 535 993474648 931 970733191 530 14040732 922 739808274 502 369499327 694 190835432 770 811607923 541 773967139 896 585557853 337 588869668 969 181639104 49 218252295 974 530881909 537 678275810 99 124390336 492 52146321 417 706000666 582 66189271 240 328531967 263 218445450 300 616447027 203 936573684 949 602250560 281 809058040 346 632887028 946 61440403 21 459463227 752 399152430 588 377513139 413 415740545 43 45174567 386 121419866 822 489783055 63 800928073 106 575647860 397 955602822 571 914968712 250 347952957 277 148456990 302 995283726 107 423454342 568 762542158 823 389082361 236 252848831 575 126454261 907 197890106 439 279886204 876 535391782 166 891821466 316 595869264 309 340554811 121 627909121 473 961596761 374 504112696 623 586159848 86 614934900 646 889341919 755 882086259 857 700890351 975 535883792 14 491478941 170 835961976 350 210828442 846 110030347 926 381546706 95 794778774 345 472570798 593 75122197 242 167784252 798 834212046 287 390300115 893 761265986 642 210049764 784 586998270 582 420752505 494 343496952 998 546425580 220 167285181 637 450815912 671 159479511 92 414191685 11 703934616 127 461425849 597 963928545 732 416656328 69 276822890 384 434036605 578 43763756 101 795156939 330 935004634 156 607318284 118 102121461 973 628081279 563 790234257 8 159512914 221 498680482 301 332314503 598 936499461 550 648284996 688 970414519 664 729871113 461 443412314 33 967406945 72 829425886 355 885275107 458 464038711 608 161377213 188 434453131 795 527786106 509 711481695 579 670506504 605 950487538 7 535004890 513 611427624 546 481736597 911 789616395 837 871922018 996 624547972 816 972159265 476 226059713 89 647874954 107 879796091 10 957556735 645 874917901 16 967341961 304 982031768 616 849452259 790 347590977 266 16870150 291 221165433 401 996832353 583 180339188 500 967707033 389 867536280 857 425187165 783 506897115 486 194865842 748 818496651 779 704110671 14 93899687 415 375764814 853 820878752 648 186163139 396 422840239 244 772154848 315 425953620 259 875901629 491 747451307 910 244512167 78 622358072 175 592396899 959 334046767 814 931667933 922 780813470 209 640146812 689 755368947 31 698592198 23 263683306 505 820349218 73 148075629 474 836918175 275 26907375 145 938881473 660 87322137 989 772661420 188 419914390 327 245121612 665 679263742 716 985649415 912 750175326 929 542247612 619 579281104 912 563189167 659 115712809 144 331933031 167 727001261 869 408764148 810 828759993 467 631746177 888 290111845 769 396526092 504 581662500 665 289655488 325 51892246 96 465087962 203 374355469 511 739961508 55 933686017 633 907962995 570 871604004 799 238563489 873 324719065 389 426469671 178 486043890 457 99860880 135 678272945 461 667607578 112 582188380 157 727431681 397 946222094 575 265525765 852 330517853 735 725328585 122 38328870 873 103761801 529 766225464 264 569728437 792 439596165 117 548064364 356 428131705 606 580448672 367 896929025 836 477574459 684 40432394 615 104426892 565 976706538 623 328814037 268 644977183 899 653308972 787 405304635 473 180452783 959 638514185 238 702213780 782 866564890 62 886949810 785 303521710 395 614730794 327 899960034 760 901782751 622 730606264 527 135713246 517 282802580 226 896504361 234 680243596 348 773277913 398 26381386 274 839127453 659 716440049 630 542875004 601 252541666 361 697769172 496 970057321 129 504146490 446 918013783 724 429658435 919 518343074 651 888613517 715 879996908 38 148822439 889 328784583 450 13570192 838 106179988 566 271259248 928 915468133 781 622899568 363 260131226 291 246913202 969 223650065 340 897245697 40 75863361 834 506698397 814 731335807 137 38646620 441 563229115 247 298852279 655 749503429 119 363059014 793 459853746 284 18993523 656 335714730 737 740825141 213 948014077 911 316988450 516 89528520 575 648095338 169 492117973 108 609449378 710 822586961 917 695049210 603 247120223 162 436037588 359 990825897 895 935110727 960 903283607 995 455476521 907 263043753 996 46989240 81 591962272 76 351450685 953 163311908 428 756074695 213 714028967 715 971631708 997 998637451 807 762105383 851 395010840 891 334104715 726 161986545 921 185753397 681 227450656 710 660721703 53 831226064 112 279065684 676 997134543 853 702907883 990 62224967 375 187059265 98 534966324 222 889352989 770 681756042 597 41485768 761 826735214 149 166099674 173 758024237 816 836155785 430 553038693 599 892504351 136 424105739 185 761169490 119 88082220 35 590116406 841 711784907 453 354934658 923 588717823 352 212956877 964 357598344 977 551937990 782 633972775 600 814385339 259 851249556 285 378154557 223 676425159 242 749612145 569 18886533 381 156750807 110 641028528 52 377199120 621 195617667 114 693097629 715 176108011 956 154715884 417 126535565 543 81378697 792 632929955 167 792142749 988 193327759 493 362510599 948 502648277 322 974476700 361 97694667 893 274252107 374 186489929 734 492988723 207 380564994 888 330562602 175 222012663 855 900526234 943 77506357 536 360697946 981 314831083 996 450734482 281 132500865 345 334699755 261 528626730 507 832320401 62 31590140 215 730623759 373 324441747 229 52880797 475 261776996 720 637021347 648 289929643 175 554779320 451 305589586 414 396883014 404 945873463 551 360437893 837 804641537 104 432080304 961 478981979 575 358710776 547 907002828 391 849407376 532 388826594 841 767062957 919 267253807 912 389870845 88 524820938 351 101164174 454 51527164 310 458150685 914 332070965 818 197288043 94 721076581 315 683990035 696 916333727 877 142909758 932 515788505 285 513660391 727 942630464 100 408460204 467 790539888 267 805489409 128 150450388 299 912670819 307 531728172 198 411951764 645 974270586 46 454099255 932 170145512 797 683188787 332 350775848 223 210063367 721 841074248 186 25791834 793 30763602 540 93866973 133 837657433 132 255186460 110 28183577 396 390428136 519 429943392 182 366700115 860 292897883 450 950018656 100 224018749 887 692448612 361 589959077 77 870601211 434 794906008 735 509964803 873 742687480 125 864302881 854 808589800 23 268247789 994 662891506 248 352536982 695 489723034 433 28068200 859 213518998 52 764207652 416 951782747 566 93214402 951 214178093 106 216869374 880 559852691 271 865853069 319 716315562 182 380719824 987 489251947 111 795725990 691 183523695 725 37524735 504 276045648 781 976140244 61 163270984 40 163701568 595 281075425 395 979530993 161 819534653 641 436379353 13 668158158 176 21825241 607 537106617 390 920600957 596 255103115 41 169203927 894 791864016 379 665646681 211 590395386 552 329939981 695 412342773 238 689184074 427 651367552 252 346439871 700 719974626 345 986409755 929 356098996 776 162518270 892 575975808 905 342919518 570 647874644 287 808410769 549 380877426 532 74749164 726 236046285 201 809870129 665 511514894 401 201890523 670 349311734 132 820589450 764 387055249 140 919106634 166 375934484 358 552928659 248 546388673 668 392048091 908 628519835 692 256671100 223 430503596 682 662275782 718 400851725 798 262932793 751 172864465 143 386225005 217 755375479 198 775791375 965 242108616 328 144265378 669 902881698 552 301084545 460 261714050 831 789889741 366 361224215 591 410360842 667 535551887 326 913427404 183 410473383 716 494030941 454 48960754 332 418165670 499 508075917 283 284322617 960 229662724 802 601938606 145 904962527 191 37951965 848 820844139 208 200941604 880 963104638 246 837212973 62 526807418 851 298322137 965 59264375 775 859113908 252 449339436 615 205988629 19 228565292 909 242722127 24 123898919 41 105882172 387 872314856 818 757628550 204 415407665 195 780344296 23 390234484 398 677058145 312 526930538 665 177249960 194 372765577 895 443168707 465 287872053 714 655849131 641 645205998 472 563087206 690 895751789 6 470876590 614 656213250 861 606486379 837 958522640 817 109203161 336 215071205 979 478816323 715 155682684 329 318330685 336 334905126 286 244387646 961 985976922 348 167671460 452 97571700 134 146615433 363 359147997 416 335139309 295 341124861 298 5871915 210 760661590 628 253827790 431 154648973 156 543577089 395 363988654 965 380003952 140 293971905 918 890249049 366 235529166 619 34592508 841 235956936 89 15779484 841 455048492 682 904143296 100 448432551 882 470814636 182 749109477 561 437325839 793 904485288 650 916925280 433 279906445 710 945266262 920 61662072 307 810194957 950 889194076 15 563791827 758 940752953 518 58430899 261 168069245 132 863190883 516 339235917 176 77270602 367 209000280 457 629903135 476 790292186 329 734657164 522 126180001 378 861352193 419 86461819 946 412839799 353 494748393 165 993393943 917 944465054 865 877618232 219 404591987 830 555552745 279 676725207 534 450101659 802 194356661 50 969024050 333 543148476 152 440904452 371 773403455 431 424290244 162 209449171 686 952745463 708 563337803 272 650542187 36 464662999 444 756645599 579 377042624 282 836077691 814 677326165 734 695746159 209 425082571 673 119539349 929 21171045 732 78717546 605 906236257 422 849690752 56 965605826 33 456740932 196 350487806 541 13934893 862 417478987 456 400096484 375 109398779 187 781031884 875 112520422 700 690806794 436 267093084 553 36240266 845 742226742 20 526225538 69 775048098 114 146420996 329 866975206 792 442658237 266 953803967 757 949613776 449 493210832 868 335555028 727 527187274 817 328523222 834 430032868 263 741592445 563 814330149 558 302081112 656 59399510 160 922266397 107 818936624 557 671343946 866 203071821 684 966714104 682 55622037 793 328129808 804 456851057 843 829752270 664 745920079 760 795557261 2 281984217 433 945640625 7 20753299 498 841705565 425 482605831 38 838984113 807 582997866 403 254810324 51 487772542 188 965006845 193 915063257 248 428253674 190 753145560 774 472129045 684 531740236 755 784916194 805 83291330 129 650942547 11 334840550 64 381844968 414 718694698 524 697245983 652 69041619 798 657869719 906 778364940 741 950656860 151 447097450 407 803850039 590 616179029 270 293692138 22 661079377 95 375822068 312 762729691 784 221054373 260 340020002 261 999309238 356 195078880 175 944647296 347 849618423 45 451227356 103 515858853 738 537728141 406 935844547 886 513716767 470 982137561 845 891831385 958 795905968 666 108414813 793 199267493 478 567808579 311 353872723 205 589294036 441 388607713 734 920986756 505 605906217 880 340736858 352 914828018 188 316751156 561 768485076 894 605442240 442 891906468 912 874744304 291 473580251 138 165557753 212 574322987 87 378779879 239 667606813 314 59214645 712 134324698 598 441072307 617 876772815 49 380378771 60 232408591 646 442227041 26 864409387 761 734259381 939 865263082 853 359620166 520 794585933 543 498884985 672 941628565 160 730621548 569 582676776 228 957023935 30 449352675 136 895235700 470 926882003 177 903003339 663 731521663 46 117330574 249 447329121 278 730090388 938 274040990 551 558200931 807 708521703 89 929845231 821 505193361 816 717210217 278 969023285 792 272980448 377 321576521 979 676875594 257 560222876 23 53515489 530 82831156 631 358612909 118 269365924 539 833394467 769 960115243 907 869323497 114 353901411 702 663220470 300 385144355 617 367794269 623 806935628 957 213159304 588 326925984 203 387921267 573 376008319 690 664542730 452 44052439 987 83652067 102 406757506 622 624717664 78 45760226 857 687543757 91 134738792 615 566272526 846 13212119 269 192289293 667 816267159 958 741295710 218 951203257 436 912490102 480 599503954 471 803599099 35 139048366 994 310693393 443 976950364 385 288271802 962 932717754 160 158724053 157 465318464 425 814220066 291 23221098 985 888885472 781 271624743 901 903194010 869 652729360 710 788391315 944 586927593 887 596221685 935 16529346 620 164041519 764 240796794 156 797159023 523 745904917 218 22739170 720 941664786 444 140653290 500 308429794 447 432272595 970 324539976 660 532076973 796 47124436 971 168321813 208 999981623 928 940273991 729 69949263 746 126962966 789 875451530 373 261238168 815 17116155 413 395879400 916 827177618 668 990362227 877 24486048 190 356565300 198 462758976 302 152819264 342 624572941 195 511036153 118 981007285 901 582351157 813 742232146 458 296778932 680 262997820 485 163968192 630 654612064 600 616958437 680 386846573 256 212500727 138 868090257 571 177830856 709 193097144 739 791714790 364 409662174 151 180371853 738 723619319 309 189915585 803 86563716 783 233899751 189 253885017 366 896036423 424 310682584 808 450476293 590 411439980 943 823248245 198 225592885 736 364638774 913 144393865 867 764146542 548 239891823 348 632187590 51 115538336 302 637523194 930 6322048 1 823075569 111 44835452 911 536725969 655 656655744 252 454724217 215 621283232 545 987791209 551 96469750 52 172386314 369 258681318 224 860335002 140 226053709 57 492242885 1000 563751809 512 513861864 119 40805304 263 932342267 826 339386356 628 188811425 153 105229196 547 633385284 16 156108066 687 828334595 532 314891247 618 158726951 650 831110396 432 846585938 780 917500418 593 499002228 764 649558284 699 255942386 779 393201513 561 189125154 492 190353753 556 68823223 506 844684822 434 915477725 766 77045786 869 852682832 415 429418702 138 261085292 708 605567738 257 463841673 202 111654067 115 599464280 985 381249746 474 752761649 979 665525586 631 460476436 313 974675077 719 257397763 15 138122781 689 486140644 282 608146625 196 316065204 76 475817170 392 622346814 221 659352033 367 566807623 53 163429236 863 582414119 355 531030327 693 737295911 440 238429359 115 426419070 589 923511374 152 54555112 298 292190385 514 757048923 672 259552667 1000 195195030 830 933494355 300 244422814 258 709603455 810 813670732 702 906229732 880 297973142 420 562526694 521 830791132 494 113232264 998 539047564 811 443674034 162 179141826 16 973344302 557 426988640 940 998855696 282 937724304 924 72462937 300 389602544 17 5610071 170 200761634 26 398774292 877 829573024 28 30963067 439 870324979 882 405287951 1 807898939 426 702591549 241 801753310 599 571453042 523 735544319 12 394116890 370 991630616 358 495405324 649 4052250 165 749311976 442 146750680 359 921709748 141 499670368 542 658897480 56 357334957 662 830544298 820 970100229 125 728807953 24 891415874 999 11759902 155 818777716 542 456288239 527 930628365 763 883994 651 632971820 130 538847057 923 406775438 17 473078438 375 846037422 578 441216585 699 940182639 56 619868555 48 444498109 610 308194085 327 369294851 230 701125358 524 74817625 431 248508230 828 83723670 34 415283545 630 692084399 122 662899990 624 208614753 878 230885915 294 325827540 30 836389482 206 78203996 372 667556508 927 817160494 287 258258628 221 992109476 635 887865559 8 546012965 704 392903380 848 171001319 645 334426338 532 692530541 547 451394248 480 410524633 238 168300927 164 896620616 506 423529070 341 912287579 80 625995325 567 9788359 63 96274039 412 514116051 728 767209024 923 413628490 969 595318061 1 447497879 176 42884831 158 272085750 153 279527449 806 779387336 658 129985554 62 727602765 194 746143738 37 59185272 246 370741202 336 552654503 688 542268199 647 708810730 712 722883852 371 799382434 315 70436174 519 604503685 787 27523625 534 171608885 348 880015256 110 724996175 416 69483621 975 225093095 335 41903020 40 77031896 791 813322518 451 302885460 83 413923843 981 816307884 142 992161924 595 582868590 126 47817889 897 822855932 393 68793590 814 699727193 66 319108360 892 741038788 156 690509876 434 503957433 52 256014378 404 748351058 422 959453850 259 146032856 227 676189520 194 58953274 210 288529601 504 313759389 320 431186816 458 800991971 122 42511743 653 410801887 528 679066161 941 933444517 786 46554089 814 434700560 838 538156696 364 960219394 649 151465433 199 956145269 541 757418188 381 762925606 722 654811479 50 978512499 454 140975075 435 921157625 182 202865547 698 123764817 830 144768292 277 78764933 850 64350325 460 486504894 453 273812474 812 753957919 721 78986511 510 909025510 796 589762516 905 69851003 298 570777929 377 452013812 786 934815167 400 655954569 37 376029295 973 306438755 93 269409447 209 268731388 17 362592566 63 198258875 310 280990979 111 921382040 241 413105913 790 554634731 145 532526038 168 306969254 63 818299578 374 300232421 821 994114445 548 499966349 198 1687008 570 470283284 332 760653976 540 515145837 252 218783263 357 358483117 199 167143117 3 373086921 70 806127002 707 610171463 23 518841485 48 462862264 630 814425028 926 363856809 981 190532791 66 175359300 421 850952891 711 262373503 209 698071907 942 942053413 8 421420795 374 160600046 977 339353865 807 274275060 432 964971101 534 833001526 86 715663819 960 265636602 138 48834215 546 16688532 490 791879087 955 679108787 136 460462402 762 872795518 667 17441626 432 146150774 567 933564951 232 130447048 685 301963925 600 12092333 608 340678983 187 868725839 79 303410811 896 850084104 772 576489759 504 768799093 532 250166834 546 959598862 791 464406135 421 918509728 435 793232990 804 250745668 615 458921437 382 301807310 861 286140875 772 362645219 535 431251237 742 585551700 809 482676445 636 637516483 909 680154812 643 806216123 866 644652830 594 829879227 876 747621585 895 484603844 293 534516791 897 997638433 887 339224754 699 17173802 531 219494396 146 875249769 210 866228762 982 804127205 430 603111137 92 520045905 171 943740208 267 672277786 129 273501842 309 166626884 103 797812506 102 202750419 863 270507332 309 290345039 118 955687276 269 452757223 155 111763214 45 256851847 619 456452122 401 666026177 215 321961532 187 291994357 713 508822486 405 626827792 557 561562606 50 734417291 707 254113226 122 742716572 493 79406982 82 364134916 397 171771419 136 244623971 630 45360268 938 839406166 245 291584579 525 638576985 40 272669118 50 227269120 646 722687611 693 346716405 475 839988430 577 562827045 630 609360072 15 986570276 162 696901051 390 704814713 873 321788021 433 437192547 674 319048427 479 684493943 851 679327122 678 598612691 504 774583259 992 262989758 459 297325867 422 690435529 790 384720439 518 546355549 184 719463017 981 173777438 861 461258602 578 526735606 121 401824284 132 784664094 999 532454210 419 137446002 856 764918508 634 766092953 502 607484132 597 966354438 683 58221551 559 941321802 702 620140236 480 55928915 109 414603583 753 65991544 923 980536989 837 803320117 399 724235945 617 278891844 363 237163420 338 822244042 894 109983941 76 136819904 426 429727226 185 48868738 674 288757580 455 216000356 917 427631932 576 720556092 974 846062744 467 486223535 557 534992369 80 724699418 842 866356554 129 545196763 525 18005470 207 396166984 183 384078236 341 336169857 327 822907820 685 933566553 392 577533935 185 689438705 78 714098693 748 613293611 874 675113113 247 185001921 959 835068415 220 612638217 229 980092269 61 670625422 265 520470109 472 180890379 241 687976928 327 814987147 352 120811057 954 507552640 192 222389788 506 848611749 902 415785555 529 788894535 873 241951953 423 437541318 455 610090734 546 73820068 950 112930148 664 468059975 979 96420949 868 456508804 727 891924749 87 880929431 587 184248979 628 497046939 715 272419579 61 685517876 987 217648420 599 220447900 40 456107462 664 436703314 255 539915352 574 822617111 6 685370183 454 414234011 343 107482541 103 280756423 312 729132114 713 599239250 177 576375397 623 292081345 378 419588537 793 542339204 604 294268323 272 746912878 191 254512758 333 796339985 413 330138761 167 708879825 678 973792955 328 718252606 915 932761863 30 554889506 247 504252408 247 611697273 587 557985397 975 457196324 90 616714580 334 982490884 774 532126120 406 280385426 732 841778481 240 73520331 742 901572478 755 956936759 223 164659751 479 410430098 729 799848295 926 205431446 230 899226272 372 532305092 896 563756616 957 163938931 833 971574856 218 487593223 984 794302227 564 548685742 252 106665873 53 590385137 678 838407009 160 205250002 747 41472794 589 830866725 592 136853522 391 968405148 117 854936798 445 295306141 783 911300833 654 265064610 263 661491435 383 509162540 431 751437561 861 25061549 823 586029371 531 652833408 462 544337339 233 492212045 183 418207350 192 295519226 707 98474256 935 623339184 229 423035710 16 533715308 778 144732591 654 220145188 78 436843950 778 37897445 447 167420054 919 633202786 26 353243878 182 920875772 252 274914375 913 753338429 540 804035088 470 848360216 837 337592318 606 766245405 490 572651574 597 143148609 627 527436617 707 755641101 104 793216712 27 826675729 26 857308162 162 58813159 291 739708285 640 776676620 609 8106865 375 69613888 730 661269588 809 309731406 340 644834637 395 879764810 264 766845642 214 341890202 401 901414938 265 266707105 291 178308507 58 178711209 840 168150349 159 666925879 168 258115495 367 681274451 298 534875687 734 146756625 161 458953624 340 244793760 107 207530323 909 335587374 785 357994176 501 782768331 524 543004694 378 992576102 439 224417706 326 589389942 282 207465081 369 814805179 608 850855572 724 742923122 974 556167118 766 570019393 966 231559266 2 705310007 387 591320241 593 165139946 194 941915443 144 215621924 919 412689641 450 990863126 418 94438978 689 53972835 13 33342006 407 764123978 570 631396960 273 3422815 565 550391585 803 262541609 594 630745290 496 525787836 740 49129361 97 351830111 58 897128674 76 378328682 537 318323764 956 70489682 512 645803351 213 742548576 79 848464413 578 309065234 250 790116131 367 239941603 759 838193949 333 727279803 485 665622511 16 653911339 966 325289777 544 171418496 811 465008877 494 491614136 382 60684275 79 395505053 517 851911547 694 817039412 338 831758596 133 644476960 506 94709539 496 186237980 40 103973416 39 238398313 43 133015242 296 648998862 754 930320746 236 542631261 882 434220364 74 380731452 720 948877518 990 692215646 926 81322298 791 978821403 369 172166137 968 88334865 588 655224169 561 46138806 156 757619520 506 941555936 246 868783710 222 748718591 140 582069128 245 418380666 368 264613287 169 700579253 853 408323893 943 407753592 662 71031070 256 975798867 480 119134898 104 928630771 374 118123139 103 711738035 9 501325245 370 599387385 409 967799939 622 685290409 900 773897419 166 685236354 133 148910592 212 169768636 352 370180133 164 889207579 734 396522761 187 428321347 384 538236783 845 447641615 587 721107103 761 56150764 853 912431290 601 732538176 38 990286227 643 53789968 509 234908257 834 236476165 871 511507165 335 676278514 111 722443564 287 778605303 300 571940594 56 917116764 870 60965554 645 143541167 878 273143479 149 959179467 665 597025799 617 337549728 97 967183631 885 261014577 659 637375719 843 103411701 137 957438615 164 177950748 434 249895099 276 977938743 437 288596435 265 217211263 669 13434932 781 598876632 179 806403087 677 556956391 897 612333900 459 711429300 628 817770054 86 984618256 35 856848959 789 252919724 233 314336507 132 430797336 905 248966623 699 628494107 843 619213010 694 547596015 8 922772759 346 718576292 570 342281500 950 682360201 592 43473565 602 740037722 693 770178783 645 933096793 903 171134150 673 299431813 112 653847311 4 383989465 564 897265377 513 302849461 776 835839922 2 767350208 841 929159117 5 53095621 946 491444599 690 222692216 244 560416643 159 642737856 630 374280295 461 2611306 202 559687500 38 532648587 987 13683584 552 125740449 686 172236902 327 792826736 964 622119296 652 589535770 45 982730331 812 317943450 772 262562249 923 270208450 512 691184221 700 510800763 826 413616702 761 747465829 364 756683623 309 772582987 425 42405946 792 467901809 977 522080801 946 730760980 985 686944542 435 496378119 428 144984742 70 569378955 277 693594824 654 729141193 553 958258712 661 439263146 109 657074128 528 937891808 759 75294650 747 693817736 442 864786991 857 596002833 113 906191030 773 198099248 849 423125906 329 563203237 52 857040588 200 45950273 273 845732498 267 222018718 192 243777607 800 139113756 250 461038548 101 964627177 327 775879423 158 502124724 370 160175866 476 311706246 174 535282781 626 188588328 865 938916404 144 575678903 836 489984961 583 136641703 817 129865993 905 441861449 309 753348389 928 259644038 543 704914370 296 182881239 982 465431154 405 857478826 990 511661972 95 680620298 592 524928989 757 19637900 632 106580774 838 965606391 213 370492608 233 394086707 128 246293679 436 646455051 266 699547000 605 961066368 348 412347647 12 656658049 561 458222575 244 787905862 487 424104516 559 394838114 279 275400014 461 209950674 112 772994868 476 750586146 456 262667875 967 320251103 496 41349662 427 195124449 968 163928405 318 289718826 326 358176311 815 314168556 504 312764756 625 182585474 731 933382306 900 239243473 778 755219317 616 825196219 519 12418054 477 309627437 485 968561306 826 302818195 412 411254933 188 979206564 612 317281913 428 267211764 774 263702664 602 668024927 546 764668279 638 910608983 782 230321375 602 730670597 543 284713913 403 69795715 591 659731469 895 643509329 220 193474053 131 945626183 370 245220919 688 450531898 901 476639449 496 442676485 507 747494160 580 887422462 207 772957836 474 413734729 233 427811939 332 595224183 643 778185921 169 398083505 91 593694178 985 755561819 997 921532245 645 306367398 165 541866901 369 149022450 522 697046108 537 192366068 399 945410207 120 38877083 624 949259417 192 916147934 826 21556925 537 137004108 321 66291966 938 799091714 480 609585455 556 941790994 122 858604113 794 164474151 168 793074424 933 224371337 410 164373655 210 18690876 356 9745149 133 936958533 708 160294660 515 273096237 63 377404273 761 436364863 953 984418429 631 158894236 636 949333839 100 363246692 463 927311544 219 33661904 621 516801156 265 758362606 650 151759254 442 945761380 110 146264467 587 270751472 606 996320563 737 395169747 687 678269287 230 900392871 108 12952978 325 451112562 392 802920810 266 277581503 750 455039317 45 965111732 797 208588303 94 867441085 178 816541433 645 824846211 591 5398880 342 444560054 772 810015513 938 93044103 474 450123013 125 179315280 495 204286840 565 591482838 616 133692445 313 80587071 519 154640036 617 373859631 876 458554165 63 175490874 695 957427997 447 62900199 382 347668864 124 904519908 486 84562958 320 834309410 935 620174015 486 928161400 152 527774869 130 430658780 807 460763171 749 571821575 596 848368346 308 838987478 575 274286098 544 236775388 451 15953925 118 833720200 32 325915445 413 713569205 738 320073653 253 975662659 682 970745604 174 629180934 702 731471679 628 389063306 695 177566164 597 891432517 744 991214999 134 913377294 315 794745755 368 263230092 757 655623289 938 797246742 967 247164728 205 397203101 943 50669678 268 115579430 298 652453291 935 740165057 886 2619832 365 438916126 569 925213306 0 957091475 308 655369126 552 832153192 784 761981349 219 199454494 938 490604480 592 505021680 488 499978788 782 22215636 400 638862781 765 411305534 735 660781700 130 759940691 508 33675387 908 528928068 872 965966651 148 353303953 238 547187751 703 323962926 195 646450712 990 70082505 86 177696762 423 829142015 810 715198491 513 809087393 549 136433594 949 196306450 496 242548233 570 1585508 823 673887031 328 538964635 531 112092093 391 713292110 740 728277543 667 478634673 710 847439005 34 75253239 230 327245066 876 593813654 131 244456186 279 398224572 795 667500508 449 38802774 948 859439416 138 446477177 736 557384778 379 628821814 681 910254858 257 205881658 850 521548221 67 919103307 409 427903602 771 811702677 428 929094247 623 262782864 410 224442601 532 2607463 134 678226491 795 794769950 224 653857025 459 16111782 507 50118169 631 762461031 119 895786595 611 905673874 34 912707327 484 123875654 396 777069429 39 670248826 578 143138129 952 861009047 770 420283906 17 316604449 926 673231041 447 587209133 573 733029866 252 443831878 433 503464723 390 965980910 938 866995152 997 347947420 617 506456927 887 550141052 447 178086530 196 294820906 679 184559699 648 816808935 569 780140350 500 945624197 393 54017169 328 436107051 272 541900506 974 743995765 266 820857391 856 276352436 307 333080540 94 270094201 833 428406690 914 900628465 993 616724430 777 345861563 736 436234112 581 849508102 448 793605260 419 578258578 545 842842742 646 128082823 996 331493427 438 309454823 333 183748350 421 57291808 927 78743587 652 887318157 160 55508052 366 136402433 173 710967894 256 433839852 73 855062435 123 726065949 961 337556692 70 864623358 922 939185182 552 90983433 864 560900670 810 874966461 756 396165344 425 723631908 84 914651228 749 248299597 273 941318536 253 637698687 273 305554074 517 971239637 664 810680478 40 965826416 783 148603861 999 237474843 119 639520170 560 311806246 489 624909778 199 188745383 871 488068688 936 871820253 891 38825626 644 215789926 975 395092525 338 67076379 539 527197160 353 225961618 220 848858167 94 403234919 537 688420078 92 489145283 315 147115719 103 988563690 613 983826762 958 131463965 792 379897535 34 952412587 140 788749302 587 951440802 216 603191908 733 641713403 431 764664920 561 271793148 627 343691903 295 783002408 162 427132886 109 507462816 812 239099532 958 960023048 574 309117099 733 617825460 329 282636156 166 799469063 744 244608643 728 154944734 292 818346374 226 431575164 785 345394284 340 540635291 252 13998724 611 577066326 707 499884629 591 235823490 931 750079132 850 53778084 633 542241980 776 945873086 622 105939291 549 998233269 505 804898270 152 686310355 572 749862023 168 428631822 110 861291832 62 585102124 812 632962529 723 216836019 474 324827049 125 306929998 652 514847906 419 980633034 458 97352001 81 842739996 161 57693311 881 861115447 880 447302550 181 593026003 662 334686932 602 85969698 997 938590552 16 67911743 580 375660195 722 273187761 466 632144104 674 376209484 670 389756467 611 873006674 202 860757569 202 87995614 328 801788530 770 815670678 323 310962398 289 339602859 708 320971262 194 48755724 531 176247141 240 16485726 383 241873014 509 540448491 246 524429396 595 458845993 283 365286845 324 389750435 501 45636648 863 997351706 692 190367254 41 906729977 706 392355510 99 15048280 579 64398030 627 659718898 359 76511695 129 225066214 204 197845457 349 2609761 583 931569840 905 922341030 137 781543983 308 339857491 771 692779491 554 204307853 723 485009110 366 367515070 239 701610142 86 605959227 941 72938800 856 211384959 388 718918759 334 150294390 56 484732643 680 818881862 134 329184246 901 937634360 92 960139295 960 814831550 98 445836150 17 423360962 565 523570074 525 488410194 959 436273688 978 318010469 528 923479143 893 664566241 743 311356957 464 573723198 587 205685938 745 671726136 79 238879597 567 171470874 79 783698126 679 497327025 362 401843427 943 47929255 72 497606901 564 101250118 33 303426300 302 92356425 959 635610664 522 791447439 912 855144880 477 504992551 154 176215946 561 645935499 109 359392661 844 454541855 822 799861034 539 979915915 732 188209114 982 956426122 146 461498569 63 159754462 474 837875143 684 137852873 907 616627328 742 505274121 260 836810463 622 373539888 391 683914691 457 59546075 839 431017461 852 634091617 42 261214968 656 720450903 393 698463428 703 923881734 353 713846896 478 276069554 826 300925716 194 410573976 891 111833752 621 393114945 770 331081580 891 521522026 583 178245449 377 929576750 456 688251704 749 168923644 392 188377200 231 224383227 206 151057930 636 485152483 338 16643900 313 345803594 731 567648053 395 748940404 17 624661827 942 605497237 28 486167129 35 172309949 492 680370073 684 564771149 550 645123459 936 198300461 938 139010168 669 152016593 201 55158645 516 861120553 150 972167707 333 809600581 57 639572245 829 166405240 680 584935898 507 4534864 144 352779185 384 98946340 804 369156917 484 541440212 936 77376703 725 19342085 725 973752062 165 569422463 175 31431990 955 39374545 226 413398474 959 805490543 166 923694847 862 371309581 396 97333451 694 81099720 141 180805005 478 997229791 546 341287233 490 350588327 866 16686954 456 124005466 281 856200497 772 601679442 161 482231553 105 832753164 966 556376399 458 58178410 966 247947933 511 183839465 75 4372027 368 188360641 761 685775512 852 731224272 29 999102194 323 476652091 457 21854932 879 935708179 665 773837443 504 69827812 325 599880328 101 403889787 990 641839928 741 659910744 500 527151832 255 255089737 83 566552715 439 181509356 412 165518619 10 779948061 873 442040140 643 603433633 68 334878267 53 240580468 774 692132321 846 566855323 199 593833389 420 784004291 415 353623442 487 688145682 710 966923619 211 246211931 658 244444851 985 471667083 629 83224271 894 436339129 449 376599339 587 90622280 811 993589934 563 724578555 832 604246390 192 545270573 270 721567428 871 372336033 859 32593682 373 724429632 466 453123149 661 464733566 285 696143 432 952225740 784 416493370 185 583175967 944 494233291 741 187420533 605 131485478 70 862073623 688 755385512 581 380649808 448 637376190 271 682393327 560 22451789 761 241251621 456 493524664 136 177553713 421 589221179 607 72983699 330 67379126 373 183559927 879 847643954 183 764185852 444 317009484 883 950596439 54 357333675 165 563220364 234 900289337 735 461579602 119 270151612 833 787201498 251 969233187 628 324878464 855 234194735 56 716810146 211 345081483 358 57295030 225 926641133 170 437747164 529 514930958 916 334345353 918 741759176 939 338403291 274 185500831 410 258516809 515 552647072 191 506802325 666 927659480 849 213238504 45 547177884 246 735579447 323 200242935 626 92332914 794 981669507 758 673090155 76 634007637 786 125154823 898 678206085 299 289198775 989 645768091 808 864850319 436 445315433 333 202190773 916 697869009 878 153940662 263 479933874 462 157355685 237 156843608 8 422956901 455 816105493 402 496188003 185 6464373 556 235668590 520 889470869 723 813338152 517 801398913 211 544180681 442 23861499 993 989872206 446 300748640 584 379126138 92 458451995 549 969772747 771 709253198 529 151546581 620 812288155 67 573346617 215 921936041 788 420387639 804 95008710 153 934300193 40 930800293 120 451509794 91 318945553 85 337594539 448 701615752 27 234229058 185 354912180 7 15538007 865 991842361 212 246778295 48 651900939 261 127233001 513 281020184 918 411793153 360 31837666 45 862304028 126 875551702 256 803212204 168 412348638 148 145349172 521 774357043 863 543744701 362 834973435 869 27234150 888 276028903 333 794363953 317 890853421 515 943977146 339 800892112 687 514696349 480 486855148 780 729752533 329 685141743 545 878248634 286 864318442 283 771980523 390 733896684 935 295608394 853 485475289 438 967247435 548 464643510 826 747439829 339 305415185 740 462591328 66 376236672 795 644206073 175 262777871 197 452368214 249 937755403 25 547167140 597 386960849 911 780059153 138 832805920 430 41082702 244 838214989 551 996697113 691 902419830 454 914323942 489 101035483 150 335307209 139 302053853 657 673897295 964 316923022 388 848166688 243 456961137 227 683897320 797 522522470 451 597226354 991 720393531 143 700060586 623 416891828 312 437897864 487 254397430 989 377702356 757 692474254 221 234676747 647 585866105 877 903423936 259 604182796 82 943011885 285 377122222 31 380238048 359 437259275 277 557290196 524 881746584 572 639039103 281 60804923 386 979387529 861 256835820 163 916960172 773 780808814 102 779887726 255 226458544 984 219763188 949 666571112 927 693818307 955 833323045 329 302782811 471 601178321 970 631706191 80 333850554 78 658183811 523 335172838 463 209051738 377 912877083 45 521525643 912 805954461 682 972572638 407 166882657 708 479024035 571 92799141 156 991973767 510 163240227 974 41512198 282 557471082 663 71780895 179 502515896 71 195975002 745 154073862 201 519314765 455 104361508 73 535187141 349 306076718 361 585028147 155 286049895 393 47280283 320 748466393 792 357823166 997 868845659 435 222844094 902 429516786 598 15728264 535 214128802 786 754645216 886 151502996 984 331828871 100 17429775 621 675594405 502 463294779 50 806583642 251 139417714 731 974608269 333 637103379 398 455424450 818 518579430 625 649559782 873 439262016 651 979193685 537 524870599 917 981182303 771 771562414 606 34100228 344 473559140 201 930367800 137 235698369 991 157179056 926 161101891 37 904819801 254 603520418 649 879640216 699 540554863 357 362107387 852 847590362 606 854600380 306 357126385 514 352171511 267 638638640 145 532255106 273 98120385 761 496113854 302 16600824 650 683305173 501 717710453 899 858342872 434 816938742 583 797852149 166 107742304 698 983301307 629 375154822 15 500428867 461 114275856 791 978461220 241 17412427 600 471015646 962 66695574 232 305656695 329 651096686 560 130556324 279 814680438 621 893103735 224 359402298 772 759872965 194 533310442 9 59110656 998 45460721 957 279075640 647 594936237 865 78712847 891 347767506 145 815722033 887 47071249 367 465981867 712 736967559 420 220308405 113 230201065 571 264842999 100 29114895 514 328645237 305 269377464 938 579714037 413 971289005 203 429204082 119 749679478 965 351675193 512 117049028 39 818414059 379 1415494 378 636232723 133 588309376 717 853701954 354 460306442 655 843811849 577 610328428 644 654024397 73 937656485 609 466936780 87 237832917 766 12401686 436 807150546 885 353495352 893 420087502 188 274238001 664 258381778 953 108727399 243 758472942 604 943536494 794 476477672 46 471092587 506 107834844 659 691886216 892 421863135 959 449337765 397 560231358 865 269608562 259 149178674 710 709466895 985 326102015 657 829733926 883 583163383 843 767429426 623 473255649 768 736491441 957 167439487 103 819423655 157 983475395 603 952593165 785 536427914 974 661677585 944 556358916 70 727386974 140 660291725 415 309492981 880 10034408 658 321607569 985 131191381 709 553681102 320 572759367 119 830453415 672 813517657 251 487132771 499 250163399 760 63612139 887 307951199 534 509071759 694 422678298 808 681439546 464 593783630 479 73606144 612 838508728 207 660232515 930 572596757 338 791821693 594 947849075 441 823528954 741 439384204 557 933600893 829 995721029 585 526423928 393 983986296 489 510120149 925 128214477 113 325013743 641 17663669 640 871227369 248 848900524 299 670921428 531 274925230 386 673213488 996 995027601 986 43458037 195 650191510 877 169878892 314 392125545 434 853783759 537 527404041 686 879972249 994 318338164 42 501772255 470 343660239 751 504175293 248 589708099 625 640774312 300 817240803 89 686583945 308 691538484 657 405565425 154 626502698 94 807169149 6 907483985 33 814563358 328 479567556 553 664543424 348 834237646 820 603867948 742 741359832 789 582912942 699 510643907 424 887349609 569 358233504 146 444538768 882 793166076 272 762026349 464 502670861 981 988156261 284 618761187 369 694410878 748 677238756 633 614854655 843 569562275 822 867447415 862 320211020 825 385251536 822 701068364 543 484672648 172 207131315 830 440000742 773 428445918 914 576420128 432 812694773 773 204407467 544 140735789 737 128147788 973 507844420 614 653222339 232 312553332 700 474097167 131 241217162 510 717909926 274 846086428 266 65751062 37 801940721 173 431943843 716 135151070 47 423986496 988 522225639 188 846117229 903 409294773 369 579018272 341 410505065 429 31647903 540 112502797 99 943174616 791 166862853 797 737341370 109 13896932 851 777600761 732 455874631 427 322476000 516 324474618 686 975552219 629 422213518 371 287987940 99 864402239 785 969868735 920 720792531 970 809511693 997 127939389 130 114849306 299 438432661 45 961797538 97 858691949 679 822941914 112 150714288 929 636034805 614 351625958 929 444499302 715 657021857 537 800091273 977 937778132 466 20983747 640 790857067 760 975874416 619 706656254 671 652487387 399 885069892 383 864869051 149 34220560 393 152267785 559 795265729 328 102336710 42 568186912 106 905585851 955 893215619 86 316760812 73 513976261 857 338743079 433 909130676 167 211146456 365 132103208 334 170028196 301 38423858 440 355850693 25 970483906 404 478655216 353 849505866 658 484602858 720 254869878 134 559425678 425 755633675 367 533398167 74 768052088 972 231715134 416 880506832 281 187682947 684 627142379 706 351248663 636 719887448 690 501345609 307 107771025 641 41705821 88 838180550 510 528700866 218 798824650 644 880690248 144 112420823 688 446398851 543 81050992 638 658489661 255 793315450 78 43981100 55 784040596 408 64675707 220 347043113 84 788482763 32 280356298 379 543181157 654 105359562 885 587972487 537 95172316 795 199847142 965 953585717 585 240335047 915 854437062 458 567131498 105 562306418 529 463589269 944 526002553 273 531055896 450 570647197 428 772694237 190 196192340 678 437310255 78 855858254 371 482378959 453 333573819 151 47459062 603 896394249 881 609987933 675 446270656 918 158559283 746 934181153 890 641642325 892 234111642 717 715767301 286 46578243 875 448027956 90 952587778 29 653666984 35 408981693 881 383301284 673 2724670 505 85056071 496 803363927 542 904271952 944 73461796 96 926102828 644 973557071 595 171312297 900 821904021 312 379008601 645 151048283 72 706021444 979 306034396 581 186013592 63 247255223 168 984894450 991 308942602 82 211231884 976 336823461 772 435450787 778 8294869 521 39520832 472 734187657 750 547591662 722 76193759 81 127612663 647 361410131 802 873724687 429 414482480 602 85374461 191 974392519 9 41146114 437 83080118 156 356420217 876 544219030 15 643666546 495 758716659 500 447459672 814 95953405 197 233256923 380 770878258 74 329076856 424 400865295 497 85079059 749 320180890 823 21179511 879 362441552 58 875692787 270 198609001 272 339448713 365 62847752 398 478914973 697 414909801 807 176865395 320 684012644 164 356566299 132 111390410 69 213614610 270 594458688 798 251798521 637 376290639 179 751791418 124 372337185 259 395598773 11 686330600 345 132208351 62 746066541 786 799721309 111 612262850 328 260057922 915 445314336 382 437225777 657 431930336 185 912915297 136 724644863 767 895459968 769 823025287 541 129383876 933 137719357 433 72886615 123 504674564 951 903093146 724 510346563 625 35697639 444 531582381 499 584212364 670 187408409 63 293490637 28 243263557 666 461624782 752 177419320 655 228567836 270 5155898 226 417639320 73 249251105 618 784181696 114 67181440 19 42984748 553 343792076 911 512149843 737 629140165 875 699272715 60 779840370 834 4822302 111 514029958 513 378596205 911 199736972 251 860634765 466 438257204 327 389991306 436 943520905 389 183810391 548 830150510 696 732484417 962 97738172 46 678635616 589 30107912 219 729949242 375 618547270 708 587806182 959 956951060 822 63156612 930 584705996 943 796665629 258 783714981 791 168045421 35 281339016 494 890174108 128 246716681 438 830320109 551 569296827 106 734534347 567 988223213 630 189514460 992 941232831 904 147950397 715 760965668 220 105912728 651 839540841 865 262943335 890 459700577 990 162815883 934 411341587 284 325340763 768 200158706 484 75076314 510 761702950 488 331776637 859 669521663 342 18287701 796 876608779 953 158517771 924 784152552 91 589738747 984 828940884 872 693909178 412 371119314 929 763136769 717 410495880 850 541398124 732 98032522 377 115040631 10 266882220 840 147524656 855 802423477 989 91100404 99 495654547 993 877975176 65 769092710 765 992244076 802 19809161 153 820849894 961 4566354 720 956280380 954 664375433 462 6037868 51 113722304 495 210614346 0 366697495 843 844169120 314 330557212 209 928593575 407 485827805 301 422784 626 819790925 293 628417067 416 232909417 350 81420242 330 601145436 396 890395727 403 969318161 252 276645155 859 274680353 474 730646511 228 828620491 620 800802873 938 718897422 792 484366808 643 143254889 421 393396622 53 981470028 951 142373873 356 275271562 104 886751935 343 505449906 104 568309488 424 370334152 277 403769156 481 669564127 924 729888961 373 984013236 59 783671715 657 934871989 618 429873472 860 826454081 91 934064937 876 355697034 644 274806234 448 541065968 859 345750877 332 557563629 371 172170844 105 465345791 675 285427939 474 641415923 855 310121802 228 924921642 461 408925005 300 243880097 977 389128812 314 854166668 574 744407182 380 238338086 980 747926253 474 69692867 633 108074165 353 789032135 212 488764916 147 320981228 821 733767044 394 457814730 554 213671575 869 625655467 363 456448926 88 367838018 496 468979810 228 531307714 528 835604206 728 45640262 281 73150143 24 554186764 324 802571159 792 975600447 825 406067839 626 990145111 954 801198363 762 615619530 838 983865306 375 610720760 13 775551982 983 827261345 862 980097163 221 678677367 142 124863932 767 771997205 958 977425396 605 687971618 172 865501239 871 739561818 665 874296953 467 811673566 161 455414827 834 43531150 242 708120796 709 753185878 106 134453985 27 98611531 635 944777238 485 232605765 922 376893115 501 256968845 204 342402376 746 723162151 231 175480964 828 973581330 781 907951640 582 596750663 848 853577727 996 379603457 308 487545727 633 70012942 1000 223663208 873 955707152 261 692677228 671 375697677 298 72369963 869 788715869 268 709188633 150 477417724 459 551467167 478 300361942 26 79090311 661 509772762 855 150731447 92 814034811 580 997846315 744 950869519 301 530849493 865 791684329 726 16094196 998 770347213 363 669839574 968 586385394 654 490920749 293 641161670 879 619104670 173 885550969 793 821737883 10 514719010 396 451015588 901 717273748 83 244352667 945 581245139 315 409499827 18 169974479 939 19627723 969 952406124 259 279332748 46 723444562 535 574396347 585 471491852 786 359276425 731 706435648 545 552574752 723 204394403 796 499131140 23 609133474 893 572140062 933 390711200 925 75201994 606 618150608 163 134535289 975 952611299 179 963866334 529 166048082 112 966785858 588 745064601 547 399234623 268 567610268 754 462595529 125 641753865 183 621800106 798 314375396 363 246235292 236 692227386 132 368976630 898 885939600 81 604429819 929 652703154 251 401721445 253 819165092 723 720552429 316 995578790 417 25795654 891 122922955 979 132954835 605 832257098 295 331984048 605 274766041 468 687312936 892 29120439 987 346652036 314 67505225 443 625544357 950 758552111 30 935832430 165 261754469 915 374285771 555 852947186 280 846790197 809 534156023 229 34072901 692 734736828 622 845866488 370 668681381 99 633763467 347 87137554 854 476706085 958 403997055 94 101776934 295 192189889 249 518344945 159 277438253 750 322272780 153 130285609 97 725770115 835 374602900 600 762589916 712 193402644 839 196185850 325 36986484 481 762043696 500 601324411 197 757329133 65 819586989 688 613902385 677 894727148 725 291191690 541 181180411 955 876549032 131 247340829 316 777355223 15 582410521 340 293629220 771 679649219 928 176827228 595 13497198 349 618457411 815 22801871 479 928528812 608 8391735 699 748799868 190 966065125 74 832386135 559 167879329 469 424138811 454 917728586 227 281503218 194 575905233 548 705300691 606 112187584 246 922050813 240 335470526 70 44672970 506 863724674 12 32025481 203 108213637 999 395361818 956 678591993 499 175239081 343 139607553 370 245023793 92 326879959 964 473430880 545 839672123 353 868725708 69 239285306 601 658390416 131 994062039 876 981038082 352 37670711 279 529414010 602 341234465 82 505444537 342 750106347 614 398966358 425 227781616 73 921772111 160 450149399 629 705336085 810 527361282 147 126868018 376 494457725 646 643532570 455 414431412 612 312169345 316 23910993 485 775377892 493 70920355 276 378874722 630 857742731 354 329002624 41 190954498 981 4936901 657 329696214 92 678386572 437 906982140 4 963564868 555 278649425 979 484173127 834 610706088 604 531840843 929 995223445 394 238118448 657 961828033 271 683574107 561 898737176 283 581946692 225 321546635 281 560275264 209 834005206 811 771309516 187 54957028 123 840735678 297 998586577 855 383299128 956 811594547 634 765050665 728 129159915 964 752888762 166 82224898 296 953617528 955 533255005 270 67468815 783 597872287 1000 246893953 554 556411586 394 11372915 84 174795127 95 390962929 742 401026467 85 420676638 633 89551529 391 452418514 31 821917399 704 893866088 273 828901815 428 541681273 470 975003687 866 329924777 564 945948574 297 895702348 593 456315489 233 195817424 214 664708261 251 194872839 576 414278234 760 631463744 595 157788280 297 585687547 447 500054056 892 867379341 314 348975384 594 548875146 165 232926752 820 518917091 449 480167801 63 133111941 576 686446377 112 462408794 865 538441574 529 13086528 160 302829351 894 885622038 701 532387263 551 430562360 796 450985570 145 528735672 565 334778700 373 973959172 851 25795650 650 273223756 312 67554417 192 778662398 656 591399404 693 634844253 483 23678764 157 199018955 261 769769208 132 377417406 421 117799907 859 666538882 182 287728509 405 292109439 703 896348041 671 571064094 390 87916170 294 333625832 886 726013924 28 890435703 263 912349901 37 662005585 386 452303975 424 145844418 679 286906305 128 745050394 284 362294054 285 697367172 617 949386116 555 96845094 463 290914012 890 721695209 910 658624370 573 136385814 515 359848361 82 341577887 766 865899874 736 648659144 211 888508274 843 17993262 252 636160612 753 947893763 502 717869064 502 266252472 848 714296722 847 680678055 642 925748793 688 306682803 244 707753786 422 774202736 270 337811985 722 581637492 581 307080166 938 194996239 883 210583711 402 885661721 702 414794083 930 326710982 913 108427075 206 304709313 790 99390299 725 651794450 732 273619191 790 454614075 52 893286448 866 414133848 165 571205954 938 70219085 722 220412353 432 933425167 432 423163752 157 130076489 345 247329773 31 859421465 975 216449924 527 999774721 754 748275962 939 111329309 720 453669434 260 270522785 107 961819125 243 768367381 811 643442957 929 324187967 465 706962416 357 675984210 729 742930832 347 682754420 814 853953994 821 884835092 736 848335642 469 102978654 262 702881032 564 944765590 925 497635184 98 39434995 992 622307215 100 532608944 358 382567590 320 330385826 179 733130317 980 962339954 555 560304706 319 597259304 90 335315878 262 947840719 72 241776242 775 680483241 11 507547471 77 504763096 360 618891789 812 952301477 239 787795802 355 598631750 671 483020816 352 720081876 370 830280895 480 794706187 865 133768568 646 197584374 992 694582845 593 463545732 24 577864014 74 598723585 160 93370319 346 19111370 851 847728546 199 450179498 517 744917535 105 726977148 412 824677967 480 99960272 143 515847083 218 582274770 932 849727114 711 127793206 970 899334040 958 29458554 198 109258525 662 635664210 963 163965434 701 163169317 661 833538269 466 315536342 886 579601406 389 1867063 543 63361241 669 158561936 481 802501247 722 446371922 580 391190988 364 4071005 386 325249120 680 404050433 710 795720194 455 796158485 877 759787715 166 424917862 708 228572149 44 442411717 244 520678638 727 81550779 696 721094657 321 769737388 625 412960685 124 917822059 362 147109695 200 858300540 719 166200707 516 763089167 784 64673497 955 388931707 457 684518557 275 552630469 97 439104471 671 663876603 260 854570976 690 346218127 559 1884136 915 597929232 341 650872792 692 986771770 484 84488315 63 665001600 630 832269830 629 559657600 715 891548307 249 278344767 269 719902741 674 151758886 963 330249237 532 266229881 482 95793393 562 516568280 615 24116523 73 359080561 650 61530429 393 645266481 770 602094250 495 579114865 896 401510095 949 610134296 605 427926038 685 989298038 274 921454940 222 65298982 655 920442566 436 272058031 386 72298285 130 88893300 310 270656670 332 186217613 21 777761387 536 383389797 295 338212546 918 536171641 999 926801300 900 803769409 144 910396016 772 129817022 791 820607018 370 69341670 685 785367594 644 425385501 648 711675596 222 705277828 257 508201521 554 557545551 420 63657243 477 856492058 508 582401230 708 928292052 878 237798653 957 578273386 638 794812219 412 39633272 787 703586696 744 699710717 347 83258286 929 480747099 286 156645848 722 56198052 813 212955243 571 473999619 299 172326505 635 617518496 488 333490760 356 649176504 745 10359041 967 459955438 888 341705846 554 445762421 347 99932918 215 777624180 101 512856782 596 293996462 900 91254605 532 526925389 638 78791262 521 279424594 512 565799320 684 450145543 232 182206799 447 791969040 580 10854840 873 54110582 120 510237708 269 960040052 430 985599579 839 835788826 181 405293840 531 629885464 925 298620732 282 352625046 586 282074177 872 991076414 162 518858999 363 506903460 9 139075203 123 420077485 712 411593372 427 804792628 637 770328569 222 832741177 386 296079141 15 681115866 160 267730137 297 384719343 21 625002999 700 671051492 181 191775506 221 862001138 177 190174962 659 220248336 806 523255242 47 537621104 257 298770760 5 602356332 460 219484896 612 496779658 195 789620332 677 931657406 383 508045625 75 301577024 962 303189277 486 26569455 864 675589292 212 944628501 943 6224793 940 271712691 94 284025754 526 338697560 178 15866879 929 736104975 90 704334138 291 250564183 264 905599491 806 591280381 58 926918996 208 437370038 812 726510881 367 982636290 130 999990841 617 434197833 412 655062608 702 144816401 282 850017219 459 624814937 77 776477825 351 258468604 145 131585972 942 533088917 506 670787390 397 101659475 849 876746019 262 160791805 171 945274765 961 587246408 526 308690280 920 923974943 688 155928051 900 302678032 9 623810001 69 452689138 400 317384144 845 712201780 706 285903313 929 208426873 23 741673503 404 17251336 370 326720842 841 542757985 140 8675914 243 591275366 332 123586491 169 939704596 668 187623015 399 14890555 51 266471268 186 431057893 902 818089161 298 726921606 391 427451639 533 921429219 24 283284467 522 207776724 642 597599 226 840024864 572 645134206 704 757788836 85 7702279 506 141269223 790 300581528 166 495675660 643 508027808 547 230884761 325 273803028 603 299241756 212 666773891 223 997621693 315 620220228 128 141107185 43 739270496 480 139319306 78 881970166 814 960876684 329 739308165 942 193242817 478 778096828 181 271807331 431 134072506 560 695911608 930 317944995 725 428589123 131 103963907 761 276176020 339 655183859 807 423073608 258 957815192 959 40264992 210 244934493 512 892828945 380 631680237 746 556448691 155 821595847 949 185948129 443 658574243 466 299974160 532 434618533 912 241991364 746 998744928 152 144164490 756 386854373 381 452499970 587 856838824 791 777826937 458 991228601 581 760455657 349 72277198 164 806922726 667 589928885 730 292622025 641 336420564 511 411230875 402 890257558 709 471532485 763 482196962 121 870519256 410 140100425 614 461684794 658 862762910 491 5677818 315 312922269 331 841278264 200 853858802 57 736092714 565 889509779 580 226163041 361 937433225 337 164388190 537 618828250 104 773486109 651 560254284 552 565972547 778 431638037 898 370115894 224 82243614 176 693731393 394 162710162 585 462561624 110 497335066 410 382909953 59 701515310 253 618849048 572 498381915 687 123827998 912 763338296 144 816665226 712 565693651 66 838298477 740 121339895 451 897799216 584 191802626 929 579930775 320 486126266 139 252413221 540 655183116 273 506326878 152 572825025 502 691839921 699 54731425 708 214168035 571 986128833 46 768488605 178 13267692 172 379446331 473 578803707 716 775363487 925 595191502 936 675854128 681 156806431 686 70974655 953 530587408 774 16478687 819 781757615 972 11400269 430 992348395 822 170046161 566 831093585 847 857940636 510 159864078 154 156188493 929 451296922 340 971111838 397 49119030 281 104357438 736 379587657 990 526520436 420 747273804 370 571467270 906 728865099 280 142428865 333 979645632 236 662837680 82 174274519 351 388246908 999 453040404 292 917019808 900 320710703 1 627676166 752 239362360 344 1629492 599 845974594 267 554343010 412 545882710 112 533120672 342 589139163 581 687314017 858 48402975 238 822102119 162 356188725 864 119395125 923 352737786 56 444833295 185 119943361 62 670872265 422 804233399 796 797032033 34 648833494 806 93601703 120 618556213 262 720605442 619 543689662 750 890458938 454 866946880 217 449120558 274 507826191 335 969808318 744 749130279 578 808759510 314 222287998 242 442450701 998 826866316 9 153069685 300 161067094 410 635317021 775 24500989 683 536426588 395 147926852 367 401403270 595 481015595 831 158724420 90 421213518 256 277993975 757 735560227 8 190345618 183 852881485 475 348434725 697 693700359 361 768349022 963 195386056 323 820802681 640 853229604 33 457727639 129 9746577 813 45482226 241 379395096 847 372587595 106 488470851 276 395749005 221 817950287 389 46580891 982 424073647 428 728377975 293 817293983 566 303241054 275 520686223 534 680870688 475 601258461 684 681821549 614 442521680 704 593506275 429 112260787 969 86492023 101 5164994 332 579509187 770 676279931 727 818397344 831 903921265 257 283600614 642 686249722 659 21393718 609 536822764 903 964825834 101 258063362 578 811289783 659 105866590 753 463465184 569 381064035 910 38869304 548 528145752 584 478589765 399 75441046 179 272682596 285 647511366 32 984343162 896 577706642 196 497215934 319 43368196 771 100422074 516 885043913 591 859484147 897 523278304 961 146156478 272 186475315 73 11504745 464 425094970 460 363589427 538 632182498 658 360648762 883 481615585 513 775232866 153 257860782 862 593420943 12 324435523 829 264076267 950 526062159 884 427218770 930 201598750 200 689009844 857 704441144 343 466221988 207 490306522 62 203041486 794 26163667 285 702188437 514 78778899 774 437470828 201 59711811 239 741165945 516 104740255 409 720738729 627 61038157 429 631310398 465 857014281 435 561959684 991 636808282 828 866013625 622 688696664 208 577466331 621 619504902 735 92510754 600 404334658 635 117906355 226 511688778 797 78406716 501 470633791 710 789404446 479 981698919 451 810262109 865 896096746 732 416758793 496 923900431 595 884582146 253 192559242 685 777969782 575 981660674 599 68009621 86 42952496 856 227104533 505 585187995 572 633661655 732 374584075 590 170846556 383 678294422 1 120556150 923 932780868 790 897253014 112 310834388 460 708542446 188 901133157 766 621796061 501 260462139 858 109033524 96 180011295 743 234343658 682 422241763 422 926815999 1 532889392 306 706715113 855 601411948 444 765751306 50 658545415 105 747521611 451 338544181 223 405326168 244 665015949 88 461075904 517 305321291 177 149475902 495 241780925 726 449531408 471 290663638 954 911249851 330 15734654 384 581343000 692 902476393 586 848813672 54 409119330 653 759570858 298 797575919 856 642832706 17 964414113 750 416096054 436 383655014 581 736398902 763 152707588 548 754572713 704 724952926 943 732949230 65 932333789 552 194134950 605 85026042 13 993400221 324 839186323 75 55506965 56 884259132 661 730081896 845 643124808 433 826768545 327 266601002 634 526420719 672 783790045 948 187043837 113 700454068 781 329307777 225 41013392 733 77240339 627 192272549 851 774288226 664 124723348 423 648700071 558 341063304 716 39330508 721 443195626 617 838173940 13 669175155 349 937225175 976 451467749 817 82876684 65 224483641 644 742410353 663 845009319 739 550625592 441 478870243 137 276250778 378 293487045 118 530174542 298 50294737 841 244389975 381 703602878 181 721407709 745 826524736 987 668785654 283 181761404 242 398628102 758 157379312 764 284576122 34 962070258 0 175336209 113 541756377 957 373280749 286 837574305 539 72898971 101 338878404 778 305051115 893 958029618 824 586714562 576 912701237 885 978428324 299 549959174 892 16671892 400 207245756 457 199159120 854 735009949 252 487271034 783 884603731 9 760778829 2 467316458 935 500986909 137 529468478 833 721636327 165 270375823 558 660524946 177 649672180 932 813487693 559 737980760 475 520448121 419 777568087 352 232825519 426 698528369 985 831870463 43 368878880 256 314635743 863 661479477 952 903965973 380 81714809 738 261077801 172 104383331 484 124213238 889 497608090 29 460379526 305 850889994 596 993918773 600 158134382 960 933526648 632 848477565 12 317867750 510 355715113 428 59149871 261 284862433 969 149887389 581 455676564 333 199889978 424 187682761 467 448326203 876 644586169 796 532812969 509 338308000 301 842116632 251 53704727 284 291716813 683 632328621 378 343909656 132 169378183 350 664790944 231 153072028 868 35104374 531 511632942 511 795675874 729 555128040 198 534230607 205 286084982 874 180757589 414 148923186 918 19799437 927 81746655 157 698462544 642 788876703 211 684614594 131 610471150 53 953134257 60 340988793 99 43861176 577 656820314 819 299322365 970 177957442 10 385615931 40 810433547 587 96283358 455 495148337 934 386014472 234 812775639 452 244464104 322 214326736 109 536028470 922 557249875 848 397669937 629 1439676 519 688857293 117 235460507 314 972929429 905 987638502 666 411533182 234 591165672 232 291836694 153 245046937 731 503815165 979 212857411 234 840542314 245 321968886 577 655820494 17 225119991 451 29799085 618 665244673 98 330080741 601 162766782 719 321417318 344 834170027 852 297405050 421 823549491 231 7222127 691 155405031 332 320232921 178 966611765 586 567620337 403 624141880 605 938416721 753 277834256 96 17288385 982 368127795 603 557266549 80 627202154 152 13184074 62 344755699 603 942689651 715 452713033 366 319886945 898 10225409 168 523379994 280 243245725 284 422657456 570 514360498 183 846665107 89 89892070 280 238482182 845 333100585 415 379204046 48 433892011 610 404819997 433 461672016 442 549446751 778 390707751 962 668988142 28 984614196 861 23346300 953 307559381 848 531456029 353 800902096 247 459312084 581 171556082 437 411892743 291 392311214 867 610351389 603 520203842 565 331262119 411 15779708 557 534769859 574 446606447 64 704853879 797 556695418 672 959839916 752 717868089 217 444876201 253 805288257 187 222787797 502 323732009 635 791444758 0 889216004 730 759725997 869 765041105 888 778491976 559 635985473 276 924035412 491 996558609 241 645660089 560 544615063 485 589985415 651 620329030 221 633513032 919 991924861 949 62638963 123 407935656 205 948614363 625 646304853 460 617078121 970 860745690 129 475740649 237 765876694 479 970078538 773 926009385 777 35974398 803 434992800 857 956213128 719 250220786 686 755723356 652 149949795 103 590570694 104 572882603 558 676662638 245 554763123 631 853085914 242 360955266 925 679067624 997 352679058 211 889475987 441 350231030 767 945489942 466 201936262 750 576650070 643 329979543 727 583439635 926 741406699 43 833400375 625 552096894 406 362499733 939 62087781 776 3496192 939 300212138 322 186564940 730 129338710 917 911301432 756 398489180 65 959050163 421 842271230 189 165577652 431 452882498 476 279034749 563 908556896 986 564527085 868 784272784 86 607394896 964 901992148 819 929819824 942 718377353 21 942978964 983 112886216 823 531550631 355 637893000 900 833982220 980 292162449 683 392480139 688 711170398 25 116970440 101 419828231 264 682640490 17 858891169 634 927877734 307 490788396 167 157010364 497 25651875 917 976123151 661 235166480 798 416025458 141 603604692 953 397809609 789 210950033 161 96899390 155 866911018 250 493337763 830 922552194 355 919503229 477 999510538 340 795634765 754 710685725 815 21614947 534 245577025 870 486507329 463 170272089 351 226912618 592 11993569 217 437993224 924 826162943 719 464238841 592 641195777 805 363874947 96 470871018 978 758186345 921 788728122 578 227202084 541 667637507 97 338794430 556 501800518 320 758919370 284 689681819 503 607882544 183 847039259 525 395548860 4 268926359 130 948227205 205 898065640 946 247632732 58 892022156 880 325360579 311 334466871 486 124257151 574 210331893 866 732465270 898 783376745 339 728781893 935 697029232 536 383594807 767 514806457 771 608400328 686 628179774 412 900605470 804 641105375 505 383871372 19 646219879 679 538771969 68 504831900 42 536705938 371 375380 542 216030987 453 407808494 611 244527143 138 511843516 315 196966759 904 657525375 936 347052825 859 943449312 340 657161229 580 688707977 89 448621614 544 815580913 119 386679030 178 734220617 260 288820019 970 676418640 710 187364454 684 211871129 462 628989545 559 148144201 597 531582490 663 657346658 263 626075231 781 691332437 940 531435687 473 479138652 864 670243900 849 573354461 767 786986441 414 445053914 54 842796564 807 216473071 902 998231678 330 162847767 265 231412543 3 398209808 555 298501253 985 697392656 261 925156994 786 620546352 847 585128031 155 238982218 282 650835156 48 435076183 690 835367856 171 908674305 491 751958661 209 696972730 135 47231651 189 82298119 960 536973210 165 499216509 849 518497492 85 85157152 901 823181540 301 251296295 954 212286701 61 278840852 521 285144457 748 926721016 337 28770252 698 938956722 959 582192246 715 308466218 277 300476870 18 112620996 172 755999621 749 548923229 245 165844715 52 503853385 690 900611395 130 666913913 77 162649859 743 260725541 333 800547160 911 198201857 928 320641346 174 143889018 836 332980585 535 154513762 196 472326148 274 283871587 226 833044942 403 491266741 854 619738586 266 427996620 578 376114093 133 69543537 104 929402363 684 22526580 914 615409091 741 199539177 49 181340707 695 13341733 438 88919132 721 371274089 339 868191576 141 888225467 976 709282982 391 325896548 872 471625780 933 430164217 946 439844189 62 513392160 370 374000226 393 537156091 966 161444366 555 46455037 196 109168823 92 754305727 498 499094525 821 149099055 461 367383870 955 28056357 817 426892286 228 566933012 45 12265611 424 72437282 810 339707392 141 116958258 709 230605757 205 284245662 916 256150887 264 540693161 528 434623419 869 845941715 474 526702093 95 806404617 630 990558309 547 110001969 732 743722758 653 576856455 740 798631392 196 936619393 259 428889699 218 184866711 819 72160626 818 129046348 753 485214375 266 251433684 377 831177677 484 354963276 861 443495309 282 856082980 809 36028037 295 90361080 803 908279377 616 842796499 989 279839575 112 942655721 639 606473421 876 196045475 600 513904874 373 670363192 784 612528118 760 303676521 1000 227251619 75 500974254 318 573424170 387 293524752 395 922592611 765 689688163 749 611534440 572 102059175 707 386155297 339 360795115 832 703171933 525 105235164 519 934146018 889 283753723 5 480307840 862 816458261 792 150782221 721 997998013 714 698503358 633 536593706 135 512718800 654 348490946 654 143462467 554 645981100 806 969185055 250 550005032 535 827582164 61 394766147 528 428383791 781 736788052 669 359039485 517 920210697 56 800681262 279 540807162 70 583559440 886 563845739 319 529280026 86 598826859 640 216535564 745 962377150 366 292331690 284 118105873 308 399495710 769 45853614 403 79457031 267 391141506 148 394924454 693 901903446 258 126240817 522 214033084 681 800318966 889 159068179 416 210815762 692 854379317 220 208664669 905 333276789 330 964016972 358 261344109 346 534836459 634 522444832 336 364405600 522 740390593 993 549554754 24 956626060 94 415112916 917 309386874 488 234536904 10 849704977 499 354723112 978 317254352 988 425264091 636 928483917 235 704227337 545 438354958 250 664851443 961 239117422 638 483126422 41 994324066 234 40982091 731 427048287 156 383044747 604 5543717 789 510447174 434 841051698 353 652621684 895 500340069 950 410563351 131 192940108 566 194066597 920 320321039 891 229716443 606 700406276 647 587920886 714 397638177 416 11206319 547 345045390 42 582738931 327 704618358 846 149184882 979 783688343 385 513596116 885 732031167 604 953493624 44 533870077 3 152143975 100 949380382 412 83754718 757 549166202 352 600079748 316 862554298 754 598072727 809 849475811 202 112609869 123 779742577 919 442210316 151 797818747 971 277174048 940 734100381 949 408410224 512 312603598 769 84043314 57 323055352 800 454204311 342 221377105 731 185363063 336 517863607 702 477918539 218 743790028 104 633140283 922 564480395 976 50856667 760 58462306 544 6984006 125 495330365 522 541463251 499 714379900 58 994804503 296 556912543 994 976257805 509 101653858 935 686800892 583 630893746 673 434046575 567 553271142 636 695576989 247 934701815 758 444136450 980 658791620 159 491573736 49 865089282 311 524231406 476 441718822 859 167976617 860 185256719 296 264925206 264 211304367 920 745189061 720 985136969 490 598380443 362 658453538 125 922976919 983 656637527 46 9337824 419 262547884 489 735709617 690 918089921 456 279838444 714 70839696 422 955020524 41 808787734 667 395673239 295 648360644 637 585823540 3 775987754 384 297693825 653 790460912 61 18180608 108 694715320 389 288540475 296 723723834 576 360951289 900 256335000 769 644534957 303 661580061 932 978919847 571 871396919 775 439192405 981 528355082 359 425974038 669 498250963 695 626205863 615 652324035 41 320534297 564 49964074 84 290705363 199 985305433 27 57711060 602 358740493 895 706108841 783 964591423 938 852934003 104 160786402 671 192020255 744 733233430 276 131687375 517 555498615 544 501809387 804 910758253 925 746344208 972 256139110 342 613994775 701 822140747 12 833435199 293 872381291 945 875444390 63 912452566 304 24941446 261 474296605 330 309656892 311 119661642 695 899650695 623 477628624 556 767717998 735 313640065 732 182565720 222 540144620 71 759185783 651 783575668 460 338593799 111 223871719 201 90271686 437 126892012 895 660031876 365 355342439 59 475192249 202 379451520 601 355789520 712 257041656 431 559144068 879 620487940 583 108913285 205 645713951 814 366861380 666 887700306 703 472255751 846 733564882 434 921592140 178 725141510 680 96385875 596 943085547 40 150065862 962 533280250 894 998759691 566 999883638 445 260797012 464 531530349 792 465143763 921 400196789 710 589101657 572 941560152 538 461879225 433 121841692 269 883968950 146 413410724 10 247094007 941 394478142 589 963245419 899 97296104 639 283141679 978 720967139 193 673244922 496 177904757 185 68251702 278 327812393 554 987965689 337 925031956 666 571916044 552 260981420 658 125138747 59 632791989 753 998039146 404 50263463 320 193070040 655 374955979 109 254144436 100 200009166 256 758049276 942 90220558 598 189175826 107 537060660 169 897603250 933 195532651 426 859779281 929 636633045 118 775902319 56 23719303 745 815853748 758 489675607 119 294119602 923 7817657 182 251656933 17 808611128 645 755902158 536 943742726 891 72001729 529 714488817 400 739900787 155 909889695 305 239528898 587 657904183 22 434984709 150 328274709 389 939319250 504 217721949 63 903208435 592 293691755 255 276236060 970 24325396 575 186197281 235 734920740 893 677195048 410 525772111 257 258250036 587 405325557 96 593744639 643 78318136 764 496032858 899 181245847 799 378148969 850 154798762 207 34068464 920 471419320 493 847647027 121 394437459 703 126605279 545 187468734 769 648625827 402 976622849 894 276822550 445 255991230 987 6438740 914 884427856 239 511008688 201 814776389 905 356038587 54 418938549 882 567304408 822 143254114 758 179760539 972 288003344 101 840063074 699 644067388 204 291717263 483 232639409 323 647006847 735 397315829 835 480051430 750 382128606 407 160063370 842 499201999 163 510456407 929 151147276 66 780815577 344 28920830 552 939751357 330 703430213 674 366506843 228 149886842 181 69246868 43 434910518 750 76121851 355 299789295 69 739237694 626 739238007 452 421556650 17 421402258 419 925649505 338 40372478 318 991795880 506 826961869 573 89838740 835 185826553 601 588738290 678 886189090 608 463458150 821 43467979 457 316086624 704 596882057 799 440385210 101 489610996 649 907355857 725 466824122 84 268249268 874 695234823 807 582367015 313 290632239 140 839888556 210 178585997 672 903551681 278 750940891 203 481579946 686 824984462 992 792534800 623 44065452 754 189826015 567 26942974 532 838690430 119 500775147 343 907994613 167 583356060 885 126042148 268 638207122 914 509537529 607 928110177 287 398781318 425 313190339 0 536125105 139 59793636 99 179137211 694 951634873 17 116976379 401 956887040 274 483524145 995 417589674 576 65951856 644 788212299 191 958030398 268 59714894 659 480222110 394 278742359 707 853436875 435 439199357 842 216692647 103 672760976 208 239429591 153 364228416 446 591445195 746 587509284 763 260354839 662 340488915 309 843752303 357 345944163 565 633785754 753 817592774 451 169002651 204 498484418 26 471691633 232 936493997 36 834999318 504 426420315 311 296615195 356 721063500 338 132490978 116 394856901 521 618156051 547 166600114 771 207304704 834 205204032 209 552931199 15 930693725 812 718633386 605 370424731 35 740371784 5 396189375 650 257075903 799 887622410 639 123728232 832 581988294 758 560362675 902 112637509 72 944785074 851 166387683 438 480989420 241 211190048 608 819288903 502 435798123 160 985494401 451 891360401 208 641686135 696 572659783 511 993465191 603 539191423 53 657696378 157 694588258 459 397592198 247 223840789 881 313050892 847 238088752 738 955390277 16 487821762 951 77979334 281 50800780 231 814097765 894 561843444 894 524572423 185 845565669 914 369414415 526 900369095 441 43967302 615 509576160 341 55497732 659 985289625 156 137390640 924 596493870 371 751864015 984 407896710 485 325737138 504 114865289 28 701617525 175 380913059 76 491627233 901 3576953 833 130737974 352 920171778 729 659020809 265 696981267 940 663700683 46 601800017 199 23912060 639 45382511 276 860518838 318 578311459 802 920495985 486 295879374 387 479998885 582 995593069 986 906620741 340 575607892 697 288182314 610 691521455 460 923111758 193 38591977 103 15316988 290 265285318 416 231889243 675 601130340 701 369710620 4 971098968 809 858792721 316 399634186 681 819544894 153 89960263 82 760450569 832 369364270 507 235114194 985 993762520 188 56782192 455 520245481 279 545004466 411 948501153 289 719321641 935 943793890 113 457195704 776 170459910 729 324106499 681 406318379 998 253617235 431 914254698 666 769342929 508 763188876 591 100749197 364 131627074 773 544707794 893 398076257 759 642152797 269 719730882 824 88203629 554 919700417 526 788906120 221 595492834 557 636066414 963 858234646 960 885530548 674 570563674 629 577032853 584 332835150 416 705633372 206 660927007 98 442809596 123 44254079 984 191716730 728 243869277 719 124974417 343 628585985 960 541830147 677 692490561 332 912796380 728 495446443 989 760144049 112 384960200 960 16209951 828 967637870 896 586994554 980 585055385 206 937958298 345 908796434 539 906340535 849 616549689 141 54942757 98 307066236 786 15492479 236 718000182 467 486904008 137 54414349 708 432283458 377 753265890 88 984634988 810 330807307 360 42920683 497 975087186 867 343667493 936 675201745 366 412733437 152 6234523 715 649873286 925 276214565 145 269419046 991 610389721 566 185212080 865 783494058 674 91899326 844 923094521 973 385839138 854 202052135 811 703909538 560 477638607 118 721686028 602 51992361 44 566056950 173 880853809 801 904793447 145 579089930 374 666977849 323 387864230 862 318913414 311 620655807 686 961812957 164 639223471 541 770837188 39 145951434 573 350906736 274 232295555 467 741460520 369 670340292 77 562081172 443 738295663 823 639316934 385 216246522 808 676841983 760 290618377 8 304186093 358 961180988 221 514979752 586 123853156 380 193191200 420 148418646 308 524720345 607 769032619 274 909171999 611 527826615 82 490034002 21 314287000 1000 813103378 427 515727640 916 310583080 426 314290188 276 629925174 547 86952883 277 30875487 206 741423051 160 273796694 18 881528920 304 750022670 789 236479348 509 721803835 188 673549357 802 299511612 127 231182047 663 812754845 768 966664087 831 541494374 449 984476946 792 589777660 6 537547823 545 197409486 189 926959784 463 122206254 744 798963514 318 961065965 982 192178858 459 976467520 236 753095483 782 155938292 822 95479929 290 205337997 868 324491645 462 457956024 428 546787928 501 831109675 972 582029205 567 454368974 175 856603042 499 454998723 110 218422102 634 52455216 511 905553305 407 951395652 656 204628635 305 30604420 58 427635588 750 449842569 112 387232269 438 485676471 646 44478304 541 75861706 677 54070283 110 549928962 907 562728011 629 177674068 436 118161248 285 947162896 473 491688016 821 568533436 982 30928215 173 317794286 907 733900382 297 287976054 460 472973839 760 512795720 435 173784009 690 544998759 619 927443924 813 940579544 300 690931911 159 997452493 300 834052658 658 622410578 487 259433780 453 928768652 849 799668990 544 265049716 390 856447551 123 763417912 92 540846035 792 632996827 339 670798041 998 625466594 900 326552480 425 477035470 837 48152702 858 713079251 880 938779035 914 184430608 624 683504529 669 916847986 146 348347483 389 153870550 284 321754414 340 651309306 293 890352628 804 943031736 972 543277492 674 286418794 980 242193172 202 562572639 906 132984757 510 826739180 523 803613629 802 53175527 224 679746181 571 391160611 448 981930254 243 826267312 174 365870783 162 769618136 945 404290902 95 27884573 121 147984154 427 648470826 204 867440537 858 81670765 931 723409046 805 517787082 625 380195982 917 415322106 95 278000437 235 135379081 316 664610699 377 35886234 273 295676378 339 522514140 669 630804514 253 171211768 437 751654949 393 494122104 496 478042783 637 69298577 34 933909110 805 82798730 109 609333081 949 622539371 312 261743119 36 23557172 9 632736267 498 304497636 472 948508210 11 338860599 55 398860695 732 198351389 376 832830324 584 160692623 373 546222247 801 665087908 734 727494382 771 281928128 166 255316966 345 970978667 646 776326256 329 536207173 682 563916796 427 400904961 210 946661476 74 723022879 927 389377856 389 261195971 882 781166279 587 668201014 712 364797829 225 136733469 586 399640198 861 318395668 795 664200064 603 856081658 338 682765150 431 200752999 127 696818305 136 165135133 374 550750 288 420890104 796 699660516 873 188154832 948 177753357 533 647319104 955 271674712 211 349658477 890 262107199 145 879645886 701 269995891 241 776892895 387 835029582 358 796665480 519 688046109 307 451145118 657 681411463 93 315460514 132 929715482 16 805917234 705 322201969 640 330467763 534 350392300 7 746830345 18 739038842 204 645018325 760 610537603 313 739866718 386 759068666 72 869262838 240 458376430 72 444902926 869 541067200 102 143599522 381 550345481 286 576880855 188 733347386 198 96808179 77 465804147 827 432872577 946 236028629 958 823431430 762 876591817 678 550680893 219 78373629 807 596995448 708 182498809 25 512348784 316 181355974 599 368353172 450 2761162 299 885425225 945 745395038 19 123048221 659 925563503 499 799557486 902 549372959 55 183666235 228 419731808 106 640804119 784 64992195 614 500254745 535 508395656 684 698160594 740 511898908 482 955957604 797 24565334 18 410468389 518 62631271 726 334068224 636 265961472 863 811648732 367 81267456 367 294087663 896 523523493 391 378035559 782 399594365 763 57475436 940 950666175 795 975437989 432 54141294 153 47546610 66 203960373 252 586307292 400 785382631 457 173748952 532 53058024 542 626497400 144 188392442 91 393828629 576 229956533 314 771857108 904 492956832 950 285518200 977 288786487 216 187069285 895 254701355 590 105005378 962 727010634 82 850355544 966 300121338 607 254780758 725 417310686 928 183930370 619 989777946 659 395503632 503 294055217 57 142771946 743 537662272 655 151741978 508 640951967 850 234002526 27 329489734 410 8652653 279 614440589 924 364943819 711 723939178 755 536142376 540 143933176 691 93721188 191 434938588 308 523548384 173 47950487 504 419368102 48 649661294 128 187912444 205 285620808 798 370622019 974 710443784 273 114181122 563 369567212 774 536410505 797 812205967 632 367775917 466 574546776 435 533459463 342 265420795 509 656763398 515 492297167 888 494581772 603 19676701 975 538866684 799 771206960 215 967060462 742 628315619 411 172022144 951 897359371 599 141515243 75 562065036 425 148234925 614 271913948 647 992594767 372 750839982 148 193722542 153 166191761 898 174103834 638 478564383 642 370523886 519 962525574 605 614536020 294 432903084 630 348806442 428 212150340 0 201305573 904 651807562 22 957616868 672 522144906 592 828066267 112 899916137 404 841817186 403 727632474 238 912644155 165 882857794 311 794672556 61 944574227 591 548606562 610 389334760 250 992833102 609 583085938 448 167318138 818 751528395 279 540567426 257 217158688 857 325351012 189 347466857 469 436555063 368 383721498 141 769537354 430 829639016 627 95953166 368 273746654 310 461377364 771 884246396 494 298255157 481 37998729 294 708642598 755 619365317 756 419916314 981 331281133 251 3340448 269 22319464 721 739532687 28 291165198 505 661906656 513 767577839 338 530765444 190 375947238 995 349163716 439 815409048 122 815958664 202 998535720 762 797263751 956 694972538 299 875639659 166 519069603 372 305300637 150 308692248 88 525443677 991 291978559 860 89934001 55 36459062 191 464688822 877 825806357 385 315873751 998 507976584 809 186980723 28 413641688 99 453481789 173 443874250 961 435729824 969 12981652 665 166053116 350 677211584 554 25797493 594 709999555 951 332753902 412 12719565 760 658392149 692 877242934 98 325633472 240 792508393 978 547588360 175 811490278 632 469514623 609 925904844 620 494402955 694 378700508 556 554834278 179 81687145 792 459597749 720 233344474 966 35015691 912 970998847 554 364715286 205 529452840 30 576477250 871 680959344 623 433136761 838 934584892 236 316015481 182 243592057 643 191551917 309 169723252 464 846173291 918 435386209 629 332579655 476 359412654 279 7165213 925 373013473 563 672900601 214 395866305 987 162011780 327 816250433 202 948711186 328 888443994 843 402778493 670 286754121 18 481565600 534 56374153 14 326169974 748 445115196 139 840040348 358 437276331 695 56154494 523 918569974 759 867121622 187 64497622 436 16453437 938 737567043 268 96339975 600 348074193 92 627000915 635 710354247 32 530457735 577 49681559 475 670933909 292 674214738 133 611097485 336 407713182 614 863909833 674 821869392 319 392900192 596 965495084 730 40357900 829 394949895 104 542113043 955 733941836 955 458266233 974 806098644 167 740350598 859 556667919 245 351401185 51 911495857 747 573948163 932 192438167 260 990698916 492 151406004 186 913715381 316 325929077 670 227312877 93 423528183 254 170448070 581 22568814 308 892706619 438 740053467 416 621478326 933 2442575 634 922563482 885 59784727 639 968674258 122 624164066 331 173245835 730 475661079 887 852856729 500 139413985 135 464525538 708 114509369 63 529479471 900 320526603 831 301459047 638 753473124 78 692377988 482 372816626 180 394521118 137 127670559 868 263229654 292 544803176 637 928765287 448 586391566 515 401808571 513 313740730 836 501450857 178 346530941 207 570141388 166 358595988 460 344573019 918 786345164 656 789375619 496 768609077 18 735511216 970 927238813 122 7838382 695 987834130 460 922456301 194 502052922 691 282807064 366 371915317 712 735600189 215 51293528 831 511986437 199 562251948 893 334235699 194 965525024 203 305062710 814 107579421 323 520853049 936 879398801 298 32764399 611 241864340 206 852842503 213 245542076 816 155382085 893 670283039 747 76745820 314 409694404 310 99685449 590 311329854 244 857179257 894 873154970 819 873878135 825 533999692 321 562271679 553 85699022 467 564534822 517 134766181 404 651260080 34 756636133 942 736703447 285 405234064 944 389876556 485 967868578 817 115216248 762 331170746 913 514195584 281 841864389 705 376541803 745 487704389 43 391311789 128 585467691 381 982805590 235 334327838 228 936163910 941 742015133 752 206823088 562 39977246 281 651897672 688 666387000 997 854861168 674 312424913 201 598429968 354 229640857 906 392927408 987 123149024 950 716552318 335 781625898 174 330678797 203 793298754 926 226879696 336 157199555 178 386092291 372 257101496 329 126198359 415 503539543 945 843957500 957 267600458 885 593916338 182 824992544 510 83396140 50 721504098 360 441664698 940 547537504 122 286180761 486 16048049 332 609150113 259 627983306 143 799719218 856 24417315 677 542338659 484 233728333 375 629460226 381 622262705 675 425151851 200 529335668 458 384359639 265 914504570 856 956405520 318 931196361 620 400282286 820 561390241 238 987397644 488 762838395 503 950436626 246 431646995 710 159818896 216 84970031 961 940230373 828 496648326 442 449853037 674 143457891 191 879477260 685 837189154 605 645391505 234 98993553 913 267502181 880 736664935 793 752624818 556 772577171 277 779337752 999 691446136 456 79838458 531 754039141 953 828598284 120 311851710 813 279217314 109 769146772 389 358875817 18 603597503 851 116098599 318 621331474 405 782338746 137 793909460 940 615724678 71 224907843 614 268906118 751 50271308 226 111895117 912 666513397 689 950117298 400 384029087 200 691940331 343 596487076 753 309704000 534 834086584 868 501028122 242 420921643 955 969734709 63 811436308 991 813318295 849 654594831 367 22574667 890 780314647 585 111041622 410 255393486 892 635102832 88 941312710 150 149309007 95 843602737 345 263630080 666 847286772 137 266511422 1000 838292963 546 413066468 622 681957163 583 71082894 311 702430974 537 524315491 375 126236016 135 954096295 190 308042520 550 57824582 929 872150340 965 869020054 416 350584143 764 120705001 267 419753332 185 891960771 482 984568410 326 33219153 256 373423651 898 55803603 164 656437459 263 898709729 178 695991057 159 863792317 134 384448107 400 360246177 774 330708521 80 805364605 170 795120359 822 697011150 97 451080771 361 979397294 593 982614313 434 840061088 497 556260005 339 343399292 773 291306027 786 712207616 673 84606695 412 149355076 759 709244661 348 829654216 867 645024314 557 835800246 704 767572167 967 248375595 52 696583089 661 381547468 216 888599222 367 822916299 850 58480324 265 522046640 173 778263289 740 450849846 575 983331374 789 7386204 281 998005885 892 528397749 985 703733159 574 65723626 548 546306759 318 475623790 361 257863961 244 209954770 307 972723614 96 218625913 21 66894681 16 425030024 903 939523393 633 850047680 45 303042940 200 470970147 201 277433062 449 605707425 160 741845541 645 839060294 343 260995281 16 810385141 894 92077802 356 434336935 39 502052862 404 733780685 82 185071827 259 40885950 568 32531426 476 979721275 22 888554435 412 638452223 259 623523572 368 960231829 577 755567110 182 420806554 547 265374981 751 429702844 428 214863302 579 801449614 397 237564030 541 904271582 415 632551596 626 455329595 223 955334889 405 938097415 340 27878042 503 445165177 711 804795397 538 251177187 820 819458355 479 216294474 837 264008297 119 795970889 400 566205073 340 382077291 519 801903869 959 642652394 405 42252991 49 188333521 429 649125986 279 673733212 620 195092767 951 100500103 543 62943462 611 115413858 881 905508367 392 664558767 253 703978249 351 995734853 223 846886600 444 306087908 934 668066525 573 858481013 777 865215201 505 575834423 754 606347576 913 676337802 998 433932006 174 565331885 637 77749513 987 670101996 314 94645251 615 442436285 616 864833218 392 834803231 73 112475032 951 272965460 94 688465549 630 543560338 304 244735194 373 287369113 838 717294772 947 102339241 56 1093447 669 480796400 370 543161469 570 787337559 554 237026515 283 820228269 943 843102903 740 613567220 48 266068499 390 318979216 695 106126387 852 575593277 480 480058417 476 596649034 461 513689621 889 194445231 712 580471758 399 745781245 137 979045440 415 300424995 314 4882269 115 999054761 327 93414806 669 947701462 840 37867447 47 208761675 920 897674505 33 419516039 903 898834671 340 855413223 921 908953471 691 509818770 578 17882137 250 681857770 729 268582522 402 58320578 425 639016533 837 118479315 617 940789406 200 822242149 397 463008611 214 914818053 168 875623463 128 640155888 598 668759829 679 754919902 283 509785708 582 847132056 371 977410073 407 711028308 910 535441361 931 640760502 100 709135066 50 48097373 15 962764694 512 487983675 677 44132170 402 720812455 296 679543346 562 364722301 581 336075952 147 1034566 676 43323319 202 328808539 941 989600675 68 978244068 288 597327181 856 609896311 296 802118783 683 559302667 443 332164105 961 302957924 916 124099442 474 233527897 761 507486060 160 106130601 394 692353796 424 899636362 41 102958855 127 964477882 674 392254878 83 493645869 865 277464500 573 593054127 375 948971795 70 705335763 621 648982842 696 719827720 647 918621937 208 862830476 524 524000267 111 879727993 261 6442390 752 382184337 396 342995345 388 284459131 593 354239698 260 428874869 814 305605030 170 665121737 699 847057361 388 499438315 420 192707823 418 73671011 861 521649980 702 282549794 686 158647105 513 373033523 298 32503080 626 306704763 140 524242531 844 720645614 678 310056655 666 549666712 570 949324460 935 474390849 802 837671728 642 880040049 337 419561065 972 604182744 394 451983746 688 196416902 942 415211855 996 154787995 944 598383060 646 774473233 824 168620283 165 469009700 963 736412516 722 481903111 160 192840095 233 633427879 170 115603566 737 260392844 591 7016931 911 920961720 114 565800640 172 978140768 525 577107748 301 749218198 773 262384413 832 144346860 891 466827906 841 881342063 233 162989687 98 122149531 116 107393265 917 746312661 437 544369929 683 995289485 511 686511825 435 921782350 113 124993341 353 29754906 720 944762221 498 39135789 502 988379508 633 743619827 460 52435704 335 636762332 783 963378748 502 100113152 723 512762692 975 183570331 612 142255959 380 771889624 155 203819787 159 384991068 717 303116174 482 261639929 177 216806843 595 641085019 893 800775494 75 797628793 381 332606470 124 465264102 673 104526565 388 746315063 604 760617491 332 260660517 401 920952815 478 882305852 834 764986697 242 19901742 520 465940683 421 239944933 694 158056752 887 325506540 861 694146044 134 111329483 380 459897113 367 482287225 246 54363738 455 378641152 792 518148744 80 211662337 662 449893058 525 96716906 65 251235529 326 170964111 564 559895771 572 687870017 655 630862099 640 306206380 557 135008047 156 444519355 438 89867009 696 366280024 40 851761577 749 377392021 49 689748372 542 125657126 505 553594665 177 166928658 339 141276510 938 487775563 147 70352139 101 114654730 836 716132420 424 90010536 703 937033334 113 31120179 373 456966761 492 219071734 563 196821636 350 75849778 121 504246133 525 862141326 876 467992100 874 826680196 762 592630643 791 679706068 15 636528337 197 527642918 767 480685295 71 247729532 105 419740970 78 277047942 221 776798747 462 295660622 579 628380313 466 644012268 18 926781155 392 892727670 387 384648002 387 390337308 777 419891977 135 758417209 343 674762163 21 752876138 905 585119464 164 774943623 43 891027768 102 887518371 87 205633626 892 47365006 912 943800394 159 811846224 721 855295808 393 651137064 731 801352813 56 438871505 756 960158472 303 577648102 574 427718583 88 184368821 774 598231331 284 801963451 619 854076923 224 707765693 643 370445149 234 770593441 369 814019622 291 185255541 291 271931532 845 933489931 960 58226458 574 877387273 611 484420819 520 532206695 883 516156962 938 22019312 479 144367633 303 841906492 145 177870834 103 120800617 289 172509419 677 94098362 598 355202916 541 414436817 695 276903499 26 222041155 446 971115712 789 189580284 393 280504104 265 635398397 782 60310350 54 232017256 764 262552628 317 405371041 566 389752875 385 827139313 683 361174134 714 174439630 65 739108308 801 683651850 159 513058371 179 651425196 73 26469615 894 120963257 276 526044041 771 154898569 210 867627572 771 972752761 401 548664202 224 48782389 348 414747003 510 313410475 480 384591580 793 859706816 421 813200435 106 754108525 818 607674782 758 366563344 733 753173606 305 359134460 733 914659998 666 329913092 977 728660722 129 360460462 260 290252788 948 251729765 588 378791774 158 626536559 947 285181738 157 178105653 873 530752971 153 441770216 190 931218999 730 297864913 883 891973878 541 71040056 601 26027601 789 456181707 733 663999118 747 769348094 558 119725024 356 774421560 412 934797721 902 786554892 493 549946245 256 113972350 982 556209322 353 685506038 588 549789245 311 45369505 950 174436290 939 359314743 793 853387369 730 164094930 401 649131236 730 312733433 923 737578455 819 50064345 593 716463147 747 438105236 699 776518997 237 469374400 527 790085782 86 809984989 799 1936111 872 823699329 766 897597766 459 227833268 749 975735624 447 341886040 870 690335934 29 322372596 169 36043439 650 540619981 394 132287406 792 33937208 312 698024712 915 252402494 620 995334724 65 792673497 575 359783055 928 531997082 617 907340479 21 515381561 450 631513215 8 170809975 81 800058216 434 943365505 712 789324269 146 960795057 928 855182617 404 22111209 636 483502526 78 561217050 321 460786106 62 442676583 334 874215809 18 466066548 899 718914763 143 546760023 222 103965431 291 105348583 269 395717475 387 281415626 93 516651801 132 972104448 671 607338563 639 551439693 602 919999545 422 12751201 684 144625879 291 129030701 340 888463706 532 542936726 629 306697947 939 691968252 723 8038555 828 887373972 13 926402270 541 340953965 542 929709895 852 366164812 41 18017049 550 851568543 43 535027189 284 718545535 432 617950602 807 247094650 971 21718781 242 466337845 179 670303619 102 91460043 94 880592099 640 617895623 366 431283891 5 631763726 479 584011600 371 312574891 653 317655195 638 355955376 616 79366640 767 244769346 845 107047029 897 576427886 966 802558827 850 902355338 67 799527115 430 465807924 834 533280667 902 745144418 12 223561442 592 81307379 290 596104679 704 476328508 699 381824000 295 699820201 277 703361055 176 849858291 370 866880601 150 845360440 663 708721807 349 475847541 884 249178790 8 516332857 293 342486804 149 535065465 525 573466728 851 714834460 106 923687933 165 292538249 86 617596448 286 242548132 431 919814576 60 650201760 5 187900958 507 420294281 578 718154626 834 575261224 207 500040612 796 967476560 44 880927344 596 339867235 652 104132307 225 634148493 573 629075525 565 811688795 850 109765628 561 943960807 601 74071434 89 753423286 295 210722113 278 243631688 757 945233973 194 604823755 580 100990713 138 726338 932 390636897 677 116380383 815 500399906 51 712091433 268 387191464 48 988883630 741 573635687 197 432345947 563 88146071 212 28097550 243 640205662 117 452030255 234 179389675 687 164563203 63 502970858 191 226736544 248 372301533 545 865211742 784 942535949 752 638727630 984 738711403 717 90779350 325 651212244 689 992616401 70 608122001 937 279268403 331 173087857 878 619506278 990 96042822 282 845872636 840 379278969 859 419212968 854 30328423 987 383368823 946 943067634 875 759864070 922 107237509 381 551608756 38 280841884 216 155732018 76 261117320 601 185015294 287 901210021 863 878263987 148 279933745 957 525667704 83 690926683 133 997698025 848 915827529 399 193654922 875 238021766 542 599060219 193 439573359 37 611576329 563 716864305 66 6031513 382 656150041 118 21056911 456 803392805 233 116701998 473 662298448 482 708946117 121 773196683 485 369384925 271 947945892 886 474319845 934 470510447 977 56766744 961 499520229 817 945398194 601 5818307 549 269905099 737 237180959 803 366038293 177 337218015 901 398476846 151 787013517 496 651116015 907 738184384 627 379980637 587 658680390 650 324660696 875 139689680 21 600697875 856 659945513 446 752612970 448 908609066 328 94031497 256 985806160 933 775013272 826 466985341 512 929595635 99 215276236 257 193142249 537 151704414 310 615185181 705 161644601 899 94140452 839 690175903 369 956918342 871 784405148 757 580663702 210 954117048 307 748957703 159 970513184 765 508377517 124 46574796 351 860679420 552 947891632 441 831690746 387 115111169 348 257867199 685 484575844 166 925075168 214 612647297 265 374863678 700 45327658 824 944986891 325 692091410 784 287470117 302 481739198 261 482164228 739 820671098 231 317898071 478 430410814 486 551665729 734 305503200 783 218819496 235 674646255 830 324997600 985 397740805 823 782010541 522 337736534 989 27936314 394 725107684 921 616256390 105 867991167 796 545239389 246 398595908 751 90161965 837 105994924 544 439053300 520 551490286 737 973107100 251 768546538 20 412147062 55 682930060 755 386530290 304 926254001 433 351909612 418 80583801 687 277394154 573 327445528 189 199514795 833 874468445 260 33202699 315 659660899 324 855641350 939 824112912 331 209929307 693 380870201 980 286705406 497 510548937 517 505543966 202 143815891 851 162564719 468 869441506 163 112931058 380 664892666 467 749522156 501 456865945 868 144709619 500 345959587 32 459086503 850 192225260 237 412415346 330 334796964 33 491592086 709 430628269 841 3632242 457 955619666 595 54344493 484 980704893 781 574132168 437 204427757 236 687816445 792 668221021 53 612627516 836 738704984 890 291431872 999 982688490 366 77746628 108 601429150 270 474559299 699 697435411 288 438964772 357 724496320 181 470497476 150 767514903 999 45995681 458 964192032 303 725353931 249 369316123 380 302687667 144 840857021 773 117944186 886 452132257 111 142530725 775 479460266 751 308279421 305 988145995 407 125783502 387 834049620 688 279997770 382 332885467 497 48349617 432 413421620 49 202964184 146 58495783 749 356599104 649 520722179 487 619608209 376 705425501 15 410404664 507 743154241 867 442907223 602 988139616 200 634716532 634 447317847 947 204856052 697 613053572 856 205718892 867 623410674 4 678466922 155 850603587 774 755812190 264 508349140 726 91743674 511 656055508 127 388890982 174 145731262 446 184033755 259 554586958 109 391353058 915 709522528 782 498023179 970 454713948 424 189393668 276 643024358 928 781023173 422 253883271 565 693034672 607 562766078 129 607657405 719 549993993 349 262514026 743 613216650 654 680361008 680 694302575 632 335778509 66 990888581 991 244200102 381 145631181 272 196377594 824 931518403 750 379867101 855 903383507 963 538919287 654 386048576 283 756213931 263 110402044 994 298566334 945 781075160 475 274814383 832 974531571 201 672777869 95 645474448 871 612896225 697 95365587 244 658459010 292 229557714 43 934522378 522 86637652 237 653333648 616 772429545 497 541488367 952 349629430 156 829524671 844 882222573 215 400854126 649 283777329 931 843743308 260 471120161 97 647138393 701 25760152 998 594598713 150 706512201 954 253646152 998 896168650 165 278878895 181 569097272 648 780340765 501 950095464 573 971062606 653 471470318 658 203308327 728 722107700 240 122857860 494 564828741 187 700539820 299 642893275 844 764121909 587 996913685 53 179882892 842 290613315 784 821481718 117 561447821 761 85764146 998 615721363 951 707778299 49 73583589 298 729461638 649 548794606 809 631064425 297 402912068 328 822872136 402 900439174 149 144096824 643 378100260 68 176864422 764 554904807 20 848514506 437 748768556 126 917901508 639 906021701 451 172040039 464 158731675 831 281958188 58 945311009 468 13699081 636 397930106 622 764838 810 364720055 101 159487682 805 618692830 560 166072845 841 347089369 876 478241310 678 183009782 906 108274831 301 777238777 932 657203769 732 379560800 787 686527502 963 793677435 373 895842500 243 428284312 279 777692056 909 198929523 362 69294227 410 858081032 595 372788629 661 709750679 868 397306298 897 704680753 567 170807827 480 756170545 749 26972515 255 385914690 141 842662962 21 807226955 997 999522948 888 44313303 13 505573366 154 345789053 320 973103641 781 230489445 291 231080048 337 770370306 712 259406599 697 852730612 18 460632371 711 615777523 191 947511821 945 798971298 67 259491794 566 894592658 120 401617506 248 15293373 709 325662929 651 742433945 761 493628905 183 497862525 897 13418724 935 703097272 795 175662614 447 271326001 542 776191352 323 161502751 469 696782384 950 605563193 882 178617449 37 351789008 345 410692225 37 79425873 868 640078089 113 869862299 86 200333268 480 201065420 701 706309958 466 545348395 755 916840922 557 714989040 41 708706345 766 696585019 354 15405766 187 478610231 143 40787180 10 997427874 90 48295265 44 435379237 790 404709136 708 172403166 182 823204275 362 289707006 289 192642497 427 596537565 485 846292469 533 514651357 783 5090435 839 849285436 158 951997543 533 518036221 46 499425087 821 485373798 858 99392459 681 188188121 245 823245943 17 393928100 966 996452710 236 30040625 34 316421476 404 535886409 997 825394936 826 289617365 57 707411377 214 372420107 969 12960776 825 463689254 608 828054313 832 578452578 162 80989317 770 48497081 81 150977289 913 613835406 782 84677959 958 561219143 819 55798868 256 46150084 262 473357803 128 956903226 4 35882383 913 594677220 880 484721870 300 160501547 972 444287716 437 782093154 360 235025910 829 135260283 303 435483515 628 495419300 835 722175274 480 546575259 620 628880282 645 905000443 980 145384263 354 112342992 526 603823546 136 663072756 831 86151818 629 663538325 0 777220350 769 790334776 352 286654928 495 136509772 858 527401743 504 671983473 47 323179613 30 626221236 728 511570757 123 36293168 194 373099469 683 980942523 663 276708127 752 593662675 867 336380700 149 440802152 524 762680968 140 754907572 257 297890150 4 692844032 494 57682019 573 239749229 607 361303615 30 964451563 539 741728907 630 192789558 506 243817979 759 784731902 840 589942855 303 335810765 991 83024879 418 744664912 998 759039426 753 494916434 953 492077677 233 693057505 23 503441412 592 480289457 644 746842535 140 701713782 46 275606958 480 969396691 135 936975345 844 728805714 34 777118557 930 466024165 212 495963107 448 621762837 637 757299104 483 26804809 745 613965918 43 323712404 867 539196169 570 658899079 87 867726561 223 240657384 516 718109076 2 638079511 920 303910333 942 26511325 560 753285203 32 592983436 609 823745603 101 58437114 127 11387090 835 735589677 877 157048023 961 707749264 358 662048609 197 181773997 95 764952905 780 103019869 453 508705109 634 568711154 624 82180950 882 424318898 217 151969697 906 230483961 93 218632665 910 141737129 630 933885974 603 213268629 255 31918981 429 97855472 107 728406452 787 878474842 537 770106968 982 313248829 938 959515169 737 705388317 461 795371245 135 252174920 241 716361537 419 664873819 654 861920125 806 331545370 389 407714653 167 163687205 553 834831071 443 253762324 384 42971687 961 671408720 962 672479379 412 118792103 817 248865226 543 696221819 818 622402262 738 211070129 140 569480511 137 353467683 805 502273506 578 958246405 503 878284915 442 611822745 464 4427634 754 693917562 604 914439650 954 785534669 266 658436644 953 162639422 364 651206800 57 152887748 816 194342105 666 577046212 143 560175056 541 423931947 76 788685501 741 215584777 582 726268216 457 821914684 665 729877545 253 455307227 616 780256085 949 696816463 449 881381970 407 834943746 79 547456038 720 538720759 817 856332491 658 920574830 411 433851096 27 388282175 110 312784713 322 85466931 219 480909626 678 279518960 63 17561645 816 317779178 267 923186531 605 531179187 238 988685864 239 104912755 917 432182390 701 545876314 443 627428957 351 20748398 906 471780137 989 543691714 293 828005534 972 662711260 429 300566363 321 96650338 500 153209391 217 194733298 210 721067930 939 372176761 245 250089992 206 47641465 544 731644709 914 228610569 727 503275985 943 919923699 838 846208024 134 342827332 766 464748406 702 680532103 844 648477270 612 678679012 559 146811128 590 155590152 78 71321894 802 189627362 833 382283792 337 849111389 692 422173657 265 857773282 440 433148740 830 705274832 500 257437780 798 287083112 964 288741195 315 32265822 377 289258343 314 988270356 740 987052435 652 396482352 610 112378437 965 159731189 731 859312822 748 399400301 88 957650656 996 650610441 339 806943378 287 815321636 392 70187791 568 795978121 861 20337043 77 130496899 256 758402762 321 696307302 613 453674073 486 682907266 352 996711155 945 439163273 424 942593525 200 481192292 30 518993832 660 383328095 57 208241906 63 678786587 571 770771767 648 531795736 19 811429679 547 222070946 537 248420669 308 795688213 317 302878974 735 217088471 178 332142742 966 851506765 898 801299688 259 655096138 577 418263602 5 365867164 128 594001159 723 539556703 97 798883227 19 214320623 580 604509401 544 552581497 5 152621527 49 64584169 615 594159563 844 889541473 16 681356427 313 508338711 21 504883178 293 617535000 609 775751991 740 357991977 112 128111747 815 758421696 979 215390547 151 129566184 671 408186688 873 789468747 311 500321202 374 861238813 545 161024510 700 529124892 490 379669089 891 915500175 584 556759162 614 215083536 903 184074619 800 536455629 304 314988191 420 681515964 818 824118924 312 539063902 821 115992758 505 57933308 952 319251039 583 195936673 23 789081072 877 660178547 354 410204034 187 511113210 125 147908233 311 221179329 904 948487751 278 965353309 997 117123021 867 648760670 392 831845162 557 978674867 641 218105047 791 425892017 909 604767370 35 667417150 154 539209416 920 412760895 323 202360649 321 25046841 332 713738876 248 517675511 166 301126308 905 261615886 233 792743619 929 277969126 450 416683635 309 194656128 46 773937449 81 521494413 22 496474508 711 110528794 535 380232757 66 324672477 182 6764480 648 564100565 445 480285922 861 161626846 845 731117711 560 521487311 286 815383691 186 476192585 268 999572758 99 517878505 503 33917071 112 166371667 925 987739577 851 989061452 987 107823124 913 640811606 744 125978631 78 281733903 403 394836655 108 106269821 827 445847713 633 440893928 730 971095049 755 432286098 276 407334701 900 519107894 388 223653846 235 789810814 46 392720423 456 427116649 768 889027282 47 37894984 877 711785373 941 969468772 111 566587486 889 267384126 123 397012811 634 479370949 49 445489406 347 732339470 797 387398554 992 893688399 137 12802473 85 928811123 749 809962184 252 107047564 109 476017930 542 341527454 68 119058148 14 743411880 915 311433648 966 376618891 765 349362729 657 204924737 803 439970615 620 504200962 662 521392644 79 271217674 124 351319395 491 410168767 127 109962110 472 854870979 959 935473116 923 453679350 919 882805564 223 11789437 793 796071393 316 432497418 78 514860243 808 908295457 301 864615588 779 742158453 970 431320527 493 473661096 640 578682005 347 838040174 488 621594710 517 114013371 144 822461015 853 358014719 398 69342178 485 728634409 633 145794659 441 369004096 54 614257349 948 155354349 235 119444453 741 439811104 795 808070867 436 424625965 668 238534971 9 118778663 414 2976626 38 461258826 676 247335203 869 711878985 647 83223243 709 795026022 736 985379248 189 646414041 21 48568532 350 610312553 526 122935254 863 553805230 941 181545337 676 37337674 286 255760566 283 316443600 136 214911565 257 224747696 670 179046817 958 681696895 437 183692726 489 207280946 663 71405639 419 394001844 935 658706938 652 993947223 874 933777218 446 359996228 401 104985214 734 936328856 108 287318082 925 591223199 336 167769878 639 414802963 412 902463717 329 380679994 914 947487835 111 931167941 313 595943313 570 248354746 97 86773522 45 844288093 759 454064423 338 98221657 427 495298902 102 290532044 117 340553124 439 965766518 402 155884239 207 859031227 568 883016859 186 626865648 41 152119496 106 54923183 267 357769062 299 573769175 128 379907762 328 178195514 38 45641878 176 334598485 27 694465967 355 161953782 658 591837909 268 298329863 223 838541222 751 205996298 137 744630282 603 472935529 145 221752923 558 433983118 425 194497883 771 720295400 248 913361606 782 960251588 412 52297806 49 475652571 949 299326520 726 253927545 321 570479345 944 959019803 906 876618737 560 525121799 972 714200807 263 706146538 131 452043744 460 504667511 171 162166276 760 353721593 200 516963878 236 532923831 381 809585481 155 134064171 183 72197480 130 796917639 481 843186585 879 49933791 605 831473639 845 598045541 236 371038296 544 886573614 242 947142972 834 576237121 477 284058046 422 927461160 520 800479581 323 779202207 285 600130166 229 329732543 838 810314761 750 124482308 66 743400688 1 523298634 5 710261781 366 608297891 710 103320644 402 943077263 840 255222637 252 107254137 806 683500224 253 375474072 279 678548035 551 437911012 477 67665255 200 916217449 97 731776360 667 306146699 651 6205335 504 213612980 784 410408464 999 164505815 176 73893274 11 295659211 516 632971751 955 775643366 715 18935954 556 957281465 345 468122879 319 382816045 785 246303393 359 87141117 807 845882773 742 743871367 185 591340901 26 791186373 488 136899258 151 130999845 351 741276095 384 552788529 589 166659022 327 951060246 816 571305265 745 516282930 286 564005182 803 534528449 761 755513369 24 475100223 147 929027137 218 730783554 524 269630366 445 25262108 721 295743010 705 389675062 941 295639284 137 931757127 164 811963163 12 272555885 778 648541873 430 581605962 875 36408771 7 247170339 852 2209071 395 195098320 853 418071256 327 193355330 237 378331631 9 340410907 602 74270138 588 963291424 41 102770490 283 653294382 396 784519314 237 793374946 732 185788946 122 810895405 331 741547857 167 625878960 467 910387 255 679685602 403 540081008 137 738415981 523 888338883 705 577659106 629 144787367 425 89075804 471 36745558 394 604274011 788 212600298 812 290161183 202 969881054 904 267676232 370 472502176 400 182019514 555 437133322 506 844209357 444 390836782 954 637114188 76 573189086 24 880573248 235 286908160 260 36532182 639 820257125 102 512387118 163 107431713 43 581230913 374 622101954 126 713561747 884 619839659 654 322237817 330 686402834 355 90972165 38 18799401 134 702117275 387 581522508 283 149168915 47 636952274 159 205984303 41 474487623 339 933701636 992 843394058 965 181353413 642 509355430 752 180259871 663 607172648 426 831840934 403 103666782 144 632579911 622 702643680 414 322987182 649 245014999 576 976798305 320 864055209 671 258169891 371 464576987 719 767136330 610 309771266 978 27806910 710 483663554 251 755205395 504 646468935 971 986597753 875 955428335 910 438033815 801 615030887 639 392551874 257 38671579 67 770151436 144 401666721 506 156799593 866 712571136 574 237249398 856 64969400 182 355569030 539 262202453 50 445609093 609 894157158 5 24388735 634 179856729 675 697271467 443 59691960 990 339765906 32 958837071 325 906062638 5 793719582 362 613170291 580 815154943 34 735068568 435 994617470 593 519695777 416 682792280 448 252519130 759 969365202 140 635375333 999 228253382 719 731306899 689 530756471 25 551779034 761 707434571 828 671620469 833 479478050 761 62213902 619 781587345 861 541667392 731 652746397 970 760773483 561 765898641 743 67832777 229 808137328 23 603439622 955 484905841 889 992666239 270 139068678 886 991717531 261 586360160 372 48411888 431 316915708 970 200251841 458 377460894 833 469449082 411 830410572 596 286583682 418 755065479 81 665379649 294 227172833 522 513631230 21 691758129 209 780596394 950 851702995 609 989043688 381 164981361 719 354480078 310 468780073 722 460080843 64 325644115 544 524360073 55 729545636 735 826157137 623 294510088 895 469105279 66 547709886 172 348289059 239 2434982 822 214773799 256 652391085 563 318878968 269 407560364 861 498928856 993 900849651 393 348479260 713 808186763 87 534240072 180 464757286 325 125091029 723 306129817 281 687234056 494 965551201 981 849272523 209 256816475 952 730356768 894 908106448 541 625693098 890 198712053 388 557928799 742 175198526 796 504651869 905 202887870 219 664021676 723 442475749 572 502615374 961 113910027 859 796831515 108 626858629 217 112878607 639 573839599 665 54040898 290 5554562 653 935914237 866 762354669 898 155467972 84 162601621 872 204761944 517 652122538 468 113168057 770 446662820 337 203595228 304 532437909 120 879888330 218 909999766 461 244022030 712 194077431 565 831880487 253 593671743 706 616908665 1000 237565087 197 783925753 654 727072010 842 952871382 246 995003412 121 130371680 560 399899688 606 11223639 227 15943077 962 632084865 303 285723024 338 700312700 324 164968156 110 240993188 364 650029615 758 683137441 849 230690869 512 520421506 864 602559176 588 761953505 765 611477064 440 371011180 92 328897059 83 836579167 975 288358303 658 864646915 477 888055329 216 210578065 836 456784993 399 76315358 372 720981819 431 840536534 87 508059448 714 678378984 39 718334651 301 887871003 34 166338027 729 367042932 643 181786681 69 488795499 473 64407363 728 390834561 305 185217654 959 221898042 109 632070104 903 771490422 147 608243085 202 76012000 364 409385294 924 29318366 26 636640214 221 423674706 502 434923915 883 675705034 569 638292945 76 485749649 688 242021393 540 619879409 325 263904179 239 797187541 458 991343175 867 845649346 272 130249453 568 194473821 36 32600402 936 143147317 89 79418408 354 876589058 453 362745077 86 587772029 6 671824538 716 608281918 681 342888131 744 302599658 326 886100197 163 198389498 83 635418981 993 149616785 514 679032503 249 891807057 229 265358744 162 112474792 844 811301642 221 396178981 576 608486635 144 339555067 382 322584084 895 462078686 900 535676527 665 13184315 747 349656273 21 533324874 37 395531272 974 191569739 509 867378379 548 861901397 599 457887745 817 547513249 620 624839259 99 674847401 154 148697327 380 202885533 113 859335088 896 968210822 136 207523930 146 499664241 558 139439823 64 328882214 744 755961173 229 133722210 864 246484040 864 56509095 107 348096708 902 914424310 234 558286253 433 309928832 257 971237006 111 452446343 627 832415321 372 894502031 484 672017855 617 137831855 360 637104896 71 196942928 503 285176465 876 225911309 780 601740733 672 309193094 859 857947384 673 124935669 243 677125202 251 774395724 517 469919225 67 120749534 506 20741528 552 762865161 491 412197675 414 379219663 493 268878904 534 997290326 947 366126758 594 169010640 463 950769055 782 795776634 990 704297970 434 324338004 708 624559945 518 969701109 944 346661392 800 792537016 615 67251696 491 193524981 414 720392234 665 301879141 614 887281033 970 264167816 635 492537014 677 45832807 748 558064906 651 865343687 14 909991754 995 889546376 817 901330185 959 302497767 86 203516360 882 985408340 782 69805737 173 274419554 736 840572741 357 498279001 828 393308436 950 987548733 525 506847895 945 909182618 720 21605186 815 126345423 928 602895277 910 178233209 31 595101052 985 654337370 164 682584357 581 180290573 825 530573172 975 368957364 164 199552808 89 372392424 333 743127367 652 202346353 445 435521799 41 980133993 765 147221020 725 123080637 6 941246740 262 664500219 919 326248172 812 737140296 397 462707703 471 925997977 172 630228200 920 379265061 475 72934140 539 543708731 685 964294449 439 702541572 774 289200892 215 206646563 406 730931199 853 609573905 656 22268123 440 314466458 279 558405400 64 550481900 207 817895961 278 46694771 648 39600239 151 768483102 422 908730424 148 539702189 282 797118439 245 567227965 743 723379969 746 768446032 387 58264896 651 614478755 319 701049777 274 18135215 183 797441828 923 674496513 533 581857147 995 543312050 39 364239781 153 603732728 74 192328139 471 227456418 667 924883350 708 580569860 536 30666796 787 960938553 341 493213420 792 776990210 404 654287394 375 756687657 318 950453060 378 441343225 702 866037561 803 723717076 805 998297304 116 785353927 76 885165696 199 902790190 903 255739502 926 988676380 292 190135701 42 636556745 900 402234042 958 629443338 610 624458538 377 436244841 845 453762589 893 91890417 912 488285854 770 142816673 592 335136264 792 437501358 311 676900852 638 404872797 567 617977193 910 757630437 134 803509135 449 14382419 410 921385892 918 637114035 75 273475927 851 911288186 994 850616428 728 397594623 429 352043340 248 905085168 132 576464879 163 893511648 993 140636876 758 347641075 92 628490218 17 799213254 557 621323195 809 72144753 835 48735900 355 946340274 118 211972875 356 235611734 994 849964501 237 278493377 361 797153387 378 156731284 295 252089158 595 223094372 135 719826339 977 59115901 416 432553287 869 793616667 320 159984225 910 562925672 739 386658669 990 652730354 670 623151808 363 534212825 3 166103246 242 40657252 766 384181231 319 369351666 674 990904139 872 804218748 270 666011159 416 227895940 2 522478686 436 417732714 672 362245603 576 552958337 155 651300817 305 678576089 778 180123458 387 690847700 51 216362663 674 276458239 740 21396522 402 366271200 413 323406634 290 340733456 287 626208958 449 607871106 496 399013530 45 787562116 692 268467223 877 145219333 289 219550092 523 20120099 141 762158 470 741530643 163 588047903 840 730118540 206 412441826 623 169915085 470 563123145 104 140518441 467 426918249 861 536177702 812 773935398 813 985713073 690 812161125 481 392044230 455 606823863 716 457826599 790 249698651 479 554006176 671 518845834 837 210647536 123 978771298 115 78138666 655 571414943 189 10203415 809 767313914 486 132966331 829 696642646 375 919727863 478 87823012 257 23146050 729 128101931 461 601762428 693 941859115 814 876094838 113 195247258 83 177250792 205 715591221 468 240679224 637 250488273 196 26915427 220 766894791 429 735872946 568 307094346 456 144449072 336 231776720 918 103073389 592 213188740 225 851588867 33 691193768 560 446973474 906 508186688 409 949243589 520 654731163 746 307903546 394 710746270 71 671003914 45 134250042 911 565515186 744 322394351 223 904302542 459 975373538 994 399757876 313 403543945 835 186999628 795 713422357 713 227253402 561 953633910 632 354362902 896 920225096 724 734319365 92 485098724 801 543366703 520 326908165 517 707037128 453 183709236 805 470357934 654 89345995 607 561719544 525 803393224 140 443686342 757 201450150 747 440757442 952 641854629 691 812166685 257 98045037 840 317509465 965 752593649 459 570280564 283 101341929 12 604838275 325 966816427 243 845048871 111 15995071 129 493631516 270 883741944 748 692926018 449 691575365 686 413363413 400 747438386 619 444175451 681 325148719 323 716277595 138 574391564 503 387354140 8 79183738 360 723659332 18 426733582 969 624971272 267 388120283 461 349643222 914 234460778 93 166987009 119 671047034 480 274168989 616 878705120 436 233318967 911 625065832 789 383355625 981 72488193 498 822807218 267 146484354 396 530650763 179 82652288 383 311380928 498 109941158 157 189956748 769 474729335 650 282514556 309 597467771 872 518687154 689 988125700 544 833090975 278 645982603 414 938216590 131 574261424 714 632342829 341 765078704 282 385355134 729 110891679 392 591415605 695 303533062 378 636149018 340 536895111 830 34850703 526 745934887 701 700640988 394 178810290 348 865643614 950 196675323 253 518591680 388 827611294 797 722775954 116 378124443 565 127981989 200 291048711 217 720889990 1000 11140255 411 247134992 99 438931402 143 69960577 401 854519504 381 651883694 17 380366154 38 850670099 856 999506843 604 173929300 411 90392894 0 347738464 252 874571811 539 640068323 215 244155034 970 105356234 452 342435780 330 276492060 317 829378607 237 409914867 480 212846004 518 224393222 49 904988331 561 492316869 290 772476845 247 640654636 30 310263214 904 635690469 936 755213895 938 652511454 834 552446719 277 227967292 916 437546886 429 601733883 394 387065282 117 547515669 471 789937478 938 437490068 75 34508267 803 264258916 196 471962531 478 258083878 815 281658488 863 286466826 714 185266506 994 588866965 761 387249877 332 284742174 102 41780418 445 405751974 60 815065761 698 215904849 35 32844397 693 157536697 490 786418509 351 886165335 943 796703799 673 608776278 16 521042717 615 700482702 725 116332932 621 738731700 3 267434197 902 734676748 806 157861243 644 909799252 361 598045218 655 447771465 237 44789077 474 93408396 216 4671232 594 772382647 982 496916549 558 82850683 909 121011703 743 571608756 937 292470273 595 76927784 552 747244403 571 905178750 698 277051114 724 464919876 19 718667612 836 531546977 10 22083048 800 53911206 551 171415437 659 188606970 563 225818147 320 371912130 932 544746563 963 643064626 930 55112925 542 944155611 835 166208966 602 126485910 282 645196771 653 494754804 960 464766275 756 887390905 767 322803453 383 64522141 453 624303929 266 744160662 859 950184339 80 569581617 53 449342838 591 921964249 438 332165757 429 352530717 162 373689247 226 625312504 634 929377391 330 183011139 223 910934966 983 946883189 897 317107427 144 147734352 687 24210724 621 736435607 729 587889371 804 19747030 755 262885782 135 197424534 725 626402207 199 378098618 257 303908136 727 839581017 740 468248995 427 558936694 458 819512515 125 100498883 135 165175728 859 955473746 484 879769439 375 598254655 92 971277835 865 115197021 551 939017368 906 681045025 676 388973440 281 12725085 24 570021078 530 665296436 285 307190215 848 983441725 56 45144571 267 540593076 815 736314730 262 123975364 743 105214296 579 878642001 773 666635831 311 161011331 422 286870637 582 271484607 750 847557606 903 236618363 301 794587101 975 728181790 990 663341795 96 848016197 950 625965868 332 760491489 785 307748276 237 443685725 133 680727905 700 550345849 456 396359017 520 107147219 617 903711033 808 731475842 394 282925702 746 292739621 118 726488907 458 698352705 829 137367953 100 711007434 27 504297912 754 81224575 953 658554371 433 757557395 408 949019174 906 866734702 366 588295131 544 918277023 750 220299662 937 673732771 383 277886166 811 726984341 409 937694361 255 124219890 23 586003931 387 696495482 186 617121642 153 197627432 886 895539956 961 358734409 749 720314995 656 94490987 246 622739375 120 290528136 831 472966558 471 343709784 820 679094635 599 951926799 82 338902960 721 885700455 691 155618611 940 986708389 310 354442158 158 343499342 785 631493491 229 934556987 447 374772894 572 763295057 297 141723192 808 917371290 726 44267827 445 636685470 697 589591036 988 832088138 340 778224882 557 376247523 469 276021775 888 298919003 719 570481893 260 737676534 197 446472485 858 830166171 29 393966566 331 180835891 347 118269624 568 986619896 110 519991990 586 225274113 843 124252497 634 573432236 4 479987897 321 375806720 601 28221022 416 229472891 366 868893597 846 353794913 949 404977984 710 386587832 864 160609971 543 919717594 639 893451955 333 563728659 556 595122716 855 94956122 885 523074749 205 138579111 516 45893802 688 139664924 285 546902227 917 791677391 195 166043835 358 469280090 518 783087528 420 599143487 945 666938985 512 210459773 680 489971814 901 545790371 589 223897970 459 143495644 421 296768584 690 387904282 393 722049329 460 381536319 718 921060740 235 649139322 356 723432865 258 953745277 163 29751528 911 599134774 526 659848533 10 366716164 944 601362743 260 130935321 961 693015422 938 274573192 660 905506849 881 795534585 779 522381816 760 560846451 612 353814969 736 782538228 167 306206361 857 825099525 634 971356304 615 638721495 170 559829581 447 115336530 831 554329982 663 957563330 289 390003962 734 911058604 847 279207023 765 632337727 741 897446435 775 781125402 745 10916 560 935138469 54 734000453 305 170680137 100 846205949 133 464797781 638 640408609 218 969288794 543 703046835 386 400955406 290 904322691 161 498223395 159 152590916 551 392739616 42 582516084 281 789960288 598 205880311 65 841199188 18 844729514 270 343814751 130 762104082 59 109822200 84 725216585 695 869754588 954 959315169 479 911318590 860 462722939 464 929199838 413 507776345 607 386008788 151 340718824 202 142279549 258 332463270 190 444474701 433 272659712 618 184243619 150 488964467 1 819163186 93 97411334 679 661498481 29 313915373 326 664472676 334 515423176 934 557847829 648 348197681 161 312837341 888 909704719 327 857012740 260 77029227 594 49750292 458 268926103 821 943430495 158 132656542 619 230479020 2 27953498 613 96904224 866 220806652 517 508938180 797 610408872 315 143467244 610 727336167 766 251561256 975 287344732 679 465774469 533 67133793 439 366001839 381 753754384 530 86482884 37 421560950 512 897931465 407 906639584 685 599339027 392 236884193 365 17223258 886 355605108 472 421925670 770 298811875 990 959190550 115 652550003 5 652859236 560 92747220 426 541514782 237 986914390 802 8366386 880 478667279 725 535981037 514 584184154 947 378119637 996 340620608 140 452999628 162 924162172 567 513931216 428 54912793 509 853306336 749 980156290 208 797807390 57 996647152 827 216210332 207 977813341 261 82480126 653 713434083 384 132609199 732 549218126 984 945941903 920 334069283 559 889364978 51 538654737 658 6644855 115 132876760 648 393801286 341 123189876 405 492826878 148 383058599 965 591580240 502 232144084 276 528305366 339 309511897 415 66272301 253 132252024 123 583022089 64 459138265 260 447926565 867 599046430 304 374462756 246 358453693 674 624664121 153 992716770 236 706579346 228 256534455 25 170005315 472 458138298 932 441896317 184 974144267 284 990913296 993 567839293 767 265115874 178 871691438 812 695373338 7 538963635 394 653957324 197 888095256 587 853313850 502 848951972 69 169218077 602 653837046 429 839132808 705 682037874 314 628698583 198 321308598 730 337016121 689 175425320 334 646842263 997 223420973 610 143452538 314 283557990 976 675655254 660 988321748 400 189591000 10 228334737 63 184151422 571 38352915 80 481208920 896 375507000 434 144599959 209 515204271 308 684955976 61 496752401 472 704210365 793 284504321 469 165494373 845 34985376 944 874938703 422 203735040 499 363864798 315 914395685 534 403413189 832 61547362 885 77064128 137 831995487 223 396427618 277 918624538 421 847796545 488 957459315 890 843831071 883 655783719 689 248189872 885 111471906 84 859986037 950 275018869 694 150652113 486 130723760 805 494267627 726 484444039 991 452353227 672 793635529 873 94455968 594 567269756 719 236708066 259 577696926 944 247277159 291 855912470 696 401388039 27 499606517 920 884568874 678 799352662 575 494009899 975 873077827 353 219077802 174 784816523 368 66456320 112 475757230 42 369904871 112 581886504 744 598683015 304 574720272 107 143596835 959 634253802 642 227908428 626 296969166 138 485675555 934 533089162 886 510323101 604 835809969 938 528040327 954 884710033 27 37693947 356 648773881 808 800123675 588 77058135 356 911870086 729 574453018 148 726125076 147 651675967 503 432207678 880 750920326 560 509158988 19 493346181 885 898999497 163 411585146 437 783175524 207 879941463 411 139389640 3 396609463 628 602267131 411 317022480 745 30763284 192 233575930 359 156728146 367 72774268 528 245711356 623 306277935 569 759123449 375 905356333 6 197382608 738 788160421 78 587769046 447 670726106 0 499024819 511 211682745 62 773232613 310 85611121 360 342461398 530 223317212 298 407863795 535 912388511 96 664000263 336 555487163 76 626766491 619 535242071 934 850829668 464 843947464 228 445364641 989 998781598 128 77777054 335 955451738 393 658435345 133 583501520 442 304353184 95 732408502 108 417574755 138 978364318 425 831989895 114 224270538 306 57900999 57 628196328 738 167055903 16 306479055 247 376004896 350 934766666 308 888113989 591 489922802 80 910501141 341 230782020 56 842824216 119 474157222 252 650923353 228 652915086 568 110197625 817 890866539 848 248292192 454 812558714 280 344005883 150 14638368 58 450524044 673 69383743 603 90975820 546 287107315 589 814598923 102 643143595 77 786502594 403 131417077 86 277522417 984 19382373 409 389926817 2 654939371 372 643687494 374 200145062 270 55972551 227 110006313 466 532313488 508 982948995 562 863242409 203 497730000 500 225515274 72 191442297 968 777547211 983 905086403 168 699025115 503 729265987 128 802221890 133 637669122 672 885715729 757 908548466 434 926587004 992 839314205 157 419884852 235 418190873 347 581963908 21 116866184 665 784762837 616 862198337 924 534572719 849 574480019 62 96784684 604 71474194 697 70339795 87 469407173 822 643362160 903 162845691 290 295141793 991 348252449 526 9581804 585 421119344 25 179875551 811 741617800 371 204792734 878 125714775 923 508813764 249 837004062 533 560813908 32 641187760 74 512720707 312 552318194 695 800674323 2 678988092 215 782753271 178 586869622 612 398339586 110 560067626 978 296226299 442 314475696 491 264548691 753 720967198 257 241373655 224 588834266 264 451202177 30 537744269 473 913320235 584 819179835 585 136929452 285 616305385 968 255421874 394 2339793 313 540496407 420 342565618 337 250387397 449 59723386 851 312516055 999 707225223 952 407932186 855 495326156 210 201049422 327 700426138 172 589407785 755 573963139 150 487117209 415 466202917 638 580426518 720 820576890 165 873021595 702 114665863 608 993379418 574 481072869 82 666614291 97 757069001 337 288159170 524 315549895 154 250018466 845 24580007 552 602657190 69 19871903 586 967703224 254 637589061 403 316072087 209 621745836 595 310711150 169 470202557 948 491960496 705 590671698 212 100203056 993 228048690 994 439794681 666 330665122 401 70934756 103 492955654 905 330165418 811 659558266 267 352281044 259 328023242 964 808612965 17 306122476 253 401217292 4 996292897 527 783337879 75 310875990 370 461428924 428 561174253 603 48726786 489 923364395 980 308148758 835 892746411 667 520706380 651 404560936 60 308605887 597 391436599 909 377036532 970 901169463 680 180010437 928 500612214 148 13005129 933 363761087 966 812821885 356 520934689 495 217993654 945 829383071 75 548239094 321 136715908 59 786183917 895 260996134 91 317595823 461 388653133 643 293186902 158 369609960 546 144035341 679 169394434 475 519484792 916 621134310 99 181229659 899 997155229 345 424418812 38 759932139 636 399710753 440 456609619 389 650830038 147 154424453 972 434301408 809 259897875 547 995472841 863 31172215 117 315829077 817 743440362 507 374835003 757 717168605 547 569237799 40 697382721 706 380856492 750 491609853 342 817859842 547 714123136 294 128864945 484 531527021 331 680750748 155 73093558 186 211709909 343 298210338 528 734292722 475 829217367 99 323151613 957 229469215 400 394211651 667 588978661 835 594321611 654 266531865 160 648914515 145 547653868 440 103638824 618 684877157 210 706229063 225 131891985 334 923258274 644 629213243 397 3729918 188 933150224 908 453667059 522 329383116 757 41010389 741 351479362 154 231206433 908 742214432 176 372029332 516 206464443 583 322000744 972 347685261 870 894612968 450 29603517 79 398169587 773 124871630 132 873946344 73 65242656 881 710271361 762 100819816 442 401719949 498 693835622 742 352266876 342 432713565 226 480768807 248 218883696 283 366523089 249 905881357 54 99225710 1000 296876191 549 712000176 761 223471678 397 808234590 307 851679400 894 90157609 5 283453322 348 229707279 89 320124348 223 491228594 869 403758479 315 651277437 411 860992434 655 263206065 787 604707177 110 265752810 448 329658310 895 692542294 363 892458849 651 213800215 858 794159248 521 441197264 803 862275808 656 13991265 636 967871616 410 758487266 130 868698507 336 382212090 604 469983816 357 48122111 496 8808876 634 60108284 912 628310546 687 474650304 252 20195279 93 452002324 333 89907067 938 974470331 124 345008418 396 532696270 962 825652554 356 975645834 278 769137874 609 997249653 684 940473041 475 871655917 158 912536656 877 653667585 199 601835757 933 442258522 574 502768652 615 258494157 715 937227771 176 991607168 151 476115386 690 748445182 206 329176037 68 458884843 611 703149198 987 582093557 9 783012749 240 293764418 765 343737981 756 297082977 566 922428064 655 647404020 179 785196124 644 997555093 405 118324653 738 65392081 593 377722181 884 413603993 831 125432875 204 750594364 958 159998822 923 386373432 467 248316052 184 201740257 917 934215123 633 314347147 364 752508617 585 31010455 461 344008912 754 451439827 928 170842830 662 856779604 548 854603905 932 83101817 503 438369938 883 400970800 101 988710349 743 343175055 159 30064941 820 170961349 990 389842767 771 582762468 382 294101224 587 826915870 401 990455312 613 288427538 130 82664928 755 41492416 458 862579077 469 770912367 603 719025443 251 186864122 907 759064966 518 954846648 488 526868073 301 168175736 813 213502945 92 257156511 73 194615038 139 287882868 939 217572460 91 293890945 363 336095362 140 735081532 67 665949278 570 37095842 365 84398787 509 186092331 421 743167280 405 740145580 606 608290554 37 333563583 818 917557980 6 489206542 398 280615815 509 875083444 873 444348658 790 232446270 578 285680588 458 24749728 653 276622132 277 806398330 827 480156964 664 941053154 169 433739332 292 332998828 643 380576099 384 718187397 349 96762810 775 178095011 798 73233433 682 735495654 962 745069680 526 311384481 287 279261656 840 559867244 386 127958406 56 949286194 638 585904135 184 498835561 686 97035580 632 319229381 113 998176121 902 763340278 12 799720913 91 997034498 67 742627528 461 199558642 855 598048320 117 765826373 44 53689357 145 382264531 838 875422585 33 318937020 401 30233568 171 746778751 837 192692995 58 413066429 810 220212546 277 869576930 881 600050904 296 23097546 678 685489673 16 710322049 442 564525234 471 600368861 532 314455105 314 282198984 655 634751281 814 240361504 684 289097898 776 880848481 811 828370577 434 330297215 526 722125770 730 836024262 449 733959273 62 466935299 976 130783669 768 507940453 993 19349968 546 141628830 301 637751239 737 443680088 495 185459352 909 103246507 65 278924868 32 522440654 961 628133007 45 31714906 376 151896098 800 506020162 984 6639446 914 854653365 412 755528737 80 439652043 511 96287408 217 483026675 786 322833357 670 990677403 389 116431068 989 52644 831 206829553 307 645437194 610 92377089 140 436651069 841 866879773 176 21654299 708 69678365 585 885180625 705 922296791 270 948196261 304 722811929 48 48554547 762 363302198 401 407409836 413 331110849 690 938686069 683 307499000 595 425164638 338 476089429 62 404979893 720 711280808 403 961014996 98 728265041 670 339230532 337 91119742 815 559571634 820 316127597 11 192526914 837 188385268 665 156083871 841 531944409 837 546662246 387 734781448 420 962333053 306 689847060 40 276360664 187 823737929 788 542582390 584 145906662 475 122002445 875 826263374 186 444859078 151 639982837 892 158076244 578 885875311 149 659541296 819 34829033 458 775867217 549 918930862 12 525910488 560 611646698 31 305307531 429 262649760 205 502676147 991 269915684 662 485310897 184 139897483 999 575120442 443 991670668 368 51903889 475 640835797 343 801618546 84 268235826 148 168612623 626 61980236 91 586088955 485 923873346 717 107947035 216 586055269 201 374530568 841 484752662 825 237337000 806 400444485 513 952678917 466 724147561 980 467332109 986 475822408 757 442551119 481 30147898 607 51293427 313 815430874 73 421433826 344 364728519 548 321684873 245 176056757 118 967266019 945 128934365 113 38045573 551 447941711 416 981745464 134 322057032 7 681465436 668 616296863 128 978112828 341 632299461 327 237570410 594 70444441 270 799202187 73 875981034 320 579838020 461 29777100 430 872825958 249 956343846 953 83853743 389 672423226 495 539928758 77 316875083 80 366211699 399 650361393 182 837166220 43 338563039 535 480712883 753 652080253 632 236940164 194 650928384 464 94561593 875 755371010 4 94867812 687 181827960 961 591407095 997 198911784 543 896143237 93 990104485 562 682921230 497 346285021 348 947856547 607 710954509 119 507143447 945 590478302 375 276426734 153 232364921 511 369606654 209 845654620 15 260621088 976 135549228 460 193574339 94 17830493 218 175600339 583 100862726 842 40391942 46 466299552 471 511798687 482 866595528 497 471952766 761 691364915 261 324574339 589 963529974 407 551620501 196 546853322 933 978755806 992 588854195 349 891538449 486 47569807 718 309268345 85 644225256 940 201548056 146 599840924 470 519010627 831 66970768 67 152895246 893 811398012 391 654780305 730 867745714 533 111773890 796 827686439 33 169236310 366 536529381 751 893780242 778 765959969 774 78159967 465 555906876 416 378971139 454 842118435 78 660761134 597 750697079 712 728799572 632 712039856 95 527886362 302 925024251 196 954752886 504 678216972 195 646202552 202 119374647 143 108810937 329 390819872 791 789899970 267 574568449 816 627210393 431 128660097 902 77463956 421 416401040 586 994719023 406 215896974 888 851899147 91 476411399 185 857819285 849 896953753 411 81837299 583 802243419 780 481570291 79 131086088 190 987355299 322 224677197 227 270845836 778 544492539 26 733460061 392 534143036 216 809246443 980 327119795 839 80473373 388 115261472 484 453819000 656 855534461 443 29504178 561 896568204 169 898412418 320 492047032 771 251901076 426 722984380 204 825351676 129 359583212 618 946615673 667 278855455 536 479528686 339 365028338 872 971547974 626 149798673 743 327113625 713 532297733 833 289792771 417 562635410 42 745322059 464 709635969 872 678825623 132 257059546 167 333067131 90 357461108 277 204669955 444 788098652 63 312932157 752 519551007 397 893774231 334 266258073 546 953413091 911 992386881 391 502703504 800 701239401 163 353885547 613 357592551 661 757082775 345 926523352 805 391472047 773 51905224 71 34773346 154 895852095 423 674146534 200 311683924 661 328943912 940 344169238 801 169844474 618 606311135 28 473223670 822 999968436 63 49238830 501 23442810 693 870571708 99 47509009 561 19622193 356 926263643 683 894885770 894 850419639 78 853697568 187 332602551 416 862108166 477 949152673 38 144622566 201 773796206 293 131262464 934 710656406 755 91145998 262 945203701 884 635236947 913 698905816 439 194808208 348 856970368 350 785464852 642 560574983 675 921910931 275 402893956 749 131850592 456 903951249 5 721696032 389 586588905 286 778283434 626 11777146 927 219886349 794 731942232 947 178701775 930 631206385 310 864099419 920 581937093 853 333568656 564 695237943 661 575114139 203 108624878 481 338783280 124 549546005 662 352842994 644 476921067 59 879311201 52 947263434 809 840961518 614 385318475 422 942409818 141 359486857 642 451728579 339 843213132 976 881141556 665 593963428 388 400153708 800 950873103 569 491694158 75 557387112 924 168233463 863 26086986 121 924264707 373 355058146 411 939638796 826 8407408 430 516965753 107 238492895 470 745591553 695 9502079 195 713797463 632 977060165 970 205483062 84 434104013 344 826803469 36 851207344 358 906642684 467 231222571 135 671652446 717 956176728 974 201203392 625 357656390 867 730301532 481 209908351 164 219144984 571 148089157 433 401053030 718 276830530 796 718495024 209 195854593 191 72151021 18 112028508 835 408045499 875 280395362 267 872795934 359 833638442 800 911626886 175 789302831 510 552667483 12 309289519 130 299881860 808 225130941 749 230429507 902 936263061 761 972804850 85 716782097 160 894678664 362 25276953 656 563172017 179 5451589 654 845109914 143 850407905 833 943046679 651 491513108 144 196602348 727 136306228 579 129054671 150 18971046 991 968049466 800 245562102 145 939371999 833 452885361 2 987737280 715 654838780 891 159348513 562 685401138 487 662706619 710 240586982 682 840316845 687 290450053 171 440757135 397 550775184 404 34038969 431 4121232 45 987851964 732 377409873 429 756482032 590 145820691 590 81405726 372 524441132 465 509820676 465 544924967 264 799330495 389 760323995 239 955014712 525 593579133 315 126668439 421 149972213 510 407443529 256 515139112 161 767107840 192 504292424 443 921988791 439 895989417 974 204745694 230 335274809 715 420917369 697 606048872 902 370274027 54 406497414 732 229041923 237 908013709 824 5523935 487 866942447 463 366132248 133 106065631 153 475867776 745 666369564 122 745691443 705 58415214 471 368293130 716 502369545 23 428505132 943 248992697 84 727064225 500 752901372 894 280512461 752 381033884 864 915677027 256 166751482 895 295739117 794 510530653 920 245218244 613 659051987 204 516511431 327 416130300 69 340700162 259 328099037 655 426695472 217 542535619 258 686613210 448 300716875 46 676509377 225 329479887 436 706694195 222 328148987 677 464477474 471 197143705 754 677762032 187 570142855 994 323474583 914 470594394 604 37257084 268 107921631 267 773883331 624 626612143 947 738150728 508 335309045 798 231295983 386 388528116 142 595480531 176 146024703 274 623734834 377 989967557 877 247528903 457 883894809 718 586236604 423 576450627 415 658551986 674 979769427 855 173509502 615 39292246 142 322178573 72 630067656 283 983404572 550 905022445 356 144682557 977 750109492 664 851787054 706 77342699 337 17429365 862 13954921 728 94836452 759 686159223 414 988056120 167 102195826 360 584050709 826 665297232 617 646364005 687 714635105 310 692724253 854 60817540 615 624291790 825 337391145 700 751417335 277 552386375 840 747948991 331 105286103 420 667340712 136 990581400 839 249228823 668 622782906 567 422639677 493 828026977 529 754995862 931 385955391 189 585659455 911 495624627 334 43328572 421 345405619 603 30557247 366 69043706 71 162331811 949 655180203 562 244784826 348 639620616 797 342090429 741 476866185 672 599303406 783 968805511 925 684074888 951 674510663 728 768833496 336 257203960 381 77843643 686 433028452 109 587587510 767 889319079 303 448526761 775 891825373 614 835907890 11 675796450 979 273912850 921 643916988 210 988539818 497 927340896 621 547188710 377 12969355 459 410832299 300 464122029 28 395979005 853 645926034 942 11324627 342 350491790 840 643663769 250 521877057 393 589295225 269 87817848 62 550251739 837 361194298 857 756150999 897 112559084 291 941849510 665 963784752 115 451923682 934 541049700 1 269980231 688 475380592 956 971306865 982 689754751 297 370937825 793 185856046 544 109508655 73 859723198 781 453264934 218 337315387 201 760335041 935 633847044 314 415794794 87 79833715 526 233573303 666 151223749 976 126898988 882 182156367 68 908400985 408 951980224 731 544608449 23 971013448 123 308934086 390 826404185 29 513269001 745 354939035 230 649456220 485 240358570 683 764554873 47 881676335 806 205797526 825 402852739 106 286032830 110 366213606 214 779928793 282 380723752 380 655135900 188 685499953 12 216212949 439 338434925 697 936581035 420 685600372 954 112329862 585 485731495 412 156212864 529 899997997 283 589932575 732 170184767 641 783039098 339 290371503 173 775891994 950 66251979 114 706018860 705 557270978 137 603499219 375 821508930 31 693204156 728 146163805 807 13367196 631 293784448 764 564730951 81 40886880 836 626562131 233 423023347 944 137732229 428 241849849 107 625336114 442 952420023 999 904761792 551 579131 406 139037926 960 849132996 608 642804497 217 612096175 315 645175440 619 332669972 7 760164330 138 469685400 567 984614418 477 982550395 18 714562041 324 336494759 132 159093099 2 479411473 669 207679443 712 601501322 177 302722570 365 120653168 159 497754993 811 850534866 500 643812554 917 552028874 267 631762515 737 409439748 721 83583335 21 745293456 598 630065735 100 571661162 161 591685295 617 778041688 604 492625764 784 865546970 238 485060347 311 24597391 686 973566585 525 879132511 533 4557332 848 231169493 116 247454099 298 57244628 514 606418199 10 695582549 24 28582634 44 968326737 73 839955566 463 378994780 483 951215169 750 557437392 718 271805875 310 431924331 879 654083031 739 78432264 637 426826556 764 843789511 991 489607451 708 458430845 169 351742471 246 214915423 671 225729372 700 291212008 805 22375827 103 294240543 166 785534055 547 810882702 631 729553905 669 170929291 696 733944625 769 26313928 995 913070855 745 710136774 283 616475880 517 859021108 470 190791261 946 493152030 14 109890091 133 413530478 896 259144429 75 560157725 367 627375604 614 492601562 679 684722004 679 544006515 901 947270676 917 187409776 918 869580365 344 788496926 916 752751915 306 363732352 89 911035470 779 9506807 3 927799947 137 18651041 42 250925843 691 575308151 417 576756832 258 790467582 170 498132289 278 876339640 347 138774808 998 564210311 871 29327355 38 775316108 746 709667722 660 594846215 467 931540958 25 547898912 74 420367529 344 853461357 770 331780345 764 850713138 911 746582552 458 2612215 755 57963331 47 990588507 335 265071246 882 772900908 923 206413407 121 791072327 115 211279870 282 237227288 960 210712703 169 7377382 360 559301528 191 624861041 364 992092894 292 202858056 693 152832043 530 346442171 48 848830699 562 269225514 853 427106148 44 16502707 261 46135240 64 302878542 788 922471492 526 464637450 819 343117429 249 462748774 641 162834646 573 713534303 687 107843982 787 743681022 820 393428106 901 48930823 245 887493618 107 741413520 995 924767770 594 951818702 580 874116819 723 99006610 624 915176153 136 427567003 932 644443032 32 764394982 74 99228944 485 298946181 629 95826799 462 935821888 679 442047042 465 160579893 262 573261419 980 379172441 310 553769519 902 529365683 154 679486554 258 824511748 450 12628154 420 805318888 240 82200809 160 530097367 26 662763609 887 709364043 959 899727679 790 669782392 27 901286467 57 196926751 244 640744896 368 757761098 271 866949573 719 892068902 919 266961778 27 124844255 343 8037508 461 993603145 38 371790086 43 449200269 670 800858388 504 459973904 542 773842776 640 942135678 741 209458031 39 23147655 810 514900160 208 707341873 152 378152716 480 252400047 674 869146999 701 557494594 834 834865754 559 981730641 76 27001268 119 773802156 974 555256827 122 134892373 696 104350374 297 117337072 491 145070411 451 872846538 746 884136634 219 958436146 582 332873937 651 27084814 283 686533274 398 833065826 177 2812998 849 370565156 418 474613212 797 440491881 246 903638675 375 90738701 794 997929768 345 264821981 45 65840018 169 179872981 328 202087366 778 940096025 658 352714643 67 17153519 21 738568034 870 213670221 830 300842746 715 235342786 227 725163413 883 949012549 4 753366226 555 317915564 713 501852725 49 85267300 150 903736463 26 593834221 822 399146816 218 966396562 988 949391776 730 382792613 890 148610679 629 83485461 531 953022576 994 71548793 872 115831465 654 355905679 426 713987759 743 816260552 846 693519648 27 930302253 218 703066361 804 125057547 643 105448166 362 972393498 336 397845415 807 380420749 584 285126740 739 323062107 592 6318438 435 849019814 266 1691456 614 22380780 715 662749441 818 558019119 837 93327305 418 92913015 409 50098591 116 214173589 357 473778079 243 370924897 17 844454459 822 656556588 771 428044885 100 235641097 483 583899302 703 437921590 508 456648061 995 226129007 691 640644005 601 834538949 291 23960475 408 298425776 723 871625231 959 331870527 565 309799639 878 188236465 734 482614366 201 841874977 721 5039781 612 165372665 677 13173779 590 228092020 210 696087593 564 445195747 737 293009346 790 593552346 148 249154028 711 370148089 199 301972355 433 989551468 99 733926296 730 425048008 680 578742433 637 51167204 998 782322431 85 3751196 587 111178112 692 534055797 267 56212365 887 89252875 130 411838966 856 145112776 787 136003323 545 817292824 349 331848073 801 316347623 564 988463444 522 214665148 450 665716414 845 700818546 246 18134310 443 228169693 218 822588220 994 210778230 357 330428100 700 47884766 946 312681835 600 5375044 137 606185161 227 77612222 92 767989460 431 630366633 206 611471216 375 194221051 641 834255104 910 901513276 258 843201170 817 729647964 442 456555759 572 372560300 37 163259694 365 763305428 286 923030766 166 716022370 343 66199891 468 389479995 201 538352140 972 233873952 728 567282052 149 736163233 309 773128042 835 589107296 751 173193191 851 9681722 556 596693943 159 467822930 73 721727399 642 698132344 304 461022452 115 188580326 531 557118522 787 808896270 597 409918911 604 922970453 65 964319555 717 907845106 227 85915178 819 537422934 393 341261569 276 744001949 783 421027371 429 212877378 196 878987781 432 488973607 115 443311145 412 656024406 173 93690762 133 973305068 357 906141098 940 950328569 326 183857347 720 237664747 358 387872322 568 745623519 492 993524521 1 666384893 386 245094268 175 479346645 204 235267483 475 434942006 216 111540014 883 96526563 634 807184941 836 279216150 689 977989384 501 881954290 875 713985936 954 975482749 52 387594612 999 19791870 996 517519242 869 74717260 296 167148615 853 874703747 981 299371261 358 867839860 966 6204721 142 209988640 851 183331431 491 332408 451 576418044 852 365348879 889 996716483 617 685787422 729 615030858 280 426090725 44 916877150 604 125833776 266 976956863 809 162395728 80 80895624 825 24650926 680 706747072 614 479327526 721 956064055 773 820883134 55 736599131 854 560813067 973 97627928 831 458479184 418 401083992 774 905078519 831 496663926 812 373239949 843 137297506 762 757119979 554 22899021 44 614928512 151 711098974 620 916281017 761 657259612 617 881688040 123 971412505 65 323410529 727 708712526 223 772117465 183 464571454 573 22393180 479 236987695 574 81725552 344 495362577 614 862914390 155 402161928 345 846480856 271 737426206 760 564867510 942 710580837 206 572181092 918 331446695 421 841441706 967 509090857 282 275810975 856 346049885 684 840606773 499 438553385 541 108938835 552 577188811 748 414411722 590 309610434 502 909879840 74 429554526 719 728116935 967 858433776 98 351840051 582 521240996 824 423921151 977 604708553 598 365664611 193 881279126 324 612054705 853 935338540 146 199785670 428 317957343 560 466558176 923 504342785 460 30308321 140 457636919 212 947788751 244 53002428 708 601328625 904 850680895 699 166220803 428 250075790 648 601979279 155 495282465 881 660775032 914 442320811 187 101617251 826 833736700 767 745204503 934 188482669 606 84870255 778 361531511 733 322413316 728 375510894 95 661754647 356 273876717 462 769910676 162 725531821 124 752737497 748 111300205 475 147434546 41 315169116 201 722879997 935 980680261 894 866692751 75 731457313 637 157018 213 923719890 272 97396761 581 497587002 155 377119969 598 717481680 240 466438131 865 63872980 706 590900635 419 355434625 527 312275762 302 896046927 666 753286957 292 612447853 314 424766697 495 296383405 866 965591831 417 492405074 329 227242193 26 943841131 382 266259375 401 905158829 164 840213737 145 897427793 640 161331691 423 916524377 320 741963869 132 539914101 506 523399362 583 90474720 977 735157122 943 891033769 437 74460352 713 537055297 692 787173767 327 196886766 540 899324128 272 31814640 849 92353218 834 822672677 906 12400970 764 562599320 169 330422500 160 330559571 380 860447350 924 592257277 500 197021028 972 755421510 491 244223314 537 860858470 816 132332706 154 737044234 912 979352579 657 792338161 74 87662024 479 142694667 173 368243803 751 274194666 679 618054059 778 464306628 627 50842689 565 400787680 781 963516706 906 356787254 494 434393211 542 833028295 794 497394201 614 551773602 493 43686030 656 952833432 952 207089377 642 352826028 510 85397539 750 60267413 390 646472927 652 517619621 213 183472670 226 207926631 206 849255707 374 557271945 689 193127078 493 447106582 863 491295710 687 268133395 570 859658549 194 920446037 624 151329971 898 883838628 274 745242603 424 203837444 707 298529151 345 971905707 263 195356725 840 614969021 123 308365998 773 458022463 404 383519876 540 528931451 419 729798526 764 979214639 257 153718838 788 20228770 485 991384034 554 998267321 63 106611891 197 947082147 672 932132763 973 444959417 768 475674742 124 563022847 926 95170581 660 37372326 970 485724688 304 895257957 666 23419049 212 828213628 703 28326901 757 118241007 734 521201148 793 152507384 516 986906150 660 112234719 356 544030234 176 634216996 226 291624529 161 107928840 597 124038054 121 324713846 6 54926917 322 10061035 673 909945255 486 238243508 552 960777317 225 556556249 594 677461563 969 289529498 646 125338571 834 494588080 853 66726408 29 675979482 587 435309742 365 184830599 452 897041818 894 389792817 485 164970196 327 374192390 109 447265395 979 62796277 607 843445419 539 958404767 661 527631117 220 209338788 272 316893499 83 857384837 155 789071055 948 611876083 766 938813867 671 520402323 252 206897053 483 675514377 43 936916062 332 645752152 979 254549461 891 251822614 479 942721868 832 111513450 949 517862009 196 889918237 632 548869361 637 970993683 620 817693695 71 912106960 829 587394073 862 423369943 795 235351902 170 604033701 486 671757730 250 417486178 683 81541742 936 231158011 651 537293823 825 112013837 782 40584426 289 573643827 115 154402162 635 407456979 391 808939440 616 800344320 515 110148376 877 533312322 746 184881651 347 964696915 698 624390274 670 962201128 168 285013634 313 246661478 682 300017617 603 978575506 786 210155132 421 926004073 394 116325777 90 96924521 817 221569890 890 591213601 197 621168311 137 691611037 507 340529704 433 744139168 697 626568622 712 625343302 202 940241343 543 996138891 370 206043090 426 707580960 160 401207059 126 25717836 600 41536957 364 375938768 468 651265944 988 159804800 444 266334765 514 53969011 368 729715349 916 367418553 665 209603304 837 895211184 380 30378267 355 382217201 807 922749883 411 842373284 498 795405973 791 908838699 987 115616033 511 602904051 681 61215438 285 560154950 173 232747842 562 739927214 778 208694912 696 122339003 574 167061369 144 924035168 521 557616907 939 124991109 747 816156152 87 329055582 290 995373354 17 6858003 224 462658318 155 867403477 670 181719409 377 633282099 325 404092742 894 254003523 509 481451319 662 998031696 450 527830914 883 989450536 696 931857775 193 413569752 979 772834125 415 895052373 308 951551848 586 370388429 141 787054510 271 463703275 368 527936266 692 69849103 225 60791166 621 327210316 161 190251331 243 103475255 968 92348375 637 267195064 439 754404249 201 101725372 407 157962903 183 256207228 849 557121652 163 305146161 687 355726686 470 161971841 802 528750132 122 910293027 276 420025098 241 826942052 143 90270753 167 280124279 834 235459505 517 91354929 813 136555716 814 183722863 930 93317792 710 120646780 752 315329409 761 268040910 28 650071902 288 750107738 138 393399154 232 368163765 575 200680616 706 773290845 484 342195298 394 139036201 832 137250046 357 661791943 723 682047606 901 240326961 667 28585056 579 796409170 66 771185787 169 987335066 437 722226898 244 715672486 480 493343575 726 617672652 817 588618064 24 878774440 300 126126511 250 994911321 975 798550618 28 278416095 75 954154678 586 585602791 580 535074222 66 520456126 760 237756835 223 496497042 971 946530803 307 673030121 260 71146409 648 129111961 922 920150117 510 687779226 32 525150782 145 162420841 276 675023647 157 720092625 230 851968234 861 456045599 795 477930379 733 95206178 214 489477769 138 952982582 766 841802073 516 552326465 422 429592539 67 755099829 49 876372468 93 426621491 878 333628329 642 992357496 227 529835302 662 977035330 847 120100130 411 354264815 17 394646652 616 296672787 67 441543502 205 65371449 510 445801925 33 156486346 82 567361714 721 143708497 6 922237400 301 606884940 73 180331354 885 129200329 833 277186917 439 149492417 615 653919006 664 404094036 809 110442347 152 630385549 503 380841853 837 990645957 389 230777347 44 263269839 780 240824116 543 747686318 670 974901426 351 116686679 67 495840593 73 371977191 991 571198750 374 499180993 123 914968132 501 360508324 103 448922565 116 698379499 586 718852132 9 292299362 602 23671705 685 780302465 53 266859752 700 30412749 430 295611101 621 580412673 915 86671732 364 135975296 765 403500159 489 590537714 263 698045363 201 737517456 174 562767640 644 190544294 568 722739662 538 827698841 636 117226798 196 826340381 854 832948840 429 860223560 509 158666456 2 307431860 123 692069736 445 356319923 826 400970782 378 876351691 86 862485315 180 776869139 43 221693932 394 774264122 174 969695410 408 596856799 348 358063042 367 759086870 965 169708644 952 102772114 255 233293210 449 377786967 32 521509763 522 807729695 545 244311111 294 631936650 36 982478825 962 605792530 189 624400078 386 569311339 634 260260682 826 698721480 773 833881798 652 841522736 880 637276509 300 773194777 79 423020381 441 495731692 434 107768253 726 250564217 341 606160390 679 198471583 301 773801410 397 38655951 343 815746493 886 317801490 990 455806342 406 836704568 535 785502524 261 949796344 665 935630949 216 477755076 464 97920888 991 437667013 812 885987216 927 530050425 570 806280062 304 511859450 196 276260343 331 774447225 352 180742813 733 563993883 917 369470019 652 192752872 270 752586708 260 469639951 107 918914609 890 731445871 100 240711012 765 400826653 657 696717186 127 458941591 402 182156013 940 98604280 907 989767997 963 647331028 206 208969398 404 149586079 611 737949421 698 377600066 605 894610645 801 89101909 364 747062223 938 285011302 570 934410537 69 106720547 619 141843992 913 299053953 140 217767448 226 780262924 878 228367095 607 237457429 697 79153868 437 484102780 425 171099041 185 641957786 73 608127329 574 707354402 308 980210437 730 581201971 517 721442672 770 938787788 797 684176241 554 884802604 20 263867248 404 158463798 753 152881900 821 97555716 545 533103414 102 578730393 305 184433023 199 857997303 608 889558802 144 126132061 267 667061401 715 254249824 74 205154349 771 833594986 124 857043186 747 63639915 813 163292198 405 171889308 193 83062836 20 477645950 352 611413138 494 980152986 783 880702818 634 946722264 487 498369200 818 544963433 251 103296525 517 352244727 372 261418586 867 984989198 672 948676242 798 752677048 914 176090192 507 254651763 817 777595258 636 299610971 826 725283765 172 549850742 719 749809120 657 206433333 323 218540801 474 258436332 444 58675514 173 94477350 55 466820391 338 34384765 947 654787502 593 38642115 381 51865566 167 377124988 853 671018940 932 528720752 364 536436504 707 541790725 204 363357939 926 487503942 55 141638355 867 771751604 890 736056176 214 226346227 453 312274199 977 47231144 686 672440487 469 336369230 148 552407971 243 588971784 909 708458320 350 599984929 654 294167419 13 904033254 639 28180317 304 734511268 206 330552178 757 53330970 709 478573471 324 459813095 307 729395197 107 238932985 200 841869165 544 320002306 760 953329877 445 133572958 487 887329584 523 734220363 242 207950358 10 226594756 883 682922421 642 104355296 307 751894559 266 7959855 985 489406502 678 341532309 322 320539190 608 242034623 591 765653702 968 376655910 411 517877498 544 903593414 91 475089742 221 175537237 361 362153384 85 38730169 440 799156436 233 209765499 649 333766062 173 440423704 524 174904490 998 511874063 460 555229520 29 311320814 778 957465261 636 220602707 764 948517215 886 108374241 873 283909664 568 568598231 292 237914371 321 990571448 732 702430087 379 157798553 156 263185744 586 558017608 368 288680892 968 173958195 857 708519618 758 581186334 337 423563641 901 917984907 941 224285565 420 238371103 362 73218415 954 292928025 844 504877977 753 350712016 726 599192585 968 826565946 57 279896761 448 680431675 719 850725392 373 492027211 818 297463597 205 744993660 287 852845186 284 815121434 56 683867369 370 860095367 161 76565016 475 93166360 209 153337051 486 337645170 885 452881087 215 209070980 359 679948905 41 454578989 486 703486031 625 131355751 16 830488415 977 472665131 114 87267849 567 260513726 726 941732965 869 978697816 309 644610936 811 802077520 68 467220047 424 92253348 664 134833252 929 657880968 768 857097363 852 274159879 946 538925141 266 833238736 219 876189184 886 745165048 161 810622424 935 901559310 962 53166819 311 679394990 55 182223528 387 515728199 631 242129490 289 982867002 340 530334329 158 623050139 857 802448230 854 252933843 620 780448561 459 659508587 413 203743281 699 859684715 798 655892592 716 860830356 108 638184595 68 6331496 888 992320339 581 699210836 972 464620418 82 998563018 41 70639066 189 647895723 576 19444447 254 972394837 261 613203297 589 827077972 267 443575145 936 463912497 185 946127100 714 847338713 462 841940735 44 750942066 649 249061661 85 890774504 95 731285448 107 429304246 715 163420610 990 382678322 264 41568009 792 176074085 838 277591376 771 901087550 802 870215243 346 112024806 125 627024560 760 737817094 354 698610639 154 595287349 609 212775783 40 71072233 471 317516246 117 255742864 90 75835219 111 707552365 46 343136018 801 602583561 764 786199535 356 777786731 664 246474762 550 424532708 189 941751910 745 839528523 882 732293698 231 163411506 795 150904011 570 606288961 305 661577159 486 150026755 127 44695226 966 926233116 186 314602645 264 697852463 704 131377872 243 27475144 337 564785323 330 503174147 700 436705675 778 664173559 28 296545073 426 245157950 385 307326753 651 439176415 676 473309325 527 18756830 244 85534870 432 833125954 826 729133370 771 812982061 895 266755164 641 417930749 230 109802854 238 264896839 742 504901383 5 271749655 536 967713346 234 948033901 342 286003541 897 23985020 816 824631844 360 133617375 444 827270854 717 658453718 3 543592624 669 601264937 60 386433944 395 252131976 1000 310032922 670 381118696 545 232634848 614 564539099 758 813864938 618 831395678 223 784745421 147 412929937 208 145724621 331 666201929 377 487306497 638 413855233 146 697333881 253 945690834 414 252412948 975 584250015 697 145721075 376 99119613 775 265024937 756 554088664 976 515084429 946 203620324 278 539106290 275 938649090 116 558682068 345 876657782 390 792915466 799 653722311 834 496754906 972 859102837 816 964436451 725 455113923 141 479841035 405 671552432 61 726639886 936 509354302 953 663876830 964 199167879 237 308207880 572 346437980 457 976206333 632 139346584 587 198421950 270 406350826 95 793879601 957 578100379 11 430188748 35 915049023 20 61869595 290 227764282 616 894167495 373 6456396 505 172128029 433 270020882 877 959850257 528 921961793 617 15234961 422 899901894 896 12521296 505 826610032 157 250429935 271 821333382 229 760431017 400 900591957 875 869910640 481 54532652 352 425151097 368 485805844 472 883975736 123 515133408 65 579094931 316 124407338 420 229878118 27 724373139 282 261678775 997 970837271 276 433461855 932 472978216 805 958458942 921 383496510 183 553906762 505 144255881 531 270858427 232 981658596 140 722427245 957 436855851 142 417706872 845 34827942 586 780877365 335 294339146 496 175029320 291 987794890 256 525552460 535 37341100 335 777164831 112 972944746 475 208468660 56 877045798 772 336976807 836 299216650 392 803999640 81 629572191 282 123927605 160 240865114 472 668953704 980 460398907 785 222219430 389 644241430 575 940990181 280 331930831 814 99366757 385 806216095 389 245487256 126 322886154 593 686315709 564 374493588 545 123038698 558 7788802 218 37499824 579 296160078 310 797486677 676 133438471 717 59979144 868 483696332 474 460962328 841 111606484 583 131465945 556 877537573 423 605315879 741 557371256 659 569934680 731 578157263 122 509911360 225 780853122 537 915876236 351 600145749 329 766756322 350 911598593 174 444248154 314 645589531 405 359371196 45 299997271 479 366286720 380 130120756 30 622005278 387 21215825 72 837591715 259 816634055 780 495951425 631 528209670 762 609953024 457 127007655 43 2981022 861 57959302 529 322488144 229 328956138 1000 165299135 445 99164408 314 398148576 851 250522302 595 33628207 541 154144412 473 959059750 866 883611867 284 425364202 594 702765451 535 491222438 149 925726 313 377154811 247 479754333 966 413465723 464 768061207 207 757981634 366 733759989 251 112597673 171 481268210 521 542337020 233 242940675 799 934014399 754 976920799 996 412656421 198 819822800 996 841630389 154 689799126 110 990547232 522 380111410 164 436976624 975 71506975 13 83290236 959 240672950 63 587807948 843 769671933 402 297888142 57 309473015 486 658348960 550 72444621 753 54999153 913 367501100 865 539681358 47 973167236 88 56924014 371 513895414 409 221748490 717 432537688 103 970331423 344 412036683 487 982998189 840 960358485 737 738820634 520 268375422 949 224953539 696 245512816 319 977056849 270 70363185 34 617786238 167 10859640 606 946517645 145 613945559 354 841247402 129 507427815 890 781353212 416 570129111 280 298006697 519 228302206 745 716696185 346 222503751 178 955236374 36 722322198 315 848679098 800 273338017 997 25032706 823 426449672 595 994782471 918 219912730 583 27700088 37 491440325 195 103674520 379 348006240 69 521797618 707 971029870 56 452036444 861 933789927 744 954429820 63 800571106 301 883752841 884 312085131 115 884632130 933 939719112 543 326151649 608 500231361 2 288275166 669 496899773 6 492711891 251 846318207 624 663502226 273 293630633 506 851579260 444 4056304 834 256263222 124 551385518 945 809914159 607 542767392 18 499235350 628 748643871 258 749073105 994 449228291 545 665545203 568 547201952 333 68833185 425 534905590 380 827904632 356 851489759 922 643720803 64 508577212 100 73051427 927 324145194 792 310615489 238 540594108 38 520492117 217 974148368 224 408920781 388 483671613 867 45710847 311 549996883 265 142522059 182 815902097 841 507105783 393 975351546 66 555908874 366 318191379 466 707325835 645 115396746 634 901534470 32 923958021 931 123679947 917 265000653 547 88227575 804 745207268 644 153244020 387 273340504 517 888243061 37 929142294 996 157638270 356 554319240 925 983258871 741 733097280 813 192864014 121 972230113 557 171113946 624 695729599 312 882292054 579 407577898 922 601279796 335 952222547 227 997778718 502 921158996 462 47126540 65 806737059 699 61118368 922 592428542 947 70783555 85 541347905 144 543840894 58 215173102 753 57231521 962 950125550 217 531254944 869 76926225 442 351122628 189 87652449 118 759716178 215 524326674 85 124603135 135 30862001 886 735428226 758 862040634 443 665627998 677 233094923 354 261440508 497 643918673 758 350323601 915 167992894 768 95890436 292 311030214 419 992404498 403 724115207 658 570470804 148 13779028 101 655675954 297 857792381 515 323880701 401 107588304 495 483990447 704 480383405 662 772874064 46 735895325 468 795995594 33 28893487 944 563642375 457 663920030 652 577385568 110 483308906 440 543185590 929 179068889 583 166809609 661 116154415 992 164350831 846 193635047 13 970854151 507 153182872 956 43403709 187 640717679 522 871740768 882 915119131 389 743533745 368 601074239 956 622366805 686 163491616 398 617786350 800 884907790 378 79301314 965 990913150 845 621880876 377 50664498 369 256047437 404 673686462 994 651490535 49 278664351 110 876968062 647 361959315 112 948302552 664 731720056 925 125917037 918 426386751 353 36582588 473 783889113 581 43418694 418 766279653 495 802856188 827 63341497 939 103188429 197 682025066 33 732392493 823 836004722 638 720996376 159 831153324 613 102722377 500 6669159 549 843511639 331 148680298 816 340697458 762 370467655 719 537713661 639 536644096 97 745655762 760 156324623 777 691424966 936 446951605 317 309003369 316 612639360 727 536150203 104 23629443 666 861576749 4 26795638 838 328469925 739 865240167 240 520401026 807 917676063 515 753600914 750 250894087 286 852613181 991 15087785 422 520757059 370 912546717 330 723895608 340 926377567 126 449639461 462 687519846 318 418429038 882 970671086 462 789492391 58 676887410 77 245750603 713 176340135 785 20143090 626 625743414 746 267663860 14 601774290 933 553195576 104 205664197 410 273597972 374 827174352 33 214329691 256 753899925 469 570084598 624 666145567 1 409096039 613 368186052 435 639490504 998 743998405 104 166881229 895 710175005 374 537027302 310 216486702 244 671493282 189 37667742 404 232445529 292 444503743 53 805471718 247 813183441 912 517054756 662 308901112 452 561220312 961 778115891 189 705317648 110 750199152 995 915445856 519 51120181 801 764079570 964 477504484 674 670653293 514 335042117 997 859056825 244 821616453 61 727714424 142 600104805 478 748309017 800 154811737 67 44818569 576 777339832 472 78297243 594 330168762 258 237194790 452 596912488 624 176997568 662 554665095 781 825395879 86 103558439 686 958426565 915 216446884 120 80258680 698 667551815 441 88939918 389 667430062 746 923378417 200 340059840 1000 578167086 360 179794850 478 42740752 824 691688698 728 488129268 850 810138310 912 434244549 270 559322217 461 55437090 438 345391951 44 703736377 327 387322089 988 794149754 48 930872603 354 859274123 562 305870241 491 385296085 488 300068040 630 918011743 359 402949001 832 375757681 174 238929589 837 822635496 605 798219250 782 887374121 401 311324345 863 954518239 362 565525525 933 377653568 366 838268910 985 238896780 429 590820718 202 286618421 77 727039590 400 20254395 660 504617312 976 256853367 586 460461019 262 172097549 215 39413935 28 393981505 269 333173329 830 212838378 479 541244991 477 862484548 478 902099743 34 700823884 62 130967791 593 190720584 885 402955027 210 938393381 969 182263074 793 206131428 833 780131955 615 355480616 583 301609094 643 640740813 292 342519458 84 653692113 511 573789954 460 964739274 425 754324613 963 115702887 365 287496632 80 698524814 449 289899083 817 466183510 501 754697896 57 910879318 613 934765881 695 279639835 864 253418477 644 852790777 625 925841645 42 321846124 358 878897163 603 779405674 820 165090977 571 737286088 730 524376181 211 17565217 121 375184415 7 623964363 80 883813846 621 691766673 747 851857281 756 424749035 632 565094404 913 232094271 752 169272363 447 48630976 514 585163698 688 28433797 322 867661198 933 547570519 460 715445960 992 571897250 96 421834102 869 984497016 788 177284948 395 131081260 551 416420092 482 397263114 48 318440091 873 241187190 204 120140177 175 607998824 769 198177969 453 589268330 682 444570676 961 921339048 182 982683659 931 914262638 199 609102034 292 188741010 464 23598531 153 544408545 809 577139782 875 952579859 113 340389696 41 193952751 763 186733009 421 441093838 748 438269318 927 180887514 838 876862249 397 888841372 482 776753592 474 3452277 387 408161547 294 997038020 624 133434842 784 249630534 376 728431660 647 123769484 39 386297629 507 767565379 60 299675655 588 123245183 355 307073041 149 417737030 437 56535249 207 555655815 440 116574448 401 255871136 610 835791081 237 357520429 472 897993265 253 817676939 43 584719089 850 918038613 57 396291341 741 781081768 994 30336788 279 172023201 716 33501687 107 789564516 252 802441639 392 769628439 240 85268165 816 566927743 803 616816889 989 280760111 673 219903538 557 824486324 736 471498867 374 940523652 74 154942691 167 425037115 53 185964474 141 615327546 691 584124612 559 214004576 628 421488801 366 187775646 443 700785029 269 486080226 64 63767882 655 109583757 446 241575022 622 549625450 861 555385922 349 235935403 273 341557930 334 566261638 454 144082469 860 825781229 702 11881267 63 490022341 189 985702984 191 135612851 748 53902910 85 251500399 806 680348453 492 486081125 166 362459402 366 920067283 478 398728658 538 674433726 116 371467733 754 404816949 633 834550160 303 639633200 234 397218488 112 131176767 406 405066779 723 476743228 881 418680342 4 885047591 170 834907553 3 142151133 125 503879881 464 938858875 959 76066704 883 759554285 878 858375344 893 349050646 209 371952271 866 31968916 859 397757585 383 439648066 817 633133750 336 44886455 335 803757556 860 530776261 532 676719855 927 858580393 766 62398081 889 143874270 986 585212571 555 580838524 63 444190438 460 146579892 438 228178014 89 157821740 995 442458892 575 854143323 169 437300060 126 458681287 52 488682151 862 466399025 264 302903854 326 752233492 1000 520170788 533 555195520 434 147629409 490 373583278 794 950048117 387 443767899 561 235969190 688 811157244 861 791347552 790 521356858 865 19922555 418 599717778 80 687807972 250 861323644 620 178448473 478 75664094 514 387419241 580 799406106 202 485220563 257 924888328 528 65388572 225 112243415 375 137686514 310 943550218 669 516915727 390 742851508 8 582943448 83 577487617 297 805415340 309 328190347 310 498487906 851 791088724 65 739333129 325 577572680 294 297362603 577 30800191 30 149720859 681 825096442 632 842517591 232 96350994 187 394261791 256 359076041 49 84203727 962 842354921 501 546707384 186 140809131 985 990234447 449 576137782 813 469891113 247 780105481 876 300647954 425 712566473 365 643478537 694 454813418 267 989347282 904 921535266 592 60699899 804 214874037 538 782183850 186 746403450 511 498103464 133 883604686 190 578317459 696 453586203 619 978657433 637 347405255 132 119136823 639 652139845 710 577070829 723 323233385 201 679591721 111 358434086 460 344829719 721 770844388 918 648916364 440 895394570 519 90404262 267 985581476 77 309636707 589 113396152 990 555713503 302 260452212 774 117050186 461 298271363 457 983722902 108 362325371 528 269430139 876 596503421 708 17578670 358 75890520 31 618183282 101 123559348 883 163834276 761 427179430 692 531630546 823 791373951 850 15966273 138 276055452 563 161403575 514 618258882 577 925246330 67 120887866 8 994066692 879 59509027 218 540386368 640 449306534 940 395685980 554 824968698 220 75436676 784 996833478 882 386992499 622 37095751 699 284300912 295 459783590 523 79883416 316 222524327 814 461665649 914 973878482 232 92980237 617 684353921 520 362462878 957 44668514 283 557109392 932 474985158 548 316561295 12 401995867 598 825867507 330 470708807 862 573669603 648 525884028 112 287099728 745 54191827 554 535630807 965 574485410 531 89911614 786 28072157 245 779003987 140 267514785 89 573301916 446 308614095 690 448628236 886 286490915 565 784858557 436 279450752 387 980117605 712 45092981 427 256822664 327 231678038 418 333599105 928 270900206 5 844824658 356 548050288 685 741277080 637 862967791 323 411805382 348 223756511 37 769566741 514 594417986 864 282135337 329 939851764 924 571395518 660 980014632 26 730993115 114 492050683 759 526783783 84 132287011 400 738153837 492 458289999 448 57601786 375 455802130 872 150120966 701 801608414 30 983875137 706 186122013 400 21309986 802 739321508 529 525098848 44 194503707 840 439618344 709 541377196 108 81722232 198 21686618 416 980335872 995 606335424 19 958021005 8 731391269 297 132648176 714 347585206 234 816093920 291 855171487 450 428299151 425 215386749 636 887283521 999 846058100 125 144360973 680 193089316 530 754570428 909 488989419 89 415023439 995 37719604 121 28715513 345 990468938 499 319952334 123 671679324 925 631647910 712 320164188 115 361473896 2 395660608 214 985543357 359 14831456 881 744441368 636 937564980 582 246482626 202 760271556 176 863929304 157 686278113 874 732665158 610 951085947 210 787950664 359 477545538 957 993599063 559 492941898 991 247864868 792 685426344 676 926721508 315 141241682 617 838363109 12 306906363 965 485637933 396 676900901 623 728126339 382 327397720 446 214354230 308 460311452 75 573327697 765 235300495 719 941768754 424 987529074 319 216872217 790 212523698 216 718278692 733 424383062 265 592215809 368 734437124 344 818910054 205 225355006 496 84056681 318 185061279 414 262663984 573 676733861 54 509164683 608 826949421 963 327758041 106 246973175 291 912233492 51 961291133 71 241225675 222 92153242 185 667008701 55 30266633 970 621474278 218 417263530 704 164088309 151 422011628 67 822558906 615 905649084 196 148796294 96 345653461 976 549158731 676 444896623 246 581010112 363 291810995 363 572883135 873 682365444 468 612652447 330 46069360 344 946695804 541 857406392 793 710301181 330 84007450 106 595113382 266 997449320 813 41748901 541 450318493 919 357875407 502 203123055 802 612552196 180 880310043 175 512645243 977 255057005 650 396000256 318 13250688 566 447699895 863 635169510 652 500722922 825 930873644 121 506947523 662 423560122 538 133771495 545 715563800 594 52863792 36 275636898 807 437362347 163 164255146 31 482079489 452 609850380 666 826112372 638 612035224 28 144560459 278 621479098 335 286894170 644 55375339 376 858617249 853 264413890 169 656636895 705 829224093 466 333370017 62 668822698 51 458143004 832 310456247 515 989040639 5 916516519 852 545789355 728 364512227 795 210766087 425 535850190 634 582109607 690 236243899 42 270076436 360 382093100 957 233075679 975 709054186 166 233486034 243 626770442 43 992810589 568 140266518 187 461061310 369 308203160 363 198681189 136 898634658 59 615880913 204 729856262 685 926251382 867 228132679 374 43645498 881 319226109 863 230112595 887 35187902 769 59366667 439 538445169 607 884298082 812 6111798 544 206047731 438 135007678 368 745757383 253 880489602 138 638987091 510 619336656 212 440356042 557 327269063 849 22457877 974 696101820 377 92444114 460 764614126 660 544905413 842 325893568 393 252953885 734 867777116 835 837814021 824 507484282 712 865805834 645 771920837 823 223590322 614 948199416 912 592668011 270 606901784 331 743726126 212 330447199 237 5532004 51 169487620 661 562503333 762 127402084 196 840077124 206 655552557 42 990111079 395 211012315 905 331969073 966 387451118 624 759599013 612 963381339 839 849955653 902 316679699 652 523330359 747 213129571 86 626766657 378 645969085 153 144949515 769 89243965 177 807498970 981 358989083 412 790119337 806 978495324 965 443756393 672 151752296 197 572719566 70 212151146 830 192099224 418 703208352 87 737103509 456 820786900 625 197876396 935 312281219 971 202353951 978 518014812 182 135598267 805 489254833 385 534474419 431 780105018 783 416199252 92 189883306 151 381403388 992 878797794 444 440208606 837 585724934 833 962451233 987 132811731 156 824965368 718 650713229 753 852695363 327 368560426 750 484104077 552 219494380 380 899406689 375 363907908 88 527045781 648 94551117 286 787947874 767 51235610 811 452554102 956 456413816 417 18603861 787 347066567 958 700230747 259 528021566 99 211126033 482 897468378 214 986516661 652 176414279 182 996925411 804 57623022 605 359594811 215 975094960 617 955961761 709 863133161 161 535262836 940 989639678 859 24190159 969 624550976 872 82636075 157 338050923 781 107610870 694 48174829 700 932446195 259 354775919 464 833659882 941 199817112 935 668432516 760 904371787 627 21027947 835 681709438 394 192999588 127 894284307 630 144820755 933 28818947 659 557267127 527 592917791 988 797043966 974 651729473 96 24755428 116 913516439 274 269974546 226 42368182 807 837889098 453 348560700 386 100336966 87 20668991 444 43093193 745 845150942 704 196839201 880 510518328 206 88106248 786 537272341 950 843979257 661 713234225 765 871422182 736 865290994 1000 836104362 312 320017410 240 982529813 969 598700555 699 640084430 308 475003106 789 839957784 519 428371218 27 592711970 121 255975631 665 401714558 360 383147423 25 834871936 553 403837166 662 157614320 455 179894419 647 800963651 69 762690085 2 104648694 126 56728285 403 713665853 198 405044320 797 883954179 722 505283249 25 354120304 273 949931396 288 287933705 107 552974250 834 716493445 793 686166413 16 516372567 20 746292542 224 765405754 366 314759846 526 229061933 582 620906088 634 216815776 183 817917996 264 294623420 73 693821468 224 999625798 191 248571101 216 237375201 321 945868673 549 293149533 439 520995619 856 416969121 698 444420828 75 475185790 346 472221837 426 844845693 167 831311981 66 326740383 886 87188687 427 541822018 44 841272365 634 727791762 116 706110888 639 201511216 954 437485195 103 998467870 232 507092835 607 332114501 963 703010175 154 698903436 856 677892239 812 990554180 5 846237548 85 272103926 850 927080189 492 102216109 580 628937716 951 119911851 608 146845718 411 653592376 625 170402585 667 790618200 456 446655681 261 487256955 436 278787219 693 918914902 674 461356246 302 516004346 356 427823744 961 645528670 536 152426284 801 675647619 896 9695390 21 221753687 937 418664584 315 804204583 267 590336051 778 88830942 991 844433393 879 625586328 333 126325631 721 552503504 789 209243108 75 69420496 576 176367203 731 988821706 415 96718100 439 520512722 524 770397067 801 15708567 392 441041029 73 264381064 953 330116126 887 155140141 103 666358314 919 430939276 914 114591772 893 334020343 658 35953483 781 325632995 747 309148946 599 10261491 66 892991362 206 17490540 659 728409320 973 747316172 103 615341622 498 94847305 596 300380604 355 439292056 486 225746229 710 916189389 512 971875203 664 498022019 642 69235788 387 737845279 229 78364732 414 188921061 691 464801916 631 242845899 780 445617037 300 840750336 607 365770086 842 135149698 469 917927476 437 174903114 123 805875790 105 146468956 757 404126684 361 2554429 87 653096280 833 463755214 816 530331513 287 221128663 993 120683942 982 273271673 667 80779936 707 315021752 54 730271161 44 370911835 22 253985200 189 881104003 906 750682552 668 975636684 704 78609601 595 37426127 914 717073538 318 169940202 447 339066013 344 356532057 680 948277984 820 723312800 471 847340505 303 343475972 876 707659127 682 573012567 642 239777653 680 271385073 612 670209194 484 858297197 733 880459082 381 498484924 959 867139187 519 680691168 377 934644256 702 27829506 89 185435291 134 232103726 234 839684798 27 899652145 95 139951183 314 280943632 846 170235220 533 362373277 82 187318775 147 446946637 957 564488114 540 759947641 893 878910724 606 661545070 680 713529246 510 732849767 483 116187043 607 306632101 2 970534133 434 618126827 177 168843882 848 169958533 747 730086135 22 297326480 479 238676060 473 639804166 542 336570385 927 857549443 155 430263401 389 486571986 16 418809062 15 95498162 500 276351032 978 48055677 609 747430283 9 512146886 322 288860917 35 225498305 765 570530589 47 689697666 221 110932643 453 670237562 854 580602333 970 123962831 64 60272318 274 974453289 754 950497021 115 530547053 654 812814418 693 277582919 306 764867614 223 138610156 11 994605050 364 490702476 9 574210677 214 712124165 909 9772820 83 515616039 302 104105603 375 900607658 555 340858966 670 687701196 883 187333977 88 531981184 365 486171365 865 496730309 238 168829360 285 303530912 79 236881767 110 325335721 260 10919358 344 134338137 382 247653771 581 975169878 443 894859266 627 850250542 999 93257815 469 805247610 31 156288952 600 665540026 518 115662537 407 470419372 840 12942136 439 573082671 997 812704942 528 668808175 295 539351578 53 191079439 984 629281184 878 456204262 841 557997176 590 720748680 698 104389910 202 801458445 246 95588415 746 358705599 936 841769353 1 844245946 555 840691632 687 781341583 140 897531896 256 896285201 824 428955264 82 287541254 440 936779347 303 3885237 921 346784524 887 220042607 190 598142109 841 875376764 343 667528229 160 221467375 540 789622542 18 763489089 581 762303080 402 648219338 184 415679552 373 98975412 811 724165272 886 444891695 968 99253204 179 290567517 563 2479123 539 528966075 47 482423166 601 644612312 914 452533009 909 672540989 797 959176033 538 649306894 486 765197124 527 164309692 30 754171750 849 809801516 409 56075422 328 994942589 191 888541608 838 406643277 929 20577553 615 975737943 629 661272405 451 209813067 251 282397010 165 883565230 876 307197892 484 723190014 776 660226454 489 610212055 404 3499573 300 705931234 376 139544040 662 260735738 307 372488370 563 842820617 430 62617661 16 751376784 184 784336823 129 63723816 16 187908897 47 466464471 546 245839 857 32364991 379 679011212 179 980545457 71 320273424 16 905766065 555 226033887 993 30993363 188 277287111 257 77016879 744 217496268 566 320291563 641 740695629 847 554610129 334 602435784 427 586180956 951 541973622 694 183788862 14 457273400 432 882254589 15 882229319 830 303150667 419 453213454 931 745925303 981 349961330 837 17267841 918 576377492 713 770237774 596 543252694 381 478362675 685 254544757 42 736975872 13 437358690 738 972321788 574 208646458 162 116380514 102 523595216 60 145638019 81 626266532 917 889737449 898 158956258 959 498199905 96 7138528 560 280422559 255 960119583 988 890754671 342 785124825 463 166460168 808 419503008 457 749152013 229 331028567 754 519682288 474 636569234 248 19778360 12 243897944 951 194421956 203 301661792 92 553985519 841 813075562 842 107727725 343 993679016 51 107308393 705 93937377 957 123414364 516 380204208 582 321988211 543 972395281 477 750000374 311 594611118 289 28800642 501 98578696 833 184190909 307 174132558 632 115484961 680 988819913 991 631167198 113 909829620 813 46112258 296 444901041 424 488663956 619 454131711 184 563675086 454 182442873 625 95617781 398 288706685 19 485481087 383 652082746 943 403012335 4 705284229 21 137859938 830 990835290 739 224453655 757 591443210 240 593627816 878 623897187 816 654594188 201 675802140 645 101957623 30 80156371 769 725078658 78 198932409 532 559720630 85 514091241 830 961490370 501 110087922 500 423845065 37 287731991 679 280899302 529 648138762 494 977329029 773 505842163 488 874312506 816 875335802 643 511804665 911 323136219 561 785841038 23 814443310 169 102786768 436 867057238 852 818718840 780 48367222 370 303927413 903 529799180 980 264888105 129 928729279 290 371568953 514 610664901 531 21789095 867 816792781 793 10111556 193 303804536 987 185145861 555 928030006 457 935565445 375 309094245 955 807230113 833 378940324 13 108371649 495 267330444 734 783637550 231 508758580 149 602717789 242 745100208 920 908288627 188 511731063 710 224816827 246 689846419 348 815597797 244 920403631 168 248560218 284 519752689 947 689470622 872 508385251 912 249082995 436 408174492 397 998452324 995 563340502 389 963944641 433 414111086 739 780425224 724 44933334 308 568320504 884 882267841 294 118767857 310 821356238 941 282191744 511 533657549 276 417596104 638 478919887 491 995792050 157 145863168 505 274803506 726 864503982 450 192534529 316 122714853 384 997348409 105 752672834 87 580908999 856 163051179 415 994077559 891 971267315 639 475772537 399 609920327 947 240987209 380 426879421 522 665906277 521 858096873 986 834927833 809 506926352 60 673128001 77 559027723 665 621570496 400 617076797 751 919750330 847 141189129 846 46150098 395 689926613 781 813539417 38 389114688 487 114696423 296 356800967 404 747749905 756 546655324 545 271441236 561 635272658 816 868513470 133 30522816 555 380473068 810 372201885 987 547925669 429 574475597 894 47723170 740 398121411 483 273753693 813 299888116 147 858447073 460 251667511 279 279922187 768 602554676 143 441888359 651 649542232 332 202637227 743 435817934 803 127216602 112 179825894 433 539484403 50 845293698 630 188263245 954 668291870 77 791208858 55 438263010 51 986138932 976 353421853 291 469161215 501 426838460 651 99236881 813 967809278 925 995708237 296 403580483 358 101937180 637 729318341 397 404974828 69 38734105 860 799708188 54 38286086 909 564356744 479 6119478 301 936480778 149 67907459 330 43954978 167 810220213 698 385620842 169 66139851 205 265688992 472 659278256 343 709938324 883 79118674 342 872375780 741 822446923 938 907721036 307 437501389 280 205393511 959 563872271 30 265714408 297 277373652 31 408089811 620 304072568 895 284830984 704 60848252 800 273991398 873 954279595 34 317207942 602 723345786 837 675976960 333 231488781 346 648063251 980 513954743 243 635310263 63 108600896 778 655444873 414 126074296 619 529752596 773 650290672 342 12756721 191 839606837 820 804770977 578 169481166 869 326993867 307 437163413 66 127113033 519 640355906 144 770420235 769 120631143 46 109831556 357 774529523 621 984400750 671 791082564 132 251825568 63 726420459 710 607047522 198 745969794 662 685605883 969 49093722 898 759008985 942 698118779 572 243106715 288 991857401 848 800413128 273 326665542 948 805094721 692 680116068 290 689656464 51 805558878 853 40783694 261 577828070 511 361123463 187 569963076 581 454335920 996 814186570 281 517535230 733 262857725 825 661476008 618 239402434 451 181084964 609 908240315 972 689199141 868 527664392 900 452669981 783 955859979 926 639812439 35 397171058 130 106710296 237 313277790 382 902552189 218 940005796 309 280848463 508 424278423 469 342652570 583 973602051 234 526988660 625 814903063 594 823499280 874 916104565 842 867768437 828 699877686 418 530693724 558 63571426 933 992548652 952 197602201 337 864130094 687 31333381 62 540943314 810 2647368 372 701407728 245 503778728 402 760826516 469 772839484 786 69260843 421 348385464 359 979490839 71 114868957 897 814371009 803 115084347 99 653088750 124 598974283 550 905294495 411 851433208 410 933632847 389 178515977 302 41635601 133 8516474 99 830786987 11 141138027 205 901694599 49 808138303 82 870442842 354 933009060 243 240163456 333 779263579 84 313992319 296 115782607 364 544007260 239 175724165 292 66478146 410 888758198 759 277297461 442 334406933 599 138202230 977 492889850 221 722782802 766 948724141 185 825334570 529 401864239 500 320632310 478 790972400 143 843770440 479 137638226 886 698027242 168 523934963 604 171145013 828 641086699 750 335137152 4 678582917 618 545026860 729 270164168 552 544009659 189 807886757 1000 416455006 890 73247108 40 855128497 610 981766603 464 190519397 811 319934535 881 278885554 548 819786677 387 669182735 504 545777824 527 993990025 230 207162032 710 581825800 119 900543301 581 966628416 106 398450748 764 402915951 757 380816384 263 215715195 864 584944299 850 531023834 196 99656398 465 97752150 835 84419516 520 890236788 249 962536389 292 498387671 332 28831893 239 644076853 215 720598521 624 489052674 312 355086208 271 438084096 399 640897389 907 702161196 438 197558204 595 6596339 283 908735150 856 644518625 264 97830157 933 381903842 137 839925274 359 354665320 569 873369006 612 619990295 520 495401212 935 548405976 234 542896445 543 678978082 511 251177295 388 477539959 426 18753967 503 6015645 84 587871283 529 578051331 1 328753655 477 26162929 323 239838344 337 450124265 101 406257356 873 845827666 755 586892543 374 567366592 524 509035523 796 170223359 639 906815293 88 485106466 517 5793675 236 835681465 737 81576679 123 925689022 131 824374401 447 866506012 75 932890873 742 642575720 978 274690079 675 728315283 835 14624301 614 568678889 730 472416736 801 641532304 888 997746242 101 91378672 578 303314897 970 583549259 584 33505245 230 42051547 601 349850064 75 922860302 229 310883394 863 218377440 528 747757932 181 670958340 81 596986110 136 950210505 36 840648548 71 66873970 695 44298144 214 686465992 225 782454036 385 894915316 465 510047319 619 663291992 963 462145769 856 324746719 472 534397603 98 877920223 220 791388122 55 947259722 971 296039268 578 163702449 525 543295890 240 872200170 678 552833122 812 192956472 521 123030305 693 910343343 99 550430487 685 937747795 846 540081845 203 668527555 106 105204525 427 78715926 500 804574712 121 607932349 734 865642193 466 284321018 981 353115523 763 288588671 10 279028199 963 30484994 255 670241062 705 518176565 453 307938168 457 972505866 877 870223433 972 731950382 346 583668932 313 367997773 464 150062958 877 594218680 524 366754013 601 4269280 710 923961744 30 984612954 390 945613547 508 222265002 927 599091390 124 153916412 684 611422369 429 550851214 254 706338802 667 49296528 315 646199429 784 762977182 220 328844241 91 924829827 401 635389300 955 734526595 711 509855732 581 803699370 363 473602434 939 115377799 442 297483888 693 954595033 981 460546628 735 854365181 846 66583159 437 984486727 347 393682178 678 294290019 21 991763574 51 58767456 413 841376564 224 303516987 270 920126493 112 901679716 537 935547275 172 55764231 929 400043756 246 455632333 647 280622232 730 975756020 354 236744479 721 736893108 854 696455440 201 15439200 633 247035428 979 791114152 577 330049681 529 956242971 23 472718744 466 248883159 372 355620405 210 479352301 134 31421369 311 558792699 840 781289956 846 62073176 336 49161640 149 64604086 327 400103371 166 355161309 505 138971981 988 619886273 530 238966746 881 264621250 367 637548099 256 708899318 109 700936462 395 329719776 102 365759586 57 328412418 75 946820277 496 509520650 632 687332002 519 804310164 57 731410385 187 499582400 969 494987696 367 478305210 85 340277760 128 484199218 997 30394498 371 91376849 749 510830625 556 625117888 248 397827661 454 899280930 87 206331284 482 372214336 286 195183090 321 678905624 672 20907142 847 493463209 185 729306724 992 122768560 256 422564717 610 374216343 864 911749391 509 823188294 953 974166586 23 860404355 651 980681379 311 66911445 398 198211895 750 344749245 297 654255607 142 33312829 840 392329448 950 752761156 341 531563995 434 620357310 469 213026992 295 742167977 152 806522010 231 322924308 981 148397106 125 826860391 402 130665831 98 601787209 686 110241572 156 762370377 104 722861067 958 779418830 598 449752551 682 154221178 157 98163616 23 145705541 53 339559478 574 784147286 983 474851491 631 523845436 276 12736721 61 459556700 477 212169063 484 918157149 351 296861835 693 735547087 542 774447331 129 207939033 181 817494048 845 795737456 877 554587393 365 87671533 360 479496213 142 157902302 507 776319144 127 577378355 949 748375642 869 659188527 283 628684865 611 773478686 270 524423966 98 267966867 260 875779921 350 592456754 937 293089159 58 313112609 445 451521730 178 369490846 111 531216844 252 373659663 425 957567580 640 119402255 919 716272343 996 247475424 745 186864636 415 396547892 193 953730829 66 378984174 368 884763442 172 530608343 983 672708257 377 959704605 604 102396882 675 357379828 981 804269397 810 103486321 161 298686912 22 801859630 341 155458133 81 502062811 635 333133206 958 286460031 173 386041483 463 743318217 470 132741903 334 360694762 851 461671352 89 239583096 719 517822314 68 736582730 121 342290134 724 494632142 977 958992998 314 136103458 885 575320854 9 867307520 933 656464427 268 993588412 46 63143659 510 426902824 407 393202701 540 978848262 531 484376850 790 508561886 865 132908999 189 134305463 360 528314809 140 705151240 428 228060778 815 400662880 169 316149213 94 631989781 747 240572585 742 352161985 787 181054892 854 512675065 354 323000270 220 795390247 208 133696943 447 960514152 343 98071284 877 679796705 47 25419464 773 879033163 870 618964559 960 411965304 759 770316370 359 985878930 184 454370308 221 601547657 597 802093879 753 719172555 686 381378515 351 218564503 130 341465059 781 723154708 535 781236068 198 245778108 224 181491260 78 480463890 711 163830583 920 397764841 94 656430451 733 944145229 983 81875432 908 571882400 436 129959792 394 411995035 906 752193460 753 883484947 285 3035286 934 903840838 547 981753382 432 826840414 812 351469835 705 585471564 903 831895266 324 831273683 62 480763866 59 637210804 458 768126477 137 846125359 753 374567411 533 439293165 692 125199495 607 626475236 627 729646282 688 814425557 952 96202017 667 98507885 706 815043125 592 933562931 474 698745771 435 782758825 683 697998948 831 521699625 723 866915661 606 437534923 465 194489897 504 283830604 163 909165329 173 186697125 292 730189582 738 845882990 777 727707133 231 519142382 487 447907524 626 647318727 669 267058343 233 942995914 357 932808931 251 509262509 64 180816128 319 11604131 170 528772271 60 185673025 126 509825126 214 331369722 672 583990351 622 107729305 981 171149990 200 777331826 922 426103050 866 98929014 514 187537681 938 153074348 14 53242969 788 664678722 375 424264043 478 931315104 757 461241987 309 703444916 232 42040522 575 632136460 327 948295664 40 938359670 580 487462914 453 586211357 849 615342054 617 666940699 25 14154667 76 408627239 5 388502510 931 120491667 553 511365320 272 740475383 936 99872476 554 961711357 472 959520225 621 725026048 210 435920418 93 10645195 878 533464345 915 429387363 398 655484264 759 386537754 314 53054463 132 20624954 501 99974171 860 835637963 752 664701937 991 755024969 731 266882467 769 278125383 372 791437010 797 457989789 525 62171464 458 694188131 778 535331271 817 175940586 533 678164577 934 57022950 866 989497235 518 121437467 547 440804137 936 658494228 960 137228667 897 201068480 169 647006804 604 501799325 333 169443373 805 688100842 940 173441702 70 143496325 671 738948388 680 672738218 389 446962639 157 402863872 437 958519565 280 445670475 469 149746721 52 14649840 430 659633427 764 123405372 408 966108186 14 149911421 977 531451270 980 980515287 687 299969195 722 622420443 263 197096233 434 557301304 696 96914019 184 951598332 486 591661402 407 836331476 727 522542046 254 250192571 438 495981918 614 859011650 602 715229708 126 397163879 597 304845695 626 476051640 624 797227471 746 981013599 101 428380488 458 731040781 676 300054389 435 624548231 742 70918318 550 606174031 242 480987818 561 201170356 126 520362678 670 112716809 976 579903545 811 670904248 382 235204825 936 378290407 213 995947855 394 77131725 125 193517639 749 105290438 698 559161982 129 734694418 378 264207936 223 323075065 234 46673179 886 985586737 256 1267242 658 644821657 372 172141178 628 450974870 148 185454688 93 217051140 881 184704573 452 362428007 183 696566740 809 846726247 845 217737757 625 20256139 470 339074718 164 484175720 147 239195439 887 90023608 299 131204221 228 118994318 156 66125272 205 630854795 999 893877097 969 603845833 908 416464589 425 822830802 460 477121612 694 285107156 972 859434547 980 860111690 195 152547035 938 249059263 620 134826421 896 251075490 942 114046447 653 500706796 341 941460686 524 998704081 455 421804666 965 552661950 544 178678399 247 887923456 698 608617414 594 264426288 290 312033294 319 431234686 662 957688209 12 104073313 21 873357851 531 337524476 46 181136719 558 385152241 708 422245316 789 744144533 68 485580581 533 504326001 671 168458472 375 467308679 413 512595314 307 171723854 25 422686135 847 292849770 677 356427234 513 562996682 741 347043577 63 305872473 91 507695005 622 346545795 923 48818878 82 629013238 784 347530194 136 46334678 849 644440610 192 401567362 946 295171562 521 999740387 752 883165711 960 706488654 809 784630790 742 857423703 420 330174370 88 628276859 892 869268075 914 679231218 403 617087775 278 959799878 648 680267667 141 828966823 475 930560702 32 869129920 483 880591179 999 637722135 237 735437540 332 909195849 79 614179627 553 830207830 913 822145408 277 348189871 411 983211956 763 525248960 968 16545147 843 79793412 146 66415575 774 785625323 855 759973200 342 590953500 719 235113921 189 843780487 809 81831639 113 69516460 54 3341473 371 279147874 186 870007000 645 554030906 990 266338123 473 23842076 535 783705947 521 722640412 574 338510275 308 750911023 906 149575870 555 823712234 555 89679635 862 599938408 3 680128601 520 809098838 236 531661198 176 617673870 594 517323045 529 371806312 735 948928054 92 572690121 784 659583430 551 343205133 398 771037860 334 819702212 886 764853883 782 995060826 228 858149297 110 160843189 983 536876498 130 984876679 378 819249562 506 74696746 21 519667157 885 987259185 406 273428047 563 992136351 656 960621478 313 332989406 576 398627086 812 831849596 637 763943886 332 839993278 243 752098673 741 294695556 12 557408790 397 490535139 602 424976939 829 494232910 287 562332425 92 400742819 992 537765375 42 552342737 780 351382127 209 378764687 776 300275881 785 267026823 997 127617500 717 396635898 225 20687620 543 950535176 876 411855522 689 708652990 568 272931610 822 427506823 706 564384086 687 923159354 837 502154015 918 544274010 208 734430528 551 915375786 764 350550521 952 696128449 801 516622002 267 500923020 828 440898159 452 321412546 526 257643136 484 763656521 497 322380442 346 185804243 69 982316060 376 850467619 597 941171453 116 993961222 820 52730942 486 885603008 982 498628490 867 418264876 875 919071670 493 317148876 690 528187663 368 839505068 535 927801107 766 592546033 64 743857086 136 844762846 449 423069470 760 748887701 413 831603325 913 385453865 718 771550268 311 997166741 963 366244012 680 969745357 560 560682510 616 3232682 57 93185919 165 543404007 643 89427219 617 710450046 914 284693666 825 363570338 551 289409119 372 766685218 195 970039468 597 546990456 115 337348624 256 434624113 792 312813573 609 260025688 714 451972007 745 943551451 777 909203658 299 630982630 732 756705042 604 789627444 44 468160963 614 270206394 418 20369901 9 791613089 650 718217731 296 806546955 789 249732199 958 871720050 548 419351475 211 367092302 58 421933361 992 567623757 463 651964115 702 178031721 501 977117940 812 663214521 703 946673203 378 776092520 269 242544315 658 706090339 715 347035046 776 557789862 325 970454980 703 769884094 277 811357693 561 265482851 283 265128998 748 963398886 249 58769659 740 305820637 765 902754359 751 272514057 609 115050086 587 290772811 391 235662521 85 432582749 643 902651760 508 523838299 597 373770330 509 726919773 5 755612488 586 997915248 691 183413163 584 636107503 714 872769634 515 555527064 585 717653959 10 448031832 810 594905215 906 278438673 377 931093030 2 391762341 413 572841430 644 456641676 715 504564739 847 705671615 724 392530553 573 711876289 934 260183426 439 717554623 552 600664255 861 184062062 610 742415063 157 950308195 895 653361741 132 843670087 44 423958633 155 335153768 181 217263935 563 919482264 943 496338245 938 510305573 846 126001899 594 652572400 845 687746112 120 224366297 615 71814279 968 807737710 10 831065546 255 621761310 732 106639930 663 856559788 714 217916428 831 88058561 977 817422472 281 550248992 133 927069047 509 683557683 740 681767908 904 635397727 749 533231652 973 539624174 981 880196425 421 181504566 788 910087962 967 431517599 173 86578987 428 62900369 666 508132767 902 796302562 900 204926746 867 723539595 456 696984752 899 859567173 111 232495814 777 272158727 618 936891134 684 762140768 4 168450679 279 912892490 505 168009765 237 829532311 94 713321992 445 150331267 562 577326724 458 282223505 388 413426252 310 110327446 137 426181437 427 504434396 9 857907464 898 684565818 730 45137608 926 29917640 583 474224969 631 374181227 946 352186134 157 756607185 347 616361705 602 486703223 551 566583390 490 362183782 729 758117115 35 753292651 348 97233434 596 905981389 963 590510512 956 422536823 900 671664444 450 615877044 660 230320455 68 818290220 328 998779160 508 885853682 856 653139674 416 618027421 567 930043448 408 895974600 225 915505627 778 124942448 249 189706272 499 226788916 116 909115261 562 863687585 242 576828599 263 946188506 865 579668921 504 81497855 20 525919846 240 292114600 9 60687009 319 106673909 192 143425509 902 595280895 88 107575683 306 641656358 306 86519834 900 679567674 178 106477949 739 630635455 317 332412428 369 701617392 155 318806471 512 94751069 474 759232776 751 745412039 51 614692792 398 273805067 217 205023912 257 941180596 714 850509226 576 192720818 914 29370464 634 182673303 419 926509225 208 113824818 18 495804898 348 311417859 255 137869687 783 874432248 335 296851444 853 566152172 490 280266716 784 422390587 927 557935271 831 393556791 434 395943176 491 163205840 673 540066962 43 960322445 89 296451184 586 112596122 171 732682648 807 504345222 576 592807078 228 230067441 314 686807907 202 512846390 567 395898949 698 785552675 993 438002706 611 690409111 496 737822818 447 906514019 388 548327144 931 375148229 393 527150392 125 572462873 91 798095441 420 161028459 990 72888694 478 986915626 755 94125979 678 57902159 124 619889611 574 64083417 134 643262661 43 701646243 693 138633322 240 687958692 204 950999213 353 932966088 103 867412246 454 535647102 742 241519551 630 880576292 870 518438493 173 51950692 294 694398878 28 244584006 385 783771449 647 955842564 912 157880138 322 846715342 428 240830986 19 923464444 948 193753732 499 636613211 901 250466581 109 617270223 818 972263350 628 350565722 739 323029986 373 477095846 148 249504270 794 112558232 702 766052823 654 445023306 566 953468874 378 218607122 15 813030974 440 881862982 187 893036181 970 793827811 49 538623738 946 224507162 868 391692628 618 946433414 713 248634395 270 593713621 943 717416695 159 927772984 84 658077623 143 852440590 639 806234948 730 259910908 486 58973016 211 102987352 564 109465932 947 46607767 692 177335851 515 470560914 967 868110555 39 165606185 553 299501251 399 766129158 251 947959497 965 918973725 447 292106759 737 785968996 792 648105674 528 704858178 346 542841962 732 209630131 943 299169105 134 754980191 868 71998228 939 738951428 625 649936474 251 202808669 468 345478980 98 761952534 953 521236894 68 827962210 400 843993355 510 686324525 630 142793957 963 717798699 164 556844048 319 266912887 487 914858982 377 352971622 587 744537847 281 701807638 578 398468834 984 955938928 625 812959035 851 415124732 630 103869724 405 890425488 624 53903255 505 312651577 618 892638127 678 2685955 726 644554738 641 107994515 394 428620160 781 398744792 683 524804092 21 109945763 894 895714252 871 811086102 583 531028808 441 170392318 549 347160697 289 66048953 803 828154308 259 403361272 349 883375370 153 930321439 900 802353036 373 328621427 163 652788798 874 516545574 52 642981602 832 366457844 464 735343618 16 820318229 434 94752115 38 812275429 664 608309484 221 966564789 485 629832009 771 239543292 512 547101677 961 25438677 319 731783027 187 878094208 761 92609420 96 974841080 342 12499994 634 828641909 558 502791488 536 132028438 90 459832413 91 895720033 115 698292651 697 597371501 793 823499473 905 297046773 525 482462365 168 342276444 285 137447972 791 273966128 366 356293313 399 443203506 541 602796259 747 677887490 126 586460240 559 449767506 900 897538305 650 63527841 423 54478106 217 441421127 154 675997166 692 698816762 984 516845498 84 466377853 8 293932754 392 586054783 782 812544498 478 775523825 108 267451018 10 826165377 908 176762358 526 674678357 688 346802866 120 223617894 761 826005644 971 820267428 576 337828896 693 419970726 960 397867036 783 85386876 387 671540737 125 359261895 282 5453622 58 574689759 302 764201431 772 315862832 412 419878924 640 45347036 129 824661036 941 475244472 845 772419660 709 300694461 576 391649858 354 800106775 81 331442276 489 668612594 743 683537420 697 736474580 956 307490162 594 549112510 946 955266741 762 562603226 61 648264900 901 261124211 452 953881224 996 642416733 181 475095413 762 762228959 202 726024057 517 333746262 786 422944465 650 374351700 569 532482763 105 847270590 407 766923072 754 541598015 132 639672341 188 457480995 339 944022671 812 300914220 839 470314830 47 976186331 688 579139412 107 843954461 49 773240814 421 905659825 512 842970624 119 510220589 307 593196264 933 45272158 789 443893933 698 263495752 106 958780220 140 595558511 361 203667967 626 502153 772 259662230 566 538487531 609 522445161 844 32148986 8 766478807 425 154927815 406 324754332 838 192634329 447 147218214 548 835950186 769 148959517 285 6365669 863 279952778 552 422472304 484 229502503 972 830684999 391 939430898 754 954506852 68 166887514 238 181957160 180 598459624 612 976247393 176 340196594 692 9228983 963 739791836 328 370967750 433 384063157 865 100974606 653 467974032 349 197487075 999 472465466 485 187426078 408 353239392 136 136048473 158 106696705 794 128177252 858 184878858 622 368912334 12 56047230 462 527436442 534 786893728 829 646175172 103 938346397 166 931696150 756 82963446 722 407408808 868 509458578 93 901560468 820 393073561 880 31597310 43 193304859 576 330373534 196 670573550 189 953604415 201 116896349 354 964249763 908 295622079 491 882390020 562 557197692 127 221390731 729 881059873 28 841544198 945 96707182 345 214507223 416 652603244 999 408469235 61 545122935 691 670229954 511 852360298 848 620669772 656 992479221 146 171717617 98 167235678 540 757482303 304 374917900 22 79975184 533 71957125 96 729163628 897 127749951 390 950767305 695 627784292 835 939553472 564 122304431 288 139144053 387 321662108 672 986990947 798 835578420 291 110909557 901 50029577 184 752003918 533 357215728 812 140788481 947 234768185 642 84263111 183 732448938 688 384977470 355 295926948 982 125781975 347 274685412 374 956822916 2 765770624 195 657276111 759 302830471 278 830827882 897 641396557 322 645397553 736 57758042 592 251606901 382 954427345 465 321828106 479 479106354 2 299954571 483 836524198 266 205133622 430 511029572 396 672331686 818 183131877 544 244564267 637 620133222 329 641026883 480 527929333 206 637592301 875 772278422 671 386447888 837 716513329 909 722510099 656 461943020 439 155180710 240 108608567 914 735373518 802 310975174 380 36009841 406 189839083 710 617943321 120 50612485 932 690069981 617 73240504 345 318970021 890 287359064 915 959547738 191 644088687 473 554659111 780 35961401 443 952303363 651 700356277 651 15313002 625 972192294 440 233954984 970 35072161 239 115127140 604 404582329 388 756784074 987 324006625 868 909904565 985 418786985 649 269928714 242 492830723 175 494278581 1 300264423 561 622712778 449 214728347 26 589669540 391 514684849 805 764256786 947 838861183 346 525322248 186 407109986 414 111355460 686 523883583 581 181426771 307 933992658 289 960138107 835 967084611 534 873954466 861 410057129 198 346731347 922 488072447 714 720912987 617 442205181 829 304059958 297 680005612 854 411129401 915 420328102 644 841669412 804 40866855 490 537080117 438 920337029 750 377946913 841 524127083 644 197920369 710 669063631 910 339535580 806 72285815 778 876171164 360 18448153 42 129745668 72 323871494 856 10574753 37 617240567 674 137521986 830 814079355 944 575563313 433 137333938 839 774063434 699 341760332 249 148326488 299 578862549 867 270464118 528 732834223 871 939873741 538 739833193 687 96886178 938 283744197 788 424537267 961 355433497 622 208751134 244 57197334 690 976187759 120 465162584 819 928651889 768 239519777 642 370608605 161 517232217 752 688929581 293 291036754 781 309676601 755 482599188 10 349537956 200 516204260 942 143575859 960 44839838 25 751780021 435 245338795 896 934890254 824 816787188 391 476058757 52 320809450 838 957691611 421 65488748 901 622602516 176 129638817 669 230511207 772 247333211 287 374432203 955 985488882 642 962216185 149 649620792 837 770579578 565 861902558 533 941406499 363 847204671 486 848374073 406 888184020 560 526656372 521 788534098 684 54579293 14 339223168 382 974728132 684 668566784 976 234897436 244 39898038 574 92702504 934 602114490 653 94686621 722 739805161 696 581982541 715 777936628 441 491144822 282 913893803 720 947556019 853 701876297 273 189819255 585 481890128 293 677255319 134 65547576 668 260027824 688 267149481 694 396204894 341 302194393 469 146789603 807 839581559 352 194874229 753 134870294 326 5981471 58 713053405 853 755582358 117 42246312 90 223874201 507 491998665 89 276518033 932 293749932 100 473914949 294 47027906 458 733407311 953 52056312 856 429139224 599 729104038 403 676525191 464 239405433 655 511673785 880 585806187 558 642178474 197 336828780 794 218695249 983 307905423 11 583864007 364 47444214 810 535516117 843 901860600 23 997130404 512 699588568 283 761963787 380 481603970 862 177108921 780 325817480 26 638208104 501 433050284 650 816656026 626 438826008 455 839726343 685 739614447 795 419947318 777 23715331 453 964387239 503 127023784 804 708809957 191 137777602 389 238763530 52 799950389 920 733533684 252 424276629 108 320522011 999 5436333 806 494997958 170 343783215 471 153221036 100 249102107 681 122372595 838 890429121 939 147502850 772 299918381 159 32798927 950 959067860 264 165639810 217 321742072 52 157514330 129 841682990 142 313173769 57 69622561 576 518528713 12 988477272 640 618234054 361 275365558 618 796460978 713 803602262 233 823955954 921 288099042 681 953194619 846 723866799 405 581985914 369 2042132 613 272109064 168 177285368 54 984279635 219 214530149 99 715390110 337 820283644 714 289719228 48 644237765 374 52006982 2 543647347 494 545204713 449 307414140 256 16189611 997 914219540 294 70129420 33 496141007 897 681445911 444 495925857 98 119536698 247 333715959 633 431953885 730 536778032 15 75142689 521 663570818 559 32896919 621 648555517 924 585664918 210 804149679 715 886500165 788 113742364 6 537055157 992 166040427 448 978712279 496 23739901 269 613781954 27 552333265 209 236133015 80 260811469 92 491344913 121 745107039 890 351186933 216 951404068 608 747990893 845 278097137 246 807651668 539 275127830 783 217944073 335 225979496 192 839784379 869 167000971 431 535688366 166 441880410 682 705671389 344 960478830 970 628853641 466 502503402 818 154239868 923 741023443 651 615968286 106 557937419 598 151154341 861 384900999 18 446076755 61 537007337 49 631593356 34 566199851 550 938748343 420 190011528 565 357252633 940 937901380 959 894940567 203 211626043 713 214696408 489 398284400 147 457332289 152 572160670 624 802798175 465 566624135 207 191433076 580 500124407 716 293444358 804 296973219 946 347237507 353 762786919 709 139118237 742 32558516 653 550392701 105 907163414 244 159904408 782 635631674 848 164164751 404 353282226 610 836280079 413 655004244 764 901027337 367 160896440 79 925720559 809 666283895 402 20532879 712 549205387 575 349973548 234 502878342 479 743479543 207 66488724 872 629553847 523 276145278 960 435386730 484 70639625 103 663280617 473 295724895 194 251884579 992 545360113 214 189274885 341 186999054 712 501753443 276 322828313 729 861397595 863 891042522 664 593503874 350 9318139 49 864365246 4 561494664 843 280114276 721 290003093 242 442168570 283 282524809 557 426554900 601 620730533 841 823737555 349 857582052 866 265232617 835 747768328 570 657916823 821 698736684 895 751734369 546 187783513 379 925060524 181 888844469 130 567484968 265 700551971 875 332088899 887 128582925 640 499206450 124 647655379 882 923967476 270 411883436 450 64692412 214 789584930 574 244746606 320 391572010 872 598565280 851 473101164 188 575489457 887 815983507 229 523167639 447 572036053 400 287454285 413 236536167 674 576979290 795 985918189 893 855805492 712 744045946 137 202339981 421 492455043 245 746146486 597 740243165 448 719007701 735 405913885 413 774800594 502 618470988 242 585313533 28 189315102 510 152439513 576 193362956 857 342078911 891 983466551 288 404135308 787 72172266 938 351969113 407 964662923 436 100087800 493 337130238 406 976989385 160 134678092 495 172518010 113 581892995 301 484457960 435 70728806 40 224179115 379 405390281 389 421880882 946 853101090 382 105014529 826 411115941 246 125168473 770 234541214 813 673138127 695 788993246 211 233427356 568 102432233 671 723046856 963 821613226 721 900149505 329 619952691 283 62935164 186 387632224 143 72977953 376 103027017 293 428219044 644 601331197 40 71689334 609 522929325 763 742466426 238 925926742 568 986726593 377 818762504 49 725452605 86 182884377 132 731473700 415 283463139 713 248446414 531 219277979 462 185850106 800 205962579 628 371037005 380 134975452 229 307031505 886 474249383 453 322083089 19 829525425 109 95835901 448 519511099 139 508355882 322 55887610 340 129893453 490 764849336 312 302285524 957 842742816 709 431829074 143 313042813 777 997952657 775 267251357 618 247400754 611 428241418 268 940465777 385 258963839 199 535504927 492 752110564 161 387634510 485 594114689 427 559719606 675 343760359 34 904403496 978 81949120 827 123973942 595 370399337 852 723702175 381 249307257 220 998396773 11 149146672 205 164201919 586 605768577 600 79872688 265 24865209 209 954675930 190 97033202 949 280284764 32 632351815 620 805384823 752 721428671 970 315920833 445 977369602 298 648657055 380 822173442 234 122661584 945 894786225 68 766706553 300 811774843 350 298778776 561 3268227 817 720563675 309 428975258 852 85617595 541 896407269 929 23389061 155 273263318 605 610444049 873 173057745 494 398131082 340 445894912 262 755995461 1 412028572 194 284702505 205 977070631 206 484125231 708 80693166 779 970450215 255 416750820 904 879035909 998 320031309 921 995515458 160 159879552 870 540092570 517 965757525 370 701228376 921 327271525 214 75204629 0 862154303 778 458780610 534 707028476 765 278877993 442 533789156 875 542537822 285 205166694 901 273821131 37 957416794 569 109470979 610 920924293 118 896600657 331 102469445 275 632369452 541 770275611 758 826831965 31 485098091 290 911913513 991 661650222 54 483896356 126 470226470 223 630627133 326 828665372 618 372105675 465 682649909 22 167502538 481 541782811 187 533028409 992 296385556 401 653398744 824 713397127 772 436428592 706 624369502 161 455506972 979 305822710 393 669996402 259 577085208 255 180847264 272 681336463 194 237749325 905 83524830 320 814029589 909 746542080 417 475638223 529 620410323 80 290171276 403 26384797 115 793633650 434 423307699 153 641975241 378 234722879 169 486341397 221 875113875 487 574612998 122 310683626 429 417045323 429 788712082 22 765742499 790 200095804 631 272484269 788 788594414 798 315176713 122 702009404 987 451040133 135 93946715 862 347928476 426 706233646 337 743220419 309 191239011 974 432725453 519 631049253 308 438310123 653 282290020 768 747128652 639 157230146 935 769604770 436 501226184 985 174999561 328 741930524 935 478924936 272 550667774 25 382607672 260 367412593 365 527193252 792 409635046 392 617168654 132 78905828 294 610994420 424 578662171 608 183793165 874 775020947 329 308232995 680 814703450 414 916292302 301 49872021 533 450045262 842 902524806 183 609877631 442 45904171 231 345559665 304 188828977 463 808834331 208 257612798 228 365828771 857 738066866 81 158737016 745 858110226 575 138913866 577 820245749 527 401236079 194 959871875 88 192803431 846 464033310 153 538907410 782 609748492 643 704165086 837 8700611 270 293609783 526 642679781 199 599216065 803 981934927 560 818806780 230 221134649 212 98778486 378 751401114 331 270730808 789 188029112 158 110434966 281 952932463 219 314219343 590 962075777 954 45829550 534 328512264 725 57741598 525 92033275 178 75540969 846 734420425 993 868741339 598 549000502 8 972383208 209 565765828 427 525938308 483 361946231 87 146175418 93 935368345 328 142462913 195 540923465 223 676198942 210 926882146 317 901943808 349 666002029 746 331717846 749 313132635 38 840117390 515 336482807 580 141679390 23 829240108 747 238558183 927 911100232 708 166167512 163 627818055 453 54793413 563 259691391 352 387556250 809 234614579 223 262326554 499 249839675 939 847994117 145 790534152 662 159060376 340 194994317 437 848732705 868 659291670 184 465321558 655 613358045 670 196068171 242 717582755 690 815033136 284 37618067 338 159414796 327 9829747 194 751387508 814 667216132 61 860898182 354 162495080 22 743138277 463 494935166 937 467285235 764 328060066 791 635590378 257 57891007 753 57732307 695 7852753 6 749720106 760 27274023 440 457151733 986 462476346 541 335643588 238 512365823 803 913531371 45 717923036 1 666294056 584 249630204 627 746073749 328 590856009 268 627558836 951 744845713 132 706305877 763 888332205 170 677600951 563 864073902 938 57486806 99 593272998 762 834325153 201 563536115 491 922573648 582 932260857 654 21466011 560 953574596 648 430932315 789 869973884 313 840476977 519 751234837 54 98105656 241 148963898 678 603850810 988 22524111 503 494721545 288 309288033 853 699535495 567 906822239 4 777240494 683 250471648 770 787075908 930 595614252 987 552846975 791 669506647 457 63567463 958 100001996 549 508728512 801 341247523 553 740650478 923 839281164 687 451351879 124 284010836 382 534261960 12 547609972 796 700698899 817 552854493 987 745999124 512 272515375 758 105740633 759 771172681 824 873572095 3 329925474 402 600654707 836 884531865 294 322050829 151 868952632 216 367681665 443 639454041 952 766578325 72 894850482 113 231854706 604 294126238 755 545529352 917 767285153 664 728567636 597 604129828 674 614409620 888 476204133 562 445555202 776 966586589 890 450922636 990 89979896 683 126304222 939 506315828 106 768412808 897 271953142 777 810455364 513 107927330 372 956807123 585 578013439 900 95445634 613 374136038 710 594338899 620 86137434 730 681944613 958 923994823 444 793847495 164 576647935 425 140094409 815 29102849 837 538710951 103 326422579 365 625723935 220 962118993 886 565785780 212 671517902 276 467380793 659 576675980 252 237735261 469 571820784 693 483949798 524 247269657 521 533407908 111 916544898 2 155211093 736 409510470 575 644411500 921 56384829 684 159177575 932 110245104 747 792437673 109 228938869 368 738532742 473 91273759 951 885395702 586 556480617 281 989684978 582 468243552 926 488472284 766 665697959 337 550795183 903 484131779 276 208405354 390 432640198 231 747929989 554 705945655 508 696517912 771 767008926 174 859338642 123 570436182 892 837204703 588 984393086 520 595200185 233 204872654 99 960946462 708 301992569 116 779807897 302 969715919 585 843908929 633 389588106 642 911220309 715 83141211 149 393580535 272 551397229 903 908277709 934 648069690 860 958653901 156 750152287 623 86409780 828 405028513 334 224742478 682 92843955 719 616531825 32 931859804 911 165935921 177 207576702 771 362874774 851 404668019 292 489941949 655 948940156 299 286205278 535 677321728 230 968838875 568 599116324 935 391216752 586 747501490 882 271437985 991 37591931 498 727683701 259 596987814 115 77415879 280 590982999 501 838823255 305 795961655 217 169966217 484 539725651 518 899429291 477 420803970 67 143843696 694 28219697 623 795703283 119 52466319 862 368140574 529 857226234 206 204071627 427 513655399 88 293241013 92 459836573 348 842490222 593 156562775 392 443618821 60 205386110 368 888512250 883 860832770 729 280233795 968 197260903 864 862658303 301 663815809 730 593851349 362 868324039 472 58139258 867 901973423 695 255332153 603 229866125 875 986097271 410 306078123 223 40463664 565 61065078 712 982460833 42 985021233 330 922598134 413 372667946 469 512554476 196 509946216 677 606193107 806 523812961 22 789802598 86 901591229 179 829011878 620 17067146 101 265180275 398 738731563 325 357040266 586 794583814 41 745888662 822 311694304 664 156668902 439 572412521 48 948477038 122 140471820 235 232691522 972 771799643 776 720158477 743 660233110 903 31173038 420 867975696 921 586293275 146 265799183 304 436877854 536 563605205 315 192911418 21 457084112 138 527480807 534 466882267 268 215532652 859 481671240 343 796476823 714 538893453 667 22761352 290 795862377 553 629561487 756 598086044 864 767034539 3 163948256 546 195530091 755 822588104 336 576392920 220 601312408 226 834277599 686 967861097 632 148322660 735 892647906 603 703317969 967 225592908 97 112539024 264 451934445 951 822288098 73 447572461 253 249951360 803 61975534 429 429239786 163 304841409 822 414686759 990 73767036 425 91349807 165 526519329 800 377693565 659 26533145 335 590794335 564 544199720 925 363629471 210 562025922 695 787561756 167 966033727 562 470648950 714 463419707 14 45830596 695 868266084 909 370313473 532 641474342 642 316092847 514 99158214 987 243688354 402 99178065 950 840540070 805 785833943 563 137606126 161 144403379 521 739028976 4 740912911 165 533399623 650 797319051 943 571713538 690 408616330 320 501473087 534 396563560 7 42728518 445 12253366 935 459773970 922 219550228 539 435606830 542 269716466 618 61167443 149 163349866 153 627722195 681 596247873 243 932369355 522 958989503 436 840567923 862 916221714 282 74473393 439 963952253 595 409166858 596 499722145 947 306245194 211 77437241 438 570669664 124 2035538 353 284666433 320 416636288 467 927932451 540 663134606 151 227212047 106 272095163 149 766659204 582 78063529 723 615472396 845 157244853 578 60482278 71 419323466 658 33624252 409 633104349 846 182518269 932 153366337 23 452639874 470 359688232 621 397696729 863 128657902 987 559941269 246 646518438 517 372278472 755 532651079 545 326673354 171 242023084 191 862210799 685 748596020 373 872239769 366 281024780 259 183799486 293 473880404 419 700179150 366 980378831 46 403679665 349 113560972 854 105163201 173 624520278 9 453298502 36 174821756 343 36980077 611 479600666 447 735232273 586 420149025 845 193626120 959 275533765 195 416841599 478 564933831 999 686139991 947 104232212 497 197848578 131 485967810 146 766922691 927 650911085 1000 519173402 407 352891445 502 170626443 657 678845562 318 423012500 811 63203831 583 803942390 846 761565115 484 729166865 371 30520411 35 19546943 875 27434631 749 840856065 722 685975352 951 126293022 475 126660311 976 74916123 338 221555946 781 194732901 374 732048785 360 827350842 965 184181502 868 591050455 925 887969693 95 985890477 152 666417258 661 241431544 964 142755382 905 535153712 92 887556927 586 16307774 551 811716896 125 988500919 455 892053060 501 735376786 370 242467263 47 722445709 335 412413512 125 670235374 520 179260122 673 705600784 43 770534361 202 942892214 638 886975498 474 58927546 269 931098037 125 896041057 627 507471788 140 82016621 213 353686397 851 460476846 387 153557767 122 427130249 705 603648699 809 562279662 247 890663357 597 407831839 642 109399186 101 10147932 772 440667279 8 760018586 658 317131880 829 55963056 977 953248941 194 244138357 71 852857586 702 646561121 587 170025017 111 916321603 826 825622538 28 488883471 277 65045424 897 336183004 589 918719917 366 825183049 253 54917657 205 794297298 826 299920643 111 579880206 188 627106940 1000 665140824 571 169261498 62 515089559 307 780687474 633 755447183 716 548726518 694 10666140 880 293810425 632 625299877 553 896542905 532 63781966 285 113806365 69 580198906 637 747064793 766 165365427 661 58608034 101 968575430 754 493445180 509 174848134 90 771568419 227 147114883 851 783617522 316 14970556 15 116275228 797 891124913 692 680342157 683 795438887 698 35439118 849 888276755 712 528902603 746 41705873 112 868105335 999 961831555 58 897596642 847 546781572 471 316783099 701 943055420 294 696885060 329 558608990 985 836881929 638 926045887 147 253412401 763 248575572 664 305414435 315 373731012 756 121070118 776 844991281 352 385553135 795 989055581 939 303929543 732 514958841 340 552368060 684 285287125 997 465773120 120 583029936 619 987115530 599 784933764 195 208657502 522 863864054 518 61993216 789 587527799 615 39504917 805 19496359 959 42048009 728 973809631 880 369186154 392 883308354 884 233774403 44 178752676 510 620386529 715 672724174 51 432482900 834 603697761 286 661523550 219 79722575 483 968387476 252 673525802 57 204267592 272 253158135 637 468983277 710 297009718 181 49859800 633 715689163 622 897969227 663 222392498 213 74553558 214 920004380 742 496369584 534 920424458 420 53401239 318 152591955 606 58342033 943 328778230 890 945503440 186 466407440 164 312049986 443 335045609 716 288838154 848 264961754 465 595589848 729 10391791 905 799471033 445 310256855 448 37077292 272 66212396 170 440406763 669 802994841 254 933059062 977 838069899 300 798218757 34 244317182 422 534314508 242 672624399 235 333685482 361 29880231 945 490246962 39 805340765 358 810154033 726 605230674 617 276489899 841 492649264 995 184482678 735 845954716 393 978452698 544 589514775 915 779928531 9 32776916 915 383177920 61 350123292 687 198800246 846 364433412 244 266377230 382 328765644 926 801223953 717 709944522 838 183097910 990 732939568 43 93784619 518 382245896 482 489402194 21 639965253 923 324492215 908 218182330 273 961798094 239 238555067 590 409118722 258 607365687 612 146996717 190 673938756 438 595154989 670 655977345 178 544171704 50 94011377 829 65839127 949 319960540 740 101341929 673 723523112 305 658939010 885 614854193 907 259940531 763 488406142 92 294435670 384 64943345 762 677693547 313 160850057 145 462140021 546 805621188 24 53781751 270 222762628 705 844719032 814 154471619 412 907405880 843 479913238 7 303084580 189 669406644 272 990702529 419 267134218 216 549651236 767 527454211 442 639506543 128 795833130 461 507942196 422 562090833 596 545216320 578 131487289 65 902662094 225 511093388 976 537580786 370 219087158 444 126641887 860 398812707 625 585575684 793 515769144 690 489912633 877 191212150 398 177570054 122 383102732 833 527388744 65 181245681 389 867965412 346 691117364 422 427945409 57 800690675 290 233149451 260 624995720 666 700592011 569 539452177 735 404363304 254 403082332 774 73868693 616 207488178 520 555700434 343 292874329 474 412071582 683 932833540 464 912146990 164 638533313 79 264253800 641 365038453 931 900019845 211 728489527 576 275941176 4 127032430 395 159670228 786 804927019 552 70292000 113 152549362 572 878250075 216 421308319 361 172169569 891 675866912 94 903545435 754 688576232 62 174821831 449 618519646 52 78035297 156 671845899 339 157350649 972 202449658 836 357773201 256 320760999 350 765766252 783 102742078 87 503441998 295 237050370 964 203157765 912 521189834 233 416566811 685 868545762 523 961899960 191 357561639 181 798695904 638 4550073 887 389090430 136 156401562 912 307221945 239 523146254 909 703369444 542 481078741 666 310415603 862 508859319 224 441334061 780 108242607 135 898742374 693 413962368 774 919427488 957 284069697 582 864725828 998 937708912 945 723261272 411 679395559 692 420025583 433 650208521 560 703263583 980 34095169 266 662289083 246 337190875 960 157311329 196 361002310 835 348017230 262 400272882 29 646807411 184 574251195 292 730665508 886 483858693 873 693748862 904 917346406 134 147890770 725 243312681 618 280556836 643 313116067 446 612137615 71 710262706 403 344324525 157 338062233 774 323450898 151 687720419 14 604928255 361 656726356 791 409675871 165 53881038 599 123258611 817 933774968 367 132974047 689 370801973 478 499168266 653 234651337 783 954805043 305 511049318 431 47676379 984 512964668 224 62286031 310 984724754 995 924995183 602 84151499 435 502451371 91 800845092 201 823920342 626 119577037 275 1445794 252 694094487 434 953656007 818 738766097 127 387029569 855 821246324 406 106271720 203 158677013 238 99051825 261 998758859 916 393032160 542 810266404 709 426301185 160 507895216 381 630298633 411 982851871 737 197506067 154 253266714 1 150654715 497 884451558 627 48581914 10 93443209 747 651346414 960 795979092 655 673426450 990 173863187 882 610010835 928 100619955 361 446723818 310 132233765 202 469816688 216 704478252 192 148098160 724 838904576 969 951811369 781 532375766 472 494318619 75 179625400 150 945972741 18 166754581 527 568585802 313 19166576 421 320104382 968 936056428 16 31835234 415 18046105 660 123080710 241 985453067 461 601695375 722 844941449 789 872337290 772 668477316 43 384626004 395 340086720 510 890395941 4 61957211 431 288212893 439 297868197 787 377771432 119 536921549 54 347195722 666 438222917 794 67639754 640 556949394 151 154970710 697 175126755 952 869147456 27 776420797 988 463761439 714 197380122 102 35686404 340 685437670 222 27682120 466 36432840 147 660651469 423 950644552 91 70240986 774 85887397 810 36015846 523 448032279 480 469807529 428 97199963 948 760404830 876 675771670 546 63064580 207 611828265 324 963699142 443 10815881 905 590341568 730 717521338 963 438162218 322 987995631 111 226471966 123 123597235 556 30021834 623 696261632 175 610602917 92 104082488 631 604689778 280 353563100 343 572302961 933 325267325 617 398160318 56 960571713 875 527380727 359 432430603 94 494253622 999 860745738 961 191613900 693 532013696 877 89559399 57 366177179 75 60523059 583 100085646 471 947043629 349 624012412 409 788227524 944 77383578 579 540470937 10 980391082 773 819439264 201 810216443 354 549373995 199 687447786 235 171199716 743 976418063 502 577696795 685 284574535 280 794089928 348 338341395 56 477491160 56 653734725 807 862799924 126 94323410 770 108818693 171 623117026 847 547233109 788 400207881 390 621246175 92 292279476 799 630234379 244 906015586 913 344521142 795 168657268 630 598215635 653 83228246 252 512892139 938 573837606 336 148625814 897 122742624 565 84399504 150 338320645 484 566611595 858 253632321 168 507620686 797 687777113 897 737187734 411 707075856 438 645598698 541 223271258 264 717002777 612 499232109 361 192041538 376 835349247 514 575230132 311 899176166 290 188466041 496 6115015 491 143131834 740 790526963 82 908134839 779 123080539 148 420538232 573 66611134 912 18262752 594 766295345 510 608678902 85 588620798 677 718734600 433 250471993 95 598624731 426 427400304 422 883683279 734 102181246 45 625846613 885 258929594 436 757858219 897 175082586 429 86223614 735 197926444 491 180345164 971 654466949 758 78537904 93 859428081 603 437347522 570 152014734 756 165880630 284 643828791 592 679034603 990 945296506 753 634772246 993 358841577 579 187882220 393 548474830 332 910114824 482 396810419 931 485823822 126 234077532 130 734500862 897 200668180 686 235254378 390 902813173 522 393278150 910 900446611 476 655139149 368 900798063 360 905917442 973 136654783 316 521382896 809 342302165 22 637149728 222 336489045 815 275990496 930 399159616 418 385021682 526 982193209 754 864876667 280 929543717 907 300704779 392 243344492 354 164709913 889 984173677 736 125101082 7 605332586 814 11644939 76 932674180 404 728699214 866 380406901 632 748604094 279 370349459 855 634407315 115 178839938 948 942492056 466 586975890 497 1424594 771 218088400 374 846343395 143 219587880 829 665717708 651 931780129 441 676965872 481 628286537 483 227074265 101 26008253 322 945763962 39 870280957 128 726126280 305 626907992 401 877400450 663 259603048 86 992824627 852 685448508 730 599082988 15 873928249 882 880807935 424 578230828 15 213827657 284 774461255 130 883905243 893 625574816 18 185454913 955 561967712 284 184370351 1 350398330 234 870722058 740 184468044 793 84199162 33 279999282 180 424781483 648 861053803 368 445592647 797 111248031 364 182820462 211 696267655 730 773114030 773 986312736 890 519684186 554 254440459 484 238112742 687 388362159 227 810443494 899 737926722 476 189430947 827 158044406 28 98149966 835 550574756 131 879227763 890 716948946 126 680358808 432 386672006 289 907400977 724 454823353 86 947175387 628 380141339 62 871408881 192 188456401 111 154400434 158 598026941 601 431297616 610 273080021 367 616111280 365 103096142 201 230301371 500 382380181 127 727404646 129 697551585 440 929171856 845 280289673 250 760232307 253 377781337 317 834912975 4 720460587 998 747820182 105 495691244 398 970348321 907 204586591 549 994638823 304 769695031 288 106417227 113 580294229 665 814460129 470 928227253 832 945185541 345 632358220 75 978690637 791 675292759 86 153503889 11 619945520 901 894261749 841 95774593 433 140777749 142 893622788 439 617892369 348 294187468 57 773887909 418 408034901 211 909134010 203 430530980 890 741510476 230 470966375 662 93883319 464 716421529 583 935708449 375 413021456 383 341504826 643 307364688 557 29604809 597 834365155 794 832159690 850 73213827 596 46028778 987 932618689 608 230506770 840 36697112 932 969414726 874 106338643 941 632830978 736 281311836 837 829864317 605 247825932 898 531443264 96 135748982 579 204141737 227 854250164 490 689633898 89 512952088 984 603667703 920 546476754 745 400346003 345 607336196 144 194684209 179 233318208 707 360705396 386 275740445 707 555954153 665 577663998 793 77469092 353 289032386 932 260734879 737 388316070 896 277694993 812 94096523 663 495960566 548 294514594 402 86013587 828 828452796 11 159565260 426 571377570 35 694425622 554 698976692 467 511879022 296 766434353 883 983687744 428 49456710 725 804203949 349 905872439 481 65127516 651 371872871 588 38204071 849 154391074 68 847138243 703 672097161 977 394343889 242 459146683 947 130242675 402 505611511 301 131721708 340 391938278 832 603510115 435 373273438 99 904561306 100 94317279 432 241974886 936 712737064 984 830507188 251 682362359 591 429160862 935 84240878 512 880087713 145 579605356 320 325518636 378 459018159 648 233459996 259 735746503 639 963245936 644 934926359 398 311542594 378 555135138 113 345199460 863 765690098 774 81940904 311 193044634 280 392504557 688 938310167 100 744792624 174 406595845 71 900416505 103 388318326 152 820562315 744 157083577 507 458111654 831 183860364 472 26416458 886 504393411 342 665871360 628 479204910 19 74174137 753 260470395 242 605322227 56 720028085 198 375044560 780 342776167 305 559373099 14 374336622 272 723742777 115 525066049 652 260259902 98 43254645 984 96254870 488 125274837 13 842595102 339 893747364 225 924972606 579 579593817 165 167311392 95 594299366 673 360740410 104 570344618 812 488383415 64 608972137 887 158081891 674 948758819 709 826146283 642 218470145 984 206851562 120 498242442 672 612470102 344 551652162 708 65968776 141 375456721 799 190866395 288 461120223 359 572922930 552 902470260 103 314416010 232 217458377 496 711184753 703 380938743 979 328262719 246 366152673 377 943071038 591 110262346 725 525865337 210 422249063 81 816373164 756 500097637 140 366667789 712 972966551 252 76986350 586 175090028 460 911039551 541 13712196 432 200168833 488 124503732 499 518462528 557 998252824 337 906584869 594 876077863 26 348227670 997 595115966 73 498494628 380 505642397 56 861676779 959 410087950 184 3354975 167 866316473 246 749374381 719 241409518 728 579330377 101 398393040 879 595276232 984 282281253 161 539471164 213 91913342 879 965724235 323 517490909 594 36918181 902 184236402 389 386154598 236 755053176 589 171295417 246 572631959 26 419358128 418 447389962 173 260856029 12 174171047 927 583523943 235 274069019 788 322018929 828 154530534 895 323948520 467 562716657 244 314441524 829 571012450 564 369438052 933 997486196 583 845667032 858 344515589 225 577579938 66 404307624 520 955247467 706 836017906 790 987473765 249 328975388 809 320069740 439 895963581 312 711330702 812 33240780 797 178972456 212 243208359 828 501247967 894 82076194 230 817050361 500 644302476 366 491250118 309 721094899 175 569100593 397 976792545 336 6419744 387 959578000 560 549247281 901 26641840 450 196004879 316 283294650 638 685726476 579 245172146 500 995091372 233 782983449 346 889233191 107 759488898 584 697703 113 521537786 885 181716163 365 22964911 343 740482748 32 565277166 732 311676421 708 785164938 684 725051418 160 81868879 228 746125898 525 322132264 57 140077077 733 718017640 664 356971834 39 242610352 767 117029792 87 214648297 540 85358500 39 528562643 69 661799307 996 837638352 730 711359033 290 655660151 796 43862958 453 588161365 352 184325621 661 376205333 737 16562590 865 896247247 136 628690662 413 469538315 598 916910778 552 980320325 922 219583407 440 848676704 514 565268107 76 343181337 457 195323999 71 398201201 656 442932309 231 658342272 445 349135715 588 342935356 866 125804033 477 146682917 713 783025970 498 873067466 184 578322081 319 786342180 595 124539089 661 546947219 143 175648570 175 925088385 347 169770004 219 144881828 849 240631181 142 581474028 736 880582835 363 726853461 149 693698372 214 821519045 20 216766054 806 258409307 22 325798252 636 646511632 785 893274241 671 664352128 177 329346951 571 317159030 72 210222731 36 369493939 342 528887812 274 226768582 629 743829549 785 444583992 21 956733043 923 640540843 11 338394845 568 144220142 120 333658271 738 867359785 857 454411455 240 283699731 903 639569741 622 878037495 48 559178812 307 951249075 544 712267622 89 484743423 54 656927839 977 682678698 551 943489469 88 137105641 514 475515497 87 471234555 810 931691808 366 734359099 10 134591234 851 470844555 388 86859215 932 933889825 608 746404174 107 485704662 123 150669284 562 343614525 795 891730245 393 413434948 186 231926826 704 252719804 222 416047936 570 841883848 279 575445078 760 160041801 785 75472931 430 262109058 792 839834390 750 165734109 965 275882627 509 681915987 567 75376929 955 206747055 271 546885896 27 815227635 555 886778206 83 879478942 987 906572349 165 421913354 151 511321180 650 474068840 107 715008911 415 492821123 558 139737408 673 636621743 635 854285459 818 81789706 239 823579176 724 917185337 29 617539005 922 857929977 151 838315373 556 411277049 672 359129661 775 370543203 272 155065233 919 639506677 317 70244997 222 220555924 985 393807732 188 880831958 131 649137569 152 904625048 618 812048745 241 697147011 434 825000516 134 287259145 43 125909435 399 84952922 450 955945 79 148222321 875 946771246 263 177905736 607 144741490 434 661894704 305 115932578 201 691942826 442 529885625 707 616660190 494 7190530 329 17302789 841 843633542 398 763498730 543 278912134 886 354321783 855 666996451 36 777280088 222 902777597 747 351904342 487 645718306 230 624001180 272 449233894 91 241034839 117 386060522 595 864981150 208 956010772 97 817356018 627 652694950 964 116462150 730 287217677 955 939682592 5 194728636 973 198616915 911 374520105 268 964945363 123 680422057 259 118795450 769 878383403 286 46525093 333 307242155 723 627132078 669 855593938 109 877160894 239 433717222 155 763352057 419 636755397 867 969291903 572 130023739 959 126539373 713 491904576 670 332967905 395 509936537 373 213263596 645 518994971 673 637815175 319 528378196 326 843724126 908 315827243 273 933384373 268 383228214 327 197119083 191 471425108 282 706726004 294 43876649 511 803117309 289 812841649 986 103050215 627 317527719 627 306873392 554 321041765 247 179538953 201 478465865 633 743929862 921 972589354 321 333318768 615 688933177 848 807757425 141 854713604 63 277557466 674 61644908 9 744982281 804 435420312 171 751333006 779 304845335 238 740359039 195 53675297 29 457995207 149 55025507 763 676112304 852 403512637 878 701419892 412 228574769 529 512091166 97 59384508 801 821260763 848 899201529 550 563864015 644 441799225 519 238058690 389 504449692 408 471754119 28 298521393 225 238139073 802 248123006 196 232915049 586 167900056 1 65369820 58 389031035 470 815338694 520 396543149 86 144200423 478 125096729 96 820174892 719 715391682 143 562720250 85 424707090 354 524574599 482 387804824 810 14967835 187 186740920 528 416927811 729 410202084 47 184682576 682 322274626 362 46838929 139 426681299 623 210488474 916 298053350 173 708895067 360 711541691 996 828138272 316 345104025 152 825667709 818 651934344 258 219934481 873 590712243 99 231262335 341 538262620 834 944904852 273 971285599 191 6324981 337 362905780 685 299102579 573 697024504 310 182948106 568 250020204 1000 94530335 923 601809714 72 69264684 928 804304571 446 567639785 994 459913974 941 625797650 634 963394927 672 294335431 252 701841498 918 239391783 387 277035797 39 411326161 715 596598327 937 597717183 362 350250508 136 693401620 340 733944231 242 126500946 862 851704728 910 976946454 980 335968743 477 103581627 208 585291196 361 217037637 197 937996752 620 221466443 905 387776341 919 35982860 968 207396530 523 524735674 209 804527725 771 939813035 181 231920970 867 815386766 724 167570312 678 47011202 125 713105666 362 180077733 144 361043607 417 518428825 621 155752951 216 749334993 360 878027584 663 364217656 943 879063842 934 608282663 237 984017782 502 177214940 896 197295383 625 167324115 577 275042237 957 553098488 595 37789752 490 387705112 921 997840590 805 651106979 945 730867835 938 241977551 485 8248900 225 962525134 813 439101902 463 640039650 381 834063538 210 917330542 155 469719348 599 269386204 707 498950447 974 116378880 143 292354397 400 73843626 288 416342022 288 454417253 328 904162601 462 187141404 337 387623461 966 848711973 851 184172143 371 780700192 697 957008109 582 226330991 165 752439142 976 257580147 53 730465106 26 559664440 917 933053105 196 267103258 595 802845720 149 201763152 966 487736770 461 797088209 223 793299005 802 838818434 237 194938415 808 233856631 426 680306372 138 491334832 256 120511765 39 611410111 175 459514784 577 419322415 268 952618169 844 829142537 45 578357499 478 811019950 2 827623167 679 837929518 280 458149676 39 244405494 28 664940653 706 872054122 344 594089192 433 646133347 431 876191943 470 232875932 620 818535125 414 310589051 834 419288531 701 641300338 435 700786198 209 395555045 923 38940357 486 323823863 455 102172120 132 298469251 75 77764294 436 54927505 396 92010540 748 348713349 514 92002535 509 200196560 895 454744576 440 685857114 174 868143465 442 334234060 175 96412827 298 969124931 325 61674914 949 491803504 741 902624652 385 404605215 698 742804173 714 615918228 726 738934741 274 981302595 371 880117989 178 962245777 387 54492763 47 973433086 547 281933819 972 874973099 514 199010932 291 710871231 560 377685772 709 162397507 515 618165559 952 380646630 780 817120354 713 655206296 70 728580478 694 386762752 415 169755016 115 834095370 840 414761449 456 101143849 973 158979303 777 410617602 587 512629510 276 423973798 342 885639206 514 515743487 970 105356290 583 291129441 621 548818891 756 466636758 619 273851109 389 94357963 202 525569869 979 632790743 348 412703158 924 129475304 766 978531490 926 105417485 769 837110123 116 916714259 986 577348665 211 61414795 325 672836189 656 32719805 739 29047061 722 433528373 491 587658034 67 491223784 634 718499064 954 787521781 626 349102494 693 64493662 932 727757092 208 293623519 384 731884849 434 792188730 503 12366486 843 7011846 37 769097688 961 246333046 516 242427415 26 639903580 336 555623432 658 258802639 525 689066624 129 464249299 548 239909825 532 245106618 854 763706490 648 887449875 774 734062000 477 245603737 610 559640620 902 589460177 156 660893930 456 644556425 679 391778375 605 879084059 505 75787887 151 39025386 869 560768013 246 913783243 333 202985275 110 707708166 588 693384661 699 79689837 655 456105001 66 243274180 642 694460692 368 75731455 660 425138325 156 957628334 126 398177864 477 311870347 393 381832802 144 839679632 320 306939211 233 314857633 14 212535416 212 943058765 373 841297674 422 593590760 22 176864670 685 76898520 213 416366231 21 610792276 609 329542271 460 205721392 518 398851071 296 749640573 581 990512019 218 180581291 956 663623100 597 303460965 277 58783641 872 837597345 512 398390806 103 470766900 69 373724805 380 572868484 601 541031914 280 147709592 196 660747053 518 244176614 298 905015127 970 705078299 157 220344759 466 571369384 868 626785982 656 876752021 191 484043060 482 575669632 432 35819708 757 596603072 262 540912192 638 414689084 499 467808041 105 889779580 590 777853608 74 550981454 691 200221787 990 207859218 289 279508714 140 604055885 396 654808095 494 835658852 403 231658002 359 597325754 768 324810795 129 943890908 525 820974858 645 272368077 516 486696428 674 995367727 723 804454714 109 405357952 16 650569783 848 371705324 815 259961285 176 951638743 196 882646819 463 830157958 190 432151395 594 536690429 458 17175656 806 662439467 657 338530226 764 691485097 169 61157862 355 874682237 916 605542559 12 335764436 359 322835690 202 235636680 3 447164947 924 840979502 954 942944822 643 580645272 151 370146618 398 293984878 591 695502084 611 915426557 328 111534940 982 599620675 818 533717976 819 396829948 184 903400623 833 235855183 671 711578389 57 623354180 983 778284319 320 549019529 94 744691889 403 663672200 140 545137404 474 944109368 34 590188806 476 361359515 100 460478847 263 41469980 804 143877206 772 815824668 729 429547404 572 264045644 483 206201948 302 761129556 914 295429344 262 830291849 435 733828146 577 247902401 850 261443502 749 499702272 906 980198782 575 634072578 557 819550662 627 213363625 103 93649922 860 711075217 346 52233950 27 431587358 493 192271527 218 896491334 606 62667534 63 75988003 677 328346165 317 240807778 945 547815897 241 515949940 462 345076202 107 248137154 975 919871569 652 409828861 954 377592361 586 485448553 810 879462088 464 24018007 943 604380261 513 853483154 638 519238368 814 699624277 58 481802300 886 990162717 497 61086998 778 194793874 727 593066184 816 141895314 573 356277306 961 997848872 913 439338222 160 269128455 140 131725912 833 502705069 335 39287168 629 623334745 589 146138750 104 356130794 430 678197226 248 676169118 306 629147506 447 101386516 224 716441298 598 221679150 196 972091193 484 750705199 791 636150710 764 28211118 199 883255864 264 682785198 675 466234589 487 258392518 998 854342089 842 557708563 700 160033053 917 800974125 894 17959091 631 106765392 108 865411085 393 759705255 262 209733703 211 112732045 48 87381539 962 891890072 159 638933735 577 900667235 913 177513574 224 837968941 379 319173596 272 132841418 8 884658528 3 263189524 397 779894561 769 558645008 898 663544950 15 60879949 367 952597390 443 543353683 739 425710883 934 64475922 916 105374175 562 637512033 690 137503869 984 688294281 478 145209799 379 257742689 82 733900804 834 210680454 654 551143598 689 369165434 277 86275615 62 254105062 84 885149462 805 858064636 878 300369810 107 508308199 954 792317611 838 240132828 952 207057749 420 241972961 741 267699367 99 157782899 70 356623509 446 226288534 545 584824237 768 142199589 151 921344974 496 727659045 635 414224887 23 694889455 599 651094677 139 898668673 548 176578941 163 494853800 998 941339886 846 785574076 550 682939397 423 143829612 601 544926672 734 780815713 766 13956357 811 615184015 149 428421540 883 268882507 103 715263098 552 905418534 531 206553254 322 261915007 244 911544856 183 173828884 627 892249438 936 417951557 770 884273767 720 395251591 15 508648788 708 546567264 916 49795161 2 360221959 38 448131112 434 915550027 205 441478735 180 545289278 705 667150095 999 26367331 733 887478756 443 779838903 922 199714271 939 325770914 853 527069543 164 470300512 14 840151606 90 233364057 84 422969253 135 83023922 598 947492792 233 270970918 482 291164494 572 188804154 913 306044301 801 15932443 840 910613548 652 428618329 966 473384831 159 271848474 913 340342742 550 243326410 581 689343589 900 472927900 669 193123029 510 181036903 717 479654034 402 28611742 553 932691441 705 625553220 952 970006568 292 394455376 363 941532306 89 966852946 692 50786881 5 712367016 482 630614693 879 800162708 935 65137383 844 155761257 410 122420632 259 124884302 523 45428672 909 534738794 109 597665711 449 836737516 746 918373083 663 535377179 77 127690101 380 231330921 480 664545273 21 231517222 216 487265663 834 302146785 456 394707110 113 626871034 484 555393787 159 937258087 902 478512521 950 708717549 413 893349190 371 670157012 975 141740683 813 519024876 12 968235393 17 121972548 174 393968843 871 762693149 167 484681666 803 872089107 926 358943032 351 129557092 84 688129410 956 103787219 518 381678582 556 104982009 611 180615861 55 581299387 689 828943012 654 798188698 898 121457760 526 924140337 545 792643017 361 594162238 67 252776685 980 493966336 407 246968086 849 58409166 324 187635953 658 317782254 535 532934215 628 965384178 740 966837210 324 49860660 711 218743589 810 570560613 319 997753131 792 230032539 405 133534439 434 950874355 177 459630897 645 197891806 59 588680263 794 342411026 412 622169117 611 771962203 718 941377642 31 173070100 978 635559368 506 17365882 930 726184378 30 606494094 378 899545200 410 983085180 679 578509116 222 919347314 51 271036295 847 877098619 456 471156210 914 420099451 513 197786240 851 643081251 79 160213923 61 550691498 82 953689096 29 447919102 281 859485006 651 940885675 177 687729078 82 474507357 650 970683313 365 940368906 785 415299890 827 474271629 544 302644115 804 504331420 541 578382076 344 685048764 997 107230013 184 571090027 332 753330984 680 847960333 481 879644049 675 978946002 770 903287329 808 410732725 529 968230703 975 443740574 510 102263641 688 740066287 568 950919620 35 788678897 548 196417140 166 288579326 920 374324484 950 323234806 312 391000639 173 265323677 353 796912700 789 768297216 238 747623153 892 229040638 315 563002127 993 71092156 147 520121874 685 74308281 603 119769454 264 455361762 631 691131533 103 888465893 381 882214746 184 883872806 671 56691663 286 464137997 635 640700376 780 847283566 274 191538614 317 460249466 240 405873852 165 801893143 484 481259033 322 395995764 482 217240009 802 849805143 436 398461284 831 876512242 205 496364919 127 279905400 64 181244583 601 915528291 819 875873137 644 570290625 712 784104841 80 630458220 705 753742791 336 241571501 389 11947719 259 420739896 341 449857539 1 150221353 705 628978196 676 979227367 453 243249999 368 144754804 941 39218741 949 768159483 193 111556914 976 378231861 186 323754899 663 423300131 496 754149622 490 68740764 567 780080818 408 148031497 183 550520605 496 783081011 694 202948967 195 451773941 308 768335189 587 46442285 57 362417402 119 99010437 864 621618649 861 793324225 374 602809344 746 466480277 992 241052933 762 230759023 779 496301413 923 789132542 104 273968655 243 848608946 356 567731390 894 395917315 36 798409224 296 117133232 538 766671466 452 190480571 494 416888137 926 140512776 923 79739749 720 857613675 416 379261205 973 788294691 18 553340111 918 846862875 914 423122619 892 52011927 812 551276475 502 689047920 321 72758460 207 445856125 596 998576298 886 309021413 119 651254607 771 465212985 404 808564305 887 192178803 906 578250547 134 843482128 831 702663732 820 320645549 956 441494642 753 59958734 318 635728259 262 405283737 357 497762119 266 603166767 446 111221601 986 238229679 904 714232020 11 166631824 825 597096801 642 101415102 92 328558653 241 980407591 261 269629777 3 395650968 106 409883204 123 177657371 373 907752309 520 5037210 954 902366672 471 266242125 17 845070685 890 409841953 560 873946257 392 339818532 528 762181859 382 870625036 630 846576231 424 25474917 632 351197063 142 198015459 479 622717407 428 16319867 634 202890409 369 870724926 683 454646900 877 361021385 979 952915573 665 787088838 884 976496598 639 446492939 480 867191763 409 748937566 209 366605837 899 11854433 520 296936713 6 632554538 764 675504099 703 925820711 892 567224653 234 111714281 393 727721624 270 691129046 780 664598985 956 545095653 734 993613288 576 690487291 633 651781058 798 783505633 545 845446618 826 605863896 202 923694248 766 861512839 987 695692559 389 263551302 48 183426835 786 96108125 55 333702211 656 990259660 369 782105524 89 181340310 71 689946413 217 925278604 500 721020326 849 494804588 793 459528015 713 991704705 187 717574857 329 288795426 729 893916463 789 107747373 3 566713853 530 988674603 899 845996069 427 432362278 942 688171084 251 627271178 382 758882146 672 60612940 316 469778447 556 762319763 540 268639335 203 348787041 157 15450931 320 546464184 615 649312959 948 474256554 372 831515694 771 825200366 166 415434914 504 643149512 708 11986655 847 180163469 224 824869919 408 726068240 213 513628905 879 417270401 391 135102260 820 768686400 516 303077993 577 546209465 134 133548263 901 508939968 358 363382474 816 774718804 699 160319794 557 457409728 438 338359370 292 231538691 264 611610672 865 28413470 653 266135550 48 811857248 982 977033628 313 814562234 910 38315047 90 64663945 67 109695710 411 339282747 248 103357358 893 927073732 381 934570554 273 425745341 190 744386182 353 72826858 670 939442477 312 932853786 669 263475955 922 654692324 445 110701215 815 78286613 786 953328718 673 485912082 571 615478520 114 507387070 348 54351381 878 810784679 10 592081317 898 519638200 235 457030049 884 805666823 746 342755682 962 449417575 601 652108708 543 687132798 416 22728963 919 826398946 790 501962541 705 977585003 42 597339667 472 727080015 748 351181850 216 688372290 944 995659404 882 282411994 570 183227190 253 138669852 421 231640914 929 817325519 380 104694416 106 98876775 289 22216952 994 143163506 828 426574115 99 77222424 557 123178306 918 25584604 436 960877271 940 914323934 961 877284765 321 810811912 889 73469129 280 740674358 63 576690506 35 514204913 806 641363705 631 497169834 188 537796719 988 880073938 466 291548384 579 810783089 658 275657412 147 789756646 961 14045050 538 430912401 247 638804244 146 650097489 423 508938845 141 595980696 622 787197909 714 7729966 40 357794907 622 426971151 452 990681823 864 67493649 971 302152286 66 916529867 943 481538310 399 178908064 863 671040449 663 521529498 42 689440731 22 854506084 481 845568406 216 902071496 797 63902175 187 965349679 169 135895318 613 204377616 42 269008747 231 413667406 360 535251146 898 33944670 336 857520391 71 133777179 430 558748488 707 460722119 483 183052625 647 442830687 698 492732545 857 422265351 374 762141777 328 970965411 85 757135121 324 847703081 13 373605620 299 401716772 177 476977228 194 143722202 584 901940350 323 79181997 821 392013071 433 959580473 581 253168440 164 264711961 426 94460563 763 626299417 969 322143521 857 296650366 113 747472889 84 806928766 581 88723592 882 168741368 419 747835502 179 244038785 791 362508492 361 981078053 365 173580889 261 916478543 257 779656192 740 897423707 177 509615690 693 129500884 581 442967165 163 341604412 868 675128545 272 632808351 555 417365098 526 814550712 401 878867177 987 523917147 895 410112433 258 517352118 459 546146384 404 401746202 931 878247953 330 973232100 744 107793454 280 964430106 542 314696955 517 884726514 692 552470618 56 693509769 839 888801832 115 280564641 61 513756064 81 635868209 908 671083778 565 336548851 567 593368481 271 909328889 481 404381262 889 496430995 776 510023353 205 618514134 379 599398554 216 544935423 62 731315699 355 418459751 508 23574273 464 603819504 77 850425034 112 674875 405 29708082 529 881638159 175 130256866 104 55668223 924 162689459 482 729943617 133 875757631 223 121280222 548 932281851 480 739785378 364 271896564 763 366880441 528 363660158 416 399479765 958 602018458 287 220178822 720 382145552 720 976851389 565 297116829 179 836230209 373 117512301 56 453104447 584 810067069 524 609762319 368 702036824 561 904827791 344 680341829 108 19044355 935 144270323 829 851662078 234 380533161 240 830246252 43 637070585 963 322066126 750 775068931 996 341724368 965 129542317 620 486627799 508 115866348 87 15528337 867 241753246 97 837943937 198 751123889 130 299152705 976 725480449 825 772692423 397 182695082 249 384136272 110 376496540 161 834087588 881 444443447 910 641430500 621 693316712 731 209313297 816 523095834 295 390400249 493 14886460 887 61933154 682 434475492 390 618689275 153 662598986 341 976570023 779 147175818 42 398887112 409 5007280 752 652910323 595 20599385 291 893384371 123 208827792 937 774340308 533 719715275 947 602088295 674 421663054 243 245351609 462 87045142 892 344845222 223 35495195 6 172565490 45 579367643 710 262502004 486 35005736 980 492636728 976 46959007 909 972345288 657 824650935 700 994721570 695 949573659 533 56103899 750 467201583 182 48384145 91 824773141 671 464539902 832 991927270 646 579225787 248 691435314 992 549497671 672 428533646 713 644180434 652 843539484 524 210425521 873 611645641 865 539466010 903 56781459 151 577840341 337 960289605 770 202560550 373 870452544 965 54498728 160 787241855 552 371143248 367 660771706 694 935411172 732 465377164 195 604833615 883 212920558 702 342245666 413 694744846 892 955785310 76 665647213 860 652299273 629 692840406 670 545276953 459 612513114 282 90010488 566 26944683 764 248526921 507 157407660 819 437066036 769 918864953 192 926979309 65 846120250 867 985385046 160 113105222 183 165442022 621 799139838 557 381092128 236 876572570 233 950775536 671 672646849 74 47000075 980 114067467 353 587271247 284 864269317 839 431755338 817 305606740 395 476344077 122 189386416 998 781594601 178 433052142 289 50315350 548 37340238 146 18407187 181 365591485 712 340712767 471 106985869 190 178136576 49 231791894 978 867987881 1 850883292 787 950894003 716 617391206 901 532548514 300 492686103 695 832591911 385 764033008 220 523023515 829 674496258 910 270234181 129 635173787 811 414368736 851 104355852 240 22523288 948 384085352 869 628255196 700 851744884 987 90920091 40 196668738 820 412632792 771 301384745 580 589955408 715 882206787 581 235832039 460 469658812 986 707287840 770 603349920 131 29116346 137 73665038 536 196703713 906 543295307 108 728642375 98 507724628 875 11310078 273 86506340 398 39567308 356 454397780 805 343456097 272 15209957 120 320985488 749 972828943 18 1847689 0 771845404 43 951913088 774 559134594 370 644732250 178 701775324 488 743376114 497 923931406 618 116972769 936 332135843 841 126203303 196 832266913 772 764352117 559 694154876 146 415321774 151 84990410 227 844090370 181 118845357 147 60262723 465 432267844 548 722384355 359 570520912 389 731960911 648 179306847 988 88691782 766 311075085 357 955578873 663 236090857 43 737014152 980 998049706 395 463294409 229 986309629 309 88196614 430 448051058 757 845269275 289 825188535 521 300654209 289 288675705 688 407254594 61 799506353 770 663452339 793 601558683 263 563460783 43 442668798 508 937590678 874 491305057 220 517610113 919 40810993 920 65703248 178 274639188 622 69811697 983 317720158 916 426789366 28 445146142 582 298494498 115 639323113 933 187767464 717 309213396 452 949053251 420 589151111 662 585404194 30 49867322 60 804061246 358 288359869 865 978056562 731 477618643 463 506962671 620 254147636 798 356529282 313 757917496 309 165242648 335 774118804 337 691200349 619 603253751 204 975070913 792 401043594 904 975920581 793 289305010 480 81975042 667 687701217 658 718053725 521 759064887 925 448987321 401 479972949 317 808035441 772 628210815 898 60820439 743 508243358 183 492534708 341 352968194 817 616570210 961 80951365 534 468802660 333 479316025 744 264298849 808 726674577 941 898382702 943 511308739 428 440752494 271 216685376 822 882765850 176 961543567 988 285142837 740 50366445 282 632287357 799 501883522 559 538155337 681 354952717 908 463645150 813 881533454 174 918564323 428 319854143 201 701232957 895 655667565 859 468284525 401 835009985 429 106883413 549 575132465 351 707649328 390 631594121 755 13668692 708 320645555 638 284091006 540 400251587 399 10484013 268 699629081 412 930141306 921 55368680 176 874150999 826 834743446 246 376382687 126 38000443 794 282863303 226 311663835 973 885051440 723 346177446 202 541886398 23 629492960 499 92569887 516 795236155 214 684270512 155 815865450 450 856774813 953 275633723 751 391172767 476 878050899 917 74205229 402 448343030 531 425812451 174 431789398 979 564325736 869 256781173 793 403031887 903 416925949 933 360892364 472 669858262 439 9835353 83 984354933 676 904367561 919 979471029 757 209564051 381 632624336 297 934997047 977 311582095 32 689549678 539 398540337 681 905340707 832 244902059 920 41879216 679 657697826 866 521040948 811 299588389 606 375041256 644 75666485 155 632387179 358 579299559 18 771222719 982 195039312 551 822017196 218 337553835 173 221431830 932 839580183 589 700873079 967 371346957 710 234567658 537 667496633 991 442221894 666 316274737 87 81663364 369 558907995 844 512577284 230 297687835 167 325942719 212 647835386 299 991436983 673 555236467 767 711390360 417 294214839 12 102701218 616 712150435 676 523167492 140 61777453 214 118566285 78 574560147 796 161191632 725 719485942 332 694700319 201 442693167 231 981355945 29 722977199 772 426396171 178 12258106 516 204534283 143 792625414 995 660111472 753 235189399 282 687771978 0 915867819 21 736787090 562 475432142 257 388563879 661 367493512 502 137872634 995 538656828 158 127327408 2 88786436 183 755126417 359 187746912 311 164376893 308 275823709 569 883886216 615 275445385 103 830968001 544 213037239 79 371033597 678 573475089 418 712453616 96 927456206 45 497818529 625 873970481 974 870814972 627 427843129 465 208717385 490 92301909 633 435276428 765 911801477 837 478511968 832 150523011 650 877659019 821 880343365 952 591578283 323 955235919 202 922386026 592 380325130 549 132487986 331 423654671 685 22705981 761 204360311 419 604320251 419 384954733 302 286360751 462 459027856 36 219491116 847 904879874 854 446372564 583 605155460 211 470836261 886 923911008 838 553286760 684 348119906 117 867010791 810 725297574 130 383692288 907 822628125 671 318171977 4 935075277 693 849132782 667 857621253 906 604838276 56 131355517 487 878899073 744 1151941 671 14260308 182 589363121 504 917637355 110 317936539 313 989227864 656 850796614 905 862356888 873 744745054 183 689408547 779 895149795 834 715585972 597 816820468 916 230263472 842 991970747 191 791937500 117 407166041 98 806642100 142 36843073 459 975938746 39 484265150 149 958047492 984 513144744 671 907424796 377 710832215 926 904652540 926 227105775 682 172563097 366 804280373 837 992715771 103 654400442 966 491757299 122 305739241 472 425673948 475 233334575 885 476903062 444 486941760 55 295409225 91 340576777 830 903835590 397 316325280 577 204142323 28 728318222 836 146326289 439 878670431 745 76839226 575 433742353 628 245042038 475 11133977 356 415533927 971 73529213 296 878696275 322 828009584 45 690958643 373 351426581 602 411780314 915 305472873 176 167535162 236 5543149 381 72992484 357 143073303 278 445110011 392 648621678 74 924947792 6 355415787 407 35893283 611 821891399 320 908563123 605 39015537 680 660234663 741 353574768 74 541198693 564 235657008 408 48994559 778 214814233 846 3449218 166 14626071 483 101220445 523 12668139 701 310135525 317 404679533 648 97188952 373 484523502 649 379113984 948 39303996 251 674579387 552 483119867 335 856537342 814 536997026 641 825301968 481 738180162 540 451658236 989 707367609 333 96968289 504 686519443 313 631001653 952 332524146 620 509225281 116 80957681 76 838006098 434 820560964 428 677807096 433 788279189 941 858892244 601 445041231 725 13768593 824 579353227 429 483477759 243 943676073 884 243517497 681 616385043 410 294780504 999 481768067 300 936208606 528 485509749 626 632228901 244 243670937 976 629060038 210 430334482 787 454129714 687 556504523 54 525485851 714 338692557 721 416806030 440 670688845 702 12489080 757 239848696 953 64213164 134 352638069 873 152135274 13 856755316 817 778670512 599 826730550 747 90365207 791 771358749 552 669763073 745 564817386 494 645236148 242 399988950 597 964231727 146 507734117 262 109181006 730 92278563 592 410135478 799 336919442 274 407668441 173 248205334 178 170328126 622 391887957 83 837568737 501 232857935 173 424991242 587 626113067 972 441263726 578 498779216 532 432166693 586 828807355 819 343554425 827 861280739 394 359017947 476 941157743 269 263893647 707 790638073 263 461823596 240 61629216 279 567525157 779 88371236 143 471870742 236 404952236 652 126435659 778 689514118 654 619952482 237 656846933 582 458313823 47 503467614 362 963372342 418 522681394 720 490957823 897 646668324 701 619426071 954 780795387 70 360013296 885 845864512 148 421335650 154 557223180 901 81611329 84 560496857 761 590132005 356 434653556 499 640432351 283 443159480 887 977943423 650 427126150 168 653548780 839 226578933 93 208136052 224 321079567 818 644567612 111 397454015 718 803305045 966 953377732 738 745656839 744 602712223 61 525450486 389 959854285 268 106504355 537 188014909 283 698886156 96 829354804 117 847259972 722 419992997 47 879719385 13 928912026 709 478825415 121 406652285 542 430420435 53 305156683 968 617753041 325 490007577 848 915348669 293 11107016 380 550101118 774 554870649 780 250924072 377 406126208 757 241146117 948 163646015 956 707872028 527 413155408 902 289921188 688 9440729 8 316901335 568 473844288 333 827315859 780 422051953 749 117680772 20 763698987 953 517315451 142 502897500 542 485627765 203 843432786 530 784088368 516 502283776 481 659384419 547 665114370 214 455763416 870 557973824 458 143849114 62 734974593 715 222499354 514 900888814 885 558589649 496 239662066 369 351503926 837 842047880 231 464315561 713 823400495 727 125420271 229 616109616 202 79707284 411 311500612 123 163399948 190 41291616 677 693965707 407 844799320 704 748885021 122 733807081 842 860700134 112 75160767 371 357994015 120 809499360 488 929574282 648 804736422 877 471365901 842 819877691 614 523336192 157 538489967 99 509731853 372 348316305 205 590371589 78 374865060 229 481419418 688 839679594 339 547781496 718 48011799 954 367194719 4 2580745 597 737228375 12 575750267 775 587206089 107 650557498 981 333769358 671 804383754 248 615644180 595 75049083 917 855647990 535 685022368 692 760971088 191 144363782 420 505848069 744 775628240 90 377637991 102 824657325 863 328181807 230 832187442 942 696467022 373 58296141 829 34371949 229 392240228 979 15232742 943 407872641 542 945200038 681 557852706 7 257566307 382 455753748 381 601829524 728 823057266 578 689617622 597 419003876 69 359466834 254 787633054 636 314141031 508 548395147 161 97485465 139 155805183 486 341396061 988 966795266 689 848761333 279 323705172 469 920647888 166 683810751 169 496071708 659 486367398 441 877793103 353 524245543 183 124822885 745 378256074 362 197317589 571 704718421 433 457524293 39 952696712 86 305216319 748 11545226 944 321952907 337 614366068 881 109241026 450 175088835 224 51112459 287 485071184 989 730298830 197 374139994 752 273983660 280 875215401 630 268511015 728 521910380 618 32637933 392 218468466 821 449148769 97 80735306 378 571213690 67 201633698 675 448107280 477 299704950 176 488574465 923 942552078 892 163003695 353 49017515 549 640103175 191 983622344 676 164149286 246 115341418 473 671779903 277 791979745 541 706221809 298 498249965 591 106330080 715 108124304 334 711321895 186 476420938 951 191199396 891 211878622 373 700536833 886 171464286 100 594376834 854 459843405 692 914278714 98 568418923 97 240605828 306 990709475 289 890383348 515 579655278 689 159233928 170 102792797 257 698315454 362 267674133 447 929879032 455 809490708 523 732406158 653 742566287 626 615441785 341 365325368 899 977509339 104 995101567 828 350946171 927 582070162 534 231422255 584 952217411 998 660957541 182 642982855 190 529970000 407 916494979 437 773901356 838 169810568 857 197867604 147 30926107 649 801715276 133 974811484 747 906006991 709 977845215 922 398689563 723 418471 110 48431935 768 167353 707 712569335 288 765388927 146 85491844 601 376029219 828 157318605 276 374744443 213 567484205 597 303544902 836 166304185 671 401055577 545 914001974 657 304263419 250 618306142 980 652085466 787 77322297 561 936139665 527 410502150 897 132449000 109 264041793 728 827559295 148 186366065 286 968780575 147 717774612 439 401854408 316 97935773 805 487116351 414 893533682 34 931485761 0 606979584 613 392019205 67 118762789 885 645621113 740 117927780 237 663203077 83 119583638 461 632704937 106 949043170 75 49208999 457 280592615 130 629247109 279 933021664 849 647225469 704 274801576 994 798783473 141 801249409 770 756203079 749 792157343 72 126784007 270 393837797 459 647240081 415 703279613 743 763958873 22 493317617 281 639188657 557 203906220 824 304176205 212 410746674 695 164292351 418 33469875 522 173188439 649 977769919 527 861240838 551 664932753 726 586679959 622 942169059 581 706465395 870 762590991 843 644050507 727 887701948 339 372954476 817 588745129 132 928470615 447 816059392 999 149166176 57 986747232 597 895857403 826 625083885 899 833493335 168 675753103 364 252955675 694 742554027 174 653883077 690 590945941 730 769654152 721 552431855 938 169462989 789 802754757 205 337964525 157 708210519 826 313558798 410 943955330 825 379241276 540 933677459 794 227444595 927 353260571 874 573721215 52 323884521 713 924658816 552 144974704 784 520277492 676 884584054 666 811779782 662 549787849 468 69498246 216 134538968 178 712137799 16 479157489 196 286936084 524 237926156 758 300864108 788 978742986 964 512186820 932 660070085 337 570554424 93 471902547 442 745759536 92 976611550 129 388821338 366 211155346 598 60287840 759 162507442 594 114596443 426 120115438 423 472840380 24 647914860 783 326198928 759 785169257 495 204315849 769 233627599 761 831204983 15 415089296 593 300281443 618 645783392 444 555764918 220 972200055 834 523373158 986 736008972 565 409621834 96 702264614 433 516642313 378 454891346 491 723393571 326 205579466 12 21344114 218 650890466 370 290533070 176 967516786 766 443294343 203 23297039 509 373709211 892 380550179 886 144559196 175 276716976 429 936067353 190 89889966 61 769725648 699 181567211 947 759031204 197 765593674 845 430782797 670 225245428 676 719404733 291 266716165 311 542373388 60 272243140 50 850961424 15 304016088 829 12880897 267 469999198 871 445046951 776 626635904 275 582065125 279 402368094 121 993773095 246 957031657 151 72555012 918 437692342 850 347217687 703 580922928 950 89458686 973 727897402 861 292706184 256 62883413 396 557658379 710 335621877 13 897185724 543 201210908 443 570060504 532 824209317 72 649769129 390 564399800 123 197436169 156 965357944 165 363570476 491 693847456 452 433463969 132 938977118 218 415616122 994 76370466 866 586994589 234 754895174 128 910057692 465 304050360 997 15688026 72 138784967 26 914998876 157 183842940 932 553282391 674 618163391 740 386634450 134 155030516 736 588907264 117 77581523 132 538548244 290 636947153 841 463737947 980 981928980 998 726939462 317 7143786 852 146785374 860 179281799 508 142301802 845 351170381 783 78782035 5 650257591 862 577795149 633 33654437 711 432935312 432 200299872 626 318245171 661 993381433 138 718583894 991 652359179 92 762535722 18 341365761 461 246529088 8 237176199 371 107011746 875 447676027 40 78235824 451 889736578 236 204487202 139 110078597 706 348404334 86 848658803 295 547958617 241 743810875 413 582870860 562 599018379 607 324530668 822 289224763 94 39801546 744 823848921 220 900734962 616 189284989 838 320852151 468 803086168 887 120521411 894 126193540 421 633248760 415 67240704 209 171215462 332 869321639 886 705006791 661 671288212 204 409586594 254 740419233 516 839209322 846 884423348 167 188810445 180 462578922 152 190488643 640 913032601 887 503362503 294 342127068 588 558026869 61 29869224 738 326064703 635 263506912 360 146990180 366 588379493 685 511787487 136 887168963 294 895475979 613 511484190 34 135927493 674 66923760 653 267393903 94 304584855 488 482639680 789 102586730 340 236481792 412 755391759 111 881340702 228 442488336 645 562446475 277 261300402 555 940687311 203 879426903 412 943831052 314 604778920 454 848722879 478 723648993 925 753554013 506 298196674 329 282908589 23 580077882 715 27936887 881 921470744 800 809594312 351 651018872 785 969690878 999 936082205 449 542438956 966 99052010 711 549451758 55 181378603 199 455940052 188 383388129 629 622812585 236 739822848 922 932033292 474 725571852 449 728419225 289 130005917 748 883629764 371 722704951 96 620790480 583 787913021 286 436805806 606 230201168 551 252903439 777 159192586 847 245946760 867 345213252 61 385339140 522 479436828 364 956732309 477 157898291 500 388035412 475 533134195 672 2952684 67 876519526 281 556824046 482 278277312 387 758229490 913 500398675 639 451479335 83 155701576 629 885414845 167 51129834 366 651026193 681 811091802 901 241030819 865 269939121 263 436786602 264 13600543 947 686917363 468 426777430 759 4222134 819 605057256 878 369568656 493 294988704 131 293007013 798 838228264 109 860057755 769 334754809 429 92113637 524 898242094 604 428825188 786 844515805 641 477597266 168 116596236 284 156223905 574 66757852 604 891280247 39 950553000 892 91784955 741 124772787 119 410747520 4 397720079 704 843388878 113 240131884 230 275252114 296 782825741 218 810127252 978 96258523 120 453048069 135 995881338 753 124456871 682 775764980 202 66349202 602 190061510 235 910326931 322 751949809 846 321559600 732 79914437 805 349980618 829 829082406 721 474028219 85 769695800 831 841749665 299 116728962 567 641921340 698 139652493 735 604591070 563 849627641 922 137692124 194 24482816 238 938202513 287 204389509 45 816578418 796 627491112 47 136360470 100 710478125 258 577565138 382 577175075 192 906911395 1000 129144529 595 503838000 893 725433283 798 359348972 606 641141531 235 338164143 613 217027973 140 49558623 954 84613407 519 466466975 233 686674898 184 899038786 458 224190535 353 710662487 734 848587462 255 730472382 712 585080169 413 404259516 249 827791879 598 606731866 417 277128248 352 411448023 530 389877757 998 72786548 104 68388967 783 880533520 321 722641274 219 341343371 851 915826451 415 154312964 151 990862646 336 391437356 128 610398462 814 369470210 931 407531042 551 220312864 288 298646633 802 919764586 927 236183818 257 365566687 585 40411681 284 247450522 860 605609913 494 153019538 926 70301032 120 847165995 455 191557989 239 814806457 712 175515192 685 988333055 904 698730844 306 306516270 794 624496898 517 119303043 721 213289765 357 440355038 142 956015764 19 841207361 455 468550976 395 285408024 454 708122777 407 780660893 511 985806748 113 498992504 210 592681061 951 965068293 302 225739456 7 109938487 724 609175990 729 237156129 950 105732254 988 947315641 762 249157411 417 823181278 907 181889459 750 802104209 184 90688050 798 509572141 788 326986941 557 115993726 795 670396900 558 523548702 9 69589958 672 87106900 969 442126114 223 722811846 353 624013578 902 55867752 846 537579532 307 378745159 772 487046238 629 689337623 57 690665991 870 843490216 198 431208468 86 915382576 333 862833451 354 760704518 532 793624057 952 916211311 677 895532027 1 390122843 214 972024446 149 365070999 2 374364835 295 861468681 352 713154027 26 193627509 2 162720274 766 510799305 266 740414836 939 387503587 182 66757973 100 332152518 139 400461072 203 421366890 592 579409001 616 278324516 686 138364223 444 311906311 812 189182804 815 159055526 686 137017387 282 495979965 239 111819686 499 838761595 435 56638502 778 620143353 193 35325474 710 698089353 611 384618656 237 65667069 874 912451937 525 713951953 986 632473463 818 318000207 146 202867095 345 629675722 652 580600360 913 412075999 526 726079880 603 151392611 555 251358754 510 739826913 610 626111738 961 878098603 582 285561154 734 58495560 566 352407303 63 736613465 246 256463674 58 204336735 586 548914831 689 774670213 320 997920261 798 686624131 429 159107867 327 185253236 148 190500339 834 686292969 799 428906733 295 942783810 285 726144850 709 256875748 910 597155091 252 49936082 500 354395394 542 270439064 436 628982452 261 694107047 183 756993019 468 80021010 360 534540729 826 454599574 53 866372136 297 901497248 765 353216173 669 543944688 717 453128516 291 318222983 482 757571747 511 366902361 610 429572739 760 856854281 21 245298015 961 567908596 47 483968777 673 911547385 318 23789451 676 234734189 682 433652148 807 236653312 160 346163486 443 124500541 776 240459735 959 769415030 524 763666469 671 177618055 329 289897908 505 980756151 664 526722848 49 506924176 466 131272568 785 367210746 185 274148245 494 732407010 55 997152994 751 303536280 498 224101127 440 403586145 422 236326451 408 638611522 920 222715498 291 391592506 647 711398268 780 303547601 516 958662554 787 601593261 238 544968815 51 574434496 324 321276267 670 42616808 719 704180390 855 394851836 872 806915041 617 752905119 65 463119014 823 190121474 716 330452814 465 823595780 475 824580633 206 645187355 610 969499920 359 544066091 140 808116279 148 647430107 715 956084093 970 778645293 932 836091743 249 598202231 942 260727478 105 443880975 406 436081331 746 513510897 630 498985687 521 16827602 906 813915341 992 837893910 531 205387792 881 205651637 890 804486802 615 425105719 736 945730327 485 448618247 297 918568926 664 687977819 878 338469917 399 111002691 93 910543307 262 220656776 201 632202060 323 354159488 440 778243876 831 325389268 190 506521070 25 548412723 509 610691327 496 377940613 595 332284661 960 242421532 222 93726053 157 932166571 249 949299642 69 820172 795 220750528 517 966481796 763 634713090 255 699662838 142 38115557 984 578716603 547 417501392 549 858209473 942 120240181 646 428011853 677 674397407 156 502682806 880 33852405 80 799382767 197 842888320 613 414344544 23 885822699 554 269597128 406 517410168 65 404221329 26 673928219 888 404929743 808 883501595 43 386888662 318 935760073 196 764581521 251 439756507 659 16428140 248 88816018 570 431632580 45 454057102 78 949622073 792 914127990 745 988787808 302 315561604 250 114781624 362 867854916 770 9444166 327 16117134 386 878930768 466 441216979 712 387331167 345 675144631 931 570360401 679 675092159 264 163078051 779 540809384 698 209362709 199 231541157 296 455839186 761 960739126 264 342631887 298 960913293 290 366618231 331 497026119 42 553056401 3 251401811 517 220588328 292 26043409 50 862460464 282 743183446 857 510167431 112 13449168 691 52344504 778 949429819 745 396409038 655 562854661 653 603146597 807 740980499 619 407432914 2 120239975 132 332635635 617 174708698 935 328598592 756 584749965 333 480105363 71 795627768 894 82249589 991 520112857 101 971185101 770 230554981 712 13628438 988 16095035 650 684211336 276 181873289 499 949172261 413 228426518 213 804312312 212 347114141 85 216555802 392 77278311 644 902949891 641 914030434 635 171305647 318 715554035 981 771622820 673 702205497 7 879822447 840 61577293 731 636957160 319 637676846 296 553600129 695 326081403 861 190441680 524 985734284 981 373141928 953 946375344 991 446082389 440 561752538 486 989719157 982 728655623 515 162227430 404 418082611 777 420812439 846 360874066 309 697490057 595 555542372 464 221656899 553 243112320 965 735959531 360 92430056 385 431913 318 806540674 899 25708389 708 576024511 416 949435107 128 22624595 104 585662456 351 110545397 107 384759613 170 904166400 212 833958805 850 118623264 217 663672597 918 583385438 83 361370829 399 644314921 233 646538040 956 309911989 265 390542047 227 503260010 783 69202325 611 298415628 65 990307174 746 29393941 382 847709743 37 840284632 511 328216920 516 595946074 794 222621968 595 604749988 674 37172706 66 663080213 364 851080926 577 185013972 889 545706271 694 374677406 126 856837335 517 205344076 321 768566759 975 959249990 703 553620007 639 283738180 465 280065165 317 387786191 331 305540079 920 148527070 3 384727019 860 387662874 817 735960571 102 642518229 173 366373601 879 436410667 293 747171191 910 728468533 110 795613046 311 320421482 43 889318807 437 640876263 840 924439414 226 304603819 654 289587688 292 227516731 336 229218841 912 395927061 478 341187832 80 347022842 14 930340652 696 859951153 573 854769377 532 558368000 277 106787724 867 194077140 357 400696680 890 132401928 290 530697881 924 71867836 504 852307767 79 31439442 285 214852471 445 464298724 758 971097888 279 939201511 849 483791290 561 466163043 891 590045711 925 50523619 669 432406600 287 581153675 378 466691127 204 627308130 63 602754811 128 693915270 356 59453945 634 960733690 441 161168434 680 124432438 650 394459985 759 810355950 117 920269851 948 633258659 772 131244548 774 457454285 947 445702339 96 361954903 817 251684126 962 766110134 306 428312972 981 528850663 478 358578974 153 574176170 526 136317728 792 887858389 614 995017819 732 171621028 990 605998530 613 838499334 910 445018387 355 121479969 378 373847523 814 247186224 168 852906199 929 431572221 411 324213676 932 28744394 993 692360519 692 791513266 483 97655907 343 474506766 951 131256281 67 110144061 531 814892964 960 6873428 428 172293762 190 652189042 806 440699672 932 215127462 234 502350795 95 883013699 517 383988000 247 312936305 202 280096415 665 987526566 660 904231428 143 2490601 427 171975343 950 867238756 711 310930609 441 466789335 681 981897505 12 48935863 639 731604159 399 30474826 516 176618176 77 743885534 753 452034790 108 449770578 445 520484789 53 17571068 399 404996602 517 141098268 190 569657149 154 197516679 500 998897470 169 11478316 470 547748288 447 471221155 874 721859824 567 870270242 496 265468525 702 321148614 873 125890441 443 597789716 265 990736873 954 732098057 953 466823839 559 323207962 674 853492575 324 676690537 534 616057261 514 168850051 423 24745472 783 828858438 142 125111441 203 739706114 645 825752292 31 815049479 41 140913035 892 598256700 713 718193922 245 906465428 768 990730021 115 237209850 703 66191392 832 617621873 361 519015876 870 408959935 405 82140318 946 325872908 60 222067180 580 26189938 42 869744418 46 193792474 52 142674763 371 586625716 453 123301964 990 553350278 57 203053346 893 274046415 619 67198489 79 397892527 607 836967133 79 12886507 674 975345752 980 226252434 739 753494964 522 658044511 166 439303079 749 733895378 445 510166069 83 977011328 936 492272329 254 492179724 623 930010047 628 991429617 803 417396698 469 611665185 796 141314803 831 540667232 381 523166110 57 830038881 910 200026551 3 47621769 248 645833486 103 203858051 912 455990920 542 537955601 820 423233357 524 605502550 965 215101852 421 496631698 167 891877572 854 889841120 478 716931535 946 645688793 766 621701505 269 579837503 228 495238824 808 672022565 873 109932479 629 466157429 937 298712763 26 709627049 768 54096012 545 790095188 360 213477630 143 257546995 161 653707234 677 930852054 149 320769798 485 143750053 468 332278572 104 742337825 568 935413628 635 953604670 28 297104945 339 359717195 452 853854777 234 43499587 340 13903961 639 164791411 955 348072471 754 69171139 276 742669488 263 367942901 2 654924844 548 500741359 261 380148631 277 860869493 156 216715701 332 866433761 626 398282711 513 992199850 859 426487347 107 738509551 920 618563170 796 360868173 414 266671603 336 223127799 938 582690138 870 493128555 9 963125484 107 192939757 52 614745393 748 235771097 394 888034443 450 326401286 718 618105045 613 738864413 574 526360357 502 266880491 797 913570682 758 941137822 774 663033269 83 73783118 498 441707 88 642743942 797 699715719 748 825908527 506 723282205 592 462749311 431 837397122 467 184016407 829 339177354 310 45439273 717 119757878 10 118664545 192 838200272 883 815429831 599 286460857 163 275281215 754 19577436 161 813558736 385 337760168 843 167852513 347 356384858 60 11496471 731 691137310 564 38140337 474 663448209 703 34812215 886 164838171 996 648427414 992 463081475 58 581694001 452 281741718 895 590184328 202 597047882 667 717007905 490 938314911 167 171681515 502 941281005 136 994531893 835 477229370 715 573619194 223 112247580 899 156136724 985 911415081 393 454906977 605 475929658 676 487485008 701 937533284 511 894199381 729 37487865 308 594512052 825 9046386 769 347079681 479 125531181 690 348693703 749 815464196 501 748780052 870 981695723 227 182432876 167 776767801 811 336574317 127 14767456 931 385022963 603 687304189 387 11572823 101 570251503 165 958482603 787 825087499 216 383436779 328 541305199 57 411281820 393 236232625 108 180166772 795 410553696 186 876749797 196 722714829 326 726388577 405 480087738 667 195571929 962 891756111 698 203421028 814 129029924 546 226168694 141 549023195 82 499588137 690 557716301 909 840525180 688 171240457 549 581215763 718 167758423 943 686868373 129 887209288 819 350190665 834 189773478 512 664599245 489 129327891 835 690159137 933 63639420 891 317976936 901 192178613 453 693242967 429 195450520 69 283106231 961 633470421 613 760081738 187 639392347 132 896356873 701 272999105 102 570714670 504 423794463 57 453611533 734 160672695 94 359680491 770 570908506 670 464797117 976 596013365 585 333008945 663 514906921 906 717168161 741 426585116 948 280056633 150 375026241 549 143401781 622 727297031 559 608596132 453 603051339 249 509950639 246 133242095 131 903481546 359 752296281 294 679435552 327 42720347 329 82810424 717 198694729 445 701540931 856 673166262 878 866738080 369 157144909 247 780404426 454 855997789 410 117934834 114 459571187 981 2618674 196 808238354 455 496313587 374 764192487 240 771415390 92 284716655 592 670059847 864 425208236 135 674874448 528 988242667 293 585460168 953 294352584 615 752367342 619 35432492 308 983696263 584 758509096 48 939173721 190 244242081 474 318145648 867 674020198 540 134113147 375 507646242 792 21978214 117 361387710 718 956101108 292 129402106 696 384979166 26 410452970 669 6207661 488 519479741 748 799517871 929 703476686 78 305667066 183 994971044 431 551272405 766 960248284 439 897017348 984 970088977 787 873797977 474 307289702 321 125041126 423 875108125 205 747424779 339 12666664 75 169540237 941 703808407 24 701583904 829 756176055 197 9480158 330 983296831 407 252730658 211 165927087 439 365478214 503 260659706 564 726526822 487 869706858 906 921756992 845 547843544 67 271653786 984 702715886 198 68915616 605 905258988 103 942798316 545 865717491 109 160652288 679 491235680 977 833183831 253 35944879 666 229693780 594 25874143 786 578466857 657 253100187 192 541058414 857 184402997 835 667347609 402 107501432 890 133967273 932 840427376 209 771646871 448 282903873 851 24693683 303 253276358 479 457327955 496 638047861 750 544629511 296 65627278 535 425228436 977 605036739 501 137621908 390 207753171 260 204311659 783 453969660 81 107248311 201 40437660 66 554871861 45 943540024 270 633085929 250 200146371 833 670901358 504 969839166 989 946985457 247 366540489 164 413177519 290 213477340 136 852770590 407 507726107 45 239743495 178 613332869 956 2417458 799 539046132 455 984885985 17 624000549 120 839048446 673 961722939 723 204084346 554 916893233 521 260106667 740 847534212 956 176440508 634 335244423 163 475966298 772 368258641 564 934496200 186 651280353 583 323868069 278 909300905 191 245564880 531 386728419 601 759775344 530 65429114 274 516800834 694 695525812 9 210337313 550 190471035 681 202949517 965 696783075 219 828015122 329 810945039 993 480690203 105 887577671 131 998213510 280 997422225 719 649945541 557 60638608 254 570489868 594 939134481 636 266099463 889 983168212 290 428094297 586 554800221 539 733161415 693 7209244 546 993395889 328 897868867 651 517343020 504 81746848 572 264993931 429 402481113 864 439945572 524 262018324 221 683310846 583 5491068 600 900820744 240 897034405 81 606619515 33 808379350 29 564774459 923 778405715 498 740904275 168 102258049 395 359991022 100 394090178 96 587537844 578 486201578 687 675612476 957 204362615 301 962740217 385 149494412 712 809285632 141 689434173 775 22947073 537 761887441 441 407771816 940 360405432 144 541193520 280 252921602 375 121615560 285 363131809 689 925044909 903 497463630 569 671369957 327 696024285 693 518473326 273 65722494 771 443307995 713 603519533 941 793145149 605 59785383 132 467692903 459 266916061 200 797977336 58 532367940 552 881628819 253 909889659 894 994047708 137 760271503 552 689586326 996 626950421 344 861419425 198 864782652 360 430709471 260 576021859 489 329991223 247 715637341 827 456683234 714 734732531 280 706657056 922 575211283 838 470580660 534 368731206 263 969084679 537 87916571 879 774197700 749 384507060 694 815327179 163 431165418 704 978842622 633 716558321 474 935241124 874 233104377 167 968259892 437 549411759 527 946764284 585 175509509 246 281945275 894 96411042 316 945570515 357 682919750 277 893783921 27 230501134 529 763807534 244 403569793 531 482728311 67 918284121 623 422678399 931 695508503 261 80570054 101 442744209 434 690216680 784 698675549 873 971859600 265 291144991 194 739592431 910 852469133 741 343482058 905 659096633 992 827970897 620 635479615 608 520191420 520 54425764 20 446397792 44 930873072 931 277143237 780 740892979 438 344591619 13 302165173 147 191366719 229 811961721 964 255883541 977 872453952 545 573790888 211 625502389 953 35709937 133 180663735 490 247083073 584 676483020 439 783873698 261 787571560 876 675755794 809 69670653 786 374883238 554 691924648 585 809182821 896 455392496 900 908832583 224 152866849 737 914784847 958 95567659 673 228171999 599 564633667 148 570716451 934 81357412 871 464901292 580 329401377 439 782042693 971 237810748 100 949182117 416 880966089 46 620432474 123 400095222 971 934491669 687 631490208 389 625040379 383 26727394 856 287790128 443 871734748 954 351398963 953 809252306 652 212235821 234 299839264 300 201263028 296 762032864 316 301722723 555 775016772 237 28952331 713 325167147 138 592251196 320 921848898 87 539827843 776 522718867 101 953651831 971 300660489 67 997228667 832 95317179 566 458713171 998 414737515 942 772703475 578 365648007 794 846539744 282 157085270 718 661192519 541 235032981 46 706243259 521 320853518 377 430431929 621 932269083 873 641249427 655 438331889 605 919127878 306 245627925 313 814588462 103 149674656 345 796579943 989 130607085 58 811236729 2 766530082 890 980329049 975 334767334 117 548927528 147 426773965 463 623286780 335 605772799 64 225564708 443 333130812 717 399256319 508 145490449 4 247443064 693 261962299 460 570104849 982 116326695 312 98006835 16 500248391 983 626262053 930 212733635 198 686035938 85 663375778 849 131122913 953 274914957 75 449529410 70 225938746 306 390029520 348 365596765 602 918459675 767 332414330 699 261818135 463 894654223 628 768441579 741 871212510 14 273484684 673 915699816 650 271051762 765 100618648 955 329065695 514 761076247 468 506585445 581 919404150 228 16287593 949 253105921 444 412724726 243 201038479 604 749730070 543 843352248 93 615108315 668 509453933 272 262705473 278 71161260 5 185364727 567 880988808 749 623224774 286 552943587 864 745118018 970 56431526 275 614602142 791 718132486 866 883660881 207 221101340 326 173698590 782 309962408 737 492909194 170 702156958 766 824823000 594 665355608 124 210371221 312 530896908 737 32546388 884 113601236 920 836274228 621 800649329 813 679527267 400 878317237 565 744408025 514 407141559 362 43075218 105 751988418 275 299611504 784 739216989 872 831303494 218 948046758 830 487574974 259 77063202 152 327239721 831 707781301 948 619985239 878 391632943 782 91159894 643 334816697 953 862279303 523 173439987 456 822110295 993 542293755 369 55522443 14 799118238 615 819879808 657 853847378 572 54910144 748 204748676 816 555047168 303 530893162 598 635695988 342 407669747 828 143443905 810 383562777 1000 1171102 183 203479325 560 906154831 969 209206872 341 851522722 310 142999902 700 266128217 642 17007111 276 364707230 339 561891852 871 600466806 875 205000545 473 487331602 375 35318248 430 656960242 728 953855924 274 955680117 888 452520312 350 198608587 650 100018510 210 198309331 146 17246669 625 939227621 925 105806829 755 682995634 573 774659220 356 230256602 567 229098688 308 751112915 897 63215579 979 190682068 352 701669513 814 41245877 529 774573645 220 881420330 859 319491397 558 463750199 184 317683472 503 970970393 845 423617248 97 739548854 503 736641443 389 902554101 248 939711867 258 161978807 853 413360249 984 428966690 762 12251430 746 342519017 907 30623163 243 63967279 400 884252935 593 367108723 158 204966498 384 617735158 773 542167886 799 320399893 925 658595291 476 569055467 406 657617586 108 292240709 163 378096045 638 820985686 584 8728425 986 648684360 282 9521404 914 84040688 511 266021800 64 938804488 189 736919616 361 991514100 368 167261141 791 42279480 906 628861200 261 320735061 373 665409503 222 147196011 262 222139731 963 915260405 441 433968931 954 900352024 299 74441047 56 911606536 121 790294181 906 571087209 768 566850100 370 716760208 989 398871794 70 769716178 331 566643659 116 302389745 618 99661122 93 632278688 4 555518563 519 956293305 184 309574114 850 756392526 325 926191151 441 750577710 588 315251436 377 651491394 919 828127217 526 598422536 918 710922898 730 848206468 403 890274580 342 641025943 63 989947090 397 940407229 494 40101680 528 516703430 74 960466076 692 915702891 998 98504144 641 830926330 593 188761369 124 459022480 238 67649196 303 577629480 74 577445314 225 342512153 16 416757892 831 60429176 160 829669574 989 103624796 95 649289673 952 223369451 915 872099875 427 317140768 195 78711578 374 413775687 66 168796984 875 536291849 676 421305195 973 674886544 805 690906061 548 662925127 921 163999065 538 56659349 771 13046898 385 287123251 745 870852414 123 870818532 241 274122388 321 474940187 728 184205134 248 32442682 70 494368642 298 382251992 26 727497310 990 198990813 847 103481870 45 491467131 64 354297343 111 472589853 807 544391315 824 656036138 573 939662973 155 103389924 56 967796029 303 470998228 415 507120386 351 179881253 365 334876777 414 194093154 753 917844968 557 284119100 49 426976138 789 948047868 773 463297609 615 73664241 641 3512948 839 78111981 988 879769389 403 248885321 360 758776863 930 795639734 376 253521052 708 910718987 41 38007508 708 361703137 890 79370979 618 954592554 638 401887996 119 962183384 791 433814222 156 680498391 107 30515127 10 772953848 193 684687494 174 287871241 875 790242364 158 243742895 829 362673436 159 382140097 424 341301489 624 1337937 569 193058243 541 913083895 134 893596543 17 908052459 913 386415295 197 896035202 790 257512167 343 841157300 217 287888121 477 48939806 172 392058019 946 237242747 173 361771434 251 214278598 536 269767794 245 952232002 883 65669450 890 444054416 651 247094510 579 981224968 530 161018110 338 255194127 98 368885821 137 860287011 316 66564455 935 730038720 334 215149399 700 599354852 481 647037680 443 943529743 257 774455513 174 96775334 252 940503653 990 207634415 516 619663202 510 987880131 443 390320673 953 478868506 466 346631130 762 962399590 729 672418009 282 601808551 17 36451263 430 437159928 583 662095341 636 562990075 201 718492770 943 296386570 873 847926603 726 148596859 587 820423167 277 270945204 500 551070433 156 709810315 101 282481997 516 974037752 731 808317405 953 885372436 425 987297773 286 876601795 559 650121224 848 159603069 399 760391652 595 705562896 970 36290916 566 598328349 951 26813609 84 16929082 176 36151912 799 972927091 332 548343089 359 832432246 2 433112136 46 945636159 390 702192452 389 816852444 36 152243654 854 933371012 111 937822409 45 942877449 465 338547148 389 814876735 904 809791892 17 445407700 897 698003347 434 291281440 986 82658992 763 426015655 758 797974265 251 836327778 631 631171030 909 932695201 957 892696799 57 444232472 121 662655465 743 143024712 375 393751088 576 586242241 581 787706415 791 46748696 551 266841229 372 764354231 600 454193100 581 150454958 605 413774502 264 64733513 943 900443211 256 741448561 668 489268370 552 34845158 142 810316934 450 745387061 510 74485945 814 193145660 278 562282009 215 507325979 129 925759311 680 481296746 559 753215471 670 313638196 78 155513053 567 369472672 384 656971745 312 172538979 292 2816426 701 821833465 410 372395102 440 369152696 806 223019701 250 302793464 461 528051441 631 46184453 218 564052700 32 383414619 455 330006466 74 457529570 537 165428614 575 661736608 360 904147420 728 128547243 256 178695833 89 751929566 324 614717364 271 790993919 218 229731743 999 45143446 170 22178184 727 711765158 530 418448850 672 361988025 823 88173655 252 509674015 536 831935381 5 313845413 978 683920336 553 671660359 197 59269719 936 395493303 458 545402409 76 652158073 893 527311831 542 143019181 160 258782596 213 896908335 567 985218029 259 590541389 405 218237739 797 431121690 510 655129066 442 428277707 877 111616100 464 266887795 955 395057306 72 533837338 394 571371744 613 682214943 782 603646278 48 423664467 238 402899620 645 106584126 792 41395693 593 232101897 499 162484001 927 709411301 78 585307412 738 191454260 241 55331951 30 463189974 601 82814398 958 584438442 301 360173381 285 538414307 824 334611838 48 41668239 73 164019870 61 236760385 762 667268575 591 537029814 937 417861301 11 595645636 954 708477400 803 955841976 557 211116351 482 847137728 598 92014825 54 796152349 230 111804305 302 157472182 986 328743996 64 550412788 628 446156166 721 532099530 323 241575249 174 454918256 866 393220061 770 20151408 927 896384288 581 417921790 641 610958537 162 543969980 910 549886345 249 292575408 701 583121436 206 30554564 158 814015674 357 483718506 444 669984671 720 631978204 14 960771911 375 622418966 714 204965438 369 892833065 361 804096991 574 683589879 562 523557246 567 189789742 131 808961313 870 974404615 528 868115767 635 294273298 211 433870664 466 881332730 316 876328470 418 224364048 813 596679849 682 888387972 693 600286855 336 145430947 882 869754632 915 455317894 455 382242380 954 261277864 298 257376851 4 549354901 589 724319376 345 293860666 669 565330464 615 89931617 341 461126394 118 390268973 171 924096989 274 329566281 468 639734218 277 783175883 552 706830697 118 863382719 749 73862016 796 358803571 430 475232608 24 792841931 815 755112993 447 269726896 59 7683413 647 417837562 597 159749983 289 294783735 502 119855011 289 968204253 34 253662570 454 361868670 423 849555525 392 222323334 615 400575874 212 597811858 423 924023776 757 689736135 168 622333580 727 573582481 668 523895045 808 213651075 963 637015319 393 408451105 257 631108569 603 462843228 614 339238947 825 817573031 985 887059194 204 447082045 705 886483082 952 192413029 171 281245663 487 452804628 700 553702943 290 23516174 480 908241116 644 289298331 437 755219464 6 901248843 0 523152590 446 44640935 445 640308070 378 748680084 485 861464120 763 472358496 833 57403605 930 106379514 68 671128491 594 208043785 843 825633274 33 860653816 713 574541063 181 448775231 961 76463019 789 759870886 106 822262558 154 151158536 251 492232185 643 170974860 983 626708798 816 489109536 271 534563194 86 40319734 615 524256007 201 183002948 246 166665154 872 400927026 615 733001991 665 566473363 398 450460431 291 122136756 263 383746353 186 290905309 893 942653304 897 557766145 918 64699859 733 506473049 676 721103440 623 870421815 70 90529979 415 384177999 703 124711089 130 423417965 530 295919024 40 546499038 464 449992895 872 43100191 41 873038336 636 71689332 680 709547277 187 196990809 105 291895907 272 683735858 344 273081743 8 983925430 307 517842834 939 639304612 575 761045462 297 642170906 858 836849246 451 361194411 365 675461896 465 702681377 962 84665216 992 877858443 505 760036388 677 778461925 767 675571513 607 152312122 480 584369039 29 627771065 616 868743239 144 784940585 836 165328109 512 106551604 218 810047448 821 617203676 89 94103915 922 128030523 735 740704740 80 537285034 93 481885582 613 379096137 679 930302199 461 703990804 154 884198631 608 170295815 878 705710090 353 169759712 341 737444095 77 535050839 632 259143641 677 656603288 838 332659218 649 715808691 240 727534079 950 914043905 819 193158405 603 678190299 458 271467496 588 416348536 437 510364807 730 977762063 403 126955406 506 362953527 852 94139220 993 893268398 11 430125884 633 695986164 696 168249775 237 309399700 927 295198822 780 249523187 953 48371826 578 301300256 243 858616231 744 307807069 306 998363656 917 482805732 837 459481312 428 173629579 291 731732063 82 51406783 935 843469209 663 917077463 7 985874611 250 32395406 572 518878538 927 975236191 414 183145570 732 235118381 178 173445848 107 235653544 516 216610998 459 586721490 630 527100334 467 73657311 520 59789177 182 897907314 420 154210779 517 177996744 304 598259475 151 200845588 973 881638568 565 235944017 425 167083998 808 488117739 918 6640521 762 637375552 843 386674067 765 88379443 565 128962499 741 438751823 392 33041070 960 25199689 151 766246901 912 862965496 77 884211623 993 57555537 340 870031985 293 410357476 114 153582486 76 667856590 391 459113597 142 843235471 95 978021571 980 565082447 99 438344847 831 125762977 154 401054097 339 264513830 0 546633698 62 908403626 343 244802498 824 941767676 737 45197949 767 264823880 403 498713949 336 134980939 886 470262799 276 587406872 931 98909032 102 268449311 752 521937394 110 764468979 94 705815141 459 546183664 250 590796966 282 37972623 418 875556812 818 187810723 732 167814726 385 993939012 495 575229895 354 955781176 353 601806431 462 440882102 535 861136025 395 788078907 456 990744047 86 458727018 924 182906976 703 490872366 11 543071025 933 373216669 366 534219693 21 534185086 936 170050655 649 439489702 280 431855234 446 556037628 737 789262750 470 607836016 149 610792951 720 380296025 679 269492623 618 443082809 195 522153423 789 882994861 450 524298249 271 576951950 923 691899772 96 922130261 621 887148943 550 294200215 356 13190077 948 119577131 361 300841234 67 242247341 554 811264103 199 433565538 433 282818291 108 574834866 971 532596597 423 525295072 905 260757166 667 74598591 477 12928366 702 425761410 42 247323329 775 56790718 660 943235550 331 415231589 288 575737704 128 208146004 269 209667639 622 192922890 904 79051131 174 514919195 503 859449309 602 603727511 208 964067563 279 365791971 10 632448967 468 836770439 671 202033341 135 626440446 917 446384591 757 146264638 88 773992523 433 740850579 923 942977090 297 539257048 150 890478503 324 311458109 104 532207112 658 961338225 264 976181577 633 216038725 916 302402152 365 9903630 491 875227567 219 665701521 461 599880540 290 667118144 279 349151195 166 234484224 699 395630384 940 516812151 928 476304520 233 70946010 936 313835790 203 632092465 872 227826485 994 915229949 108 173974134 537 470506587 586 734083439 24 210084848 117 420998891 232 786805381 876 934790770 709 500413006 497 843304651 477 93495573 933 669072939 349 515405818 112 114030564 346 370601451 867 720248229 276 506715133 809 920409391 737 522272808 234 708595419 426 662921852 955 858878856 361 264618829 495 900745088 831 630953079 700 534625231 254 793403434 27 480664331 102 622877901 432 505631134 856 134267877 896 464411652 514 617204416 231 851757907 460 127716266 524 623251429 891 953409606 582 870984214 739 203126075 183 196362091 906 400442726 914 527325957 292 667644324 839 466112549 289 960442345 58 619338770 329 140074138 115 15611160 429 409444472 348 446607082 60 241067329 710 544911537 930 931207291 285 676560127 70 994695496 441 503611460 572 879713668 849 322383781 674 456522958 453 496400985 206 388906807 692 359561072 645 472560423 560 46748256 631 801873637 936 700608754 765 753000381 825 137500433 980 435548817 495 500240437 596 136888976 140 84253709 931 699029681 105 442256624 690 60689351 295 367619112 590 461620435 139 584917194 68 689725266 447 383890305 691 44224716 339 306071715 447 461387200 313 75680752 21 813382308 889 927782539 394 96614188 901 99776463 517 646709710 479 468191982 950 298748504 663 372263376 345 944125487 391 972683942 438 864393158 672 331227453 894 591455350 278 144720444 721 842734822 34 788600816 348 157992401 162 733893387 689 660452711 948 762255322 341 87557286 693 698761706 533 840081157 653 77392490 879 844086097 968 983866657 471 952971417 757 133829778 835 260260667 259 456274937 839 354475275 855 917213382 46 498123141 987 379367831 932 962698790 523 60107681 415 556733577 709 841041517 634 552162397 721 731600804 437 707831594 524 235354388 784 117713798 976 696672610 172 127699322 731 724419456 605 153980930 407 837164806 654 245558161 782 432078563 814 584630523 242 801473953 699 501609276 156 40001619 795 21114077 35 857731295 614 38568604 47 861787011 793 647630897 487 297346668 638 796186266 263 509511925 253 991794978 533 272449208 561 108110778 253 418212512 13 340118252 679 308366825 487 571922067 498 825779144 616 120797150 705 120512588 355 691233021 740 326500094 196 598401148 504 124549033 34 166546623 376 520182158 615 499590846 408 631322960 225 761144645 518 355657221 676 189217782 123 427523896 104 714765727 694 232100033 621 978608880 768 160735098 587 913357227 215 190438259 379 36727486 663 645626695 506 304777984 114 652221726 799 74488170 321 388051425 436 840381120 360 669348596 569 751243289 725 897567590 76 201558340 930 382203657 214 818983367 165 987413727 700 518743223 289 120779262 118 357017784 550 917268658 873 871741042 393 640999395 151 841499989 67 72349889 813 252786124 347 150522744 89 817289468 566 913154256 657 601196503 148 70598665 971 413075807 290 372780988 823 381132170 923 561306206 177 435545968 911 345570785 716 917312886 571 357183962 345 241338174 81 568981463 288 251100236 95 836834838 411 311046431 341 585540917 130 580500680 766 622904407 905 135744682 780 689563804 367 56122279 912 544677064 984 906705045 618 174958610 122 429933994 378 92980515 314 312198224 943 281954867 15 824327778 462 991126097 616 778014012 685 122684158 853 810979434 960 370831637 721 831920912 564 949827741 379 138129964 384 385557699 137 649520269 139 906085665 858 133455204 635 392397570 829 218492826 844 701829643 534 143956080 147 136267951 33 5878758 239 22835019 480 413295633 980 286081475 602 503444477 21 200082780 889 615893355 483 161773869 240 163743846 229 410411993 625 598771095 67 958867196 211 240835355 655 664567577 207 403898880 368 719220933 962 131548957 878 70905222 18 626090794 743 432237570 152 419302945 344 521292301 523 631763060 129 796000171 962 133794327 380 671773968 715 767203030 265 332729055 45 176328421 196 113497265 92 737967322 103 816454200 208 583016118 421 889587572 862 53478055 870 513871814 589 387978306 374 418784032 122 162774180 796 922194189 419 47831011 562 558000457 627 271021335 954 906946234 133 337748437 318 183911873 379 712718887 861 569561614 67 428647042 711 103514198 345 978119996 862 152362770 347 617820948 714 608480941 572 15908438 374 100980554 823 230421795 679 214221652 393 390261486 439 907214937 781 790111798 701 20867566 690 960416656 43 331531361 427 376041129 408 195589887 636 890081154 311 369196228 479 478582620 651 648373933 660 477512932 130 423995458 555 564846938 61 796152285 372 583058002 230 956909825 65 953201431 334 333449586 200 487477604 609 214229228 220 396078603 298 513816975 668 139744916 72 24528879 459 158011954 697 61209335 352 84168022 34 868208845 930 109888666 696 4994062 845 608905218 144 453306270 988 432038102 530 364630585 871 850178676 825 155900661 71 83089725 572 813835014 727 497501233 786 56566376 148 636668253 150 129110308 845 42470147 40 287046500 58 327943760 330 151830210 813 713255487 120 843381096 694 997052356 452 803888270 80 560287914 327 560064428 817 533476021 295 565328228 640 523400662 244 133898093 333 945000229 27 24313616 36 672658043 952 910465473 930 794084462 563 744154182 262 285749337 946 838313792 610 394605089 139 859262180 251 82207662 53 801508392 716 622612035 21 863046364 924 761883002 458 390280760 810 343887017 928 824143858 745 899280972 216 83416493 147 659455239 497 235005386 321 930084350 478 276537456 656 315333247 893 614440750 523 226501716 728 335009426 530 131155981 419 917429238 513 248483751 672 739910685 581 464615884 492 710603021 91 801041109 132 33206879 824 572085248 280 384122092 685 568479329 365 138453059 383 874675096 972 977259747 144 450328745 217 897655053 924 943390573 116 799458603 367 962819748 605 662277300 79 844022233 434 2957873 457 336790820 71 915961570 14 248538822 453 892059391 349 477146882 508 790701338 546 666655159 64 871285461 271 666479009 99 978711593 448 755501658 707 400755630 73 970009868 729 228379255 497 654321373 865 587802113 397 368234847 123 584472269 642 697138466 561 315672191 466 807067678 991 445213002 704 869524252 635 201772264 753 593977088 16 415189490 289 32318532 71 943504773 491 933953143 457 409634987 928 782042380 325 327447056 445 849622665 812 345855014 809 376857272 219 942332302 9 536266642 897 326755777 231 655972818 440 408610569 792 745290494 528 726645299 125 125584612 516 879793106 940 324329791 321 782456732 692 636805706 344 403892567 714 990195405 822 921182744 203 344205478 703 492239043 310 395730668 593 259208957 314 947075873 234 842842659 453 75915657 341 687226373 58 170661777 680 234343649 758 928476829 821 18292470 80 567574465 68 493098527 317 727139841 540 673264109 948 422193619 105 550043753 561 249445414 297 992432898 475 885439127 857 840403260 179 40048714 600 1363252 188 959646273 36 740288972 566 578948974 704 597594721 410 361956800 705 564282542 322 768966153 883 208893219 145 902254762 789 699965847 935 326144373 539 617914285 755 546573671 603 789906759 198 328920954 328 236997079 322 550211669 769 128036486 730 212345209 242 313421872 696 805304952 261 836122820 991 429374160 45 860298239 181 75937615 118 941116346 203 988806075 418 148466663 819 42320030 678 707942890 484 426835104 547 804220023 346 938082963 931 660962943 765 764274882 771 887267735 972 402438158 888 936576532 419 828599223 362 143910824 344 520806454 816 796636913 239 476486089 71 49068082 216 89722546 253 771239674 932 328994474 817 639418290 964 262739668 592 54419496 210 714424600 898 785016921 164 837843946 589 683009407 280 966291384 899 47455130 283 692750655 464 216313992 788 111256310 498 360948198 53 17789302 126 269376652 88 330237109 967 553178151 460 942179005 5 387759316 440 947762220 590 454091821 676 121782003 644 10909465 755 63706417 412 143548552 771 143836876 899 601048919 641 377556839 207 304833598 685 914772315 790 236875621 393 803249887 558 206124818 442 489252416 374 922425331 62 404853044 889 117675127 597 443272844 353 830699744 590 606227987 134 977685426 483 705151270 871 402447957 416 198094245 207 45675331 837 379508712 136 696759287 560 321042402 348 178664599 568 400378299 912 12928983 338 119377884 119 964885843 812 779792197 382 434813242 848 676128844 708 224176782 640 384454204 362 532399527 404 703251375 789 605111420 383 628966019 495 229562138 363 227721187 829 593043400 632 297902132 292 978117396 296 109108068 525 949578404 706 236276358 805 941627147 989 788023084 996 217073759 13 281737002 931 291477323 690 751 230 822231096 541 758485443 577 903440302 284 278819916 924 639765417 173 291488206 497 821026757 801 903760549 652 972478909 486 70712625 363 35697397 118 43606513 154 795700276 219 786206069 33 592731977 138 355727548 19 673901908 324 122754247 614 837674923 734 82309814 319 547323390 265 433195511 111 291925125 766 602481730 589 852112170 49 721132010 398 518626904 53 610179551 610 252557269 574 918508124 375 410875952 119 901784972 820 591347976 949 41015914 14 144171813 105 559463961 757 575608183 900 178479576 389 799007573 337 754443463 88 423040458 239 620371445 735 636032179 265 830717470 41 315591992 892 884810101 799 992549499 541 818345975 573 128197759 68 269279308 483 513591869 241 337943790 944 887644422 904 694916759 309 204312006 214 165331042 648 783051930 4 508853432 595 550876238 271 85300197 335 697386398 39 497425274 540 812286667 728 750187727 405 400423573 252 690884349 18 861072439 185 498332539 134 598228766 631 591049576 301 901143332 446 434691813 200 151756154 439 864538956 377 914699842 783 116387151 406 747432841 389 49330218 43 645868724 958 590736714 327 783211562 60 3949793 937 252879292 216 132568995 868 580035667 681 543993838 539 650768251 68 630182282 138 693234938 708 7213778 39 559622018 514 676855305 173 563095937 534 976585646 546 752189290 23 142100414 256 439276431 886 858324231 752 521077154 838 446118168 591 748002338 514 489343661 55 447029954 299 838801454 578 292193682 346 299510170 145 801423989 321 636890820 509 226996852 122 773852821 727 66898049 553 620340945 7 896238865 550 279770406 133 890654089 148 717532136 778 867436665 7 384972227 785 856387043 414 17002548 141 495789607 811 712334256 619 213522109 673 871655320 780 683949472 694 909275848 197 880720480 297 778281526 474 326785719 486 515798885 920 721208161 809 902332075 15 611155570 315 19625084 93 176696411 177 429989080 96 714721854 574 928251457 928 265391383 973 727235243 994 207727620 52 710677501 601 859798258 582 159356601 952 325481532 77 757102672 428 206841455 440 978959535 542 170693597 795 933720816 616 658603669 30 259429215 458 527544602 952 849873164 519 366792515 243 893372810 381 72478839 452 613392398 666 774808174 746 82372932 337 793095268 198 622069388 686 455590156 137 378389679 194 762591910 937 183570512 609 163411502 705 498880298 510 866867246 982 284557310 865 38576608 414 729204246 65 310379459 737 765952075 793 536519259 858 782639286 232 762679679 698 366554600 17 142393794 44 329116819 691 144666466 318 683568184 355 6957317 439 335070837 447 487619318 416 263916429 839 929383673 262 735580073 538 575529791 878 549196239 122 692429033 941 283087086 242 291001039 853 202790234 239 673273178 421 903572851 301 752157161 962 652929544 7 55314793 475 386205543 695 815467636 971 766525222 630 363326851 628 15471596 930 940759238 726 499946029 855 314087113 140 192950639 342 240564732 120 81562132 965 917280732 912 347520393 665 641531317 877 791954109 513 563850435 54 826478916 160 349710207 575 600070997 778 35542237 150 974343886 630 991588428 535 503913849 908 166743975 503 496720293 685 519721628 228 117544237 316 850155497 505 202920067 313 840551103 929 642123315 750 621961074 37 179313599 561 988966077 687 707121458 317 150295230 532 210716534 591 625119441 41 918370091 481 304971769 130 5129989 205 472325371 381 341740026 276 811171212 281 723330348 219 681773927 229 680951003 415 593104868 918 216674619 631 521807434 557 742620793 774 364821295 359 532311906 588 800177535 108 491172590 164 236204487 510 403759198 61 748575291 236 212387882 55 670566399 395 126894046 851 813303884 92 365630216 142 494799228 857 14878628 332 67824838 616 511595352 606 155769675 263 918756613 385 774747662 460 375430934 266 618289675 246 779722792 728 220028983 343 494140196 417 766350614 123 497841241 681 398060440 341 174244612 641 371632749 163 41353076 390 456347506 440 810732985 814 246973540 400 587173098 163 211319289 583 639167323 663 111842915 140 870564321 493 334590821 83 905329494 245 603117650 123 314003400 62 464044557 212 780893597 845 651614632 278 939502321 582 598489753 4 213858745 278 719888650 123 511193550 204 914869137 924 782417840 221 352875520 127 633266492 484 563975841 850 712285233 79 551892394 687 660887636 351 845088024 257 280509453 347 143826115 114 432005610 866 980832734 549 216305874 683 31625938 685 233669363 228 719092521 460 568603737 555 675610734 644 193662149 78 569170767 204 150018163 596 678539195 46 59129409 6 513814593 72 630709947 376 141562163 976 472728346 145 376900116 617 957681940 911 545699625 946 929648669 949 978328543 595 397603618 607 67788708 877 553543994 454 865347825 479 5992745 315 839692396 832 923000918 275 945920034 249 457117654 348 694339332 216 533718700 906 369838288 47 590337732 644 503714941 95 285508650 636 345972091 651 154442670 776 248051477 828 172151592 533 201541519 871 566537588 583 6382903 677 297997965 810 107050320 149 927306686 961 344795064 604 971691263 905 43629503 434 160463260 677 330534394 944 158062763 94 213076350 678 155361587 600 413303605 420 902188323 345 238289167 419 850585944 821 588921147 305 34713637 370 810241810 370 432487783 534 265697752 646 623887559 813 344511777 950 879401090 137 724369007 688 346391974 415 653516361 312 687814152 618 313918034 930 565534297 481 647482901 716 604816524 587 256852654 761 630188639 786 630452181 119 478774633 780 348278670 299 527801468 970 89525135 964 731996814 95 918023234 20 44235111 545 331177009 882 347003494 594 888380607 113 493925208 972 36193279 963 689144461 594 368008114 470 627417486 222 561163754 925 244249509 178 900156761 692 869849773 270 537445160 417 606641254 277 765775874 213 336808323 521 940907210 618 437102686 383 180213742 681 314369097 571 863693456 315 354532630 170 211502802 740 568907878 546 216813588 377 688079649 717 21001015 355 210444709 488 782348893 280 326588151 314 545798415 223 582164377 93 725019575 491 959102096 528 267925368 28 726959891 682 260022493 959 86409107 226 350567617 425 241111886 260 238476511 542 939332690 711 751558162 666 218313643 401 441649718 589 324326809 879 543943945 419 411140210 597 685509078 988 667961344 743 588078973 250 900033578 9 305196805 203 667354913 826 655242945 0 366416353 100 896000852 735 548927058 160 533696689 314 921910669 494 926622945 173 999489038 398 70710325 289 705480603 445 362025744 983 90442461 129 888706688 122 834690853 136 683041936 374 547844255 68 915539522 287 966401922 819 316105071 264 417998375 132 615578989 665 142616236 933 621372762 987 129000499 594 515934236 975 338553800 601 732452843 26 965394589 601 514941358 151 587901589 347 390027473 102 807126105 541 622475260 364 661522472 781 555779489 371 113204845 796 898265575 757 301391281 831 679738485 17 52771726 260 544534588 463 23923398 506 730009887 60 901692881 875 373474855 219 20169070 774 751117849 749 960661725 860 928819376 562 597846584 255 271796879 197 31089794 594 540259627 620 534252366 1 226201936 154 690122313 956 382878696 953 896533799 220 212451533 434 668907575 676 216766313 217 841023434 261 371156971 998 380153016 515 996293043 908 699067009 570 84261397 205 619609437 307 193854110 991 567736040 71 297212942 770 531036121 307 516698440 732 626030125 150 54052531 959 16825487 623 6961862 440 373155949 781 181846834 430 519524440 416 556115833 66 413607783 333 944511150 893 343674602 373 890489789 821 801474613 622 901238078 564 401303978 539 958684656 992 549665537 917 524222653 262 103754346 607 912877148 147 98111294 487 964174569 881 191348002 355 474880226 836 445346574 708 413241825 101 318092589 421 26096256 177 767081120 280 367695250 321 766117886 615 996927288 531 864438146 576 283477054 227 128227280 495 880660032 295 737523926 775 823501234 672 500287791 251 265080196 513 317613836 66 674941920 8 29978156 448 676127904 109 705317860 276 37490171 778 880694077 287 79434651 692 608610814 782 661672356 198 247762886 822 552194448 531 741398827 93 820514217 157 947882944 716 790530924 301 858083811 125 790016361 942 533460039 682 489029167 257 711213957 347 754608227 647 998806959 319 906991402 652 854055189 152 901755815 907 402223782 603 912580227 673 758354682 993 579092684 362 387508294 612 864618174 218 455714926 965 412675516 133 935451830 310 397447617 999 95368762 798 309477658 165 337331076 669 603485783 757 892174840 144 503685529 217 16314905 365 194175583 458 169688385 299 406577797 442 694751568 849 380003461 61 228186243 605 920992123 643 856141482 327 474118956 880 633627237 888 501890680 347 70488262 558 4022140 594 685694416 475 712355983 678 893588453 44 310797632 697 747950669 622 96652559 800 867510601 768 519599664 341 486801648 253 233836470 158 879215914 30 185115274 962 828540625 287 319437106 314 723772049 302 624610582 624 620212952 723 173844137 330 908815403 584 952407222 127 208256197 796 237778186 739 35909285 918 167817142 524 430105833 512 551801508 86 197348324 309 882521597 435 895432701 791 434370865 384 908265986 744 165232953 422 840696520 665 537872571 403 382126414 677 871997729 590 986540687 461 77098704 972 660774564 202 252079342 89 723576580 638 18753079 182 308818935 317 12495689 64 890782241 567 370103641 453 332936060 684 507980342 503 399843662 493 870337557 914 169882818 486 690634945 409 891032530 189 881334687 337 354934095 312 10087626 598 897705168 600 150391184 551 640681915 442 61119489 531 738097019 642 719264909 318 916269473 473 885054632 810 743079547 732 466016215 903 850174025 264 807826585 240 90988191 188 33140223 824 871076511 534 793135107 931 406130529 671 103452224 891 760887155 202 13505632 864 30958074 226 2074528 88 659051723 871 54818587 781 477504636 714 749985428 521 616665817 868 967536111 233 752343910 273 750735794 945 407310012 2 999711868 422 294813854 596 960649043 619 578971117 746 453932372 646 668857233 966 383832610 355 518042593 309 73554628 221 452467313 609 888981169 461 302486769 630 707703903 646 398403914 589 409485755 29 506185317 197 398255269 877 308015999 530 161771725 795 179528332 777 92726302 705 413248187 212 199181617 598 624546839 724 222500253 860 123715568 743 350118656 798 932017488 738 427028864 203 873248406 842 570769829 233 682914692 234 253376131 254 631192932 486 670892610 427 912264350 810 300306053 353 112991299 505 712368237 236 56505502 799 858083260 358 279653768 861 637210656 130 960135722 653 685081904 931 913478970 718 97360082 517 221446036 475 492425534 618 105113649 980 679393800 840 851758699 847 371666582 902 120252373 652 857188440 452 853742273 4 490566387 631 492661915 322 758434288 222 738921884 31 220287992 369 788400415 279 501840364 717 663621076 847 243709116 672 938826269 900 270085122 999 851595990 345 914836573 14 139457361 718 376620861 139 612817887 147 67038547 372 351761770 172 124370430 43 778428000 113 987508791 221 805360622 313 442001543 444 986114576 659 614861519 610 417520560 527 905679917 997 551749626 855 71643351 637 500125876 295 145266854 708 808835256 907 855630126 524 963744867 464 540205410 381 845320955 652 190660218 248 542142215 29 769262235 704 662246595 621 886903383 759 950207605 981 708933905 339 750437416 540 306648966 910 818761924 659 372555505 921 16741965 56 718085789 361 519031946 503 995333620 205 314282939 43 787068921 128 540951750 647 291095916 854 218769972 329 389795929 572 206952802 268 231229007 250 729636782 998 960574547 661 922288860 364 44883627 902 77670631 818 762175250 351 744393474 510 65755637 660 9034823 27 879980180 852 285997048 924 716735257 305 816833791 211 655690013 545 382500929 896 850764852 923 662940468 121 906813441 295 563989367 234 394520982 600 800184737 874 342509048 259 895759290 756 33093730 459 789317457 115 205955834 623 898023096 619 952825766 301 943179508 977 438570585 536 93147198 451 944466073 374 873702990 684 372234407 164 292380144 103 461938950 144 673916374 622 501380573 789 349923760 181 744519331 53 477628113 373 160119341 744 210920656 795 91152884 475 503537903 260 988365969 390 340011422 428 661729851 863 333864219 761 38935878 768 723003656 467 962027760 244 509644951 930 158811822 91 904941101 108 508307740 200 346287742 468 535168068 326 655271741 237 7796991 683 474105442 837 474604467 910 488733547 573 231964504 725 166979733 330 116882331 227 264373172 450 923603525 490 820944657 586 191512632 26 814687547 155 810485006 739 142583647 842 10734816 404 979185127 872 21553305 313 143245370 840 446365241 153 830250716 315 710541967 661 165525948 983 540771328 551 606361448 776 868260726 643 943422464 629 947730769 983 399289483 586 505391400 254 656960749 950 621956246 379 524764620 535 562014318 58 548937753 661 733989122 532 749285697 737 924533391 118 769725828 104 3908920 363 480447606 321 240972839 111 496225945 899 925788469 58 424821557 970 425825846 797 712757310 104 845504998 747 818524015 316 985712242 693 88911602 904 252438640 723 36873883 192 479128918 312 641920708 363 85373855 311 772349065 216 671276030 563 76403490 564 585457750 775 781761122 474 422162917 774 179689784 984 918730145 176 557147390 925 410305211 15 368594113 587 788111985 757 792067900 542 329271207 965 97459214 701 693044166 233 415594191 810 504495132 881 171720493 475 678836765 225 870621196 235 944019442 501 1764586 170 217704659 28 311225372 425 508114671 792 213107008 826 631364356 713 434283176 183 589988296 562 648876859 31 944552338 646 512446238 485 903418653 56 579341552 453 376690414 256 545313072 789 878743786 122 479000565 942 372020144 982 102440958 555 830503699 96 395403019 82 201192969 406 99188133 43 890794013 540 893402688 8 175361225 980 295134309 430 389437369 414 495614123 589 609454111 89 259557957 143 335942610 581 211909816 283 866352730 914 325144085 160 109099666 853 571496397 506 778233364 353 203726186 954 257249031 776 191175168 421 279131974 714 737141755 381 987829398 48 240390630 60 358000550 484 849707019 968 556087401 59 758313355 1000 37998576 25 150377551 152 307856239 9 46513031 877 995035074 113 168219140 241 807878004 271 784290475 406 363053587 112 543413602 515 157689661 738 422548007 521 44086913 714 824130856 650 141135201 128 623994996 31 12180192 817 291283425 801 165097490 847 72062543 638 112251640 302 312661745 341 238386310 547 85117645 444 347712664 625 588284545 942 784440355 445 748840821 928 96683390 190 696512866 986 968943081 934 35116168 860 610823334 582 802876167 380 178073652 188 975561735 179 728232673 723 394683974 698 187587315 727 635336360 418 886388315 238 49878804 606 911091837 961 418844723 576 652529194 290 464296667 944 651688203 796 624713925 684 539647693 669 632031863 491 635922692 440 631537887 155 501929978 223 817624280 377 582347517 804 590932183 912 13602254 116 39939343 913 291111102 561 999535696 432 665418865 569 31129527 236 441568116 799 516325366 291 983972563 709 889803128 448 180893964 982 685321295 626 571304844 420 852440284 652 463356721 902 816083188 789 934259934 97 99511267 323 563603878 562 89369956 527 46433599 924 672765626 211 517735434 911 958695219 340 530576712 27 280683942 130 207826313 336 918666485 352 126509655 475 662185951 396 536247750 217 845640576 543 373612892 133 405933483 59 183545116 749 530019455 721 172787977 284 105868023 254 18076032 453 899056906 353 897546543 617 492830979 48 830310292 216 241871805 968 798470127 761 253632848 382 279145028 185 609995407 186 854853009 12 539985572 729 321536562 923 289212908 373 275663382 53 610954333 592 85416921 833 16197242 911 136365033 712 113631568 649 846462869 879 380867995 756 257560747 469 721207582 745 843869412 649 652952368 878 309538771 798 532643824 693 829884686 353 385021200 89 591978485 110 272329047 631 167748750 414 715973265 331 387173268 46 241480552 861 540712201 232 491466445 989 959192537 147 62815431 511 636166523 934 389927450 811 343968099 20 273059241 750 821563289 960 833517665 52 662732289 156 878950875 433 46761170 872 227282898 869 652208053 362 700527273 407 418384578 406 370079985 956 421160303 334 828113480 31 739373239 136 669713593 510 946964 408 616974050 10 704831616 947 515164138 521 694503705 813 76745476 168 2533604 927 486358219 74 783639797 634 273067379 330 8449665 968 803737268 714 653868983 19 331821686 583 367945220 510 705540013 184 960590766 546 53737597 861 99016263 648 220474706 931 997917125 944 666413506 599 886021729 618 72014982 80 586362508 201 883047552 399 611696878 63 730098017 335 425177813 843 213369265 319 448559087 315 403554869 874 552945651 332 314429671 208 795372747 594 357880535 466 465737810 267 338014579 371 385886188 600 698158144 850 30964082 531 988192855 242 187311537 479 905214089 67 741045360 441 589695419 414 392853441 759 752952064 267 309007414 626 242872920 471 732195233 87 110570071 914 710060290 196 941283058 646 366355406 708 974138205 764 544470030 342 918379812 510 39999876 264 105519578 946 763530816 851 351818637 273 397305151 508 345017299 661 127580813 115 549385415 822 824412817 626 662726220 575 590741297 23 266114925 310 530859305 838 633368705 71 565885293 454 695643238 869 642151547 155 522498799 320 458620162 659 57388635 807 78776823 892 760672981 248 859501669 801 666415226 796 733214790 1000 295082470 153 446422400 741 683900946 935 273006258 718 176004626 838 546844810 974 571493667 29 788461021 12 873711611 827 662379229 125 34723266 660 345132876 507 846258914 106 245077871 287 601102620 571 921268772 855 146565994 574 269039501 438 253186993 455 473223739 177 983887144 325 984696 910 232877913 375 87406865 586 482085382 292 817049528 578 102083524 605 80294503 517 464393445 432 93384408 205 593084719 308 593808647 350 740421277 932 858682603 604 573690751 399 370778423 853 557147926 890 667992163 458 809077606 298 11765846 829 971880966 961 129293449 161 804905918 544 286818854 459 12762468 848 48590918 98 380679561 483 338884657 398 840523567 854 513243562 871 928887274 664 945161644 156 51019678 872 643463984 34 333910301 462 350112788 80 108559352 298 49860166 510 165786387 367 630768320 418 713543934 212 829405103 681 127702575 91 806220010 703 177844972 645 792000619 468 208330816 928 309346980 382 59077432 198 56404990 490 921174457 199 517834765 62 793947025 478 198725449 813 293067798 889 129728410 247 367334617 966 559939853 57 90861705 210 370974135 519 709284629 433 150037360 93 919840164 594 994567442 795 638612615 541 621120603 459 412738936 791 285533749 641 87239757 98 931279633 410 158566059 434 978487761 802 662133166 441 394306483 59 977228521 95 439728171 421 666531037 796 650345649 338 161762410 826 380194716 989 541942074 583 835501411 73 372438478 24 740349004 210 237508889 544 225121066 164 578677633 498 333751723 782 257787700 205 197575665 921 453667829 579 117952243 155 896940033 917 524261044 466 653211180 141 726548015 807 427131979 590 706287590 859 639815529 871 94151105 821 71448680 333 128244616 214 800394616 479 97484408 199 901314024 594 940144487 571 800291861 217 415167127 993 487640335 145 747568155 542 880891211 847 543832590 221 976967312 54 511226162 554 119476568 936 678285439 149 916487857 877 612117843 906 712427366 978 688243568 226 32906704 711 876816846 179 798759877 244 733461688 887 929769856 319 290197887 784 619685121 203 219133356 547 780994027 465 894639672 197 556625978 337 937867732 717 219133789 591 33912656 929 169682203 627 163471944 655 815476217 112 304032366 518 960655408 245 836604541 694 730000998 71 749627184 844 766443448 492 471412038 321 58699953 854 790195498 204 422082560 299 299150537 865 648476466 87 666406386 592 7246131 402 201732988 986 718487322 283 135715924 482 497035110 58 965705204 324 46754445 300 468520806 992 122766494 785 887682061 676 257175395 888 42208184 130 659724435 401 147923048 54 123802382 775 665010996 461 797403018 544 50462981 674 87629976 666 317330809 95 49312558 644 878001956 812 750916167 196 375324409 98 681927320 515 642971000 850 174736871 728 387492057 242 521390156 738 408455826 111 972848913 66 984583304 216 52192464 159 828714043 492 499515253 391 737688749 793 872688128 94 988209032 72 888875243 779 419409439 492 113731437 496 995163484 562 815192972 880 344749072 982 327834209 112 725922920 589 53328675 731 890169109 843 627373052 155 611700513 862 106242268 788 732386396 633 786446439 341 419696921 58 938395696 548 332501196 854 499896505 438 473583842 613 256866832 483 678191507 444 183115383 416 847175929 17 689527849 849 682375164 208 874357823 572 380626286 657 321599517 571 788786222 496 852772739 397 882670726 320 226632237 256 470716536 589 679778647 195 400209189 25 889180489 703 132466215 299 20769489 488 963780830 692 593497314 800 25945610 502 951660797 120 706938911 340 686580639 647 549108133 248 25737814 58 414239048 560 671269487 920 284842519 701 72773651 324 2641531 184 720404943 240 58826577 97 261898109 331 112597810 146 357049598 84 912870488 674 533053841 507 334291616 144 51748163 540 276107615 983 600136041 840 876005904 914 698639463 477 924114822 19 859985759 701 539549992 717 145836341 137 518310316 413 7078061 447 938779451 485 124876521 137 307863952 27 139967636 25 588090456 559 146167308 950 389275984 419 108038282 731 104233404 672 586029349 752 924001721 145 502057909 284 795526264 573 6271189 268 604508558 469 913700046 565 61600648 706 71786081 535 530208139 432 239167086 488 515792508 681 356237367 878 931479806 182 114577619 251 251333511 90 203276444 757 931032721 340 335053425 142 870697714 527 858846718 601 728445842 715 144610171 480 30549001 92 457422272 63 959991720 146 281354711 538 165217751 320 394949663 199 735049550 197 392343514 703 567809074 748 14459504 147 90702537 163 96661271 854 359867623 414 839772167 678 871819743 433 774929683 983 181145024 856 254150713 584 470086517 438 979134457 900 864657411 695 137735352 684 70291791 552 531409684 509 213281637 867 392539543 910 615029100 442 25880621 942 595489155 715 171655493 482 300066136 76 366817057 56 727648681 342 38566214 746 355784999 949 720295903 433 924413188 501 217135454 703 672538839 988 963233412 590 664322250 273 12252095 531 998109521 143 983687673 397 50103668 583 263473897 95 673063806 323 517851551 164 146531455 730 257085921 810 826387706 743 891866964 657 453256551 96 264166872 412 416634010 310 127496363 173 22235705 128 749466527 710 164328235 196 123465818 767 122002377 580 280903247 741 162665103 804 726178758 59 960762948 176 98962546 348 951504779 319 566598422 829 727230000 238 53724606 651 873100657 647 947632303 277 999153586 771 597391922 64 486416179 354 995670752 126 720831103 144 186425832 594 550849436 455 803117033 123 891642387 682 195856526 178 122236410 980 730916786 255 715753317 78 313762003 964 717010812 391 16389280 294 491127447 548 531236374 303 579206913 123 417774212 674 806265175 896 38131461 269 774290389 356 703981692 36 76428465 502 815822963 503 86438014 136 373778457 485 804349626 512 906278280 492 654472922 759 999485186 687 784940177 148 42875780 755 672017428 55 837732945 895 215840966 48 894288296 263 127924978 342 899113840 346 647033357 879 857668175 860 800415845 704 517737622 387 471076894 241 506814178 167 71173388 619 603067320 171 973340432 574 844125631 238 729840050 192 863525828 89 363009753 736 19905885 560 812448360 53 824135956 314 823613440 706 693298934 678 276995661 822 756593026 637 354906602 663 628576914 814 945807045 691 940277171 95 968825146 612 317099134 893 604669013 68 281120843 254 122114897 312 485261639 954 646543529 528 825207968 295 139016879 621 670835279 587 698092279 875 470832953 162 680985651 931 160176671 1000 297030347 55 15652076 149 696959535 308 327641797 388 884854144 249 200793864 200 953659555 142 340414548 560 153746640 896 650035519 95 198269010 563 123066394 434 621706539 943 81072255 498 922303863 277 231928340 410 941002726 442 36513862 668 56591818 513 5514180 565 958558061 534 126362259 173 780827273 625 987276072 611 906093325 445 569145165 528 800495711 924 442505519 351 201592522 630 990559899 73 523734203 659 883291256 879 621519812 720 7189171 330 500850275 838 617761016 60 700673462 999 87682397 833 466503921 696 172990108 694 486234828 506 64308944 463 234390250 233 856061377 704 286775057 295 892933351 128 736047258 564 405019352 819 373148120 607 351438616 607 287360940 648 156481070 164 663933044 330 705561876 643 731928752 682 500407390 2 984030121 525 507586122 550 994723247 208 307031248 886 903115972 58 418949408 775 207388923 894 200539807 332 735036949 492 239567470 547 930049453 57 776299736 508 711275323 26 454419092 953 440844468 356 879679760 506 605065147 191 108014549 893 879621009 212 124019355 789 529298845 1 889960390 847 794140861 475 32640649 268 668454787 949 859591634 426 742048611 394 803939110 988 509710816 815 767924323 725 43439155 772 948918190 460 857472375 803 653899881 624 140895921 736 516715396 352 877024874 133 260686170 676 219401336 47 180769790 953 398196984 61 335957667 792 212915475 92 993275910 554 685421800 726 25355249 416 992878587 583 855213618 61 76970785 984 270232836 583 133264026 747 655437844 696 627735231 802 503622349 181 110161765 137 382337522 89 323070356 741 785038394 113 14532449 919 647476538 327 798315627 446 215993870 415 614707050 566 45042594 307 825376614 415 625664135 137 762545812 831 746648132 94 496247270 960 514912749 612 997800901 854 775836621 994 453156166 139 513886278 23 229429463 306 391608356 691 775764975 47 74303428 721 398794125 641 702938696 707 290239746 528 171181240 941 606420225 652 937359342 58 606180658 618 353974186 791 305962590 872 31808225 676 431485773 811 973201934 68 762923597 706 300082953 39 893107013 510 716696356 402 411703447 482 607557961 190 102665314 896 332920584 844 452986409 76 731420634 618 752022674 212 51689697 877 280216973 572 785470407 846 808882372 774 157937717 592 751027370 105 90627796 232 24407294 925 500464688 322 368652568 801 134808407 701 56441625 926 210154222 940 921827761 487 549897366 960 588842964 433 990173887 732 643399261 511 610693289 587 574509472 203 1897864 784 387552031 802 535298375 411 786353169 782 90120676 56 470244843 102 152415397 304 656369963 26 183102167 359 137406849 723 972435846 432 670572838 850 763694597 339 483548217 927 974127295 89 630247870 828 208270582 840 202709009 440 763588250 455 104975085 934 38382127 563 436713293 819 990029932 220 438778843 804 710463599 634 474900346 196 727986704 89 227255675 527 426736680 47 397491906 741 31080769 230 523850419 394 532594183 659 522765036 56 556144476 701 25437870 682 67884691 413 346682097 404 135423197 87 962110740 562 523292847 172 567419197 745 281794389 53 852522439 255 18944955 268 346253734 310 32348843 305 548513268 882 257842589 264 930693872 48 137530836 935 531784438 597 943549884 783 910329798 928 289389910 124 838597387 112 284550496 673 215737000 874 825937243 814 561797877 819 248032960 807 523293956 254 538420207 269 552532304 683 831864653 874 36933877 320 629866931 489 366210986 364 163999787 388 401508135 363 314923802 370 750012443 665 698388043 110 540112870 176 260018058 398 419139895 582 511561764 650 641394616 211 400143861 758 218966888 812 959725572 917 203644916 956 744745830 281 767437662 955 788179651 536 679355191 289 298372117 158 997494697 924 987007584 623 517455871 729 388974295 80 152997981 512 777098116 668 516179551 900 66801214 334 774543889 852 978496050 653 475159225 855 980059083 262 754127356 372 771857995 598 151363280 677 931183442 419 730671689 611 880459677 906 974325454 719 828960013 367 55759630 872 796560147 171 36284135 914 803848166 772 37898777 384 33510835 863 673357695 884 858677674 101 60686848 422 113676433 210 266444991 978 228280344 668 233435858 388 345899723 6 263492751 301 328397913 958 90636359 518 593902580 112 876512329 945 439682064 254 752074311 650 943429837 356 280393995 779 509027272 36 902976987 952 321681221 719 696130554 692 872701365 284 450152575 452 482520146 586 212493555 297 113493369 867 589940891 847 574826767 295 235966398 56 746606293 653 697439567 124 184193175 365 101754313 270 222295651 94 50391318 227 401334256 249 549543682 632 287200607 554 537958478 416 949276933 366 465943371 408 124761881 684 516768286 818 418224824 359 955942202 391 743848684 721 390942866 948 763976383 546 396740051 901 7016999 394 85175766 47 95229678 617 444886367 110 929881916 816 762020698 245 794838116 355 565630929 243 731614593 90 286776980 881 880714792 880 242344461 967 298813836 554 865445782 812 736201168 428 329670600 861 797252268 480 249633535 969 757998662 677 765179484 711 296129598 20 571684944 853 782616703 869 880776061 126 694472592 342 737736212 793 54689005 1000 414429844 90 34557666 26 228764612 531 972795991 499 154604842 186 107195782 934 94039889 667 881030517 495 641799684 402 982599876 208 872566650 886 617963979 493 326372779 963 459144919 426 585053887 18 138246956 131 561137937 765 517498792 490 778024051 392 809109844 135 236056507 799 177001228 830 493856513 860 248568285 356 676940288 262 107296475 101 644736223 19 757106939 177 412950309 141 881525490 364 249969062 566 317052534 822 121462673 321 580539141 914 992463859 683 398410557 620 523704554 229 753192741 538 757026612 932 22989706 991 939973377 351 785669465 392 400704117 703 13920743 210 458416542 897 396133327 30 66286523 852 881906097 477 394217499 871 676071174 725 561302202 798 371368527 856 135339444 110 231815972 990 925772270 596 85963068 847 340951329 218 720742725 886 491146497 529 618858904 710 481107244 921 40508073 431 920011466 447 578779481 950 930891372 484 901325276 110 749562168 532 495693082 487 540015099 452 120151349 542 279591666 184 793598660 507 687251553 63 851550644 656 77018766 144 549400616 68 910055485 946 19234501 170 943426639 323 260214740 612 911233030 897 255500251 878 249263648 393 498720123 590 441019810 548 178165641 433 174860781 434 603859694 585 607026648 668 943026352 387 794122601 134 125501328 929 800359320 711 904424025 662 719275264 517 677497921 321 347581482 910 851463133 777 462093787 740 674269676 556 823755899 573 507807452 720 161122236 368 320515526 776 308710634 836 314565095 256 565591009 287 58149676 673 338007356 463 592930463 194 105316840 575 734622127 336 961395795 621 501729344 542 238853067 278 218481928 812 495025145 25 84577931 633 186391410 487 525200440 773 713585488 128 260091571 318 43498490 438 407870026 465 957576837 291 960344705 168 430039794 790 486105819 374 700666665 219 818626536 928 220954720 352 268342938 776 916136339 360 781293916 631 747526428 731 690685311 483 357709317 490 315009265 882 736111260 839 547686867 901 524291349 733 543708725 562 842899942 612 619869659 998 717762156 19 431594752 196 734867537 180 303288232 206 58944684 970 787069492 686 450488260 818 679967557 446 333723394 964 985129681 449 260161719 390 741478518 120 88135606 576 170983798 357 485415880 528 760984661 946 64207833 737 596383018 301 125387235 116 230117574 58 407433062 306 84962525 947 197646508 813 302456948 296 779525138 522 306481565 501 814533313 378 250693085 575 502486644 869 374784172 574 791894857 554 823179976 23 409163388 747 241806865 637 527311153 784 505448313 850 282092310 858 976965660 940 36083251 826 582781971 673 809028490 493 282033718 74 293263843 49 882636712 619 615748170 682 441676466 34 684349981 4 429985004 880 588758716 373 534559925 805 675449270 16 147385194 804 538917071 964 688359791 353 23782186 167 218568096 848 950096441 244 559278683 501 754076087 122 344662729 585 708550184 809 432255826 955 535733696 745 165395758 874 782045226 378 136156645 882 688340617 532 29378476 233 640011713 114 317039015 942 814917859 870 616983051 886 494417099 821 413097112 621 848149814 924 642871469 20 292988081 711 639117075 409 871146687 37 275216397 412 577264021 175 241971047 343 499495820 556 598221540 778 105680283 908 38978546 69 571973561 633 410575956 860 453696462 265 413103528 693 858675679 412 237401941 467 616490048 698 571718456 847 160363358 781 452748878 806 479846558 313 297728232 462 883025276 425 607653537 748 820940241 375 589805811 315 792946166 416 726242573 981 730246074 438 470115898 641 224921803 978 94552588 647 946456137 398 950123910 923 166296378 604 419281377 157 716878342 37 485655086 834 290498424 746 611377434 649 848062506 998 381167417 759 496876431 118 100253609 531 576313815 400 736385900 597 436897065 143 164355651 716 923439877 916 543643586 531 853039417 113 943756922 773 757472435 950 297488373 1000 31321409 695 652908207 171 584257740 910 666050754 222 365155533 341 770957856 286 859217839 394 903362461 393 996273732 208 52553804 38 381422672 992 126407838 198 535441381 225 350164539 183 894820797 296 418326864 355 399750603 89 741237534 389 831153056 836 239715081 387 122711996 726 389709369 439 229395875 733 622926803 311 628369315 468 917000371 481 22679319 623 328621293 219 139509473 126 960166404 687 940516219 615 843948702 176 818964364 809 452470463 45 535439366 238 292019796 0 842469252 391 565798441 441 728240381 766 606093270 608 727786066 692 650977136 9 685124757 325 492969522 686 871864395 597 379775375 540 799064520 615 432662017 205 327518081 745 251609886 830 274811722 49 45735648 644 341994967 976 451712480 19 237772091 348 820112525 120 358645884 943 44718876 453 23778308 466 467634090 327 579309059 576 505758697 605 299867251 905 665038012 298 457982999 40 257360979 253 428122685 547 592761306 322 432127257 783 865745706 157 734451424 307 636727971 695 741786314 781 434863117 296 942510278 255 294253944 93 712868291 83 562559505 18 41939546 740 647752276 85 184909094 436 331996541 165 196460298 689 793780486 687 332736935 601 738804407 650 984355121 941 561917705 721 605544976 810 83921454 223 821750477 667 900446762 249 687685431 180 389656384 628 783368383 737 29789282 251 195536407 722 197004973 927 317815601 106 840574883 329 697726187 850 255357616 926 918610527 666 980264540 216 20500408 668 101749943 766 266456652 14 735749801 131 865311565 663 213959527 706 311936341 400 889272244 354 200133778 678 509178326 326 593492149 431 698885384 798 299702535 250 146031505 14 903188380 776 62591523 642 740935043 885 205781895 759 402967795 934 564282420 765 380852619 329 906240632 189 898173757 285 88091627 546 132263028 196 48178320 204 406083514 27 47273027 179 882006149 86 502039348 559 297046332 267 732028798 458 901508943 4 84861569 858 365876936 161 175634405 340 545183019 867 427948269 460 8414815 914 331028369 246 992273752 944 289858154 443 74380810 77 810802732 840 44828008 290 376171113 637 726058175 766 680524073 837 754675214 73 679008287 729 145504444 614 338059153 489 978315622 893 997151650 153 714599120 637 40668729 537 318933467 383 768741643 696 26656623 904 350127447 539 899257149 338 645245442 711 609457092 843 8288437 821 575226277 492 28102209 461 214918273 348 955602689 602 387944018 361 499918785 262 460460137 928 463725891 666 563128831 51 388894794 853 817669974 624 446649252 936 220252045 103 177991924 8 772754427 948 105097337 258 406804048 997 138760930 604 170275840 800 218393276 429 730139660 589 127157158 226 855918559 299 143117813 397 565698642 69 233467196 122 207547790 373 472118705 402 708360363 237 130336327 836 553328473 240 339291391 876 521541924 35 240206862 398 443270931 186 586664394 949 571830299 661 81274508 139 675849580 761 173950626 75 83101958 556 309933352 840 847462899 315 508421582 159 595528276 312 861619759 327 724386912 330 251300226 33 735228 638 780423457 391 347807000 35 458058327 560 795732794 655 616302042 103 301143093 840 301756866 699 462301588 417 204726160 176 349655232 335 373396083 270 740568681 93 432252718 947 596704881 646 343826688 884 478551910 907 553072241 104 943209727 345 809611176 168 635736936 932 208311174 348 757236507 759 161758822 986 899625619 265 366891794 670 921828534 240 948817667 400 275071662 434 430407844 783 92069084 810 260498690 664 67465327 231 686463363 715 463393213 163 624000162 141 784821409 306 167135256 788 609690834 323 21310713 118 825454157 280 783853976 459 850015435 220 516314314 495 303692080 345 323713128 201 282610935 997 669847920 449 729143682 758 912204467 106 407143048 717 221367208 80 231595267 867 291559760 908 805825630 17 64392220 651 732342054 281 569730931 115 762123035 112 631865101 600 9040629 183 585153101 503 727346917 137 688943741 992 417226393 646 944855766 150 984053117 845 635870758 884 225426976 498 200744854 500 950730172 185 858985346 366 395842805 202 308595488 209 184053904 786 200979584 762 52748548 591 670543060 232 113466522 609 912630274 383 40592050 563 804288127 157 269472883 544 68461415 712 657358080 987 760758226 149 417596977 374 963330849 768 731180368 987 975488113 366 491790164 100 461054267 142 644030532 239 614737852 768 751977812 760 757950142 778 784525350 383 755792634 313 982005998 440 87498278 251 324769216 967 599287498 273 863340635 259 174741307 990 150655442 685 983867914 239 623413575 155 592629559 150 573150947 913 548979855 211 963207103 459 31791675 41 442359917 689 608387715 816 884177533 900 520676454 762 878500985 703 735787487 734 195043050 987 536665765 213 199424290 212 99157191 255 45776405 497 175050523 88 860272513 71 911701769 446 893562621 69 116716121 992 434566004 214 965911451 841 191874971 783 669417315 464 786089014 277 994133157 55 644669887 709 270668737 127 262480614 838 430134205 715 858803768 337 464449576 926 908276804 750 766553354 906 73652446 689 63866561 867 729567108 78 125604170 198 944603155 841 322512022 35 223651643 571 441799168 479 63256388 74 517312250 977 607224431 521 789310205 812 145603573 271 54311183 504 764266597 122 574379372 749 447149471 190 586915612 8 501163912 646 738184456 753 654129561 503 821002064 830 244850747 257 854567457 353 949694628 802 509262758 914 359244612 535 232732768 359 293732483 844 855194763 431 768159588 230 935749686 274 953428331 271 407063381 951 569674148 327 902075486 775 969361188 405 665231079 938 329936171 295 759359893 247 984408198 36 117049362 556 121511016 43 803540962 738 84393763 882 415605415 601 917542438 900 226928787 150 372693651 196 860739421 88 69597887 384 57474228 457 320148769 385 65790266 61 942232621 928 961132447 597 759673226 28 648362289 753 796318226 97 966888223 263 160034880 492 501497897 348 186296623 613 718776364 163 927770677 857 320377620 28 879066734 587 318082650 825 77007845 357 235843399 102 388945795 155 225113784 633 779511397 251 869407703 95 178443252 884 646214186 475 866735688 869 348880680 597 987053773 95 757206692 107 427171282 548 488782425 125 726546521 964 748852196 517 694270431 411 305785347 988 107941774 304 467459081 230 439178761 634 654511581 810 612983902 971 228199429 17 751408232 588 111223458 234 1094309 712 697171532 387 485081775 794 535383563 849 344843406 28 980197032 610 177050666 409 154619342 481 541309637 402 688037960 241 266964399 346 652772582 239 306920029 112 232008431 457 137005468 870 715034071 402 904594770 218 856573376 54 795918722 647 303954349 824 596311937 501 649518005 93 202630572 659 119243099 973 482841429 22 584993793 777 425111557 223 872253551 512 988420993 825 980670333 282 174160890 417 236760573 842 568805485 730 62607979 542 947966376 798 884527850 123 151874887 429 171790714 579 264243620 655 819227830 545 697013024 999 676286120 408 99176066 8 375907683 79 957488560 821 111870390 148 868608096 883 348985515 616 298592993 639 284570387 456 226515538 139 837031647 477 25759497 827 218049390 846 133210688 345 230316332 346 57174747 456 359724439 257 312603038 111 850655619 675 215354717 314 965097482 325 78783122 240 569135948 31 675767666 185 583986192 394 951056037 670 906678271 887 143589218 941 716733104 400 24857544 23 214207296 515 777341239 310 120326790 976 504905817 354 429003413 9 356459 581 641270059 535 140283726 410 345933521 141 367673424 674 315884972 537 262123852 66 109579232 950 444146015 974 869125576 810 554266815 284 881317979 653 348651232 808 821579063 90 210955780 159 198139409 635 847555940 531 838640735 725 975630772 997 429770090 203 595971513 492 477229098 383 970302689 96 97547444 986 895386751 953 783452681 177 481773049 757 552152910 401 427817150 698 849738625 263 427929208 853 617198688 791 877265739 102 967991395 876 758590379 121 829475257 393 555486284 40 513791873 892 831591277 972 839846902 470 753471599 965 195720780 721 576596096 912 871725951 781 769738208 4 421928318 256 377531222 510 970027886 620 941047217 989 754655722 701 794105541 261 768733286 781 973100154 162 623225413 854 111449041 177 659176140 968 582898555 229 175662445 427 484434168 780 779704035 511 732459137 747 335763391 370 819472472 828 797658488 528 368488457 493 988169249 917 367316253 169 511393201 6 662309123 968 68949690 901 65424219 677 652215272 552 82054546 625 550088757 672 392290416 665 26212712 844 382473898 304 743468969 360 797021118 760 3672929 962 943070728 961 705312576 37 954843011 108 258534504 932 249322554 700 572105098 352 876231555 85 30649649 403 612618706 886 188330347 239 4507028 865 733542655 177 285482488 701 276147883 167 24638581 708 269655400 617 601615582 117 738850827 502 697637473 9 611958051 912 799791553 108 708359611 122 685755560 884 908011853 403 963412215 859 756524301 271 257991937 44 591904615 89 234435779 163 990327142 43 350446532 688 9785027 287 814524928 451 313620681 815 945878385 360 530647434 197 186058230 685 224816109 863 958864088 427 703821786 280 7885639 317 385742026 895 769619713 410 530819068 383 244268354 154 651257684 187 236971119 752 588953984 529 339348888 117 599344660 800 742998333 211 986733189 370 227771091 22 403790240 872 159736470 446 998758089 268 321487616 571 611210679 923 627883257 361 619558160 568 466689167 170 517222327 974 261875713 880 996189287 845 603196521 980 225913141 722 731905642 702 634081085 248 252748788 603 888213785 300 497956466 11 191341746 111 842226735 142 777941868 662 797657804 504 223239754 515 653883104 39 353835790 246 779530384 674 624651302 152 62611822 984 493405748 365 714045104 47 906061280 126 5977640 912 879215207 753 323178081 822 948838920 42 499559902 560 517810843 392 537066255 170 64317657 102 984825791 306 408395818 817 624612062 92 618780775 466 109717359 930 337593589 601 568042685 894 8721044 352 27342890 806 994620406 476 822384584 116 32677674 15 481287179 482 671528925 631 110448010 969 45055706 976 84747310 51 298977343 702 758289057 951 340655095 463 173140390 943 398669023 525 159449839 517 251757462 64 350234627 529 2905271 179 875858327 423 18411785 170 830896965 786 475969472 819 214310431 597 320710421 260 181792908 924 345871322 669 348608864 835 971322798 264 40226631 774 703157369 166 535215330 93 331070519 497 978017337 112 827797228 403 770825972 306 335369449 923 257703758 508 458737801 844 806467907 68 607432792 975 242438525 89 400750498 396 382482305 521 327794091 682 119412917 521 756819256 216 463276912 363 400661234 63 627601555 197 461639182 436 322886101 640 852712891 909 550132339 64 56900097 976 945760098 539 421318899 466 168086624 230 794365822 97 758196360 416 685494589 643 508830203 109 288880010 328 601544424 621 563662170 542 414993954 485 189830668 870 303900715 582 111731357 170 780347978 907 596775624 748 437254109 448 58047140 843 142380614 338 537817989 850 342585160 295 736555667 670 159998419 681 66240414 781 933110687 660 149597261 447 691561164 184 89376021 574 753281319 161 57130631 357 102303962 195 550992769 492 672705403 223 865914053 569 336025059 560 474946049 591 141976992 858 667614473 283 299652527 527 677394645 816 71082012 694 701057925 927 684028235 621 866547651 478 263799926 523 683406288 886 205839858 166 510055826 551 682312196 788 528188417 204 63758355 529 319232597 685 694275685 440 655515404 122 683923559 371 83404495 184 836790220 639 212810626 632 911865963 945 393983690 515 622982782 182 744151236 952 165856288 733 872742017 279 206928759 840 353979393 980 431615723 6 36461456 228 993255823 388 863251339 576 870330492 727 452281963 482 825927379 475 385374740 299 904602335 488 195746634 718 758672576 270 677447803 599 526381309 943 165537902 87 163351668 730 329500799 877 418647680 730 242855533 249 487615049 257 116615846 947 612865883 402 618906055 609 893785620 501 301345647 170 153675946 563 459995633 379 620950138 959 249464069 522 443415729 552 775950009 697 360337195 641 103684609 478 184414560 949 956164041 872 243915641 647 102584118 529 291669425 135 287821656 401 454506080 213 846922261 65 231145813 582 626786611 999 404604085 879 847836149 718 27962579 168 513194473 701 691134995 961 796422536 854 838290844 910 661900513 902 434212977 180 400846649 210 69652966 869 931178919 291 630963246 721 136038991 537 649934446 41 699312888 289 409182981 582 999603133 73 463214219 946 113901104 157 441873617 164 698160329 541 982874162 23 904368397 68 49153019 603 236334747 247 116820075 738 835011552 294 22559243 929 232048549 759 653533450 53 475489119 461 609992045 204 70118955 647 680224535 440 773792856 541 560060065 732 190965383 797 339086900 952 400558038 413 617780668 236 907558806 137 822469091 683 498542230 655 672128386 60 622949416 217 961614001 942 342954929 204 273339614 884 959327711 809 52325741 231 764947478 172 226063141 934 702404573 585 546620667 315 438859166 47 463258179 596 603776412 123 992324556 157 732135060 834 868617181 903 780912276 314 128523546 505 925074078 535 35936410 552 902074226 180 673046982 460 687782929 916 774834857 727 218502648 607 153049578 404 608204137 196 429934346 202 704299328 224 654416214 480 126770487 439 761150050 113 118889713 914 708590562 214 179558532 409 475151130 132 525022304 318 799715614 630 953465255 964 33487273 120 730381647 594 560513760 937 10053148 194 165319049 344 528444783 336 952347139 580 987160371 323 924897136 43 997094600 666 648686069 995 354967470 5 91377965 909 359514329 867 117192684 703 944072838 971 135596806 921 880005451 321 550517415 417 218731805 928 428177466 207 277134553 651 267706304 605 2374097 561 592947756 423 972481063 964 819571907 766 284113181 87 988831424 261 957394263 338 451223612 703 493455124 926 523581541 648 5291525 310 163205545 705 753205249 974 162886577 940 58160433 307 857341082 240 973276835 16 790566150 957 813066575 859 50207261 990 246434 601 399368683 975 943098937 684 796546449 395 962673068 217 619421495 729 214123851 806 510972499 479 269342487 635 904970858 140 77872989 606 378119812 961 843950080 171 220490427 327 82907043 708 763787150 740 158375882 140 825437858 408 84448769 221 299636215 111 882035079 235 331459383 250 806294430 99 445934696 257 196060983 776 947841726 902 809072153 867 183342729 264 685810575 535 802347841 526 238501219 152 57464140 485 832176342 272 359773320 892 696684343 523 704914103 264 969083076 923 608133013 380 612833155 183 830990772 64 142608243 331 619084510 199 581859240 117 661939545 260 520480958 712 706889232 498 456994809 603 251711867 582 41066909 418 655764028 330 415347221 313 705587301 828 20253399 105 952913158 485 42191519 595 147172456 843 428633378 848 799754211 640 361176860 373 986978321 51 188919289 429 693938773 644 959646282 654 73381758 782 626539490 866 8562602 769 380846572 257 418658886 659 538319398 547 760021974 182 700688448 267 482980877 633 787141304 56 427878351 114 952432593 883 960011223 899 954318390 596 205319623 117 664039302 613 957052186 838 42394089 240 653506446 926 563075918 171 15001303 629 535655448 448 83351641 204 770155073 380 909605066 768 325959437 56 823660810 438 121285284 395 668970420 32 292080145 781 159344756 935 319212825 762 685991901 896 239053242 941 856642482 407 170077985 749 732811315 359 487738407 465 938449142 852 581960297 367 426983450 492 601029851 574 885390337 136 714101848 579 280416543 822 751882950 890 310500996 495 905559992 899 836217331 262 516189324 599 264808611 115 394194570 710 560100067 27 783632118 255 656689363 620 598358623 31 454931396 434 455995461 281 1311125 225 571397662 715 710630179 754 653954079 91 538516251 636 424832317 873 991013310 230 42763902 703 704702621 132 680458172 449 866097650 147 37621701 360 832878430 760 168787144 545 638619185 85 728795269 366 763400847 875 55578324 909 239124780 209 212438952 555 683971154 568 389689271 807 755104354 636 198630731 30 41948713 370 940473848 364 811004621 205 260950209 436 406686770 785 245583267 638 1949396 608 656551881 609 18612377 175 510929194 478 882294299 194 44835628 559 993019731 176 709522094 377 115781885 929 112172286 643 231722935 680 599212659 405 619678294 539 78582963 985 936502190 487 348035099 940 438655461 667 270574048 166 578800224 689 878534447 542 603478518 350 765945465 257 37739645 546 893942472 240 131966192 442 575873341 618 964484466 501 197069485 491 441658250 331 604433883 912 139741044 586 339854476 928 182310877 99 986052271 43 975014263 984 63922350 138 235872631 366 282139241 304 840558252 899 456118470 967 868455757 385 151167561 462 835318937 671 321813187 577 623365629 582 321197109 466 473501668 805 379679313 326 151202061 566 768195371 452 352118800 930 503891446 651 85327899 229 612964592 744 687861617 685 936079833 90 353901991 608 304435529 220 306772639 736 987639320 612 839124487 98 124187926 472 318685718 108 243898995 643 393060076 221 301220861 801 535256588 510 521269886 751 637924043 853 114219653 380 98297283 106 307678326 673 999088854 373 132637976 664 214868463 210 732040757 338 744198544 133 66660831 53 645500888 568 981954592 2 229800332 989 467525881 585 151588090 204 423992247 588 741261129 7 811320679 244 307464955 626 543682888 503 550403823 372 943323648 696 784074156 123 411235925 655 35787981 959 770352527 474 457252134 68 295641877 304 888474225 337 513452460 58 727508067 313 826997577 378 351187245 108 691802902 336 189371844 152 979596684 758 479227420 584 709823805 58 169025417 880 9976458 456 931090998 339 615227037 299 213625800 261 113989382 163 292582914 861 921759745 164 601037567 406 720345171 443 657785262 811 44860567 20 148832593 971 3138999 324 454740399 284 842972427 805 643560796 687 490635471 743 705851094 421 970168440 622 917313752 664 820451145 85 542712272 322 700543314 668 319120104 344 405267665 803 592776814 687 860549558 483 98919300 100 107399820 9 62183375 652 405751802 672 877882156 902 404769191 628 997432673 370 261620326 919 882020325 324 539013318 392 484738523 792 131628953 386 175483639 39 792196281 853 111350132 411 476659733 591 635593161 126 339058257 710 754569405 117 714971078 149 668560442 553 402941926 430 95750186 915 268044839 541 328005206 234 692534754 26 148686622 4 264699351 960 284074358 635 231453589 781 392474366 906 178005547 715 369408443 117 855823229 627 462209418 756 209348063 809 298598188 77 116341103 749 305478635 591 168313255 642 834804008 645 585193933 684 444698838 266 910565944 580 166759912 533 602100786 298 19816543 98 349190926 866 355517502 329 919426830 407 204215912 589 389981764 208 390233355 957 383548305 193 717984842 444 490406555 225 613258806 37 401750052 388 122986086 95 946587679 997 19814193 91 470142897 416 431399537 835 597529305 100 872131429 223 581242273 322 185933303 399 115026220 53 504799977 125 223815947 929 114853775 874 520049235 388 572230815 128 156766351 230 460509641 983 684068255 986 316243854 817 624458275 850 614835730 698 130140870 254 229918211 285 514179547 28 748673476 779 223734869 772 497484457 69 825619317 799 990978430 372 766487744 97 4631851 541 843803825 713 802989885 222 606276885 934 736724053 165 394736955 954 904182390 433 602099189 277 785618773 982 495389853 115 169006187 241 99043559 346 116274704 12 728875339 65 566829518 452 514067794 885 241024192 365 255357261 103 210879538 968 737361889 434 924866761 479 614402049 233 844356709 93 427606942 260 260271779 428 161804777 121 271408174 741 926630860 330 417576959 694 79132996 329 706477738 35 559633092 123 633897785 197 80515677 932 920206200 610 294822125 222 864043515 446 467016984 0 969887497 512 655034413 212 429269692 531 171823296 670 952224695 836 423703888 441 549028571 129 59648140 972 379248781 361 717169497 687 321228968 404 78253394 984 940569279 674 850606306 442 793328810 405 207104315 123 112110301 539 534278181 601 410512728 682 42127708 455 142879429 442 805383460 359 389934320 977 223085381 15 58026582 64 408304647 855 210110972 273 800843709 755 316797954 229 711200670 988 733617196 408 115443846 891 329788661 109 999832799 486 438748761 638 336830843 692 537657275 196 763922417 535 555224132 967 866793569 825 151571195 781 26718491 516 317309646 679 728442692 34 475564048 540 450999886 647 261120134 261 785288492 899 658315553 848 314596917 713 707639999 121 587641553 442 374628073 714 349800649 96 519436383 618 683661617 693 146824346 55 948538326 686 423397099 278 180243683 850 881387961 183 782756846 363 478469287 978 702524600 518 512544473 4 379295288 687 623382919 762 758330609 323 924969317 411 687578757 385 314857822 233 305901369 64 873518385 819 53108342 660 7657447 134 726562062 276 465540166 915 633735388 655 629368029 173 551712491 939 338171410 79 977131123 843 887044166 984 132395813 871 492034353 517 73975832 31 556865014 332 89323140 764 606590891 301 774560202 504 473724487 326 723169411 659 441568750 227 382568779 445 38550805 164 149014266 925 356864817 564 844018721 717 978131412 591 993088742 565 572224642 666 901453413 627 912824600 284 322187085 690 907780261 654 279126083 838 87923219 696 590190779 513 555202069 820 772331017 50 965458333 275 897115266 480 129253048 554 690977743 664 915555946 438 42320403 765 835455346 74 608696759 28 768438687 665 620406910 372 502543262 871 999753208 122 932051269 821 441127492 593 539109689 867 756194718 350 246395378 120 455218024 202 825791889 276 84368361 535 709159348 139 307951292 975 388802722 280 931984198 820 963943985 262 554018605 246 670486312 716 765352850 988 560413377 498 897915653 520 835405550 849 835519847 53 501913052 70 689301136 849 224995049 327 887762634 978 812291809 170 449403935 852 258544977 553 683708565 373 356492422 94 73738909 175 359465531 996 62823016 341 54806298 57 854627099 172 599610274 783 491560870 810 740217136 216 524341634 3 920707712 524 102218358 896 995809439 867 867725027 335 536017802 653 292067387 368 710672620 317 231024401 246 235137791 685 693160415 372 597105794 832 627396570 542 247381311 403 714663089 503 855301715 1000 13750701 740 614737053 859 452715518 333 761567192 919 149978760 784 460143043 792 776831063 637 847163112 836 623955758 457 88809549 562 818304210 133 981717650 880 974514767 141 890570682 978 559357713 941 951773603 679 749911293 868 396298969 23 490644446 664 542688487 9 163901155 998 985183161 238 194107173 365 713580034 558 288999274 661 436372776 540 603174150 48 522543284 706 596419113 877 994716159 171 898880264 811 254411844 648 356994707 309 616446196 548 639670379 742 191866827 423 631010682 956 394433957 52 796764305 16 320457175 568 294626128 774 238317716 325 140598876 39 512771884 177 765157641 137 518337676 536 501138459 326 598383343 193 755797338 64 810381999 49 995888200 255 737868219 571 398253098 151 948457057 269 199424239 680 295497322 504 79614902 753 878208948 854 93739867 43 240823062 254 998597182 209 566651012 159 395168169 953 123565568 638 577723591 849 666229016 291 358703922 363 734504673 351 204387472 699 388917358 649 59743625 278 64092712 444 274799886 284 861453735 894 176387163 484 202342067 726 59951401 937 183605793 50 992734843 733 810525629 454 894829639 59 617674726 91 941236675 55 370292663 88 235664894 13 683634034 398 48954997 992 434396582 598 801787849 41 669366036 842 454406479 576 618474820 876 707013618 549 440038634 412 170697964 300 470033556 227 665590357 873 427687775 544 934419953 178 736548878 862 776584311 664 381415283 998 313368359 262 25616241 353 703231222 864 752468440 702 490291055 268 93117472 439 305015908 528 917424849 192 766689155 265 537370963 96 195287916 676 44838785 115 559849241 81 305003113 639 993272322 636 478143460 78 844703245 929 365077839 477 807547935 422 912137388 709 216862472 137 28006726 121 483681385 363 471416322 641 81441549 120 983107439 356 976916252 340 279769534 301 352269228 786 486696333 381 828021351 694 754969682 709 810835308 656 527779447 1 76197192 75 321174966 849 682470200 457 901239974 419 379257345 225 864472529 726 583978469 155 328058632 718 126769596 948 752052743 626 788743973 681 571810690 235 191392554 891 286304530 179 516766621 711 702626689 401 430062959 100 600724994 576 384289569 625 354624630 153 167755791 959 513196398 421 196771775 946 91256264 476 75375560 104 576314623 795 128152012 168 711338901 714 47197715 825 659041225 575 204651002 428 265404715 345 992763173 116 263786950 455 775687206 29 650403404 183 922504009 409 356732584 37 653906366 113 433652507 378 536688726 150 482545716 825 701452937 771 464051125 636 644808525 852 289497038 270 299456669 16 459339599 351 36635939 889 715668329 464 766505697 574 984481585 830 133999018 540 447294588 936 915462160 757 656800504 14 998052812 235 118514981 994 183346112 227 5676335 659 206552113 456 601600518 818 632696810 981 113814764 796 861043991 690 355758974 456 803405587 840 507978060 754 198722125 987 668719917 15 219960955 366 246268803 664 812945728 365 114210170 122 631394088 268 344400690 424 471430196 76 916797806 817 307387185 372 189620947 829 97377407 545 928001247 10 668435209 584 749058808 675 432516721 928 163435109 462 717381320 172 783286263 308 403505504 891 388330871 911 48409186 448 212495554 308 757533633 56 733174165 735 830981781 708 957852258 625 504848799 824 770390639 806 770956936 354 830337211 748 299535862 696 19201054 133 155100352 771 51834842 407 391634786 923 208942308 749 870380610 999 693702764 492 796083520 955 755170452 402 888120926 485 709309822 131 184182397 309 362431433 178 627824941 362 357387615 713 297634143 853 804816785 690 867068049 468 865948261 90 999602178 904 488601662 684 992457497 48 134290141 725 380359998 989 289905708 478 211870907 102 111404219 797 594063372 938 825137232 442 251922843 168 744101425 43 901895494 71 91762281 847 162276691 250 750639421 179 486514008 617 188678218 339 97349297 864 321874322 621 519674954 746 184254738 870 280649425 217 602328240 819 433982103 925 517931388 92 418339355 965 140447969 425 256312209 32 153190973 629 732153622 934 109353456 205 427878362 369 344450943 525 786320187 668 837423386 278 435177286 258 127178521 204 588917927 19 975086560 29 558631031 94 44497645 473 681532396 670 897587523 297 203205974 858 797205344 620 277467953 818 693032240 500 571210593 2 336752875 995 464282596 982 622383142 879 357746242 995 227115625 132 335798674 324 570887759 760 33848194 666 564512723 568 783495510 513 787176391 736 279308157 256 800979108 551 147285250 11 391360065 107 24882984 383 136027848 604 373338390 897 156019764 655 139194101 830 412528960 965 111545599 722 367154281 787 647780338 877 838011917 721 586219941 504 500928026 470 726341142 445 713439900 296 945996075 345 466686367 253 188523578 755 787362365 569 282624039 537 92406947 694 627357291 562 279053328 828 999875017 102 897198855 93 730374679 757 626394268 679 824467628 810 59078692 88 6528569 681 406841470 608 126854585 859 776030132 753 654175467 899 30322379 680 15597491 133 61201559 646 809825949 33 119100449 53 450983512 59 647006898 627 84808523 87 161118924 740 85042691 796 414448154 115 181594053 251 191388313 323 544678625 497 882828330 752 89741252 268 605876520 128 499703766 661 773636978 925 478177211 790 880778771 611 196400719 389 320787665 7 238034770 988 585077532 288 237529090 134 895542640 874 475989431 660 91962065 290 400979138 313 427786333 898 446592882 769 425953466 80 789024330 715 655532792 45 541601068 332 566971975 953 283168609 865 739121254 67 620317925 140 211687530 721 912569796 56 227110700 293 624497250 536 986802072 709 443108582 172 140865414 523 133045059 287 609479154 188 154725416 322 341587212 350 997925715 912 237691984 194 365931558 705 535867896 623 355204869 319 308101944 237 381204967 212 693623626 743 451439219 888 642039285 516 129715407 893 335397405 404 460446551 244 898519462 250 371719916 321 169641631 13 376531299 547 219038729 704 501749986 60 834783198 709 589882936 878 904591790 538 491424395 221 577348163 352 891604010 867 62093670 460 385723450 513 46167716 768 739033491 514 351476706 779 685642602 763 976688275 602 829090175 889 814578103 871 995925571 712 387085300 518 273361570 927 604767826 704 822488819 406 377531821 745 172453127 538 734419180 778 751510830 634 491547394 216 43433350 684 567342495 145 447180276 612 585894741 29 38693584 405 852377719 672 453549963 111 398330411 541 612392440 521 695368491 359 223883896 866 587347338 826 1754488 333 661644523 680 308734633 157 273070349 426 384865104 205 451900154 526 406458071 726 816781504 716 543151612 385 864141238 264 627236047 590 751459050 580 54296461 554 664963776 315 391902105 158 616799535 678 930453012 973 829972115 79 375582526 51 679439549 345 700216486 436 341770303 310 156840591 186 402319769 683 81603555 931 399034145 660 425820472 753 237128256 757 855472141 189 380867529 661 560504758 43 182570086 468 716752656 271 733611995 445 314095411 616 727782718 864 343676140 585 593148396 205 118595927 439 713471595 544 594165362 209 741657876 837 41352740 587 363726828 728 932388478 674 219360291 349 958666284 110 146601948 925 701702417 589 24423136 285 564422323 62 789656876 856 471770869 1 4020196 47 877854448 810 302658136 813 858840259 548 1632054 265 161006319 687 314921050 472 540795431 932 800581493 711 243540395 59 814293874 469 966676677 828 717189567 593 582996711 859 536978642 262 236265078 232 957208248 854 350118935 347 310989273 789 177007526 691 913774592 195 417418402 450 800471459 940 324393191 494 430321543 888 470557474 592 799668327 903 408750150 964 162103369 740 29110858 251 145634559 461 705647264 28 145613819 257 9034541 523 197290881 489 883017742 447 681921129 677 193532278 873 611115663 198 851095594 370 512038551 666 548000695 237 411999336 398 164368366 399 813949741 972 453092472 359 150875121 265 564196795 681 671118462 604 551435211 984 737547041 266 449768783 890 175805365 138 65103399 744 591655849 70 880795517 159 291691213 787 730083101 801 696896759 953 849199041 427 800448597 246 669488505 154 978927774 880 423693336 430 862971349 856 84267012 85 463445131 870 985147398 728 624494939 564 301842162 578 210234462 671 40934890 71 717340355 490 451584018 589 862203793 781 425959149 462 251072165 850 839569944 40 522940316 733 853716498 647 891366320 791 648567530 977 67314346 143 988492704 309 485835499 293 372075628 274 911005530 950 586302133 604 346598278 909 716267538 976 612817726 170 658695798 255 111026605 888 856701823 405 302002358 964 441139965 603 22948465 394 411406452 531 274704083 573 702852314 11 497335483 838 922397518 422 752837450 378 731452510 584 692251883 702 512188843 717 155621724 779 705874943 678 236368543 189 202638270 662 187642127 120 824750551 844 263821372 885 406672314 988 638054718 872 882675082 743 868554156 40 7923994 831 566887598 775 385429475 345 157296645 935 453106395 905 809655281 592 888347665 991 406177862 396 751642283 979 565682364 624 825498149 316 556582784 943 971180110 193 447882350 325 45804644 817 923890386 279 660837793 809 628450120 508 770928146 239 582866288 655 698462610 862 690344582 782 529281266 574 698303862 333 576680827 58 459818856 691 787643666 417 507561351 39 680226415 213 118599926 757 75726861 824 819148561 159 666017915 115 976050934 330 539799847 2 643985322 702 462664417 692 616137950 3 497596240 677 826802147 592 739144418 977 652408844 361 857483713 532 902905780 510 890915870 664 810635926 834 622163565 586 114688694 76 62493142 284 830269093 940 516093708 399 558308646 950 296453312 446 475284095 414 16416649 623 333253432 33 611835611 915 51154989 7 193530822 491 895612629 469 935188618 814 662155546 858 598939127 694 764457885 186 953412085 555 687791255 382 502121985 843 13224869 814 168704869 808 824944733 536 36640368 970 831873868 419 631209781 752 275696124 384 694915445 568 407664395 822 525613197 312 676926319 137 234876328 704 176918376 828 120342483 888 760567 183 792324869 331 897415080 327 64104605 213 656764513 299 334272713 967 909339747 160 779612386 231 557342122 344 544700815 501 704700771 199 970117379 951 436308190 912 141568190 354 783616831 849 354448207 221 196972666 711 1820744 702 534022897 119 132930950 333 538025045 244 9419861 596 715628640 908 399800146 842 592463195 865 974630308 349 181996290 857 469539662 855 185958040 638 866776285 113 764191590 849 262466871 946 24043417 977 191577847 697 156091434 25 63638558 278 399375514 754 796714352 454 692864866 696 116885304 544 563471135 742 98012455 939 196348649 101 889301895 727 200883146 524 580177779 82 954257017 380 655652548 453 703088077 63 65314099 266 697678025 582 184261472 416 48428023 78 868752187 860 359458485 797 108308795 862 793697927 184 112067807 527 921257810 695 143522215 776 179226785 409 34685641 968 652436927 273 404520152 337 377100346 53 285330822 791 35815903 756 226722135 265 171426659 992 420204212 508 427207077 263 934834617 919 640395119 404 519176362 615 261015334 411 705897335 224 127040308 381 102709072 448 231285028 146 127043610 589 616147519 676 3083352 655 745488661 34 452969245 881 181191848 469 148315736 402 410666723 174 831126793 493 580392966 457 988232871 366 649065315 537 305363637 715 75392522 317 459193726 646 621800063 769 704123386 327 943953221 523 102878471 25 149115445 739 606016824 820 69815831 893 316087798 302 617878563 811 982349698 696 753901069 190 771882233 1000 545141274 955 667971568 65 31692088 573 279790014 989 255532149 732 970667388 93 885181105 787 965114669 435 689886081 831 262796059 552 25542900 3 164115320 838 705686076 620 664745388 289 425931695 801 774905350 734 503219246 770 273254499 594 330886827 831 806328437 564 306885093 551 914439781 762 793180553 702 406715952 725 127357889 45 830714131 471 480137818 516 331240 637 432021889 912 364377554 828 973911612 895 969607006 156 496006486 881 642139111 83 190590565 496 85129068 972 845468207 767 403113215 620 982071616 665 486726212 588 423735078 913 554478636 211 960608263 509 992560000 272 17658 308 540957932 19 881748317 45 208776733 690 6441460 795 444461746 294 132940850 928 657918233 889 319614326 711 580182100 645 988942389 162 528996201 948 631434668 971 735562544 831 464701662 528 497036270 713 62569410 153 805342375 456 919725154 356 217620098 419 249828806 642 250201500 541 455617894 685 369040341 868 677207907 704 17218431 895 636413805 956 360081909 326 541989312 530 971532664 961 25237298 451 293957759 850 164508952 745 385915408 46 964526639 324 390750057 778 384215148 670 947416530 735 140120808 617 720005150 494 484508292 28 447599569 734 588589163 642 210746997 959 724048684 691 729807257 440 976699430 449 265229341 69 741976924 507 363418130 4 572253208 741 749067934 969 728794504 539 637815012 832 910084534 377 365070846 668 362272211 335 659581918 862 120115163 117 993706522 788 999977874 222 593485702 506 816164861 500 993486466 206 109435909 205 87588083 227 305549002 372 1488425 251 443848058 72 921755884 621 886261682 154 232397571 571 25943360 304 111606764 357 628679665 658 209795463 174 992836238 624 118286433 270 584964878 900 625460132 14 702530185 797 831927993 944 782159972 920 997236009 255 343645624 376 622594583 265 925262718 41 163438479 139 3843035 418 671308526 31 581466598 970 219187894 210 555075907 157 755555103 149 665351668 730 116003991 891 302622746 430 809597600 533 481238806 25 848490181 461 466794424 928 389273678 136 90429919 837 139168253 688 820382420 829 774324422 642 667810302 759 121499556 698 370440991 595 532938496 116 417587840 256 350814401 896 909094305 729 678586455 932 283339970 949 461866521 623 371799284 608 573945751 16 89623007 989 980860465 692 205571320 623 949838068 524 418043650 436 741782596 52 630058710 203 148966424 427 638387011 179 281919093 743 158900955 542 220026225 753 728542668 495 173728509 51 21215228 177 397878865 18 733461926 55 989512374 891 762528042 887 385228201 801 884605445 625 914826574 418 942628781 131 611494542 948 595711400 932 402657203 441 710211095 573 403957794 998 126621247 777 563749107 488 668208689 47 456014626 721 503661200 348 874354924 458 312398096 691 782470685 940 656224996 186 533423857 604 98757811 196 624598531 458 592727287 734 193806405 841 623673218 267 487705059 456 310185532 474 981267930 741 716990351 276 701034778 345 377744426 407 569709933 152 920419002 233 295107024 752 634841242 154 980151388 760 222272487 864 78152721 835 502610504 13 249775740 984 604705857 751 539325571 392 826970818 435 995606673 562 989842414 606 300006908 856 773759657 976 650806857 310 312113497 802 298371228 490 962035556 904 73679488 43 297997201 579 929552660 670 294162507 736 32719756 101 178207174 829 890861503 933 759420821 777 174995678 106 606881848 212 801015371 204 481191029 433 172150003 323 796119473 177 428171232 970 657162789 967 521925710 999 357599909 727 475294001 476 508425304 631 138624477 135 906210480 715 461579588 685 926617968 81 787406969 310 311737598 735 300685363 858 704431709 442 664367444 586 475375308 410 819397270 313 122816712 362 264391117 691 543021776 221 850001691 14 882736224 702 49628110 578 423900778 551 795619276 709 200791882 879 815322938 781 745852814 292 418354435 473 513216801 156 652727482 427 113163607 941 908217467 509 736428610 12 448287033 1000 132110431 830 26170815 157 340813087 623 213046358 836 103147046 272 860881927 0 285489714 813 103892860 147 264904224 419 227318217 172 335889354 958 194418092 944 309366933 752 551251733 259 598333497 612 89605084 269 520939950 494 139106827 489 994748719 622 924155156 368 484629334 493 823281094 371 608005741 464 847299729 85 572423837 214 708400448 731 477614278 794 282622018 936 723513062 544 498880964 381 361483309 960 310189082 14 644161221 518 917645206 579 633321157 195 104972902 552 424868711 206 473062220 151 430638743 419 113358146 737 87299811 177 403079372 82 673029376 289 929987421 712 39673464 187 942629064 66 7671415 774 860395053 877 676858818 33 60111361 685 89466347 99 411420696 357 982577176 489 714606972 320 827057822 977 142983690 255 289308067 806 661569278 451 326853141 491 275399476 164 471589712 512 466857695 657 110618022 861 40701694 194 378392457 925 723666663 236 221216171 588 825189097 290 90537717 326 541827585 72 180161634 986 673060204 577 776683851 315 785666377 966 729769162 571 500313485 944 657832482 679 618196125 535 483855348 390 171966972 560 901505059 824 426803405 838 550211069 214 573000430 864 909142283 66 221407259 111 502886300 503 693518976 622 348798658 4 999573166 516 143479695 982 678279715 85 999818774 183 456179577 293 909817989 910 520661306 683 945959741 390 810529506 261 530449146 538 206885700 407 917033483 348 551873806 15 127943614 451 303260012 464 338570302 634 149491331 782 60251564 597 555310676 313 581312719 968 915468231 224 339007223 141 318822561 362 494531170 255 183397310 19 453848261 463 569510781 317 304567675 213 517935886 483 30218117 678 441193902 173 30106513 835 550123776 498 434556227 281 219031796 987 189683397 563 768832506 182 278128450 414 391897331 9 505716006 491 998264292 198 398043583 4 916387008 704 539681008 581 240674311 168 17247515 754 255517386 725 674047901 951 595251214 681 53811046 882 724471284 641 839636671 530 227076048 914 593137299 283 312897858 843 199264970 887 502922643 969 17222496 276 935548085 520 864348268 720 206031935 849 199339823 232 216779829 352 61898334 523 492887101 221 723431516 506 881858795 159 762699759 533 999351080 263 570471629 78 297783256 219 544073013 830 191208238 859 601528659 802 218447254 30 657479746 241 673105037 148 112717226 329 444523156 371 632883016 298 46261571 93 762903902 636 477268834 135 518069032 465 565704225 687 44248401 94 766544497 518 401447235 629 445251174 155 125425315 538 413193319 794 907971599 946 981491856 666 66649461 290 903371824 677 344583388 519 302207934 64 979443690 197 11901086 468 425489054 927 697339175 54 764822625 42 302412912 331 8631200 915 849196782 914 963460278 504 296872784 836 146881714 93 458927375 318 270131921 705 513648173 281 992035174 969 761622927 38 231524795 972 972903054 260 237974830 975 873037324 160 295501907 830 58989591 812 88241630 293 769735568 676 288172596 407 721329903 127 735763500 824 36069135 952 208105931 813 228116231 160 170737750 781 139808180 528 373843269 556 875746022 396 320250736 30 581376941 508 702602977 886 830019194 438 974673779 379 805639535 982 435807945 370 956022159 509 31523550 197 230100824 905 730485879 617 195878350 969 452570885 536 939429062 181 488397282 499 407416767 593 10170683 12 90463707 266 776147447 441 582556280 871 499343595 327 603550479 93 647820524 959 759330315 105 42550581 820 509703181 853 829173933 900 952855254 672 574452002 99 459908004 378 293084438 727 609652839 43 632990589 308 494842983 582 25634704 729 993527771 773 690094718 826 346278827 518 368519633 593 527622155 572 43831326 277 750884236 787 431454006 453 751839457 685 946226160 332 371544952 33 806463997 569 386734824 376 274165667 627 544042884 248 633068268 116 91077087 558 438777701 374 220434852 474 335847400 63 460478380 739 260889218 656 506675602 472 715085751 169 205482596 577 156023186 851 43681025 439 537883776 909 184887647 521 634911034 5 228126275 511 274486334 821 844066289 407 475945028 151 443830959 344 255483021 23 91676267 764 712116736 720 315739638 74 453733531 324 593720203 539 254763001 173 552371148 878 238586281 486 807319666 797 448283593 907 930507818 667 802779451 826 927508289 795 699961293 221 436285146 134 266686617 748 358778135 755 516978960 956 545668271 144 745711319 671 429478544 409 329183891 642 542422416 99 147296923 670 875851259 264 483640676 36 375423848 888 732925054 274 988140772 481 692507550 367 811608298 518 550977224 503 578085175 726 361996244 760 330802955 996 481155865 315 535303925 249 724856158 48 284627186 637 506650773 123 818922166 198 199745811 95 115689448 6 607056163 597 569631419 162 342430496 927 606470025 242 843455173 182 346928684 489 852781600 582 378533077 751 90774468 971 659660290 723 477773203 341 229790699 317 304322868 120 187113518 14 312130485 14 829996097 18 234628241 570 294714093 579 560086081 872 206349661 36 417465237 158 847430649 139 556097119 310 987972111 290 525182612 37 156508745 365 279276080 428 376568163 917 308633671 908 21865431 761 959888997 33 809552010 618 37782779 787 582161057 854 250251196 377 134060981 122 114973549 95 582766908 816 117534644 588 46269775 697 52005402 60 919133276 128 140221231 116 615412231 541 177474655 286 662051486 546 536658177 910 986101200 458 385909859 850 149259829 926 995020044 38 573503565 718 588013979 40 380451490 425 240710295 29 271164250 867 953573755 142 789949670 962 809277460 204 156093027 285 855950524 117 988263397 855 872184594 524 207275788 169 434584890 841 585329697 523 328573996 768 121321719 617 488139960 32 744064450 587 137627676 462 837054502 140 961974224 854 897395249 796 464394071 682 930732011 397 382354777 816 348246148 726 443017735 941 939439887 821 330054527 713 701190967 475 293484369 632 144466597 188 234890406 157 665967834 960 952141865 9 293789135 334 780485232 426 484208281 368 319519516 846 147205180 236 117408556 418 500587486 483 684008577 988 145495481 874 847990787 374 457278610 919 327803957 13 938302657 843 264136281 145 991396608 256 61466165 701 916963795 438 25545063 330 169378059 935 924264064 104 664109702 756 97989741 474 535725118 659 480727691 782 91729067 431 738276242 6 867132170 605 618384903 184 2086206 985 324676682 70 993005069 796 863028713 659 667924884 59 871310606 860 370657404 421 283025458 849 215131069 652 304843975 486 261334649 967 166817916 157 702483403 701 605183081 164 286204533 0 986434829 757 971590239 295 670598959 485 717253406 636 748868780 86 625520626 101 990621277 682 734641797 444 723664119 203 604960211 794 196385558 111 557721590 438 83680088 871 875956748 274 629321921 132 413752149 565 863909659 910 215150837 616 561820004 591 243744415 688 472077850 235 538475357 992 357565973 662 404794725 833 567589717 180 168404031 651 289081034 146 282339791 802 853866235 79 666302157 475 719244022 130 354123857 422 500134965 502 336844144 810 664099115 600 52093943 568 952267808 411 202790519 548 372816135 14 36215900 984 376381933 963 492009369 68 853967283 928 9264968 466 327037744 860 487074807 756 580038856 670 513426597 375 126478220 80 993852726 376 556794848 83 52753014 158 688918231 786 438300460 888 904731009 943 913070893 583 952493679 317 388344699 888 189734390 486 443994624 681 940032022 784 855045261 254 726253101 456 443368936 995 695367339 735 345575326 70 671618074 715 448666664 299 180133691 679 559775291 564 527121294 687 617077792 911 928728208 523 328423245 996 191797374 380 476125608 410 493220599 308 254506867 472 317534646 643 190744354 496 846526885 742 453102402 8 599065904 768 207476766 506 970078626 669 723242242 337 309166184 479 542845412 538 109987155 293 188574357 253 954815481 433 328254794 924 973786486 232 703756972 970 855076167 574 588282744 976 175688514 532 345326029 623 906067584 709 227806960 207 564417279 714 531930836 581 521307569 45 797533850 283 592520021 882 996284352 194 418875796 767 555523065 530 766822085 752 681407176 329 456167652 686 779057725 817 355491382 852 198163739 19 526629589 691 238107372 820 93133648 886 329052901 418 179539081 259 688374295 860 119800941 764 398526094 809 794327302 436 471174031 969 988350022 183 683288678 908 827299955 479 443591516 379 696577630 553 69490666 511 535359654 390 659236924 979 998424585 257 469878278 995 668788777 38 743195684 259 849145173 191 28315332 639 818799983 97 490175357 361 334454766 734 473005755 210 943349294 288 77910073 225 667839853 778 317939877 146 773246114 357 177832247 636 316201423 845 707073442 660 552122058 678 775009746 206 932362560 727 45128752 358 792120233 382 332834547 740 141633943 885 537370047 752 405897148 885 557384410 456 92845205 918 504803930 519 215229669 358 69068121 659 891186495 554 914935601 411 87065900 958 444339534 135 977573164 950 623181504 854 400966720 196 845518655 727 219674616 568 243159714 898 137560363 275 864567033 346 318620036 869 2111758 320 439926427 972 631095884 994 794965655 565 386713865 297 489601128 138 176821010 55 705697080 226 778454533 195 184157043 397 255680706 793 486444968 191 414025360 784 604484713 487 467042946 481 45518853 948 210231392 390 8079141 755 672312315 779 839527346 992 533898588 401 68139535 59 91556682 689 814256560 135 16958174 836 64582054 420 40343664 439 682018520 869 737054878 151 496165029 912 447296790 891 410672035 4 88310193 377 662151176 480 407675217 869 735800930 825 29014690 931 897375269 128 608735765 876 606804216 966 151660504 433 368884838 182 782366049 259 827298172 526 366316686 535 495577509 352 765480298 19 294330055 201 551740225 1 645734838 539 133379521 266 326423998 157 863901938 974 378440676 38 646399620 134 9387580 612 441363341 750 745809338 224 133299889 332 370202100 848 753148464 97 333058683 477 868144022 819 981665134 433 391173338 475 714477365 314 404615146 493 848145977 65 699235845 467 301396156 184 426292882 528 903244029 891 59041280 78 772677871 690 173282141 675 519559368 747 491952043 114 172488446 742 117614730 356 967696267 540 727772608 713 98174997 534 414369376 171 116335463 494 664752579 985 748613384 645 301272906 714 527764552 63 490385021 67 435252629 815 786198000 547 716430520 63 989591836 858 693927606 451 855616998 721 954276739 964 906661697 393 628947103 50 24880016 998 151224247 423 636312976 738 673506919 158 521495202 717 197174582 458 628526628 698 892985451 542 542319699 427 899224226 862 629855075 931 18763725 402 136049253 732 2915225 588 58193198 487 918653167 975 278852426 889 402706705 476 148232882 544 379608314 79 173948316 632 470291944 675 976472666 841 10472783 228 154285769 138 28185192 525 3211894 542 264532267 714 611219913 890 842792906 594 191406565 618 812635222 51 382837365 132 746509481 324 580620951 80 719679999 186 930259721 280 771159028 87 251232407 33 546963942 882 557323533 238 891103180 446 214815407 583 258262377 762 223652816 776 927196473 171 815645479 32 79213449 351 390351137 742 816464227 646 780257421 28 608661814 275 22709130 93 605939674 57 638254619 431 173650143 780 478720858 360 568847614 436 869191833 796 318682098 540 274448241 669 457343563 55 781040157 401 90795849 659 60637161 686 309922588 910 46031698 574 669186816 412 550067127 671 868849183 602 693621017 126 193678301 735 809623262 564 122050405 333 953979615 938 389870657 264 513066446 47 706435747 685 637003766 506 929217368 650 146677457 52 933776464 104 117237605 821 206255476 328 232875024 435 666763854 656 716345056 492 696253918 310 53481288 589 717457287 779 997371516 243 592713372 296 471268511 388 340012758 675 546531206 111 110731102 343 460932982 325 381208636 554 760268577 182 786733836 190 106338068 907 432830435 100 369937262 131 551611842 997 909309648 613 744952004 705 739590544 165 782543868 73 149513041 16 396335707 220 466746158 204 198814546 763 846981467 334 812075427 372 593844795 772 250387258 364 376219556 12 946512272 518 296567549 239 668142280 918 154464621 892 120123911 718 921102827 246 949538525 232 329313118 925 658992742 56 757529684 307 806596099 308 156076110 834 163975869 501 276719455 26 115706539 123 113297852 999 204584709 232 625276521 660 713319860 828 845862119 538 860919641 508 543150025 608 519667795 250 169796517 536 604729271 19 15613324 847 282460513 384 114626349 655 766369466 346 829388463 352 984648730 573 853704171 123 149728167 877 979431857 807 609733217 995 399660124 207 510538955 880 787572185 429 896257311 205 97350081 595 382460083 452 365537724 529 640256691 412 813949088 976 551679558 561 661637337 225 31179647 998 3201243 81 522433964 121 258782052 217 122928227 114 280818936 200 634515623 582 14896168 929 787876516 187 55820470 301 751066451 267 697991543 228 716804738 870 164626772 303 351364236 51 757595349 604 550681208 242 188902328 647 750776936 161 110056226 968 278330987 280 530082277 273 132451379 147 268721558 247 873844733 901 453063956 561 190815405 625 316192130 250 721919658 349 328816986 211 499237381 728 976372872 285 322025870 357 782063380 361 181997636 620 152475754 990 716062574 959 846390833 232 493158850 976 924208256 123 526006829 403 881508173 138 471369218 657 410592890 153 801290779 129 527157598 558 253019131 578 8575262 930 425578483 630 210430610 774 430120527 712 184609668 902 972688841 835 546831006 211 383747529 802 265310548 411 249921537 342 374648097 649 719083510 924 733671620 509 227128477 471 255651376 165 793492658 235 728117834 339 234214548 396 408344557 837 89718079 813 540133760 241 260103906 891 888499283 618 637075642 831 511659935 593 10616130 300 285026049 747 875761872 369 745501029 177 834527940 589 61502399 353 636207650 514 665249467 878 86387392 263 288139016 748 984302731 261 564406923 277 188749929 395 999876968 941 848528841 528 749922727 234 79170401 336 682337457 344 910398081 832 432721581 747 938052671 875 934871732 263 851845749 992 662380663 820 123517349 504 450640608 250 597217297 811 206690877 729 785667509 536 431368204 819 500520100 414 983038807 37 899641271 376 799929765 144 210231582 667 565363944 654 438754288 69 709823088 627 941471464 869 712176076 932 59439567 284 207050718 499 230805715 455 371369368 336 111730384 585 603574325 784 494298660 999 453788998 29 988077662 636 81539980 522 490037931 257 267875007 320 984387228 501 62729201 893 912195053 920 398270223 75 303639334 599 882747030 936 13158109 199 268590064 491 512493176 418 547295225 640 883827015 733 358044339 815 357960189 191 524415360 571 74477151 750 29573005 472 809026334 296 809068759 608 209923998 541 420740883 175 994660908 838 2695460 327 436776302 315 111771131 33 739410043 102 282102214 439 858400455 269 442126071 474 242097589 5 467920504 27 736552177 864 841736096 434 597005782 773 815118341 303 372375127 998 842826084 855 352220038 217 666421725 713 870636842 743 499914174 623 800255782 619 377414387 705 81199706 503 644475478 472 962763778 986 367707198 834 928834466 1 777281179 255 984946689 624 234805071 308 530301645 925 151952575 961 864392770 987 774057214 718 349272322 115 480660800 611 18716469 933 34268138 699 648260648 773 81137224 326 283560457 637 622848869 460 260172289 891 9201430 301 761336107 646 455733711 133 609156869 471 479501492 157 108224777 142 638099493 576 956395879 990 737317658 570 498649029 320 710037188 846 642649163 595 541423390 321 3902320 885 926630004 538 194167214 883 908734528 975 855677015 884 252063565 184 823186755 56 771104949 467 657602215 946 144968845 940 531378178 722 640462563 331 131629668 705 703970453 779 469089728 961 252020590 772 664242354 773 399868821 392 629168647 96 981803970 435 217556192 722 542846310 327 92434980 57 65641450 600 5333486 759 351707802 707 58792567 439 29428494 15 441531761 297 913969055 715 27449124 423 593774131 401 629523476 828 259481570 979 398410944 72 543869439 673 767404695 45 176214163 986 938285171 719 703310897 729 145656888 570 303436398 438 535832070 977 434805016 85 110982049 776 885773745 30 321815994 454 311573196 990 797503237 751 653579078 497 621794021 97 201617461 979 971375591 27 487834161 701 736259982 36 102320439 187 392645326 375 939068005 226 824602062 522 7578386 828 286295160 548 961087336 748 744258620 589 984575801 642 184150264 452 381614968 222 920580281 695 924656680 903 749679571 961 973747928 325 371512651 31 432227984 767 753578717 314 646619464 667 72936487 218 61768790 26 923594147 984 427831543 134 513381493 777 932382574 756 874948963 798 732580730 813 871554794 48 136023368 465 531737603 434 607349925 990 816736757 307 583879340 314 658652598 973 952734615 655 95050287 46 375338432 746 655678658 0 687933746 791 530043480 760 497474857 378 416896512 774 41207354 774 978537763 817 941919147 789 987920262 561 277585624 498 749798496 885 351081059 679 43968375 408 500031718 767 126424294 168 111220136 252 89825202 495 766433002 921 903060174 947 897100552 351 289933622 759 895389013 954 536811455 695 624149153 60 100794240 408 438739801 395 77342929 232 226060672 565 332944494 198 743310031 58 167070591 770 826999712 555 213804835 811 918106367 809 731627200 363 619706710 147 339573506 181 716684272 778 675461689 233 413344658 170 590918465 776 176694121 980 689300355 932 333364691 987 971227655 607 598626174 226 23895241 131 506186876 823 536838417 838 707206276 256 741767677 992 759969424 836 370088670 501 130741937 81 937506407 150 741383550 453 547810449 302 162827473 850 998897792 851 745046668 26 258632776 266 560865115 206 551557129 501 454156335 22 282221464 266 172595124 880 839368407 233 873476519 845 946655430 460 419407867 545 604521488 93 788064890 217 853538093 152 755840785 849 50905658 790 753527380 243 791209216 432 69440518 499 602245736 243 708860816 722 895823364 669 40056895 419 766152038 933 915843500 356 283587393 551 539049467 31 376419935 793 398259823 9 937055466 78 680706316 996 798541417 809 424735064 178 42828116 902 431004825 971 605041548 125 941734319 349 728073690 682 611687770 142 287294408 188 426948242 13 652714626 469 595624275 712 42881970 676 723162951 352 384214438 387 997520608 901 513419809 361 587966885 113 936647589 549 626964104 562 275258812 397 193719965 21 958117787 900 740282369 766 676213398 789 734662670 683 55430816 281 564161700 365 684629055 525 571311127 695 371846493 385 484769736 229 381215365 465 425352799 107 918596794 172 479603633 933 526947125 465 781011480 680 975892672 749 596351423 950 827220088 6 713158651 107 96189614 363 355747748 64 817864963 312 554437531 704 673881554 318 19231761 903 395483927 354 728676921 556 554139310 399 169856083 952 803802789 809 691652634 516 678312297 363 922351535 894 939265642 791 277611391 473 110630763 69 874521962 736 756023002 753 565506211 940 210491108 854 527777890 241 331036938 98 670789472 337 137308887 241 494717827 702 723148989 613 815344974 550 948789008 279 153313459 368 506455580 462 645889087 498 87625744 970 19563830 316 293697535 295 187539102 712 399838229 707 145167699 451 10566453 173 149114749 807 55834173 79 522810904 370 439157696 71 702789013 98 20843397 546 631736047 612 963569065 568 206304594 374 725740627 14 703024958 618 376263658 280 440701909 371 509290738 421 17135180 278 59960390 39 746877814 775 724122885 180 655469790 253 367289085 211 84596396 834 962731489 525 544467981 375 288414761 779 397600040 186 990823615 315 792946088 467 669444086 804 388637465 739 467680311 417 23609595 108 168007535 468 10137048 560 640130233 346 734087755 471 644619783 848 509145291 717 447932126 282 334769637 204 522517336 750 848289073 838 849380592 982 517010662 790 776117106 239 988336183 334 304435631 82 43848565 526 478426484 518 210088285 625 781698986 239 386136147 688 566648271 935 905451524 458 397724052 466 775119737 61 356828303 223 834343020 957 943314628 644 974971052 246 494013178 974 60538128 926 513272303 355 916965470 79 93299408 446 456238873 403 800528851 702 423224537 126 672270713 349 268252087 485 698381825 932 94408271 423 703554808 607 932624864 892 534566203 425 27250604 473 962463798 854 772943476 843 867298474 974 159520516 907 858613759 97 319978213 664 974610491 492 118496190 954 842992635 465 547036344 954 986045873 296 792099439 164 306038996 938 967019202 334 321684924 541 551734620 610 510337397 82 690128273 638 881967123 51 697553667 452 361430599 255 341439122 683 953654011 225 82179030 825 999442052 796 161493669 324 202343935 364 334045183 443 49397590 768 787579626 326 43147175 914 384233788 893 777828054 92 206753583 260 170658288 792 568505997 950 136478781 501 697202264 882 552966484 361 341011641 500 304822359 860 979987406 978 745657236 630 567918494 851 293408934 281 13868735 258 948318382 871 941357302 770 790937488 400 800214807 721 860927070 277 500501931 319 203869521 375 210435077 779 887941682 771 931889543 941 69770605 864 703363992 262 52283677 144 590854496 139 506778729 781 739093876 876 397345780 745 781873243 80 77609049 198 960999952 668 812854742 636 110732589 283 717347357 33 187209297 607 448849016 94 373734254 49 983590925 254 524096108 269 128866708 856 141510125 327 287410841 916 332002031 158 344643602 585 457713505 487 654523266 78 930578695 474 6784865 630 528640838 649 385795389 801 761020300 25 965881874 242 587261551 293 386346616 855 425456000 689 903297376 449 64965017 284 991880046 60 401131096 971 540156477 559 123772203 378 688123742 515 263691585 744 526103252 840 665845500 89 54430281 129 524088058 191 264289937 695 553862082 244 415762162 261 500740068 278 173022355 969 728079954 688 865369767 162 617791054 385 777749227 674 356240793 859 826439869 49 688505546 391 423900799 906 524329553 991 510713765 622 235408721 597 795471714 789 65055122 900 452003133 687 372466076 415 19598311 766 136358101 417 907151059 580 335670876 785 197187207 227 443406004 346 784992407 263 695258485 135 565705676 500 666794279 734 872401616 861 156397231 618 11116393 454 65740620 386 62231985 17 966985941 89 135262424 613 876299494 17 311141131 56 367952124 128 423393382 506 805746315 863 393047521 439 291365719 21 352833512 994 803821015 617 355519434 717 622409614 300 411609282 381 357797658 597 612580866 334 109405032 927 418438279 965 266497531 604 564072336 478 744094459 258 354115969 436 843360739 359 330010188 150 410273824 326 302545830 869 618576138 868 518909565 200 571958257 428 342331476 841 872857319 143 5930892 561 432644532 41 957356195 263 692117075 375 700278489 331 529502849 627 325422214 526 752554782 821 384925401 958 371167892 315 279914285 171 478381598 196 585035825 143 281071426 352 336064916 297 300506057 442 622669211 669 101998900 43 52222352 215 329562200 160 113930283 588 27322121 753 648201762 399 343955414 512 478860148 683 640900314 688 915049616 321 314897699 410 294350717 730 364426991 114 342753869 857 202274198 915 273606400 323 281796367 918 282786736 438 52371474 752 372108691 344 145662989 711 843444824 589 150600742 616 319928 677 580171238 807 649371509 91 824213658 932 571816989 76 365981165 583 400088688 87 430476778 896 340866922 733 449766435 606 826700829 100 63053188 277 419952704 852 785601192 588 844709349 108 225350804 886 889442699 227 554082314 720 17545355 749 910394600 63 122965516 591 604760637 222 672052512 182 933769878 128 453702167 534 564158935 701 624637069 346 790843248 159 769287678 145 943574447 98 334875821 108 503633436 339 177369856 286 726322171 871 724068592 524 205703526 766 913716370 186 341972070 186 191469752 438 872673794 206 513810536 115 59557053 463 233003081 457 474722610 658 962119779 925 477659002 792 868826783 177 684749746 372 539938517 346 582467732 128 345300924 63 26788284 276 787018050 218 1379900 421 326199748 277 870512583 877 249059962 400 997787851 492 631120871 911 970704033 898 492697020 632 7198501 48 144990721 784 485129325 417 564463633 409 187455518 669 427612845 285 282471626 779 382974910 886 657986282 417 112841481 640 918073787 763 805112192 263 325845497 572 751704351 242 456667826 552 796781677 579 915480633 232 798641930 173 124344942 522 687125938 560 861618057 432 523349183 563 942858680 177 487179088 620 228521598 803 541636322 706 874783534 662 754312273 424 489763195 860 427359161 235 131879254 616 363451231 375 699974247 732 675397326 202 672473156 136 702152186 331 915739464 139 17925257 589 618862843 233 182201536 345 868609919 743 872331365 295 652733602 635 605293477 901 457955645 995 753704467 646 278606840 773 906237437 287 20307828 730 140783832 890 737571122 325 569011170 250 835976097 521 711702142 604 300221558 847 633441634 424 503703883 919 527589859 159 620078631 625 595287470 781 923251352 51 667813626 303 902455481 555 952852345 252 983297786 766 40415195 219 775553760 414 949217448 21 164252862 120 214066388 670 129611757 982 890625675 924 366727972 127 180612600 988 707977529 912 220917508 916 756808527 360 601224575 694 575671085 509 99531664 803 591454194 354 213937040 326 144427434 39 428966167 503 278648437 955 904833353 131 452649731 248 785238426 188 561886126 535 965455998 920 258518526 159 263844591 576 47223858 530 320203404 53 266231862 664 215287050 851 970540377 671 721953777 466 419142696 607 355482040 821 787535885 475 621988528 280 149408973 54 629566756 567 547286666 920 216617620 407 241220599 431 496313777 178 548356777 663 966751948 583 958614610 493 569391830 112 270535057 11 374708270 416 608652338 332 685340507 786 400189182 837 890211108 293 204402549 905 509435674 350 546418937 455 495039230 327 273219054 128 362829850 659 926180319 345 600477454 164 492093677 897 161373475 409 126924537 168 862689615 534 305477298 909 170718958 880 702052251 193 425412592 236 703434732 440 352504674 484 526504269 807 48903985 293 111207272 744 525213795 97 155634092 114 441361423 487 289990050 612 687666334 296 838312376 808 937280474 20 558182043 75 252673461 151 172051171 51 228772610 93 877180530 354 770981653 223 299189235 932 381954878 291 131956255 257 344427251 517 274152421 863 855554244 316 775893948 464 354718618 567 777556736 92 611244955 242 777595898 708 389526370 124 558451687 972 581165401 352 682805723 51 620248116 952 811247165 987 78552151 181 417490636 776 131811767 866 414131848 259 271713347 576 810528901 750 329638628 332 675062054 265 866162672 868 727087910 138 475283864 508 529567117 39 306392918 697 996162378 984 994995901 599 316441479 737 415244910 954 706827230 743 818103475 799 475385754 198 348742198 825 501388505 6 539266926 444 131348897 580 282817132 340 705151366 373 442238410 743 843539660 679 296328664 467 155788546 466 960571040 730 944748375 519 119738133 186 152643658 717 538053129 514 307716882 925 828138813 36 807832653 970 317690251 654 834671644 799 662337045 647 907002988 521 302816812 914 353136951 858 331816329 594 731660707 316 43833059 232 162696149 701 966798 317 807059737 211 620231666 432 549431660 394 817085577 4 456468711 514 876305726 947 664775851 704 613783084 581 879547789 354 961774032 376 262770545 243 358737278 970 455775026 433 319930118 236 649678253 625 613007748 687 339583530 652 550467389 328 952289476 16 369585700 687 434206431 52 86685398 95 545320250 364 939211822 161 628922625 814 998180910 358 373609089 186 294960509 776 606647111 389 497106609 928 577972826 850 370401693 295 478840956 823 485985759 151 60247045 385 393108952 106 957552136 691 889508336 850 966294163 823 504725815 182 644872087 707 361883163 853 856437062 852 764781101 105 326411735 469 524470625 970 295948396 9 264484532 479 25648493 821 35215128 13 346971742 546 323714591 261 312212694 123 300403054 494 778312837 534 334935372 940 321004022 387 388243040 658 590156943 206 773127904 844 824302474 439 578775801 505 903918462 961 85177251 649 870661967 544 480959433 582 885176074 217 219851833 175 381345257 917 815943662 12 372669996 591 240570339 232 720986277 921 165516705 133 929747673 17 45897543 240 97475937 988 60394707 62 574606865 607 301838206 125 320705929 567 752238567 622 511214323 500 461740000 933 158690096 421 155572956 500 478164539 178 370883629 121 227979003 789 44842322 325 156127366 206 885511583 42 547204890 523 115896586 414 267018777 648 148092134 561 463907779 378 576992982 460 855937218 406 581207834 599 462367706 321 669704174 761 244743134 477 260320470 930 152036763 482 531635043 412 365952435 888 200468483 943 884840932 414 644978268 297 495098363 982 915985638 738 563978749 765 946446739 763 811049863 532 566424191 165 25016601 456 225770381 834 644386838 984 317807449 991 143622033 500 23080047 665 506185173 68 472926050 855 588926167 82 204375606 516 7969516 306 133560324 270 493792594 363 819416476 579 661657059 963 665146991 599 732523115 58 19495954 482 385988519 902 572776976 821 802592246 572 862366035 400 222151936 112 722273590 527 707459382 844 154317767 450 202335603 892 603348340 484 345747007 397 799201815 681 968822715 82 19461633 844 414747897 550 160761033 718 581372712 25 225899846 636 35986221 539 143821901 485 578818096 488 516770193 678 611340742 566 305022538 530 153026513 79 19991248 933 667073470 790 788217186 372 982084291 771 243314069 553 899466798 501 719163364 518 157669398 21 433102255 199 136835488 371 177965157 24 732859897 988 847806918 131 473581612 323 706210702 493 108919913 650 543744017 539 59990472 687 721387265 762 990752990 930 531844285 771 264970372 985 546666211 911 428850821 447 641209510 602 564727934 660 534740255 926 535967938 766 67323636 755 878819478 749 968641775 568 699756894 986 300006591 43 936567533 55 869612934 177 263531000 859 469582395 665 197019214 201 787402520 553 76505107 755 385062080 933 239707190 468 148850833 7 107931875 702 821552898 254 626533948 466 576524068 569 510555433 717 684379713 594 144974146 51 642925873 853 275982455 650 128549511 834 128895593 663 364583192 611 617500496 646 838804352 533 420017926 274 480676476 203 464612557 104 4020663 506 138038254 467 70099974 827 130254126 720 752212202 588 551985655 588 799070050 811 953197591 980 248438232 799 249604417 168 557307254 736 219150029 545 742930108 627 823294670 901 699902246 964 430070730 723 190433524 264 923583047 256 410499643 4 365085528 654 288192903 95 345116487 164 210021569 482 674673065 914 313701185 260 545478582 354 312326014 953 501110456 129 329153121 107 597131348 646 112018618 4 54854608 345 491054502 321 679049889 25 68195636 980 218788117 723 954438710 526 117666978 937 640187158 554 880594492 754 397662678 522 219136420 761 621560674 512 645707047 860 912655627 662 913556142 32 855917054 263 41481242 619 879718160 831 991072286 501 56093025 577 515579320 286 426341452 815 234479843 861 935796428 857 621536021 160 528298691 862 489810862 378 535728475 537 78198132 499 15272221 871 765412263 796 585369200 998 124473644 250 455160737 1 973320957 709 821321343 934 979660745 786 111615380 395 522378230 463 757073488 45 917551813 365 388563805 941 252758085 349 629125616 837 224152027 897 402693291 661 915059114 20 798589487 58 116411115 389 303541144 112 954285791 23 743776020 157 974006961 366 177637869 662 47253016 492 119963822 279 768110033 496 347080781 519 164306148 836 491524800 301 783233587 872 524085142 852 705818791 313 858358635 88 229612141 671 855857726 583 843710770 961 925112098 995 382931291 675 280420461 693 173728371 78 286720724 612 425475248 541 379940130 24 847221636 677 723520195 414 489895031 765 465873833 948 242254289 648 289218898 254 780347029 862 996681906 228 348373440 895 146896452 67 331853894 227 472813015 704 931633900 676 778205981 719 720068280 604 466277310 780 847593639 86 164630826 784 693063220 60 199270115 532 121635411 66 437239563 823 913194174 465 387396815 285 274143010 678 983915932 483 361910527 445 988056867 946 751147593 696 413321235 508 931192246 890 747465545 751 986551184 785 887184791 786 898276205 987 529682616 628 550828206 821 183357160 726 247340047 821 949853631 501 416549782 951 821216824 552 528070997 91 770412902 388 783875216 419 153553175 544 488023610 321 660705228 875 134458119 431 671546697 486 259493467 200 871128447 61 8037016 480 209110274 845 338763930 812 596117429 782 465263459 580 373810904 409 112415854 190 852965551 450 449205618 19 117345605 398 63951213 112 88942567 611 419832143 220 272172391 139 756783711 335 419950930 304 747864546 860 991290235 627 339427225 534 951735224 126 450544738 23 158851124 908 244454668 880 655320264 678 731612799 465 381949455 20 193895191 882 905981688 488 745793747 511 185222161 2 96099153 563 752263810 695 771341583 75 688154097 440 359792692 17 418976563 12 208917310 773 627203655 74 173930445 334 208561936 248 853659595 538 709306526 7 558546734 387 209476268 811 654078769 195 393300059 967 207280128 651 10354132 118 540119490 50 682716328 565 329153105 979 304857067 881 970869582 230 457397534 608 510808634 169 40477721 456 481154774 913 45095393 129 824497814 8 29489398 468 507285295 597 389734438 956 92874502 596 589518022 325 14459374 521 316028616 282 811152039 914 568767936 312 591634373 42 472679847 99 79608006 908 911600739 741 590857306 830 243476255 896 136612357 491 739935487 217 912349338 554 419670757 839 597188272 654 697645361 396 350089446 983 977390719 107 325304774 904 297632264 726 627881378 944 231307284 426 442195046 737 159212628 206 307406524 36 868032141 67 548606210 428 336099664 974 376210928 705 974078191 85 589460260 254 762447184 421 279378408 44 633766364 835 30607090 211 243896939 281 772518449 607 610163107 652 866793836 266 84497450 609 592501577 358 21631672 622 348717538 687 883264329 439 747086365 475 704923916 723 295032258 305 864324999 578 546239413 432 383968623 266 645409431 463 499281025 400 899612052 381 433693308 136 575423372 680 921271213 777 869775971 958 385565290 212 455631489 260 446851183 883 345522708 578 737658595 664 579001660 291 821378910 732 341227390 395 259443738 498 264543670 328 404715025 906 690116274 544 486318390 896 186299210 860 180259850 571 312666319 602 447678172 269 454462175 663 809187214 727 304261957 772 62508372 191 432968940 138 901717049 893 39025219 842 182590597 519 939050020 609 760494807 810 728922 97 855905792 477 546197913 813 350299432 375 367719911 683 87016698 376 601009900 984 900182595 181 78070307 39 747324759 198 670454826 754 963748613 324 355961082 616 59848334 473 183263321 415 796784888 515 618865985 808 263065835 878 989592051 237 7629265 860 780096594 706 973650805 934 890254106 263 951478728 326 739701779 421 209787036 843 685374208 103 307830709 976 735391138 226 721764018 554 244462657 202 982476833 412 586889358 566 194909343 438 933473975 435 146521599 246 414346270 691 888582069 935 601572347 699 753078225 286 587370093 399 214845491 834 199907446 922 122144740 460 937822419 379 329266251 147 317405612 428 653304719 456 121336296 227 168399669 736 229356402 382 271269713 403 129359621 985 799481260 722 855109854 499 434895048 265 280667079 65 68940854 541 628593977 411 882156927 876 269565781 475 330383886 671 111168638 914 294031550 385 550788687 903 209694720 703 726514683 243 360906632 310 220913065 247 722619838 712 968314352 174 546163075 555 580002361 298 833333093 699 809085937 337 113264968 847 934188083 288 582103251 957 644193056 552 817276475 288 438913228 112 473888956 89 709738255 209 582230786 420 344757564 172 213079918 973 563856727 135 810823967 745 253752773 552 729371663 385 567626297 620 612250523 699 145980853 525 795054673 367 652644575 6 642008612 917 431229958 50 250229758 112 240043711 389 574005286 857 544293178 153 61674631 843 69284311 684 458482361 969 147399445 542 234205810 904 802949182 734 103291117 141 572360585 55 911769706 395 593797632 983 311261170 194 95094353 530 976368897 862 807038976 962 215737343 648 920978414 949 701807661 94 84122474 503 167667894 377 19422751 737 205121471 723 144858904 685 758802677 752 635539687 909 786715833 705 299764574 752 419874200 25 772855961 117 483139035 564 734246085 353 137546476 908 447163292 45 779500267 858 544562197 451 694220621 456 308742834 173 548782150 489 137972052 269 290855742 193 286903513 143 37115328 848 483700862 385 178157399 146 196334388 657 489945996 569 88173366 796 296575031 132 131142598 548 185457940 858 495869502 810 820475897 321 602946115 908 643858693 586 765020005 745 698678009 254 924941949 699 969358221 751 573359942 782 375938095 534 119466219 886 239964186 367 892810327 987 525025987 704 368809389 789 518242420 308 581399284 404 967421410 171 365755718 106 888793184 959 577041214 567 884722912 99 378962126 419 19275207 606 187953284 888 149445766 226 638037664 363 425529932 286 413177125 91 675881680 620 962510040 879 99199696 65 550978151 661 513324355 275 330242892 150 102756904 333 345206060 588 939168077 93 369335808 435 200098596 729 327323858 876 948190781 723 163495979 371 400909869 652 869944487 973 739449497 437 953961161 431 501607412 522 817263399 285 14722624 469 656519734 373 399572162 688 12113508 795 113925863 233 411933583 740 765960648 329 134068014 634 466078105 100 433227348 195 44154553 792 783643296 168 795944895 450 707654296 954 935869359 372 653963041 516 122195104 119 819662823 676 132923110 756 252908194 279 969610698 274 562936892 488 17114967 358 589838720 259 108794760 449 386604888 672 987459435 228 390973455 34 419045724 248 806582848 5 327508027 280 501132984 281 943260917 11 680942811 189 562827187 799 315086090 800 572046855 762 345176345 103 630653786 13 283244743 183 390934084 681 438456845 564 340386678 888 81364078 869 585392489 3 570829850 9 698442472 193 321333338 893 193108988 894 939711503 508 759989020 983 226987551 643 978298931 619 653495789 113 890395643 661 599919809 802 183221024 650 550595530 663 981809765 796 464509034 774 85599808 152 379160321 415 872003905 580 495555400 544 332757154 500 458374460 194 259279591 562 373469441 745 273780412 166 520306593 219 45157176 62 750103751 129 842801389 13 849322277 719 18680236 731 550560580 833 629612472 116 223230345 343 162349488 886 169856873 89 47668259 409 718006279 305 930027881 640 510585343 130 31732254 686 427614200 154 560918489 593 749880882 964 171838581 832 757132906 810 676706844 714 519395126 889 612827486 47 187969362 403 465273918 388 929928017 99 651925434 516 911263533 706 541986057 208 501969927 355 38297422 159 968924455 163 35161950 482 650540178 376 739758312 844 736830723 75 179544126 564 801848730 298 801147921 148 965747467 298 317315454 581 611802019 703 90284801 490 193902236 896 379583324 959 749439568 346 818452686 387 548025732 192 937179471 630 163024147 330 539135324 788 479109881 127 793254519 52 414654928 182 394210929 216 130546650 589 993911108 921 263297794 613 146373163 790 440071023 337 706992578 368 469541792 521 993911927 489 562149221 135 211462210 368 879761982 706 490547565 701 150651693 215 362981439 842 216622745 790 601613149 110 61950877 867 465229159 983 560585391 788 971640121 974 619557240 448 259388722 470 148602806 588 736100008 749 749974176 913 732933872 741 317772861 237 821139134 531 3360806 219 186018255 598 71729568 781 899360813 109 702533536 97 691436823 920 24561433 856 845698294 421 791895239 406 919446952 802 651477352 491 858566459 164 493381707 594 89578469 116 617646742 979 635122660 134 663398359 920 587959830 679 4487303 962 749121932 496 686809094 513 416553044 315 299218741 292 959907647 727 599815736 3 123303955 582 600066172 38 525402771 531 877977379 934 854814872 59 182767518 40 175645688 328 997943203 211 302760205 537 268344356 80 370627205 879 491635060 887 201551632 363 472914744 336 316144403 571 820494601 287 413595005 594 716499953 822 116469691 799 663385391 685 651837576 128 676666861 599 491795895 396 930054206 460 907964973 49 368898602 52 307809563 128 228118289 866 259917715 480 648686705 266 178062390 691 437314599 802 504309845 183 100599150 849 955948758 955 590855663 971 764392508 65 154712575 702 315388321 700 495648768 788 414091291 166 422790689 54 626056270 326 383775068 215 506027221 264 183577787 459 39094594 481 822635302 265 393523079 896 161208752 999 63165263 329 23880179 810 160110261 453 396979274 416 956852794 545 536289994 177 108101116 729 465131617 397 992401767 419 29782307 692 328034902 923 279506956 777 307051365 732 269652410 629 269393072 467 722617639 245 977992266 229 598747555 963 544387245 160 42430258 202 441740154 563 752656212 805 572867804 449 57347503 11 699086634 629 897316994 807 104540948 53 411945067 582 388171189 634 351146792 745 628305082 272 641719326 883 428928359 442 638322439 382 475911934 213 636558165 765 114688761 252 284138826 939 780012651 38 376702986 284 302207626 285 928922605 70 304714327 852 7791830 773 430094077 591 733181729 308 843888804 313 893669810 40 283406623 841 131252575 733 255361643 623 130964786 908 288774290 258 743183594 846 848298243 833 897662380 644 649428540 232 938738314 867 700402222 711 834615025 400 348668237 443 950437390 185 364255752 477 937981056 288 591345927 417 174213368 105 618240141 811 63086788 740 140997703 399 215148455 51 31688986 911 444328415 321 509598655 76 722326455 148 271198634 97 309109198 686 349884161 575 855369817 761 82890636 579 732893589 737 9264110 396 498457466 593 598043930 341 59972159 410 946307161 333 743641985 873 299577968 888 648230500 481 304650019 443 564863312 230 165685919 328 858051587 804 37163630 664 347500526 872 434831715 161 705389706 102 792500232 616 514942247 42 351940916 107 145695380 732 319707703 735 178774846 110 596497070 820 535043550 546 370885130 705 527404145 86 40982067 348 66538307 568 735329372 867 794806066 513 146144815 786 168627018 900 990722286 816 687316056 874 507842202 917 873225498 197 926325867 198 209068589 271 724977337 626 527315506 742 858947860 220 925553077 693 671230062 562 672198342 775 995618660 690 659691469 886 633754324 557 299853013 57 282107666 887 29472028 878 559549795 338 192633403 499 649453002 110 297213689 334 232899186 616 126712458 458 406279131 769 261624997 949 801330871 956 853927945 521 564021277 104 612427380 738 377542125 493 456155670 387 571322431 522 363753704 456 143361263 337 989485026 578 128856900 699 754534463 195 955257996 173 960712342 867 910778814 454 872536967 540 658365474 305 197933577 837 704732176 109 919006939 582 574210189 515 186018323 695 755091220 186 176497724 345 221867957 849 810374249 92 435333556 196 902878769 488 599144302 294 493665127 35 230777880 977 600519078 431 60243312 38 179043795 58 954808876 526 473896686 909 402975052 557 44388436 679 6836178 450 340593973 702 587408840 735 882834199 669 7855848 275 157292094 495 797672477 178 562980933 992 22695486 883 363689709 634 594595038 534 464001570 113 215040627 894 538840610 838 606571414 763 281441917 448 833622689 527 935556905 23 433793014 143 140008309 244 799755090 67 531771978 439 305599916 964 819695251 921 879653807 642 578243119 588 579301527 139 927071364 640 676354903 579 533893525 946 902378922 377 40265410 375 686845270 565 214076561 218 473978440 39 214222730 417 833629958 800 125232193 619 27528677 636 400657367 559 38106574 195 685576796 24 588245552 767 930336742 325 462328068 743 804520465 860 230889253 492 911994055 57 292340545 718 346499705 384 882348066 731 54483518 378 226261520 267 126948635 556 298367899 805 877540958 751 136800206 984 803830577 619 491557101 991 597889196 604 237834093 627 913675971 819 627358799 716 978533506 792 500066205 600 190658266 255 823856656 164 928078586 43 648215698 159 116524789 648 352781404 288 709392596 476 992865071 27 322011499 227 150059265 198 578771 2 664079563 10 473315264 16 13890357 545 225205000 500 32840895 693 270120444 640 495941245 247 294323893 846 780121170 673 230024315 110 394999511 229 726802566 739 34944190 450 496320473 281 737594346 633 897683287 490 662001508 826 277503118 580 270239642 143 482954738 471 483449042 340 69649571 199 491893618 954 402356759 183 789421207 170 937459756 773 770007644 534 395716524 847 494111683 348 737615673 894 64763363 955 532981755 771 661765385 549 537057907 638 250627731 840 181583236 591 362838973 326 848900706 845 236458415 309 444848113 946 621606169 905 989951788 201 283489528 970 830209485 199 846386379 938 40721962 9 161272771 383 422815726 934 657747901 876 128999609 47 771382700 988 226360314 247 743392878 993 698182878 371 909840460 548 769800994 168 500863716 424 702275881 203 153724031 445 944314193 505 794761272 604 137796430 332 824922815 859 340534633 228 193098210 398 402283618 997 353508443 854 938493615 309 843002452 586 619249724 6 542315049 130 562215477 414 19167706 790 132178942 980 754745953 205 228522978 16 959798784 363 645046006 668 947024078 726 617448970 697 83356207 294 83453642 7 846018743 378 346052102 373 75775664 847 755291860 372 243474515 228 776352238 447 986356337 454 651820657 332 902359446 943 424947982 964 386699831 903 505391757 940 647498694 586 907608669 543 564787375 711 659177135 394 115111811 427 996063075 15 631164403 507 509796157 209 403634609 896 857488956 563 305792819 338 426681451 918 542621019 992 131766724 549 776017290 155 947179650 542 538832796 439 813943807 461 113531369 696 182725078 896 610719695 843 528472975 49 643498908 671 995872450 73 334624811 393 159850341 382 582306751 189 477441398 621 255142315 911 110100431 981 691438614 76 539774497 859 234520362 880 189816319 838 28363121 788 266348686 764 52326357 863 957652609 485 953881912 654 215278430 856 603241303 487 893110714 323 727671771 717 750757779 686 571574848 759 351106707 383 425597568 631 516160238 91 801964294 981 57435305 83 452340778 453 840338355 648 708500789 750 35103229 326 385685489 873 539263170 415 42598317 328 67882311 871 890953835 467 175098049 974 503159275 998 672034213 832 325570531 377 917166279 621 33014293 621 226838405 216 608184764 167 899766377 484 301786755 557 529107762 211 506108084 990 49597871 627 828644787 612 737901409 424 376945402 333 897265816 667 829543476 977 589309656 757 710105931 636 360427244 43 119073282 619 135525393 412 961457780 465 120150661 72 839043068 111 449141974 91 391613358 380 128092327 814 248759903 801 130973250 132 650793563 293 565048516 435 56637663 880 703333653 125 511843451 423 558842722 586 988689261 825 410837836 286 278174856 693 933174869 923 434627316 734 191448141 784 447507600 485 839171534 524 661620023 57 173523336 109 582063043 145 285653973 121 472186141 327 516589980 206 370005219 660 531937519 452 350925152 323 648893506 86 824663744 579 985199041 118 109681307 960 816019306 836 249149960 517 90328446 778 658383669 489 887481128 255 146388328 393 850662832 811 931220583 849 246656349 533 364733508 870 883094016 555 636859112 482 265421993 930 129657512 681 206608353 759 173452192 72 206549553 470 354695335 470 152688103 649 62528190 847 640900878 837 693698741 98 112647680 251 387608685 745 974987689 253 631110451 206 888695428 822 509127992 226 358522608 297 949460024 133 433825677 99 454471320 674 336050260 338 382281706 853 659440958 771 672702019 402 745534814 746 56706179 43 56229549 21 669743873 603 322218651 915 826209454 320 425792286 180 566973392 113 141993522 366 285275198 949 382468898 516 634383922 446 182638538 408 882671875 912 94752237 840 41999649 643 63875393 851 870899093 490 85290592 484 150809916 610 184355362 7 767591715 841 173172794 522 423611375 465 655553350 18 63942110 822 966159945 431 586887312 15 824653401 594 870924640 582 418663327 379 440531433 668 911153682 245 586873892 350 220289247 726 960577193 669 676444178 320 134594990 610 755333243 419 127214790 637 880923956 186 971809319 33 167078392 724 267036880 931 995015034 982 997216777 675 393846968 67 464271408 461 561006343 698 344164738 611 110562868 98 591584870 821 480275093 486 774278025 501 278815475 365 362885977 367 757776601 826 809736627 253 183928484 778 157327050 642 69901259 246 738952653 980 697592984 142 513114388 756 522869647 192 307796086 666 171784268 413 799789013 781 509376335 550 739254492 603 200239635 929 111057436 742 246437793 259 445142518 990 623121296 441 486821777 319 405965512 288 785267179 381 34036777 356 923023042 595 240133208 592 102822618 975 892351309 159 619807217 546 349982515 484 146424537 270 432720086 181 729683283 185 437528553 131 464054622 944 554746181 775 678154165 470 996271196 661 312144590 859 600997116 149 514903982 30 870337285 797 693285378 434 773208027 876 839658336 555 873713286 42 197461082 955 326323245 417 875514017 735 559328258 826 403996226 910 640867514 286 170010363 583 146090773 953 915136439 825 651003430 981 728851586 310 193166496 68 536684739 753 942410826 977 59367945 633 469318995 308 447392063 985 457733390 831 180318424 480 329221459 571 375836228 727 264111947 852 493048350 96 854273788 560 628172466 911 665420167 784 244415853 966 927505105 341 619208120 668 579584965 318 211879198 609 933597039 138 866823020 649 562716 815 396414993 559 821677141 565 448014284 338 411707577 560 438735830 453 104696841 325 523924393 905 276367380 915 27885823 285 319502114 589 39128348 707 920688954 533 56313893 435 985099515 573 700678118 884 273812766 301 14045101 277 938926624 102 388416715 729 299452642 2 581011966 312 277573097 879 821588863 866 652785056 713 459800252 774 850700507 15 760140901 729 710181379 899 1276931 441 85554948 619 514003015 490 358324210 589 7348589 66 457994123 291 333501250 197 82777574 300 962257580 522 382965963 52 96867490 24 871913036 148 879518681 851 19322664 857 480070642 267 483410401 412 261164296 899 652541255 161 680732324 573 46288029 79 420471813 325 623873686 687 329248095 175 869365499 194 601891675 64 473406367 91 489373182 662 563739680 509 230581863 955 141254920 616 619383291 25 144857902 541 741248054 912 388406641 716 319712249 796 874119768 25 578666380 625 746207255 9 401310695 627 505623250 98 189531762 994 606434193 284 719624393 535 432911582 122 757478515 269 609376805 914 960803932 812 971201607 158 745025491 590 175208824 289 681834985 287 717835459 795 90951988 143 332821100 662 342393561 465 632914252 417 301767856 240 761725426 458 260942743 179 203613154 656 205667895 446 274408088 373 770532654 614 473576726 648 365537660 942 337931180 321 855016002 844 698279131 838 173399363 95 139925856 221 81412272 248 598128095 518 715964282 133 504141193 441 169811004 952 337999444 983 641995045 502 610534411 267 807318990 936 245274096 753 185194273 406 217264791 283 593561957 63 429011190 575 759550940 284 688279083 94 803818003 582 252277601 604 940745588 605 528561294 145 525201257 251 777432039 223 175702165 3 22285531 397 100303224 818 597585255 638 306479219 919 149401958 983 154586185 373 658701873 778 294971281 329 223239212 837 767645574 103 684210939 38 100125664 414 962289302 454 848744397 661 938523056 98 134551314 653 27955833 471 639633725 827 780461218 46 829257612 54 592206169 412 861856336 872 623915801 349 136009593 786 217794155 638 741842263 812 316589640 973 27285318 742 898481402 762 803765255 888 285381440 678 863373889 108 712919535 687 50225988 465 690474974 296 76152402 670 377290952 357 583766559 240 693191882 412 187474019 646 621940371 815 888443676 553 251535585 312 646943722 621 796622362 507 799023013 289 770068141 250 854266455 346 389801189 827 61362385 153 984378143 801 795115521 148 321778818 736 135136171 400 882967479 695 783748859 521 176504244 317 25952287 270 215373639 609 538974964 364 747301804 502 938150895 797 44121695 861 393472611 140 89226666 221 958604853 130 789378552 445 613045006 351 899250290 981 491807635 890 320090350 287 492962862 991 512032924 126 281428057 287 20151111 173 969860676 338 107170126 255 692707047 521 611247182 777 664281392 844 15391562 594 806769818 895 918915906 432 700771613 174 419914898 418 628835893 588 121592736 771 724006181 490 177058436 248 893370104 427 242376197 154 819527202 698 880551761 888 130640057 821 536566383 985 854786700 744 478233515 185 4371761 451 858468567 913 574941566 881 324444495 602 32988623 519 784728539 559 252676991 532 934887565 358 266721828 63 223087329 923 578951265 328 441359831 918 396095611 138 736763557 707 886452765 782 367779541 291 340774537 798 963260563 127 499939636 337 421075616 456 494707607 213 833721225 866 401053968 670 500288861 520 317342577 92 585252862 923 214875741 254 859489428 500 822462883 350 774064373 685 545310159 219 945220204 984 232690866 309 319597712 245 654121508 887 498638010 318 758958295 219 405481695 510 166809305 989 206763024 405 923499968 880 821566629 996 863420183 53 536697090 465 824673852 499 773450468 480 705742120 379 689719247 836 527759864 760 862747376 615 482511745 324 393697543 861 656459788 146 37707646 687 915195033 595 845293470 490 553783865 30 361907400 121 508426012 692 728618142 788 376741631 244 973087956 443 196012186 94 718135932 609 163829366 818 900590278 137 362220231 434 558159460 884 307095920 489 120382433 290 582424840 706 474514173 183 993821739 573 293242070 610 74078317 39 557492936 60 136103491 493 121922602 540 331509853 712 547022937 341 275925479 727 773342782 603 214637478 672 813578283 567 4039909 48 717829103 736 608495755 612 832833004 886 812314279 555 555310629 755 40795469 586 284694071 207 479106014 434 991122744 844 86144782 968 61831500 354 562680165 44 524203192 731 639389150 39 909407347 137 397684996 530 97176568 633 560511295 561 926806796 35 238138900 472 957188205 938 66364779 738 329077715 623 922775831 310 583550352 961 231635295 176 921799308 4 735715759 299 969570741 145 891406539 459 520486269 682 500118547 868 959195150 242 152177043 72 570411958 368 398667236 483 909140362 619 846282406 584 31861788 490 784566462 542 810060425 260 471251334 791 340207799 136 230460039 652 462635390 509 450344193 870 11774232 724 941753977 756 400726656 273 699234804 550 76209249 920 43208474 201 352617972 16 621281215 396 919293363 922 995195546 58 290036463 150 513051964 717 641409217 197 245693902 302 500220328 131 201206749 610 223979559 43 783483910 247 469468943 198 780511145 765 665060734 254 872267326 38 249550976 625 439688509 837 823916932 880 382364838 32 274298218 7 884088908 478 290543466 698 301067821 805 475400804 650 893731167 696 165152817 349 907350262 653 125452971 266 285464781 305 28079382 817 810060554 442 282699373 876 155162693 287 573255216 806 866080318 244 691556105 540 457928065 481 160198344 915 454418128 123 179633557 19 31828125 825 947183890 608 805287116 915 514029806 515 424558139 57 574921800 703 842997531 687 689303661 820 74292995 186 819106803 945 899030077 869 874743597 796 264662321 404 115434595 583 434818160 616 7834686 373 906900737 978 317490403 424 179120613 312 724568726 990 301820126 403 909553066 719 305835853 909 451827023 653 978974381 768 299077577 772 264498333 916 843282208 850 611535199 827 443333197 157 159420445 878 7003306 596 608025966 838 626417128 261 57119403 911 355045020 98 571867959 189 132766937 32 474775846 916 177159354 983 881358830 664 174017153 58 733006306 32 202314562 126 653573645 862 204704166 233 632374917 239 752394864 123 852714582 483 423895686 969 427206314 564 786146127 254 185109237 978 983844357 798 864141967 847 261994750 651 176279558 344 125577417 711 28129879 122 336604460 860 785827222 155 496300398 502 417822377 62 291591554 310 143475268 828 502706571 270 975086227 873 333150828 361 634400389 256 642751841 273 671853566 132 553901362 969 328026254 953 43551220 778 552937325 159 779264293 288 956341836 519 100728219 429 47360410 879 378442692 254 291666025 821 982096194 915 675118024 394 887743182 208 62759092 860 323306959 590 492400112 801 62711714 635 377996548 462 418659858 761 157874445 806 531297488 458 780405379 859 326772059 393 500337302 840 133169685 825 741195384 602 743756362 239 971811404 877 739903611 776 501899017 73 838089733 364 272163926 115 279912853 664 979258065 240 918676309 340 532109787 627 775652269 408 908357053 985 92440047 17 656398682 745 782044623 101 549393699 431 52932413 532 976355399 140 613823627 98 636187338 101 416670706 371 814623041 595 35497229 266 990081646 197 770486028 278 317488814 719 976002642 9 827911362 240 85298503 309 755854429 38 642977938 812 918870937 343 414570018 551 840005905 653 404464754 522 867114123 661 693743552 277 618686980 848 26826023 540 696337334 291 231726941 773 334176200 884 675637815 575 52326865 931 614866795 4 732666622 594 382916804 869 845760981 449 561249278 188 140180288 939 397634674 237 50042979 311 516358397 97 463337468 490 750246289 851 350465979 840 223588568 918 484203893 794 506093494 36 412534014 431 621028945 161 64501646 708 595235705 207 445360878 15 692897908 995 90098378 451 151592917 842 205347637 848 289060651 745 854992912 500 499762358 928 736213614 119 746907754 448 286885048 483 935028701 872 563645831 208 104734789 229 116766116 668 100635542 650 109925685 511 31722346 411 318245224 594 617779859 670 816752108 267 494207362 569 591369645 818 963672670 39 327419020 707 671946906 588 446435312 120 948888312 179 204066492 755 611114192 258 251167919 765 511486972 826 573146607 494 591871534 892 963194529 646 734751037 783 436882413 439 151427435 788 516692240 120 124211764 26 191556453 967 69540716 351 72877741 405 421944624 250 112645034 632 13538744 902 682419455 689 505233728 670 22793846 778 583968391 426 735168636 208 201434226 590 603232043 879 766250763 540 568332340 413 214207795 130 973984697 832 127361221 875 799355956 359 595837052 380 804643644 290 178699031 267 711385009 201 189837775 105 864162872 888 662387478 181 59389795 577 480533090 90 203365739 660 163705042 722 733416486 243 497611562 113 251980919 199 561561564 616 2229627 795 70445780 867 170952115 457 547621136 945 125051383 57 632472502 429 971209863 733 535398612 141 417477175 765 305042929 800 456484143 855 278692522 785 202867104 412 534116710 339 471108355 659 874075612 633 28976654 991 815076874 619 544744870 302 284872442 518 15682473 382 842997471 378 570844292 0 128235100 256 794886676 34 114131591 692 900434038 475 50948271 495 809452104 8 200510551 654 363546197 655 352603014 62 638987524 159 14442460 460 874022886 571 385185351 122 137385055 198 988958647 4 604939300 662 950431201 267 554385238 984 601274253 752 277850588 974 976360335 942 805020141 870 740369649 362 960873925 305 957893934 171 64015426 668 618452671 386 552601844 273 240740842 360 186931585 977 527214603 646 802342586 39 971395685 979 345131361 277 18010577 314 745981377 120 825250750 633 874964271 972 209748877 373 347228587 402 937294807 888 68390475 886 365349760 495 926641857 532 362021681 533 170320347 679 581883225 389 578177220 922 524729198 3 437753983 346 729064164 888 503006895 74 190035047 499 532857733 198 308964792 555 121748623 182 329725421 413 293584962 262 814743036 147 987471425 492 192102873 73 882152368 130 523027223 247 757255762 842 392068135 987 729303387 835 667568684 377 841079118 711 269546374 662 900454066 77 439478163 873 456631301 945 899442253 53 222146340 338 502324536 943 761356157 884 960958273 785 195032150 690 889175285 402 807104589 388 428960731 13 770105771 522 247599903 437 516265498 977 853206401 497 274215206 945 145046839 756 639126290 827 284600564 502 495960477 166 383927078 140 348892131 857 83959808 84 384824242 814 6475862 972 859996640 40 252259253 453 554481003 405 329356105 118 732075700 56 594441325 562 175904285 553 557297294 842 930233669 624 722297972 378 852354735 390 904206992 724 59832452 188 735499644 101 867801518 207 392131135 539 600411645 769 328181087 826 463261564 642 12547139 692 963533519 872 206577787 901 218130838 242 626356721 287 674149408 502 446896221 232 622702444 814 829878695 418 860525815 212 670748105 225 512540661 419 209229011 457 601907681 879 251067002 219 523094032 905 736703194 118 95182274 845 972017881 911 126807210 164 213520393 100 243396319 423 265883568 682 834559221 423 708559320 217 977847018 321 622243704 696 97915506 380 921116496 103 848782182 748 515572812 868 488265115 501 651624166 464 255644223 822 489125149 971 131715066 287 643496826 67 906237681 98 248282325 405 264209971 250 631649819 770 228598426 647 534406946 870 978530624 951 517562552 994 599240017 345 204720051 354 469250592 62 585329225 185 477714261 182 130790512 143 816192659 889 559140305 101 111383461 449 488103404 350 949744239 289 891327773 857 905722477 840 316861150 557 892061454 14 196805627 117 709545455 244 470336155 431 75224167 317 320360335 122 896753446 89 233518233 355 495489147 860 823088501 95 616262342 136 328873186 731 107192017 616 43781689 687 335296869 433 903321558 408 840336500 371 26725714 224 713236089 856 934977949 22 586588939 976 522624054 632 767548298 608 276708555 668 494100907 601 838933277 294 163399144 507 816850431 914 359374446 530 412293856 53 687201134 148 142566231 178 191451170 822 551526979 413 693853227 438 230821814 948 306481294 185 793656559 932 775332130 405 277387045 839 87695876 456 574933123 153 840988007 90 968765272 222 354490542 13 879075595 997 711272538 741 918003814 948 599010149 123 603092896 986 650224526 102 952289709 585 483166635 827 946675243 560 897849916 519 549512053 826 757416862 937 828049526 263 759562821 660 763699982 354 63785404 670 334265116 351 52464845 329 214007872 505 417859207 457 641781718 982 286125341 888 512562289 570 360931027 940 97433173 853 574979633 299 60806095 624 209248517 677 464231525 725 877696545 531 665978063 682 156655644 686 519193570 771 238539425 385 407183867 751 759632427 333 851007359 615 903133601 304 537151084 561 241674978 400 207621593 630 154215292 958 493561463 803 536773404 885 187777360 323 208737235 705 570289078 770 670860627 120 362542265 163 667889832 812 391002097 350 357075720 755 12590625 318 586753479 196 760126245 233 352972261 247 977300838 288 941374284 885 990451117 922 36940691 655 639997538 390 511919662 889 310234167 668 589826896 18 523677763 607 951258658 134 69736495 981 794149879 230 94586448 345 213051835 392 106546172 464 200079991 925 422244797 56 679282971 748 933859586 882 771658033 686 150943827 830 837658872 362 925692148 872 180559144 698 434199989 918 402966652 415 744790754 564 723616257 283 899292702 88 371560182 526 329610962 607 515533438 285 750135196 287 361618728 428 295909940 25 496575229 338 506544575 933 333782334 46 793968607 330 107133911 562 139684741 493 526155820 428 719129488 918 725789338 700 173108850 295 457366335 899 914913947 235 753773933 17 341638158 21 270479394 603 638002085 640 792101356 661 355322907 586 411848227 407 751951043 987 871973432 212 899571408 854 632826931 525 607091477 414 794639364 119 933568816 632 90868336 975 527069780 199 783906448 762 235969256 853 557543747 562 787789765 666 231947702 276 96667893 72 859713119 365 294307880 527 355807791 869 857001305 25 60849763 376 192175900 292 516749023 871 638546192 922 146487888 816 34173969 3 423987653 662 677384801 508 319854318 445 9745488 505 435640660 929 285186155 711 632337086 475 61842800 600 381335495 337 997381906 317 379099459 762 889481937 779 444016034 300 795612085 268 386120621 830 790377663 272 962120643 282 640718844 441 779558419 481 806796919 669 215638900 161 341232452 139 4219470 586 318819596 907 182463448 935 730371463 519 195728424 684 142431931 390 690193380 653 899218977 236 220848983 996 720550942 371 322819651 900 784132961 517 759168892 484 855070492 653 590690887 113 252452116 305 810484498 827 681784365 685 911840655 413 95441522 747 18018044 573 854395890 375 865646351 536 73907307 210 287813602 486 146876632 52 397417160 108 548454211 841 905613381 196 4621525 916 899782937 223 419171429 495 382131289 649 140841705 259 307181288 918 676923 57 281737020 447 328088202 200 655276485 492 261458161 831 386753132 266 679769197 470 142876700 489 346047446 664 418831524 185 938600404 481 225462983 842 993687261 143 559610424 111 953848647 174 960648283 954 963649963 825 499188230 534 384741717 149 213836702 158 739299505 250 615346069 401 869447558 399 452725102 205 432713456 225 561368473 136 893232625 228 382382885 312 705252537 56 928471889 616 554725049 368 432427855 270 443207138 883 707986335 651 653388288 185 942378355 992 847183159 628 503333733 406 639673722 888 866080075 478 824408249 470 277952866 126 985520958 139 312451990 165 743836527 961 525613665 317 824979373 144 564337222 70 802057842 180 855608062 688 647575461 58 82794596 462 375655490 444 357321820 744 190402263 750 122353958 997 258441301 439 656709107 96 665974709 232 411095205 574 373267512 702 218530660 229 742305465 990 716072608 683 940076678 449 440211919 75 984978302 801 519229212 6 971106599 938 631107896 352 113891589 879 330282033 445 642917657 302 966885220 991 337056565 14 734470051 802 854953220 258 990516116 298 126071214 459 936107902 190 265996632 814 866787190 898 28473081 893 340265454 43 613811209 987 756797247 167 953134481 31 770500536 723 173242772 428 984349602 13 34733942 251 461717593 265 155144025 937 997903069 630 475680993 90 208956948 588 596344695 936 668673976 969 460725233 577 787598561 656 146165394 836 467910622 704 906930155 349 863112181 837 866422828 788 578074248 515 929043739 193 85030378 574 140748403 373 526539289 350 648790661 954 88529272 868 619043264 746 926626159 67 738664750 401 318680525 916 992600665 346 265625815 808 76905118 805 255566566 730 830978711 32 989279272 903 862457115 835 420346398 631 595793106 513 144115843 167 536825595 231 725041135 48 495199958 873 156150207 172 409963799 338 253488376 878 721715290 860 340386608 287 307524958 125 933493377 973 690405095 644 259099146 903 818015670 145 139503980 915 457507412 95 786603191 457 7992354 130 317029932 365 52275271 297 975376588 869 112666164 198 26145195 853 346694921 989 891851821 18 388103464 701 425538602 659 402153442 421 829279115 96 104783891 933 37909666 564 728556986 243 388705928 584 49985773 936 92017716 773 834601150 225 929663825 967 495705842 120 693249997 162 479515303 353 584740171 890 945829710 129 93850452 646 26163679 762 933181760 332 597940010 560 284754013 713 992240414 70 898666825 10 951156121 851 269034265 24 765575192 542 357512613 838 779801715 572 207139538 606 212593819 838 673649724 410 497257436 265 836830775 483 81528053 460 204096290 700 333886702 384 138367758 378 647833401 629 892461159 873 584726668 812 25143111 191 883767490 648 345043571 534 431689737 30 296510721 929 668572678 813 367434528 223 93437352 460 733879992 979 664692100 436 73661721 888 329403885 531 900273009 490 105019727 507 548379610 563 598093060 242 321301473 17 168196444 807 692694298 76 985186965 786 109952965 692 551299712 720 979338338 111 524771779 92 829109813 998 618286157 835 847285678 76 445242680 483 564569269 630 72961341 302 748873098 557 317800922 71 332747565 598 145578856 512 796850295 424 574844010 977 366004394 594 26119082 510 421199712 411 691771456 340 48049111 8 789063958 423 179893365 395 263919684 158 839698399 679 852208200 313 248245736 908 762802984 70 216190015 514 970311327 148 843305272 830 403745215 16 451667143 543 352632767 269 675743345 774 805078596 518 422770304 295 779681402 745 32637651 227 859208334 36 112333358 793 177533678 235 464509142 699 177870125 326 297997444 727 41733614 88 819768854 189 230414339 517 516322775 69 271216958 726 354834252 485 948144219 569 636129604 379 188025675 89 603756157 141 860555510 924 818795895 860 803757209 544 941825275 490 585478773 64 128554587 362 663713757 936 764423205 222 211380758 497 412892089 394 570984637 349 347497292 201 253015715 828 801282840 327 486007156 199 849920713 482 85518557 715 959214503 45 58508210 87 699098697 52 607447220 337 562615702 178 885903446 208 421187750 55 697662196 973 748842305 551 397045819 477 792367230 558 584113707 56 985812681 646 75734252 419 323012057 134 104398753 422 118362088 823 737913178 934 690531085 422 924590420 611 607263053 312 433844969 699 840781724 972 992649543 990 812020987 643 442937490 664 184371033 988 617044657 986 227506600 539 361203046 915 194165613 675 794790644 812 606436078 341 610593524 890 517780713 565 62031188 871 850020921 656 133898177 11 898451203 299 446664825 141 121770963 177 732442422 446 796839227 872 719355665 869 591753395 931 379317695 395 385984262 644 632781516 66 224791209 580 410945815 314 380735715 662 234922156 67 817320375 537 601758044 655 781882963 140 648279236 452 914665781 949 580959954 815 646331885 978 834285779 986 881668992 736 189017971 314 183835697 651 164473329 111 133969611 261 771265862 825 315728508 536 70673662 952 337105733 924 502884172 359 38663990 238 751707030 564 137372440 676 730167933 448 276978097 522 366728776 421 190560894 564 850548098 173 739297008 268 198069949 881 911052599 506 527007342 907 474034096 878 239812427 438 966254607 744 414618622 547 356945702 954 650590798 826 628867480 127 962166640 643 155369014 488 93544561 947 150859993 286 678403214 121 909414034 418 730061602 856 96216713 66 664042195 123 382136019 308 665543720 222 865744802 534 176062259 705 339667667 869 457504235 916 843026310 617 582525746 532 13298946 410 834193534 100 916059582 31 66990015 386 822166349 31 704103029 136 993030593 628 287943056 783 129797734 161 276815309 941 280401849 616 348217559 77 751871513 868 739315125 83 502018503 297 722533753 128 817659733 439 780233500 72 407415413 768 276852776 743 959185128 988 14927236 261 490671095 132 863711344 301 312295238 640 810430749 175 268738488 628 197075336 251 61275743 259 104398167 980 490984689 46 389308557 33 365989439 578 164372358 866 825019404 817 290457727 585 565387763 393 390275055 616 160893995 778 869876182 99 578987954 813 672713318 765 540099003 773 96783752 691 343391052 780 479095936 893 99001919 910 590058871 875 261979651 996 847149260 178 151160984 650 705708101 243 236549762 147 355191008 943 875388891 39 288996038 977 618283516 253 489840593 98 660103832 320 763521952 871 673148696 865 715471789 39 386599499 137 332092568 652 560776685 934 226813207 965 584698939 716 461048329 16 751291345 905 763363419 816 654385993 463 955150787 961 714423021 408 913364442 333 873190527 949 695632636 940 764926699 582 641447230 86 886438074 70 541244811 208 110457536 328 410011625 11 270859880 990 99004026 915 395808840 41 437177503 161 89413695 871 812281282 341 520588600 488 74796097 763 974092280 387 575191696 351 187824167 218 420245865 786 266411345 349 291820921 849 415995916 403 24999537 754 722110324 378 698126530 606 686275800 986 218003803 569 342727413 176 296659620 142 900406384 464 926844421 835 90906701 501 604415995 581 888005642 903 362028607 429 28839794 997 976386596 484 489719435 201 812819907 471 850257487 861 831205503 305 259167987 172 130463693 448 614346554 781 946693206 301 823659917 118 104183959 705 963015031 444 109120281 38 594425674 339 933814733 239 47630173 290 233247381 165 978727166 374 908474848 314 329356679 80 411474878 496 229516307 949 381766497 496 960220383 693 597076221 826 407682577 844 45356281 261 199299726 768 304551031 156 136614195 289 456205449 188 462851314 962 441054199 802 177211657 73 519845097 366 575470329 836 980504142 319 723486127 924 131646732 328 934788472 797 794240950 586 397868198 719 160976640 877 142528389 490 509321413 608 609097690 100 620040363 679 721593233 45 791547998 459 951681448 475 575801288 157 872374404 317 842933717 563 720643839 249 340508653 948 681674520 73 216084987 954 993897052 452 919912995 875 131679590 618 472048489 892 821222273 406 712049262 998 789998632 511 10789119 987 912412838 351 472026132 678 818367023 94 125547027 684 927743603 141 547149659 164 476300032 583 661974330 457 615696634 303 340921461 985 760964152 795 199156915 601 442561624 566 970333621 772 235067263 167 95753419 289 104442337 807 769902434 2 978354136 673 114254662 776 700798153 710 889953077 930 11227646 8 490807959 280 115792303 106 770235615 183 145784547 635 785483822 844 390793716 766 902734367 534 649905176 744 522757885 859 402070122 924 221225221 82 458196249 905 686195228 129 361267654 824 524528204 873 166934939 826 854459307 456 101877341 417 382449886 385 764110378 477 709417652 569 46739043 203 470891604 163 940049987 621 100824833 832 809159998 727 798335136 85 422273398 240 636143975 549 76515621 599 82728187 947 438753010 417 654568240 184 760607917 587 396271342 922 569903422 123 850092301 990 43977656 604 805360429 593 884720943 927 577193331 975 420939025 920 561298343 92 110077584 641 684393694 723 110027284 518 964671734 781 641385566 624 460005411 456 213212381 766 698961391 552 804382677 272 114853997 830 502946128 76 895557112 937 505058970 243 317782224 999 471356508 879 188692268 141 422756067 113 212336337 383 235905280 872 424736619 71 817733161 435 288082074 438 845151064 494 429086078 519 937529157 807 831554072 758 306080283 439 395177302 685 328856344 292 529228994 76 792062294 663 444188508 30 34791765 603 683118692 229 897202260 105 934231989 394 849184932 867 60489443 103 328401749 918 57496281 227 221128200 505 213362948 619 644302172 402 65754092 779 284304704 847 60703173 461 384175966 687 353063343 302 370732165 315 52020665 806 399756836 972 747943783 367 700356180 994 426474514 762 518637856 619 968237373 387 820482562 723 235546776 689 356745483 889 499102622 915 431790207 810 763522693 632 32281899 402 63592424 641 401870407 969 779821847 625 953517536 164 718984416 722 618653717 720 59173114 895 411755356 861 733195476 509 487262504 463 786745624 109 951911599 666 353551285 483 649007923 320 912671068 203 313543745 407 681170687 77 822699968 53 373495570 668 471233708 604 350777052 153 816112751 749 631366799 217 94835749 50 762474509 576 831798217 614 957366534 441 322741176 226 530729666 298 156730902 605 234966756 652 413398355 600 560609283 127 388387970 58 621232022 385 245563800 408 759256081 193 466688326 456 354981043 380 704098865 288 236271196 442 58049167 414 366151052 797 635161337 981 882830527 524 480190055 75 241589619 46 370796776 912 958446059 288 947869501 289 778321953 876 5249583 137 144164564 366 232014623 782 208360151 554 483962796 293 184366333 246 360809588 407 205692706 293 50284639 480 429605362 153 845664204 56 477550325 282 194327296 433 938032431 791 538014571 403 802635933 45 58227852 248 624193415 551 92775879 204 158799165 667 751662879 557 30909575 79 649359866 594 420574889 866 526796084 180 621600646 594 569612992 211 343606628 592 50746081 647 7290091 311 29582615 760 981742825 187 824288576 786 572270385 359 334820115 617 531918781 36 796584301 449 432244236 993 584187946 733 20430027 597 514019453 536 171104216 303 721112651 150 926348211 198 27680121 458 654523090 250 479421078 785 418301464 441 115283525 325 290363365 546 930257115 804 82148222 861 119438654 78 163613943 211 725082595 906 340345677 404 255763687 250 50850466 755 787105022 539 597486541 352 103457439 234 797040003 781 264303267 84 579679586 671 730927396 894 117236627 522 551432917 754 417332052 679 436861853 961 822325127 373 304018379 601 892141805 905 194516439 413 650443496 112 182414191 374 361653009 703 103650489 886 542170986 275 121335431 549 648151273 892 164889137 744 275925954 660 187785106 92 369893968 836 80102681 752 901936664 110 120161322 217 743450649 153 822111382 775 263162677 956 418947102 511 760739185 638 675134123 100 813447034 130 581176964 255 622028044 497 313148811 917 106967001 616 355580600 724 605319761 672 644026767 78 515569803 298 832787507 1 415345494 68 21934815 405 480611824 853 755502768 161 653612427 136 859970591 168 65328582 992 953850010 820 450038258 918 170371336 372 962270079 31 535986243 180 355712423 405 257406317 283 176094731 495 430242410 699 970995442 241 691807291 894 289532804 942 631152774 692 823911668 434 257231740 845 683322288 991 344888430 247 820499350 564 552271149 894 530349573 780 413769994 637 541353531 931 382604106 345 636745901 450 849228231 933 213013882 396 152407136 811 675699826 325 234152103 454 354431134 830 385758971 460 619565808 902 341774427 240 193809945 294 256678082 776 973545951 484 911062941 332 205974133 379 501311566 630 155656720 681 637414996 585 458227486 701 928610903 502 549418631 170 690834812 276 523255289 147 483956504 232 327300314 848 926811521 19 289772039 646 201696946 755 91898974 901 310822950 23 375199425 183 342445198 181 374174619 397 891701859 651 429574922 616 899051606 317 596733377 217 189353418 410 933638493 615 446348535 122 150499042 606 170120109 529 931131200 605 945535586 316 539062484 666 519697468 310 980844238 173 817604654 496 629773520 76 797608193 722 333913136 994 873459092 516 624425188 883 423144423 612 465476830 52 224096463 355 696902962 413 633605542 521 314392336 483 854779954 449 142469394 70 543944620 584 261648963 323 832444638 60 295578079 340 345414630 982 666332444 764 566614648 227 294170035 878 572788190 645 909575774 371 532126112 935 862148585 129 63973099 961 749542629 342 811823477 11 506057703 962 457349552 853 585006230 433 849514061 452 279586519 262 23648178 310 125871323 415 912740310 446 493662586 409 83063667 14 204897257 295 219864136 441 34460706 169 631863567 198 401936137 95 394744422 924 770122333 591 688192317 740 496694035 875 973650265 467 941416555 957 621082408 231 513221822 187 980820653 410 854847911 350 750118812 631 260071636 403 290979986 389 220004313 988 62654253 905 221150594 644 667255281 208 300566334 684 388592618 62 975224645 234 307099575 845 548075195 382 216872498 520 68975543 448 349366005 161 576105911 601 154221123 735 438069620 838 321918219 427 805382905 7 384442409 576 292576706 744 763960494 535 453355122 626 310776123 312 117212264 389 888642572 128 339635556 690 998374790 483 637154368 802 793313982 412 731373011 956 620196796 447 807630234 572 939706161 428 100929668 587 654937424 357 885799658 195 644931601 18 305825326 3 44317984 839 67938788 233 682235152 929 132359705 35 940705466 926 322467225 489 494627473 879 702441111 405 857714094 923 785748668 15 86398313 609 193801388 39 167082240 731 984655494 483 549332622 241 545534971 832 409321929 961 931452943 83 492250135 269 860463763 344 206131573 853 543007870 153 160379204 557 353542926 865 395548226 216 435218295 115 5613738 223 128243426 775 809598447 225 539262880 126 74615719 619 642448082 754 300977890 720 496149270 964 65000829 609 433498292 919 671788951 372 921388992 948 631141233 691 390012348 924 896421293 37 40258081 522 368704071 853 227799961 168 820671333 979 430633539 258 691122958 930 136898316 816 371179684 26 51277900 802 547771122 794 549254152 267 527859962 670 402544081 416 722342831 639 104582709 605 249523453 854 419625766 931 570485462 977 834260518 24 605953171 315 657065719 424 778064361 721 41569065 129 791682769 882 36022995 300 696828231 980 975166829 557 487283884 790 433911431 761 932999732 639 681870303 510 218641168 455 212618887 721 880932589 724 431531212 294 602185562 592 69332079 725 599459300 786 185119538 319 165602040 819 85635893 911 612434260 405 502585614 539 791953431 33 591751454 111 888415536 315 945999630 287 880552580 963 701109886 29 484621062 318 2369147 427 305548433 383 976328604 185 599005873 774 808332666 592 465449667 883 174673685 104 841555251 692 417683486 712 212889808 510 626177737 307 38730794 45 897573539 650 14807501 730 816902722 929 281141240 461 744555735 698 605616206 576 426714741 132 343632572 37 637747081 884 110201488 427 162759963 725 980858368 437 799749203 777 706143805 48 520531924 961 164373747 63 857046246 967 443218748 262 591359121 648 500778104 118 254926589 187 769234457 537 564805927 589 795928483 352 988032984 256 337384124 1 995301436 732 253666042 822 571228472 145 57928730 985 336661168 524 927878027 896 850194837 649 195926183 823 249033335 772 998748408 931 271829485 328 664515047 595 185383494 48 274778158 626 899004659 88 400828543 717 130565971 120 376674025 529 912383397 969 645865857 25 923408015 286 626281071 160 250492188 240 725896283 353 407761924 530 882956884 54 272726651 431 831043735 163 399924907 996 888641369 351 691161500 23 498987201 288 846955756 308 695665987 810 334877725 352 519731455 641 785226396 548 612195216 466 424689607 356 256782271 351 701553416 680 936816625 117 398427947 981 998050876 859 935625936 530 745135307 972 626773169 881 656604061 140 579910388 969 372566997 235 450695521 931 900992937 753 846562874 342 153046443 216 297922243 839 837937360 260 60804146 763 887317830 411 59210614 782 535259119 747 655013738 660 346734262 40 565005331 993 873266540 542 882293668 907 957300751 23 25902833 237 707515089 463 443713136 442 370974609 92 853089731 369 278097055 804 443667415 176 484789300 743 753021839 78 547693451 767 722303855 618 665751136 975 500850837 121 189321978 979 299301606 345 958079913 998 59950297 770 135533212 968 206123124 521 621123751 919 334812940 999 969192406 903 171258380 375 132951283 11 26590960 127 616243080 593 392384079 357 654334934 873 645368691 436 748092230 669 538973591 499 362999196 106 882633389 325 857634959 616 323350661 726 236981158 402 359707568 180 258246588 175 730944131 440 492403531 220 358686554 926 664837159 869 826137528 75 907940960 367 835084643 633 552442923 676 965896643 517 941182099 358 660592234 462 897928307 306 519751524 565 540395038 440 990920218 837 277266162 305 830447610 280 897374549 618 930846703 344 426971196 422 419294553 266 25327954 468 75599133 570 877855192 899 986534020 558 925920788 403 648968490 635 360868685 685 963909223 856 851452108 580 359980447 486 444327431 78 245893344 804 373058863 639 638575926 184 351622404 360 59811177 985 313541508 680 245941460 27 936238856 544 73624890 591 190643781 887 930372892 739 641363389 0 471621178 932 827415853 800 71978668 116 971515812 157 308627940 861 505799068 412 223251161 849 312180425 735 665792408 220 862374572 303 704203423 191 273756033 456 903535194 299 123676348 703 21398774 423 114328801 925 526799176 732 436746654 813 724943672 642 19673413 281 101918862 841 707415685 663 549808957 318 629264168 544 671929018 268 332513861 808 290955751 459 666293286 2 728997395 651 843042272 589 789454563 554 790202534 615 695284359 30 760582308 338 960849754 767 556247755 132 187839972 688 31464493 382 978941644 362 397556241 550 963562735 885 625316014 263 702998914 800 659401731 341 263425687 516 684297829 967 931506536 694 984243272 485 101017969 581 370755360 469 783736290 306 498464965 705 584863205 952 414539554 488 66890618 329 747204750 495 59732878 190 694284932 424 305113691 845 59813356 557 44595713 297 797993767 123 331021409 42 895058993 510 980767687 342 980242713 878 471247828 648 185670510 909 265930726 739 935273750 468 290415488 501 380099267 413 591655604 113 923863699 993 594091668 395 74052199 729 766002834 260 127900681 431 884131724 140 514374837 202 194351478 193 29200364 720 60758478 731 478534424 726 591828211 626 507000296 412 940191673 364 465070529 502 191169619 460 340550262 783 579009476 298 284794617 685 329046155 348 356526880 98 626629502 969 160859644 119 787886330 342 220947599 250 675853878 30 95773219 823 834532834 784 7147868 876 945467073 362 909616358 168 128963843 64 779978227 294 667854603 797 684483855 686 392184779 851 971506650 25 802295554 888 210409124 184 731094641 753 965475004 918 233851036 558 837534161 376 566856303 33 273125951 510 464970996 682 745088457 617 130490088 469 306766355 593 950260961 63 755820013 780 874398077 88 893996358 157 826392468 280 109109065 509 133004187 149 348697626 160 556503587 814 934825240 485 405934207 244 509141181 843 735041393 660 321728769 794 435669729 62 989896103 494 253202697 311 169703916 563 172472953 434 867134723 571 124524777 849 857229128 319 482064546 796 230714102 335 783816566 397 702162155 621 306857342 507 889117651 776 712106995 512 400865288 524 35749718 453 645464178 568 850994509 640 296981768 266 844725843 73 697339930 132 146972658 389 836332213 420 510207265 828 301452830 919 283516302 733 164453015 153 161134977 939 341187150 265 95955683 417 664094185 441 215022361 31 760435700 914 691594845 829 795964883 395 46271939 30 962565092 908 523473102 775 919841084 470 70535702 85 857937989 509 239403436 891 921091027 279 991488222 520 737106153 820 51698632 313 520998971 87 749225391 586 873696235 478 197494441 324 526926731 461 855585100 2 587456244 587 510444675 446 569759202 171 579459698 695 563345636 999 743937346 424 310276858 578 335801369 94 803071412 65 389424833 101 212172386 845 255741121 860 517135976 371 451003075 184 219897365 286 886675840 972 839724407 515 555478402 899 568484190 552 19838626 181 73677993 428 387453263 783 626917949 621 673836558 409 586266042 7 479482696 632 481768246 212 695973785 392 261993881 782 475383218 206 432181563 756 867135982 617 361705216 822 873638058 915 629640750 166 316996044 886 340859026 828 71699831 73 200476983 543 77810687 339 464639684 871 656436454 139 960392378 246 834808807 361 269700003 278 473989044 922 734573955 743 779690008 345 342590663 691 538708043 977 345699889 221 671445700 459 809436715 63 489708140 608 394620793 801 582375421 457 385544040 254 978014112 847 696504366 571 454280633 987 816396240 894 46870612 355 264538866 874 777886682 54 596809696 345 726542024 179 380683972 179 917475611 898 225314954 323 810947624 898 926884664 199 547896117 283 945749681 628 771854075 519 42928924 405 210180188 672 70980852 476 416788983 667 186120233 111 309049845 333 364948421 1000 766620651 846 434997260 620 742057196 878 936570395 433 477593344 954 477650316 667 267981590 999 346956544 759 578375476 492 994770889 405 87551133 275 817166042 84 264009920 717 653891710 509 25205757 124 512769476 921 90220740 892 829930632 39 912135289 48 596258545 925 41705021 805 449220273 739 474296101 343 291233725 58 731819134 856 889186854 136 154210307 616 629047491 419 60316217 494 36841389 679 364158439 963 523459233 809 349952404 892 485243518 41 292913813 563 435252228 370 227836602 332 729449626 563 81801675 944 850176701 361 431277902 703 6607694 866 430549387 353 799764403 554 160847104 869 797755641 212 280195129 165 128004634 459 437078356 613 700620962 892 303093809 136 460863844 336 856051310 503 242570983 1000 231696408 26 711817845 590 713751222 116 699065729 236 546298001 211 344805291 235 282305789 641 238867684 545 496791924 929 972594952 426 811035738 693 233201981 280 324704233 625 360952261 344 707521097 579 226093849 218 655145679 720 400686963 889 535779699 472 717895853 396 112935488 303 390001152 775 909067540 697 132198503 777 227019143 880 112241024 294 465338428 904 123208410 592 788168521 586 780547238 70 697610058 505 713734738 28 658060946 324 903625280 598 518194676 140 912272102 598 413799367 261 516020828 757 845332695 366 488458523 508 579385552 971 590860996 42 660181199 24 929094182 546 266179814 323 418572943 927 394347860 138 919657541 600 282889639 428 220149751 318 419906975 9 693660345 67 850376346 217 11782866 201 783971047 239 700762094 554 47790820 199 456697009 497 925588444 649 701828106 974 121629563 441 917079062 650 409585559 512 860641664 276 103350915 122 14096572 110 385915866 978 590528264 691 575271826 977 6030308 63 32907336 292 585473955 201 208019239 929 545799093 612 539109007 36 456688143 272 117542101 304 417443857 647 838628674 10 828282675 755 748310552 800 241539611 466 109597926 465 993162486 821 605492895 257 270276652 781 877425541 391 763991409 258 65257420 157 63027885 533 335377003 48 873756086 466 903569054 336 449026601 843 997115209 996 275395466 60 114220225 756 529047866 591 960620520 65 649138872 16 73955355 116 871785064 274 485773798 291 782445360 109 893505199 508 566176663 12 383908278 809 619151912 624 452117450 952 208464198 665 919450266 56 500580375 999 915382846 20 631938079 386 163616743 359 404888300 900 316060802 120 305574060 392 12435768 116 717927141 713 561332681 408 177846695 179 175282509 380 43984314 898 126972061 888 923740485 332 932404653 692 27291175 339 180003046 927 348854393 995 207581539 155 77871746 654 792553076 878 819882781 657 909811322 985 449738562 505 584118567 576 543391091 671 681117179 535 729719459 764 460340707 128 404079693 592 914481432 607 712745924 426 639026773 521 115668610 967 299165682 565 676694501 308 572300789 35 160072581 838 185226590 868 430101059 332 79188725 452 707893836 933 15684664 577 930248435 345 167585840 410 206309487 678 770821633 137 256491094 148 707318445 682 409930017 670 740937697 106 983243243 654 570300628 765 902015782 772 484706285 258 916411906 620 916414915 653 586141983 923 602902181 451 297642376 970 64187685 50 539795209 8 26483728 163 445773989 338 128170131 387 815165989 959 911731799 408 211862088 670 761444860 212 517741077 26 610892399 458 32330797 334 542447405 185 663970919 405 368535422 929 581534960 394 781165990 844 541903775 4 927442927 307 960676961 234 94019120 11 245097830 475 340651490 552 626693583 286 784422218 440 408895759 181 472521820 876 710938089 644 525030654 405 67262193 421 996020223 587 20058497 413 625869819 375 4340375 152 484317079 163 78914410 602 535730003 747 516892423 667 586058358 15 118933473 856 463541485 42 675282669 765 380252217 8 49566301 2 447516590 659 336298282 45 986235335 920 724748825 222 867242813 549 454833660 672 117095386 278 588947064 597 865467605 602 41239995 442 580286621 747 864909611 506 998229287 468 463877792 545 508292438 185 103764740 302 806580741 110 407374425 42 239909740 775 479226693 46 628465784 256 423711638 529 29098428 663 175492715 564 14148728 201 157197342 621 71913751 172 513661199 510 498172837 83 161545905 589 972231587 511 281850643 930 218720392 179 791434369 70 740506687 244 626573956 184 714712211 573 774477371 752 497809843 821 239219475 480 323292160 120 245397460 954 204458324 263 738422301 422 371598008 262 291340234 284 929698511 199 720420814 859 468532957 938 903967845 305 458721348 859 249186021 489 338698982 781 48529255 659 993076592 273 133659030 321 434094509 903 532005097 83 811072941 625 640502058 949 111146242 150 140420081 780 631111385 465 118559574 992 103461361 446 169282839 970 739276944 591 941780144 905 452733111 64 276514080 912 847687854 187 312819021 815 977492925 390 960572379 746 738380726 633 275139704 874 78869671 782 297924726 817 786048257 526 545627747 985 460190335 20 467919766 519 37651616 502 941625138 936 957487708 455 878609560 295 296612188 154 45705802 799 958348093 300 223224408 415 530249877 147 919444525 962 377672659 998 679824679 263 225781503 520 424302953 977 672327023 230 18625244 849 820683169 648 165553584 424 474186869 411 738735042 923 416330554 94 39649515 645 821875594 930 78978644 824 697710145 823 465835537 936 742231001 689 315461314 197 515289245 820 423640360 110 232263106 481 504716533 258 772989954 40 197562013 910 820561731 873 271232826 756 585218740 943 329307225 428 547374128 532 159039945 173 601175395 49 47435979 949 944721391 257 15967337 116 773289515 755 888459435 318 983053472 618 872295258 51 767057791 257 559927425 917 739165448 691 282854219 2 451374843 534 833638538 882 728931378 488 400188974 484 152181339 178 851007884 50 611361620 462 301606783 8 830817651 70 166498706 77 813682560 622 204176280 353 96224264 41 530801523 321 146760428 889 97365691 49 583859058 923 630120273 5 132612927 134 680537578 463 346818908 578 972804352 727 433188333 979 291552381 479 876998035 447 326690777 645 947592174 696 185374895 117 663263714 742 167028578 380 857068159 503 694756268 460 848476299 457 289164284 548 494206186 864 311460199 904 159993998 148 877305076 109 189544789 462 258958031 454 875600249 265 948373665 277 183032227 308 939543876 903 708659053 168 185384835 815 196080486 766 146617946 470 198662817 974 431897128 980 973097364 318 4741702 601 309279572 254 666085685 1 86094827 223 798847015 821 8825083 275 59422454 756 127293242 202 642506958 240 482301718 233 328676158 647 777069060 157 680229647 456 338305099 106 861441566 403 486843774 601 408846338 747 303211438 902 33347086 725 533251406 172 836819376 26 877694132 87 231074055 201 864761514 686 729467173 605 514332268 103 281626237 707 667197958 387 215354333 780 378670778 862 173565527 415 11697628 672 43122259 221 665546528 336 154546317 126 373815418 493 840423476 197 289260626 228 230125854 699 429803692 467 527637936 395 217549920 794 842790830 540 275401756 108 278371633 119 336326615 580 304458669 598 793198611 615 761727696 45 673105499 878 21114450 677 955825477 273 778910148 984 614692408 892 568199220 190 886094595 108 861384169 524 587075236 91 523374715 814 863374257 710 619633255 201 290381030 40 669984986 496 917200506 925 89543613 563 969461600 861 435235341 291 290394589 955 122790631 780 97572883 309 35210097 625 529203591 478 840121938 317 113913923 141 917028083 380 569238646 708 316318155 463 619448426 739 662254044 845 507115765 239 709572010 532 985438943 56 334783338 298 926578025 786 378020707 527 83570074 846 579697771 722 637113064 757 312246566 642 578241848 52 178045753 448 847115858 135 920164549 205 260403767 427 156517618 970 102326734 506 446080515 769 396442586 143 607182492 183 348531566 519 457679586 525 635149097 35 856899875 105 552254381 534 754137553 531 705454858 602 110970940 13 454511814 44 981212846 526 653929834 12 749896474 106 607585991 302 595087798 13 730592619 609 298895407 195 165423705 309 178690348 883 345704498 512 193905171 868 56046081 343 456517902 324 373824382 305 34500379 719 777366833 608 700993473 375 327046605 3 727849295 916 409003818 69 665815566 511 817313924 779 990606445 452 298273836 496 588358760 186 377800342 908 568055602 712 338964349 214 249846289 888 761048686 488 770981531 39 83722501 350 978903178 662 546911597 473 814399232 713 224183996 162 888558001 40 390715999 924 944525283 418 517135005 7 724152575 430 56410318 577 604251195 199 672095644 159 397674053 745 955538216 331 435749608 73 709144267 921 110441308 333 740939617 184 332800125 249 797435971 349 177206355 859 407676140 946 733102198 890 809341303 720 143697576 229 635010541 836 702222509 260 43908584 793 196051042 142 270461161 855 75640440 538 970138778 601 303023705 372 829658588 511 871799258 976 693027113 990 609860448 405 263266399 338 823895419 600 321149005 174 181464213 431 153968760 7 89759360 470 151046789 452 389766637 494 869720084 942 564512364 890 868399023 416 741388428 110 423442247 313 814099507 261 225989871 825 267454640 17 335459763 830 230558109 199 699002491 604 379802707 975 718899216 589 988962843 555 164176664 121 668380866 376 200317854 584 647878946 620 835933823 918 67151044 930 272074895 534 76903640 780 295969255 608 528160884 978 190721290 93 570467839 223 929972680 709 864877232 292 41243409 485 370913382 774 897619806 477 667708675 989 799122286 635 208593238 769 433246648 107 60150162 375 829776414 109 584346598 885 384481044 726 292740652 978 49824840 865 754462348 341 191149199 758 785167075 822 680757097 31 532622595 359 290962079 669 626649909 217 789386107 7 133281592 526 384839058 670 248135869 25 678673003 69 770048807 528 437141425 171 161348447 647 439587374 188 399940601 396 752298560 221 88970775 965 384032711 525 444445517 689 510334139 807 643416331 994 221267526 52 975737065 813 525738349 233 571333807 784 799499481 616 243906805 817 75426189 176 410834167 814 864908989 208 454316382 664 893109412 67 216634810 85 169119559 566 377688427 513 614811418 398 996315811 128 614658901 991 869008219 871 417476870 540 283112107 317 727058812 849 69463865 751 702777137 958 570615976 155 814236014 838 224928414 324 166426434 537 719138219 701 331743513 240 859769534 858 300708164 275 897641876 685 879398334 441 926453868 827 776948114 692 711123296 653 908977128 212 493164745 480 738394074 935 181639738 264 232277217 884 544494161 172 832475749 213 239411880 111 250667535 516 977552998 187 61558491 826 908470353 862 522356833 521 166832123 15 275962945 803 580994605 948 352891599 540 895280571 66 247011182 589 375966618 746 630284761 597 87562970 146 351636213 394 428612229 636 933511328 930 358965550 150 663659066 472 458830636 0 207250914 194 788176451 148 984261008 76 299455367 441 593647257 869 583517488 372 782943485 788 169697999 132 238083441 89 146309181 23 421776203 528 688872875 718 969256869 415 932377007 295 238951993 83 236902171 860 228540852 479 855593482 509 98556997 360 806049976 654 569635874 743 414647590 400 848005537 889 115715659 84 826519965 87 19007563 297 177751524 152 506537808 300 459993013 205 426161846 312 878598871 643 840140322 849 492122570 890 341547784 698 753539610 105 640330136 566 28330575 185 325573788 356 113616452 475 179583293 772 544300550 970 924453842 885 713687739 389 359777710 880 560606208 447 807568337 220 63091235 242 68399397 839 494552490 962 476160477 227 961895629 794 139391395 556 283210955 582 963112509 520 152597483 393 381211961 170 182311831 931 511055986 786 457626452 729 179065337 117 988828060 680 653887961 338 319479983 807 409069677 660 458254185 913 314167183 763 212129795 489 732889616 535 928976263 395 77322671 814 540902150 734 461880937 575 605900329 237 949096452 123 778046905 575 424317 915 535158138 195 852022854 0 919567826 567 133100763 143 204667191 529 772380500 749 66812939 801 288281074 151 515125531 8 445211840 73 4560389 25 95545619 50 721128092 646 891851993 349 65810879 289 812794963 74 174752758 498 486483584 604 481387621 664 932916361 501 687600506 860 29906689 671 647048359 841 152903363 531 757529362 712 799686984 571 544740732 54 975637245 295 465162746 55 524576585 252 471508112 621 385012638 94 958878837 861 542050142 683 79023615 839 422448027 579 625424047 174 411004899 180 908624161 94 373260315 536 746591438 354 220614092 535 105094678 545 807469330 757 257016643 289 878543057 445 901795507 142 808134514 60 339216788 742 467650564 489 950197447 509 491901128 567 862984916 872 697940503 708 524045352 810 27202049 345 843583307 854 718878732 529 938737741 546 537797908 509 651126127 519 149508570 558 947907790 340 770579266 320 308251585 247 516865757 91 379632706 183 855596560 640 364275196 992 274446305 459 233317753 969 865037293 331 674593818 114 41404690 304 91212623 88 285562704 740 793980218 214 601724039 997 545574801 841 661856691 687 465405908 418 249571537 308 185238292 476 13927207 668 497259780 115 341401941 580 808600763 598 439484700 651 145202919 980 959312779 396 858575473 64 225864843 716 266284249 264 301993872 56 297059906 963 33338142 424 180104312 885 152461578 346 610797512 613 802975699 504 910430657 927 615491801 484 260620207 52 385235658 947 762295297 288 149217666 847 295963050 351 830528990 559 308848705 899 906654488 728 574559379 168 714474493 88 137783579 268 781952639 600 423925231 959 385045348 217 284527541 240 771240621 258 133841026 291 80366956 157 128293750 881 131641951 218 238109194 921 431595477 140 607050999 769 422092490 237 989292548 587 226513258 566 418853766 403 706513421 663 843072365 638 313361043 351 263274921 485 816764741 645 931796994 27 652842810 970 135046213 89 232801015 9 167230067 191 280957100 267 161857969 242 142881343 985 561323953 774 503508690 419 72010175 227 123786997 475 885292203 92 713870513 486 137408891 64 917074905 862 634868586 673 446106544 789 61582785 50 731425812 237 81004619 445 173734978 902 616158387 939 693811107 361 663887316 694 644587049 949 341988716 560 610105598 26 26276044 928 892687448 538 372171879 79 158848297 405 668189436 27 517588089 551 553035777 600 578349285 400 971945297 23 657702010 208 778735884 185 429294717 336 690555309 256 22563620 414 382348756 791 654795851 875 687690648 871 353672248 832 854301514 113 491212598 502 660991138 171 760273120 227 416429033 696 516440278 691 811954683 551 934565728 629 60932308 274 567537734 283 194622096 470 689977329 63 517688826 300 28746200 802 119548305 668 604542965 439 785274705 173 50903389 387 255402241 317 596485056 440 615840401 776 718079850 45 768171912 762 873106681 3 800428699 967 606764465 688 272051076 306 750609191 939 588744613 626 395407631 500 658828853 436 333916881 463 913164284 239 623206302 297 750521495 273 601275912 802 589867151 498 917071547 203 202996042 806 888455780 763 78598313 271 833257570 363 847584434 593 228141113 905 51690680 21 617399181 22 463001581 485 128430882 529 209733854 990 925119632 621 374241687 211 164984054 332 302215039 686 863039628 112 137590735 239 787695473 494 524761202 312 187236475 280 318611434 674 41881543 968 506384664 43 409118895 199 804450760 743 660289404 879 928023746 695 966321336 767 594836081 370 691312150 55 566193088 735 32886081 280 707464542 468 51324822 269 358595332 22 219079486 859 27705025 263 830061363 54 368112179 374 477426514 528 375052833 794 909580032 561 890159630 145 36040732 180 764316618 981 140724541 495 157366594 924 375284689 926 69164710 629 204652593 774 455377349 289 197547101 650 552820131 20 607277554 653 670913654 45 908949008 76 458885383 785 661751164 594 419134131 993 272140046 38 751879862 188 897325615 146 527002311 250 121157626 80 174851351 48 959001581 408 65780389 880 178512978 977 256827242 743 768141245 800 469298607 500 760617209 689 888736118 648 621132588 202 975106845 21 985127356 980 55406227 666 109161615 900 475890435 416 341700613 710 18315739 545 619841588 920 535705600 465 592920993 863 636221382 619 95802188 335 689892704 267 409833794 696 405527008 175 601205857 746 88181143 873 322381062 719 442715063 498 506139837 132 853246015 751 875741609 695 47255277 121 951368328 1 898608721 346 787065136 141 836757135 294 210914224 762 819056878 635 594924740 89 242611165 871 721397114 526 252896299 823 236399006 940 475279732 966 839363304 28 585012754 630 487759783 480 405757716 103 83067902 29 399106986 530 717173809 386 841767134 279 983761237 402 803147055 355 549254934 835 510111226 217 444910255 267 131550327 815 77130062 916 783514868 264 487015172 591 348147215 583 588175125 345 297857052 909 828245919 562 366027247 555 95750623 222 396007830 772 900086645 805 212062817 784 723383450 147 118574967 429 629293092 857 260781896 964 929612269 404 130559951 281 516959300 256 795744840 900 790451174 924 368333584 894 238684855 693 20758003 11 870414163 35 684210695 966 884036584 371 297377631 511 300012896 521 437653970 918 437684633 552 495038571 744 863703012 248 163228852 810 106450 128 155531418 461 232521354 762 249343540 43 648799332 193 840736676 11 870862911 120 763380439 755 262684524 46 197278804 522 720396732 949 554024179 529 475479596 874 519592620 972 415464833 320 168347359 584 62650911 670 321919752 279 64385104 655 215697394 694 827979078 447 912219360 461 736848032 32 294748603 230 279093278 440 464801675 180 78810947 625 174889353 929 830805472 56 569532103 25 820429664 280 194043906 901 869282690 511 883572923 818 274783707 823 876998821 877 337615997 451 902914627 32 181054137 760 698551523 980 689232857 722 476043091 286 260298256 742 269686577 395 980589491 214 731983220 772 185806992 350 222307955 634 194108725 413 521250285 153 394664385 632 514784179 439 773187739 963 509750572 824 102978379 361 475001351 770 389437416 226 820742188 785 29455949 895 859174447 605 361469829 9 313121958 313 257374554 641 325246308 21 161194326 84 465092115 964 906790809 343 157550098 393 447389489 707 899278655 240 55247669 605 751823186 888 335154003 577 308554629 766 947237028 598 709323100 942 263855058 35 650797780 685 454468766 919 893820580 269 534500961 557 255680698 235 882212234 346 329160687 761 543547805 627 200276126 587 725141273 956 168282653 225 337641819 884 50819733 476 609758413 910 308898762 970 9396593 616 721927315 71 81926885 121 955800425 578 992230830 205 803212535 660 221980262 503 180373661 917 826268468 950 123408576 514 487450570 595 86173548 939 469463689 914 798306253 586 649596569 398 748795625 443 598251041 530 827071895 143 790861056 337 532688954 506 905996476 407 168520033 987 390475681 786 855462984 424 631578096 742 362079579 119 148732153 74 871623604 490 899780084 238 23652697 760 445940282 264 34666921 899 977860374 822 75826159 8 512822686 830 495663016 255 506437248 451 9343058 652 503186035 880 459788308 430 433031132 697 582625562 518 504473670 609 860304604 540 736132538 668 765287090 640 376595599 248 998252376 430 715272048 88 273674936 630 207426728 819 72936325 754 299651556 143 554326442 987 386611578 884 944445553 332 158956212 358 566953463 243 344064052 507 313300454 771 146139429 871 798540585 14 728979111 770 348325334 897 817167830 676 43691931 427 983942778 59 253441851 349 74357675 90 973493928 169 392553480 949 932433248 309 287903951 616 673127567 273 786265784 220 191107045 377 765634815 592 702999278 815 967429811 725 967963564 955 448196133 3 434715920 571 479498235 27 451756935 517 368203232 213 183337663 876 124310889 681 132641772 538 977690381 824 449310319 621 535441234 983 141245125 385 457154502 124 392165698 568 102440234 697 376298496 540 748883777 838 907472425 983 372315988 560 420300186 145 851996911 475 868767533 614 502026336 677 933200576 483 517562075 266 677980231 767 198866384 273 464630002 968 722366575 904 833226507 660 839227000 508 740102434 305 659761424 946 929897289 67 251882974 783 970206454 39 687000191 964 741419053 294 172220151 737 446012801 149 353333928 734 911737602 835 768367500 714 62131166 442 833958302 249 653371068 853 766394213 217 760199930 728 67891186 907 554095314 77 848107861 400 202837896 625 938300409 305 654508267 971 10576419 87 613188640 939 325969911 984 905658271 819 852076479 451 258272913 966 955428149 620 468094178 904 661025979 353 420360069 142 816842470 295 364704686 144 880873820 63 36806930 386 529501193 692 251838549 646 675044715 240 516966889 288 842798796 525 316730614 606 532623274 450 461438908 59 161678702 83 704591850 887 72055173 327 932362091 104 339268965 214 266508174 657 124793507 584 820113307 641 639983141 186 206137458 429 972494378 123 612042974 786 209162589 179 772020909 276 603512178 952 293842662 711 598780360 723 722033052 464 819080903 491 178636452 36 277805958 385 659022249 599 601629443 647 574362527 132 875920957 320 181528482 272 53749847 697 909729221 602 469283959 859 267075315 786 397825541 980 94081139 990 502430287 25 116251109 958 600807864 121 685995449 209 277930124 703 500162170 764 377765646 834 999256099 494 831506787 827 747155235 413 542498736 451 889669730 162 616902340 928 555309412 403 91063917 305 61466346 265 214127408 479 304772249 230 570557551 166 260684917 963 132397462 498 406794386 440 658309776 904 883067951 915 726564839 624 118405330 825 110716124 866 366847250 803 522540947 290 392171301 925 877553295 561 561480504 552 341743590 310 471838794 679 663232380 953 920097146 720 780997205 66 850618888 774 655350084 137 771800838 923 833361731 677 130992 935 898202775 761 726173555 982 633171298 171 650324602 409 960004853 323 939720009 603 514957518 710 324607397 867 537322114 251 490585128 496 972157307 187 749891386 992 81999771 608 849615304 43 819854030 218 621970268 571 747129720 875 238924177 493 795098968 695 799628929 30 569318630 179 96910791 419 643384562 360 502038988 658 208222710 122 290773412 133 980331586 311 990462347 293 937498880 806 896614169 740 775535379 211 170904875 338 784838980 272 957765905 730 680863044 987 332400177 204 879793869 824 721318282 40 117597315 348 357841600 923 103542549 789 914657442 161 940308587 262 645640795 482 479959069 529 717456755 691 426928893 619 868099338 968 351175985 930 320543370 255 707099610 907 223204793 843 939467011 154 849150949 704 393244344 745 121408605 911 434591768 868 655617948 702 485968721 346 83483923 966 708409808 930 915061460 854 104310988 780 609610129 269 176266171 750 182523902 958 554613983 206 904698488 197 921563822 952 975693695 752 974761030 123 678802192 774 80084856 59 1063016 612 499279226 209 630698945 922 876325111 389 30585461 893 134812208 816 819041455 840 713463804 717 332684044 869 950746717 243 266840196 574 509820074 677 576752451 525 567751597 538 846695216 998 228472969 158 721923223 868 3399031 631 392058955 840 842812188 559 177992417 383 195101087 68 347236439 877 342131157 70 376233060 796 706281699 37 856676243 154 258167353 887 352527518 685 304998125 509 73448898 447 777851489 272 880543310 331 724547055 215 673875328 857 44158563 757 878212949 418 907121364 368 140184023 329 54660534 932 988456383 589 326772661 599 94736182 878 632676091 936 161310843 585 957151773 559 518334656 490 649242687 121 634933144 469 243959792 915 135223244 493 363073006 724 267212617 738 982659853 274 988795182 898 784628144 517 202663803 759 584655034 671 675493779 985 608117445 21 124589296 310 959052701 430 660116080 724 176985962 314 898710333 574 863082645 151 256816023 580 86963406 704 778206967 815 19887893 521 512926065 213 982526556 504 247388485 246 57257485 176 704628177 416 876082491 178 151228231 800 236788491 19 515130051 498 108533187 284 753848218 21 116947589 477 268149971 843 154089661 240 79336509 932 988621256 109 719256250 560 50701233 515 674090559 4 917479658 727 926097966 863 830304612 546 197836178 684 90836378 265 433243543 381 155656316 65 329488788 504 543905372 18 686598779 337 629769235 399 567428367 834 443016398 984 90295752 576 988316675 306 734011356 379 408856135 202 62968389 162 88036353 64 345244050 999 153563802 521 23727661 421 763734890 373 899564091 436 75722602 31 169062669 271 673019873 629 585519337 271 644046532 183 378916068 125 25657503 939 181174878 89 114582872 806 400163496 195 525063793 698 469209048 814 532262636 53 567479269 707 748717004 381 745399643 686 828559526 515 605067137 563 328544986 241 436547090 312 605955572 352 806033749 632 76689821 250 46525939 682 455270664 98 164661279 340 571642807 954 594524827 292 968469195 596 912338357 71 369196648 593 996397978 130 456598844 496 289970347 621 427935545 847 242737215 976 541351297 634 496756101 436 422201757 253 994613473 427 69023856 526 786681354 837 86974542 296 144759846 349 845445968 516 603998031 122 725815834 723 579198082 192 322323332 111 309577679 212 186749081 134 97844083 221 26461317 87 68283424 375 707563933 378 148662124 573 757180255 446 66245554 662 981545403 29 89413487 756 174094269 226 908338000 947 199698976 147 400784216 316 666141128 890 183063060 965 690882164 890 285316411 66 262416497 551 133361759 296 564401594 622 94495293 446 546142266 382 195792304 135 216718404 911 370226858 58 773562169 77 95688607 109 399023175 4 885863278 797 764304780 98 427695115 348 486138059 319 841369074 867 141557438 857 406758258 189 249388309 141 718810298 733 292414528 458 440863845 243 558137805 841 619561714 342 157392790 985 585037516 57 502863711 298 495245358 508 449867174 914 922916626 479 39450812 933 186897070 757 975366334 306 244951099 143 80312772 342 952371350 435 279491284 997 393195967 404 130010006 557 235273688 198 876882493 891 723564527 739 360656493 516 341251111 833 617025640 387 829999859 84 786663472 408 907487289 618 418335330 806 474825309 471 39765658 347 675287711 650 259191025 246 459480385 28 840482356 871 163730972 948 797497962 215 892350231 695 953875132 323 773656395 517 770647357 458 700073912 98 812908712 118 97046919 527 459977794 293 429191107 893 762673833 863 584733573 574 122028089 920 471933913 991 600521924 123 113278492 61 923387861 108 981918303 26 847845466 32 265514258 965 490770720 707 452136608 221 227513565 686 915080795 678 383638661 737 530274922 918 567340620 712 327160102 317 149370689 228 257845699 861 197563091 294 995922393 697 476870098 293 54181229 373 890272551 38 920743251 854 420518420 412 328097578 498 29734360 284 703381708 394 273409745 618 49595389 490 51389630 159 919276957 391 863824043 969 683103443 333 636725275 496 927703452 236 151427108 56 641594713 974 563156261 234 783967072 500 970292059 96 727725211 169 225025013 521 228821758 526 113913880 781 639488664 739 289033526 257 598835766 976 562499715 371 821384376 700 79514610 210 114664325 92 587654350 112 895734871 163 173237098 306 61225762 91 690082732 110 755194324 603 118361920 629 448451004 732 779522808 935 300316080 633 131215058 429 897003201 505 729330335 116 464993998 188 420521358 593 4788826 201 342865104 520 636671469 977 775936397 408 583228973 450 119840200 994 175195163 86 107418529 441 765140566 249 294327054 844 791029385 900 335047825 391 838347405 860 256654605 888 482069027 604 151517906 978 295739489 319 373825804 500 743577956 900 477286997 44 149280044 848 447729858 161 848051843 894 361065747 670 142735957 180 89203285 75 478862093 821 314923482 940 241971619 615 678595779 63 147330072 405 416505761 36 990015776 950 518441887 694 944042128 904 909450076 409 821534754 725 58086796 402 256214307 243 227093680 696 32872152 688 918901812 735 129618162 820 977409674 153 912250499 563 525024838 25 944421340 198 29446911 276 854647670 900 860880699 44 516017226 17 478990574 641 993948536 153 681286424 869 952589491 98 734612812 635 891526239 50 352945585 487 632362003 681 470932569 871 307308613 807 663725190 760 563253304 650 436609993 305 812253085 891 410699874 658 965692639 555 896454290 822 304877145 98 713971981 937 545999453 820 11621357 916 898520367 294 777579089 870 808595584 165 857585034 373 363119329 384 638184225 81 556894208 847 822202443 765 803474899 48 551722345 523 103744225 979 460510260 807 365007100 682 574980560 53 737043868 525 620829239 346 151979555 666 313131936 524 109170904 190 693365173 500 770234733 601 1391179 889 980429696 801 641465179 160 730983812 581 248546928 591 198753889 57 521254365 161 977102199 712 503415978 440 650275167 591 186515790 243 45369053 70 249252721 432 432979816 122 214574756 87 845371187 855 272189208 136 593326196 142 62841392 776 864040912 11 171821655 815 969566734 137 341443592 32 514038259 343 19410041 34 665538832 94 36069443 539 510513422 401 338886731 893 859513074 557 930465948 920 606111002 540 582437790 71 718578799 807 40971152 554 135921172 927 980441274 194 344282497 333 227112810 693 268809965 142 509501196 107 167865951 478 267597905 641 456968666 998 484190632 742 867232815 576 350027483 389 719526201 408 262443196 346 901007764 217 840466130 462 69608532 41 320913298 718 524091664 912 814789708 13 215832871 903 246029627 242 584870499 359 947688906 241 467997339 168 323392148 199 185425458 989 675132494 219 21637506 582 835535310 506 901128379 522 25744282 445 694126613 873 554564832 752 29692377 215 183011847 798 617110202 417 965213250 281 195945711 516 407076248 186 478542137 518 306517895 109 813517120 621 208701908 776 770824073 768 433152707 616 806052153 246 40145982 125 912814186 785 389802502 659 734193743 438 32732952 971 931608083 523 866960354 638 917533297 51 429098829 846 526654293 677 228445434 2 425264506 90 426680262 413 588962038 418 890567929 343 181796146 348 185571809 498 103062739 230 722079370 211 822431747 912 188621818 978 199221552 607 361144695 967 357711570 181 582348627 683 463322003 189 364405655 192 419810572 441 321346036 35 500738037 383 51928696 45 244639129 975 978207525 882 353533 29 306686784 367 435990020 67 97850082 2 543364507 607 727447398 278 50526501 875 705107250 38 425842732 209 974628707 392 248240631 405 360617109 586 215014523 287 521553591 740 304622555 700 769992350 104 241542658 335 198032284 933 699891409 161 250486331 447 781908886 757 667907745 348 819784900 384 266821407 384 454345113 711 34029164 494 447416803 554 760730215 342 831290431 544 309397323 261 545970595 465 166402646 691 388475831 391 840102772 657 481224920 779 664570227 311 891657282 623 527481885 487 995999674 802 724378405 465 691652229 24 665974609 522 139700321 907 100783128 264 392549736 272 940647372 177 413809773 608 475034673 535 872790396 988 262217664 708 324448515 796 790835770 659 390888999 759 297011116 710 236519790 554 292770948 895 40417008 347 665861460 790 890627547 917 705266768 525 970031413 345 401237072 1000 539805604 676 836835046 513 996713977 159 784659662 248 303854907 405 814971970 73 645399536 669 388688806 598 162754065 810 26628883 972 909717291 659 236607292 3 333000881 561 390359857 995 90771601 656 980009011 25 516188459 850 539479240 166 923296215 201 947508966 337 324740296 97 282052663 28 156429418 116 727134002 910 155833558 978 405379436 681 57614895 187 861347852 142 559411966 262 155108909 254 22138582 91 727084536 374 876040358 959 202362712 780 580022616 824 533239104 867 130132336 448 444111829 868 442029400 610 424169834 171 413713658 173 427111930 343 491048755 733 597453309 249 782850220 173 914582114 182 192631427 837 369955624 624 794056165 539 639509939 995 123250381 741 530192306 224 394513318 592 877301562 984 235562848 869 329178930 460 153840036 53 719949916 872 527919726 867 397303464 354 764757264 259 290628554 129 358376695 1 860251187 983 103983289 563 389487228 115 904289420 604 425192606 70 402023409 530 927374248 302 310691334 429 610815586 987 839937692 971 515562521 106 12258833 869 204689937 405 561783330 341 615098460 827 964025298 912 384354429 82 428956302 597 853664158 908 855172526 929 210365613 746 660331920 248 813738615 669 683446510 512 56907493 420 174704190 631 769482860 868 960966047 915 262757034 986 203319709 94 157052549 267 506309307 942 817491116 887 969352140 797 721840137 407 244069700 783 636399895 501 626450645 705 505555510 573 996405456 936 820853532 930 850659550 852 938835504 129 334031718 591 691422259 403 472048828 721 598753809 430 978760690 414 71863761 459 532538240 286 196016962 469 716526022 736 116073785 148 616494215 470 533915903 293 183444624 474 820112035 266 867794069 878 698492918 547 988716305 835 918602591 491 19896763 918 733646006 717 324612873 816 564601735 613 540684651 702 766150324 304 724424320 443 552589612 60 286418372 439 538478772 154 851655443 160 352481451 233 709721885 777 516716955 653 574994922 104 999251367 974 573277587 556 691361699 69 959979203 771 277615512 375 388147810 853 829919854 79 813763129 297 860926053 229 394992023 385 335327362 645 448739704 761 169030463 611 519209863 312 327961141 79 447290531 11 331069367 873 536041753 620 902943785 47 55319380 470 824978348 337 868305284 681 614295211 418 375039734 19 142644153 11 724682726 688 753276912 609 928455482 46 113897465 764 433007091 123 766178664 730 65316020 654 968736216 571 279573928 430 191682348 627 598355601 471 26519794 744 266463595 558 877417334 162 135898019 340 283322821 741 919850011 343 382587180 520 557628988 666 291484208 122 221118240 216 337079849 810 960922836 931 267514174 872 16775459 81 694601020 718 955756496 640 194441867 419 710744378 76 382901943 825 905719749 152 21401119 156 1733750 932 331791167 876 266381522 819 887107367 761 553401056 683 188883348 944 935717524 539 116818912 734 793174032 439 483249818 99 832170089 876 102046475 793 445692575 603 445013164 560 75331971 679 327384811 294 447195200 662 311620367 370 372000049 713 208418229 746 978782576 139 506544727 637 541256783 799 662452240 330 200036287 301 770841594 611 303377991 719 166134532 998 69954940 929 622168553 51 504886413 289 717687831 113 454805621 202 282329256 326 473854686 794 811641635 111 908281266 828 125097153 244 894676737 3 278072875 730 519526229 774 304205550 683 882456247 49 438420162 55 65721500 808 908029747 798 212189039 661 799981818 198 200315499 419 793687204 925 815221664 823 214646955 990 152196968 277 430407801 219 182917540 501 126935006 845 43796730 758 682841707 39 568507377 441 139564615 461 556250748 825 942586555 175 591135182 648 715058190 394 225490743 328 162392357 260 335908238 33 985668282 231 860279487 706 419597789 678 765543085 33 27346261 300 258930443 301 175189199 780 231388396 903 537621733 588 779789954 934 387716415 601 997155686 455 246429757 815 741095825 400 211323158 271 595133959 120 800091861 380 415162861 279 331784290 540 621117495 370 597770317 488 642126308 971 489445780 505 508253237 574 418616308 717 782992893 347 515000113 898 209115271 772 715748701 213 878619866 714 140049229 276 883706459 903 16380743 776 282489256 268 627485030 375 175733899 796 510673597 280 312371188 9 403874093 264 237550562 157 90590791 35 422874572 627 540273224 390 383265139 384 659619547 126 609665885 562 240985949 311 16769722 29 904495515 434 868527926 168 84788396 459 549849084 622 997984031 837 545033198 935 150644111 141 232202935 869 885519339 59 333427269 953 566000539 794 837459485 212 433467589 755 717730290 783 327072936 767 784551244 637 528821457 376 274959380 916 513165678 165 280851619 446 647918114 415 376600247 772 574581873 447 588016598 846 156567198 705 908236233 463 328752327 250 747366767 870 629511641 929 915470291 126 216784213 153 954086968 376 679773467 33 338472617 672 405140714 85 31530024 771 742458782 524 662272884 32 553525817 856 624579449 276 675008841 2 130289558 621 561784153 239 105989616 166 894014567 447 919151095 127 600175331 314 595968851 319 900018766 410 759503443 1 396142993 851 915973575 989 265867177 146 956315092 441 685913244 692 853593799 56 760108301 620 918172577 509 337738861 278 191625964 242 277002069 392 680638224 448 924850998 94 761722583 992 640839514 616 36908876 355 844593868 40 691877023 187 135096935 253 142287320 547 378273172 212 964966956 198 648102361 241 87316048 381 620686770 393 205505540 750 29403854 75 954600316 974 82226518 365 274850137 893 342083217 731 250100907 991 439283357 234 911672971 934 173226429 94 500534492 526 297127605 164 554701216 676 931826199 73 147917244 699 389247896 397 706819890 659 922234403 592 816224754 963 56542949 899 359263749 837 448971253 782 988290359 565 198360525 893 709313137 334 655331280 376 513696793 124 730687806 551 447315299 273 879191045 253 161058307 690 309998629 253 465851971 225 510430900 254 827966880 849 496383316 425 347310006 212 579480651 468 947288781 37 106992960 92 125689671 964 858490342 828 486864544 251 369666501 328 140040773 298 179412052 674 136054434 220 245307680 161 21492362 28 383028839 980 826954912 986 124728689 286 998633818 57 818231378 330 418586973 660 608296575 546 535873379 850 980640499 707 447185753 917 955911864 69 990941523 799 943175597 840 659483822 96 175295914 348 728203672 829 992613808 902 641968894 367 556444505 599 130822377 331 7029195 990 63143997 932 618597233 690 475731851 878 641889595 576 168553506 340 535295611 621 672820900 347 656996279 335 825602537 34 213348085 54 974429692 756 85855050 152 305656644 20 977596900 891 389607133 136 770348485 885 351309836 661 186066334 436 812364803 414 350180970 215 892827289 969 319237598 808 57767711 48 260269448 198 307181342 874 178261552 967 713006537 961 453834157 930 203781359 673 839899384 195 187631017 980 842770865 232 47879281 985 912983779 813 221174732 617 446788631 871 838783317 4 468346558 323 936768084 486 911172265 582 231674991 610 195665637 767 707786085 606 816104032 593 302821463 134 861199160 867 117088099 880 238670145 412 731781629 71 26632376 667 692501043 465 309775278 977 933279490 222 223511209 310 562948994 183 620550791 193 300400887 261 973934310 864 763960295 135 938655049 487 529810576 867 610472532 745 705977813 511 997600991 825 138232657 877 519859368 396 761864679 80 939595689 147 513160248 541 976989296 468 343579649 434 82193213 0 383188802 149 83589280 753 807019975 992 220218989 864 981921929 341 952866340 579 763460584 436 965894028 371 786045086 590 925687204 874 549678807 944 754394102 517 282347691 958 686544237 322 427259830 134 224627852 277 257428193 60 261030180 916 166379336 276 962507612 937 913360905 178 406637394 416 558668795 296 983028096 629 590944214 480 902874177 766 836129595 337 402921422 711 576961589 737 866412554 117 456062099 169 597689548 522 671359620 359 191281664 546 458548984 439 294920966 678 153942313 508 630669136 456 33779372 508 678966659 321 774301547 822 659552168 871 856402093 540 407131360 646 554252833 218 455236536 605 273263892 223 676782039 740 548242290 333 248812040 553 646077968 469 701175476 972 73034221 362 712160396 169 235856072 646 255358307 447 470834857 795 89349697 984 781762582 955 673277017 867 656215521 634 725948369 238 684281443 673 307151421 975 459086722 11 910544433 736 405336620 235 459649154 985 188615699 334 666059448 494 186285888 909 306810897 609 969632655 759 462160849 623 6372812 660 110348973 341 818721848 3 186005764 225 516455372 889 346913035 865 132297107 252 853783877 329 936470945 520 246137175 820 937408870 13 893099872 335 135073047 188 331399450 611 284198164 428 936896744 79 555655374 68 729317765 778 226587640 425 561221763 263 421538872 914 215754122 134 687870034 527 430754925 876 930293121 916 494377832 802 342410377 184 646844541 112 999928262 966 256501236 529 729655719 101 759852113 220 464458440 11 950244138 308 113076249 693 486394413 393 137618078 468 62007704 981 395758239 530 698434010 949 678494784 537 799835091 502 63678173 383 639670470 497 449068115 164 602205577 836 940663207 642 480205099 987 366466390 582 33912749 555 35807380 188 399237874 26 699685648 66 598421288 494 797669408 336 34486957 95 254084007 861 232770339 953 91056426 426 441477037 455 765873535 250 333076397 369 926305779 670 317199789 407 671511092 718 474787131 84 598231077 528 437040846 87 522197350 630 601465867 931 926521832 136 437767455 245 466683809 93 164871808 817 137505383 307 633271170 635 535106012 300 259199250 533 499069561 111 596775969 713 46661753 352 551963907 688 132264492 819 634768452 68 899918000 653 553932381 354 170817179 21 483320670 839 502953465 156 236272765 117 607389481 458 276966049 784 343503219 547 630088838 98 544622273 893 61718652 765 188950534 947 339224931 426 568793945 237 809030743 729 938848237 271 444777086 787 28283283 41 831197918 665 244692371 453 573562491 769 930837183 877 780549375 714 391175727 838 591248744 387 112151329 375 685646902 91 7844534 69 903936141 382 605327961 994 446989270 514 788673379 809 135645757 997 677357891 112 360711693 867 141392713 342 397065768 198 714478954 132 866707992 258 159236092 826 305894422 158 347535388 471 930811273 860 270787236 131 777022797 843 250524066 518 554243938 55 766417486 45 678533085 523 813791729 333 187432248 322 880220993 774 822947853 623 278988648 305 229603420 594 551738215 296 30718363 124 194018509 800 983866222 657 890472162 862 806129674 63 617104800 620 915359220 617 585360280 424 205466190 15 671697236 518 389548129 412 231450270 78 838187811 253 938854633 740 332249737 58 122813395 524 282224241 836 695814478 714 37692479 983 700640395 381 497718447 8 869649400 170 152828668 586 77256755 741 640546060 7 127415862 699 695633499 601 157678448 268 550350728 904 424255310 144 986790043 701 275721188 301 303783145 151 38599826 468 898331979 512 162307488 267 839989766 65 486848395 700 796086996 296 531603129 247 688120384 848 880037748 952 366647882 390 565678731 349 60580622 913 141029706 582 543246089 658 897312224 805 657245282 729 508798230 398 925971029 709 327171715 303 676194562 314 169366374 329 314602946 999 322741306 403 891465259 368 690912255 861 672146851 16 221599973 450 660509046 114 617706015 392 604739418 211 82516058 905 455799024 687 8970925 996 683303694 295 169145773 344 812040142 682 513812776 289 986592629 227 548423131 242 536935030 319 98597617 213 292067909 30 567325351 758 658587474 624 434146892 187 547927705 759 883897823 984 224055037 897 697211215 628 56781226 533 694997975 531 244349388 76 282772460 538 592558418 115 518880391 497 449783325 242 282214434 413 698080572 911 751702174 494 504769524 973 938548625 3 802824804 938 542637925 26 833440851 530 612607213 143 421048313 935 570840597 791 851985235 14 935578465 189 425286154 650 971420729 817 428887719 816 550387712 897 38030958 904 201648666 54 148978839 477 536649771 972 98452848 928 287029280 564 241211857 857 769017523 908 792886985 301 34550668 706 809930059 618 291873610 450 994150766 802 975684600 586 26189552 118 323018689 271 577917849 879 372220232 302 279539759 972 451239209 221 35008193 66 48514565 12 699608064 818 867559694 206 975118076 129 64003278 275 624816603 781 653814949 50 894003488 102 270102591 3 552323782 669 33693507 786 862469991 214 776247138 271 239217603 794 17096277 732 584294558 141 648227333 626 209212085 109 503862591 246 784518765 233 382156937 551 104481139 738 853962872 730 538705088 709 808298524 940 967544468 880 626974223 655 124104812 495 201464333 940 252429212 536 502795761 380 154956883 371 192698801 283 795394002 9 150859451 792 172000546 624 689622747 412 516829870 335 346457703 626 13113821 200 53428010 561 884086774 379 921941909 130 732813240 453 830187714 680 615747710 683 588741824 615 434112787 700 261227144 564 244251797 974 848492728 580 7067635 321 478344505 80 234746925 402 744893279 705 695732521 641 595701464 337 975227852 116 957243881 506 95899827 861 713301341 53 758374552 21 317161790 996 707783373 863 902725541 844 926665314 754 292340049 140 978554601 755 893921737 533 687286818 607 703317772 849 560513786 334 507552591 921 115285162 698 676055905 893 591958699 92 689177241 185 117969769 960 617722548 264 783939035 519 381960176 477 822775791 166 326744227 327 953522182 944 354288169 909 880890581 110 864140642 359 197755034 594 625485587 326 754361050 65 90384609 799 868851909 986 638908578 40 693184735 80 772717672 861 513161615 509 514928828 717 942150390 140 275786510 614 167380314 660 30686036 526 388157303 521 221666589 210 678450380 827 829100910 801 430127517 610 568129904 981 576699342 469 365197012 635 340950669 28 856248502 627 487085072 823 562753352 781 443663795 747 560914354 371 181361560 494 214914403 691 164540549 525 891105410 664 579200604 707 410093711 187 942026998 223 869709002 887 623328018 416 164809642 86 50691443 642 760397944 290 336499336 804 419103715 482 508479841 609 924322881 97 498608847 64 249797019 249 783407137 214 319939356 220 554961283 739 793512153 197 292284280 858 921118265 460 787222628 4 94657122 593 85134141 883 885959690 938 362478374 904 80821703 247 592577209 395 350499237 336 853301393 410 495952192 813 40448812 318 933329987 692 373679572 493 744576661 588 353615797 989 529420100 66 815202553 885 422942994 589 53480976 274 731847436 825 66152813 958 717695771 219 600162125 76 13975126 940 919186821 788 946514942 140 386777134 671 864966114 780 302268744 353 765511022 893 226502660 14 730964424 180 654878993 768 870091802 733 184094738 25 713263125 105 1760883 897 204237117 431 404135365 775 965022539 29 668979013 461 278972618 990 634003114 290 899750588 378 940480971 678 585743224 477 54829963 719 68607296 15 168505448 380 203302580 709 200455193 243 273004687 739 859414820 735 393545691 7 756392983 478 107152257 79 491531191 407 966451431 997 140249362 520 235882543 160 70413070 436 525862440 831 686750281 294 677667518 459 38906583 753 249129601 218 275013630 331 899685832 214 837921599 812 325407288 2 990122638 268 731165978 508 306232158 211 174459549 239 485138048 45 98479450 426 385311910 865 876583707 966 194373260 327 711026350 30 384782574 622 838503149 275 279186933 165 26174087 326 4776700 197 621253227 557 634505150 850 51716769 771 225557646 203 595073982 768 469298239 180 831965367 968 317757736 48 506201408 434 13043290 686 381292519 612 718844920 788 733046945 830 712437727 792 251721672 438 584764906 574 479857425 744 700757078 122 716665722 266 745932003 230 709050920 642 794290496 771 340223657 906 17935363 438 663402866 546 214062273 370 878898378 333 804573573 193 643597026 719 773697816 945 804583693 234 498464453 656 103470686 446 932228077 784 982830115 480 776346195 192 312801780 263 544136460 37 920913699 596 10923434 297 188302692 285 992712880 215 149670431 281 998331844 877 427742811 471 184145598 676 158547377 136 315217366 697 772343697 898 295624451 366 752159304 168 671251640 213 577563988 266 54303627 380 820931173 535 611513716 858 338125083 488 490887942 414 111212989 985 819952165 105 172487912 814 957060618 909 153770771 167 351181926 225 354931809 896 974125418 421 328525196 404 701536394 281 79952108 879 319841193 437 342753464 520 879258187 211 383794053 186 67428324 735 480743508 885 774170128 533 231178484 826 531419744 611 156813080 328 193827340 853 190982089 662 92379121 97 926074353 72 408029699 354 389435177 902 905523035 173 118743745 539 232318161 193 61653533 290 251452376 405 149789157 63 704996982 597 104441685 392 52296093 585 195692105 464 324241105 245 459243375 925 649653504 78 111365958 294 466588113 823 626562292 537 30067536 903 538301918 860 334778677 614 641967312 899 273193121 816 374244342 160 54006573 65 162636873 781 353806166 143 439382216 950 187806055 375 276257121 434 879881531 494 417437823 876 719410259 21 681017845 534 230524678 1000 662182017 688 46729745 159 534074413 649 855392867 12 446518774 705 205750121 334 627768797 320 156674719 487 527329576 993 817520535 442 963662151 180 422091787 876 217246592 102 910641220 942 979312007 203 103244752 107 377830372 169 375406661 625 988099845 839 977938923 154 814096083 738 143648750 84 817677642 949 227112494 105 398337600 381 567729686 301 274324596 610 514004567 313 348764927 345 201554188 17 767453976 825 775488967 895 771402648 954 564586002 591 397392583 480 849729268 485 473423718 151 150583850 176 548661054 211 298127025 302 591191390 389 130834081 161 29512659 247 767859574 911 175056715 694 200074156 530 490952118 74 52202034 317 359089548 839 509056919 343 616157683 192 606930559 879 884382269 984 702685922 171 772899259 253 48205374 593 799685594 877 544221977 145 884763437 445 903371166 707 27602602 981 448784950 878 2280045 912 835984679 194 534059958 307 700030436 3 207392000 29 167560137 868 672282353 902 74230197 91 108653679 357 978181452 792 840582671 452 783661367 371 188179181 437 774029353 77 243825198 437 408438141 149 131810678 284 380906302 898 897705787 868 963760148 135 945369630 223 785501494 225 293194526 457 295511422 587 753918659 365 55216892 997 888029986 149 598556426 635 434497701 29 406816869 499 784234591 863 67771472 950 107776570 726 155810098 108 213754641 302 724390966 315 151784216 142 580300172 894 656478861 881 752552246 566 345034276 501 197677701 237 794850546 81 741926178 961 819066076 555 926281424 36 906131484 360 282369433 975 796861922 969 215574874 704 688135790 837 879588372 186 390814094 44 904646151 713 352440876 574 43008662 390 113137026 490 131661557 37 983224029 964 184155128 610 329053557 42 461636916 342 857402817 827 15281662 342 961909700 865 444902399 416 15471579 707 706435280 592 103258621 67 233721853 225 236533216 390 437667957 781 26059858 342 545599922 626 850429660 914 338373968 697 996466868 760 966723633 87 649797492 5 736401098 136 68554990 51 186729592 317 183697360 646 77143207 806 376963011 638 330964245 137 956415346 836 773831456 631 184103039 358 922937464 979 720755466 85 362590487 521 730143915 203 371702003 346 365151921 549 680881060 206 479497257 2 24490115 528 589433586 120 13637307 335 726515495 462 7153831 565 153615213 505 682546410 658 771082140 691 889475220 422 465189512 423 677857675 949 78933441 392 28520736 448 537955922 710 185853608 14 456596257 127 335306387 919 472068424 834 94206366 730 525785502 617 566838331 732 104667772 577 483771945 85 263534660 428 442697067 60 865116074 650 85153671 266 501178867 530 212910519 888 841506998 592 760681745 380 974686851 926 864201229 998 625391338 178 284748423 94 357139223 689 284479534 212 102988837 657 819847764 820 96664416 306 566414227 285 274397756 692 822353011 364 734696708 797 468881080 489 763289532 285 751529330 491 403335818 501 182206082 875 203886552 68 567177249 820 689649053 815 702584618 660 432476478 156 849446147 595 81802734 384 830376906 914 607295370 469 619532736 40 953822635 650 117746123 570 705332160 649 351803048 273 935718317 901 224757256 111 337781227 249 877202485 266 581709619 745 280516655 444 867622856 915 829507436 997 644054833 43 144896062 919 312814756 997 617511716 693 72918634 747 836723810 154 428314810 156 548709750 768 26025757 153 859529279 924 335153492 198 274085162 202 24723339 153 136909650 245 391497153 501 538258133 415 655819517 775 99372135 861 489278588 274 189889683 515 859893003 224 363588924 915 493205013 135 413985154 620 536264889 289 118427903 913 964275468 657 357714056 984 638435478 141 980767639 256 731510814 915 756186533 400 46780965 261 883605262 979 304929953 364 382417850 708 25194353 503 938384868 282 514333098 683 365527641 171 768135201 400 732498287 138 178810259 143 527249668 511 581196104 854 233177525 257 551241234 810 705529394 152 990349298 873 582245438 845 904626779 668 32371684 511 722368561 401 92516685 425 885782405 287 872337708 145 29866995 276 21501015 626 300924541 584 607782386 240 36559249 726 776605089 929 257528518 467 299619309 760 517151199 795 49304786 408 940972713 533 607849856 562 229967497 820 235997556 27 464523851 889 477581498 117 63584633 173 575333725 518 387252467 787 706930075 726 148192856 323 339465768 455 623433662 772 925519862 746 108797328 614 804223882 757 86168594 9 848993661 903 735462765 886 840087507 414 952582278 918 174855891 564 108821075 100 701829495 641 744289618 184 887064416 11 813522803 543 475248230 292 325467643 711 981863424 596 467386728 476 683491434 519 638825016 767 933756378 998 268126296 728 40939632 143 572181410 47 957047759 134 843469121 350 521777569 243 943351728 205 705211181 54 836407502 387 533780229 164 136569847 594 144559991 972 991786108 499 525229927 220 117984387 485 821454334 703 394981103 150 444139023 591 711231997 102 542846701 803 65144718 88 817809170 135 659884282 725 982907933 668 506133979 595 275372888 724 888440365 135 849037132 622 403792310 719 724028460 825 810072646 976 738456730 94 2374384 403 356584916 763 357219955 180 822945732 360 531525161 242 344304704 50 137676579 353 871736515 713 748409341 430 249056798 236 868100822 397 642445581 959 584648473 576 91184594 358 158353541 331 435374127 950 370678769 400 18393769 760 85999530 465 350248600 11 183090716 758 704824237 890 343786526 793 296162893 296 95436006 646 977574069 280 682181987 812 941315514 395 529633772 72 724772719 235 440090978 469 696204403 8 158165695 473 531391821 376 203084654 994 505476909 630 484257838 550 364549288 310 293503640 249 218295210 103 360952043 922 506746282 349 72829134 203 165675766 867 314063350 740 99919180 572 807130874 143 178434015 218 944901004 932 970201479 394 16599143 756 11829155 318 553162921 846 809688324 144 121212763 769 595019308 380 866339366 193 324163545 721 464779914 885 975136771 558 535296172 158 578279313 523 43846675 130 308407002 9 675718801 113 545707026 356 938329340 11 381299614 560 792061475 379 150825241 496 335261616 486 427055478 377 268658988 370 52664782 134 836041969 902 103131472 416 888248934 363 562730178 884 687160662 361 140896426 349 807079613 637 559037346 495 538780937 796 424447315 936 967577861 167 32530457 165 368413448 567 217258852 122 575234361 774 933110771 877 64686801 258 994875630 154 12847986 893 951335260 831 940396986 14 982661035 17 825110267 150 489820521 393 463778703 972 706309587 490 779457440 504 636270682 250 700742022 97 875184436 739 238737429 94 855994030 635 137993039 219 50165931 240 722464719 816 964350819 645 341529013 101 300862202 641 508075546 576 451664080 604 980385320 610 874572114 314 175645935 523 291017052 119 974871406 137 812014955 534 275061538 167 703609586 95 179139546 521 965867377 316 668715869 951 942328996 477 592483990 203 44744536 739 781280971 19 987143021 448 245686140 638 947702736 885 468796749 893 624758615 748 745765165 827 843021688 213 24742467 29 599262734 413 64988841 441 461357148 402 307159661 79 789762037 897 33644484 881 341185672 649 706731853 729 489093347 249 76821313 293 966226259 605 350479142 187 716988547 829 812387039 164 347597590 629 875272352 727 792451138 741 633154574 901 61020903 168 362270765 172 636994759 370 384536832 492 851577251 879 738734540 968 126021003 514 397850583 635 733284103 16 884316666 694 180902376 383 110060643 976 979301976 42 346787542 249 167983868 250 719980051 293 874013312 81 210294511 950 274293827 689 334839311 744 702076088 299 957363009 312 965537078 744 170541231 322 390766602 277 335936579 319 864474475 30 555515009 467 489611675 815 895560285 870 709091467 79 819755875 827 243860779 70 538426921 901 750429198 13 799136730 522 148062627 534 376018404 440 513484246 466 655432007 754 786146468 416 998237514 25 520170217 213 358260303 293 695431749 920 155921281 300 809333463 561 143340859 351 595419384 305 38988583 159 589763915 751 85988988 733 992804465 887 236346858 339 956026331 328 643793558 632 394372444 604 729208829 998 276973927 3 812823697 566 43171108 344 504789717 143 683903049 704 386585467 79 573680705 369 608651094 265 599842532 466 613767503 255 987318740 163 704221466 448 180478063 1000 293535097 615 524493902 638 976055930 694 156665151 298 173154283 169 35062518 643 231515341 38 527969490 244 351853117 781 347169389 554 21787585 20 358084236 385 684753969 785 317300286 610 22957302 627 903233249 115 830616558 103 246678235 679 599261909 575 948604785 51 300620239 775 455899522 55 709365585 885 800505694 114 36149855 511 239544748 91 876108322 420 22252933 318 921781112 564 916221876 237 106083927 406 753543190 926 639944415 563 432313831 921 205476821 177 512555405 147 922613973 768 671826680 650 452333874 775 626923128 4 690443642 783 371096715 799 921721085 873 100003400 169 914535928 58 105802151 476 613520177 653 604431978 232 842929340 753 212915731 373 739747780 177 411110542 97 71032670 905 761422714 683 975980074 919 424490291 881 851739104 330 78086208 930 719336117 772 459921024 991 149309173 401 819249713 627 934565659 315 683038300 246 569193118 928 940344333 99 854890231 676 448322783 923 825841004 838 384366111 328 469149201 911 75170626 254 109090954 638 163611871 33 977728428 93 448795981 681 664080663 385 536818092 948 74250455 141 414354889 178 965387468 206 725687372 343 119837471 203 728992719 61 571555350 213 748448813 780 819921603 597 786264757 807 677854696 93 146733147 23 258130424 801 216214151 983 172862193 764 34085201 161 607552527 202 624708671 562 769954490 466 704093158 116 524682541 577 990494036 571 517249011 192 666212322 722 267741859 301 965307898 852 941503317 899 100764457 197 249385562 473 24208273 909 343188098 663 783994849 516 919023345 514 513297394 921 606553546 686 349527940 911 780125786 621 380259784 798 796982078 500 505341096 273 804735696 319 836673647 560 692041017 712 160728958 307 127005762 512 130921253 318 760926097 38 393507561 717 207172527 410 108939579 2 376642656 897 299018298 506 866105035 358 554347713 310 278764173 200 68847774 622 629668304 981 890910145 988 611207507 905 453193396 676 938736488 990 225944231 749 263026083 851 981336697 153 758260029 425 109705004 96 296828544 460 953846616 532 616273972 247 907247224 165 993614572 735 212239826 980 306081338 691 731760713 704 594404403 90 556334368 907 711763875 209 856576262 87 967358753 619 974619922 575 228956725 226 788413392 526 621718566 119 858780048 589 562646685 409 343980594 996 367638684 158 589755233 766 753399995 545 225473996 423 734189253 748 646801561 922 343832692 669 664359813 882 90575961 587 699974449 145 590805111 792 620615626 542 805375468 785 147507421 393 443506134 642 53049844 285 486797503 288 662726473 934 56438684 792 209827298 447 856140423 862 616722230 779 570476771 619 10456021 860 668836639 890 376530302 87 539126791 568 9995591 222 531175095 537 372191233 697 566745612 561 160944415 50 170653746 118 78157777 714 764578269 416 596899088 908 506641134 504 833914567 411 81178551 44 520889507 150 133611619 158 624961610 262 269945780 494 735453655 230 997295260 41 770800677 704 902269738 500 939549207 128 121290757 454 548323829 761 244762122 879 654195319 288 495189101 703 183414780 206 483214711 96 675595446 432 803256686 930 783326464 931 586247232 98 248189468 721 497781103 176 867290083 274 258624717 713 226761024 765 411780168 249 753823200 37 227510563 287 221448755 830 887405721 105 783352841 196 141214500 587 107097989 501 895949458 305 583186671 763 835423856 239 650831663 27 690246500 299 191857841 588 291595631 0 380281382 488 298487110 814 348793645 286 51835605 429 111658314 540 174445626 363 75094031 120 804774790 515 389360873 472 325827473 700 201102287 293 851567329 135 196977821 247 717140785 575 855609761 776 910677461 869 57038655 778 566535537 414 807655060 406 244058022 148 963018730 240 854983921 890 585182520 782 997371863 782 137958241 885 779653062 480 470863455 790 469132808 149 742404519 658 803760998 894 614595156 130 457060231 720 511649167 943 558546307 586 111575963 190 603882527 232 764987027 565 824273987 999 570709868 449 304428482 235 95999280 31 964527606 990 515897303 79 35091114 345 822263066 372 461490553 814 144903192 581 113644513 154 768937195 742 903484180 127 325297663 973 104510151 217 222038667 300 963730949 333 184469348 813 924218040 831 314448122 67 849220327 183 827677108 923 321827342 15 666503040 44 672444314 904 559113068 728 217831916 888 179765487 64 115485667 371 153304019 286 826160439 244 446106717 926 608881503 241 110553471 393 567731243 282 776089694 911 326040247 611 921414489 126 498959955 226 193690671 943 376999834 737 910173540 868 130514521 587 309854015 632 238162940 23 145349504 511 34265325 142 862342444 842 368891161 345 258197395 891 348497051 509 679564739 505 832604331 229 540098137 560 150725194 93 358924165 699 106063277 762 355110560 68 917552856 264 25322430 162 786638080 257 134107638 479 883335056 947 640371667 671 268459888 756 420645143 675 555645042 735 677777362 157 774499350 695 299160907 146 815848251 805 950138652 750 628251384 873 299926641 530 140369202 441 654948577 9 576960808 670 580602758 99 218383701 913 100674889 58 804301642 772 835527237 163 972277236 844 239535618 456 496869684 619 171295969 479 531059345 570 921577629 278 575815678 173 52116668 485 289674119 938 16933068 634 610890183 837 81621183 727 513921242 353 584388961 390 654429197 35 69668406 201 672770464 366 945166521 915 920665204 784 402489913 256 317010874 274 882483635 96 389112516 94 164456154 165 675767861 462 987334262 426 270417907 551 703522578 34 819304781 689 41500159 598 779762979 473 228541579 192 973470432 780 126207051 779 282636387 772 317606320 252 651607933 329 786026484 75 192272187 164 909030843 430 362129201 192 873490893 284 565107077 950 976417270 851 991038835 192 375510098 449 22274121 712 858533717 21 602830138 836 770183421 517 449279142 365 264644254 960 105097302 631 143950214 173 118496796 895 726971969 287 772625439 672 386104209 237 236602893 630 573247483 145 912239010 922 589251304 520 504522693 677 765562751 193 481472085 63 562725806 465 667574426 37 621738080 996 45161577 647 358595229 878 87423590 601 744436735 895 194276665 809 507700324 67 575496514 443 705325194 642 587708299 468 995125503 586 527970006 104 374544133 794 787049289 794 549360076 178 328978518 269 925453799 731 445336111 547 556910289 315 921132175 825 383774330 969 990426550 592 190702799 424 812171053 690 217223027 150 548303674 973 552224997 886 724434632 451 834206274 547 706699049 926 854038055 666 481135263 283 897210884 958 505631229 663 975143223 798 652449113 843 436518146 491 287383529 612 207247676 149 48364526 342 948553467 435 624800671 225 290238749 229 601227099 301 307137429 498 340396057 295 621513357 739 281421918 660 910778467 118 745768787 360 2261467 575 218630578 51 992081786 124 454780256 262 336254126 554 320548098 942 496275232 204 881167459 538 524784698 446 838479587 66 658831524 255 718424809 156 249474418 881 120070865 201 21123859 750 523986650 235 206361265 217 747647508 762 423452165 565 21588693 319 758066803 512 35239855 965 890187357 488 912681995 918 323510800 502 344249441 305 474944335 537 528216466 416 9502403 472 791508492 160 222220560 421 936936545 81 944518782 400 39490933 35 240898644 947 390529433 92 621542938 96 222349591 729 174852259 576 861799071 185 419624132 530 833158964 548 374717676 433 864462248 241 667732045 586 110259458 560 394885724 234 234796132 691 416541579 602 656201354 259 884437075 560 360621745 343 402484818 154 865905694 450 983511872 293 334209758 672 349946643 512 283029295 764 821546518 993 300593794 855 364152485 937 200752013 848 717045963 858 438618187 768 810786004 101 300105510 226 498121944 799 12506993 556 246322174 457 337424923 410 260633873 754 576451652 439 141240892 991 939115510 527 827166076 698 379411454 746 525174045 715 123123006 103 352876402 709 583847116 506 371432973 715 651736834 546 606235197 876 24635568 360 141076060 366 735426157 449 668822050 844 899997375 750 46268074 895 110002064 537 929202231 232 481023781 730 863045971 794 753628562 909 614147829 976 127434063 172 250987231 494 82233374 195 335204177 760 272057194 605 994265604 862 162892216 429 413204889 44 767250915 290 403528571 370 601205063 239 662786862 730 765593233 117 462775219 134 372393014 339 146602970 569 695998970 43 697487654 359 857454188 787 252055931 460 631687929 474 113645242 490 324118560 806 444497399 60 329663048 381 914005157 427 734106113 144 62446132 118 59109797 694 265945700 323 727201376 736 191146380 516 740494302 223 647980579 951 128832624 36 102145985 222 756319857 857 503536939 605 650846210 566 932644247 762 391841263 891 466915838 915 414515073 273 817862400 5 107897774 53 470631351 562 594803592 180 754255116 734 799867659 135 371767381 451 130150004 31 997554370 571 43687123 198 847962156 644 511094313 813 141417314 296 433040064 573 106072022 46 87307952 302 257124726 107 927449525 563 732921831 146 908312763 931 970358160 642 644690274 850 166459743 686 686133449 754 878863774 821 768975235 981 101994760 365 871374665 986 675663787 952 969646937 587 845636750 572 658291101 680 956005574 186 605058690 320 799011147 815 805184062 874 165303033 870 520401927 879 24176203 997 313845535 127 44691249 805 385633343 781 929686207 631 707794212 582 467138272 833 721255459 842 805827032 755 997307728 869 93391320 568 312906379 316 662598400 679 293701364 448 654588419 35 260279820 208 695578418 625 556196360 321 758370524 422 304471148 885 115263756 714 691397322 382 973459806 112 557017305 921 313372094 94 943677391 302 429475342 299 412329634 918 952711493 527 443120487 459 86089956 280 836649624 260 979636292 852 419643561 371 653909008 271 373835198 738 34787095 310 901251253 947 862930849 165 42331176 884 71953754 950 262266476 483 127652205 82 724450840 738 381813537 543 739891892 420 744980189 774 861100450 881 288172914 346 675238464 313 796711800 751 199154307 378 607765378 92 721022304 709 476136991 189 327199595 629 647518572 846 677347728 145 956137049 826 901054927 99 671581064 359 602952760 187 911487305 876 830276604 532 873056603 880 570167505 138 510387026 511 285625986 480 73250088 694 699472993 54 790378136 723 747187455 677 769843266 941 978558079 566 987888974 549 428568303 64 647676036 976 656814687 514 143632659 675 222534129 439 332754669 337 589183120 43 360013070 270 359714242 86 45961595 741 193255775 659 30394168 72 330910614 40 590454619 747 668225419 776 252756022 863 27219245 93 487112872 932 501810532 169 436578892 893 454064760 985 919388822 668 731935601 791 993609439 989 354038623 57 56552308 939 707636175 50 726414559 264 206384178 101 483663014 392 177257394 956 218463407 467 539299007 269 496079134 244 129826230 733 951105884 580 296659340 653 308702876 299 672079247 214 173626733 275 947980655 826 495990880 12 186379131 952 325245154 922 853363857 82 50831752 173 717126579 550 322565158 555 947321984 671 343000590 341 758881538 225 753497895 170 904927735 788 215796376 885 452645987 938 390189271 280 395142611 772 697021156 415 483195736 406 785936511 778 258290619 357 24679789 560 875544055 37 142896651 948 307402640 111 534495890 531 882580582 961 578913113 658 777308704 686 77003083 127 389340 490 399331062 979 365159098 605 985517155 517 260225696 856 480343302 763 603750110 466 581930227 574 632700565 846 945151861 589 783213268 472 195843889 482 750293560 234 572572219 301 329299423 13 601928879 671 295470838 938 145129883 814 80283762 169 954749426 932 217806126 522 729104785 122 227014952 195 668124075 720 466061462 555 143544433 700 679578505 14 435127118 924 22001058 653 246546166 805 836758310 234 689560351 1000 702238855 876 764761344 766 784858086 535 978905455 190 242210157 667 777492728 568 160405700 612 212233710 762 703504469 284 271608608 318 884253148 187 896967537 567 88671885 635 539316400 461 124370593 694 763584958 500 950221838 607 822965533 703 685685429 307 298387443 460 41394309 193 626769034 318 254041340 301 635180060 244 603123660 246 106081004 105 769090967 959 316593247 312 783051984 436 82094682 892 313769098 31 834345474 848 33347689 163 372220028 460 356648343 666 832466131 342 525769209 552 234369539 529 961996512 612 539563253 462 228697341 0 808533916 785 309615151 994 64812301 413 770235288 325 32624964 817 70680693 109 774997315 115 292235019 76 25811054 659 551492539 824 51035519 534 94313333 245 629854931 261 641146674 996 614895724 301 863804659 907 272216300 296 131804147 179 885505034 58 797680595 833 193362371 394 624781527 385 251519486 426 36275756 440 386359784 482 522804081 935 861809863 272 726122681 470 449037414 668 981095821 965 722915613 694 993521866 673 223015476 513 471445882 459 734090120 114 675520222 97 745336251 838 747744492 382 300247046 117 766069124 230 568696925 484 262378354 952 627649747 606 518802779 22 334637264 852 824067276 51 971539192 320 149820058 988 888347031 665 374245218 951 591337419 788 496298688 778 585121429 561 825113486 835 491393837 825 9900055 306 76380649 37 805004803 17 822006323 423 578560100 920 97982755 843 591035817 827 796934834 675 624882244 492 583597684 383 109346074 402 205152710 255 299825582 659 741729023 513 596969139 211 74805864 148 143969648 221 929614472 527 436209389 994 284327800 899 46262707 93 331594438 909 278767571 398 825541505 947 548691322 406 938984649 712 140190586 805 521402019 259 715550889 722 97450350 360 483804532 50 688855094 531 630624236 316 131347724 190 120906028 850 910612793 426 752685324 625 709975540 792 986215221 532 67830122 55 398295807 808 806495937 189 754591699 689 60007422 585 490012867 346 446328102 112 767749353 641 728409906 203 432525396 23 627995015 170 154907630 903 267660460 416 130311716 938 935187375 739 842758165 947 695237879 303 620288643 977 122445579 588 147802435 442 827574182 651 895153563 908 196880324 392 756306810 857 879535530 284 627289850 454 104774700 880 857460835 964 112041418 855 355201396 312 464201343 114 910801062 955 610194639 501 768034011 460 641231215 653 31878939 513 352632350 557 647869393 41 233586464 653 890464333 880 596394682 959 646970792 858 903188487 554 773388504 248 522735329 113 831917191 452 576191857 446 733809680 800 112706844 889 304030173 451 364202221 262 520987193 798 514094492 594 675732082 918 50864799 538 24458018 860 753389395 415 39026166 814 918313578 865 75965939 246 888187346 329 374984645 947 107702339 156 314575070 40 93083230 593 410149138 731 922495827 453 447040234 678 453095483 753 497782499 204 961005465 362 111048726 404 234317930 703 934142158 912 670821501 781 322968160 412 916754829 619 12780075 222 403902536 840 655940800 36 370163864 178 613998974 942 866796625 620 763978379 458 580578557 98 266340954 339 374373014 336 530974064 949 927943070 961 644220039 619 647825112 984 589587889 112 457114681 487 241346047 348 787745402 570 515924924 885 1217987 685 932968879 211 361370483 705 134110934 32 18345486 694 995799051 172 598634121 957 78193294 773 447311591 483 161017934 280 336501146 179 990746046 543 595390943 638 680267800 114 992873223 958 405121928 379 592188746 411 890518335 448 555811658 753 913756692 183 204193896 955 814170286 18 388895337 707 65081915 850 803196415 933 706662854 7 116325507 19 963566698 78 810971323 533 359991641 171 247630709 677 370364282 797 372253739 750 916318099 191 86565341 564 883928074 832 454361976 809 122223086 316 65314548 794 609385716 209 810433958 323 858354233 43 29417112 166 509366587 543 441855951 792 273469635 541 999888676 481 867342373 19 940094215 997 784822058 962 818983854 437 391659414 684 492221175 157 797418577 148 484776452 302 135808380 280 987118751 828 186482143 387 120944099 137 205618962 850 215011531 676 416979040 9 879936365 722 624501543 210 438173620 934 922905951 578 508634155 449 896621845 690 496665674 359 454322139 976 485747269 112 46366496 187 916813013 84 16431548 827 816614653 249 803749515 676 502586029 628 887163232 10 961961359 474 819608147 880 757239882 928 437503331 961 107925771 16 682519133 458 102691809 346 67116323 630 348405506 582 234118493 907 942655954 629 218947263 29 430237186 515 464776842 219 188491332 418 296248702 193 716045516 305 442010102 595 728170978 233 376819393 39 4413676 649 312788136 676 619276477 513 607352545 200 464264909 85 997802122 274 334105098 19 727210746 172 773949615 6 501678581 563 994791636 519 627346972 745 882729212 650 844639517 344 542209800 89 175044832 92 666807042 204 254954795 87 50910730 362 59652427 530 29491841 38 397666857 973 306340674 86 161753935 533 565709222 626 76138554 737 359145485 452 318100558 98 574300535 118 592986290 62 42325208 378 676748781 882 315846425 353 450319254 990 747999382 885 647958844 642 773535307 244 17204839 240 636545430 427 897413612 128 264014283 234 490067931 81 415629057 251 45000729 96 163092922 794 570965580 710 701185488 851 48027252 772 473648497 216 75714761 65 443311881 252 549358790 294 250229971 361 17391693 250 899775335 446 918869382 478 514428914 623 646962871 276 538601459 142 350194879 606 61813014 54 510659467 289 245991545 631 305464518 354 501059293 222 383451327 706 172290727 523 218801792 624 392752524 694 176023692 718 78350233 418 239327611 485 906195014 466 965766452 645 875639853 673 619930831 6 429636607 493 632994184 240 204031605 469 691691904 970 207394848 190 603170027 553 802428635 91 705536425 566 81925354 939 504665587 842 470688435 429 754726304 607 506426497 56 25242513 296 152040437 618 363776464 76 125119508 680 239258383 609 72474920 811 427585380 532 23475502 896 200692353 296 915207415 816 380000857 497 973649013 193 526071842 868 820490419 546 264952967 575 591383300 879 565994269 735 242992516 67 89003993 41 378884117 415 792513752 138 597595267 291 134371723 549 211558813 894 94167772 940 381584328 550 796068750 837 288878900 176 645365188 889 530918707 854 507679469 545 86788065 835 750316607 112 881885909 343 437398864 735 812358431 399 307917301 968 10214444 457 151327623 737 974944649 709 858017259 458 997161967 974 13026010 91 286137753 697 921538524 790 319202722 763 653174832 599 894607773 1 444165392 994 17744002 474 31615773 764 319359966 129 938403659 677 195169255 651 237045964 944 439413393 265 965182094 825 549985265 383 400063720 920 237306490 526 726801191 454 427658066 536 960399301 105 498352113 574 760730601 726 974948850 492 659758598 639 678278961 564 804277972 4 597836908 390 877164298 206 779556414 340 126140948 73 179356525 432 652326928 171 505879267 72 953595943 67 472245127 509 653524385 633 386150938 409 665887606 739 444555735 724 157116917 182 545459441 442 475927501 189 436283272 855 435472249 119 520465945 151 66753729 808 280524131 759 1261860 356 886298878 195 530956635 653 131474287 773 127311956 468 327639318 250 644539687 474 793977842 114 653881149 124 811545866 757 981380458 14 475882084 510 548054105 909 503952301 24 291486488 700 190718217 750 494401715 698 811489569 321 388067107 372 794513605 60 786631149 561 753601991 555 262656625 401 911663731 402 990589545 366 426466343 949 920997411 944 447287111 198 547309900 489 401819008 519 324096474 471 366120214 118 285531560 489 707570162 885 454800899 647 891255426 693 512945609 793 285928975 421 501914145 562 297335919 252 589956214 241 142185250 792 514448679 515 204305440 97 948822636 481 825157392 967 483800434 388 188166880 150 129900680 614 123546011 558 902742310 699 676280615 692 31887101 257 715973361 133 916848965 871 758951795 837 120690064 55 911853462 1000 10726839 440 173072780 544 567429019 541 45706867 450 152005127 510 637714341 865 411625615 357 236122552 485 649665673 621 287556699 56 952437367 61 203414741 806 759787160 825 941067044 287 237463154 291 976246687 404 586104158 497 928507445 746 904700970 319 94473239 684 787357886 574 531445573 136 126832568 585 839439275 128 438886811 828 600713623 844 83122815 984 109735046 597 8908218 306 296537124 150 403747044 664 208458256 377 938637839 971 207729771 292 416123940 210 775755923 747 121205493 387 257258841 354 55848984 548 249481240 972 394294405 884 906664303 729 891932000 678 885724961 269 846743089 151 256374229 597 335101903 68 862961444 615 869967848 796 63537423 104 531180062 117 721657871 757 261832459 66 300101757 570 564513368 488 747374247 131 617693090 647 630770264 742 145951648 446 507584207 408 697986744 840 903579852 696 438420608 645 874600054 176 611792062 286 9821758 194 743756218 580 614889944 651 805814048 321 658379304 210 985580555 260 798927563 867 21665446 100 252587955 650 422783476 342 631232701 576 594336032 669 24703427 194 113515858 42 306853293 625 157423402 610 57519119 845 269012393 116 399716752 138 539516610 116 360436154 129 704150259 28 692326813 847 543257596 654 670865617 116 999821157 570 534880243 436 12370285 858 816914483 111 190956132 937 763124254 146 940785922 305 492282297 805 103762378 157 326890240 54 101927637 579 95075787 697 930610623 415 902654634 698 474959923 746 124311564 196 549985619 225 460552010 334 356652494 202 353016617 352 418928528 435 865638619 876 921848734 794 167458548 186 538928711 820 706768120 52 886247058 306 744037357 41 323024632 546 248480103 68 453619999 729 345951372 641 711292848 254 476304911 84 322327481 239 794296076 884 197924792 953 31001037 967 412307237 114 776626759 709 476994368 564 99145049 839 230492226 594 743429636 355 943616656 294 73221290 700 877742997 758 744367651 727 828038093 818 835095118 808 993546036 359 414849980 487 785515071 813 388852789 502 337726337 959 835167640 524 968582461 874 611882964 945 590604068 765 788161687 34 119100702 166 952719816 745 997821134 858 77999444 984 907533514 76 110625201 85 184639184 257 287854487 174 957517702 441 461438060 757 742545876 75 656557463 32 741627732 568 982831394 956 691061895 987 281287957 928 804052308 423 884494702 713 291810727 869 123627329 186 620018950 84 12078526 958 130263994 229 286466500 286 840724012 919 869296521 609 819220483 795 980404513 238 626129381 489 646188144 835 796045546 620 433678547 208 747034443 923 86387332 574 661066762 28 191789067 725 294255385 149 285641401 542 286010658 434 620778370 352 12629879 789 57070561 427 149720539 632 697988458 380 488593788 119 205042222 1 103217675 969 918194332 682 729279029 602 685272661 692 305670617 550 482389699 611 834994321 563 910393166 361 401693092 238 122056484 125 769284951 858 579720760 478 55193699 924 645184175 137 520745789 444 775622917 260 907269252 881 323503421 891 187536784 142 761035874 809 134978614 629 728605983 839 18570957 453 453051536 388 737287498 370 628214116 51 561141167 766 760022378 253 277164256 948 527590717 583 286821171 339 323109397 313 382198413 469 265038928 130 701741301 277 246671759 490 223528502 346 752509094 928 337269278 202 628566399 515 190343907 31 688531214 602 196514984 218 505899569 751 441049312 310 913870135 548 148602122 472 364501051 643 982038252 329 609006855 151 723190215 830 64788348 684 403233837 135 532401007 965 384579912 613 301887774 98 255173191 98 466177585 271 56121921 658 584044067 376 278498661 923 396402922 457 111692741 510 25987269 720 678115719 534 147934933 142 141754561 941 570454174 433 170820703 492 422136777 395 512812093 482 338562127 90 608537092 576 688096945 567 257292268 640 247939328 6 182327278 930 857120229 68 119332079 447 681889728 729 206598726 629 546587616 735 700084757 962 707467607 160 356872682 355 61182925 822 769344237 461 949995686 693 545662960 54 845702199 874 615879442 817 975643739 325 596354572 305 261903332 330 995197563 478 528667612 717 354042959 946 822214545 470 689836974 881 948930160 262 284107594 379 122497430 290 578658179 252 192089285 826 302422615 169 280400073 658 919701011 141 7409273 788 530414628 405 31773947 779 886688113 122 609919003 726 323027376 899 718158456 600 663559797 803 476944597 717 369350288 473 746116989 343 666602802 274 519639886 579 430115085 184 170395311 866 785383863 20 110806835 281 4858163 723 430090700 737 30177095 259 942948522 265 225088249 181 707923646 419 759532225 76 73221089 148 576455080 230 61079476 786 946881 69 279765829 147 824794250 643 523855654 430 920846172 774 386456104 909 522501746 563 98977542 95 884134895 247 524787319 233 47113089 43 177014089 901 815641156 538 105997043 318 362116423 689 780994026 333 988280752 656 298661337 560 363149022 908 818344992 345 182743060 254 281858974 583 848250080 678 932620331 630 250733306 870 650930768 462 225348439 194 401626832 609 25334003 218 742843243 923 199648786 45 486303936 363 634402754 674 77929992 257 771530445 204 819466334 812 1522839 840 792675647 439 971473411 627 290058432 905 299540848 111 363698703 309 20499229 962 994926243 5 551490291 134 331253775 949 633791604 237 162938971 959 402040588 629 597938913 137 464680803 863 131645181 530 768120992 798 874453539 446 786204445 253 266312137 209 281055438 273 774599688 182 24042046 990 492357129 161 291041825 817 968095818 391 52567246 677 614410316 816 150093777 924 934657210 810 475481594 971 295744169 871 673852189 988 799685191 453 236682356 755 41510811 630 5124276 915 227340541 205 156271169 335 42476896 825 700522175 879 517061983 545 885992576 434 751751780 38 823828001 622 86348536 122 602591841 894 312731408 864 600740909 129 803970134 796 179447598 701 898485636 886 131532651 382 487774676 584 781609137 962 806241868 643 321581183 826 642065503 313 199418461 414 122569251 995 545051514 675 652908638 558 758628437 783 452441121 188 552980764 400 102929986 724 556086553 462 394779341 526 288974064 258 352669950 396 836778216 194 761329430 31 160641622 798 587037598 871 445170686 493 112260630 541 825630340 550 325909868 205 572485000 68 354478153 173 428315198 648 146439487 534 753578057 993 167806136 144 919888005 355 877327374 127 312374198 669 594308783 901 71751223 358 469770692 391 612025522 772 262562872 406 970553240 548 816060595 751 731024696 911 601739307 646 253322570 562 455524586 764 376805570 972 176986207 707 43428400 515 434022362 132 799819053 361 163034262 65 863810178 274 911099453 549 485628421 886 937707648 352 613700042 815 41360831 737 626454878 800 323007246 750 20105055 780 899241442 760 674466048 222 384533004 184 594571812 763 608920459 172 340958080 154 613801907 909 699841201 844 627317785 224 968641491 361 571682165 152 689715577 755 263600413 778 238177266 819 779069650 859 744598280 809 698315224 382 132938265 303 703819556 928 207537975 837 399649362 755 776968185 795 414345396 234 671795036 843 359929477 580 91575685 874 469492492 655 264378479 378 957543401 530 626422939 543 321398510 286 347857963 271 961409076 329 100161784 131 510446421 342 983690741 857 759940792 386 452450327 571 903826771 70 757678829 452 385288278 422 844854664 204 669851512 265 64874857 929 67095720 431 648754850 136 11156185 882 72065781 696 349817828 508 588964190 780 716222310 768 234022388 707 930835911 743 655578117 67 324451515 201 27952107 944 327399466 661 326671911 769 98166713 749 790508291 427 203792113 161 313113818 585 755417595 895 114674973 147 367753959 370 780825035 96 623690295 394 888751007 206 660090587 735 996416635 476 529919550 799 304116039 703 264358512 660 914047523 811 460453902 737 175849206 428 635889809 868 887310711 706 628828987 189 359036466 64 936675197 378 408688785 784 305064643 184 786883328 269 38040003 624 99558001 941 289069011 633 483878360 118 201068397 326 747145917 83 182402394 986 951405651 771 794699064 327 602454476 999 655392109 219 973223780 20 173315188 164 946286520 424 902856842 778 867402411 260 904657671 432 894403126 724 183238576 155 696296163 844 792669376 627 548534489 248 674580064 48 178048888 659 606173525 145 233069424 117 972273575 850 580273107 824 746659942 644 697926344 849 782457742 941 980724834 104 851867009 683 763724651 330 202608276 935 470993235 671 384126240 620 579734192 367 45360119 296 337510480 957 503305602 341 515026299 857 401921571 235 780463033 15 105401809 597 832917903 140 448742253 160 804473531 777 483908413 326 297272725 732 983576102 550 818820339 908 166742180 94 405530064 49 886774954 363 910499395 591 326993028 94 139962706 963 781836142 347 360077556 166 54264609 581 175553264 66 738644239 497 317237284 191 956469863 142 714410600 827 482654267 820 600899208 83 307763444 931 219784798 972 709341150 58 323676185 204 669395058 392 52626734 364 590969156 690 88970331 666 435604877 573 490156309 756 289189146 12 492526518 31 680899769 131 479360001 624 832126460 502 154127992 991 84365534 159 80550674 977 139593790 81 497232509 578 108788566 908 597522070 455 955792466 940 507958105 39 864050717 696 208929420 563 69292178 658 790750162 899 423929258 891 738367525 986 823266403 819 533559602 595 292840693 736 322059696 436 923351250 115 948407997 804 220687984 628 279631415 920 189344207 322 441442898 550 740677305 127 331092621 564 229998181 473 96556560 961 48648335 109 505890101 153 840926627 800 842715267 715 167279461 911 679408586 826 25746408 556 570048327 205 283919676 642 935442272 131 275781803 453 389085869 286 611457497 354 733277389 856 444807092 701 906400940 992 622845091 187 774398422 814 160559861 564 695394243 489 906000834 219 151527936 639 133949749 542 613650219 592 763311941 835 80950510 338 126448355 722 432292672 248 534567252 465 701544741 99 786212964 438 496596643 1000 977458389 9 394348982 756 645559345 327 244648178 535 748906076 393 520362316 641 27079937 799 488036408 692 483955404 780 401077879 581 529090576 143 934238583 227 150588471 317 228520126 691 824546901 918 814728670 434 176212696 264 47477352 580 432970059 312 918326317 290 210777247 620 796841547 376 822969045 233 586741315 473 908434915 654 567529395 689 997491792 852 270944535 135 235994555 725 214311507 949 311872174 6 26297240 579 728060930 28 795325232 667 118414978 995 911865797 782 313360697 861 645658394 988 551226480 261 188085860 725 957196630 233 695013890 539 455575727 389 272282574 151 959477049 187 456664119 897 252775483 68 359887216 724 318403244 786 722912958 824 56442431 348 822727450 925 209392036 733 702582989 679 801117073 205 841475992 276 491333473 27 129090553 915 215930716 433 287326094 107 430299063 901 66439052 530 595769151 762 371951933 299 556411474 695 909493993 869 51185650 509 303450468 591 930120572 914 254885295 749 931479684 19 225946722 117 87001959 451 710321231 727 519499912 99 849891772 706 408164853 314 94049633 546 811345501 164 964480805 133 396858338 661 588161019 676 415969727 744 300212977 328 32346826 447 50042632 969 341336210 367 173722224 365 641989444 698 748901282 936 558088838 941 924382304 608 66141158 672 784340273 664 887442007 425 36501226 276 397517727 333 690622454 347 857411917 217 290387890 409 103624432 957 539100817 93 778837211 12 707356329 146 731981806 363 734962591 927 765689712 130 374517171 127 164078053 572 605409669 158 54496662 621 60563698 735 937458516 366 966411405 244 377225177 166 856775956 460 770478775 922 971699456 628 630213569 794 311864547 331 954291416 649 267378567 33 252549 522 642204471 829 591058365 240 226993813 569 543878521 492 842817204 145 213037808 817 381634279 841 6509629 522 536639895 336 703684501 949 927111011 995 223283632 415 902115949 444 386423799 237 176613136 733 410104662 393 19953221 127 124148732 886 188045986 61 609592158 558 281153494 621 735843436 977 900285731 713 776986478 251 813990515 320 116831358 790 374642731 319 162515875 900 481411366 362 979251748 433 148781577 4 389701500 400 198465292 416 203038848 186 607827626 585 156560118 750 400534317 812 795420778 169 687756480 35 750697907 168 454666898 152 870166333 717 622396746 190 236867081 877 53099603 13 351077724 191 687888363 187 137157985 9 479707196 470 766081575 917 747675739 302 246459426 462 604337625 659 495391430 853 95648226 119 257217446 440 524875551 198 905215661 987 371996005 163 624763153 602 608965240 811 64426706 42 711235677 204 989352976 224 70614716 500 797984653 839 633353331 502 924257704 234 414690185 438 642631208 768 371365653 434 206053600 28 985294087 714 444067981 679 245924688 744 398067411 993 805090598 280 858838021 188 106538528 970 573199631 420 115946827 113 56307230 317 230770706 152 394107954 638 197231777 290 74120162 410 478764678 479 320702678 206 851603521 218 247260197 693 268237871 50 747818878 571 709975954 719 803070837 69 537130577 814 74676379 48 369280935 4 190712057 232 137146707 558 366794576 374 592832614 360 758075848 912 549843397 418 262621336 977 297249228 213 469394041 964 449260048 534 926557376 338 27405012 386 862909130 975 718538308 37 210789378 761 122072734 41 346657860 495 43398084 16 612178924 100 397367291 435 13513873 682 965296748 669 543158937 300 357139123 397 381081216 567 137956854 956 636566034 36 461086222 977 857151209 568 492401396 756 596184972 713 367918957 108 672798701 252 5120248 684 802800510 682 959344406 897 232903817 84 761640516 516 222434642 814 120682153 264 612616523 931 451171995 31 631159567 420 294782991 889 31728922 634 540133839 850 325270262 326 847035432 652 190280670 389 219615970 923 623172743 212 260028485 849 497253722 265 656669797 764 843649042 682 186429928 581 148324257 576 356812639 769 984910067 265 749686171 53 990555591 800 200459547 319 758839814 225 60121117 17 186210763 872 555482023 384 427301254 189 219788662 110 864852861 528 267397162 237 699199745 282 486880182 943 772662585 961 592385149 253 180814645 929 988693345 273 925313066 752 676982727 566 38760993 359 36436980 675 378651685 983 760554446 405 278966659 19 246251133 558 151043068 891 233554821 683 435263082 322 191233171 384 982633903 544 728620346 745 74581376 934 783619625 841 110002261 522 50348052 493 479456600 675 388487304 485 385609589 306 432771256 237 427126414 921 767832322 476 480096278 863 2583618 588 780414688 24 309629070 811 781333657 347 146110529 172 271762802 345 826135937 841 624376149 358 884305473 919 957402046 890 978651405 982 819534336 637 350761109 955 371835139 889 859908459 649 834132544 91 881076455 589 584970137 895 720071482 174 67780480 961 276748225 79 5857357 869 349511135 15 188466898 361 538728780 921 494157794 751 156394099 877 21690151 129 670513847 212 425450356 106 173551337 881 809754194 965 50486906 739 309499504 718 474814778 774 409196929 129 895772807 886 304503045 509 930546172 344 269606162 555 791629630 413 657260859 857 572813793 694 402767248 974 210977556 246 567992595 943 357575092 266 232687328 535 42858554 798 357904731 214 204507504 41 688293412 17 258810836 333 555907556 743 532073095 843 292940784 551 23482679 605 995145830 55 800753886 425 622489256 82 356547384 528 377870256 490 155340934 671 912387167 630 102862951 608 927575906 448 952310104 499 865580965 362 832382543 84 238813326 675 373882621 989 62973046 702 826501957 728 889101462 738 143302000 932 43392219 224 578332330 445 218043376 455 577113637 937 403272365 846 479392463 577 867543037 983 907512782 512 175183473 305 545267056 9 220493259 959 352580516 433 567792873 748 497688171 780 778019314 299 929495837 805 102751657 381 479039540 474 138894720 130 660304176 181 659323703 278 553711717 922 237176906 496 793256484 952 943872820 949 65934171 882 169396577 81 281770482 325 665449346 595 406277364 79 723775831 699 761985846 322 581962662 324 759075615 261 330603145 661 810580742 598 622894611 520 489555505 188 440612139 824 768734652 524 413992227 587 516143816 894 670413043 336 730001544 161 237206544 715 186006889 716 878283970 839 662255295 267 514493374 596 119689218 280 157503531 486 87018925 400 124137381 923 428160218 852 460080226 180 341155536 200 534868807 142 730438859 892 519851740 701 822516523 305 224931663 200 607377954 771 939010416 506 707350341 450 523790444 3 900275524 465 668230736 908 913397574 708 740062896 478 475635130 314 39502430 946 774765913 780 753549565 571 666623804 872 23934171 753 652558854 802 671027064 645 847817864 164 183545207 42 152125746 99 982565785 839 988880180 872 757927900 437 320513496 615 409315627 351 132893960 221 119872051 251 348665980 168 143655227 820 679237048 16 341280556 295 752564508 247 642681972 872 375590871 261 941397483 512 533109052 320 909474175 526 693879087 796 497162411 623 329425224 104 796293484 767 351994654 897 252646281 493 203306038 483 409878136 228 376974485 494 100967518 593 92003838 632 221787471 700 961094917 735 459526359 270 57060604 807 552536900 298 166368941 450 812179860 250 955723368 890 331658928 407 879972795 948 532932382 173 332564072 927 459694446 68 333824030 423 696461654 680 581635073 731 390760423 324 602780961 426 550068513 969 931812709 696 426993 136 437852713 493 68162416 62 417222593 327 600877651 285 680403270 202 144434197 173 491794148 627 140587342 916 112728830 726 93146133 679 567647982 432 257715767 585 335117379 81 411018731 404 496894374 790 503476782 208 564773178 533 328052589 631 142062364 364 495167100 162 90338909 131 450445506 553 741721713 524 774034152 515 321824233 514 124359752 228 127754113 909 661802087 317 252088159 902 136653822 788 77905739 76 893094205 21 579169387 1 127313351 60 880259655 67 509699171 523 198292113 921 98502204 502 198276125 863 594479626 610 771239995 481 936703759 380 636065383 697 230280908 13 85847510 294 162878493 219 581379286 745 47051554 619 41244330 169 425039598 675 59504117 158 611858361 468 111546424 430 775672978 370 881678456 240 23510999 613 861704938 759 294267893 468 400241682 276 769489737 806 239118197 900 49775869 537 28586732 136 532114522 758 71605545 224 33879871 614 615849217 803 844695117 973 130134941 366 990301100 827 582979776 901 409739334 631 388435179 637 439889922 25 269112077 733 695054372 682 170852790 69 334173954 49 49720471 389 192188406 981 649028564 846 442101779 567 553976377 87 695704928 283 335788052 631 305539856 723 215773024 389 251071495 496 527260681 723 536481369 535 356160651 875 5103507 429 448323963 286 348584031 193 447315847 243 883548810 614 75572832 756 93514763 841 883387824 770 786954595 168 768583974 657 979097724 388 409374121 486 411820764 111 574965564 822 144202993 498 711339085 869 898371001 752 433303428 884 182527147 94 777647408 99 677363937 811 819631512 833 97662855 263 196601575 988 722124727 83 679391439 44 935876888 104 206545096 787 678040473 283 677633285 957 27208741 541 197870133 28 649548070 412 844112916 579 765278491 359 797466443 851 73292500 788 947774961 224 213552929 129 314291505 871 921269554 0 612652742 32 14807656 465 22636693 846 179230653 781 494331375 768 297264533 538 577412776 447 723482211 993 87252112 905 823103226 974 590820439 981 125545978 543 827965875 162 250021521 52 475718542 869 766068285 408 152834470 527 561764277 429 53683631 799 654851892 940 858144337 452 208937406 573 94338278 538 159526753 90 344418919 584 165418686 296 8420852 658 75169376 427 27032701 108 412570355 921 871844648 305 565613589 51 746345657 950 263189342 275 252250499 845 968489605 931 887095505 118 880481016 367 29970920 685 533159202 689 90644696 441 465341920 193 283962297 664 473067381 232 844381809 425 491937343 862 796348309 953 362825103 790 977341089 51 174954161 654 962521350 714 314990289 752 508901506 963 327127530 955 155478097 76 375769346 812 76512557 991 868094546 943 624888346 195 75229122 900 396240067 981 588395847 699 606361686 30 391853832 327 956090215 175 166279341 420 875172630 376 794204280 335 356289868 669 737872279 748 376063729 384 564424166 112 524439845 334 171953737 140 229466380 674 75252095 588 517124319 191 914811316 312 860201230 381 376424133 847 974303250 413 955825837 151 314659104 118 862745541 832 858003361 785 38189781 888 106157803 801 90809358 423 952446119 605 850024153 151 137780049 758 326824029 386 535922784 256 6952581 51 540910340 33 421708891 331 144805855 529 607865754 196 283853690 65 354050933 971 433140233 856 95090121 238 834322116 672 174036580 845 45575281 326 498832106 367 644466243 320 386866172 986 272728344 640 612374060 623 214239504 131 687110668 553 54174156 800 645214638 636 826924266 30 877909106 647 15672013 870 744982 536 121400102 433 369946739 54 815264357 811 226125220 929 37319854 466 32082512 583 258049021 280 706883788 153 786006056 158 282425637 266 667152178 603 276133546 150 185920445 170 229371953 642 851697668 42 261499673 77 792913064 281 694537444 674 871616610 273 29734094 514 637748155 952 384073872 1 476408720 529 848532103 278 786718185 812 291570416 517 86336872 140 622055980 321 345934501 276 510653793 137 658411719 246 237018904 162 403391416 772 437548506 903 464001516 331 278931752 153 204600761 245 974290473 781 476170353 429 323846077 54 677118812 274 100551962 560 618154041 987 320693848 727 340661691 949 362295243 497 722492772 530 692892216 712 762667113 267 845964513 947 361511397 965 365213402 339 843263966 303 365428192 363 625184952 427 994399740 68 583582559 222 897877503 629 744423503 910 254742727 331 92835416 55 368662956 484 646826268 42 455731655 377 599363967 172 904001810 29 913788245 830 766534951 206 754278462 19 400516672 457 689262935 803 421094221 550 385669606 686 874688326 730 951288975 46 678619600 149 309973036 507 906260148 826 965872170 6 990218554 551 130341190 916 411777833 249 654409919 594 979012893 852 781949205 718 408806145 45 935560164 301 936723887 756 732490870 364 175061999 388 277852484 707 373935708 528 948938154 860 758137966 88 814844644 389 590355090 792 426348840 614 643481269 674 393827928 723 909592750 53 874028263 667 538492938 906 439398683 735 325565553 7 760272180 441 660861008 452 124108078 786 854165776 656 386988608 775 411219720 9 763390147 88 538026170 446 220199755 848 762549015 947 991837583 688 919998419 220 839211591 746 168948457 933 229682821 582 924283980 728 798971158 894 484136584 76 862929393 185 776173335 336 52389212 572 462432096 188 996383641 703 843451297 420 743299137 324 898867454 149 676210784 399 126197938 791 973622611 919 25451738 118 622059469 94 46952080 123 929988904 696 307347396 850 958080422 759 721067886 313 917650199 272 208778175 445 884570767 734 218976826 703 346465532 704 988339921 549 831745514 735 300885337 269 545226892 963 802984405 771 742215696 748 861349842 166 813092285 182 89189824 869 879746945 527 607785535 900 914600692 447 569934150 475 24303702 770 802899500 790 706820060 530 792813272 766 75763453 86 757128131 392 14585668 601 531664723 541 906503971 4 305877836 162 382362768 734 558091314 978 248457503 10 310971900 374 91939590 812 230241085 631 711151302 551 532794541 956 671719985 33 395175116 955 544958324 688 819187997 273 499816530 508 47053359 416 287158362 684 383393983 6 732484105 612 770147482 762 542799757 647 369197497 419 887899768 447 136183691 222 84274859 892 60232917 673 93713185 675 691307052 646 396506632 551 382129258 7 376192363 306 107805321 316 270725191 995 460634930 587 319142777 188 47961191 358 95961494 963 879512775 5 408754887 540 762284526 980 177757839 285 717000787 743 664109503 8 814806592 165 322554536 589 660743688 101 419546403 109 458932991 252 542802614 889 61972132 580 981384603 866 182199341 432 197474378 135 316750854 99 544765393 808 108907079 234 191185527 344 78862296 466 423263913 778 439799776 87 49821752 748 321443451 399 550863800 760 575503745 395 36809767 378 469928006 268 840449105 335 193699480 133 802190149 991 667314968 611 398552724 308 134064279 18 568048701 691 692811510 985 399158091 325 166651021 120 528782614 873 175610601 949 707935956 949 79115000 645 595745211 557 463056756 710 628294595 110 172871454 200 195750662 399 124043866 283 436987186 593 850777536 562 812254884 986 481611494 350 817356027 20 58004101 113 512640029 285 561249511 185 302272463 894 537145244 51 465960842 552 766366042 776 134813506 74 796842944 667 166038245 43 987100534 781 772814071 398 363331229 162 644647693 338 118250299 871 555803124 119 269101268 248 368935914 878 787946280 52 824529409 179 5484771 874 990185322 140 277744558 467 934762375 254 679370774 962 437708089 433 646256471 16 27210001 849 920743820 38 792353173 808 291457558 842 839346952 227 735562613 601 925660655 671 820555565 609 203331386 672 59169957 586 418354852 237 657173616 499 782486069 920 742549660 397 299400162 149 331489774 860 506539418 964 857564383 406 818539359 1 407197107 803 518792966 271 393680878 695 338795934 826 914439916 418 678963496 126 857464020 69 886342283 125 92157827 378 4746202 544 553438809 813 664368219 128 836584537 733 405015497 74 842366272 370 446249471 157 305044308 671 15148996 737 638533914 729 725884184 467 180845852 866 792097807 846 102217940 244 430620665 590 909031338 549 121735334 660 704473957 7 160168037 502 654493060 69 155462586 183 474710736 97 663828854 989 141332493 939 842847186 368 343150770 954 99363162 472 65409605 71 462769697 718 61238940 775 828578673 432 889311266 177 189083417 972 891709 388 380071269 34 980825294 445 770351921 455 562311860 564 326620065 867 422693110 276 186004875 767 204934046 299 190579820 590 362523515 379 852588535 432 442435169 486 562649569 287 122759219 558 646723256 443 631776889 569 17574697 635 910080048 870 526152564 923 760396344 416 699230838 67 705134797 765 211973345 214 365010313 347 132909569 77 501381630 720 792111443 640 100951796 517 432558089 459 209988679 621 934332300 326 751976209 312 575754066 743 717458397 813 11927280 193 606447766 850 950454651 113 316563824 294 314894670 698 201262334 631 70675342 360 282753048 638 503559592 721 152666210 50 219440339 848 760822242 512 763139282 743 574900116 715 114098211 64 682392279 308 873363517 505 158828320 142 712434804 679 554761885 267 655100413 548 368408137 734 295227297 979 712584676 463 723051321 415 467052676 662 506612729 372 14710917 915 823512396 300 750317314 341 255184158 525 877461153 777 692843538 72 273690057 443 850400148 596 158838239 827 546080655 869 516127434 865 295707982 710 286752030 106 289025159 229 807374534 410 492210212 295 382041130 236 854257189 179 338741085 800 841609090 632 519024847 352 510839635 296 286589991 387 90329928 480 596922073 760 491002618 55 815071788 435 605301213 937 742576063 349 123645844 703 924392996 49 939793123 253 300820395 128 314512392 324 506130040 949 295010000 742 602774853 962 769069999 927 160292529 751 843874178 977 466685958 112 655133802 193 155706704 519 107472367 876 61001219 878 606217889 618 994166858 984 918941639 950 777303747 830 17336478 56 143663575 352 307386468 866 78423713 77 589603515 576 826572138 904 274597663 647 141756826 310 253828339 435 820475427 983 152737754 516 556643982 988 320699094 534 708667643 221 67511752 484 349690784 540 225475888 578 332669428 893 826710800 55 102734250 95 818265769 525 312203890 923 871068975 810 182948910 735 351081895 566 573596817 948 201836247 46 660165071 291 283962937 119 671533523 998 219421178 787 790637567 382 566964937 382 925598656 47 436102391 814 759839669 593 778216654 422 284416055 735 9428137 202 335224022 902 610647388 953 90395686 744 60213644 918 453241343 789 531560520 409 351101235 730 638352392 712 561406978 803 319141454 792 338316337 474 429263398 550 327824135 596 270727475 177 786825733 686 88673615 827 46357774 332 190925416 769 893516194 129 78537610 241 549327036 619 141572807 549 97160914 97 186760841 661 260489532 354 667501232 783 982016081 654 224365274 281 951029651 87 515133312 491 20983270 531 114951434 809 525974719 762 729996907 691 846576033 123 3825035 482 217127234 779 645874758 191 904091996 660 959926768 634 276240165 478 620933246 475 916619281 26 296571440 798 259906699 307 33110712 855 583353017 978 453431001 919 21078469 447 404056202 243 605289954 784 984747398 648 813439231 7 740514022 343 675129100 549 28002589 781 250978899 7 395754428 141 469454162 948 121521732 805 610283971 565 954526058 446 99125036 813 573091823 152 870512357 158 433295815 357 443305047 21 314090509 911 190148500 342 556803628 122 39598424 371 924051539 945 520877253 423 771781015 928 179181191 49 387385470 977 651062484 973 442381845 477 990138270 724 468531170 382 585365115 507 910292928 177 386183322 241 780949400 447 281836246 77 178428266 422 261265972 654 102311829 155 507268480 693 969590889 259 625084055 349 449142345 409 247298440 489 211097997 300 157565610 572 639220183 609 483011873 160 492295769 738 294152871 1 63148406 77 696830446 482 844946390 480 492607701 501 793189959 698 565532304 92 932589570 363 897111723 364 332891768 220 354459383 870 998436110 303 424075465 398 891468215 789 225790999 315 394017122 797 361711164 82 323496538 659 123514513 521 526599776 398 666803535 37 571911649 929 487403708 798 682074833 361 757616957 136 31447645 520 53714685 633 882095130 75 987854045 633 647996099 185 752971116 59 354676082 222 732033071 189 171096979 294 726009478 329 295359466 835 71095883 534 485116420 388 468217417 805 868914047 926 403370702 853 836006256 759 914363667 636 797247216 57 246793019 376 561810477 410 471192234 283 755760393 503 530986767 748 699470853 713 189811309 79 274450687 130 576775876 230 648482918 55 132764656 680 487155907 451 702214201 21 250471548 46 499591521 189 5039230 77 236646597 827 95432488 445 876674429 785 698530840 759 488003431 173 509319883 678 370439975 56 128916258 174 131281034 712 695558748 681 278026940 184 539645444 777 226191819 644 649822140 901 409608663 641 297868801 110 138736586 73 167455915 390 137603846 599 626629665 628 679344734 150 219362400 714 844337463 627 130159508 833 378601696 287 445259703 132 8769956 533 877159913 973 443922460 672 409050748 524 645291083 784 410204913 365 509380871 538 705521848 15 63728083 827 685614865 66 756464341 258 875361486 248 963312416 652 959368613 931 279250480 54 545576045 738 488636313 801 627770067 63 666046590 38 650275791 899 12268418 242 164940076 883 472929575 15 427342656 290 60265615 212 107410066 477 278625787 60 952677423 226 580095695 51 352673137 132 8057077 100 724292264 643 733937394 81 207545897 924 816065418 93 773310241 514 632780009 686 335134204 637 381975051 319 208034916 309 885978236 476 779688851 924 521428837 105 84717971 311 35569897 82 250396852 247 911200268 577 57508216 210 646197527 528 774500569 826 421480521 519 889234630 552 950876563 580 138235112 354 122717219 3 836723943 993 838368685 300 921451791 584 451622521 490 617790852 901 645428404 810 470785829 928 968771915 716 196730810 117 178612655 941 590748919 606 845287883 813 623717082 42 650991548 901 136531879 672 16841640 693 313299575 307 310885434 136 993240255 206 844712837 948 121257633 543 938653811 22 319150064 539 639814704 580 497444591 159 62270608 888 534642785 653 552629774 609 397031090 777 36507541 143 912096791 874 150150782 869 839607276 556 252791533 338 280348687 285 915817333 40 809844698 833 501025124 881 332081566 954 74934521 86 581758748 461 429292152 84 253665929 203 324762095 734 172322532 751 496685305 535 103547538 958 753776588 197 254615451 807 849822773 235 210009862 784 385614109 58 729362549 676 626872067 808 517597713 63 578999561 810 264933727 693 929585510 34 729094418 181 593982652 575 282701392 898 13123876 215 889416819 138 483042811 754 989444972 53 891412973 792 95521095 450 55273022 531 963656687 977 312034554 759 528271870 261 906570275 853 373918535 343 103157591 689 750237873 835 657413128 319 288636955 599 691584023 137 216151749 536 601874367 751 149364285 37 769141211 567 688988846 478 976158055 642 167075690 934 704356031 493 642914181 36 611304565 283 691959385 166 497295912 364 498496254 970 77624291 568 228198902 402 893555180 533 717961462 379 26487947 608 660301450 713 946633172 356 391821569 725 359880805 619 405228920 648 364249758 956 784341328 20 328494891 303 77800548 846 731236088 797 702731811 583 723924997 916 111059402 520 67824415 213 759399556 911 902703023 637 926047017 911 853053253 348 500791912 36 52215315 644 869590759 282 445881872 671 816962882 231 928820486 262 548643649 59 90951030 13 912112579 610 453037691 181 660718789 88 881879873 625 95239185 409 897622642 877 832775037 368 518893794 478 872593875 928 165313524 660 127696261 664 124861720 744 21057399 186 25034038 767 715357135 230 439954673 808 659488255 392 275270600 922 994031617 117 843071955 119 952241057 979 149162207 538 558698347 354 211033810 433 52302094 274 414195418 797 605973495 359 549061989 702 545364907 248 726646000 64 395136444 915 400667379 634 468295061 873 526099683 30 951857822 180 614099415 121 478877138 616 745174290 466 5791364 170 483714295 318 517996942 130 802666543 301 336119777 323 477265131 704 41224934 747 345727824 720 260126106 79 494604587 863 982512075 89 324701262 435 188321082 98 224859170 797 221781569 613 484190689 240 711813184 20 759137760 50 735649667 861 541852764 182 673220480 977 43537383 570 616346323 139 665572387 421 391352758 640 282789816 579 21394473 188 947128972 807 731359064 671 293341793 525 622794601 784 384151825 522 896233846 866 324827690 286 9315395 890 183890159 192 431251418 554 191458345 887 987517895 291 581311772 566 102700309 640 271835828 335 729594847 252 15535416 83 743901542 720 318750181 270 520805170 794 391718582 102 462221104 245 703735719 10 888805165 917 201502416 111 46036714 268 936986006 576 589600742 370 807875450 692 705226140 833 192966749 441 449454800 715 151644346 947 502515332 401 581919526 407 479151077 962 11219850 683 137445056 878 637609028 596 752379054 912 910414607 405 760018749 708 778053495 577 453573869 40 416451988 735 302590265 390 308827876 680 414840938 166 849875787 543 724767492 158 173331711 730 338014994 282 514832746 396 579845010 849 211592548 310 268108871 967 632951746 38 434568853 969 726378797 480 5318836 351 386848006 491 783951449 350 868422005 632 827725822 167 616359136 677 288723589 525 853419436 989 647659029 273 526671727 426 602623640 667 604317741 91 500601575 3 830284597 10 636142198 360 448240708 913 330621449 429 902309764 321 202968724 717 801575320 967 517470959 650 981404498 12 962968068 902 428661673 597 303444110 657 813440835 125 837746564 960 481091616 990 711848966 966 165887898 881 649109293 259 103001699 17 1941980 876 314987522 110 316625233 653 686132556 932 57693451 776 924789501 231 635519776 899 170934429 562 903027688 547 335194882 163 193538188 305 396104008 195 809006354 363 590681875 606 750955779 298 587905106 121 470613556 106 563662305 626 740492462 121 683039208 167 845470348 816 53005705 159 151177106 717 422857825 185 616770760 30 616863249 204 301395449 986 888313051 804 198329999 196 447478541 619 922245270 662 855593056 559 522622833 521 869922621 433 370675221 406 604661096 76 200372802 834 837719125 342 267162818 716 976468507 715 126146635 678 221086575 9 562883040 177 194030587 30 182217269 749 33648993 482 389555710 418 509305127 890 958680122 464 585828791 913 275255877 761 321502080 951 150221616 400 510457097 506 237719625 25 361016167 640 734532422 296 696428871 936 825077505 258 994720741 830 978448654 461 427070395 228 130843023 57 359241498 375 914298871 303 892041194 32 433661030 536 515094150 270 571396918 747 506433504 957 569453993 415 306685798 194 126206808 419 424869603 980 18863085 448 747745882 101 829245675 880 75601840 907 523668312 635 941157711 429 722676442 893 207399884 851 800091379 838 671286613 446 608288372 960 47658618 528 973344268 771 437185181 297 14523230 947 592047014 747 550014354 690 159201002 441 582635638 729 707232908 941 177692740 569 513255500 772 266386544 572 474464538 700 468192876 422 888364192 997 466213940 432 940236177 852 365026645 235 706941040 664 389770004 475 36284124 60 818119904 771 935502661 65 790641520 194 152054276 289 852835643 685 875706564 292 607070120 545 162198800 922 238077555 533 347316606 947 230040712 964 649815773 732 287636224 766 817629454 988 952089257 263 913789446 970 592698603 950 382867611 646 32384968 97 851763460 443 465849402 472 733639085 906 200119560 780 914323569 943 306456948 773 235714934 117 259822469 89 418824447 14 391412471 48 559788822 452 718477226 50 354741382 792 562333060 765 680471858 828 694157836 445 934730659 218 385891873 951 498075557 534 378682555 519 811028209 86 96774676 988 105177089 645 49892144 875 10373680 480 693198675 666 250871302 342 842422832 682 131645692 969 651427168 182 566538178 664 209149480 633 775377029 119 862963864 563 663836299 557 693201095 325 269478777 638 259150191 606 323229867 639 201667105 413 256355710 358 148365339 963 899452104 574 884241228 906 126368313 979 471088410 445 145460097 899 992584168 985 353671903 742 116995440 174 25590514 299 681805300 654 608322676 108 609709470 719 212368550 450 551730141 987 11215752 485 687871657 228 318907610 239 277921053 696 763110942 229 759500892 5 27153215 754 408782728 837 164493431 996 245610740 176 588828118 394 291757469 545 243484785 54 569072720 279 83870946 781 843995958 900 169805069 964 70738518 905 257510706 195 555630130 873 394141829 656 925448341 527 436111749 484 118436578 409 652917190 233 262453183 716 557652208 18 684020384 324 208851197 229 645438867 447 9979447 226 849796007 567 448570068 63 279148726 711 474255937 293 614807886 109 399164825 379 367413608 877 203767868 152 659028603 62 127642345 571 564977320 384 174969374 82 135902629 650 742083342 401 816161191 349 422258897 52 340186450 434 276900223 294 415266887 320 142357133 482 3854155 257 502440473 500 100539453 924 783464640 68 328427322 891 319397527 562 281278339 212 199634467 259 165532359 38 644504510 324 871256915 748 601966039 469 48400483 49 952509109 377 459450881 922 215022886 49 370840394 555 514291190 650 232455915 265 483800946 651 452682137 880 43268508 867 550160520 386 20090080 382 675781626 421 584390129 688 703288539 481 106333846 455 588775345 406 710649059 643 504286450 840 714041491 425 504235264 374 106548668 932 15757760 575 133150656 899 120494408 229 246729406 224 730618374 844 391424916 333 238949903 264 632350446 877 468680132 30 386127083 931 674266918 748 697894105 430 758788964 783 409106208 170 209830181 215 722834902 270 588731719 871 787140871 470 486190185 493 380265944 730 244114106 82 180624096 84 388195159 167 729959068 107 391066144 344 597207194 409 741850778 949 877920069 822 798191171 243 308010350 539 627986175 914 408865974 936 687250227 263 995640507 497 979742991 76 564596052 569 671778463 196 637058776 724 655285790 868 466297608 638 305141262 63 722553043 811 778819399 53 63233773 510 614629211 425 507278511 891 647469681 456 138030829 802 968909722 497 87836371 483 288172244 397 932121984 297 574565570 315 42357539 128 974492650 253 900483543 895 674526671 585 522043379 509 845636727 657 854578699 77 779488609 560 418073891 397 521688705 872 144650880 20 689718022 410 874217299 821 7864285 3 683118687 629 232344814 784 314471971 292 123628010 202 865822509 347 687791315 559 20900194 161 823358018 902 94826876 593 116701948 18 514152054 939 863437622 29 471611938 621 27291390 320 886203853 198 809356086 280 976037574 190 478683899 510 564708103 900 413702497 279 241599140 144 662758177 125 291070574 264 56947739 745 107646957 683 861396658 462 79196004 452 503921341 875 553848754 706 392337944 232 680609710 224 15147971 610 807101780 444 639094104 497 66963825 829 79320956 102 95142506 870 130404457 578 206272806 799 988405304 994 377996577 323 926238947 301 589529647 987 245914517 950 724560156 403 931047649 860 145905091 908 642937189 582 657839406 825 312331445 632 596692636 904 937301294 623 260992318 681 685751623 45 168603812 75 360547924 603 416405650 462 730392214 498 177948712 256 977536546 847 764971545 788 530744998 999 249748245 988 260600256 143 158984324 588 602839562 328 332993906 112 204635959 595 487003555 948 416873855 356 664962237 860 361878347 987 603900653 929 144806170 164 242312265 775 23497675 0 341192902 180 285625391 441 730740266 322 455970032 902 622068071 518 721585868 60 265360994 635 446742538 105 765542833 694 747398238 8 379136784 22 404664263 1 812876061 651 458703229 770 281332724 325 107767170 930 884483654 178 529056245 47 761387731 68 131534887 840 655282254 148 61201004 963 597073238 748 397513008 596 970669725 457 164322884 385 155950303 663 59358378 995 132947531 6 968352668 476 980083198 221 727463552 922 459475142 421 53506425 657 279823262 992 694312808 360 321193594 474 224568903 110 696423980 530 188064356 965 431190511 824 598585119 718 335039224 841 390952286 751 809453662 644 202034547 542 548992850 855 20513235 498 73188920 419 351374806 92 459153825 963 78567372 895 965947047 130 867326062 602 952037320 764 993464363 72 559351208 150 472633584 991 905672326 175 780305271 229 130041895 202 587810797 330 940675964 579 922831870 699 1143966 966 235189761 716 183929929 516 12162604 348 104861721 763 709976604 588 855528775 4 883598848 31 936907522 461 675162512 702 688312784 880 327981646 67 164290923 77 680517602 443 821487482 906 708776090 605 852645010 569 444349083 585 366886479 633 283278787 158 776679195 241 251321186 533 937446103 238 789560042 206 980433711 412 218160498 320 955866199 187 262036818 235 134803000 2 32220324 30 250077111 417 616453789 355 341682843 351 95584 212 857310778 707 264279970 677 181921641 674 953707149 585 345539667 711 352295750 96 369821177 705 834594444 557 915702080 861 257172934 718 442818862 419 685420458 36 44951851 970 636541261 161 488418897 730 317398929 728 562756961 852 924514316 306 27382725 115 935252299 908 218157415 221 461710902 800 622587924 884 107726812 669 654210207 64 312306662 522 652276188 341 214807809 670 91330608 914 133150306 926 69284783 109 148423577 197 557854398 732 302277733 590 615896101 844 232698331 343 839389902 226 744829734 829 393500502 70 120078261 91 210827755 552 14282495 788 431613005 668 40824860 537 623797817 265 613224648 970 290052257 843 597731916 80 358150552 504 226213451 384 878105116 305 414702916 692 94352932 655 762857914 60 953134217 666 361195398 360 592378355 755 609263696 37 878383742 391 607352982 257 232967279 492 573803844 52 465457738 642 620335795 255 78571210 341 707054641 368 99648758 824 697827946 205 190289465 868 659565447 186 124767716 372 617155934 922 946107413 685 280765655 20 92277538 677 922250805 414 508868755 124 580575549 292 74199423 158 76896350 988 389733478 402 279775005 330 270111602 980 469088444 36 483061325 906 216485543 333 553268181 603 356201409 993 551795709 2 352428564 460 119378918 50 468980250 427 488534530 570 873488651 820 534208016 222 283145800 468 620837449 589 956271358 782 676053913 123 244982771 687 523156778 111 878295980 665 459817858 339 733761778 989 451824506 408 494288136 778 691756652 319 341204808 352 797766327 977 293584649 36 534062658 708 701770194 899 990503099 93 799436631 70 590998876 477 59309728 936 462575366 469 980403261 783 934570019 560 194869949 987 493177449 705 82104001 869 165471645 424 829348650 647 530066332 739 728482283 399 585834402 3 312418867 385 355749732 948 913748356 119 632392272 617 707844391 301 65527977 841 941000083 315 363233607 15 883795479 921 688092729 567 392762007 60 439243095 242 725152290 159 691562503 286 694125800 187 983623237 838 72970802 857 856597892 939 943796361 508 872080444 453 314009960 711 689064074 613 882215234 776 971198496 79 712673240 973 239215900 803 389539915 168 199589403 176 529535393 478 56175764 940 192317099 359 11821790 319 82961269 12 61334877 471 356898292 270 242909956 387 79276765 84 281864176 744 181954111 110 44505665 652 767813018 679 562410725 480 149549299 483 902209161 547 930502000 942 479703615 808 298946229 247 349653913 622 700904425 902 763935303 938 838130222 107 526899618 358 501505288 851 703745144 286 63922202 51 75435238 754 458745434 758 360527275 566 488175611 889 291092799 387 806560066 990 373794979 304 948151598 765 502720992 266 678503330 474 245281824 736 729947538 204 243334177 999 75805222 855 265538318 890 605834412 599 919617387 813 695652855 992 206710851 541 657037497 498 634799521 455 314123607 158 318971967 863 189421689 141 46706149 505 344826428 591 48009445 66 549513593 751 193319950 37 391631718 682 493904282 479 676661261 52 270631168 813 941031895 368 658779816 88 57518151 21 474021489 891 123196037 309 619035580 727 231314791 396 687075698 724 798849866 848 411217752 371 352175186 755 754118781 153 685952041 48 564973037 950 183945875 286 588018016 198 649555480 314 46575881 904 35100618 401 179561590 388 1283049 406 380123581 594 644983134 727 973485914 14 295683771 835 917298415 573 820019457 690 987590583 472 83085874 849 579209428 730 831151060 376 394385687 49 794121513 864 801546840 95 497636823 319 157103216 248 251757383 151 199275372 202 103310876 269 835060517 649 834741223 683 472318258 61 305259886 496 335518789 527 61255335 527 588736571 139 570728777 880 941115576 374 148405592 24 598819955 726 872164756 809 136517165 287 658562909 789 383512010 770 239828210 964 279397112 863 960834428 646 565105583 569 490207331 446 645145377 618 371293595 45 241248596 597 913396941 251 437661054 423 806903554 297 381411956 682 103924548 211 244196460 692 660053026 495 433879077 680 594935910 539 77043700 685 845854889 882 374822902 501 194759466 947 992235482 972 435463732 722 232438091 979 766590079 922 837868179 480 625013515 434 769328964 716 540582839 674 268707410 954 878442805 569 929499432 624 934830499 792 608390244 364 350796530 848 722301143 251 262248550 557 256302208 418 845095766 628 749306786 419 282588379 89 598167235 48 888462132 770 84385744 1000 658673040 411 842410432 705 112766158 26 902215948 549 119327332 609 907591604 489 243813160 951 195060375 362 628267596 671 829788840 833 595535158 415 654675607 786 104750138 2 46082861 637 943359007 695 501782058 771 684856174 392 40758163 440 480095454 507 556312985 572 507108309 532 986499340 886 377499981 743 660778488 337 325602949 62 574962343 593 536267580 109 344866869 217 620733634 625 709183 950 609256436 74 754401703 787 24010251 164 771764689 743 510700608 628 855874755 966 435318323 725 153719935 187 103253347 218 138845784 109 83711479 778 135911334 444 418191328 376 510478820 130 411662901 906 316784717 142 497955191 174 175698166 911 947808754 998 901965964 301 412892481 383 632816027 3 229492120 421 997945730 610 71677086 12 715194809 671 426072222 510 961144660 463 330590440 957 819137239 198 727730215 99 551804409 79 689531699 694 29746000 558 805938836 87 316179009 101 211391305 539 508460991 454 161153620 112 430518105 386 117046940 101 305849716 817 499928291 418 820965980 158 116109015 46 249487431 873 932207530 423 807216647 844 768299831 37 980794616 781 344788331 954 485277844 819 334538423 765 639099661 261 860843233 155 452933689 457 274280834 843 279982172 309 975604723 815 486981864 721 971772577 912 181861552 407 373882079 839 664931485 593 364882840 777 763196644 527 987455925 992 479161583 238 412372630 452 303902368 976 693160677 825 816305791 342 83960932 629 393821141 91 666343637 117 408716488 291 788953120 784 359263718 595 132239611 615 930286171 269 488172152 394 930016479 117 404580792 473 579008735 961 545677624 349 836703321 229 936534205 652 947628911 359 295911137 57 854431681 761 979820423 20 709068708 77 269543952 470 179163689 53 789156025 179 891381372 139 288897647 222 940226013 745 704810274 426 69472738 4 567781494 842 248733451 951 915127620 469 557564828 281 324934785 213 593884179 623 258905677 507 66551357 384 874184596 962 7593544 200 186790308 631 921463727 619 74366775 791 508803402 76 767334927 816 243275044 837 94525236 579 585399452 628 793493316 181 600385273 359 141646294 52 806995117 439 169291912 70 290511562 263 17009803 277 339568712 849 736423574 5 167714022 382 169028315 356 759105358 545 32276222 533 923167181 898 6329605 464 443075553 326 879580086 640 199986768 258 495446808 734 494282522 381 695512540 487 653589649 785 251948670 241 362446951 290 232616180 40 749305203 911 193803259 929 401578744 726 913856441 773 192893851 585 81045778 349 309132274 810 164247593 649 538766421 838 459510976 713 287443035 616 984406234 711 864584163 491 70409356 643 954662684 763 785771772 917 664644089 399 194581635 247 391811019 167 910102303 868 332383209 827 412958921 266 171091384 238 886783656 830 724362396 443 687712013 541 52698567 971 378160482 332 672047552 346 225812935 826 230058587 464 802799467 392 379819742 390 412119883 784 502147806 860 123231813 51 663607951 241 221758899 75 544147838 231 213497596 619 263749748 311 198850390 716 453844238 392 664662692 396 804681997 669 806279660 971 258659197 412 34319737 282 54888960 848 453898457 985 525645714 153 590998639 925 917274277 778 925190882 292 1697049 977 428542747 999 739139464 433 613627349 859 310592586 682 493602228 296 47797560 863 841337239 988 472830755 926 989819862 67 495181097 259 901820259 109 621924836 318 599961696 627 136099903 953 364301049 268 503389099 585 556954100 10 59159075 529 922893891 383 368856199 363 738455128 775 400771822 254 887820380 28 530514076 635 63751053 75 332564070 219 197544987 317 28840243 125 570782158 508 872782529 918 301472992 723 149819190 645 370565422 859 598937820 842 683120724 148 870090520 531 186540344 1000 134104529 309 887991087 430 535921425 154 937378617 201 841258302 634 832690053 361 732636638 932 80886287 446 824416199 826 753800172 71 661342690 436 873583708 834 430895250 375 81184899 164 169040625 33 275241020 340 680166792 52 594649827 413 475695328 774 369128251 629 493463792 397 851255511 223 690648171 393 141099257 655 266720525 586 461759270 767 538433018 824 47752143 458 779341346 844 794653834 276 752245192 990 671868298 97 589471496 679 136216796 330 756708139 692 187877840 30 303809944 777 376742140 740 564305938 470 35382075 608 756109375 345 926004053 233 729181922 842 688673316 290 685654160 844 193121749 551 589080746 694 587050225 532 936581608 249 359539850 754 741816847 996 274849642 901 817366795 858 233689969 546 566556933 595 987012645 365 594614304 810 651467854 208 271250951 866 11059319 733 228852576 102 902603674 786 703898699 973 426379292 948 827978516 888 697729300 611 720927004 970 707363114 832 148517226 499 373635165 620 478806277 517 835396808 350 141853848 686 382973231 321 734779646 726 106635553 25 555546449 267 910937014 468 270787740 508 457753208 673 247901992 23 180705191 983 406600 107 155276764 619 51271901 32 338108501 547 702303577 364 784406383 448 584373566 285 269999300 308 50800321 956 481197821 908 20280612 17 919277866 524 557892715 934 152771756 105 184968483 470 337298508 253 490731536 596 450762739 963 785080594 892 650854583 985 541058236 496 860116789 48 422705028 776 973450666 963 425588475 225 523166988 206 456716555 271 866338319 480 134818178 820 791010961 394 133134233 436 43435249 921 892156039 834 467649459 310 539151189 297 124885842 166 593998835 263 736775349 986 855970971 667 681795956 330 940967087 57 789082449 940 131825717 496 306713264 25 603320856 492 11102883 977 403763617 192 867962719 584 849917881 893 494957799 429 583830734 258 968758407 56 163240717 967 66477998 980 616063382 368 577681606 4 476393057 157 805977261 613 29960235 671 200676685 200 15118417 638 468077180 244 573406726 324 155643913 66 910870685 868 924944839 58 895212323 902 550824333 325 893151104 327 530075644 246 845237228 748 38138891 617 547055046 502 236940381 730 540959607 105 326471505 398 353512640 639 702792583 1000 261031129 621 681340495 147 521473616 373 319040388 260 439774388 463 852175702 139 741543099 528 799153271 419 958632960 641 566151914 554 43014408 848 636338739 756 588050565 822 457580023 875 498680815 266 830659625 168 177920234 155 477248506 175 708647931 779 68111710 109 472272458 414 48414810 237 953676456 383 361167620 740 252067998 854 636731899 93 644280205 417 698512811 612 814430997 875 70006390 261 544148004 567 639389176 675 425545624 451 375742633 676 37872079 573 14999143 589 652140645 479 209083917 653 908347378 141 727975595 572 765192486 443 21047252 127 252495642 314 312946193 133 931181008 542 361262810 824 291113508 981 356871986 841 716670297 388 993109184 740 190760748 370 930027395 350 81770623 920 13024682 402 41063737 630 156459028 408 563845629 435 963546742 446 346487057 243 340927474 970 888355810 76 983083381 195 724467997 510 400494997 390 626784892 334 442018456 725 344565449 644 184890145 669 236866890 311 723255465 967 614983571 324 628702928 641 774250714 740 141714144 513 274138556 997 191745285 226 174872326 438 601237716 297 37381573 313 681769398 469 559763693 237 749306519 977 940232133 570 877509945 636 314040878 592 455113457 34 956876599 255 158534601 466 298821142 881 433171965 660 312422752 209 363000704 869 352363962 872 259281235 943 569645502 444 26907583 116 217360015 36 719541009 485 474536584 341 844174513 428 667072148 803 763601938 267 16623849 204 209927720 38 488061529 454 303614505 947 939456509 699 838523090 776 324575180 460 202362127 994 44112334 888 737833944 688 236031468 633 615222444 166 480714492 956 894214046 286 543173697 749 841676552 207 556283986 0 982503396 219 949240085 280 227273714 707 386826051 146 415638898 962 998769491 307 669115076 759 263253876 39 577585598 549 636409475 191 432719773 316 657653024 832 806930237 100 719634226 92 297375530 990 520090185 847 836991335 241 820544998 754 406641424 63 874832293 631 746108108 996 967400988 354 638748961 980 143887862 431 521953803 812 174111592 939 338964443 616 676117270 786 69306591 221 799660460 228 954748675 436 535285032 391 21519622 564 709854367 636 743194359 766 707150038 200 70127368 228 496865459 714 357502547 368 827552209 701 867667161 252 638053252 304 272234105 115 688986624 699 536486301 880 779573828 612 209819861 903 490873861 750 318146386 463 352230830 227 780147364 254 470938364 942 980416134 406 269522915 386 351000657 789 315000921 56 792965559 225 301786536 941 485630430 530 499694865 370 213078758 580 103410232 57 143145432 912 118324213 468 426624516 692 345958000 363 224527958 150 791658245 416 476310803 605 842677783 760 17964406 92 925737267 602 269621278 510 317891239 986 536735744 252 493776543 747 746399176 59 228361575 447 57790126 23 670603821 747 304052467 673 295443542 389 496626683 334 825580734 612 265668719 778 531505406 738 955538888 781 441720450 698 996300796 418 201072365 122 109618199 774 176575263 256 160120168 178 693709164 101 825398793 878 912114928 943 119381230 858 631614854 229 788610122 94 823173165 82 145708685 405 659075733 16 580907100 99 423872776 140 126062590 142 926232268 624 674993633 850 629101378 921 473706964 34 542072639 998 209219832 402 923431825 74 759644633 141 251344931 5 700745994 310 761270510 367 967965351 377 268556267 514 909890375 584 264135742 152 102266762 883 49999061 859 641943127 59 397058535 75 366476053 828 788078298 971 219573582 351 590469147 791 918794139 667 165153026 920 544417549 633 170195902 817 985370664 433 266605888 218 903185932 541 669450526 743 1583815 293 660847791 658 80063709 537 283875563 654 457249478 612 525014548 165 518769928 508 468456624 947 921388010 489 15486532 69 6833698 726 416958982 582 237739429 711 497309380 863 421570723 556 277468167 408 564986652 69 190026335 432 511944193 115 908428114 871 758010339 463 405007152 237 720296299 382 928954650 545 80281385 306 253663736 500 49892793 584 374676943 355 192110942 977 718119516 597 323090252 706 133650944 555 139203094 94 109722485 77 322948128 4 510254828 308 106277760 11 632744214 85 780329811 768 964993020 350 217536911 18 759202536 150 804741282 926 679750319 58 595506892 320 165756674 688 714503662 342 975879587 35 496340158 69 609396029 153 24599105 826 186090367 781 369495912 470 172151832 691 515242612 859 545476551 754 260813777 160 136042395 168 238758161 301 520642773 927 241099057 196 544948545 402 825071880 939 296900793 506 132409293 713 923510360 584 963669420 886 674094388 979 165794572 892 139414488 162 474852223 423 999024488 636 909692512 553 633430950 990 587742088 723 995892160 685 871032676 754 120955441 230 848079211 774 865825172 579 8082568 305 419772982 30 438381045 442 908783706 190 561971449 506 917395132 455 695381026 150 117755692 967 449029567 584 381037007 703 586168073 996 615655731 866 509273016 42 636814911 42 5010465 819 918853700 998 201092538 360 455523902 534 178071982 828 132634745 19 852472988 922 342983795 105 467238536 129 22698159 590 53397428 194 736301754 519 726952858 8 351104234 913 27529215 894 313305121 405 716128855 170 317408495 866 748303549 147 279711556 516 674654417 350 425133514 568 975577812 911 780034286 681 104591430 335 665186525 409 914568153 804 47723489 209 228573846 710 680146889 22 412583853 198 353867301 104 130772448 911 828021383 449 802090037 663 929518820 400 506737485 267 720276555 442 279262285 430 616173815 323 871890078 679 906648370 120 846735908 977 180697760 419 879909916 516 4698688 180 4825847 748 18939862 208 327269614 976 390693281 346 504700869 675 934270108 354 535301607 90 427538708 373 796720946 679 616250249 727 960240402 435 303528318 340 387309035 535 473003475 788 580616794 884 886742436 161 417946612 778 757888113 631 812398694 908 257454398 38 820731451 648 300062728 996 158600615 530 53654242 993 110054120 266 237894225 73 115536298 970 262711121 717 104132175 874 473784556 876 747620338 444 882922900 538 151020805 574 741586796 118 934407801 589 947690228 129 251295598 1 271475433 396 334554729 782 644595091 326 563359413 658 725093305 74 993767533 782 417365030 343 501788714 794 455540800 8 446435048 332 866527309 646 674373745 225 835138643 727 714253652 41 444305928 840 664613651 807 64444761 125 410726776 942 571675379 595 603025833 14 532482442 903 17944662 553 993476703 952 432900719 954 459107415 104 697471146 928 423019754 71 915190471 626 193838232 637 458854166 383 164294043 267 4621261 314 924330689 764 2292508 625 815208821 289 115592032 557 8140011 514 608652011 542 380630111 799 531316675 983 313644745 513 369214744 467 480921165 239 338193380 482 403405835 394 372667481 384 596001942 73 188883315 16 626092517 617 144703772 687 674163789 584 707027530 94 715771048 573 55152700 71 569459452 405 469489412 909 877990980 553 62051375 888 960800301 232 109516805 129 136568251 362 35779893 745 589133924 413 179310665 68 503133807 614 197959687 311 869628206 828 609588718 87 576194513 474 299329371 369 522469749 749 62998810 422 47137550 210 453707095 433 672292544 798 538089257 91 238546107 356 582655045 185 685055050 978 146139619 357 818362188 363 902022075 889 444189508 501 160437551 329 533314759 492 49109598 95 886883475 632 44038376 63 740955680 70 818677933 32 785733993 177 192590383 70 175143383 257 12639268 635 563998545 56 809738461 137 269542176 446 707566689 992 923529781 351 237908885 671 498756845 418 765278829 833 890317965 545 990697145 195 158029212 735 971222760 829 982847199 627 871938396 246 45806916 476 989187574 620 723752500 134 611611872 137 455887730 646 944209215 865 217172368 980 752798169 626 330260636 497 431821234 961 988974668 487 252926712 99 679801405 28 127355688 328 974354811 375 395445934 483 147250571 561 486149740 748 944749058 791 725253000 267 216299568 636 674371371 572 950169253 915 334009098 18 510442547 754 861938866 909 902285546 504 132824554 100 867904885 150 649976931 208 359173150 16 826212920 231 789516347 73 54994338 660 837409423 286 964453459 568 708058130 870 867526453 797 940614829 153 866512099 612 672687666 727 5560031 787 759703643 146 86243642 187 589864652 691 791039895 165 938756991 299 103202682 524 270083368 874 874865306 68 959352603 403 341121954 89 677112555 442 108827474 170 387606398 923 484793021 112 389029924 445 395651457 840 281678144 553 696519208 471 814453305 399 491497484 37 248386943 387 288973094 290 744157108 596 584509899 38 12899829 583 847670568 855 505868534 273 219697210 831 830823651 510 967958280 658 371419220 820 180436435 220 825875118 86 192239532 206 767877099 587 84887029 410 302195985 294 668942476 399 736427551 936 21538320 944 920541494 804 124506660 401 562802833 864 57879733 705 927731256 716 539076313 796 151451319 566 243568469 107 615984801 548 613294750 170 896805313 637 389081123 966 232150399 380 305470059 63 455289891 834 399314729 435 828953516 958 418744326 543 114018709 362 725939249 114 514604270 880 339398695 135 485650468 104 579374699 835 322746569 791 719770208 799 419983030 488 606566978 621 148112488 809 935692844 39 668733288 964 19664065 499 946119734 520 413070127 530 455002277 693 335546740 857 684145385 516 464914426 237 280189659 394 535250387 890 788037953 513 795860430 382 111432960 142 694413623 414 76139951 537 157643127 286 180790005 226 994150223 323 32034874 869 416731582 269 107421904 942 277217259 49 810064095 889 283294711 293 287152137 480 184817271 960 660872526 702 141145389 144 439404811 66 731702096 244 114457153 618 583413781 800 926904452 485 550242032 852 528376829 505 932592381 384 866260807 373 256805504 770 142222841 925 12289498 737 56420039 683 324769631 664 552229973 905 622148341 482 917796606 144 334201013 47 577977615 531 642657000 817 242773235 936 709905312 805 849731674 494 70902433 694 356445261 912 312696101 870 779494591 89 152071251 95 849915557 550 833550335 529 324984898 61 876704420 849 527489930 617 25456277 150 479589140 934 428737249 764 372250761 135 430946555 467 415132524 426 522480000 881 159790705 350 891702188 284 883289379 647 17043427 136 155181042 121 411979564 21 176970367 987 54135952 495 829160374 330 890963611 555 969236727 8 612039334 387 509836540 39 636892882 641 952428072 495 625282589 260 652294404 791 945296492 930 323247501 413 583887565 350 469566238 4 48600490 101 684827601 65 805817926 854 79674407 788 390990447 566 632979559 135 491048129 414 83590573 579 19729121 270 596938476 872 586957438 296 846044083 280 812102481 159 77047887 728 837966560 346 351633535 182 451095043 909 292380151 217 169176958 662 669033293 502 581550206 757 756190500 504 245218367 978 256189392 293 854213351 410 213628213 739 330575037 890 765061699 277 662825789 638 365991400 154 408363698 807 261805263 548 396667181 843 608708922 42 525446949 770 262145844 345 771401554 765 967448364 946 519181008 419 788916161 603 950778619 519 912390635 862 847663437 194 359760370 436 378024545 148 786588381 614 819593111 725 974828119 584 911144540 442 304545768 552 35955032 976 631365337 800 104535056 969 605690368 337 664073022 276 944559867 690 946627841 109 774491716 629 974392532 460 665979093 588 667272924 930 230054699 360 298580947 211 596375928 50 480047385 352 497183382 839 146703356 195 923457559 725 990227412 266 880372926 438 702709147 747 4685 9 290275742 115 877631661 466 125728123 310 127328563 102 922055745 912 78228741 300 425339193 104 135522262 101 100898532 313 362811700 127 195637745 888 416573546 516 720453393 882 649622009 300 428872017 138 961156139 117 314248351 656 69785846 717 8084349 892 530305654 837 489394431 190 185931276 141 187614992 723 677216704 373 630633175 6 963495503 218 959351404 879 632686509 742 171866142 858 778418851 589 159529159 70 133194869 704 399147527 627 467089114 33 921786049 707 114044469 391 137188046 628 71625417 647 384736766 207 851878508 550 240058983 854 704783585 338 392156029 98 96630894 297 24430670 257 158237852 427 338593154 854 850018273 925 352347817 70 388307882 211 653545551 963 820819377 217 839756087 518 265800591 599 798236326 844 67962781 59 193911723 308 485601509 152 629096385 37 725120850 338 215085711 19 883373635 965 698974668 938 852829870 142 925585127 840 159786601 862 201842888 37 345709413 208 440706360 420 399073249 14 732455395 429 965730921 52 100608416 867 412395061 810 858025012 432 280328583 780 490267850 190 575009482 972 696515054 871 972290144 896 16384249 697 624555634 78 841971933 846 12365640 776 657952512 230 122186154 388 510867488 894 760803860 65 289683444 91 851363066 335 581216744 158 702742584 866 354810801 382 150905281 994 576080214 324 98129126 891 248339370 443 230436845 292 44149946 119 134404804 839 108341260 479 741600377 891 470770387 715 698129593 883 451458822 192 472411887 168 395819817 736 915937492 964 487448493 143 401819836 66 549060973 18 521657785 128 292502608 180 548516063 452 485812929 757 163798356 228 769932577 190 192659156 386 573408064 688 867662997 55 372854841 865 921714481 58 550947848 727 908387509 972 674401663 643 906343762 960 944982045 618 372002055 623 217797485 92 64656285 470 955751025 308 521623796 874 557686084 223 27228521 502 949207841 348 537990361 971 19898082 612 334574788 917 533900511 958 337429668 635 497521356 951 48128655 469 505547782 602 347401646 157 766352712 358 741139499 451 994046469 985 274292932 60 2789794 932 320997146 812 411931388 918 494114414 240 722716695 777 585578882 118 411210566 711 947409301 60 824433435 405 723420812 38 323269241 442 215226921 42 252144625 315 731245167 155 353416304 141 582173738 517 72454517 594 315037885 800 544056226 984 889471392 301 667016093 829 995192690 711 859914958 153 398464931 538 808297787 69 176740525 352 437188038 241 749760506 408 243491669 16 112787400 572 160193405 178 901689689 915 49844027 675 153711312 517 94613653 526 419660817 662 374381586 777 785690207 862 859328453 866 533598021 461 295415320 854 194799815 800 876171393 949 200352023 927 698501386 496 8587686 825 285688467 855 173825479 669 403030999 862 32174332 222 762669078 467 303317975 820 242398305 902 54753566 542 867637761 462 293949480 68 563637159 744 306820795 226 599110279 106 463722293 368 765672599 795 412018251 613 268043383 787 935919334 293 245430349 895 956607056 347 202249412 834 934314870 287 990972322 285 254714744 868 572371552 999 288491081 825 673891477 518 993787398 841 571125787 817 523988473 654 805687018 615 539930754 315 912039862 803 838955763 641 651338867 55 707553852 750 334924480 435 727781072 123 85154660 663 870605150 172 66425019 339 182157220 51 460024037 11 190681120 813 787949075 936 705022802 18 110128495 656 439520576 0 683097378 490 966503183 679 967882295 90 998790244 50 564639864 775 698830496 842 328659950 782 544268536 222 336904271 784 277877577 615 543525847 933 147213072 776 541493793 442 133866338 17 276137193 942 74825034 644 847654116 905 34981385 328 122781932 135 607734223 582 256372651 202 284336775 48 247297627 288 846733344 810 850474907 427 448721279 160 893147139 285 414630339 93 109824465 848 768089233 330 722684615 192 969900504 410 737282509 735 101148995 56 66371894 541 749430167 561 453418380 598 139264583 190 386446018 182 458081276 230 927789464 873 195299313 252 834702405 641 992618747 627 708367672 170 774731868 41 190084698 525 115248077 971 551089219 747 235488202 393 901161923 474 625211680 731 63346097 449 269190189 918 92388894 160 659093176 465 227625576 125 288176984 411 93360206 692 383091542 633 494911586 999 700074130 895 760057375 694 141174978 258 286213119 769 330045209 589 671251391 74 757538035 595 865719763 869 998442124 628 675048818 55 549014597 21 226207601 991 742297962 974 63326755 490 979249455 384 74637810 552 573909522 815 211915045 918 192875303 16 640502759 924 584964826 828 316672549 274 989418579 291 608009551 615 952386579 992 980892095 636 138020106 322 294800582 276 180136324 317 51146573 387 26889617 927 428991517 24 369203581 818 597558210 393 21024943 719 608144024 134 803682346 491 13771559 639 409158085 495 539898980 399 215365294 522 151879762 418 866336456 661 451303116 958 636057074 676 129837123 167 37185328 558 329297345 976 848988281 97 831075654 561 520917087 31 200593744 218 6394591 394 679695915 749 382116468 345 794563416 416 594584330 159 752047117 18 602616335 801 181287774 27 542397867 563 910176237 896 109694662 463 168939281 848 449848415 124 922446000 62 155972454 692 626006649 473 471672085 581 629010920 159 340914386 339 672922228 83 702710014 535 704537734 288 564864134 556 332584759 288 618717635 803 917789902 648 551344782 723 468411596 869 640595818 1 22115259 690 744392886 721 609962555 273 56333201 745 868212326 642 229289767 335 227973499 383 341940550 186 75624675 468 917469011 323 836100572 727 764969974 904 10500230 875 704451052 564 371295353 39 232431122 580 249023897 335 473291850 467 377837822 879 198706386 15 574323958 448 856520471 743 323577556 643 61893054 72 602757442 155 595530858 947 475420678 483 584477572 197 428546966 504 270381521 20 434527701 993 87774376 711 904254413 869 706094746 771 350992981 264 568605096 219 522048300 514 465425503 155 902260637 733 387887859 365 127679383 881 613176605 16 105775712 514 211703313 373 793735574 927 608546889 496 936757175 136 959743205 989 332670275 402 584111966 39 571221824 660 476627115 495 328277961 684 185269171 744 130241313 836 636143520 187 71828162 490 300345316 382 58325343 78 117904375 496 810014402 678 22064999 641 264880986 84 492112797 630 261012526 986 611209208 317 430806704 775 803865842 56 756227673 716 971567802 946 245354388 99 246281352 955 821731678 414 641145704 504 2226173 302 1112575 756 688636302 356 853171255 668 388435843 278 308335917 113 238104877 337 911620377 888 855817567 649 861918867 514 458386791 421 126802949 769 142965336 816 377878939 970 773777562 141 275095373 904 16938200 288 730624317 383 784303641 95 122242165 617 323162323 990 559907423 677 13601467 684 249524782 936 27314170 127 781560771 554 238151847 200 801838686 49 367940350 185 514116601 436 439277328 171 426252206 437 244248204 415 372620596 56 261366397 474 926324317 920 978757025 35 224395506 388 448934244 140 424742789 458 470585866 406 123446439 38 675367694 511 235113981 924 789708645 491 244404470 743 372970486 339 164655334 569 937864986 316 269298491 666 857824027 671 23203448 316 756173501 456 818235992 847 80538348 245 631746440 896 664425017 707 835487349 734 95799633 224 51721245 163 495833044 631 348520224 64 337952573 370 455701838 332 114116642 157 893358627 875 866376599 288 706218325 25 482332890 748 243448171 687 151497733 80 216509177 789 295890207 687 685607832 680 796037022 114 709162394 760 198454660 340 568417693 218 508857580 444 670228911 753 500895213 413 365258680 969 701993935 611 573859395 321 987943969 820 125694308 193 628854756 353 310112112 87 402571251 247 74942783 498 109635987 220 193962611 172 831898554 722 366296222 830 818500013 911 952680250 304 692369328 38 75930526 566 992987968 364 146379200 475 256342713 770 108792057 631 785657799 19 419126241 427 209139849 133 82888165 167 757810723 237 273669242 787 468023407 898 434259907 772 243418841 195 843482295 187 709191402 320 981401200 353 442415871 303 569759800 749 817453645 763 129260298 757 79744563 29 383173743 169 659435587 852 871967895 822 129463438 846 97778166 117 290522107 28 166642765 193 987593431 917 553661524 293 326796361 329 434385220 677 803022541 621 642921046 843 669568782 686 285920397 910 330627045 142 483851478 317 480321789 230 275681019 246 518572124 765 771475796 728 800929969 500 438795960 303 875508872 429 734697487 902 585051321 94 876932097 433 340925518 111 209762456 129 997084391 644 797139256 28 547526461 197 308817060 401 503991429 927 143245793 461 417672182 738 503631995 899 863246197 256 109268013 353 582476640 652 866053015 953 314812831 864 475798234 779 679203709 387 849104516 895 681210205 338 523038036 359 656229908 68 296487850 471 56495046 972 113318546 700 984542531 10 379607171 215 237784472 401 286335937 966 59249887 491 210896588 523 59740038 196 480871533 315 812485496 480 465450736 629 88860385 523 330386234 256 31349691 570 440920795 974 288299638 886 980332615 282 738349059 223 340112071 885 613431557 335 332476113 739 1088046 974 461130927 598 918077209 777 99821151 567 903183192 943 270187496 521 976817862 622 29749287 709 742653940 770 634877917 725 649245167 24 18537036 843 461953225 854 163221861 304 975309686 870 703932522 14 493698085 161 352924843 381 276528748 416 258001833 49 534893909 574 838470595 798 863604870 851 423009246 579 898613373 185 78092245 458 281785421 821 353504843 218 463166383 126 753677947 151 185095731 919 927507852 281 353279027 151 861192716 288 784366948 793 157336237 933 694107749 853 743896498 431 26473539 790 173621321 541 11096467 468 748214806 4 615981334 475 737666320 340 574377211 989 929099184 642 256475985 891 689947561 729 597668215 370 11582625 251 161282839 695 58102773 401 113386400 396 337569281 554 552035817 598 693392156 977 731788369 284 885707500 635 283314602 176 662679984 153 167193967 521 11020886 34 798606336 942 244479842 735 552114648 826 908971740 657 210486945 156 588416715 383 996631347 999 58866054 177 17872659 847 410887739 708 386973688 658 81230926 705 44039312 515 116150320 294 962456872 825 49368428 378 624168272 938 302624571 14 11484289 419 182278818 4 559485898 35 997476333 820 2163344 442 169493762 774 801809025 566 73834576 839 930260734 366 304107652 429 462641707 241 794079405 989 37749782 765 285304482 165 505300170 374 349100967 793 930194855 155 688552731 739 473749580 732 127953988 55 619692261 838 344253719 325 708332010 955 758712830 592 716778300 744 902175966 619 76015455 226 235959076 985 295257910 430 56730581 64 474813371 72 153190468 904 946223526 886 330506827 478 68557965 398 674151343 280 474667821 777 552895258 515 908245934 980 52911013 232 971423142 201 539514217 117 755739411 513 208006188 357 31888198 256 155844082 311 502335081 234 334375039 633 117797151 328 279156922 981 816217051 41 328360109 338 598551505 781 606466498 932 135741285 549 606035258 124 929309948 547 410898911 0 465151495 39 720969261 294 988312243 454 305890378 865 526838612 440 875241955 268 540297575 463 680081877 740 765011122 349 455217401 386 466497793 283 446447968 298 681486512 840 11913087 383 310750180 962 266070031 315 871676845 105 609766786 148 711784636 454 801675076 729 763677999 771 533328519 608 112835462 328 39510992 472 957348696 705 895351323 540 485282988 854 895206383 490 331650717 338 709861512 816 310640747 479 178789255 637 900077625 224 268174869 41 143619122 689 742454068 8 92999343 903 671623145 779 683151392 867 98552965 374 530965132 125 486668632 682 726841342 210 579653593 263 608103444 130 648837305 887 411596904 613 631202176 931 826884140 154 833301322 216 418053302 427 615985026 718 545673228 772 109032424 707 303357373 787 423188860 341 903399574 388 651846262 80 856824574 409 34019684 180 509615719 583 489529326 641 418989663 546 992718986 873 87876525 734 234863805 776 252070913 201 940516281 949 325574331 259 97044015 273 280376577 770 915729768 842 751975448 521 1470660 473 384196872 829 806104978 357 573304541 975 641014584 505 941429712 380 195474593 904 843429835 620 187895876 783 94288239 307 564642776 97 967245886 908 481226563 42 409849486 331 57869546 399 951924085 189 790225343 367 143154748 855 381835619 334 328113268 166 241068623 361 627329962 448 192738697 993 652549942 842 207773800 90 613326013 696 230845800 745 497903316 705 16858363 736 408412718 625 77388514 823 677618739 499 675679248 265 818684128 158 23725491 379 385555955 699 504697364 507 605525672 529 26705316 489 521190939 900 996187812 338 205350282 824 745809220 877 386569790 208 932734306 789 789258926 979 534772436 342 209300104 761 137055191 531 769485516 463 209210213 911 409744185 11 385234302 510 798763774 200 954996571 12 471119766 547 168128843 592 907187 496 139913313 385 536401718 481 329403794 777 872023002 756 887134369 466 885044530 274 981365562 953 204690942 722 696504673 375 533405900 670 717240087 119 663547150 939 70285007 301 294736929 605 514637739 219 944965212 465 898643513 273 383522343 608 225214869 793 568540786 165 503133117 207 826346847 272 361721399 121 657410952 321 485133489 975 861485478 964 653931365 293 769115587 955 457158512 179 992898025 745 909042545 902 62306467 425 562859233 796 484309465 825 840344559 157 320832680 925 711181632 607 683827037 810 542523351 337 886966310 264 854750168 418 483064956 901 460624725 858 180162643 501 575496686 583 209248372 531 941954750 935 276525027 252 171570392 392 490724237 485 805978621 599 361271541 978 890936889 152 195196814 940 483186557 635 798129838 265 257448976 383 727034035 46 597345468 244 803285022 8 713491412 925 627662972 943 938581174 393 922101556 410 705595171 69 454960749 355 232549169 294 542372962 861 436130749 778 220189625 74 571898896 830 172762670 544 624206571 218 163507522 226 724667137 580 117159824 351 582322715 196 677409634 114 191063745 309 655827316 455 867970891 980 922135035 117 414734474 4 498679138 942 298573232 822 808859560 214 267860548 751 520001649 342 825283718 844 301188381 248 891977429 457 948414262 430 353099726 583 18125051 643 367887169 808 530412276 422 273987338 961 816172959 502 129590741 765 1341950 470 988514281 601 993597987 180 75608694 598 152046731 395 297907266 922 598862523 123 207275398 549 183924577 924 340450543 417 965833754 240 546106357 515 638566534 876 322663060 627 839661766 147 919859701 23 593680647 359 422271398 286 896447228 111 481363186 592 898486174 763 182648513 906 666184647 666 724312767 71 456795691 283 325329302 837 102353299 223 884340895 571 475827284 105 505832833 399 312525328 108 439658577 359 525358479 668 443391499 427 49715759 184 768088816 1 318581254 118 604124188 410 579046985 692 620791618 792 448627678 592 869178664 462 791626437 619 167879074 496 780625185 161 111203165 886 767888294 419 264162659 199 435202542 759 134645322 251 703455276 957 592873514 522 783352441 911 377865749 162 439897936 317 803695375 85 253405987 869 571360126 700 756675415 253 303396852 937 697138046 17 771806784 895 531512397 104 907084000 692 70187727 246 579704748 256 896663948 464 27975525 53 596234279 3 408201460 828 962007513 494 559965824 314 699442653 604 718815608 730 617293726 868 74473225 978 639096501 935 833344276 755 605811179 596 258831199 359 473089718 629 180971925 398 182404139 925 653865662 922 1336064 512 163441790 278 669726844 54 238202855 108 194029883 7 958711039 860 569630724 84 149117578 736 520672911 397 649058252 463 249181050 578 660810533 826 32226500 128 94396976 82 990730236 533 38074437 20 978848332 893 275594601 525 840000890 882 655360422 857 909368488 540 362288231 468 231910261 397 852431553 631 577641859 3 554580081 205 167706296 383 528714579 274 178502826 424 732953072 974 704863493 185 775070117 442 607992173 318 966126309 164 638990574 397 729843669 443 462423850 812 531389149 853 804318014 260 155420853 37 330581073 840 414091152 586 737009196 757 559362929 998 896999046 611 732330707 355 823694526 462 311721828 654 519291780 93 319878452 169 350683861 853 115074141 144 598475591 376 502696036 808 514106774 345 626904438 116 751542215 329 422345817 65 790944817 651 768765092 879 205691854 804 335418822 783 27163654 542 408018219 316 131753229 28 670502957 699 912815393 142 506889203 67 493141538 882 462314632 32 643793455 975 916181810 237 831849243 794 118678018 626 650665758 410 882912307 917 424741817 744 832303166 148 353828606 543 57142629 370 745884356 48 104811923 258 904018150 295 387363913 142 367944619 295 473608611 402 761392008 956 778011413 120 41330225 268 882648561 59 31191218 27 768012329 249 75015813 805 815715863 464 630291318 838 68675023 445 165370035 143 874540342 783 661868950 963 477801690 437 68257624 860 622520605 903 121537227 931 877367344 178 716977844 976 840814164 358 10371154 545 878972663 614 865374439 234 345825330 378 99847118 855 106890568 497 273277000 234 821736359 398 598503141 19 624445256 23 373268929 43 773960918 61 751728403 44 504213732 111 675235641 370 123551620 102 649056705 833 765924980 869 217522754 3 354926904 817 497363888 101 964103358 647 122647865 132 423929497 46 175751089 379 845464668 164 239279515 985 185615362 769 118904034 527 348419345 585 481380186 455 397764343 206 65540614 15 374299875 888 824644464 280 309631868 433 330017395 479 665868269 449 802120557 885 558364396 670 51416078 449 766197920 381 429336795 22 807209457 754 878051118 162 680658475 508 445859282 622 516312586 177 155964979 61 467848646 229 889154294 831 147243348 344 699389253 481 65755272 813 371184754 637 854715789 349 786202283 159 489348988 856 936564275 903 916881570 141 394506155 530 967519159 681 984977300 35 449747716 832 942825898 85 169719682 989 233830538 122 876150948 218 907560499 681 689989605 960 937395273 375 504207303 216 221900217 103 83507807 393 45309412 987 113407084 978 959115480 947 531957349 319 691967945 503 624225465 232 427499479 380 719954525 901 660336792 916 80585322 639 115380430 188 599914000 410 7066160 844 617917165 219 845671518 41 157579437 594 683132080 747 211473805 424 595303713 968 555214991 728 934580618 329 562247602 411 998755115 830 684182870 704 336897973 629 112126599 643 39566179 470 426099705 537 379381177 898 611127358 101 605200778 118 421365948 230 760055417 550 572123889 290 612786542 969 60867904 87 109108360 278 340056442 643 193810613 906 132118222 590 632713552 787 89010547 732 509197462 507 834346206 643 371551417 720 497154703 131 536229082 518 52833183 256 114726943 451 766677624 958 131100058 780 36929419 807 967283749 751 220539995 256 280606234 716 192048062 996 866042219 495 128425847 754 685244641 171 739801519 289 770566556 406 615349958 124 177254580 775 679358884 138 83903515 84 236683808 118 557673190 267 547928912 978 303743197 362 297528812 293 538922467 981 926735980 617 889684779 51 366263175 473 176456434 887 585500228 13 100343193 59 397799376 269 920427587 649 459321779 632 224567959 996 707842076 521 450990353 61 31330716 798 215547292 170 460344041 870 259109322 563 497885574 975 657160133 755 937044458 212 102978198 141 396957006 127 950919005 810 515117383 368 708410103 468 146296868 409 700367280 462 672011299 418 921618957 258 629885903 604 997902099 506 956828003 648 204704941 85 569231248 597 275245209 96 536193113 467 300482246 547 2473731 414 930413149 123 155771505 910 747161211 329 49338541 958 156191658 488 960901204 804 622696142 726 358214974 531 163215937 209 990602413 671 572443891 120 682382896 655 377114886 598 886223168 730 249819534 627 852368763 669 18745956 611 596346714 644 349795728 554 691573369 130 93531939 653 674146193 375 692617207 815 584609426 827 66092983 137 379593691 578 853163960 112 31702687 949 684279744 579 774410514 101 50774066 41 464798174 401 101475804 378 172168453 956 573820194 766 483996902 390 786650545 684 77033330 293 36795648 310 401165185 722 467510647 833 5429237 212 324412774 800 470948431 120 742240332 182 591014591 946 700391768 760 462196687 81 322365072 319 645007307 456 693113438 542 242634374 596 502002112 102 564437783 985 191080084 21 100153447 953 35379510 799 296416209 864 902725375 702 165381474 347 124274655 489 501680367 892 459792485 87 85761528 888 148173611 672 686177722 736 32956174 877 9907677 242 49230647 469 993468798 976 943266836 259 429310509 585 746886337 82 736674022 667 273749023 663 94158301 646 484887261 746 981676210 161 697984547 129 549012901 339 324985408 941 991000602 257 178167476 569 423440264 716 790511978 42 964511004 274 345765547 351 634422387 407 803888050 617 289541203 741 19718564 684 301962708 173 197337748 812 665999014 376 128852459 112 243072762 200 19474650 362 774931150 875 946115426 331 399795103 312 130386072 250 562262382 413 147058248 258 32648872 83 39253123 409 234845600 204 966159853 258 122710973 68 250799024 688 717657735 926 614774665 128 248447808 789 98623520 70 717032982 860 652487233 966 621619047 924 951014726 610 552421583 165 358298986 860 209168241 148 164120576 360 615412723 544 618985187 507 820567660 49 720450734 286 942422215 695 88014733 557 955341187 714 623684388 523 459242473 380 403800300 214 552275142 156 871778319 918 596899204 815 189604240 380 308154178 197 41675987 631 159732999 648 372647713 530 39239739 338 305687690 257 457627643 402 29015097 522 159384192 709 912498523 885 538668173 473 540023703 441 463654524 636 435174938 8 372953878 835 257014028 135 628985692 787 777363636 755 558686889 902 819737340 559 800656908 776 179580685 806 76918164 617 378966410 554 397649332 554 769850022 644 508925857 48 935853525 438 66121651 777 585257101 554 521044762 763 685287434 763 405822390 312 11805886 393 276129794 28 686478522 30 456431030 724 222258282 874 566208687 715 454786350 102 6556959 956 647184688 448 284343601 612 97043286 412 25051450 932 498474603 790 156350930 558 792238513 510 19698895 275 889573235 55 587710667 591 556671832 554 565777830 339 668306555 563 871581526 297 776439646 926 884281664 109 712924096 951 62194538 658 567306481 313 773858208 619 702537276 46 429875943 831 341605263 450 850717815 850 268889368 414 954254338 39 464410448 113 92653805 856 680521166 58 204835835 193 21625157 233 561278375 55 160624094 521 800331177 525 725306047 47 543546376 382 525775165 937 966966300 628 475648286 715 925894281 924 904178892 994 883422831 400 744140949 858 436458702 290 928336413 615 678399202 15 492238269 415 10188418 970 479282798 996 427388729 156 552225730 97 195392270 715 887990438 97 812568312 780 342186054 156 398921357 565 871831361 448 280543866 726 727267343 295 866190984 472 586999585 451 71337681 266 636039277 575 231493007 179 565793340 985 223861257 481 934753421 830 142877464 407 188154352 720 298469521 743 819426947 792 191077984 149 738966687 572 755941757 517 590586041 412 229086443 988 186463202 576 19151129 860 227510152 723 8672206 97 369859366 972 777094591 585 615444561 845 14444058 759 286965735 115 8678980 316 207983144 291 488012083 616 383064969 368 94200681 592 311794801 489 621773791 159 225625019 459 314867374 634 195605341 661 787155455 888 619463396 130 474926421 472 328844652 511 257471264 584 250497987 460 459327839 141 605391121 331 954485391 787 808096468 421 897362 157 442401748 549 316365530 885 52106380 447 626242920 293 598007972 428 349854462 185 69964042 649 643920666 914 852965050 580 597246549 878 42916395 711 318523714 831 295997818 388 902350774 837 213779800 588 570885282 333 896126829 824 642206973 849 170177224 606 638800407 928 249998050 603 904779859 972 963867426 792 544757185 564 704626052 131 450639484 561 98777038 460 29266623 77 17775951 600 977452711 521 453641572 445 31293283 107 909504683 157 288555346 964 101831688 607 623956751 912 624946140 901 996354107 201 56568850 508 324124364 311 557854228 969 348310663 863 19405334 7 31773738 744 526953821 333 55305155 649 847201397 940 322921981 165 330435841 899 193812167 635 329371729 673 968927729 182 755953592 579 344809507 263 806434470 588 212938142 635 176494446 889 25873595 757 963396364 168 620913048 106 420382409 250 305304678 29 719134941 316 92249861 76 163725695 648 525796171 832 486635505 554 655797508 855 288085515 753 439149724 991 228510539 544 779825139 150 424777971 40 365648509 18 787603805 410 1720935 510 923261218 393 65939497 195 920551767 433 418889262 779 634776146 306 311917739 710 351357382 447 351336651 220 630474129 748 755415235 109 618937658 346 379211222 254 201094463 145 130101318 163 468824275 342 198283288 884 6948965 765 760734402 215 790045765 799 679128975 408 157448499 125 114005137 305 728699254 266 885466343 611 802721398 158 421793874 289 734319273 647 963055542 424 222530526 579 396818487 104 835481707 156 516940115 351 640403018 746 399214279 870 517136072 470 990776624 94 621252251 759 199224153 722 370383716 689 400948002 718 729977900 18 32267718 164 988610811 175 177704174 184 932080239 619 464061773 437 905834080 465 945700191 684 162635636 595 151969156 260 130683684 515 550562043 603 262093565 442 905816822 369 42787652 579 409831256 571 24480275 467 845053056 452 907620352 355 694396552 295 457541470 536 751943555 237 819420508 899 76146763 881 764314764 917 395264400 749 137317717 416 441019973 976 166028509 475 910172542 392 530615713 474 644768488 78 816692139 602 395319218 751 204846849 103 35536023 745 562261744 259 675909639 901 652394674 593 861636652 459 511847577 651 831880625 409 20825776 16 716891168 81 393955474 766 521473136 73 182155057 816 710620640 433 628990710 88 514366170 809 137995068 702 970319438 387 842769358 255 765839198 17 640817967 602 601311079 395 434064496 768 839329181 296 581649463 467 534548494 999 249971521 823 893987444 994 450139832 308 149009814 745 944621224 828 509238370 180 934540298 54 316724617 262 540029137 551 478734292 821 48774335 182 581958358 723 710730559 949 462014921 583 527370298 360 365299795 945 76364240 775 475420006 144 405403923 864 277667930 678 399802148 652 405661314 890 353570543 680 459269655 962 973907413 786 198857167 67 74837641 588 575856710 441 159683737 389 674892787 631 711723876 106 347454181 973 585001795 227 898749509 772 666050370 314 452547924 704 590524965 0 459147729 474 359932305 459 358031172 819 466814587 438 992529292 148 904404622 605 370013290 938 72449030 949 238254586 859 980503335 15 687760112 558 427514119 301 872510244 713 177033034 603 220892922 413 778314774 361 989081450 823 722397157 278 714160749 211 151431729 908 697651827 526 329531242 609 889717894 563 551921210 602 90013280 533 522613629 297 195668419 364 954508451 164 107947637 86 27924530 593 744118275 972 970865868 24 584424677 917 495082827 774 718719347 92 278310343 129 946248210 971 131107859 404 192062987 296 437618281 493 693556744 248 119487011 431 909436297 307 282684061 451 830601770 564 598206336 567 569908548 91 430351893 539 168514483 867 457713417 96 161235955 758 162913399 203 671189098 820 529153582 902 254882207 706 258794513 631 998208527 687 524129559 517 388560898 110 104576384 13 497419048 120 243894476 400 626478989 137 659759966 512 683805876 393 650620097 354 976877880 548 120135583 497 172580838 92 721043737 67 488719933 402 939187456 327 826067910 984 70353969 368 330236769 334 721425454 65 329656594 117 462864820 186 741230655 547 473816744 279 885084185 33 322094437 163 305677409 774 821310083 986 43592631 543 837704451 689 87121323 480 62063574 727 113209905 888 855552649 676 678183085 232 910155824 532 684906984 105 541808626 105 87373341 33 33566324 470 535743452 367 225682823 837 53204127 198 736005414 558 680327019 928 491929140 241 571425226 178 243440746 116 708858013 573 326101941 425 942974923 650 840048951 177 758414893 369 206321879 311 826843282 242 404418683 73 673422693 955 112906017 624 484512359 75 625850152 824 321272687 550 958281390 50 329262725 196 79147478 972 855339535 14 753998118 311 823049044 271 307111752 636 489542184 94 446374270 684 862513654 859 122597579 145 473126332 556 72501070 807 392719853 766 70496586 186 2748190 309 185255574 276 327959493 755 449092733 88 48895403 464 108966525 219 722945817 104 1836724 693 923930050 145 816926494 286 456956610 638 673497364 809 967004081 295 576972739 589 505238142 483 796076200 592 317474174 544 908557993 188 315184867 324 240529229 4 282400980 390 687129689 248 485360368 14 441678971 851 538271166 127 900905852 82 969040452 928 522173897 245 129735333 963 473127065 773 668286987 918 174341067 998 406170772 963 577801403 468 491299714 145 700728710 1 573926460 850 823141038 735 385013097 307 578079950 335 501798122 662 732116289 556 747572142 620 717758823 314 305739523 885 908364222 362 972244867 432 196910922 347 881796596 172 139172958 404 147983393 612 501078561 867 736346934 402 613242867 846 267557206 856 788054016 676 969774403 602 896689817 160 814376576 430 165433605 936 238964173 777 766363428 902 187662638 673 832612717 771 864334470 772 895418635 131 113113251 839 215673202 771 158867885 587 250543891 332 859828643 841 166346731 236 383655287 931 262536703 250 194319962 358 101831455 323 118520966 314 444635210 344 45623676 771 494720023 474 972017768 855 271249812 90 542860364 749 571665708 946 90647992 488 373089672 264 956272100 226 997799194 642 410269709 654 759096911 596 926471945 577 565531119 289 300998 133 714657322 197 731128543 668 380479563 997 181691476 175 557960846 264 249178646 261 189417757 819 368037536 772 405172568 711 576412233 791 733036387 479 681955746 579 390958473 824 188729796 350 996902072 291 958986700 339 619942669 238 742921395 203 448521499 663 546246352 145 201644522 13 813320041 18 689313815 454 364645298 94 351891871 299 71733473 566 534578198 971 211252386 594 589389627 561 452001312 601 148316136 182 207496449 595 312197727 983 216021755 905 877201022 162 126857285 261 929728288 534 603260458 865 212631191 509 181710917 611 517602189 397 678410294 242 808365274 433 322842331 376 763829579 731 840642089 815 132177122 471 286496828 833 439981402 40 948258443 665 465079827 280 981917429 106 956966033 546 278527886 121 89143152 21 537974689 39 442961021 215 856845494 146 836944971 349 123550764 373 427031852 608 437008321 415 263461934 796 508863674 457 936783690 85 382901592 3 116914041 170 929376898 65 923427076 657 885372648 438 728755683 747 355476297 444 509101284 461 296648280 166 534949136 426 620924322 55 23177897 45 844703615 444 408298131 434 306787715 738 565797271 982 699098076 368 392617135 330 499653861 365 321650967 836 701619775 901 215998079 936 394595779 928 482836876 742 121869088 333 84815283 759 123805306 5 828592604 469 938838469 130 500996204 848 928991302 281 422867482 116 245890129 210 183375051 803 349844129 118 49356906 515 439191705 196 265726966 813 680114603 658 442231586 986 872960950 481 188192954 691 348994920 801 368404787 371 973198761 866 280612536 412 944929327 440 337224405 906 941151188 413 553772379 239 453403146 769 419754590 620 888646746 172 218219386 204 573092121 233 269193659 321 164170897 660 326018878 494 480067575 728 806352459 780 230376697 214 678562875 50 108205609 317 220478953 749 993822249 988 309426063 460 526540620 515 604054103 824 831450623 810 902554589 333 552153712 670 281220553 584 976444448 664 159320563 201 720654952 123 322244528 285 722079183 366 513399034 286 547144813 820 130830108 265 61143247 459 176387848 342 91159582 46 99182063 568 134272131 745 162282811 504 920369692 599 968951600 997 60142927 92 743772709 870 974594699 883 87926957 132 639653479 9 625094321 139 429670790 197 211243269 920 373028337 924 372415740 897 487271334 230 148090691 889 381150903 380 679677384 483 245192819 470 211538978 147 980468155 214 548422029 242 198582182 181 275558307 197 991164864 116 443779570 685 334017030 341 463115551 796 660817233 655 114888249 381 87469583 445 279974445 171 425512603 416 351735646 640 444552905 9 474217828 700 822785032 818 708108286 247 64679061 382 908117720 663 721174055 224 560160291 652 431820308 176 274776697 330 806345241 839 334672820 571 692328101 907 199267001 523 342385060 419 983070382 613 276131089 419 483206983 146 595604423 331 261127764 178 989589522 740 263783973 108 460971222 744 938027114 475 158770550 349 448761420 976 979021883 595 199595712 216 981137998 614 354924657 873 23503747 777 547830167 951 820952797 185 240099602 690 818223385 80 851665050 464 512303792 665 947166480 572 676490281 208 369591688 178 384841908 978 630254522 765 689331968 197 773936912 203 297368852 511 805431036 93 670876626 606 414562778 167 40953427 398 612731614 866 152799156 186 830016282 825 384191442 101 315813276 578 142954333 125 82312319 124 856357238 731 391396315 244 352504351 948 225004120 644 214038362 84 734620758 897 539967338 270 318129517 368 824865762 95 874005326 906 538025286 988 565589080 31 450832455 231 455860433 1000 422787728 490 804530966 751 430157052 299 792535515 28 318467080 668 390462381 102 593861702 585 656502319 866 445878875 780 644760595 580 452375630 512 730977528 364 957905899 169 765154785 300 511887504 619 344475510 61 190668997 717 716646737 347 861871582 255 8944116 279 62989243 397 181659606 911 942587925 509 183259937 967 423217818 446 512459591 255 905206936 368 483779556 875 735213071 835 940559833 753 121576048 659 154024368 472 451685376 98 617106274 702 161105808 303 111781369 874 292808231 994 74851097 180 75299402 428 598261488 179 943421436 327 203627301 212 33021886 9 113858270 31 303868176 201 210264111 586 462547617 215 545353057 644 993773760 244 883750934 55 442104144 662 956642997 164 220434194 393 285288705 958 572344912 947 253769566 967 832265846 371 228960675 865 233540268 453 747306933 437 60862446 486 758440055 124 111023292 849 191438558 435 472278020 729 859179889 868 708895860 55 362846155 266 532847564 657 343017181 198 99252390 541 734058982 236 975079017 119 155110403 426 727277878 593 715543830 998 160494246 158 429606626 42 748444755 913 31510301 770 432283549 218 633375463 87 887572443 296 956860593 125 304317380 794 364943654 609 204523957 699 275558463 36 110347696 695 696711707 96 529803930 265 950234406 903 779553207 46 89857078 265 374097828 460 674199643 169 502586389 116 854482001 728 901688253 434 654024800 773 376878286 549 309422881 493 789961614 266 572954091 332 442812316 83 482596540 699 327193379 141 128365105 462 940396420 531 228061829 891 479713639 41 268005138 929 220670845 336 449259939 206 775846232 864 116804122 991 47199195 75 62697733 644 453263883 494 601862690 169 293237993 672 923191107 437 990522114 767 372665133 224 19557884 54 129159082 966 566343020 332 112963840 192 809201915 566 536684120 955 301232727 144 745460377 515 998706482 437 304404365 704 185957929 219 798138883 25 395758267 520 853943649 473 453655144 436 465944539 501 354055438 746 862101875 377 515204140 744 569825372 43 981013853 282 710667320 923 487326701 862 774764181 610 236661085 578 91444076 721 404726785 155 708158438 286 471648662 582 991808014 820 69688832 935 924435424 320 67096726 359 647705978 604 786083597 244 720115566 613 476203559 863 824573707 824 812758996 886 644344320 429 841684456 675 885018941 709 242525641 726 181811293 501 884039981 387 365878666 686 655633753 808 959770846 807 626834009 601 227349364 928 658616709 501 639873984 824 415743909 698 304756034 524 487945050 296 6237833 280 236714231 258 463009497 406 620351241 568 324208904 899 593215018 731 444863593 507 39919437 483 769331697 555 81350471 553 336006047 862 866615876 439 191465681 717 411240128 53 695449252 498 878999408 984 513025677 164 282975140 633 148392855 451 439393827 691 605429420 833 278508651 574 383537021 367 157274350 721 784183907 122 300688422 760 88097684 164 329220564 787 876541263 474 292749148 129 404746222 905 190365001 955 447132992 124 96137208 812 814796609 121 939743189 159 44558043 946 433454949 419 348369756 606 982417176 583 648494479 27 640302531 510 467487885 475 879576154 454 651413563 481 492104935 831 678239374 424 701059303 530 977489488 820 388953935 511 743550406 733 81392237 80 107368138 782 926593688 980 120634107 199 588827348 460 427787006 322 680966941 938 132503673 457 828750979 657 347251792 540 781388847 704 205876590 636 731617065 745 540430362 65 195724071 477 101350632 583 213087634 851 916739932 518 788947415 777 810162302 359 359678091 425 761553017 543 116616179 723 498279217 867 620986918 809 582708030 399 974790080 488 344347765 717 216792244 114 909999368 260 393453335 987 916027023 4 146206662 210 340164875 960 462749638 178 721161815 609 8056208 757 680512992 873 410494788 351 666754686 151 39256627 776 178732051 759 939372587 938 436021864 916 321112221 154 360106870 307 320752486 554 753093726 40 704406805 24 969831237 983 416233792 863 24007701 381 320820031 305 623761589 356 483707772 786 651286028 975 832952610 301 564360127 889 566491977 121 451420276 502 971344972 760 911945550 15 228630282 515 995852199 65 749842827 25 552528468 254 980598147 464 696132787 965 189656749 150 473561010 636 353284504 346 726424331 736 942896085 526 796377630 265 878369129 343 600554735 705 673734041 310 291315683 270 910003105 91 377888143 689 809734083 835 58333267 240 23540038 636 807749104 678 898225287 430 938761066 251 615548463 747 186293649 962 148091662 821 681821697 557 919324863 501 217585946 794 557904610 439 883598639 535 510473828 42 909354285 780 314446293 414 552530399 674 883799032 994 948315276 217 652492234 843 404349579 131 577949633 540 702905188 311 344805403 74 883077935 306 810334509 68 399732688 988 982151962 879 459144080 2 426963298 440 685027931 971 427624464 671 569732402 445 138466999 463 961746913 132 641770531 220 822204225 905 840284606 118 574380081 772 804855441 327 497047932 274 743458354 853 735832391 634 97008682 348 13170448 289 698480192 547 856650441 415 544020318 987 488569427 170 290961586 173 419113241 372 177670640 800 947902318 525 785162766 489 576072221 884 411047939 772 788991582 966 650687568 47 644174047 417 723349368 43 263147498 731 28132648 553 234428101 93 798000235 121 468598304 346 571127244 523 473744245 870 23514119 733 4659019 381 784889304 95 193785084 888 760590688 676 649951290 535 893677571 622 558532798 420 71940418 624 642186372 997 165621598 651 368093542 472 1631205 346 806379072 388 615576796 956 795519172 596 822194079 566 500690747 826 260416318 73 785918968 707 783168717 34 929927412 68 281135110 387 850701355 432 829848626 517 946542798 381 633874074 537 126545146 184 711488514 25 92190196 2 909349225 69 825471363 595 143040774 651 847202266 342 962941306 153 821219199 236 904440894 356 610990789 59 625427413 587 917403620 696 595028879 113 295390142 245 802361981 762 821000159 953 176178972 606 899579035 535 771912568 465 222837614 290 715194251 820 732893943 319 891558292 458 419439369 526 872988528 228 799004605 189 174224051 292 935424476 54 942799918 825 884753979 182 796783014 309 931382363 369 825321498 613 464236344 202 184298612 873 42443483 938 986600202 31 347469887 908 890615766 788 215517420 542 381406813 55 310813491 237 899713140 870 58041171 811 130327487 589 920883071 537 51104414 514 729909591 885 62729683 218 732498119 491 681915149 448 648579639 683 974729894 152 249247496 207 967250157 910 274988321 48 944213810 322 38658555 819 530319488 686 302352317 187 728439800 197 626098133 208 989706265 385 429887973 962 806979484 407 958615567 372 126389757 103 721940022 467 307424662 575 223902536 647 77095485 631 149790522 602 992450683 660 581184622 158 410321580 473 418663280 841 225395483 284 351227925 459 681505794 704 814198780 331 197328528 333 143089337 883 751461891 390 147820048 675 802349289 194 173084182 24 236679339 39 493982054 869 62138816 953 728711517 97 914959348 792 265869047 945 667274394 553 354998278 32 931191311 120 832886522 185 61074601 584 759848059 623 885632552 57 946492802 863 4050594 892 596897488 356 134775221 409 654495236 457 284826737 822 873302594 74 274155337 506 575502268 178 146332622 1000 473904774 777 566428230 358 64224592 61 700033736 312 625120437 537 651916434 908 802590858 794 572290078 270 445164388 69 44020453 76 920749767 212 569059674 749 66352894 56 758080437 672 193438923 912 435482761 527 127304079 810 877211535 723 119195278 931 921767337 862 452681172 876 790454462 170 680732134 684 881495291 224 35671700 237 146709928 998 366218762 749 472998139 611 361027782 160 231759493 323 602319942 515 263279282 342 148865616 918 223105779 950 608193477 773 889523294 838 450850472 3 869801714 924 105997233 575 962467255 499 573723222 143 475959948 321 646235613 330 429053500 409 91008212 665 792677590 446 451194088 567 573917563 566 473064859 939 980824238 604 954646482 904 831722059 90 886186762 173 543710628 220 752028124 81 50621810 691 589874109 229 568591638 442 776628769 333 915580079 115 316047330 854 796882975 603 992213833 602 55628664 310 275303139 114 598547319 920 37456681 717 415287958 867 517327448 799 197396318 617 806723561 392 173225894 290 89924283 404 685200123 628 557238723 805 659932120 818 549814898 865 284729888 677 303388222 131 876621488 358 465894698 18 218908129 646 345366564 570 755569660 865 933240004 711 37220092 838 429554087 473 779458758 565 387936135 706 726557358 771 171236596 33 102518213 604 829026316 433 470895342 931 2438536 726 502888857 631 479086605 249 550814945 941 980381501 706 54980416 478 563152896 841 624351922 507 423024889 661 124006941 479 872434225 654 62077653 471 218887160 596 657700206 356 109201668 921 548103009 399 902373019 270 340173371 83 965157610 538 99432538 443 77116744 210 884999194 702 471565824 118 314682839 871 256704858 361 726110063 155 273581662 542 878823743 586 513729993 93 377025030 889 576221314 212 59130439 426 618736548 340 583819528 349 781933382 942 121925489 649 479545609 371 303427905 700 614552892 837 790692159 69 125635022 159 367497774 266 447569784 284 358622223 183 506655201 858 318037138 694 640582793 601 451269559 951 796899237 611 327634802 179 289048746 640 555389196 461 447573429 254 972507686 275 879819135 794 374561848 997 408059334 414 950157124 129 724206929 85 569713014 326 349122759 437 137135566 638 537005550 184 701581022 279 905099372 626 836863555 684 72435045 417 855827120 400 749438950 734 579985317 824 620275865 888 309803798 864 297441728 308 6095971 694 397927458 375 624458147 299 354901507 537 444728643 355 601632842 205 155421433 783 505842433 744 658875066 274 807716319 773 998466185 964 397231361 267 280859808 91 174579256 410 622235185 902 853791267 199 840845327 565 945000314 985 272561759 556 579058304 106 318420789 364 517070321 69 452319453 131 302319398 19 976562984 573 214366959 307 501802735 790 692209562 979 476656695 215 382443827 531 268755797 389 266957276 55 602974688 329 236149718 712 795019453 961 523830298 796 878754496 409 295945160 378 46094908 673 362465437 237 816702066 612 513983085 507 779831857 971 41201725 530 539831677 813 489715629 43 166795056 14 789382462 266 162474855 803 838559969 123 64172864 263 464385641 979 497538086 935 888909673 669 325401921 499 869901012 844 935033802 125 108692522 161 959364782 62 216716867 767 643124040 837 589943330 948 277041456 436 329239674 283 190453801 373 716735831 433 469229109 722 363687616 376 463867771 34 464095962 681 707345060 461 304430546 336 961163521 539 732992202 724 108102162 255 312688098 680 11807682 687 379754570 697 908202237 969 496086516 137 884435920 407 468814529 811 962958130 764 632965672 371 236743275 78 704385578 663 965475621 990 757495702 350 328683694 822 619432313 635 271077937 866 337445330 391 467276340 581 620986826 41 319418156 298 884359657 764 496943874 404 492751799 674 595782411 314 920415406 205 682825646 620 445831939 969 665297947 201 823264942 496 647685494 211 230152469 254 465841009 712 74719323 677 605038807 278 598901190 76 426856924 517 906295174 827 677143628 273 795438185 82 845379318 597 296427972 579 696525795 222 663882006 188 342494188 616 838828052 239 527789879 243 408479505 656 683978893 906 381183792 81 445139453 845 702486190 541 251520640 695 147849595 514 998583294 782 801446784 488 76110706 450 467640748 350 310612805 801 403713368 106 677319780 936 878789860 532 743098819 834 967992722 451 518970574 369 319963612 889 914871227 695 596185410 965 47138878 221 193476629 884 221689462 873 607131448 334 252111486 786 408850149 733 772422588 990 550814827 909 531849300 586 669161755 844 234161466 682 822083582 63 475790856 847 570308005 653 129569652 324 77579467 894 654766762 710 54211977 501 690644275 254 71318594 818 991823533 369 357500132 848 422551859 90 842091367 470 869911648 530 138947190 636 400520298 82 642739048 41 377307221 483 887723717 213 550796842 924 266972189 397 606371589 957 169127431 784 863570068 813 960442758 670 567478250 397 40888730 23 951397894 613 866919982 492 460071404 685 987937331 177 766900673 597 907014018 309 696181394 546 994968461 319 766850359 937 801298661 731 638565854 167 495958999 711 863117814 427 637053648 37 509256553 931 912888480 434 357375756 44 310219800 649 962780120 100 172938888 198 632350631 526 695179475 968 153960479 802 121699957 503 85205454 851 727565242 594 881875718 569 179602868 302 660365183 271 612765738 757 587902777 877 560108465 65 592166223 677 274368948 974 402388100 138 455446896 298 235863053 450 280572368 697 462443450 684 112684492 179 761461449 745 71195087 794 804614559 814 961196873 400 636903091 284 382936165 937 89562080 116 575467116 979 29862310 409 728572561 690 556636315 775 124112936 688 884395504 370 482335254 243 23096600 737 623001111 368 694017117 118 363321211 169 374833444 936 865483653 750 83092437 916 362965357 67 215021215 611 416554953 656 343155137 293 51869183 351 699227180 767 232202249 467 619064878 878 285882185 10 69716631 421 474123201 874 168887224 896 890739470 551 133729821 688 661051222 608 478279724 466 106041705 306 359843842 501 469889325 435 417842859 80 941394183 441 421825544 626 295139459 349 945255391 281 274596185 479 913185504 931 543575530 997 606955223 618 331465018 181 309218819 328 817162924 584 245958365 389 465667746 222 771462608 659 673927386 164 185208033 669 15726490 520 656782993 289 986681422 348 235019203 143 150327401 575 457243743 859 76720599 98 972122985 217 510951000 423 740507494 761 244901265 312 763533804 301 16195786 241 865963484 213 372008340 702 730961097 402 930352878 874 838575243 192 862219695 191 798107927 463 33717787 446 222136997 33 640840260 259 445128813 45 531005597 815 833945160 354 42545849 77 30550067 732 723204880 184 350104550 938 695892311 413 223490122 64 684224783 332 73791614 827 643578001 863 926680924 183 665297362 746 110402455 760 914441147 476 976645506 748 715594080 908 428767539 60 201782585 64 188145048 320 34375232 333 560148265 436 81252362 132 418317700 723 912768851 495 140914065 441 572905433 208 560483913 43 385824700 95 805847562 767 519821027 292 140500763 851 168019567 0 546740573 378 707882792 212 4381824 964 595228229 103 243937740 364 176732479 154 707603586 32 92421733 781 134661652 870 651284756 73 395185110 326 449568020 565 675325922 980 554981962 626 834692266 507 367859799 335 401227087 685 159761390 40 436791596 468 7516952 463 926997695 181 187633656 927 524240492 723 12227345 649 424396360 207 426167769 751 226841714 124 734686864 256 373423800 899 283345908 317 669287838 471 840124371 612 79938424 934 590706823 436 429030755 919 164412855 693 552263793 242 310143729 247 156170259 220 4608677 215 931179641 390 64329413 856 733822762 883 413246424 99 269508409 730 631617772 458 186985093 279 819854528 158 812017604 382 676189244 501 279890921 880 791067930 424 138442021 730 150342113 957 571053323 313 860014357 477 251408122 259 955029032 182 435622683 804 83853887 541 243538779 767 963922907 448 468495717 72 932274109 100 583167299 643 810701711 672 847822335 556 659885864 165 845684543 863 676869412 321 898385414 965 795572045 742 775180636 638 719787187 161 788267549 165 513334199 60 348686626 609 875183282 844 78439121 566 794750305 361 772885523 961 473877262 820 203615110 487 289891831 535 288784425 359 412607265 899 656262860 268 284674096 338 504957213 501 88369504 927 122808084 902 316837421 940 613290910 157 761591940 254 718298990 300 465038478 660 227920427 190 952380855 567 412973601 72 374896119 7 753573879 153 559753763 116 851334252 733 909576894 429 37678867 588 404378141 727 126175012 415 618648316 911 580456491 29 392626518 664 690112154 87 143148548 836 133503787 347 546469084 926 939464042 764 33494705 816 987659164 273 340001248 9 188944557 128 961635615 540 643913218 21 844600644 48 995845284 574 744958371 250 557372551 333 265480494 462 9129856 416 860965745 814 231988965 171 965315333 732 47288725 28 984154675 892 715778604 452 834357936 820 19782175 952 2848409 886 889499109 340 779890611 632 409137876 66 734191897 563 138014954 743 69778145 205 110074772 316 463306935 588 283004069 281 38351112 288 380942428 814 976199479 582 260246789 338 841592349 848 193608188 795 233759385 953 270615513 655 946355438 916 614761680 225 502295889 731 348732144 842 938373446 946 781965498 281 514589876 308 23776086 588 123257576 350 72589501 143 25398855 19 949721033 116 279940029 28 584622855 25 872596520 932 673407850 89 655454307 585 687305981 514 662677228 911 953320407 624 779769278 925 313212418 648 235439325 987 160850778 549 895623693 402 904061421 259 758976556 503 768859529 79 610233800 285 136512947 10 595290008 806 952779558 400 155399891 683 963655093 822 897255853 92 855931507 583 421546477 125 557869667 452 128343504 272 679936474 88 80832028 496 484783224 874 71490524 393 408118087 212 292075987 789 569524510 839 825516776 732 725374752 905 548401264 664 5581467 723 923432703 209 170166486 889 372615523 699 79552895 769 595182870 419 97872808 144 261402868 165 186676385 718 671276 503 168774071 256 161884349 281 300488991 633 743543435 223 264537192 364 364077467 56 73614546 425 586566351 394 268876654 643 394219270 387 23656556 140 814103190 151 257952252 381 247317626 811 144315686 51 623219597 691 933897638 428 380123598 452 885611391 346 227494264 599 213428048 93 540560293 278 807613164 43 509396426 39 723817992 392 814190584 864 775382377 126 707948613 157 863204568 439 527239336 266 650832231 615 938847652 12 539811837 27 886436711 160 228008644 483 123553158 297 136357500 150 178305373 455 902429471 521 89970398 435 764223464 311 763188044 654 634717921 68 733688709 172 222666909 452 710452270 993 262583656 675 92195029 728 14827652 234 815299639 867 87186630 555 272741398 548 753594203 354 162406646 865 462210874 809 147762263 881 707041374 464 37900528 17 839365320 467 452061927 15 631160727 209 474957540 417 273117574 935 816495679 226 259476001 745 347064913 504 169408045 363 769453433 18 270220688 188 30343141 632 20223382 643 487259934 670 157732029 175 457494544 153 216630681 477 290294815 210 524991088 520 404686800 642 587847358 473 105625663 111 716132363 525 673202938 18 29921276 207 341246 929 257125437 608 183129772 407 885216738 100 959921360 9 322156199 156 82691738 700 110859177 916 238085231 127 735189968 529 933732792 551 846277420 376 886697384 390 942871051 511 460624128 145 187246517 120 155016950 695 300610240 293 354291196 390 967585743 802 661894580 851 847635196 3 695582476 683 845658254 912 565451338 441 967424537 655 812861394 39 105511497 246 510833957 824 516383069 218 52298934 645 510872535 492 819981763 350 413018578 169 453136152 537 831030854 703 345762155 884 503912560 561 669895435 343 116109260 632 284518606 918 768283912 261 262791213 271 899976507 969 374656099 666 263321451 787 389811114 861 323754579 356 679768424 701 189682196 203 789285808 680 676252723 275 552899116 460 262230073 836 450062412 479 613048882 630 230179237 189 973222095 425 468321317 736 643588322 154 351943951 288 340977020 809 659893173 610 311275178 991 681879215 465 446192182 433 429581730 911 851622769 339 963181893 237 640465526 726 580553030 198 150021549 967 511489550 162 876864024 72 623157603 234 712971703 373 174886486 893 185996019 573 828952579 93 377674368 429 670910808 256 428725770 21 467040201 596 659036989 937 928119355 234 212743243 532 276050527 119 521314680 658 489790013 992 393283372 615 638827385 158 753524187 921 159839705 999 419614615 985 743554305 300 137540912 371 64394470 820 896505267 634 753695130 177 119551270 122 446153844 440 99817037 259 477756265 4 360157242 390 101118723 560 231740571 165 79214814 256 487728455 88 132741971 244 560917610 665 59833591 61 316502764 79 189764214 148 23488995 924 763453743 974 821180549 748 507428509 606 578327542 552 931243613 333 954567194 938 18361082 243 366789883 542 773911583 56 535280579 47 62350229 661 400046558 368 711277051 861 996851909 201 525648534 27 197291500 356 929384774 769 802365074 522 957343097 643 43331331 531 533016876 742 827609967 532 970029221 114 434140690 792 232538141 54 631215478 114 190312592 119 958566056 829 312864138 738 734744104 248 77452511 956 261428865 517 26974668 80 447691595 148 153692239 412 704564360 934 863155313 665 496190870 821 141252749 104 758292725 214 312721026 425 814527969 840 173167839 334 102867790 483 83496754 74 30793322 184 515089845 256 402099316 613 937211345 191 86812281 182 893340166 143 571042502 92 465135401 751 389343624 256 856430218 121 53646347 576 761437775 776 111899729 104 141955471 811 461177269 753 738917347 695 512042963 612 174166350 426 706689793 912 335866241 881 940518634 944 935856169 683 50393279 422 168933994 162 546141731 508 831938505 403 293166464 210 31150568 544 35667553 460 767309038 1 25158812 815 209725566 677 221909151 188 503665911 671 965933292 92 581394301 52 674482256 371 547551527 214 196608036 799 133114108 652 721257552 303 949930715 423 423541248 691 802112452 61 331484450 461 574925781 821 353200823 48 37421340 362 604282830 960 147057490 98 348728265 396 376738999 345 711899921 869 306671793 840 234716684 640 246179353 383 629938150 780 533056223 906 798483721 971 816016478 407 28598682 322 268351482 307 127007323 971 663835479 953 226775841 673 867614043 430 116441603 396 623410835 848 983648017 841 114900610 109 906468940 312 472497485 560 274996324 59 189124044 800 233730341 576 803808001 402 125953217 235 785211974 126 693295982 577 637439950 843 412255466 806 540790092 452 807424087 403 398711511 279 519062673 909 574965462 851 393435698 498 613692370 703 704817105 655 6105778 854 275295767 358 269226052 125 101542824 753 321401265 431 128213728 757 624945998 908 629641078 193 169068829 703 834203448 989 357018989 200 516775526 2 16182360 762 568036557 652 533246377 175 299861557 50 554720720 596 2914690 331 170985869 843 745263543 912 479008568 326 438768288 744 827177505 354 975425387 420 585337716 646 468481196 742 831831814 943 219248815 958 775961407 33 1926488 478 442907677 161 602945432 308 917316379 279 829826062 81 236445497 672 710150936 317 318376941 416 437319749 454 153595433 621 680078889 268 95783859 776 517143625 97 173376981 695 525222506 524 776327226 933 638407732 758 51037641 764 379089710 743 310105367 629 993557949 172 379166416 568 112177186 850 663294658 775 203553613 666 451984652 177 286081429 808 867525173 852 30049543 372 120936418 375 809006734 162 91949025 132 97971425 444 161705405 445 174406426 64 341306015 75 934467088 453 386171109 259 405585200 619 372081858 600 259744615 541 45571447 219 863121632 96 272770486 193 926735081 560 883725183 516 753216870 280 824176269 665 400846038 668 30744542 744 836348002 735 767190079 344 587309096 730 497016568 240 596545749 481 677489366 243 611381967 374 478058995 586 686351053 598 399729861 549 7286476 733 561246781 347 318279712 731 340982431 936 274396586 593 40210624 493 949971018 431 95317054 970 788038697 387 388090964 874 169929487 413 265285246 760 90252349 177 365837926 436 257626167 974 393963634 699 4224561 756 326060665 250 173370228 341 991386511 612 110748644 904 753788142 987 165784321 109 236568545 29 578695231 327 534381420 423 925073999 1000 214279458 663 647431670 712 434011136 967 233495099 682 722355244 307 310475254 973 486930817 847 656390395 27 729302132 557 829457903 337 155585339 128 221754951 562 58518459 190 366577210 557 536297956 992 728507193 5 533230397 842 256741386 242 680108899 308 528152749 291 516628555 955 407513086 420 549794527 785 418221552 449 158038158 711 139472171 79 754848818 7 610897298 47 883728864 594 401792185 18 159739543 801 832196297 430 693268963 302 981799377 482 750522134 163 630791671 706 341193946 794 99497309 252 522726495 105 805429932 988 852177630 64 806963691 11 215013028 438 109963127 352 80526727 481 564993562 391 722574631 529 218377636 379 783714787 19 938963628 892 475541964 541 737572952 189 304023953 310 195371348 17 216687818 831 254471295 587 67941436 952 76830082 382 259835202 160 487604875 975 227029151 251 304645659 752 407487405 831 354378378 66 832126048 762 866607665 86 47051349 421 535248992 592 957118413 152 910372776 375 905256642 35 406556734 637 849450334 214 394467764 239 712685578 315 904592409 543 424352985 553 975260117 336 37895716 724 157130821 223 387809607 684 61536178 766 180480716 472 113012130 13 976269822 280 125265277 666 195180715 732 561663713 206 88912752 445 632567874 702 800586264 669 200060942 486 302871072 825 444434853 590 615758865 616 683504853 899 415247736 229 887538520 968 685745492 993 868415996 423 33245241 138 654192508 822 92916516 403 491208741 213 175391423 431 644851141 915 41630003 726 173070204 575 661479825 212 669666330 45 647329905 268 631632432 958 887177501 554 78852858 453 127183872 867 18406521 634 550632944 753 858778538 274 880126959 419 728671025 559 756903259 339 531143269 838 705235475 970 855907185 393 905049783 942 867211952 106 492849883 497 823553597 697 1953801 403 147870286 919 114217447 592 754939980 286 160235379 848 535147174 977 320793566 293 118633026 513 783216301 582 876591340 57 232833501 669 978743179 178 857196452 604 137925051 867 154920342 867 31971952 747 653311350 898 229166151 413 18889838 461 607406877 870 626072745 635 42319286 973 387447030 38 90457288 631 434294576 534 737113442 752 293230739 654 384198685 235 444756171 610 988261062 15 345851209 353 211988845 442 763801788 436 902057213 415 413946797 180 188257081 926 727876948 244 183091425 665 104922719 863 954386228 838 617528440 688 941933518 215 867852773 64 797933123 948 989941364 856 515115549 470 179247968 55 42379387 832 814414118 627 468890081 920 771106518 391 517714840 374 221433192 673 303841992 265 803007493 506 152336184 958 196376559 817 2671713 819 200117262 777 455376296 33 597634486 961 749218986 721 258939864 271 731774843 700 412455030 329 891877000 748 513480308 726 64476349 589 331033886 819 586726192 463 872958318 194 725363281 869 148145914 711 558839075 331 760837331 915 351161750 190 256059004 830 601420249 653 533345618 65 125861390 749 635973257 439 827666599 256 252454362 966 520609170 502 504233029 525 111256905 562 381061659 7 55525024 822 563986191 980 928056967 466 717852315 967 448593637 434 352281058 770 825901136 961 894814907 404 474185194 497 961444020 313 959183384 758 381304879 931 372644750 825 181890366 505 419701159 770 474866176 17 128744334 698 966890392 297 658590923 276 411248824 458 994584325 119 845511250 891 767587456 323 106841262 785 55471408 776 628808511 258 938955709 85 960849152 647 773328078 171 545203404 423 761547901 403 897818220 585 950251746 234 719902613 125 566091408 107 981041849 468 479824504 6 493001029 255 695885115 444 352522378 116 972702908 848 864995080 546 617837673 926 65423450 646 467650300 88 891163538 321 287498656 173 561779411 53 354148891 445 456061293 553 349180596 274 794556870 374 36349822 40 391035735 730 141635841 312 587999787 824 620348632 634 445413663 958 670723509 54 716238546 300 584175404 823 810586959 78 705898867 754 926758434 373 656632903 32 869273952 291 638543161 515 907764416 289 736808730 586 577483838 996 523624420 235 243696558 82 506369510 690 485360454 245 636417320 378 871609518 78 304827597 547 427689837 225 136168131 973 425157710 545 220672534 234 28710108 606 258395428 62 973434847 280 779989261 16 128564734 683 866050129 433 964068981 351 246463166 195 282295161 405 235556521 90 388188196 964 814579903 314 590471179 665 516638235 580 153668857 182 11333595 246 972765873 47 801780343 677 139304687 591 465941496 241 889318508 515 191042251 628 452762741 572 193994540 252 359579699 581 268748039 738 206379137 749 391433421 179 627535911 189 838021525 571 642931523 34 572577338 670 278452286 751 492606947 421 562247136 401 248316895 626 478172337 307 459944808 971 887416631 181 293096415 740 110969233 909 352163913 558 568807379 451 226564782 397 187699046 669 63098132 186 922749140 354 520428961 191 958382976 891 227891478 901 23256820 693 375339446 12 815119763 992 78304574 129 136334709 667 503406017 704 218723250 715 475150052 50 380790325 563 492924929 983 798282207 820 230997891 8 35942537 712 767831370 678 643127690 69 172900748 194 948352172 970 753657732 405 154584320 244 899178518 517 582197568 168 235610913 776 201161817 465 732990868 528 858550775 534 633461282 451 504731522 435 895223441 700 13046856 153 281466867 259 441788902 502 42335646 489 741202433 334 219092232 269 105680412 254 431600145 972 756784893 193 325693213 532 887453107 235 893046541 277 926847778 992 29244626 45 583648482 138 613960345 526 584706394 327 846855184 396 912610558 422 812986125 468 918421025 709 135915117 575 629428742 457 556305193 38 825710782 868 461011155 270 235735645 605 34724128 465 620724653 143 128069014 56 348289970 216 754505809 325 576417592 462 593945516 191 800553634 478 189930902 317 701247867 224 85677297 437 475848324 521 337725564 359 96203554 678 307617046 700 978349626 838 924184043 496 901188 441 898409892 542 39521425 453 505062289 817 968636978 366 964390969 834 37639689 1 325200306 436 142520640 904 1007388 95 644208264 569 77918844 638 58991246 303 616822756 275 967532546 829 867992100 608 825616852 501 538357374 656 93844253 976 822975968 456 401475554 996 529290562 252 432312822 987 449538771 294 915832798 413 771928729 460 340336009 495 90544923 60 178342839 304 120781815 352 363958200 224 728544290 876 436360538 661 145536445 563 785561646 792 446283299 169 764882475 243 780686419 706 201261934 285 11373604 978 339384953 352 557582731 801 305499895 754 931454131 492 294497781 646 60492404 821 384241634 910 767645553 782 281595063 42 201703187 516 30421494 281 307299671 750 850084539 901 157627500 524 883308729 758 876099753 476 912256642 595 566400237 680 363246942 463 656399310 141 779071293 315 853606336 986 692232486 306 113303128 433 748810458 793 561500220 277 295672610 745 281475774 134 299214257 709 802440437 809 461525503 37 865068922 395 122154795 512 852576159 12 952713571 554 401762049 744 473959926 305 876455552 635 831502368 661 428859550 86 21699052 374 743983885 156 49848777 308 601822691 891 616620072 668 749698137 599 812510706 109 389806028 863 480365502 452 612513430 7 275766486 639 916445730 649 552790725 715 682560004 955 575518066 40 782512022 564 72190173 796 397269419 311 921304471 682 864925712 409 30214301 258 210442426 90 884152767 305 46834570 708 31348508 477 319084455 803 271037424 987 208438047 763 283483507 818 433638338 2 933721639 727 944986974 432 763276655 468 486856328 250 378800031 356 25215097 205 87774279 207 963745075 917 279420007 485 604690490 228 340889205 151 318601877 21 965290196 149 408665618 486 985717867 687 580095827 33 657305848 549 319778361 730 561366078 217 55550713 805 25659134 598 833171984 610 795075935 779 944627954 979 762313634 33 953165624 933 267488088 735 273793793 28 835900092 83 876129058 722 708574995 308 141475433 977 739757320 511 83242283 686 355516697 957 121652389 929 720551039 614 248503652 702 670810162 449 122812728 996 892936989 562 76263957 648 856152017 775 113370370 1000 364417391 31 474461868 583 568511823 791 149572987 985 295943023 758 797565724 606 823101719 657 701948376 299 421875596 758 119617382 18 422262830 355 176235842 679 743273758 114 183904553 285 499715340 200 975011148 1000 324739706 405 426197046 844 174394430 741 656456034 829 7524213 830 381652245 880 911147019 955 537858579 541 411876023 604 297093426 461 183802066 347 66506016 885 95096177 27 929432282 108 481329630 571 581116948 555 531038425 185 758014014 791 67508142 570 330996804 540 13490903 927 557388193 454 953027298 348 169776912 288 635433750 503 140167061 890 770860114 572 992687622 971 448719871 681 128029189 336 739220862 190 24806326 641 433758221 306 89262997 446 961460904 507 934206587 495 222823728 253 438999268 929 14157154 445 220832567 58 683918606 755 254702061 972 886647496 118 656197327 112 5643336 36 818452376 109 215148366 691 628192349 793 56068644 726 100610298 706 569078967 603 282286614 987 813701158 143 910349303 667 336914169 384 659652849 240 161924594 157 916987362 625 25762365 253 280509508 391 733808107 677 308253540 356 853797606 118 566628953 199 490705674 322 850261250 816 306894653 446 177894053 381 113211626 254 181528541 432 496671548 656 450863663 533 460475182 80 603774989 961 560974911 764 501410162 795 269665465 307 708147307 467 611773144 368 968510714 882 554110909 413 812276379 574 686245042 714 677832045 438 294523240 632 404509542 37 807107407 814 711270078 385 158667170 701 209367676 873 150543733 882 992895526 701 68071758 16 66253198 751 745026105 231 932734741 344 896669759 217 798301802 788 491374108 513 393543650 24 795211917 553 403767269 802 546038751 423 822411955 974 760189270 808 876936335 577 529716445 125 647236483 779 736334172 818 353683331 32 269771106 647 718138003 871 504067794 988 819455368 459 388845839 533 698964436 59 938087768 535 319348588 20 183632335 780 245815876 746 29201057 732 847529639 327 729579439 916 386829848 859 944234473 804 626163353 210 418837837 328 308619837 580 116943576 114 274707704 406 283882841 558 295562040 455 179700512 281 490933697 558 975003490 836 284969408 888 811041189 538 979955396 560 806120116 722 482568528 185 82623319 721 92814942 480 358696269 828 761087029 701 505668309 309 78010022 205 196420438 96 478629524 375 169847205 587 896893935 722 796100210 502 503028940 345 443656933 567 643942999 99 336323659 596 515240889 124 31732620 487 5470446 668 602431526 107 693832874 972 19478296 944 246575154 854 420837943 628 746758160 974 744681842 831 123345657 550 749618319 185 175549798 251 388565525 95 405914123 40 61736332 862 25498367 384 433459576 36 988427522 725 11615201 418 446900708 124 420160614 116 479897586 629 63952565 624 57802565 649 222770436 988 989990581 389 728149422 59 298475914 265 986078305 542 408634317 384 310331751 673 534454766 300 877399076 554 416547629 750 45310530 452 894026970 378 225917037 828 588663082 94 172569571 181 970800497 650 82632706 795 697723525 398 107402013 600 426674108 360 215554752 691 24349155 831 225658646 315 524681446 319 526989531 788 244586815 283 13606673 749 390998146 312 491471539 845 706630663 576 685011611 818 310090291 953 268086533 650 118469462 535 912691499 52 128213144 868 920898931 615 135914188 670 632924215 773 9068326 2 823552986 440 736516020 665 595588009 160 559313516 258 134101561 775 327634119 144 987180254 772 400219864 917 120869400 327 295196729 323 439900325 923 75895780 695 363597662 780 17995941 431 734061716 862 371926523 398 678792781 636 366500346 518 850787192 408 809381838 405 886269659 202 468184806 172 592541421 781 427131879 656 646735175 917 756834491 202 419985074 642 832398232 982 74935073 688 6626641 703 959045506 285 516420885 755 519949922 937 276049385 933 273882886 414 7854350 484 928412763 428 39428059 871 852429074 118 748603668 535 892205207 184 80481099 18 977458370 427 374879769 142 212246836 138 643560498 397 243404160 826 491052136 988 684222129 235 830475860 598 914245760 15 178269318 100 222717170 834 517317004 486 101608800 981 356920699 73 461433203 511 403481272 279 836044941 169 473808461 54 580354509 617 108613425 619 3882654 711 628062760 323 670225207 46 83351873 56 348428311 915 391104475 700 16527311 654 321402338 902 368319074 91 851484036 849 104071366 113 32435454 489 716810592 126 804444760 258 426240726 465 833225090 831 913354798 193 546900493 441 661596078 667 969604296 939 992106497 442 930439332 890 563093 938 154235810 450 847832303 936 791491597 732 75449313 44 814985030 220 276787096 388 53567102 369 655174364 592 69638551 19 40128793 285 73440395 264 266140098 757 538925606 423 853307469 787 194972033 450 272854808 27 966546845 369 796859961 253 434934813 968 558519191 83 604471368 906 756229027 438 75779535 845 284480309 997 476623318 265 731626847 865 168590969 445 488555068 165 322272436 330 605199893 565 686693787 596 582122754 888 714133517 468 390242376 175 903781824 69 536306880 156 810350114 131 621377636 96 648203027 596 700960132 473 494301777 685 159065499 245 135307307 723 961587473 588 418885750 197 18691307 317 852472965 776 347744726 846 307549503 425 177013125 787 746400068 170 950987169 108 557078653 41 278921496 589 454344041 131 557345018 72 690655081 418 238782175 777 695421590 92 838005397 872 167800868 479 321019057 234 641008672 634 510398011 490 778945004 573 615883232 980 178905691 383 431681978 952 369117317 637 379376470 811 847260062 602 352184351 400 966974492 341 800110021 526 426230466 289 109247475 530 176648419 536 507162517 307 696933001 457 2479958 500 925828704 701 27845700 832 28587000 528 261511864 391 812686860 869 347874777 157 813752126 216 721211441 36 625994330 857 118937985 878 839665353 325 133566775 15 297388025 65 888908060 657 856655910 507 305141359 574 358232364 909 559038884 372 488427889 457 996021275 151 327886795 533 514232027 455 567388849 347 967057247 513 331144947 136 265682352 609 329937782 294 484142790 722 178035552 833 16117993 728 843450363 317 251952787 354 140512947 659 607832115 144 90364796 316 921603156 414 73136315 341 959403219 621 739574554 660 430047785 656 639564140 955 215710031 575 876308549 225 696884197 127 196688993 627 262461813 319 770294573 466 282530 769 869559445 587 601367531 278 734760452 831 540744895 448 820133455 249 931749157 836 932921622 848 933316107 789 615269505 641 547962291 555 751100695 415 849063819 589 891846399 203 282917179 952 840556221 471 123754733 274 358236290 234 615957347 109 85489445 199 202860059 772 299126800 598 507281038 750 606761518 91 177968990 825 944539312 372 263569919 72 222747387 82 904494617 215 412186596 928 612762129 169 302307999 529 693776774 795 283134108 325 139851362 735 54359575 167 802752803 937 266995907 817 235028607 694 139143588 173 93763864 711 169672677 895 474355930 369 651915400 623 437809403 298 729910736 847 908258587 402 160248963 329 263860681 245 453299530 637 647088035 916 983538069 804 44661384 638 56261608 337 662506671 291 360902139 430 643354371 522 147544871 242 913349289 693 224486841 636 961584691 47 720778348 895 478961879 257 355331845 585 965993557 194 404566128 409 179354250 476 124327706 495 789414505 291 43685852 573 535609571 112 17802661 784 381715451 104 764178651 827 751820743 246 471130215 381 258221944 246 172713096 247 523045448 145 575018322 170 688596807 96 200130015 705 737699360 902 529639337 254 449592025 202 637216532 378 427997414 88 669535909 629 208899122 107 70542092 685 816990483 207 423656617 343 678782874 780 190640606 484 379576499 4 389861556 481 741125000 789 113159464 158 518632781 526 261762571 155 16661342 244 316131199 969 993806580 890 726026975 484 82503200 291 568130617 368 127329386 702 100235109 815 735162893 19 754662004 618 154833872 162 167888743 588 520783440 149 339090226 116 126872610 108 135905667 920 381905920 441 606502994 385 951846976 479 499813443 309 549693389 935 29216248 925 155065057 167 220142772 922 928677723 725 692061498 475 591511146 565 816855147 688 767677645 996 428206323 522 936874637 225 794296545 802 34918072 492 688870727 864 770224288 179 763978651 706 663706127 463 573765119 51 550582507 6 884893268 976 883570725 44 424226321 140 361371481 406 713277016 709 162774980 817 119298958 422 372323959 168 711731110 703 384434920 801 353426432 923 820550818 128 395211599 15 293241826 298 76527753 661 133344861 402 116416116 272 304147510 22 250550750 359 32085655 600 808311017 49 570948279 163 746601697 372 606167645 642 475099188 584 303245468 893 527026411 172 254888197 956 405445932 770 155870731 781 640133758 727 469745642 866 775752962 888 191525570 352 544796502 466 773391757 587 430904768 841 30826975 979 43170048 735 400909905 114 585003610 884 951226989 241 287368117 93 223791383 940 438355975 186 519642150 442 835589979 835 149023614 18 357533924 753 494636611 342 591319678 478 263077661 550 276139584 568 411692094 394 157754870 728 892755431 379 80914053 318 863694600 390 474398240 847 244801461 772 434851881 854 890205067 664 319208267 557 783341804 478 936283761 829 982333310 579 55932177 529 123507269 708 363316480 619 398182682 810 216709842 975 350403299 364 790906780 958 917509449 445 523620313 910 510334027 466 753152892 194 721217558 969 186068306 824 81339073 983 646499907 273 631609268 337 901545849 636 293782832 435 40460550 436 655360744 892 531667490 366 201105551 173 598591150 763 597558770 869 510352180 577 988894169 717 642463529 673 169809312 554 230267565 800 768942506 792 261569358 892 241145000 2 330799985 807 347035465 719 417222992 251 741540121 122 320297385 58 985622188 583 483504465 162 991910315 913 814739698 820 704752466 667 50908347 345 952197488 90 193359276 856 990294956 272 404165316 977 148866690 956 971116504 810 277129416 376 847114135 586 181084209 762 777029412 476 487694181 239 963723281 541 697747592 1 172907097 389 468010849 642 245417013 591 483272711 940 108510287 972 353811523 357 521199700 37 850969260 645 807760349 30 779410008 775 975610213 436 591433171 389 742104840 773 929205326 547 891814400 241 457112740 685 812232922 941 262516967 584 777391376 244 693064124 856 292155684 650 249495999 649 850861051 750 825714850 752 100420701 860 286375356 811 20135621 626 50293888 373 361163258 69 969785266 555 313655306 277 905073102 591 20070973 541 13724151 696 29069676 57 418363662 874 508895999 543 127747964 423 311801285 834 382998968 432 531525657 778 695641789 312 310977209 237 888481702 641 668137717 73 214858643 454 820314316 816 875290117 600 981521429 479 345645507 972 458724504 282 538605324 890 250419063 613 115145286 516 763650083 238 954321919 811 342466883 208 62402421 309 966212448 419 245362054 632 813276426 788 10228436 631 703376230 870 582708525 89 98129314 487 580291833 165 851433721 554 241171233 166 503978041 287 486092391 887 808561192 761 289382722 705 103066826 580 789071223 960 266302030 56 962373985 680 949626276 309 636270222 135 831133499 527 746369883 940 770880917 747 463105849 912 634580010 759 884180500 205 523333836 42 969646943 983 69666289 681 536950203 808 645067877 837 364997354 349 550459585 679 984605657 235 445980843 684 251632068 700 351420977 333 556263523 249 580964640 256 464882774 524 869163157 711 754628502 821 452591087 194 813227859 57 679894395 494 634309443 819 120247412 836 897490288 236 691468717 488 700481179 196 966034920 110 79726328 540 125626539 307 744202296 85 825597536 360 160693023 384 594018633 410 449508333 56 144951204 3 300126518 523 46641337 272 277514544 48 188148499 627 455529838 303 953518389 39 265384704 383 718907128 669 863593935 203 24490948 402 938826573 994 150065408 567 747994854 240 547733641 856 124625830 342 784588080 581 537095679 456 968032014 317 324481032 634 566428903 770 339504479 314 476346038 880 746653247 877 756788824 277 853684234 229 907151888 71 654035210 615 961305628 877 79233968 627 697255022 231 306058959 30 379166229 387 182013229 644 103287712 810 132140987 246 29552518 996 219378195 298 134095378 437 107460002 181 772782965 856 475606881 708 630995329 207 908237515 892 774385734 569 37931772 615 726435636 267 244057474 980 574982997 68 168483227 73 48762560 211 716656626 650 371225785 833 84032133 853 214264713 230 207080620 334 49311910 136 262859661 79 177038168 958 816663157 450 660899951 744 949462555 278 221174982 784 396646754 563 847821939 806 127931063 606 67636653 975 358895261 269 104053504 44 11315804 163 327278589 410 343240339 507 638567051 169 158050709 842 953003109 522 224559711 694 1485422 313 468208356 235 662988386 232 148580070 342 660411778 196 410740271 178 77502312 914 854791946 611 154875923 635 438667281 838 877169072 149 816649257 609 665425902 290 158231164 446 133309778 950 958415627 532 915059441 726 424859205 591 793459839 991 496226245 91 169209124 797 161856371 957 555496535 681 133629891 918 189261045 102 685604374 435 329059884 183 831578718 930 492511144 223 623269868 414 562406022 725 25577470 537 373956958 271 597180940 430 326131972 946 868614381 620 921703877 331 509261196 647 630538322 826 500479260 358 296029566 958 849446182 993 537211396 647 30252869 25 945093093 50 793974273 703 135807947 903 477963275 135 623637394 741 951726931 957 242941011 861 929824472 961 425984973 912 884953565 933 886663157 512 564939849 285 203140516 136 373111909 230 753673918 94 307382408 729 479880514 654 378757045 526 140830607 212 82187328 280 375180447 970 532275141 848 346131503 370 995294869 429 50873602 180 528221772 167 972914091 919 418534984 761 191907960 859 779591397 194 825588473 162 668571701 341 467974658 240 639670547 724 739500388 726 846546099 447 761965135 916 418901331 248 450497289 530 964659531 523 38635948 471 222790415 305 405770996 458 483723714 910 89080258 599 276995185 333 151114781 484 858606864 917 723675132 800 228200135 756 49740700 393 105625647 78 561472937 511 63588210 318 179138526 282 530121108 303 431880015 487 576189878 861 468933901 243 466999421 264 192036443 612 163747219 390 532971931 211 389704615 949 295542036 751 960914121 512 304752484 617 334473312 532 229364186 420 779556457 907 862266624 523 135814373 225 81146654 773 369776873 306 251837557 519 460839361 158 204045334 974 644252785 962 269686041 638 16497209 389 451961637 234 970147867 314 1070902 262 464629540 182 22109111 620 758674730 724 461173455 608 79116113 916 886151577 979 165511318 157 145736707 366 557405234 229 818563852 300 27404738 809 377768443 578 491715339 908 261670104 173 699610038 663 477861503 329 368190305 479 562290733 406 390341760 404 529757343 62 516419549 633 74218851 178 912290839 24 604073378 956 197588637 21 929060865 839 682635576 296 774454600 736 302322086 746 356636299 316 117602564 341 626686942 42 102896771 317 346470950 19 789461920 736 394242046 38 54271192 148 565049520 738 268112861 867 506440335 178 68873395 722 815796697 980 35335785 2 695257735 350 709985203 485 459048534 453 343264089 393 934246373 749 822611915 366 260346915 815 144281563 116 83772212 436 406925743 919 274205737 754 487274993 837 776814236 192 824845105 790 776959314 154 645252482 706 454285473 716 315077687 603 376514761 117 584627292 636 739554927 908 809193995 361 153560437 461 948176176 11 164883822 213 607517096 460 554570661 793 436602945 124 966633230 107 143409826 684 762912444 661 512676082 307 582720606 567 294509806 878 150251218 222 911337413 823 912937249 522 999999469 192 58917625 633 977836763 371 821025419 966 24583458 162 649960325 702 344951432 577 337775134 778 819305719 578 317002611 172 271946168 747 265714129 430 223360268 773 628266994 897 361113687 947 296933711 552 950439859 698 545772162 781 931578202 933 194795573 41 784283720 78 507677418 49 538087335 474 970246412 385 770079322 220 67581871 906 292451788 929 242358294 999 528927753 540 966323156 427 849524795 482 273292704 299 323220327 57 328136316 477 873715223 724 913837097 573 941901661 45 465582824 80 698731187 956 870834023 277 169691566 902 686115625 507 957620323 796 427137243 892 625475880 536 313540650 0 167447260 497 712603389 750 697948085 255 216058662 467 574756545 795 128164131 380 809639590 193 371074383 87 414392504 339 973088130 447 592734026 776 660365736 454 245848958 292 385410229 286 512263355 853 313615791 800 804051599 642 116859621 759 927635491 547 655009504 810 334051800 473 1572147 125 516062851 655 649925976 332 581899700 676 135809025 300 947435315 367 732280349 272 603788163 155 618198927 701 852751240 852 88471552 514 519722731 44 250754993 16 648063653 383 472918331 401 935053658 124 326293371 353 331811557 74 165273137 967 181746195 20 146971742 468 57312310 277 523188633 573 246159204 316 44324360 302 80892979 397 698182822 705 564747584 707 190861483 648 243354724 245 281792160 4 271133567 568 314342185 855 987601721 521 293957234 90 238559844 616 155643205 622 993094444 122 341634646 497 685264987 495 95305143 491 427321070 51 372786989 358 332785084 194 294323005 698 689433353 575 661548624 47 715039284 280 478136415 2 130541651 644 909952231 296 858920656 853 590899668 52 279919710 917 649245018 337 387884253 232 334565206 100 89291901 183 917989184 81 999964652 761 802882145 613 125431183 433 31103961 822 428305521 16 148676396 941 323480468 418 88358588 207 352056981 438 2640217 914 818757514 156 203586085 485 743445002 224 672543960 525 830033943 847 746977358 931 844813445 624 240343661 175 776890386 623 568147667 907 581810782 684 130767123 361 716018835 42 976855168 840 301019005 179 255411721 595 821899644 51 433340624 763 728269122 877 465949357 878 865136896 567 922848657 668 962034493 824 477769764 552 538544721 218 533702841 865 907859543 498 36004959 830 450202942 417 632605360 801 914079563 118 674774073 810 594131189 739 749406422 683 978403866 657 229404625 529 669748813 655 595953557 552 403602407 894 980769107 310 653146337 694 187524175 253 785964122 581 260883172 38 129870628 979 330890824 487 745175508 588 567681008 949 322365879 481 339271756 48 299140733 953 510938960 146 704769943 55 876829429 411 696333298 611 118238008 194 926296685 187 790886554 153 821757450 442 864351763 562 457160588 699 901079592 541 341286309 702 899034666 89 573959550 206 687053093 535 323900183 101 527828062 666 686087475 367 251223636 282 404924820 501 560763300 12 716977356 402 648623184 420 812907403 903 893488438 745 322450289 395 988944370 725 18769335 723 802653180 894 521592514 859 34338028 878 274310231 974 957759050 256 225195773 843 317989307 198 479906329 679 167101853 696 399733082 32 521875801 781 467196646 544 23337778 496 992528905 949 381937586 233 273998575 476 974544131 537 620062301 195 656901035 913 732767369 329 633079158 543 158971374 232 49662956 26 565675052 127 835714835 143 574883724 624 223549857 395 407986764 457 448952659 594 64468493 703 857696540 947 373918547 307 896330836 344 968162581 307 957607080 177 348309397 801 96699590 834 321166977 576 453306964 430 401532444 169 196261336 1 391492955 919 867699834 718 861443760 328 94425285 195 449499206 962 513072529 922 105454518 193 488002731 660 389044636 683 767983750 753 32554453 355 512063194 33 326540183 642 152791736 535 180418487 473 269260347 669 857503563 665 248797401 390 546142379 591 820326627 102 814116714 147 31851075 110 139335688 459 135673844 284 155289635 815 882149769 859 479300870 368 348058180 383 542934670 773 197624499 734 524514994 765 535114878 548 220204603 366 249892127 651 692243934 243 548269171 585 948440685 51 974127543 57 82664804 895 679692430 386 990608458 659 184329543 761 348304964 636 375063037 117 659944164 643 311043762 210 275570504 928 878053499 52 674417695 457 253906835 587 618129925 431 755591095 147 151684687 687 767315197 839 912467876 115 392920222 407 849808593 639 177303570 757 125063993 115 238700378 265 826154505 616 722395415 967 635044869 813 268434813 511 926952476 599 327549880 408 323107537 923 772548852 450 451561382 403 421356688 392 12113359 266 670823319 38 764862589 881 355772225 596 316863421 25 637561704 504 590773680 330 804981371 808 345219344 852 32216892 401 681774710 671 216974086 763 832319301 746 671101315 656 169004659 606 519866121 336 627916801 695 283365516 200 919600229 439 822300591 963 592602586 712 497306555 744 116162233 940 788324376 257 851094753 0 601507271 984 735444424 687 17683113 259 519112182 351 316995050 582 896930970 70 642744776 369 109483360 541 611933711 670 344712772 100 372528377 4 334660082 718 870536780 679 757326192 302 911660340 871 867342908 268 456695078 147 444601375 795 546029247 717 776197646 74 531581252 236 777591119 314 927009433 862 991390834 685 430422609 438 451578970 885 933815945 816 464867172 96 957181944 820 693389545 91 334505256 68 201146728 885 248257264 835 966441731 825 675386838 932 445315706 223 394418974 207 631611075 502 221211612 340 98253302 650 361661575 332 287211264 276 770374973 819 625390962 797 14591094 865 999382178 958 572666580 307 881890365 919 852563203 111 599844000 509 720765789 9 145324420 23 487249812 910 148660877 152 752619224 124 523567825 849 741796250 642 590091390 896 778977488 937 97495364 804 592236563 549 714596635 119 686641959 425 628354247 507 744944067 831 998598303 123 93336388 576 471914828 709 481089838 739 610073173 405 217712152 92 9581945 465 202198544 428 178690317 71 715451486 576 867647384 668 462944984 341 101746085 546 10697815 374 705043227 642 576989045 613 99528078 372 767147306 604 140012327 897 412849018 541 278625131 165 776974767 375 309534466 55 304601098 273 268072892 622 242863949 958 610799004 583 350512430 621 777673263 136 372657542 671 405769683 334 911420372 229 477779304 106 78788482 118 963124493 690 574572776 397 698818806 674 868604423 373 719531461 66 319112749 58 510376224 600 281543150 462 855910235 385 59580390 841 238295980 979 664922479 11 23933497 565 707500591 901 101346961 619 382697541 901 399918957 16 999113135 489 916481431 457 250731500 612 977451230 907 403777421 192 610056916 164 984635041 869 387064026 584 922094211 552 412082771 803 602534018 488 306314873 775 815731487 372 49699031 698 669404695 973 284717381 263 518740822 77 332918425 881 216434608 126 431043633 921 497822961 743 824935297 400 189942752 410 909425121 286 225476491 475 185546744 251 915355365 768 453093060 44 442575908 135 207917829 605 643913813 773 253964578 915 986984353 120 553216551 145 777893286 656 196537456 161 447277515 100 65950793 319 43601866 250 610331754 645 435786694 713 655436437 170 49346482 416 160915239 605 593622549 7 187210238 136 175336591 177 386349771 928 235374811 297 502296915 535 750915913 620 4953294 479 20430772 642 281205673 290 392935065 521 659014496 779 993807892 684 703097151 45 603817907 165 88173715 109 251524 35 839307333 465 504758172 957 310642710 630 39522002 141 592434090 956 107993985 493 492843334 864 998817202 853 467622896 463 92828676 895 721783513 920 412093159 763 390075337 994 239466747 253 553488073 626 98579226 656 889662147 550 168043169 960 675566763 391 766450702 620 354168791 399 905246474 534 857434330 799 330323952 314 808669882 126 737633609 111 386127403 200 466416107 222 229297010 885 17254454 982 430220675 841 489055522 248 240385831 97 374637931 503 634761913 598 720587367 192 459646981 110 979452536 25 839996191 604 62517985 276 385886087 219 976807589 125 996827961 194 657310720 62 80236774 14 550524393 354 492694591 286 169482774 13 671150320 720 823398679 748 288655012 121 574502976 211 883335354 485 85155242 755 81097869 506 37545827 199 269940927 834 862838557 985 890823903 406 943927812 955 649398333 206 539310512 508 401309376 544 838987283 894 522720304 146 226562707 416 1654271 893 13900508 728 785289005 45 350781349 826 897752145 553 45197320 963 309016543 485 925666663 149 500388128 318 645636786 691 967388492 819 602253674 81 349058441 984 70513588 984 672751718 781 440334500 97 514417094 435 119388545 316 448244752 199 765637944 138 850719731 144 74025892 389 401540703 949 681980198 192 433471201 916 156309195 169 326876010 631 689409708 737 311445536 645 629254424 863 98676115 704 322900499 252 559801568 539 488194585 322 347590694 711 202428771 228 809422919 702 16046571 218 18001966 660 850787830 169 84810860 523 391274935 542 132110434 488 122869935 897 631924176 801 926696223 13 803836651 411 961662120 249 942086397 630 693289262 602 85393638 45 68311795 12 941114253 849 251769194 496 130857005 93 167708895 166 293171419 624 66376013 426 998102909 319 232007626 779 914739291 613 887554097 466 170238010 123 917764843 261 897082703 672 26966651 171 884051716 255 303014980 406 591333913 319 337625561 896 882794167 824 754228720 282 961289908 141 580307109 70 454728333 764 733373613 670 912454491 587 196921132 615 101783814 583 816513434 475 93262367 842 597573314 411 547724602 733 306846725 401 558897940 77 489500252 337 31556031 236 23972043 633 327472036 191 72021665 414 756256990 497 41945369 835 149033960 533 964269522 717 717208637 557 247524151 436 807276948 485 466466695 968 499801405 471 646026224 484 957695526 571 257330331 292 84680960 35 292508808 319 719212532 168 492038221 979 926064252 439 346392706 763 11354025 962 899338172 709 164884597 703 176699666 594 642051101 890 655849507 758 744837155 471 190568182 258 389925797 188 740181973 53 467900810 362 137512537 186 311280453 368 993618685 72 993783915 994 765596886 196 983346968 465 852042927 854 231592259 586 766690390 520 844433277 476 704117496 296 511790168 726 202997353 607 955002989 253 715957959 579 707752506 193 884630590 597 950096511 557 545304265 835 773936182 812 585941299 484 432420185 145 481111444 952 409939927 218 536492000 195 385327672 126 345394002 221 39962412 256 202908113 335 732455854 901 615287024 78 206900888 575 183914645 383 616564119 532 446783832 993 46050763 816 752135930 674 503347103 350 557314645 904 671319164 385 655477675 980 832937991 333 990633698 689 556608316 594 713594697 526 787125470 430 119868976 852 11679085 168 963404975 592 944268959 712 645676248 164 596454907 507 261984465 455 420405707 25 430329789 610 301660521 812 233094335 67 498387177 85 771481778 305 845844995 974 661865481 213 812405672 265 747656255 687 583403292 754 496635299 533 295318860 455 952237602 389 53690258 802 15697656 158 337613772 445 709390701 263 656292659 805 664898490 352 461853339 88 86639373 386 854966499 811 244761364 854 26029166 847 652490589 320 606427837 272 915756448 319 221647209 805 648775025 323 161352023 376 757574029 37 535145456 255 856052653 739 900878423 131 694980120 626 608110223 793 189621298 935 637411282 234 857178259 909 316803022 253 467449904 672 784154730 27 195147009 321 126270261 445 46140288 969 711820282 890 268353746 929 507446549 957 964789937 167 617961508 975 730160417 948 668012322 598 27883016 128 239519548 960 38189579 843 796428306 153 881979387 494 992233488 487 982138430 388 451731586 302 156982235 361 329746165 680 342602871 169 101717942 745 482884570 742 158216347 787 835684909 154 171099891 769 994393871 756 239198872 310 135821561 648 963467208 71 130802522 832 82855012 68 689519794 429 311859753 913 90833700 138 791932890 718 797221692 114 305182846 771 916080954 68 849797291 183 843938262 274 316023632 179 816108680 74 274854170 411 355499685 904 543911926 408 347369812 85 988164228 591 370360066 860 943021898 872 711229045 433 605740548 611 49159975 941 422449890 753 250599623 824 942544796 134 314101961 952 706910999 379 48045202 461 425236239 472 826118656 106 507006212 391 140443553 740 166901384 371 53391165 718 786534296 786 705978913 183 516648083 88 585872037 117 130742867 227 996560104 888 928960876 847 924635328 113 932295572 714 491522932 624 614339002 787 508067764 102 877176350 193 146714549 864 530810564 730 223333968 23 813594906 984 306868343 38 637330623 515 916729246 480 880226168 994 595484212 521 653022688 67 111788751 280 940739349 395 557013056 375 55897562 978 786685516 255 998462290 687 970550576 780 306524424 747 813172974 533 98311896 654 586246162 284 95350795 821 25146266 301 164748813 580 822624822 669 359925615 940 139025328 341 81452346 257 898344814 31 33808302 371 396631601 452 661968878 953 162063414 148 529532756 131 267852878 560 422864397 786 90442965 312 449732829 872 502799768 340 895231405 86 833775503 370 411324752 372 613440349 860 59137270 283 332823528 97 465847165 542 184684559 498 478756730 660 898991758 40 203230865 732 25667151 412 427581501 175 901967018 799 377328299 903 936616234 135 866031388 833 78439015 36 533262785 346 364010449 367 165441286 167 590637349 775 696244090 585 571857721 71 879554240 868 728699071 298 793524847 435 778123326 506 735753899 279 114332373 901 172913611 694 622253262 840 921888127 811 62620233 180 11432585 763 238934066 686 371529636 745 731028417 303 695004602 533 545601040 862 397410440 510 6981240 729 557498885 276 481148693 703 44991261 971 625524091 317 577260816 926 38826001 669 802999150 537 612635541 582 917105125 702 648691732 941 397327907 842 540855644 102 601099945 935 96317248 441 573183270 853 897783809 225 935962645 714 503289146 948 453768871 729 686284221 495 981708971 947 845627180 651 20589954 370 868908683 318 87796577 174 889078680 831 790145355 386 133997977 847 537583845 927 545638344 194 961499519 183 575120259 637 794003847 97 240546325 996 453044641 566 752645431 157 150305932 125 910633977 697 741632359 853 844166217 858 213853758 476 630160244 109 557032223 828 496861998 279 677812164 505 624782613 149 562726009 100 625533918 979 235590158 343 825120083 478 987849240 694 183858858 367 628510385 48 405549141 577 62161290 303 50729183 65 17329146 464 142005988 451 674995237 807 313471079 384 894151818 537 67599790 736 326609619 262 171530690 121 739266319 65 825795751 693 439577282 156 246035575 560 230873932 755 372526918 78 868625559 610 93352257 70 776694465 220 857811797 805 388062626 595 445167774 530 940588608 425 992959270 228 514256856 953 996632114 831 282723526 15 354241817 256 18828866 208 804060441 423 324470716 324 644942575 469 287066079 613 277480516 319 238056977 995 392094270 29 774817052 12 880464144 31 908538812 908 283581348 184 828369348 349 526593395 56 344087215 512 426482796 952 532994008 600 674608448 309 829140852 840 152269998 372 638756293 683 769980331 387 569429379 880 742650369 297 888740482 441 388836281 902 470247807 378 251820738 74 308077401 175 836440543 56 267423511 361 444917113 219 540021525 246 42937141 424 662811524 387 578477194 238 464230250 311 879694780 262 672975370 298 799085112 581 476813053 421 191943982 853 693597344 268 286597688 686 490751204 518 263786787 36 471916559 424 878923908 981 38010211 38 921280251 616 848711483 620 86761991 907 233200918 487 142120303 343 225736679 460 699066455 761 780115220 421 123641442 75 354794387 135 529153720 414 812106184 64 775045962 232 867163554 458 3756402 550 622733350 964 377617988 108 198249627 720 76129580 336 927782625 105 275372252 745 823719423 168 156177581 902 585183293 434 390529910 732 967997530 130 421036436 594 604455155 826 889896620 47 442870286 625 191896135 1 354742991 14 468954810 509 921246245 500 109907731 364 71622898 741 820931323 925 970046268 480 985322602 872 943496667 725 778090236 379 794529199 239 796457455 212 85148207 407 278495016 994 521317793 231 973973923 941 558668749 814 561394875 668 235175324 241 732966081 1 833878224 86 920595766 425 616319736 905 88436498 387 780121455 789 54977290 22 639445490 916 575765007 763 791309898 841 602319846 839 171704966 747 192095143 972 416653851 666 405970152 702 174001410 993 47492985 764 712524468 353 595512556 348 367433951 698 301658649 501 494157793 363 762030761 742 949656629 358 782964623 805 730110767 778 173075335 129 732911873 207 38332112 222 552877855 364 390090476 593 952000149 385 318724121 332 715850570 851 844324890 550 304060004 41 549705625 102 60836444 742 685153163 842 272994944 399 660566726 902 894313200 886 809741012 828 839044159 23 505181555 180 107099211 429 852441728 620 375242901 621 330553991 884 700174809 421 51097869 703 518288297 171 839617611 329 872840489 478 843571727 542 113156759 635 101097216 50 315925345 392 847520126 28 659088127 325 909507177 963 369429447 56 395150128 956 254395352 559 617305316 305 582540831 284 855842907 642 686503002 478 818917995 462 342242193 915 564722863 302 389096776 841 547732291 461 887046664 994 564545743 549 873525507 8 3809527 807 375416752 903 545680022 562 838804026 213 442826857 842 180692344 976 946579332 27 890526889 862 940183505 819 209962631 326 811316091 823 921469289 803 956738643 538 685495739 612 26103469 120 178 935 742172755 366 853527360 495 812342761 707 454084600 111 887547919 338 85933617 977 519436274 338 709650710 620 708716281 97 158703508 82 880935626 404 12703562 932 660238150 498 652450086 53 647185592 377 819764739 552 87865669 903 850434557 463 839501842 470 419708886 647 508667937 569 17991712 748 998941470 297 612285963 773 915308834 239 506908370 768 969566848 429 928452888 754 523296122 341 278402722 683 324710228 182 260631797 281 820102 21 140667805 850 435212824 640 261435506 807 118326482 839 750497037 36 130793854 742 853713507 677 345272905 446 685137766 653 754410979 673 299794339 754 854797738 715 426005592 327 358730806 79 792990377 170 454099035 824 264389276 713 492998009 27 296203397 75 844143454 584 45627632 547 426937990 168 544130213 703 394128995 907 241339216 8 282365131 817 237284582 265 366053426 82 562153193 527 439198127 802 959966540 108 536251530 918 562805805 559 604370801 185 36697981 208 95875821 3 515922237 205 803883758 845 309779007 441 29120603 762 513392470 165 18784631 196 378869171 204 429576157 184 14825939 386 59691341 591 877632497 11 747826241 210 109547422 845 267166987 467 511221252 230 216880294 772 536224522 252 903002238 695 652550441 311 776798871 80 318872547 633 141110650 130 860087416 394 299989093 165 448613927 0 814024374 736 555294522 371 670099190 577 185126328 22 465439277 303 708458105 756 308227529 667 763991346 546 255533889 492 276440515 210 505999212 898 881363784 475 403228246 877 642543105 365 37367675 993 435802450 811 164697864 776 677899699 178 179538780 436 14258006 7 290241648 286 11842590 231 303021082 486 227231014 785 491385949 348 940389108 857 461471578 812 720155544 264 930082057 373 439698739 577 715950802 229 79373391 319 592721249 934 746077420 750 468757514 633 558800691 267 991563285 282 982087374 195 139487449 555 795118449 448 242125653 776 448283913 357 132202481 685 500307113 775 767657785 460 615656621 669 130585409 78 253707055 145 730675739 790 366477463 161 24766742 947 648546910 382 564542280 798 900278091 561 66873314 484 67154369 37 618824123 358 836822502 486 355803432 557 965789620 110 859654879 375 837611000 970 987950885 540 31101846 813 776417149 333 920497974 912 452124107 519 990159185 542 325875993 401 392643972 574 77253144 382 196896563 325 181198870 499 819347055 995 911659175 665 39558835 510 686327215 844 561685442 860 307630484 428 678095914 76 575758423 613 502018364 933 6503789 527 507068050 328 265024418 988 572400349 180 487657838 785 289389437 814 691919530 314 228088434 77 828940931 834 479049020 982 447760366 717 278289648 94 766021148 768 122761981 362 408487065 293 791659155 108 434037449 170 693287259 63 928374770 692 78494673 621 561524514 295 841308682 677 341518854 593 607823099 117 371974645 138 727937490 650 922936654 775 837888309 146 179340585 896 646163855 465 319581105 658 164640014 94 509651082 841 456480321 484 186562498 441 977674858 880 368868404 955 674797506 698 971973306 580 604512589 758 840952993 173 973325323 716 544753873 748 233045198 46 433998153 80 341329862 612 283661474 536 643788825 169 399635028 502 424291888 102 496280699 491 120514027 385 771035692 373 194200315 454 578694284 296 573348197 996 341891355 818 744030321 421 425340640 414 597419814 583 791222697 514 748487294 70 728226746 425 724394640 839 3964953 359 74392668 854 3240393 110 358275378 664 520776784 979 835927685 713 568512629 618 277675976 144 929558896 345 459233850 240 244599737 902 690987655 89 337600352 850 333652422 721 979631760 899 406562688 304 158269986 862 670283547 601 907484754 238 980977141 804 835492531 529 930662010 396 680249798 855 287846656 759 586051995 278 43963905 33 35936217 825 240528657 434 890963986 681 406926288 391 987534674 204 618397858 786 588670879 167 349968403 474 422979410 724 373641706 928 676693984 301 481222811 514 358717974 910 243107126 604 137365188 242 508876933 422 124281998 728 889997219 496 914061453 921 19647943 748 171986049 888 563952179 880 511912454 971 446284769 606 570218802 536 300198666 488 809757472 855 491890118 536 524867341 631 950018231 923 856926192 868 141748501 933 637659466 654 417954336 604 133945436 183 335113109 2 468222731 561 723854925 81 811494347 316 599887110 691 421571623 658 871923666 166 97342480 925 302481065 3 229486028 292 817044991 983 167704384 802 306204175 727 733733336 778 169326728 160 91993178 38 222592218 536 538636451 843 652060369 478 223796333 860 94854128 232 982918934 273 772098070 486 975192551 678 887791960 598 190065394 360 729452065 212 353699036 537 927773689 395 482572798 529 905405973 858 804754533 548 521928315 902 912561950 414 677961445 72 260488123 226 952123758 840 701878967 416 692464325 583 240644667 875 767653131 396 769861988 669 790812839 552 228516018 389 776974242 866 483078162 680 88666661 692 839151728 283 882710271 491 428217193 488 689770695 473 985552527 266 983949800 65 638069001 319 51034159 624 45748921 156 181005023 161 710742279 464 835322123 369 277765927 963 42157555 216 862752833 249 629292053 647 255734643 320 432599836 689 547380677 459 95176911 922 16822130 660 413746124 335 904457308 959 429893282 261 532164688 664 257819420 720 829688653 863 23031321 936 258903418 544 552334828 871 271251290 940 146458552 141 961347601 649 408913831 566 131455477 639 628587276 912 765482074 939 4338273 674 166665994 995 412772504 763 74299160 243 371841465 725 11977840 975 353141977 370 250234120 255 834883736 66 585710488 434 623251328 130 602439940 105 570324909 788 849690776 928 470680901 86 249546136 942 435819126 178 105234437 58 14545099 892 883671055 142 735284498 548 465973410 36 192755104 352 827330911 414 663662329 513 783841320 292 626036191 427 240340516 227 358365620 1 695495629 282 982140152 589 579242295 754 710709301 657 917527583 547 441073798 299 997381404 647 80815404 958 653976335 120 206975957 926 874676749 925 992216466 286 433953369 888 774472112 850 505532594 347 129347679 821 810662821 441 689171424 474 776006188 25 693000127 288 549264876 110 733267051 791 462591817 943 397616087 247 514326647 565 77251652 820 536248487 605 985863388 956 376894626 956 59970474 8 932016140 817 818612128 528 162565315 3 438587927 574 35533454 717 254700874 728 240061552 163 538218881 903 111650968 804 848971093 844 931667523 484 898388172 530 293351386 728 553485790 364 494661984 598 319932107 41 310127789 352 80834462 66 688358485 495 222866426 166 253346973 940 553514479 511 834916346 99 807631550 435 329696174 725 864927788 990 760140375 214 897396067 390 149358779 473 740977745 903 416556963 36 965345874 930 577022753 626 116377670 832 838023889 575 868243705 307 608720482 391 10682281 913 989347225 789 920794615 830 729937962 865 687775079 992 385377215 986 2538943 406 427990190 323 173250360 925 673751830 837 375057693 521 992869564 802 553337108 518 693399364 697 207814179 473 461380319 0 910652032 933 172650768 521 465720588 969 592558779 183 982246397 522 562683532 929 842941390 110 371620440 462 220616728 177 497529838 592 654277726 66 666380422 356 773823928 556 172157040 55 293959857 316 201254639 402 56125287 254 444819515 337 19772145 324 125590571 340 329984149 47 424754675 605 442290967 239 490789849 260 783266323 985 754095507 168 283234815 339 728935962 50 278144855 932 443152499 246 922184358 118 718249996 672 679868628 283 101387932 274 555033164 438 559881169 52 451604431 234 430752738 462 351749033 215 734514007 470 107395956 694 190939888 879 924841630 996 510969701 57 102148725 995 514984387 660 14384225 623 134114630 884 484699268 958 449030172 149 811893060 788 844522453 131 346211040 893 368151513 712 468223641 573 225858858 431 57509440 757 783787123 885 921092138 496 755620469 512 426595646 711 732388661 861 353300466 17 127719822 897 576263460 311 936200947 224 363700163 371 490196758 260 623392605 707 498925333 742 102059739 249 262945595 996 669454494 458 634089784 963 712934612 682 789350182 489 100137247 802 414024392 576 823788791 664 716918489 655 675148905 695 339514024 206 265549036 69 658062783 849 568684611 436 136112346 836 653753190 296 165672497 23 881180827 534 297906138 256 519181906 837 442366685 158 378910565 523 760964867 823 910122228 373 208879014 720 606460877 300 116387402 454 804644434 713 757914084 756 258683947 344 39633797 496 841403884 597 967092115 135 909737869 95 671209369 789 331218244 36 499682018 689 71670200 735 629296919 874 76606361 62 657054 485 633617193 255 87356008 862 819122015 932 238401332 169 817566466 393 331079610 625 257052378 617 542472751 612 442585704 638 192879048 921 367083654 125 618298932 450 573449370 827 374888807 121 741065535 411 663591281 486 643100346 289 199287007 483 490382969 709 453032021 45 931492938 991 211732773 627 294037189 313 521543772 636 410585966 772 211588740 642 669680154 898 650094409 634 862123203 491 718255305 440 199671443 437 173195685 935 651739189 723 291203068 139 205753708 493 538839887 688 844106683 809 703622884 891 914457551 291 919578757 739 151456598 342 332815089 395 518068407 129 255678935 557 348340306 897 23414353 495 105986104 659 781967833 113 435832138 557 71054077 20 592384231 847 590751692 89 866812552 213 236128790 845 802913592 457 771350722 812 94847418 74 801785583 429 920318367 361 383699852 570 543399830 860 726052559 622 335108233 851 915087314 143 723921289 795 767405312 345 451324580 22 325346475 512 671239756 466 360505136 872 723505005 632 35242087 711 508705550 190 981729907 981 392533398 405 612815770 896 240477991 91 418016373 98 690026283 188 396961136 606 917136174 213 197507291 703 849258884 974 233341575 366 937403087 7 283802258 223 84165789 445 447470575 969 49326318 868 647905220 655 672884330 368 494745599 710 799920788 809 778298439 533 991940941 298 190256625 521 115849762 185 872358730 496 225263861 263 837339474 62 757099553 754 794226104 556 488217806 898 270408788 284 831744285 134 45325137 335 254371189 785 465939125 473 958607929 233 397405667 619 297294750 295 436091608 136 694609774 248 656848111 686 362960876 580 292524061 188 379560471 991 16355870 747 766917721 102 342710741 674 721502076 358 914813610 106 645643410 905 457668877 440 72598996 0 767965813 267 721966120 586 55966791 426 16876901 583 874056837 749 581066218 909 330355982 831 64233455 346 189330741 248 71203524 872 873059434 345 412078380 932 352923715 659 619129556 107 8531552 347 526143955 171 813149257 968 602264388 722 825597615 659 627874897 908 943941370 754 675867963 661 994432091 682 924556503 884 525627694 706 158352797 116 856576557 292 620539071 393 171496468 993 540005934 498 950628596 73 223432516 953 853125016 14 664729193 120 433273655 70 187540786 552 51164328 393 377295539 495 2145459 241 669870208 448 38373820 397 619738833 127 902893946 857 150616135 448 272603333 474 852767905 428 248817475 428 275745336 954 537053523 174 92746868 199 112425116 231 480413756 968 58473159 696 824420024 885 334866977 337 107060779 120 359198660 155 864665767 63 680473286 81 365932882 857 210003194 552 354268914 552 718673351 864 437960792 472 192315769 117 672884799 191 728766334 722 350529472 636 130822524 456 896865952 404 713447716 654 714451714 708 643286781 402 621825954 954 189958640 259 37062785 491 406240251 885 970616354 716 922772365 493 756570530 490 977473103 178 440501123 603 742447913 534 212875165 239 711094657 848 929239431 492 715673609 572 285785837 178 397885046 161 699860611 544 284667646 237 844338043 626 546700752 755 771319307 790 460762590 204 485328186 516 624602119 800 854337950 730 830251808 934 682615109 632 461687142 349 34609389 540 827128239 632 498901672 863 949991031 498 127318399 435 533147828 502 811703611 810 686471321 320 580709576 814 104643940 9 409753753 302 289438371 258 279082238 375 813285690 612 345047295 208 603972463 552 329513777 813 781181065 517 602067787 328 727829900 319 25286528 356 187828877 836 863891926 666 122078416 770 484038430 835 390742198 669 750499381 270 507919568 738 326529200 88 72158553 501 405495429 287 383764090 87 730651530 295 301849468 992 594381073 847 797102940 725 735572945 200 533984571 291 297838329 13 578980652 204 157898360 536 631777885 996 450473812 83 849289823 617 942340203 783 570344922 207 836308960 292 884320911 793 969806699 739 308823144 822 830580815 81 161612534 260 235643356 67 100024437 780 630377417 821 498473116 812 40695573 62 443475623 702 167612429 402 271141556 762 103273090 794 326028073 714 988873365 436 239416498 292 547686872 725 451881410 983 896744570 156 911543769 823 375788485 973 903290976 578 86400860 513 628285110 869 169781017 667 453518420 601 140600055 375 118080043 967 892853626 946 942458406 969 119900735 183 304130085 93 114734114 594 402087667 203 476054522 155 17775879 687 913609617 495 675512043 937 588891412 333 306023469 155 48055070 766 690576972 427 997441515 785 219694593 337 785543969 512 200427070 810 632537092 415 799614712 690 235192018 456 749247505 905 424122242 829 777309934 91 811378644 570 693570974 547 223829044 247 485351988 69 518627979 821 448375342 948 279750249 475 767440690 419 572653705 716 85004529 502 9591902 266 782589310 833 697111705 934 387160018 481 953647802 562 746632943 46 974513371 655 796398811 995 787851042 230 917981902 393 690457301 502 635353158 360 539114396 978 193014926 297 769979112 332 609805916 682 155255172 928 300104449 408 66353092 199 166691801 128 877510077 846 142384038 443 760446739 815 690836425 597 552086130 587 883224131 348 339869165 764 310686696 59 261809165 615 731677917 965 938633031 31 916591162 709 63991780 441 301586304 84 785698914 446 202212501 430 796527570 869 915839607 824 920048471 726 711187458 89 39195010 356 806085085 637 959630193 292 605594641 198 446246825 640 753055240 850 845477075 477 164634334 64 651656967 103 502675886 736 751447112 486 61202975 805 540378857 586 165046617 678 492566821 852 418433180 295 857805910 769 20513805 501 864721249 820 282700457 193 319525068 551 602986055 296 473259048 623 921516823 743 343745216 186 129283400 340 847838903 326 785104393 215 530401068 670 823574611 507 894844798 836 549055698 475 168847762 905 454920035 807 19294013 562 167518246 947 400056027 591 612583820 21 104962432 689 788591648 379 625045882 533 938987145 834 79429665 484 494353597 380 192579533 770 639611455 983 121529520 611 632024484 497 571027376 226 306852969 464 179205749 148 462736535 503 197672102 955 852834659 997 575385347 274 383758274 993 193088182 688 401310879 142 12567001 544 438091841 943 890654827 415 865034123 799 837214510 639 680477789 276 3608535 879 644755771 1 493885587 312 603478556 502 677674099 950 35801299 144 858145545 558 693781286 101 544616404 457 571657671 789 731185819 629 379135394 760 410729900 305 983711205 612 338286502 703 517688660 642 714646260 252 841513465 446 924054739 821 60192045 592 217277865 406 4718710 481 131094494 356 433810940 311 602738096 925 290526909 94 852093307 159 873439312 885 567768499 249 750953482 232 696616991 225 592436212 922 219670238 152 410037024 367 732622392 749 148915063 30 161491485 383 550339378 260 893072178 597 670253885 853 229697937 150 84335621 528 602585190 857 653269711 216 753829408 637 707186290 394 836840491 163 756715400 556 904459779 126 181725130 368 62875103 402 647476627 774 921958050 279 931044634 828 724667595 458 874622541 246 599291104 696 24500189 455 338452355 562 921544347 779 234204190 151 499205827 244 540451103 663 159762378 785 715339144 144 240010374 68 396996259 710 447143444 13 800441952 544 328843215 413 995782275 604 135667454 617 159986186 737 478818792 484 325611770 290 285071411 239 335164442 506 701334829 411 43559952 757 144044088 941 92338316 386 666012317 546 595343999 931 646177911 390 673064833 203 867098375 884 266409705 294 411487660 903 608911348 432 94093932 836 353553985 71 957651541 593 26331503 826 497046460 335 9570748 571 694116408 942 493189105 834 718429817 41 840719182 630 971613432 407 565109621 171 888691035 593 865043014 904 626827612 193 794453644 745 811632666 817 958448376 704 619138162 737 226351842 502 380214097 231 740097361 279 243749014 499 710908397 74 183229072 993 662196919 675 822593104 299 552589865 552 887531336 449 856614616 282 506994016 672 639816223 697 393428670 661 940930199 593 633942110 941 210336787 365 143318041 831 698979058 580 85609991 909 390339033 545 946591323 367 663562585 40 980532819 933 736793561 884 90327763 946 405651175 334 903632127 371 481570414 653 808619115 955 569977183 593 269687230 462 983321441 383 713202452 454 732998363 351 414425073 750 439464132 219 487693206 307 407629274 689 352733816 119 507211560 705 563142920 541 146851400 530 121164170 645 928229517 946 162811142 638 92958109 698 145289550 385 162990294 634 473403715 684 376905584 288 760776566 633 749494289 788 91807467 621 717803584 272 455924506 17 107867372 988 20407651 756 104142432 702 600963542 419 376997890 665 150068823 29 737644286 883 716964915 520 208567347 241 354932413 445 489065375 943 666220612 461 606014623 750 582398192 518 462888237 65 681504034 111 139933604 955 719752190 477 400064020 369 801114134 652 60215954 139 833869047 863 599745366 741 546788578 921 810923900 234 763318275 514 142845388 8 745107096 9 991124534 230 466768908 856 252691805 938 969232551 106 738583366 240 726661938 539 440174660 927 463383735 74 130632081 409 452407359 817 96799925 354 628061369 711 658358515 33 498498515 545 658937645 368 427351536 598 92613044 778 501947460 322 765686620 574 841925140 889 666469884 424 701920642 675 377945425 383 535735705 5 191354662 252 734170349 276 445545144 871 139165018 872 676328535 554 805208871 746 257926513 525 629178627 237 438262669 522 636032539 452 606229718 154 716972432 421 101925637 386 951395901 493 87697235 725 268342020 66 210269237 378 953845428 480 288967799 771 676769889 366 595332336 305 700659425 422 287714320 247 330078626 395 145344016 447 45935863 576 612074058 420 977275340 740 201518494 930 337417470 356 616817759 22 991397363 803 13699117 567 764389422 129 556670489 999 505446766 49 360061003 781 808614290 384 989015096 610 675216625 815 459124965 395 871659854 823 378352042 249 954073380 592 766279895 299 349756835 300 246863197 176 324015943 503 278422886 748 832804491 503 780316266 813 484541783 986 278328484 921 516096069 479 570410806 896 982211141 194 992888403 703 354162025 69 749329965 120 213338168 972 845890430 350 62078672 858 572536942 402 677105236 382 761023934 287 791010619 595 301208142 673 406110449 653 948889674 778 232988580 489 998374186 731 497723307 32 182133364 411 869650592 100 399585825 472 978699957 800 517140506 87 366759102 144 186339989 578 960972847 566 27002805 968 29194110 45 660612284 528 663563163 593 936474056 878 189346998 955 182966892 621 470108851 846 908528403 434 957518575 20 331901466 172 411348198 49 395764613 626 746671205 865 639486437 161 602489513 642 858175357 253 477838424 204 377853687 41 466512786 315 495683892 870 316637057 414 36820817 468 358327559 347 839780367 45 535433009 492 214241184 869 806049926 828 998660311 35 345487363 11 749570476 765 536291137 932 23065063 687 826846303 297 683194455 694 169403127 749 543725929 587 349800915 843 215543806 972 542618246 118 413099169 906 770130240 98 744633329 883 854637012 359 749107617 693 190520308 188 904543321 705 232461445 89 511008887 686 578371509 258 660745592 776 897873320 254 3273491 758 235494939 904 456774534 120 806936031 942 645351664 925 562783765 288 568487196 477 708191894 317 981533518 523 967383722 599 735450235 293 139897266 294 643283436 771 479457902 892 901540618 561 201148114 635 829520476 656 573610271 649 280855168 182 205547822 311 844064644 306 494607601 530 77282547 722 567048427 636 201082397 923 891690538 938 25627672 638 539043363 812 288692948 815 974123193 922 172485796 494 828597458 957 103089616 15 189499062 552 271403114 101 405156722 52 803732505 779 612454958 383 502257606 138 548156332 64 809998264 303 957853214 343 3648180 355 777893835 156 509109047 836 224700163 673 29168608 507 414652576 908 419845002 454 809794966 355 313418870 551 190110335 894 400817024 517 123024347 355 495347250 597 797079054 132 662596108 733 718000998 809 879888939 394 289521362 357 750657334 123 319445421 576 334374812 30 185015296 50 878756138 705 943051169 461 182226296 754 138092179 570 549969030 889 764959565 752 683851316 990 203973208 975 625673133 245 942057937 604 326596616 240 566577153 246 434618008 565 44406550 983 935305630 776 70108670 844 471554368 5 204668547 274 848001053 604 217035520 730 522804127 583 797687833 486 949714018 992 988494002 340 834585489 826 634340926 636 556784163 413 838296813 818 98174967 372 112905537 2 185909031 344 749013334 133 360920556 873 716809710 867 479913975 799 820160721 243 473544527 891 239102842 16 330483273 874 912386822 962 816924103 508 729227595 233 812679528 701 436538783 934 822236172 622 221087448 773 734350225 671 302002058 386 635370503 290 922117472 56 445229876 719 124927852 42 819051357 685 942775325 254 661169062 249 420331818 164 1541521 675 181644425 145 170116451 64 955995978 117 860747267 304 846751071 906 687433384 610 871782993 287 825703123 731 914854563 26 163108340 917 9849633 272 467196127 569 697750187 688 614780256 456 522733845 406 534281631 485 649244954 870 556956617 403 166068248 287 538746644 216 665246882 731 593245124 24 874782588 899 905737484 501 851219714 714 918392337 308 958949112 99 494276985 725 306036959 381 9814308 0 442267946 172 147719510 772 908111877 238 914555393 617 199788163 99 737311242 387 217712728 414 953040515 310 39406905 806 423017361 47 226716228 179 441079876 956 613014327 248 426728167 280 390390996 478 538372150 789 970360647 891 702028811 835 340665083 944 623390624 59 359727906 657 136580413 239 404098422 251 804789072 530 804251185 785 199188224 336 782930966 800 889096669 76 185147635 998 921775403 772 5184441 315 55643226 418 451128675 327 956825435 887 109474577 977 655948379 420 946729080 827 315749482 320 8847227 757 632463231 543 774083080 46 646530792 562 710751590 851 834593372 688 74546865 302 328127011 84 235132095 746 119412758 834 935762861 914 341438984 266 874035799 216 675899293 871 755175677 326 745068253 438 84534490 756 815633552 891 336001357 19 272984056 248 496040491 226 155991982 961 56794932 630 627072209 800 728329920 622 462520740 597 685553327 194 393420887 761 71102757 269 73740541 843 686636930 125 843114638 8 480471339 698 364746573 510 424056802 921 996337756 158 664355303 351 467445500 179 474661853 221 126737034 532 580829197 699 208580840 268 885238886 531 58981320 704 942531205 679 85117107 991 351735388 922 136170129 377 208160947 824 428092376 476 302494329 173 355545804 899 601432543 175 290030569 936 442329470 56 697608046 784 5801885 323 788940115 261 447627995 213 927731702 741 827166620 458 13354844 997 668729761 130 585056753 831 647218558 198 232671793 442 293841327 508 939944040 872 91799586 767 175674357 451 606328880 761 723845395 181 558228990 296 935414543 481 453551303 118 913591914 583 7946123 432 300332775 473 156694003 921 393143192 450 491212780 588 891385267 339 133012497 22 434854218 172 835271452 20 997789606 643 640760852 207 875512810 819 85292596 506 507006922 254 648697346 309 49664613 232 797090211 179 842836899 91 156488196 1 265507283 575 137314547 163 543135165 44 665871425 533 628577501 885 614057411 705 939168628 673 969914 774 213545764 955 305830847 837 128553179 655 239423642 993 935430976 383 708508310 233 186472936 860 105323694 964 739670743 639 186474879 370 288731550 49 347202247 750 800070103 392 129150744 584 289441919 346 743643566 153 891037967 943 398179591 48 308210494 88 602813654 526 171810983 845 886624099 827 750458025 786 252552497 966 837891317 5 150925211 947 911086238 330 914050281 248 609137689 782 621336060 712 500705626 121 823872080 542 96156544 684 37215328 772 917936759 832 359502774 127 341725782 522 960241427 532 238013374 315 315025357 971 530465122 967 153091723 103 115927619 677 750421715 24 921356143 657 538153993 331 692624384 98 502871884 122 419866342 257 135270102 691 560770356 286 211024320 181 74082236 595 807258281 48 530546291 937 910654560 99 889473929 97 341336452 548 279863680 527 974138486 524 772800567 789 49996275 649 812065328 522 489507023 956 36976189 528 662174849 565 83896703 402 710070703 90 978118887 512 702086266 262 797990526 526 439058447 659 247738515 729 658256330 748 398689348 273 617148311 437 898744558 905 729968945 514 877749432 164 478076256 972 713910697 315 291975955 496 453648467 411 910262743 561 783034021 472 107128932 768 936012443 182 143750056 391 145637833 442 173750028 289 654749091 377 821399033 236 386562787 730 137842147 755 407873254 911 284861781 359 356727057 305 486565744 330 478592256 508 712086517 320 780724345 835 758800851 640 559250291 520 846094461 484 283799411 819 991130209 816 943100930 115 321166064 630 530428395 573 222939560 908 82579859 231 747222276 760 390663120 272 282979084 214 86185400 489 193698318 709 642203680 437 545200046 140 34608821 976 669453694 710 209188131 517 821945476 673 320099210 980 202086271 194 512296667 88 560363318 690 866902498 269 537934373 735 294205339 782 76593121 996 835252711 423 318855962 534 148360521 56 286133489 601 406666789 411 39464462 43 769104033 322 691035952 301 233396455 190 32607660 126 962697825 167 409237810 223 519324745 245 638641273 13 326040416 780 256225300 160 171607233 682 719183639 395 471845966 588 692718476 699 339277701 283 90508400 491 56375839 802 444960137 147 307378978 610 896741710 592 457735702 977 512872835 797 889016483 219 535575265 610 225894482 462 555302421 705 392035740 514 606021574 221 362105705 90 467516943 463 521701606 522 455140383 962 977776453 895 510168212 223 795350117 638 768809268 35 985451501 534 46443409 466 120998128 105 267787969 200 845814351 930 225576931 309 166670943 140 277013315 633 425206543 114 57469779 226 721271073 365 333859535 824 819949980 141 912630431 965 847297824 351 265465784 466 320722736 263 223258912 391 851896966 656 759378615 374 936189453 111 806395844 597 530264572 395 82239905 575 650509091 102 862532196 848 161968647 804 51479402 151 971220578 258 799758343 664 150397755 132 424014171 162 879879667 508 841350419 512 451258987 27 226665238 35 541901235 766 488069195 134 916626533 978 888613371 333 508761854 359 67101618 44 448173931 673 417770853 106 804510449 511 139745885 622 330909603 757 187908660 542 741179983 498 346433425 37 267873105 160 584473690 121 154495539 15 692112817 939 556287948 577 109753455 686 89516060 382 275490227 671 365739304 88 410718894 711 795122608 467 605084594 175 719931030 947 741078314 875 689536525 964 624402819 902 82789121 230 690619024 605 17738162 198 840522551 660 679774218 835 155544164 607 910011194 915 548781401 30 622903303 872 240346720 774 377548899 541 223183669 892 135309837 27 630992011 656 425091439 622 728941690 251 856321008 410 833895313 318 74790460 87 842432918 51 986611907 698 854244864 689 987014248 100 902864559 660 669527472 912 153143595 481 125698776 15 710067382 195 994986967 108 33797090 716 52029859 832 10468932 233 759335247 684 541384340 63 276013187 215 166138170 48 896694235 309 26332710 1000 518990340 849 557937320 937 389133567 125 553669177 764 439256269 485 91441506 572 317554389 949 595697946 182 102269876 679 677052712 402 819759033 410 775055030 986 89804876 186 40364697 260 673546113 622 84822259 901 209459249 748 920407113 446 472846949 907 568158703 707 104423421 692 365794961 185 723456353 350 624288495 224 331725912 297 779822169 599 453687524 437 755494171 543 372139392 240 418663369 129 808945181 146 638850286 96 849303040 765 928829729 958 777121966 86 930263011 127 344685741 316 738754524 207 583004268 72 724975617 538 572893954 588 45200236 111 404473556 208 635211489 293 622759295 19 583555617 991 785925879 99 83083625 132 713979391 110 60665653 601 437304862 330 923396033 414 483368382 305 56187524 100 199329837 46 959209414 564 102714183 1 831660314 822 532844010 927 709708078 313 221588810 837 545074281 121 691261813 503 479148141 187 314598493 928 412685826 417 750518474 259 947498535 753 958416138 34 618500327 51 755189885 845 827140531 395 398125168 302 697083307 698 337345448 917 65230508 761 636186042 452 880165379 282 667759659 142 239629990 779 533470399 93 484705226 184 279117580 802 963282133 552 191751922 768 90727689 190 178361799 348 453777997 311 655280494 13 581460148 303 876162623 252 227938074 712 726358157 328 68716634 968 131199679 273 60034280 11 57154451 888 467782840 624 906444690 869 55740210 585 268099117 87 881795608 847 160714627 94 922475140 414 816614748 21 82666256 181 93346628 58 2260430 627 314505133 624 771919433 442 970126568 286 375082 661 425814244 900 167474220 174 662752098 186 806489193 679 406749170 42 702053213 294 350080764 598 771278410 789 422367479 342 860484899 418 39081222 109 312610449 694 775394223 786 362671844 205 949034890 833 599278522 505 327890918 260 474097627 628 792365012 554 561400417 269 834867814 345 253447866 209 264815240 60 237373879 934 321633623 151 227964718 641 186595587 296 5267045 631 322136086 35 515666980 562 465499334 501 417950918 488 981033908 702 935859468 771 503104400 705 717281437 479 223793505 756 917768577 677 942140621 199 739087816 156 525926837 963 739064654 166 833849670 753 578784041 120 256936571 354 604786887 208 85307956 1000 718573869 356 397047018 723 896948701 194 157100345 849 656262582 825 648366233 473 444143871 812 714978552 957 118419511 996 626528818 497 811978329 843 329025981 893 535464236 478 768986429 663 694392985 933 320209238 411 840006860 91 383231137 22 259817177 126 603452486 81 413478012 157 598520302 801 293642977 348 38429297 383 376230417 478 571489030 668 636659230 588 392257688 154 528541431 464 393442551 314 637545392 622 571304689 22 991618964 631 633766857 564 28838041 115 296919757 585 444076719 311 356767901 608 223578858 681 681015042 206 723062323 902 470069643 965 672013723 273 920205905 503 414175619 218 967009639 702 636096656 170 331149201 505 345192162 682 983713253 302 735520565 523 474120030 478 452350800 443 105750627 49 914148054 895 780974813 496 624498343 760 552036685 102 626064714 255 492487330 400 249146462 560 210118695 667 384687495 791 952382187 474 106749611 591 879582756 258 791583899 309 852998879 908 199882087 417 367393738 888 846776139 917 580198763 366 760730648 899 300124260 938 645982857 603 292313441 966 99477879 874 226410399 417 246227023 627 458071845 27 932794749 618 669333039 305 94193108 721 422302242 18 359131858 621 436541597 596 285326827 51 284803466 969 347227582 996 176208442 838 647530206 378 255303926 422 868961139 972 194532884 588 340698955 178 210845164 500 673548499 90 736383977 613 908523212 751 222750692 282 298685330 859 281174630 131 341041216 380 710636647 227 462062275 123 837873110 58 49966233 937 45224100 608 640098069 295 282672169 478 630281132 306 546682159 869 409909249 3 516299637 731 269479524 558 637780574 27 918902401 694 152184506 720 815795972 538 939583831 235 795173897 945 890009436 882 275828184 839 573493339 874 954209844 205 632700900 805 324934289 732 794835427 912 798729483 919 905977300 630 158238176 365 640922440 455 174102221 816 35033835 46 856857474 602 986343120 602 513050642 357 155466250 826 561326123 460 231273756 54 838117949 979 391688729 721 422466770 703 984644613 879 320284714 554 600374273 775 530735010 694 502949699 462 218990190 482 243452388 433 437020824 638 484688329 629 693569325 395 872800334 817 989752224 115 843514796 886 738615460 732 469427396 953 828179245 465 221324775 867 922952036 910 358993602 95 32586372 566 471591705 120 379331019 176 831810265 672 395386232 0 977357214 862 433815269 321 767423525 635 83512106 838 235035250 129 861104433 696 117242273 524 91440962 63 554420829 435 100661551 463 771844052 691 760562778 278 197985085 69 962593189 688 446822400 622 919661494 785 214585721 186 698421189 641 154061298 634 570874135 928 39711250 555 68450694 902 60336535 810 784466846 99 929064359 929 517099734 413 848280536 660 249871829 86 527357010 816 400657602 342 55919269 457 627263118 219 751234144 887 653291844 442 796324845 934 358862417 20 35927825 69 396549497 427 141983483 168 415758901 524 167968360 407 140672812 397 947785284 181 429697113 508 58381781 216 75352697 737 943826661 379 969039846 499 254974341 958 281460816 522 254368950 182 819314362 565 938508382 409 422823031 757 189794539 629 445795556 328 193954670 582 843336915 835 952620689 410 165279126 7 683926508 385 857693624 638 182073266 232 930256639 665 181977924 411 597137913 12 869166034 386 712941136 724 918032491 390 246066614 446 750627440 26 605100997 743 76013639 186 459388031 368 917349371 948 851679886 148 351814266 800 391855160 16 949274768 781 540456807 513 428775915 3 101877425 475 638819813 431 732517598 209 355842434 921 841883834 838 144931853 654 288209121 33 306824602 362 527827342 173 476662918 511 583816619 224 427961962 379 150427709 540 723573312 445 512036911 977 762213537 636 992063556 989 177075890 825 262619589 293 947564060 144 608676480 88 373612350 281 40349835 221 58335621 149 429173051 272 730338271 429 970700404 576 288691251 518 595687163 371 357313537 243 323680011 923 725734000 513 682641413 999 591163431 217 532563280 756 487183973 598 208231144 651 22751875 307 726241583 71 441258045 489 982746951 498 546455781 121 621474128 32 473545356 15 822339390 909 513141092 838 446288829 198 445788 809 316622866 287 945987016 461 431632098 52 862536310 279 582876739 673 53627854 717 144812331 199 861312506 179 125474180 410 200697277 889 909936975 24 666887019 221 13314033 839 902634039 225 524048018 333 65327073 761 255455349 115 799110957 94 818540604 459 632357854 238 484711125 321 567314626 986 975925098 798 116080908 922 532347277 441 534956714 791 89692023 601 841599794 1 465410820 174 932495654 780 860745810 361 477890779 199 967800037 424 242434987 821 215291558 995 156518299 188 732700582 147 949800511 718 649667038 978 883401759 110 626621188 21 707401399 616 9496769 966 715344944 0 905400255 228 122000388 475 593182064 540 671636491 708 824021352 979 768798915 21 766254899 865 786630840 67 940655392 170 593999882 647 188272631 326 295317308 886 181276605 757 305838147 311 991089487 385 913056860 323 392943399 378 964501913 484 384082258 351 927275392 888 460438205 466 552564881 136 387353841 929 856101367 313 5591740 451 275489912 528 448070789 55 727438730 902 89813860 476 883919701 787 692447172 984 653346255 669 861110956 380 463310632 537 790863501 98 281063303 169 986237365 367 456574835 196 280511277 129 639214085 301 38869680 869 276418216 564 437589784 73 732143608 483 870818466 737 789220448 475 783709562 691 598133106 34 85702373 623 158085602 85 437582507 262 594251985 653 479085505 523 849143786 836 470032533 564 722673969 91 572269683 85 491696890 273 166055739 89 838402948 313 659754843 246 934763740 637 395955416 638 226543315 933 703015215 858 891835943 785 595468175 974 766791500 144 726499381 32 56259840 898 929562463 132 545525676 211 950294370 147 681645940 47 194403621 114 564371138 775 367370151 655 726181627 845 112144596 595 524711725 477 871148398 975 489287901 742 21891308 28 566810376 417 741843731 843 770563084 399 245038139 297 31565429 688 980828612 913 893518506 221 402606683 107 553723581 404 357545715 29 115272082 783 804012330 66 150200958 944 653443734 465 741366980 5 405291313 294 145843068 248 648473672 330 139937561 67 322466174 658 764881784 970 558737301 227 220594831 893 827631890 48 943384225 40 562774192 270 195438651 592 52243105 189 56768949 507 518064707 761 486892916 929 978908947 453 768027614 113 213350902 158 864417822 489 201589496 222 229443179 565 922487678 909 540075096 273 45987821 118 145797882 371 862974048 503 103379965 153 131171724 711 681954878 850 141156199 133 42958302 488 709219114 421 383048217 848 993176642 582 120495267 363 300367923 173 643802049 27 242103409 395 471912040 878 133709567 245 608367968 32 82117655 144 150784300 390 517947240 840 651891818 450 224772419 104 276855966 862 577667369 824 110844594 652 409626642 114 781576060 36 537845255 311 350680830 338 530836684 893 513132590 59 392150365 970 889184800 234 284706388 885 867368760 349 305932102 404 575028465 406 990592317 955 153206136 96 511027344 362 744877104 145 552278264 260 105722486 142 545116840 348 997162494 454 482842880 655 954562988 32 100535761 929 881743400 984 706196368 59 918663331 659 492767371 915 498739351 704 784956881 168 428308 342 778584057 873 343786956 757 27265026 466 681174398 146 6872148 203 572154256 606 39770782 821 90113833 807 297645903 71 513712473 596 558734992 993 332034932 704 116442225 970 826862388 336 233893354 94 9504202 97 487776017 412 388356648 496 172456540 516 929111587 184 744831215 479 935538455 767 353583497 307 428204974 245 956103812 933 24975993 143 339753287 750 293133234 118 810466096 5 385790653 556 407730903 931 329656013 26 216726892 280 215378550 397 714320374 688 445349900 972 99520068 970 833458935 265 907655172 466 771862134 781 280197181 612 116206830 611 888022798 852 607276213 334 304650161 646 594154944 811 745301713 782 336435447 128 458382673 749 745011813 552 513502364 967 650381773 538 102499851 88 529285826 375 788507324 583 182435913 497 26443109 586 436988711 563 374596086 815 920191374 283 255068319 349 581039838 785 953336373 785 347185520 874 464335602 284 730604701 978 815573721 832 147504191 517 326148101 105 534125818 248 936396846 815 700004983 614 124531458 605 640386896 508 302632717 237 414062873 569 769583747 728 168618066 19 384841228 642 41679263 796 560021080 346 394189997 804 924703042 30 593666123 506 258958264 250 981039279 94 646668073 933 511520240 848 710631457 192 972481424 441 383727069 68 354910226 550 489820036 898 555693320 331 881196915 757 463341376 511 694544894 576 944757890 0 442246943 395 776188720 471 706970676 845 965002818 41 326653522 668 237460505 870 196173855 309 129492736 658 146446658 124 65636793 939 870455081 678 319415169 419 458751200 764 22248836 637 545570284 849 987497307 143 773152652 143 488490665 523 319106415 224 45199853 43 72139390 394 250721640 410 564274796 242 486750996 79 404563357 746 854534532 617 499051291 242 978001091 234 322458810 104 793034704 134 860786875 608 352343021 871 78202599 276 311931187 458 810895294 195 222608398 277 871280300 314 130324267 518 98301339 67 974165066 494 789123034 687 321974621 385 561601578 673 474113895 583 149016794 260 208961838 561 890292920 168 207259936 416 115189746 295 961860891 51 969185519 352 465898664 892 218858953 633 336860365 362 748983782 283 647463630 3 136106207 455 976382846 169 174570461 917 77195550 565 312742860 274 105136317 779 496801486 160 576004853 957 704789237 485 350458834 937 994391167 975 388512028 521 435756642 774 674052876 832 247842447 842 336416753 480 199977017 741 900987042 935 37877292 290 181687928 973 122723346 839 45488539 245 153013541 52 305241601 138 73915206 434 956132635 327 982927940 296 200443764 966 300272307 74 489883921 838 768576300 636 776361575 399 498219199 996 95117520 113 108411894 350 431249803 421 738530126 723 877773157 863 23425535 204 199186934 24 126964608 829 861720633 699 790101940 412 545398985 674 172449252 945 330599747 630 302229553 295 399047880 424 109040055 443 494642384 333 296521177 721 440777038 812 481353969 775 522783317 374 426314586 406 442969042 367 650308339 388 346791260 163 562266086 330 113498795 852 379466100 711 735221877 546 192264547 298 775953577 664 101574479 985 695917793 626 812021490 787 386951141 938 889751843 577 956745893 896 172435017 915 9500891 653 82282496 697 268226128 105 825610692 872 828705783 116 832789319 710 162251696 459 266372671 509 5157740 165 283464622 93 641398483 415 991125851 375 321668397 84 489577380 184 455935963 246 742054558 887 170919336 858 916385169 981 286938382 469 340304069 374 820994920 319 607555317 581 154628806 677 916173169 141 471848778 325 468126491 503 337910676 892 402660618 872 990646866 377 385531897 820 875633179 296 833934009 933 70356917 542 793436423 569 793067865 863 162172570 394 361529430 389 572700813 445 790018724 396 710089512 523 399299435 771 99747135 503 116582944 590 742797009 40 825773724 188 313180078 362 171520676 639 921825160 988 11388162 417 176098853 401 308177146 432 278038763 716 454689786 263 391960682 55 428102421 351 487588861 847 913486833 573 539759151 650 830608790 344 386719549 396 185193308 278 640525466 616 776776017 183 130278308 398 49974370 26 771879821 542 525337839 786 221976610 943 510958509 954 690410009 943 829241561 218 661866586 980 29726769 475 459305903 231 457939809 609 472610827 127 751215914 687 474846303 675 712903620 28 163145123 911 388513760 550 894250288 706 894108711 397 992331249 700 19036313 634 992875553 406 565109088 700 109187409 678 63757792 442 623784473 721 430511920 375 885380243 883 448656945 158 271235134 851 749347226 34 151217344 45 556418219 439 53864486 541 355302411 276 963299778 658 619810987 984 792559034 726 914733883 403 399354615 300 67957995 390 12785734 271 622935275 674 191742653 650 952636334 246 729453607 816 727477897 96 477535252 571 161081124 152 18824360 138 243431115 521 306969356 575 757583716 747 14884355 26 561405669 525 378641159 21 653582502 283 352503094 833 216730482 662 93624214 102 222302974 797 983675526 663 297526094 661 92700323 262 683268443 609 137232246 844 87101309 295 632710768 123 467178369 769 470676334 73 799402433 817 189019458 358 202875091 565 46450966 817 586418121 955 518710169 822 413994521 347 890233766 930 158021550 124 572750215 448 515175130 800 343018427 695 716203153 260 633505077 359 701564316 949 58535215 405 257382780 227 323214491 605 420352708 377 723553837 25 705918072 303 257050519 368 219154669 842 539314400 739 824072068 810 895240138 365 413234617 74 810837740 683 893036072 529 546662376 574 598497180 879 495928443 160 740590761 818 909577975 257 301098999 876 160067995 159 461173000 279 427127697 967 957629155 38 661248184 401 125282404 554 653486299 188 341624740 528 46897902 279 619103976 853 989128737 725 502007556 725 613883873 182 798919100 840 878931628 353 816994658 213 647886262 932 963524960 405 153372286 922 655636896 44 984150940 434 852697271 316 948496902 306 107925532 747 396634612 400 545728273 697 146161488 457 31829737 320 995870019 94 68636926 991 875687858 19 174332297 90 256803946 421 449311450 523 958751018 860 880914091 408 988124341 631 690102427 521 157532430 603 519468240 767 670600006 773 197810475 322 502501264 609 532564587 50 15167789 697 881121048 372 245032928 59 685210457 313 646467874 909 86375664 995 301416687 191 240634168 928 713795141 32 266243440 648 36543272 198 333210934 383 965323312 733 704964682 950 842451443 995 361906436 923 167717618 646 502068884 226 711559953 120 954029925 633 511740251 316 788780093 433 492431738 384 273039013 957 98808020 382 991789223 200 422823416 644 404717175 108 165457888 450 443576207 747 235281133 987 253318813 970 697045999 750 432855037 248 318877822 633 75253472 462 274620061 219 282700637 828 670918028 986 183821676 728 505868514 521 804087509 553 809536060 646 648254345 139 80989991 973 709638688 22 382376175 992 410817463 483 780727456 811 626884786 554 18680083 332 646433256 122 974026798 208 842818330 964 696822142 96 891686693 680 636656378 979 837358827 310 199148593 527 108403004 222 626576052 819 120751788 96 70785900 981 204706670 170 212401250 929 844756582 640 30718 636 302576042 926 461118426 405 443267400 447 37477914 99 432482705 105 155059009 456 700231965 66 730412758 439 144052579 488 240615179 151 514075598 177 740269645 542 424852105 763 606223942 370 341084386 550 593175466 260 866683290 842 200452531 888 777651027 848 804291818 490 242801136 535 69440120 754 397368537 927 725197681 52 212013759 989 716548939 78 239169875 202 942017323 365 966002824 629 212820684 458 393085236 563 160768370 224 143031418 972 434771010 78 111341660 931 229566121 190 881663295 85 425228887 134 53858712 611 154877270 905 280786387 906 469333183 888 402314155 604 113240143 1000 637545254 204 939565484 160 114645916 117 305827633 36 596227012 39 720092543 90 95086386 866 648524055 948 719559863 840 125239017 886 467861657 568 699118539 50 124353287 945 623024701 297 70826376 925 37767532 375 466251235 878 628660201 400 550680007 957 987860564 208 834597392 474 213392678 770 878228351 654 134817906 137 482556810 90 102971807 115 350299723 574 111602679 622 323120176 49 267090252 896 398605371 989 813657502 301 172736571 365 425023539 302 940036348 580 442911356 962 165684778 928 235626643 260 382292747 683 210501181 37 702386599 458 854385468 685 775599939 368 864083420 178 655263238 105 530023806 368 233590097 96 142779014 649 224587576 935 363034033 629 586665949 131 77328316 928 782369797 4 965661415 238 263240673 746 890460275 709 496871138 565 227925742 116 416761997 633 570924265 48 84873619 336 416998612 574 77368740 903 957315601 491 174797144 576 174521777 713 269804574 772 20790846 879 119932659 764 260235274 377 210230984 724 164540443 319 289972275 176 841557084 889 51959648 726 468253480 668 838246468 942 28374116 667 28735078 368 823456317 380 289905427 818 750536548 756 212997199 322 385001912 79 746594617 310 449593980 648 939523209 864 235008459 99 262029907 79 240555720 943 985586640 638 122013472 88 746408923 101 366677988 650 257542237 418 639981484 149 586956629 656 688297747 550 737613863 442 359190965 950 442656201 38 952424714 325 528361761 972 750761295 161 146959342 236 129362854 644 974949023 237 185552645 255 997964660 649 680188590 334 385446898 854 460753127 497 829026914 684 920315529 979 338857736 768 203263718 828 648501933 33 28332384 298 419313334 299 157526406 206 532692862 861 14057160 723 899354243 465 126592965 34 593496986 510 238413231 825 787424925 518 519633162 922 540060880 92 936694623 67 101511314 139 820712810 823 754489237 385 898934233 262 583196718 187 465390769 415 772745953 762 137724028 418 891432075 650 541864228 869 54790028 336 935620841 224 875072611 881 664460173 173 73234330 772 760285912 898 986128355 556 813199460 901 248743385 203 213624755 720 504783496 303 45243550 140 88285360 688 935503307 344 323009206 185 321270706 537 947986618 834 536615763 969 317400209 434 708917407 216 474604976 875 994565558 604 226207970 879 182752231 841 937752632 405 739832506 447 610145018 148 453902971 90 743117988 898 977200192 642 484268440 491 846668516 855 211649006 688 686435560 239 31823005 984 133819180 554 582666700 757 48412832 683 410312832 361 84747022 82 664842076 762 715687283 12 790085729 2 258953854 615 17410904 46 461136570 197 238875513 708 812194668 33 60822652 878 385869185 402 854622172 766 526259015 110 53793729 196 106240485 929 207385838 901 290567312 318 25504765 590 675373095 6 734742496 846 210438926 130 420860955 844 510618422 349 980101852 131 151685107 262 453223898 8 686266713 428 711953045 400 781354719 2 704367853 146 353488722 250 229196312 70 719664606 865 958244280 769 805254683 633 132387922 248 73950597 831 706775359 411 779649397 246 437369652 744 720172265 165 683888038 981 315750586 489 875157419 758 926326860 158 717286463 79 997127485 722 525228012 812 973815654 328 290615939 758 187410102 831 161683895 768 385216694 894 468318847 644 689006959 235 259711277 30 476792715 207 882343888 49 709655294 340 864577633 295 158686027 770 289678448 263 564400380 34 54475963 372 148495822 786 982823609 874 757056216 981 455910797 884 190669516 83 229717474 498 186593577 501 623337956 530 125475476 162 933401911 656 277109270 18 287977073 964 802774158 474 879654929 643 555056764 22 738157034 87 512296859 428 178598502 426 670054353 959 476207848 212 632104343 63 409071095 895 784713566 701 373026226 371 544943014 231 778925908 145 540815297 852 225921094 704 208910036 22 639859379 561 434146492 681 695574116 840 14514775 939 194730801 520 495940132 182 765742310 228 265558770 538 243778938 121 174337333 171 802029197 81 991477017 520 101823878 828 212495028 25 383480318 883 580037728 631 347975578 401 989783486 968 706017041 813 524554820 604 394306534 820 989024019 712 459201137 155 504576797 165 936568314 672 26898683 284 634120828 929 711257903 753 753266092 881 4246998 726 17450199 379 34701625 223 88759563 922 441961747 923 993498220 501 888501143 348 737619160 523 531402263 951 981772996 743 370596959 816 558305897 829 948198076 408 98557006 408 712837296 658 166422457 704 759890729 27 800634700 85 657535754 488 180845382 826 633447136 613 586649532 878 684006612 676 61621634 207 790995290 720 554577219 452 326110130 110 550549458 142 849320204 208 398103545 823 700764180 105 947691789 351 507919658 981 512759367 629 318201483 355 241547553 12 151986937 922 777316722 945 728629748 660 874542600 813 685249087 376 669156340 39 223716321 400 599663295 878 682615002 617 360632832 506 821354105 148 974726829 720 726105388 554 515697825 820 302035023 543 876534182 745 143451427 806 453993668 564 95082583 543 152180435 680 651498316 661 425738184 557 949919329 905 456672132 575 237057985 467 814266986 623 493508113 44 77101391 744 33544778 749 551754939 340 729675258 360 800525959 859 941748792 931 995059998 642 175261024 991 232183767 206 386187400 513 354484965 507 39627536 831 800754586 691 302840051 666 984265995 145 298266257 22 668029488 399 499241474 728 403488656 17 559133076 466 7997136 753 134168722 766 962953217 821 694906363 754 145027451 899 900475236 790 478489872 981 994141647 392 725481332 380 465519445 907 198758328 204 663947435 414 953371270 662 834249936 533 735067286 282 613560782 917 139636209 881 551955934 640 841643785 37 386814859 476 285965730 555 454068836 746 735139757 963 10412483 212 92713290 468 840156591 166 545459597 96 322565988 685 444843222 284 566570649 785 482828072 526 424439484 845 314638674 531 16187293 606 439805813 186 777834188 445 72604707 338 246566905 690 172864746 575 472764783 479 122071500 386 234335711 150 301300175 159 513904857 71 125957799 714 396434003 591 382208514 763 753056938 178 867892165 949 93067587 438 884482310 603 402846759 999 106464528 373 453881831 671 523695556 198 776153278 474 681335072 403 653961919 422 950230969 6 179801055 304 812054206 685 477326203 617 499711126 43 257632923 665 67259477 634 593875120 393 592991785 963 107964076 294 60074933 78 785063792 484 871884743 981 728444124 578 350025377 357 650676821 306 281152663 879 451726396 973 961753223 943 852271861 378 903684020 173 221250850 438 904629359 420 478973851 332 309868107 481 481066325 513 833477852 368 872981021 812 831626144 674 328213018 143 17626187 781 581202028 443 909016732 623 33529598 184 643561810 741 77810099 778 174244491 334 934379893 96 337729426 503 431472119 463 396697238 157 578971675 491 3408980 482 285936002 957 681853028 271 88824520 193 165672061 670 720413454 756 663044573 610 78431459 196 244208077 492 69518713 585 721847412 357 272240394 36 294564444 122 217607335 830 693813490 872 634227290 580 371749314 731 337203618 663 212174238 911 699914137 931 145844782 946 256210334 513 23525013 854 989646575 742 798799289 73 738870788 930 574603984 625 136051511 8 799704935 61 326263844 476 956875669 860 790240289 671 348981418 951 62651173 52 105871256 416 187405535 478 754762359 491 141582444 227 906472840 225 758523856 749 578624223 746 263946894 661 110389112 53 155830492 986 876832111 179 187735437 694 217424775 154 764671026 729 317542301 934 900703796 177 26031754 650 433793515 762 432575808 663 621453722 187 389646571 576 56914337 628 530303690 55 555716129 116 314083491 97 72042948 141 604323775 16 963167997 235 98312774 174 242405603 757 615338656 986 397022144 783 800852968 978 978984612 498 790843646 200 913490609 269 821902097 149 114639871 45 458876279 937 291437924 716 261141390 696 792496526 578 722869571 519 414814227 681 224826325 566 262763666 730 47120229 116 709247880 973 873850634 400 352380028 523 868403481 342 146217445 977 19135128 912 318314257 366 525266992 676 168687057 98 980572945 750 53134425 73 732697165 262 394889562 630 316296520 915 245521116 384 540450371 560 194286413 260 880190641 90 77652267 4 776326557 615 818488661 171 258202818 384 136931801 627 625304144 842 325530221 179 8221036 591 904315593 45 6533132 644 67760264 197 966741566 997 598226181 488 364457963 392 279819053 30 914655254 235 293976298 383 465197854 608 764730784 307 579707247 471 866810573 528 203282997 374 625170098 134 440139375 538 313694422 383 825819958 640 237647869 34 455879358 827 69647858 294 290328127 486 916047185 572 248470701 765 576187256 877 676366093 843 846934532 422 628299841 70 586781594 760 975027950 216 507231417 620 215483398 327 532315917 896 911836539 175 682678025 216 619265362 264 685033056 677 786564524 557 878048756 104 810822586 331 29246821 138 127184431 592 225073272 462 889782483 337 198644647 480 799832257 994 968875430 803 24079272 689 867385591 193 557034497 767 235688133 798 46079176 362 748117110 670 278072939 261 321304243 884 855562171 225 756142565 644 779782538 916 742865070 599 578063747 473 263441507 922 175514615 940 253428870 913 339089687 413 882101600 707 787071855 123 660373381 645 115214793 711 600860891 379 525911417 487 764223538 995 67645722 229 78424622 6 773637391 568 476032342 440 283530202 438 853484948 997 61951110 632 816842033 656 727713824 615 377840327 467 876170607 394 51001482 234 247193952 512 962917173 215 155859312 931 1693897 891 477220541 204 646398239 128 654545336 188 842277092 598 50598837 70 469343684 130 389653132 243 926749884 53 252579925 771 311827587 860 417531704 667 292313645 572 404669051 87 385655706 116 652414418 847 6578546 589 352497636 673 253804945 776 295111693 41 762240649 998 813276966 835 106462448 171 777311229 304 318435147 764 516501501 721 568184357 720 243011602 334 534481600 254 876060107 66 902894763 928 86427523 86 899420402 844 311282994 554 624580329 286 632312837 890 975429752 166 591323551 172 922126236 632 661138717 342 15448088 892 373260482 556 497109582 772 892880973 758 645598464 888 841572879 412 32124644 599 741611072 265 943042040 109 603152005 250 947335021 114 697262298 991 60726941 468 317130211 310 280612323 754 882755948 171 568817781 460 366182987 350 201998563 231 150485383 690 527096362 545 228687454 273 854769586 287 551195427 899 976630411 500 467541598 927 981278485 905 919402683 546 315317095 604 65131525 774 850837699 193 353810938 481 751473068 874 410824207 272 596976882 334 391024496 977 628063247 951 446836698 627 687446805 374 924241371 852 818111790 33 361306968 144 207784295 694 808575668 12 566542707 574 590874973 909 964152773 643 17678252 460 575087759 341 122473131 42 121760550 12 641923614 386 381926829 614 327038301 464 772660979 63 553085293 502 915974468 882 904798558 381 242357311 88 960628974 139 638965659 736 759987140 300 694505916 362 866955567 658 771044965 223 971050070 415 652997996 44 971092792 494 240273242 954 609190193 121 508049238 37 50115429 721 695320028 459 287305444 734 469964350 566 636713120 719 730199799 760 636767115 653 206615069 214 585062317 193 825987623 939 460278086 991 695123068 482 945461069 337 581270507 866 315846604 122 892947860 760 120684030 847 699756670 388 283984612 416 116055141 751 996135848 957 565079592 449 723902951 659 214787959 231 567140898 746 598959393 841 280745994 966 451183523 189 766191453 493 386696197 720 437886161 244 320041544 54 923193319 449 720201002 843 501929172 656 842767248 599 674049843 599 507906219 799 727218968 887 759149059 799 890366271 888 618337962 258 871998013 940 213649553 197 329544994 918 208304126 214 253029037 421 185909951 105 411104044 192 942817732 195 23791686 83 664271065 271 777747172 345 302473834 72 902645277 269 187601303 594 839775927 353 651434135 601 924554986 425 991155634 785 101350580 420 771772563 273 587209584 599 65610387 787 476771796 744 833703537 252 365730160 594 461026049 475 664124513 450 165038396 151 445648572 116 12088008 798 881606966 109 412774446 214 921344427 644 565053916 895 445639246 154 578768160 293 240667610 883 80220968 236 984815039 92 217269296 546 678656640 76 632957931 788 682434332 526 247463322 969 738605002 493 943226329 389 531895759 450 183940666 625 967609572 36 549133537 60 237158806 35 84932609 526 522614407 926 990422504 378 601153284 744 591329349 400 471578068 890 863999791 25 452784247 605 988091684 721 788938617 818 91192449 623 59195871 618 953177230 952 512134659 943 129012061 92 25090520 313 151423292 945 49579931 678 91199090 77 449566797 908 761264931 763 221494526 524 176485323 637 372798054 463 888532726 490 140619293 841 758040389 617 535413105 170 160461374 101 553049141 175 941313126 70 215670730 940 474518683 118 814900294 130 435800464 607 587144098 221 390060666 411 188478585 647 818922408 770 162118803 362 57577120 773 889352461 373 686271095 536 239611460 516 855137288 520 58069335 431 273286150 811 893451899 290 77595400 62 653143899 873 669067835 184 286641233 963 932694994 309 734471515 630 741382170 929 112364004 191 563195151 563 758996675 560 295810427 242 611813687 82 515984768 934 369552562 128 279602688 895 124346613 435 865543987 325 743659171 372 970654990 841 114113748 286 334586422 565 371725024 777 844746453 522 893798444 4 75150360 147 871519301 995 719637117 801 197910365 70 255943081 770 761686084 547 755922648 603 448908103 789 547477368 806 740077984 969 642577298 685 563181927 407 304871610 545 248824720 225 923255699 90 215024945 974 44054945 366 88212470 501 304166400 70 378486432 293 444740085 432 299113573 933 388716579 307 839140743 851 141192333 965 557539065 934 60300726 727 940429308 572 932555158 35 988196269 375 99484766 488 101238033 228 193798061 103 736528092 839 117384161 528 246230498 546 824848629 107 501528313 580 769991056 148 836787705 184 557699083 241 228293010 898 911247967 388 242629238 978 242584796 153 138974586 790 715265863 876 445271959 739 800841861 466 108826857 102 790996244 598 200798774 142 269591539 676 53283252 111 787031490 576 794820803 29 494140280 294 16956593 266 478988813 703 36069623 17 980764042 937 487957074 325 186605390 856 553554768 468 589872570 781 686740093 431 460172069 480 264052668 737 396299777 424 870381295 965 553961959 723 723572355 213 182162383 946 673957371 18 984659248 243 426043046 519 553296464 332 815879173 886 799601483 945 586129669 498 372333536 296 374663409 507 764818683 3 607042971 791 500906464 404 43419975 244 891494216 723 556516339 388 572889429 337 297208776 154 216495063 3 857366900 304 168410233 272 360047055 593 15426657 726 98457058 587 904601326 752 961214423 837 899839085 587 643830430 63 552968390 805 766784588 312 389995644 86 410655296 470 424849486 762 294556219 639 3101305 566 524654248 117 883326896 573 914727535 1 711541135 643 294282283 154 175280455 86 563282987 417 680501363 885 557155967 13 901428070 681 749668957 972 930341344 246 162989527 827 970664927 268 330451151 447 631968390 455 573455565 708 326419837 150 851384537 251 817721481 45 758181159 642 683076207 437 848734319 1 968049610 830 844108835 966 553640940 469 228873774 286 313379560 646 506158728 514 272943926 350 233018913 523 775360820 471 686199213 243 274094451 759 223470746 929 159966422 814 69927319 787 130647769 801 852025622 468 486903354 10 656413155 154 738350431 133 312297207 482 334528155 185 493376248 757 422112533 359 502165717 455 640468132 671 53435383 249 808324071 30 214763939 895 583455760 817 773169424 427 796117331 766 300508281 346 454653730 329 278497911 676 357436598 628 884971342 332 247783096 458 222312970 51 31786249 346 118880925 458 684577884 642 447537720 349 717462669 929 807715705 728 131059612 750 284223888 314 400195136 379 907431772 400 539812094 535 567206979 241 938334287 169 137839149 604 401872061 566 413993280 773 915962166 891 307770023 757 417027749 788 612867134 460 765876355 875 154848167 364 863108923 647 826203805 157 807095778 551 518050039 137 114211697 537 598999040 908 409476193 491 85177963 20 388183194 870 739126099 282 493052642 935 136034134 404 192049031 732 693315128 782 14167859 620 952579636 546 490635244 574 48084158 190 383923190 916 887232142 776 214338134 681 340202260 557 870604624 387 555882010 266 491271428 618 624273225 563 549477180 756 756263252 630 644316217 842 45013525 454 39822273 686 124222312 839 4765981 312 748920970 629 922270520 284 56993942 916 13431298 307 342968870 494 264355929 940 455620785 848 771509086 59 311815187 639 720188271 535 196628663 284 168009452 931 395419382 866 421963239 15 433324864 261 46209430 791 563902849 513 379670413 909 547036764 786 882644375 998 110596770 327 615272119 22 892152215 34 990552647 737 838835225 697 402563795 268 493236813 642 408194056 700 500297495 498 401830336 728 429129924 223 989495373 378 596313825 775 714432582 879 682023428 806 343269435 510 899650918 62 377523020 117 13704934 572 68021496 14 19427406 776 874730769 465 279991408 552 817998041 466 978735723 502 784988915 559 454064468 62 240797517 684 441049163 55 856042192 8 885193579 623 957125517 894 238928667 238 390077939 285 320636069 505 916542614 278 699225794 429 756100912 75 173113377 871 408210507 88 46276105 864 647934621 63 516328801 917 56762215 458 817609939 850 171502356 403 328528379 36 584981345 326 316547876 284 359302968 88 368375624 930 303304427 314 850764695 893 639672939 27 749740885 116 339849576 462 58269837 690 969399346 421 378820880 623 914503012 272 81932945 149 778843958 143 522164785 59 463799902 854 713918049 175 733458726 46 944162828 437 996587830 759 766637560 562 181137262 660 947321371 862 718911796 512 864671603 207 575382485 864 354280293 852 779104332 56 593083943 113 575895786 83 236325130 738 15088152 540 502735774 934 882339749 256 636006065 36 697212719 954 14069062 445 925681379 922 998401261 407 545905502 762 10308449 645 392416891 369 295583982 928 299436771 429 113373955 748 825441590 787 773581070 592 527779475 369 391256405 377 954959719 70 680853025 155 927188802 555 394304090 819 88089799 681 132089986 493 202947067 753 43922430 503 577881355 507 895631154 721 476368926 137 645417701 513 201829943 148 46458823 498 48006575 676 697782701 577 290705565 739 594410752 38 51840306 444 527100696 653 794553718 909 629165512 834 58812859 241 623022249 112 459435122 884 602518044 680 940894596 94 793261629 591 185402512 906 741282221 929 124503131 919 791220887 335 403099545 508 634026691 872 383399330 95 993410682 15 579552608 457 754609357 360 648695847 543 793935558 298 119957769 449 248574593 533 793095601 370 787823121 176 574674945 612 226206386 578 192495532 75 43247991 173 691645119 902 67351297 313 73129759 876 535505215 378 870635288 639 964521068 614 280761902 548 702297966 654 207568928 473 267723796 856 796416909 108 826000916 490 449003055 325 586621818 366 469871033 581 771063046 565 833819570 432 907419852 624 674174670 601 76781537 136 174726188 2 230387031 978 942145505 92 64601038 46 10183949 548 537581073 902 29815453 120 980243465 249 662558266 874 625366086 150 877381273 621 487989553 508 64739390 599 647588602 178 735024930 241 539641489 685 988108373 719 519204392 620 600554622 802 816525049 471 289863497 183 206132713 256 945194195 779 802222970 146 111255996 399 523349231 627 365051795 989 426791047 351 146186499 225 193228994 207 20143324 926 547633147 342 274413685 318 772996802 661 278118891 251 133606736 558 453998077 889 694240932 216 452865515 638 213324674 672 514160310 231 293046801 302 632293276 83 853788894 950 281639731 70 400064396 491 930631772 813 379231780 56 353006366 433 855074589 238 402396546 327 543729899 323 753955229 220 230322966 525 926036419 306 51043663 384 712293829 981 762389739 654 136596591 798 144698812 562 632315544 28 676231737 371 545141104 355 381137232 22 481191546 882 914611626 457 330050192 947 749067606 63 115832473 847 558500369 934 605696132 413 549000480 515 467976065 26 568983988 415 59159617 763 226788687 859 788757557 391 727110128 38 168636152 470 374579076 838 572201244 625 272511670 410 291516716 975 281620953 90 822911624 384 318927225 790 461721154 984 610884513 907 546646027 581 513499333 996 146196867 491 627189251 35 389701078 120 875168494 354 890312326 624 225674496 687 881888443 76 218897588 904 619212530 667 603468211 541 767346061 413 949388228 706 778483777 254 4258616 46 152416288 493 276238462 41 177945499 78 982787129 852 197107351 462 551389981 188 153482422 759 262680980 127 451382248 499 728413678 733 161005758 524 133842302 603 750829988 961 332857859 796 607203231 392 547983117 296 799414489 57 566309091 750 49435589 965 330877980 171 727469412 555 133051897 177 229456398 991 614220455 642 10039856 924 574550098 727 678207796 914 133618110 601 944330871 935 335868153 930 263933622 601 736866857 428 340404341 359 622029658 197 463102049 805 832139413 281 227323273 624 355549301 837 899852211 147 892823976 585 731380652 113 20517440 341 804552866 775 710669552 495 592795011 291 165270677 63 160860255 830 739560568 844 164395378 776 648782886 844 344188243 198 489901988 53 456190114 478 759952576 680 414440614 144 379487439 94 643934327 544 749826344 664 317292335 115 778795776 533 937652942 553 115856533 366 953142395 507 8675046 703 591898251 490 22581579 347 835320727 116 714241914 201 456371645 941 893433260 500 331922336 167 868771144 724 551029757 727 464664586 443 773349549 24 315777245 264 884534565 236 216410216 363 536393226 983 770886342 444 416296314 568 774213034 425 541012609 104 546637708 817 308699668 47 395372237 882 498461527 805 649948755 471 90713222 908 549410919 467 65552662 509 655327119 374 392749295 232 567065653 2 496841810 729 558005005 254 828131541 746 669721990 545 670831688 572 282492322 378 213652663 274 307464261 914 783335766 476 761942476 333 712263355 817 732047948 414 143132552 127 811094832 670 959590669 346 26332955 213 363162361 901 367226911 999 141715364 360 47885919 480 646415636 540 24160201 471 115552154 130 851147555 146 221820483 665 656603192 68 363815081 799 971687426 663 26367266 470 265037885 924 956887381 933 496475880 802 355159143 150 80798765 360 302341 679 31461854 10 413736123 955 452105604 770 946004151 643 911138310 543 246297035 648 453349176 53 360604411 202 136231663 564 421815201 478 166140278 959 41183074 435 411662827 986 167810173 210 551085483 107 495291040 377 849465070 579 158643997 10 32500908 630 174930443 943 328224062 357 36841338 777 418331407 552 852929392 396 921274837 303 89411769 203 61791747 998 538596448 605 938156364 787 763485197 568 882137398 305 287921449 857 727381764 901 340866232 128 60651516 822 4428433 206 299692592 798 783252781 55 68802576 913 895448530 725 822674931 421 351736476 755 281693152 276 627888537 601 65400016 510 751662632 653 683775498 491 544465959 535 55002877 865 505103008 337 48128550 398 471822699 191 387256497 136 286273572 519 107093157 445 738014210 195 15667611 391 459071382 670 324934126 495 238095443 458 647206441 28 219820693 505 249798463 546 803714234 679 827567105 662 150230020 934 353096623 360 594757581 233 814307663 504 231984750 984 56922769 845 998066885 769 917186317 308 588396866 584 168781872 95 527066580 217 766861335 50 44358404 906 308185740 440 104519460 274 726671061 430 414280698 713 929911752 797 601332915 784 396973763 145 938739539 500 992368033 211 757305865 81 968315757 800 248827060 754 14392010 864 428186170 13 259359244 380 274371577 813 261217514 948 90997226 647 522184293 881 960955689 270 288514161 932 524332439 952 591311931 286 491937366 574 764049477 238 965828605 716 801660102 616 763840952 891 716036950 482 148111198 575 21607544 852 290497694 182 987571535 113 576838326 263 365580936 846 5584944 676 379547374 307 364055115 2 857585881 348 611126137 911 12485660 442 178321863 477 244302408 929 842995263 261 773320365 224 96423563 16 882709229 729 329223858 474 51864454 671 941334527 188 128413716 482 504145458 941 955535269 970 595305584 939 710369394 370 179984999 353 339974004 380 755066700 463 953920598 607 403171864 174 255195606 611 735588749 671 554135645 762 379259919 973 467689321 584 27902280 432 986221761 238 760981946 773 897205126 550 595986938 501 907716338 403 351270207 341 44334948 740 119332631 287 152270693 598 983472895 531 159189018 639 690536497 838 971919446 242 470992425 552 267246255 146 940417311 567 255945454 418 247859268 904 8936858 810 408078163 749 792646137 787 412780537 14 382448494 942 917500956 324 74020186 191 810785665 825 887216745 221 572711971 446 534870938 35 224437053 882 395263276 918 470656657 488 189142650 524 221226198 582 807212781 949 798981096 561 90190511 756 764314809 762 409370015 428 224922164 145 542960774 761 45774470 517 110112929 826 978862057 921 186638663 993 999908676 88 443049076 952 255313723 567 504871353 557 381775577 2 334671618 952 303554992 685 481366850 825 143438046 620 908315687 204 307769074 797 815643084 538 267438016 744 892145672 691 517505601 844 167880640 597 339710821 53 80922750 901 112176808 804 619130495 186 6592859 405 382026386 852 399023352 882 979464015 840 19420351 596 960953290 580 626555891 636 200502127 924 983016979 168 512874513 127 31799153 554 709801448 214 282238312 279 163734399 16 828600245 588 988503709 883 291553783 989 72422663 890 602400055 908 691964763 279 293111200 118 315978400 511 156323637 380 967246353 988 867024746 372 399617452 812 669115125 850 880306387 768 624147222 728 665227842 941 700701115 474 826725340 349 613205587 66 752245495 948 514580776 687 973807660 113 145497311 70 952222872 153 901645622 112 386636332 886 108813056 301 345260116 46 989639248 773 128510371 455 636635513 205 73553684 459 501880689 596 50797375 830 154393230 442 141985256 987 697462324 136 385154007 733 510279759 842 71200378 474 98117499 718 139158417 591 353308015 523 523252387 446 460447970 710 123965167 642 928750498 462 983244358 931 721885338 413 46635188 114 434241803 465 584850497 464 377713744 807 74433424 837 739593976 591 494834235 346 604692051 870 259373006 948 628051315 125 527744814 454 703027016 521 186971691 863 249798934 176 938483407 677 182461610 276 562564566 268 775722168 143 877836571 517 985538238 297 686905219 175 312626218 951 391813876 494 470994742 755 480606607 240 278842739 93 503753198 614 17093543 916 82316842 560 206554932 944 792221192 267 718356111 347 358910126 833 393592001 581 714796641 733 747521110 842 674130672 507 346666807 953 129999194 680 138860098 897 31297228 959 387670249 625 845533146 763 245021005 227 307954943 29 151711194 82 918335003 117 723638732 374 331306127 527 747935544 579 722994277 342 807080092 824 724553034 369 615268322 573 966971076 903 731558317 945 726578806 877 656228650 850 128207087 539 526618282 379 465903934 740 176685482 229 579084008 408 929004634 153 87381526 387 195703275 868 939711258 490 875142728 273 641167772 561 551069562 622 312839611 955 900664805 571 896147866 740 644049912 944 787569289 336 617456706 620 945632437 103 738110002 938 258405960 186 729521250 263 76049898 616 257139 170 387801986 282 51141494 126 953473242 195 722198527 698 954711880 765 335738850 146 889143389 816 32043931 920 86098393 178 395157264 89 248695355 672 260397706 425 947024895 113 213104964 606 2365499 105 855255838 280 476269101 87 290708284 558 312944700 332 875130614 335 801612730 747 690713590 435 86713284 992 357723093 837 716259581 472 860898375 103 587665494 386 814908877 6 96985460 551 308016021 969 899126031 59 294991743 654 927999787 616 159666589 961 79964197 1 726192182 975 940754638 187 406899884 555 48029793 181 652737335 334 35472802 184 930491425 701 260078830 189 696216944 299 598251149 844 775927736 278 567557565 716 372425911 355 230367336 190 868461109 137 528063143 580 247178098 184 65800781 24 590984391 828 254863974 887 10959441 464 47337547 686 376808801 652 611150466 875 138696185 696 83484199 850 136399335 840 833783461 988 205527881 939 352185813 151 365724134 421 893550975 774 318323617 328 172853162 476 830133296 58 579367865 459 78475175 264 896748422 605 596505111 164 145518246 492 584493385 221 16851409 4 311279719 966 43551551 222 492136263 176 597160831 107 243143724 183 971411682 24 177612213 222 814585739 509 954008677 578 389063492 494 436385267 328 16816378 243 636896228 789 166392624 58 972855681 481 126743279 592 544117015 853 247344953 724 546145225 888 482702728 917 610418076 127 462908073 965 955933380 221 662723352 678 133297618 76 474866165 64 396754246 186 582159570 16 32758732 134 709999644 393 149062869 991 521364181 892 57495779 465 331715944 268 180932794 666 875851402 67 424367864 213 516109050 244 712318358 816 579884241 906 766354006 325 279724715 831 34777182 202 886169364 878 494322863 768 778920248 220 856256307 664 6109320 756 206761183 849 212255038 797 103443519 810 465326762 151 553241118 935 471602831 214 855756413 613 600432658 118 533717170 388 626688007 180 918015813 303 541182269 833 4125073 573 32049488 785 198892545 882 322234451 320 816664905 945 320199595 759 276453612 148 958602606 630 450662439 684 591192441 777 959094680 655 539383302 934 166370483 195 142152152 560 840525963 37 193578930 76 734836318 818 455368524 55 525387948 625 137759830 948 178896109 629 86798366 412 166453871 355 726767511 743 119020199 614 852190009 77 431334660 953 367409331 220 123562905 498 22438798 367 54838667 527 119048402 474 284581045 337 218791105 194 946602955 993 489034012 137 655204133 159 818846431 180 537808876 456 911908616 622 369932574 18 217597275 29 742222334 354 108612742 48 117131204 282 501069363 853 109099045 18 879975625 304 658318849 651 917855840 950 644820125 760 195690001 688 470537307 301 793633308 198 763808201 212 847265809 840 670546017 945 889044611 739 749305147 114 238474911 844 550643032 190 238851662 141 641191258 819 101330184 844 101832450 118 13967401 451 874725814 369 226111842 6 233641188 750 711657607 927 235092177 503 519061418 304 301223590 539 216139663 574 410429732 80 70444975 141 268122594 1 476458773 274 37968806 134 564251230 127 96671375 423 847929732 474 615204747 559 704703847 693 691038665 18 861444091 928 666443919 963 778061695 254 326481349 581 703887792 326 24655597 102 432568164 466 896096779 697 22073584 421 112361758 1 890130676 530 71594230 472 364265243 446 780252604 14 561164248 365 88993479 330 94014230 936 304131887 851 197261280 888 658155896 866 67122232 696 414622445 412 479832091 65 344827355 444 951452701 639 908334804 922 190307001 342 871118638 280 647603421 175 148602434 273 59405477 41 586964194 244 219659228 944 310057750 641 842695681 483 173251502 872 121539765 694 816282658 762 107786084 979 936266897 200 700813156 467 781584231 204 25628908 947 703027605 370 856154947 706 266048431 898 857847904 573 778943378 975 405749910 822 669874653 943 184717238 168 391667523 129 246248792 181 361273624 343 782556993 154 158025766 899 96376739 460 313135933 273 169580016 490 217837361 367 50315825 12 509298567 600 787219011 20 317983626 752 425036941 209 257206474 558 204756742 428 767139067 741 741825085 45 402768426 441 921824977 639 706711483 628 832640248 365 319015126 816 497761855 492 448792726 785 767623146 529 669800047 691 603869411 263 662099873 54 107881003 52 577099193 940 272668453 898 393965350 956 375126332 545 36523064 230 246495339 764 864224866 37 972599529 848 611146897 713 711638063 677 301367178 656 431173158 537 549376868 226 194682283 298 598790221 308 587791813 530 405732700 461 16813446 306 192390476 975 459072074 420 764641731 482 996210509 421 105804948 993 702783130 398 963682345 202 173650536 59 930475213 371 909947922 754 475352425 572 924778036 192 704210055 349 156282985 871 635567601 6 928510780 727 197521644 217 647606701 32 917958883 967 659000287 7 904303217 277 390330953 838 743618365 338 896213867 454 909953724 390 462889925 314 468147937 945 978002243 18 305424974 292 6952431 557 95580797 657 23730588 813 127040847 842 545435660 244 943428237 431 271694511 494 892629702 466 323086029 462 407505488 808 290527900 60 422920701 340 882223023 60 602648570 32 866984093 136 235091655 612 838967945 642 158487365 593 116236376 391 968619565 929 748660137 953 550779689 81 8733844 968 850540937 62 352096719 748 411399185 718 73671443 309 12348121 959 810549109 785 927924716 891 916801843 706 415138602 422 24902549 998 390617775 7 735338730 458 133267856 246 469597636 96 605984024 363 46101887 396 460723065 207 936316771 387 558651225 266 668975291 871 251230910 584 416272951 39 407052795 26 824391370 549 569289624 473 633490832 966 631326801 617 124189021 233 432097261 630 215471356 237 343941802 996 373607870 929 674187031 58 433596968 735 493857858 201 223929641 264 250577125 374 44351394 810 617113684 561 914417392 969 941117293 948 234674672 980 920560788 189 641849052 948 447435477 567 297405531 157 198664894 553 666317981 819 806396652 187 149018587 542 528068955 55 721165217 936 774350358 692 134042106 73 959276782 794 327065557 268 490278084 563 979751708 632 514733857 200 12517769 946 907337668 111 243039757 574 724750371 654 917094696 974 133594460 453 518951754 946 590431983 298 773857312 120 136747378 924 414590929 152 406909207 812 956375446 426 197060547 309 8511966 410 713589705 499 50151948 845 644880113 426 664976946 78 778734959 782 531677690 412 503217282 808 157374204 122 709068594 350 800911681 380 657934904 783 972078236 750 442146235 479 391346501 316 737692132 789 977287057 572 404277881 522 292028136 209 156779225 247 94721191 141 850909811 508 651355495 720 653497960 643 373720108 665 78285784 884 64998493 291 670947786 779 541000130 17 468513554 175 9511279 630 82038961 71 498750800 540 282918726 366 495661812 286 12943537 674 95853096 371 237922149 77 891780896 143 418659703 9 278503263 518 275572860 434 687528162 720 34957021 632 266046998 749 546914548 991 697089895 955 783710486 157 583042839 152 15085539 565 873427735 751 328507155 983 980314893 430 541024610 860 792678035 453 822555949 588 987102777 783 286335506 46 708171139 211 303792597 750 199786948 641 16200517 882 239181695 331 517378226 437 858694933 903 621064734 860 299454453 850 362624797 299 483525590 838 670089392 258 883270794 434 634854605 284 695132063 26 364212572 771 257079119 414 407540408 454 29370866 795 33080823 500 217077760 505 975053975 581 664603590 110 980077490 653 940206092 137 9668446 31 579845190 403 931487871 642 847635946 124 606701787 838 830740325 201 712140312 349 835365393 787 865095750 988 248803047 964 212850003 832 430076680 726 599368352 363 412387002 874 576359410 665 331774798 441 13314456 627 238276642 334 780009 290 903593379 733 842075611 211 957187015 214 909456165 242 550101187 221 737060506 406 62279593 47 745737546 956 134820257 916 809901161 622 90386992 800 786208475 865 520544334 512 55131444 410 166908514 687 109755474 563 574450468 436 18011122 777 514935893 739 285892458 532 573100164 394 535107350 189 191978100 625 164766578 264 769257476 459 720483880 322 514309203 323 586825781 155 514813834 964 246461526 378 421922351 784 643296344 346 131942243 905 553819829 308 644893143 787 301018677 159 313386156 733 569362271 788 350416121 709 439049345 155 89544774 504 884630860 586 426124419 682 967553740 110 337472686 945 258274157 557 406283374 349 31787681 19 133499805 180 64945763 734 735038201 888 810365238 122 855502217 245 471952803 828 82610616 139 16894789 596 562185974 508 739378239 491 897090851 987 238147773 401 318623106 762 67746345 280 489494693 511 928753892 781 854980204 803 802627964 922 177378122 799 23409911 90 361436215 64 253419024 847 667667356 63 537368381 747 516891553 754 692117886 848 802454263 477 498427594 853 17592233 803 719477662 782 838653699 989 164359589 548 928288060 662 900538506 687 263776880 815 106492674 530 158151652 306 798730737 645 321227652 668 677087895 619 384325768 146 696960849 978 639556517 692 752623200 579 880184001 467 297749497 966 683937385 206 116944036 271 453441793 324 115928173 565 925721062 931 226974624 909 664294085 827 158599928 294 251669556 265 508092883 363 81876259 177 166606528 181 654098776 88 149843483 750 121114584 999 703291569 776 893472756 666 903788418 105 578409218 986 886979658 934 395120095 4 374120588 792 269045592 515 413255017 889 412818447 975 725623208 717 591233588 674 701771990 299 964235957 554 781055326 732 920964240 312 669077207 297 330366999 540 941539990 833 685213761 272 799614660 256 828945423 399 746746964 953 577371204 952 71047481 16 632143936 693 571822175 192 671317070 182 873760584 996 810422119 787 175684670 427 863280139 788 734124391 402 570355648 333 170373675 642 223326516 304 752879444 288 76442834 671 158496700 865 409285201 370 703606927 175 366061425 654 580486208 474 122437342 411 992628831 247 823146124 340 729081027 586 870766638 64 551838209 923 259279807 761 656980298 325 841383332 489 51717957 978 520200124 197 862171206 853 221441635 255 658722434 45 440742787 959 322398460 544 769036069 880 758272467 564 43621463 339 556360985 653 686334913 367 876287762 396 901024661 704 182984123 63 64230684 604 987046136 938 100316223 99 744892806 567 930116681 98 220838876 594 568085044 508 262930649 869 196472843 881 260127157 871 281392015 914 75985479 269 296671170 879 241891202 240 958804202 699 650753519 318 35781622 445 731729915 37 156411019 865 278953413 921 47633702 381 382901404 144 107020926 810 149196382 766 419444222 885 712359137 778 503543306 201 158222003 602 952708131 330 123853238 905 871002535 126 189420481 341 182508693 787 546417627 67 758649564 782 240441407 842 602769771 384 188327080 689 650776825 254 665072285 14 808889344 817 114126352 217 843742959 979 317306463 981 804958287 123 411485459 565 764350318 391 94329257 129 152264699 599 184692161 9 895463318 731 857863707 516 125962119 56 923948251 512 655335603 747 445134831 983 559683323 288 120766726 481 4409475 36 497112121 510 477294570 58 563204444 267 739088831 749 382390963 986 27389411 944 70652043 511 534023723 357 449086563 625 599568300 777 951585557 728 827190165 122 959877890 107 345138846 171 826497768 215 534541453 328 605690137 864 654706690 226 932101988 711 977735354 56 98242139 737 723311335 516 303457020 553 425007372 490 117103358 322 656999689 371 484317309 706 220290478 486 824507128 971 951150967 234 814184509 432 503752141 765 83796635 472 881955214 479 22142805 112 180402934 283 456794873 937 348290167 887 975796226 560 107829018 889 488233960 233 702530078 262 345747349 45 833010633 113 83373938 675 817860854 396 114555264 826 637529084 416 529613320 688 731266959 854 148606148 583 373305854 145 962889023 210 600037216 886 656847276 23 587876412 870 711297258 596 686767556 188 405001445 990 528258530 902 500893947 72 115551936 172 948927727 803 471142792 790 992461522 518 530799464 307 46602860 870 912863488 24 88787261 715 14719055 74 554171723 923 821149744 239 168204992 515 318543531 268 682022646 160 44882287 332 824661197 418 957306645 306 741109094 314 59828570 35 906659558 16 631651067 511 693833710 109 185763487 21 994278449 757 484375635 466 782111898 439 203445818 33 53766553 870 451621943 871 109719289 2 867459518 580 846967814 899 222194530 164 415253454 163 635783266 576 645530681 584 596332237 998 624925710 794 134912692 340 542728429 687 640549510 142 180070992 66 947971038 826 792090237 353 665886982 217 653827592 974 742882342 97 73920070 935 606186839 647 88531745 581 888243257 613 81743822 374 680917582 401 567014318 677 625707074 430 67490185 583 396851400 736 826745037 637 771969386 785 188247198 385 853211245 467 600942261 654 115798002 770 116690798 448 216686556 675 693090057 597 571738006 241 87149755 117 672898997 349 580984955 99 2127656 305 671441247 881 33898302 726 933845575 643 681462249 369 967297690 209 986176641 561 174627743 121 674436995 944 744066984 936 243431449 587 798447319 844 307853885 152 506175881 531 559190569 492 977124196 300 568657682 596 474082846 957 230131630 889 844011639 70 238588819 832 456415795 960 605179810 800 257881776 361 618175553 208 381196177 103 369977620 877 764614322 815 253499732 180 584072962 661 844118556 629 244977572 475 818975310 110 21269556 335 997781987 810 457860609 203 255856746 811 268799840 719 160445225 964 259360107 667 450036503 718 901874443 672 651391492 372 317728836 393 222596828 658 409614252 489 48101493 566 792411512 161 663247914 503 728474681 205 317626006 948 386976551 431 977823590 592 499220887 72 218701667 680 250324193 685 702291191 373 447829866 261 221826971 213 442126383 154 160422690 106 839103923 944 908013086 571 71411000 296 357059069 396 305408209 640 682053920 617 713695193 199 244459412 365 184324543 811 190063025 546 9949378 721 467053754 944 901220622 889 508197715 651 57733846 805 970837974 393 357493632 43 334156899 778 651511715 414 426209957 972 949476971 574 607534826 381 766574755 537 809576192 772 946457202 8 341765853 707 496141203 3 75975693 878 839846390 199 329266548 612 356701355 950 725799531 167 334032464 324 367656707 970 49108943 513 637414327 588 542518925 692 268653894 290 839978583 830 636458969 28 370338452 69 792676322 985 112439786 429 850561841 970 87586186 424 302496159 558 589237031 598 791550755 294 217147381 373 382429472 901 483575487 356 415447341 443 326998247 799 512454998 602 832528821 582 223611071 825 270354370 399 732867211 890 796903149 974 710271848 179 279527023 532 603423193 991 490206003 364 945082698 665 866737703 382 76992125 521 719289539 121 842748619 776 243316177 848 143634888 103 761613623 628 105840497 637 487167002 630 67596930 337 204988674 301 133644863 697 408138764 96 128656671 491 931506530 244 246454212 454 826723919 744 405384225 531 625842712 362 815601513 312 444168275 911 568904732 861 619106139 892 511355432 716 972773011 104 561647296 552 212957356 143 164150765 665 592171406 192 290100226 357 169717629 275 449604880 900 704458363 806 649311311 174 770907707 250 586098774 15 450612615 355 823354602 977 970381634 617 809465694 430 341390693 857 21625182 484 803768067 415 466125981 822 660230231 617 230820726 416 845273568 299 737953092 720 76996181 234 308238881 385 85603681 464 989127564 527 295687258 785 835573448 203 459627923 560 548873106 262 262017834 779 549227658 134 97278225 680 786800908 418 299394609 971 930873806 299 143532268 374 831956877 875 63879145 561 716809340 589 611784584 851 755738418 16 940673568 130 117591869 682 461684809 841 670629289 871 804747586 251 784921850 683 859088796 47 69660302 447 502960661 953 75312999 396 734276369 514 672217384 549 535521394 384 99374598 525 212404111 186 102541213 738 657803749 788 557930056 276 539412518 59 436752343 970 935412032 561 923668996 965 185597291 64 974962058 518 404547700 677 775620024 677 491816095 928 47262267 850 878558778 735 215973843 882 297564995 766 594794009 563 311542343 941 918699000 454 930666040 970 862963056 351 843366253 104 950983293 843 335830908 620 767856118 735 778712902 37 900288926 995 178639026 852 998931076 672 748353908 423 712617782 492 719102624 408 678141637 156 252665359 614 633330454 237 185529060 333 717603405 564 481227757 51 457211722 6 260901569 625 814535405 648 476706396 619 220979336 564 669896410 627 423458315 593 49026521 540 778051780 910 234440223 379 980039366 770 364233218 357 401598142 895 361712571 173 894097987 79 996448430 5 372115822 112 933062250 543 737586052 727 841251119 45 907897713 92 556248279 957 862742046 502 366365875 221 630687233 731 769967690 752 239063269 120 185145574 462 891907539 11 490353614 10 69182124 710 360431843 483 505253776 773 986535750 306 46706667 731 131432282 755 563127729 990 568646427 60 741482632 46 281914198 95 928307188 288 505600820 742 26148684 66 907749664 897 421438368 742 402055774 472 731555289 973 23848308 658 905795782 175 147733392 406 883643836 845 415772515 935 289297876 351 391990988 444 803982401 846 633310133 537 234877759 923 344239241 361 860934320 649 38451643 310 538314089 861 467007839 784 125080623 622 434800610 135 770961580 811 469376441 73 735912615 157 299880340 888 371870703 338 723886967 203 522525078 280 728679929 787 731140682 284 934303342 414 628972774 287 877067232 204 44474225 571 990940195 326 952750780 715 914728479 261 904586985 545 523881268 407 51956029 824 25063841 582 944087540 491 633495465 44 272066158 443 98024630 799 512571935 742 653449803 756 164645498 971 295163420 188 686047540 969 706988123 392 570498048 2 76009855 296 152581935 101 868378775 134 773891260 948 848881614 648 409025656 455 676223928 663 368621230 198 645316365 600 590355600 279 758236551 527 594112004 863 830278527 399 432002198 314 908375779 664 56024658 46 164821704 427 444924883 659 708217994 273 121017784 516 621611191 879 170368959 290 212075248 861 747002264 266 415105056 44 987748490 319 762567665 563 285099535 454 818574479 806 423357152 564 651566823 138 420138728 274 924117953 490 220107602 539 577345607 505 719660978 53 244085968 455 154071684 298 737767125 208 954625255 797 932956236 847 277062239 504 521702799 443 28173156 443 858094218 847 946535902 799 504457547 843 522743880 997 713051180 412 82411255 589 662193201 209 338568966 599 473230897 89 130209374 244 344519710 90 248379 545 138554157 501 947366813 580 874196700 49 265229861 575 592764778 712 983472911 907 799813312 312 451331810 201 292779698 195 315720853 564 329759366 876 566696488 536 533821937 91 922263520 393 793918528 568 220866309 88 636298775 516 544123045 809 601125287 751 185124000 941 536838996 839 217085773 873 730175940 485 122316675 967 526886229 883 11933364 641 297311998 2 566080805 425 315483952 600 148517050 362 552205900 376 211259099 794 167501748 201 482300770 702 893939917 598 399211837 49 643427079 848 283965050 711 447595966 367 965928619 650 419634121 931 684417297 881 589313619 336 227173837 769 106319325 62 850413823 471 850796822 842 574934342 164 653384644 306 589057125 45 727118033 856 101851381 3 81123623 769 357814518 924 955002793 26 709052756 678 899762253 931 35600070 739 273413124 373 749519519 460 348478067 865 390807060 33 320359766 956 118935349 487 541404697 104 210387739 629 371431888 656 100852651 769 932911211 487 320735112 469 611995125 889 331014331 949 913860469 193 582872944 258 276585299 557 950842067 257 547470358 281 879192987 153 540188948 802 122006477 347 406138931 696 699717707 681 62027258 814 693719617 106 501662162 378 782089207 215 108509359 199 164841137 504 323392685 940 407471808 35 820620130 200 62755639 950 846602534 399 690605228 289 735206719 720 486005009 724 261769204 218 807664000 241 557229054 181 448086912 212 539853950 691 483606098 63 205062379 620 180146207 70 74971098 640 435868121 686 189144079 188 344002563 760 446482454 15 727713225 916 834197578 563 396267763 212 291174871 434 437695575 112 548593130 1 177880899 691 696147682 514 510892334 651 189566356 332 744033231 202 522350490 960 773457464 151 157330002 592 738791405 855 554248579 666 544376262 809 803506041 970 691489098 931 991762364 969 555158462 231 236465583 769 899333831 476 239639923 307 315573105 87 334384931 471 801335171 150 380016920 642 183057005 813 242198555 414 120530788 261 506392825 508 559138753 351 800905384 532 57928279 761 520890744 945 647178672 546 564378812 222 637403758 789 168358361 652 413657650 574 295498053 360 884776960 110 858322917 821 765991040 879 373827410 752 805676915 635 292347826 682 326889963 919 924081889 25 586271921 967 850360086 503 176660025 672 913438979 644 322806480 197 82444235 158 463815091 870 203686993 417 434239537 560 564784755 621 868462449 308 71273584 996 295386914 750 580358346 329 6825502 106 573593222 160 63160244 513 28515815 544 315556761 350 408970298 895 868722319 146 619249018 222 209448963 828 293887215 284 265111919 22 448843755 817 448878393 306 740596668 725 330401117 540 390103763 333 322203873 353 890658442 789 909746311 635 869988230 523 795030341 873 71028428 601 746015907 116 829242557 350 181814538 709 255765736 54 783743771 736 794737099 919 91895331 878 410501401 891 129504263 801 96263547 195 422317995 334 57636817 646 344006565 797 515988699 277 538847172 549 694379556 347 833770387 238 604167058 293 439427943 745 824467283 213 653394898 103 31700560 248 807799552 34 390679550 656 47249462 800 972364151 821 197122598 199 857371623 358 278443293 171 178363921 696 188968779 539 985678995 154 871237438 797 503678685 964 159024940 37 198944817 456 115834043 480 836804293 247 484684660 830 965305110 682 713029857 150 850542615 726 130248858 944 306894119 256 355923598 90 235172466 259 533850883 363 479562154 246 780707078 524 13608348 717 556074759 379 763255653 419 920098328 353 910158612 743 604505367 188 928769611 805 949988143 908 797360602 561 841773714 11 95344600 732 393571067 404 484994642 280 314076745 961 936197944 185 292354927 721 20800938 733 357847160 379 547330095 79 418538605 555 112977278 272 826673468 203 799678997 657 367449304 49 805266404 636 127640974 107 272257012 51 473663649 772 696241160 1 889552386 559 902050754 72 449255527 198 648262827 134 441629690 78 727495652 560 306533777 548 466248461 594 150546069 827 210279806 15 858260937 315 254574570 548 562612757 225 726762620 709 822111463 1000 370618137 667 464448724 791 869601395 356 215461840 65 733683021 705 3155932 204 543730594 571 238061164 469 666960862 342 767061797 164 31031151 149 910475584 733 490416543 583 245981768 887 272546155 254 433677261 462 265541220 175 883799102 546 986856768 897 603685904 205 983455040 341 198266235 240 929059431 532 43331356 833 440248469 896 211493933 920 501367768 926 27735450 573 374630076 198 853788736 343 897680762 297 843242103 710 42422975 644 94291851 822 5001512 978 179410405 990 518693239 711 314177337 248 78344845 260 47193682 814 416722357 319 9153636 247 241623634 664 135852206 438 865259000 949 737824573 922 904447064 472 318378239 369 474205932 234 283890759 88 808329929 755 839241007 4 59000064 344 133282955 271 411211295 658 983377895 247 283254585 480 275219528 63 625394481 802 188750781 636 369818919 710 185190712 119 536708438 82 884087524 949 702452235 479 796855315 324 589776329 400 40584254 109 87481447 62 475250585 25 857823191 214 159763535 707 329704256 203 323732126 885 78024373 923 538276595 643 534725944 437 385061765 611 630083173 168 782573954 360 357486907 282 539767454 723 681371427 857 732716340 772 976835339 518 483603599 936 153290809 791 579399036 426 339042251 360 169392848 573 225737460 606 744063943 258 772234502 824 221124609 392 525567800 758 925826549 87 994466690 200 974830607 698 871294465 37 337602945 212 678209569 90 925831125 685 791474262 731 630287383 217 45731558 634 235677588 373 638661591 254 593176638 124 267378583 166 403420880 248 588576203 774 679373731 603 599996113 927 989034178 128 191467168 795 789839425 466 93997076 805 410574843 661 490060191 759 745234462 380 556490737 117 809365150 974 912654599 131 762827002 360 528324986 558 220653524 436 190943772 978 999134983 374 592631919 904 500849038 764 965158485 475 180344724 406 677344850 933 776710809 103 987064081 563 229913588 609 794310174 375 554133903 884 878710708 714 387259868 385 80328723 596 518763838 820 466734470 912 697065429 780 482211583 146 284700541 444 826113479 204 54916242 126 895014962 500 348149098 464 864291734 475 913258160 28 693046244 860 990261340 23 133968585 177 836087793 31 694228461 886 756106013 164 650778748 255 843060250 427 43026523 150 18881590 839 106084246 920 505964125 451 809193168 986 237375165 522 169684732 740 768939373 454 384830172 222 790897900 868 806295447 315 14172184 205 605566445 751 659816459 111 749977089 412 299996111 686 262042089 84 912739864 865 30766068 869 815287077 253 957476406 812 552582802 600 718996141 51 392996635 621 872888677 366 536016774 933 706626515 555 57877587 849 463169424 717 995449837 738 944393715 811 826610682 68 857883688 188 818407808 392 340960538 332 993638470 766 368223102 725 18966040 317 31790134 200 764676267 350 632154882 235 584999525 955 574638565 4 269003762 907 219584707 912 25490413 442 344751757 750 875787092 831 168944502 877 392885536 698 920371067 274 669057791 228 215783268 920 52419626 386 839650948 457 171994777 200 766168971 691 852921198 881 157992695 392 403310833 697 299763117 417 241913992 444 475013211 36 516205553 474 965722993 954 517571548 299 6131037 27 899924852 113 952507350 28 25868537 106 461703348 873 469360117 715 140800951 78 359309117 274 977710204 194 298693593 673 798512492 978 115412494 297 850819295 873 784992419 796 691250473 331 473590269 580 658281960 753 458950718 772 37646987 308 881981980 385 42005713 785 220005671 500 653706172 219 515226743 33 461999517 536 134626782 801 847984940 978 324797735 507 730049128 877 213553077 946 327908265 72 640362658 33 247080146 955 76500903 716 530583512 818 979545780 1000 644005728 307 99013689 705 509851491 94 138206392 836 508255055 521 33471513 447 578953945 67 282768286 885 214422216 219 401661780 972 181872390 30 624194768 604 426951390 812 682670258 381 995788999 172 246936734 80 570798713 494 619608333 518 873747672 367 68043202 792 389182312 584 423895901 928 424204164 850 602707931 213 43336164 737 87030625 890 674625453 44 6056849 863 77961774 807 233824086 924 271757546 58 584774260 694 882818048 173 799969164 862 359412425 242 656706866 384 878932019 688 158669658 869 438031345 903 328371116 893 164082705 729 41858626 587 898014668 645 376303842 770 201050442 348 161094331 395 913391418 793 599550425 854 798350108 225 141264455 654 873982337 800 840337600 836 699669514 553 15922431 238 134208054 556 74764892 751 42349955 381 422219680 111 745109973 760 534527401 50 56399144 150 673508617 373 854250619 489 675251150 484 175123420 736 923903130 960 926652860 966 724400708 83 931208467 368 131064732 622 337535512 54 144756486 991 31288599 648 551147079 281 614892670 70 88095381 555 247630315 893 858295747 735 410342597 498 340801453 734 168004152 316 628651849 287 895231819 124 272820659 795 793441174 347 243697659 226 442239819 157 747630524 847 400516270 850 631630935 36 657167052 323 314096276 16 292950558 529 884229467 370 736478572 999 874664066 578 161396572 285 393298010 74 587663398 851 799560564 270 677633971 938 934429289 512 868373179 650 987179523 206 702027632 707 212593273 368 119026079 345 563560086 823 62706364 59 754021980 19 866889093 222 483970096 330 885510099 800 642313670 383 967221308 195 514529314 496 740395690 40 314396762 53 483950864 231 281084191 854 952742317 408 129529869 427 539121550 68 619241862 636 530626416 139 650550272 680 754688502 109 517798777 432 361741003 690 413929492 732 191702319 752 834047093 452 561018050 460 643161568 523 384821523 684 843583628 842 369789477 791 505546705 810 913290909 454 283386738 591 962957784 131 799200548 615 495384508 356 871787840 93 718701525 460 263681302 836 839558445 413 799190500 939 796087795 449 695514176 20 257082600 923 935928969 232 291759891 854 692566602 492 419468852 422 850380625 650 142321391 34 284372164 69 262616409 903 740073355 312 945197314 577 592861723 61 848009507 68 67056649 187 845897440 673 294102359 724 29313141 101 600537530 215 35923478 340 381080242 10 100496901 466 332420975 69 28735179 235 404058512 178 810174991 932 635855178 121 955970306 969 758484816 627 827167718 439 597346172 77 835995895 792 628396407 166 409896203 209 325706434 131 346880207 328 696459548 648 207988680 443 603812375 626 922196577 693 279235870 196 320860121 798 944141455 430 32368507 759 269363534 732 772654513 139 959118098 432 385496163 643 235146156 375 180878747 157 5246760 846 725093144 915 69083678 669 527339803 665 729719009 959 167520004 52 194973285 22 878943378 767 850709656 779 611524868 507 382604349 958 967723761 888 827667686 172 602834483 752 115396345 731 157209375 45 614785675 704 120732273 606 624322656 1000 297215270 686 897703360 557 658650502 42 220229544 166 170480084 61 597324314 102 685704222 841 869608871 794 605489248 194 592298353 76 771669697 268 138205794 660 120041281 415 360211592 869 159948121 929 913842414 410 22337453 205 79473927 758 682872783 983 650316041 586 64306170 702 940841336 902 572294582 227 46432299 263 706106644 590 452225155 532 251106357 497 84553574 861 603369087 606 551918338 240 855020373 913 180861766 45 598572277 787 771478042 633 522991409 806 708196944 165 769377294 949 783427620 972 255902942 723 595137902 492 827151379 125 557122115 716 255038710 50 294455427 903 8573750 687 938183850 344 263061181 101 893172694 892 537325133 57 445556929 154 482955245 298 621566591 968 386112454 146 932794720 739 982599408 521 397154321 221 258072136 729 992481553 124 683123458 583 544669492 849 621004637 616 837048033 832 436195003 180 528350018 190 202635223 568 169629965 827 909896492 307 822233879 962 656891650 102 978096540 700 629370186 687 99025099 326 365396117 683 550679240 408 321431019 524 163014028 518 129188606 735 452245532 83 245402433 604 634165469 790 120387257 696 752126112 252 758773955 710 428474355 20 716839099 791 775821886 994 687597973 276 515432490 208 64767422 122 850960986 629 701993476 575 479295927 560 480337756 428 519834360 801 819121542 45 183996464 232 323531218 771 427619252 365 375639516 28 139516236 872 811663645 814 679017038 324 346948116 753 502757800 15 664909295 432 875469510 264 935637684 487 403289360 78 33945394 101 934206768 149 596320151 163 9005801 169 776861474 2 353337420 357 356309866 331 873258033 206 846723809 23 420487205 314 742897629 399 616659712 703 538644318 941 484089898 281 299113334 14 80305584 71 404005401 28 182951512 7 117010539 884 925622757 870 914700286 194 102459131 182 601116019 778 499389685 447 497380046 474 47003127 444 493376136 23 107860936 250 993663094 200 703173255 57 265456321 628 386363774 514 622050756 163 77675201 781 882873649 556 25887363 1 950436040 113 907324958 470 286740810 332 996179530 489 417771334 142 184560273 552 941782604 384 877523902 237 740733921 170 306476307 157 322369980 462 273994358 21 94832567 279 883509433 432 483800571 336 146277109 478 538402639 763 83160162 44 321754474 683 530818382 551 514354145 442 479579007 738 135336588 674 74969668 621 142712360 446 244099940 704 267117841 535 987689633 479 727620030 116 794788611 58 251533425 322 24914747 597 826256221 9 197989391 34 663130496 995 167444867 400 730564381 140 512834611 579 48420124 767 326362489 128 990703341 264 43957537 641 887257647 236 131677568 321 204428680 151 164597012 557 164986810 946 728966265 595 123190772 1 650150860 657 490617851 707 140739849 57 888297402 8 112081265 834 281250503 65 65610031 300 550748715 1000 498820788 14 462281950 532 151178378 856 203904519 820 869583927 482 113405127 905 562139730 556 262406628 113 120902171 160 710635113 612 602964264 506 750475071 917 520696318 112 184824141 310 210563150 277 642435075 522 427868739 900 77981652 660 173296551 856 8990728 249 373073288 524 437139153 580 671270465 528 341777152 875 825340970 661 624346624 724 136072389 228 459168139 16 184092931 556 903982006 974 938905291 151 30661543 140 392669878 869 851856206 891 376364112 89 295090928 859 805451909 308 785239148 350 3088443 712 887050017 826 595251169 340 104364101 341 293435189 938 177593738 229 497296488 774 138540561 722 628584724 734 867959669 763 580551514 515 423233815 657 665506667 748 745479925 667 430552397 793 543305890 964 754708500 629 305341613 99 782318301 967 648795039 754 458257338 493 639090032 496 558736252 329 957986320 375 492966181 517 455206690 671 291958559 224 216503117 469 673859897 128 575720840 194 17511269 846 901019197 471 342376364 294 156100700 186 940129546 757 666378721 354 483017725 390 685771316 663 936709261 249 900971578 455 517512240 141 777524431 282 680447367 831 112185778 148 981527059 46 116311221 426 76515015 346 77329104 635 174139068 599 738405477 552 120389374 128 206156969 244 257501750 564 122945106 89 523678102 925 212526 144 546541459 945 512186318 123 725366910 179 553050238 140 645437615 428 584441137 386 169735742 512 663550586 560 526573000 522 209997795 899 866616025 573 22592334 762 406698309 157 965695863 840 584142169 382 221128492 319 373646603 857 577943912 395 779066087 334 657631090 634 457631650 986 600004416 213 528259443 561 749132779 732 606093541 533 360001848 982 199277967 136 879177540 601 308668886 366 36604967 398 280756369 484 84084023 66 597789410 686 101042612 826 146028529 83 150900439 674 867587836 146 831745501 391 485353581 964 397046568 802 231391152 747 550435082 226 70460931 51 152184620 125 923839579 519 911847445 80 250173790 230 169806989 171 702642581 201 946345977 226 172546824 73 445917040 911 301805787 817 976522170 353 942444667 279 520856342 338 230558764 1 883910903 790 348596919 888 897276824 721 879078932 192 7985801 88 411736876 714 967407695 766 593211361 426 41905266 339 329084898 989 840734731 624 598159100 940 573302959 908 337088865 275 534147381 259 98316213 738 650115589 632 59716255 852 755128432 110 13288598 687 602833067 129 608068932 523 321816104 748 597245413 769 188418401 323 23087244 449 418554533 837 833004351 361 257982441 701 541314574 293 887816952 346 110844881 821 202629465 985 30245365 780 971467398 611 743414228 795 783836395 879 329249955 104 984491323 374 808495552 936 790982384 67 589056011 149 879461761 744 879001929 716 296460581 308 32055488 717 630754087 776 895982143 405 7205429 697 866801027 966 14140691 990 308598515 827 188219861 463 276605782 177 88553529 567 236444223 504 610722163 536 326128001 832 27136930 368 719382195 347 36059088 398 540893255 445 125905905 363 720903955 896 773593393 78 199274003 421 300460627 810 445799320 300 59684821 566 461772744 564 38309291 805 358448789 359 340084780 787 601392822 861 573676959 922 839560766 171 420054556 559 166225684 256 512926841 64 445369585 576 536849056 913 757242996 577 726787516 861 700670218 241 998535281 915 926582655 377 274500890 290 544819039 799 952366447 291 534413008 859 165447963 700 742157304 83 381388952 75 606859296 307 59826220 455 939884344 635 901789544 59 448810540 146 194967215 194 489171307 283 853888267 458 297411981 302 721892802 95 896364142 494 94563379 245 25532057 875 301047872 22 236941746 302 307449482 478 560144603 112 108487633 709 791749852 751 930371835 292 411822847 553 254816301 83 725112963 348 916827652 11 334549604 429 36251960 394 460332725 752 630517500 941 930786413 247 267881523 277 313609201 495 273095971 267 181448259 670 577287862 763 429766824 769 560233617 288 702138375 423 389292821 36 998179559 740 74817972 475 261350636 240 252849623 93 956540647 988 546798636 510 416254417 946 983717127 830 582128429 560 605864941 894 222606309 294 945542963 391 25829142 688 259748605 546 832458925 60 927958102 496 214656981 62 985120002 662 516333193 539 986400111 388 129121654 451 261234921 628 8014562 930 225176697 373 461357122 287 580128478 60 722825586 83 127242543 758 430988968 896 324233739 428 545411634 683 919249294 971 571279776 9 206468754 245 664836632 279 499421068 987 677866470 716 177388322 913 104682055 297 664136958 104 818788313 657 309885530 431 592461048 463 514600593 253 940034913 236 333463661 609 607542966 395 606584040 991 25230513 661 232881652 429 245157999 685 430228064 78 798129964 213 963948651 250 981371635 251 849139335 74 9844912 609 319191571 43 277697179 647 468734260 118 6088520 817 578370237 104 926479081 240 158296955 856 286072599 154 998653433 490 563858060 263 208911440 108 379474740 113 799198334 596 145208855 72 764347084 135 756132128 710 880407214 71 107677625 190 233059852 24 228658225 461 77397516 700 431659348 290 541816017 835 500712432 113 360430381 159 536355826 584 382185594 998 6179400 194 471064889 206 158672833 644 651766266 319 871579666 98 348267614 279 719459162 953 107821197 967 361677349 192 31363814 564 874413736 804 936079447 155 849844695 916 574962240 620 538860150 826 195982527 383 686577876 177 761123004 790 621856164 715 445451250 586 485758898 131 790421053 154 654105549 785 372815462 255 445076676 978 802920497 723 16057285 616 509385970 11 178747881 477 841848910 946 596819409 353 712394554 218 37037658 654 201896185 159 239670802 43 237498178 440 10796867 426 576758943 480 342899329 584 165206046 939 106301660 106 231188828 45 210532123 595 680710821 800 298092290 543 900760231 584 382509078 74 679873522 299 582458133 191 961350717 984 833717945 334 294252194 720 472121052 985 777226735 160 2183415 560 216562463 132 456473717 907 643434862 277 940012338 1000 675137521 481 688130613 488 999912871 731 346917311 373 687194525 759 400173542 912 285077197 774 58531460 928 283974456 204 157775187 75 380024671 393 446668017 272 428360702 56 902134351 128 732107851 342 461595937 861 837677592 768 137494178 61 815418540 80 393328251 784 105581855 865 827888152 696 20965501 40 274603454 515 534608086 128 951533705 306 50575034 322 431630117 719 522863022 802 874074930 338 610067828 84 107796410 22 860833806 874 28847215 923 806836903 825 795829213 165 271301088 912 394539597 209 868659534 202 341350120 568 488771191 871 247217776 373 224180032 266 340854085 271 932375020 671 280146966 765 369130537 298 356233994 974 433676818 89 543733141 543 475196936 516 87721819 131 803443295 727 114192763 541 301231343 446 67213743 266 372675784 336 670299666 734 98316482 574 279591628 680 36497040 276 251358301 437 809693423 634 846889895 804 282293360 565 82570033 973 730488858 651 941555201 188 961406797 841 69052215 834 539526460 719 51788570 622 522589810 352 704248278 292 204716515 513 509302264 346 923160643 37 696752328 544 850144173 503 735217380 694 829714348 817 197002912 609 242967359 250 273285175 823 549141831 389 433642730 103 435631524 108 634291026 826 103941103 572 93824472 63 251782221 154 209554074 301 740405299 735 335451408 455 271966437 465 728619501 752 293206142 846 265958928 328 878777857 518 342867847 48 299836593 439 620937088 631 519934410 696 582599139 373 216957001 643 809712658 342 424514316 856 96978587 777 410945524 264 95842445 809 561875261 629 879616280 776 938300595 293 843952183 223 733910525 156 935731041 902 634937337 926 883526336 968 212079461 19 650531909 161 146505516 292 649666539 82 421780523 594 549506092 213 186167286 689 681320704 239 812496798 379 411774782 572 587008531 638 398833912 154 794633713 768 330515670 183 265740174 412 457440547 479 583572594 625 760707165 831 523574846 802 728349185 885 53645069 715 382882057 815 287065052 832 975502619 715 328912436 713 290052936 841 436936732 22 986601601 701 62287162 224 960924748 876 887370202 910 472569225 958 114348844 630 464791455 70 760972494 352 606395497 396 378653597 249 525987173 325 835691126 650 596926265 265 671644937 32 769762152 406 235512136 887 512600859 857 36819543 127 565363933 379 62062549 907 338203681 487 37610872 444 379403760 62 435624483 626 1293417 646 394824580 338 85456737 135 907930017 607 917214921 339 161851496 999 967074493 663 504693475 20 539303598 659 306613007 760 267385950 745 677017205 978 340321535 637 565056114 301 259279917 877 595769108 533 955622087 804 931703934 565 69342572 384 40357874 915 685770985 292 153338967 820 558818284 90 3608228 865 841933250 150 501616357 567 946282017 422 976503905 259 943539954 929 490556660 374 356933084 871 415455929 782 818922397 360 451704935 192 259004709 315 630431471 6 357743394 600 102913047 32 652843038 8 734921621 416 886562100 18 492105540 432 163124111 478 232200141 789 740765846 362 766067500 893 856686745 35 927611760 441 787448095 657 517382426 541 468333989 972 365357337 212 177961328 964 590529462 941 822621026 357 451096826 369 898763069 977 261448097 234 693021312 724 927202219 263 130565454 743 213253730 674 86999641 582 265847251 630 105735040 549 838507116 930 460765729 11 213299554 704 276730597 225 96807849 552 602979328 783 700659 288 127313571 43 692773025 522 494680724 551 240873300 984 988312123 518 140175062 337 36348666 398 176216614 246 63662651 655 777804480 896 624022595 874 933364483 706 978682851 423 215458324 630 188630353 883 368901837 584 479775526 289 634229200 622 713473906 465 550673994 305 201620578 884 375490164 575 497309999 656 853680020 663 348203717 793 956124243 276 339509065 650 765468507 213 347590233 190 276107442 106 240767050 184 423536095 781 409146165 563 400776357 288 186570283 160 571431883 314 452704482 58 97561467 987 162778197 880 299000334 533 107898422 130 285504911 472 660425165 180 931048278 206 717637678 748 665118091 510 135663886 287 950791096 940 510769326 160 682589363 188 852720034 224 589541653 108 900498743 980 303282904 996 727316478 271 875414569 833 254297351 97 682895167 858 642962649 439 354006856 862 21863376 757 330603590 334 113613872 85 286460379 149 739583516 94 371101435 222 185298513 152 834560722 796 427056455 62 935125398 906 791840632 544 216076450 403 593894685 259 927907107 869 335353508 82 745415333 458 125448865 146 119901597 738 189444849 494 498168674 590 511822982 225 677962965 440 759751587 504 311999078 696 772331219 102 903653582 528 992994220 963 116484715 696 10384462 286 800671687 542 852544985 373 351329238 479 403805194 520 728716911 267 859848755 849 715562887 967 153217350 62 971456109 550 466585182 276 476020987 792 597611090 596 548020766 86 255692834 576 490652063 525 216571787 445 724296509 980 496978040 724 821162007 774 742004158 320 124419674 656 885939649 303 248987696 527 88138648 999 223192630 901 304158768 871 464622644 604 800928948 904 864519074 460 300910063 531 7256072 155 819535245 569 918206614 54 392348643 588 66039560 970 21166100 278 242040746 931 266403562 465 938444556 913 928940815 938 619569433 230 60772632 250 254493380 474 403178457 578 829417257 418 913590774 526 202530588 76 714712220 469 747109435 865 626377595 319 481156525 117 400961307 947 329482146 404 471308514 827 102711970 635 718738286 258 502872576 949 529132206 733 536907580 590 90164810 285 944178093 685 97315890 438 971807973 848 645018287 61 842717799 105 456188586 182 666511044 282 613450664 37 785790928 103 52223631 201 667487984 525 580281904 316 917118193 524 784260841 525 338395297 920 918350550 136 553787453 569 51902916 824 406336972 383 422327667 183 593259705 800 369822404 353 115224670 554 597724224 156 796198841 249 2660503 402 459731471 215 149385929 696 164481958 526 286935556 468 859309224 172 553919771 36 17501627 813 501199097 178 476006645 678 89979106 442 885674121 865 597943793 8 674097590 544 328723683 687 176545963 621 608734047 202 331701843 737 112701808 188 738013538 532 852619921 636 748656920 10 933892220 489 726532530 416 287772253 4 36197971 585 774810182 923 207220136 989 564919975 562 728204909 641 421978265 665 143591763 291 174153870 917 746576897 308 152262638 18 395561257 448 842208874 421 738316929 416 541019146 20 597124147 843 437496280 291 823159882 665 500407036 833 229223138 745 321289307 182 956766162 30 931202390 830 841949225 135 584124737 107 993915552 513 575820560 437 807251853 198 190020387 360 936764136 683 153224698 248 786644962 440 379956591 71 714694441 258 97714227 815 468767949 871 670110180 752 484308969 202 238578750 346 848368778 396 163398175 695 423522873 895 697676661 368 519150719 605 196971018 718 668793332 266 910937040 114 965255066 57 438635722 639 173088579 822 801330904 469 278441471 116 553670701 438 934503023 113 395301107 510 889018564 487 220347741 42 986202928 127 224883578 500 150087417 853 712892253 984 15640656 323 21562368 171 538189935 971 345012131 873 549269980 38 877431228 861 460607906 422 410536045 627 694421267 781 612812667 544 324556910 271 351813430 989 910252827 683 445730840 874 618860966 172 549293439 661 549525963 568 702695371 388 223275395 462 38996694 813 645894620 183 701554100 679 106990069 589 774820151 816 111376918 314 88042829 890 501232730 287 943040537 576 809466787 557 902306466 730 120407615 635 307755113 640 131220851 257 820395197 469 52729816 356 340127302 217 231478702 510 379763373 618 849532596 750 633450234 271 412983330 628 794367487 527 424287992 733 772859058 670 333433595 807 936412575 491 849100087 762 296954678 992 379501575 419 935805294 916 442058886 984 29603514 677 729990659 68 390276909 241 974715263 428 656589338 303 587842366 40 155122857 884 172446814 552 717035182 90 444327221 832 662349155 821 852029669 496 448793378 486 900949664 575 155568330 59 488043595 531 399988019 502 156453037 630 593127918 176 913352940 814 701727131 605 876208435 572 777635 719 475333242 649 875076739 755 80060145 421 948928569 415 649789314 597 502665203 200 980139804 984 431821902 378 825532308 799 576500484 845 545996122 487 756296176 491 383828351 190 724730178 445 538073822 863 174100007 853 443147342 43 745288596 842 209327880 31 488447482 331 762037879 993 801156441 75 77286365 823 820705844 623 702680027 317 479122311 74 900185003 266 197044169 744 911321845 172 98524160 650 397498720 715 346291854 755 69439693 906 357043396 188 747200754 796 882606999 752 896833216 902 273605181 145 758507539 476 835957600 979 597544039 98 735087749 294 568276974 906 436955290 654 725906271 904 289191039 427 881541829 821 912788466 398 107722199 67 105478667 231 77644654 198 898514847 800 873703885 333 62996562 450 128313309 538 180634986 639 297422388 75 653729348 259 758904965 289 568568788 809 382427073 273 559545379 831 338238589 72 820622220 483 135727096 148 338149124 118 779475674 48 91592243 908 8961361 435 578148058 155 345889309 10 8994006 381 220417734 251 611593112 555 111463510 481 842102238 174 279605768 422 950731286 559 452684780 970 351327171 844 6514121 304 580457633 485 442070328 610 121859052 893 804305330 502 954294183 159 791136499 711 664902636 481 49722062 461 986986550 372 434621209 424 232254480 959 81730181 403 829102386 439 981702765 664 196451042 612 711686546 298 269654793 81 822024210 522 217545132 575 344423047 687 191417399 612 443605373 994 70202240 342 454035333 430 391880560 732 228634637 171 999969836 615 624657017 302 674690128 590 301749709 156 617318101 323 346633760 80 103249416 500 869609198 412 527476702 263 674577364 888 211473347 97 436171799 755 94454295 897 67874856 308 531511673 491 920672005 40 542702112 906 566674241 147 256844061 741 452749582 460 964178360 377 133138955 244 354953545 215 487723209 749 737811880 29 775449834 394 238141413 48 721856273 625 278158756 46 649868249 592 48305371 425 228974354 577 281982443 571 391396463 98 711244943 477 345415117 385 953209461 552 291997446 13 133454146 10 576997748 497 485366068 670 948497937 744 13405412 545 933822369 183 600194456 814 690107978 398 413851551 679 423337457 477 429059097 511 172703894 775 801691305 808 559388011 282 564762907 621 683688456 563 915462809 861 125349614 20 867754038 782 679287834 62 143198745 937 445601055 588 832423075 490 534572223 551 2470629 561 93362904 38 917352259 923 772951587 216 369630 443 43921647 184 24970802 419 443570938 219 588805073 187 71830040 595 763590316 468 593921306 427 306125303 880 19930915 706 666332319 561 247186816 163 231498144 764 96768192 143 715787677 335 115486533 184 419640336 932 396862834 554 846524499 562 327539819 167 450084343 323 488432431 326 697462790 913 875367906 661 252229991 435 420660448 521 53089532 514 85749762 453 898635471 801 610647097 6 15618158 755 997034489 391 866906430 722 102727208 388 125231583 547 658145184 685 369264297 439 321892696 67 94145631 41 602698323 744 425241157 96 649338147 764 107720745 477 883577303 235 197726153 281 547187958 973 260395398 889 433117558 994 197334817 605 525701048 278 963319514 880 548452192 157 793273107 245 370609945 882 85358657 207 649058857 360 578847127 525 280276668 391 489491955 645 915606776 666 116577759 118 186104402 226 717367461 390 703879694 111 99476147 131 689721943 337 465019740 145 719433161 354 540578895 332 825162452 134 371686678 735 103043222 257 558553267 517 234171310 896 233028321 755 207821247 489 124347217 627 949393978 464 98609659 776 607061171 859 518813153 642 291676348 528 294213222 472 240004881 606 904856025 925 411135548 350 606203739 621 331111222 600 166985658 180 392657513 30 494404683 327 273833652 777 63222386 421 43807866 758 974775968 760 118883109 866 492001595 83 17120438 160 324000178 801 626122386 930 950649036 195 202792001 248 108308970 483 880366281 370 890257268 726 480301983 444 36321159 40 469218269 926 344942194 910 540439434 167 583422453 667 117629149 841 987979634 848 813392747 212 5806581 533 226042749 450 690059690 901 575134591 997 815889691 731 628035423 312 932861903 184 177967026 134 30703745 417 604549997 233 706524029 835 80353109 174 20052977 55 585421230 663 747448905 733 98570323 741 391149195 360 156202671 340 140278251 605 162763667 269 169047567 786 77809686 766 705025488 590 894296974 411 262319558 864 774629654 652 498735065 25 333789787 816 581386053 494 825674962 624 275255317 582 644430844 922 419976513 65 736851927 448 518370023 265 614399462 554 460569980 963 327919191 205 153103615 593 367605556 581 750651199 601 323230290 418 702365834 442 305630085 191 320731455 200 685268705 227 338260363 677 561541904 782 943822650 340 442758844 585 18940441 393 489178296 130 574304808 630 793540774 175 7321922 28 599448161 961 643342293 636 980317721 132 398498334 193 363837456 315 192376658 495 748758254 76 481549327 500 259142415 442 8898280 953 444235666 110 955363969 811 755661434 544 655501758 841 541821719 41 243750394 875 55139955 991 749356158 604 854855625 703 917604187 888 569543946 631 773881893 849 667597159 645 60054749 854 508189412 528 853488948 810 195809296 371 25078101 988 724103358 341 34298304 259 642494131 100 549214644 391 177867901 884 29613407 642 134421119 650 452539193 432 615786152 969 145051998 149 825409429 556 561999566 196 746601781 906 615501052 646 590278232 419 553270979 705 422586011 33 497147538 74 935879379 2 309753752 32 612546395 670 765830614 568 458270183 354 665696953 431 303321912 716 230265098 554 443102484 497 201359675 998 752969818 1000 760765674 775 649140694 313 841340587 588 650491302 857 201829805 169 671420142 384 105005515 797 867525529 78 42972725 756 282754336 133 681577433 627 557888346 846 354686197 696 507046175 971 674195659 431 168801967 942 2977510 201 64411963 703 465379381 33 911843614 146 359591133 133 480200649 606 714726714 963 188097409 844 406755323 301 631781596 324 728249787 0 762218817 853 879671607 632 647812327 717 186186076 139 531441589 238 701182186 335 889593837 819 616970331 393 770490667 205 934771508 510 801890286 832 20604994 91 5641837 616 956868013 203 189854697 31 18658756 949 844994735 847 295109791 625 233906331 89 203697882 891 360227443 765 882755661 665 19155111 793 157923216 994 812950546 633 88325319 370 714088437 425 161770279 949 711574358 611 30775418 175 532023565 853 886500014 889 879306210 531 76946156 665 636969384 60 286221170 923 170351921 106 831605342 708 195949862 5 905333918 706 430541976 610 516093681 658 43857076 521 801919094 838 162659303 826 702101470 768 930518051 93 733748369 343 896100401 495 649189280 484 406902377 617 921820234 573 590898823 555 139038606 537 418972623 32 874110910 961 972236115 230 709791631 879 10294891 17 476462868 890 823080407 745 383386195 38 633574023 883 457455193 931 213782868 286 267195652 926 391524429 126 963585194 416 582639639 679 617435686 430 263664369 664 514181430 870 927753191 428 478918409 881 833294489 914 981589912 440 190703649 700 404512684 618 168831396 853 81738087 345 814914563 311 839306226 919 784223281 441 277344865 776 299409059 294 985443560 999 692401492 201 832386959 737 410232850 521 284623498 731 40359932 573 683439415 479 781362696 894 932854156 706 136126139 833 470847888 823 733636417 983 248453055 11 539253471 764 594243063 818 239678137 992 998140492 545 432790498 361 268985310 958 551046505 417 378394792 444 484462494 350 824227483 270 206347463 338 366590518 207 95696240 882 355922973 881 75409277 660 611147774 246 761492640 925 161479039 774 132564042 345 989521362 232 854967625 401 444317914 172 856447844 191 567834914 662 908434942 519 277228789 953 363794288 795 163949847 269 233537570 297 41760213 314 283846053 362 903836692 749 270674176 266 280681451 615 873914754 791 456950261 695 902482094 113 234411114 623 633509800 908 863462375 405 918479219 190 418581413 415 889517966 136 963055999 649 20900792 558 808737666 47 372532055 474 26634417 953 325578408 218 86836141 58 779300180 582 755824231 124 862776268 300 96897085 557 738277699 338 912920846 913 247666822 986 921325333 97 383666224 168 341190654 518 765846238 238 430726964 802 331859037 819 253115797 964 976916213 423 311696492 121 643371469 361 844114373 27 992136699 935 626365715 807 514409646 933 159394201 671 284906163 576 931837258 479 255598920 554 633658987 225 876392693 852 560402276 278 556491067 673 820707134 216 945071779 546 497427755 669 460396414 902 147788586 981 102219641 732 355724804 603 127037521 490 850402762 20 874879804 974 267396888 638 599219474 655 48116925 369 171466468 223 60008690 63 194535811 483 346516472 847 1100871 163 195936129 647 640677082 359 711354694 566 202916794 308 944069479 608 179707660 626 433292140 29 288821564 84 608158038 638 5127230 204 736824534 785 656196690 178 906938239 524 688542236 487 557752675 372 580081886 600 128241439 348 429538422 327 248231096 297 504923288 325 218542383 560 512336375 757 360893606 450 425194694 455 727343102 138 585962511 372 922606447 876 337086134 279 215944653 576 383754414 512 719684794 623 475057375 355 956853656 801 154311908 740 98091705 428 923587180 890 729999253 498 882329668 674 987878566 327 770430620 48 92013162 956 385826117 185 290359200 50 285879913 40 148256723 615 929982887 746 199016056 661 100591170 608 331632166 4 729434749 567 544438455 116 721434263 842 822613819 417 524494099 402 404704818 110 387418752 620 425973796 80 221397106 373 321864240 854 758217089 166 541277720 638 57334728 818 630776541 652 938301837 333 153805492 805 685387780 148 322528192 937 730165361 665 124580887 580 590924805 75 285650663 777 34998058 821 529515535 96 579317543 778 199158549 567 130618170 123 780506322 464 522221240 140 720233660 131 986684239 397 855042548 179 746800049 687 586730313 965 366935838 624 242333035 971 946037564 883 996440034 530 875875174 589 824278005 711 568382808 620 379361137 979 676149106 973 356784686 158 130977855 497 929233682 420 771281824 310 766086855 19 571554440 360 916293741 417 722515263 48 764998904 235 113336647 180 20266831 630 677076792 116 592015653 105 487048554 586 99018166 738 552955629 301 161399783 914 469486363 236 141759646 920 548873537 887 955570294 241 682316227 445 533459742 676 706906081 662 467888694 250 197998259 691 969593659 795 171311857 341 387419600 786 991037535 27 988226185 835 455547708 999 665761172 978 546625671 404 483720656 510 646933944 825 512608233 609 794146638 820 870491352 996 876220507 748 913033957 606 99666741 821 898595520 628 412770193 41 210805825 533 623674730 920 701890072 539 522899257 17 80091457 28 925142089 441 709891726 458 633429705 23 135289046 132 173277157 683 232581324 925 641598333 394 601514897 220 457149039 759 395215298 807 23370396 437 667728780 924 447480619 895 387647456 755 998057884 573 810037932 703 534201370 466 294491925 399 296878980 389 272174942 218 483595652 809 551036255 381 127461495 29 655005248 938 360672909 837 740675152 276 701941830 50 437802372 305 91768886 658 987707448 190 777833190 92 530670567 705 301028919 864 292731814 512 645726128 602 409065056 635 728675580 413 623872110 990 886003921 957 948081210 20 290633108 470 852874066 6 528633451 343 302673089 681 281766805 120 268718833 223 837053498 693 202920051 1000 65725118 869 334634012 819 444098573 21 883706266 278 575786637 37 960002885 633 713425270 559 275186096 318 792473430 651 911678958 331 672778211 198 571782837 328 792624755 646 140814059 472 866564321 734 705828275 303 499006809 105 471984156 677 663309294 500 208354412 759 948517908 69 995599935 65 172905897 207 363994895 368 466423066 554 60427419 233 332274794 481 654336311 522 620759990 401 750560157 193 48808573 418 429569735 699 274522119 937 329458986 850 443341204 224 792908580 211 932555352 191 426783148 80 670653549 561 455269012 427 508562235 846 408574265 735 4179649 760 734671120 664 759417282 588 506705698 83 314394240 257 420617083 444 788413089 746 227345909 157 209253743 919 962543255 500 454626574 964 677790058 173 141278145 818 829444316 467 255427892 828 391197872 422 287064456 698 75941748 103 385529016 117 983955874 114 670322057 460 338116671 593 562501846 600 332753099 399 956618757 531 573650910 839 925556337 602 943426687 190 396578938 146 205309048 932 249954039 855 641591935 381 456283455 125 504694244 602 514647092 187 677949195 521 176179896 596 587441956 934 228742881 205 87822097 352 968647029 923 714793326 621 63995644 389 388856690 964 503340618 653 265732383 493 87423096 105 461561238 75 852730431 679 140175953 158 227642849 172 91738152 569 301740583 218 261977182 332 969574995 316 36614631 990 922687897 423 630658109 69 301727034 19 127545483 672 342600970 509 117535546 556 276699300 147 711491516 402 942447531 847 592054983 58 872886095 553 2661352 13 605056625 607 580789892 552 788526028 853 711170528 236 187152930 975 462898348 237 786456161 253 230517651 696 18364987 990 978882254 660 817834482 902 788794679 803 415088700 539 419968277 197 625219943 11 197368816 62 851217509 267 85954149 590 918990401 274 776053088 863 215443813 146 555506788 262 763212704 924 913314828 986 850902793 779 857981437 600 917511297 43 174525729 7 424771902 925 483908635 802 953393407 804 394017032 777 205908461 552 297618329 958 524760398 664 605059595 284 811203902 64 513049140 956 709457002 225 30151750 871 895469394 15 551070879 259 119610314 311 731439478 198 198298847 320 681386590 104 70709191 495 904437090 936 562349122 636 966203942 93 613526246 406 242149307 114 784764347 466 643688143 583 136945982 909 756123029 243 478990970 666 37623044 875 798533056 619 832043381 310 708308523 493 109919363 27 885271952 727 901473502 879 873396006 451 917786608 492 449790117 337 991982438 282 682706691 483 276412907 682 912473550 195 672164166 837 107077781 640 845914285 604 225039529 998 518761857 659 514353017 712 234148115 143 320095739 951 779269240 509 310234914 818 261676599 255 492581486 457 534871131 701 61604451 869 478881864 557 30974425 54 378093678 945 403621380 957 288299326 193 36910913 408 800108715 61 106145381 894 755436137 531 573335533 286 487904970 630 294625618 216 315480627 12 995646085 34 862186859 387 341943215 186 607271143 883 284843211 852 416412902 871 493854936 823 846054883 374 5214240 473 139307547 208 630839972 708 634685476 153 957275685 472 798266529 711 818525225 328 329062845 483 674462860 187 224952799 70 158416171 151 523768640 214 45423072 999 297411381 39 600044139 393 958602867 972 930612280 11 238741482 778 957838492 21 510126719 560 718172585 788 520138956 900 909330143 542 598323952 827 552633583 542 753224035 732 126604902 140 649862361 595 358464018 921 692267939 763 21365543 854 735796191 133 870029456 365 761328347 254 101779626 846 441969646 89 265776314 289 415707114 829 292292404 367 898523376 405 353005305 576 692611360 422 238821342 315 958528357 607 813061228 238 800974943 429 883913914 984 5689003 386 820057251 518 857242245 317 137462815 366 170969168 995 846912265 946 393083226 382 585159123 749 571002811 763 812498955 924 942168565 284 259644748 271 668822341 252 327366619 745 129377841 432 794171778 802 917342214 686 589865877 405 966911784 688 882143783 730 40806737 385 658260729 395 699971137 386 354461218 774 172073677 161 807528076 482 216699859 349 125818335 656 497098132 695 601248464 131 487023149 654 620751773 357 55866292 34 798188984 460 412863098 109 519397885 771 736279470 506 186220169 248 732009653 982 194227447 576 135230390 997 709222252 306 675669717 769 954983494 709 961294181 223 329280418 630 432674591 498 848458653 497 490504820 845 42417822 757 562010279 127 883087211 426 45020515 188 295541375 283 534014733 325 330825729 846 483384579 362 256979576 329 471815514 841 570627944 129 553005925 224 105077009 347 407692537 623 294759532 526 774957904 240 246875944 363 840328424 805 926468600 914 144135130 652 84336179 142 153703861 158 584703658 713 375809670 708 444929181 694 534703823 34 272335245 90 141417699 537 802441365 583 392997850 626 723022873 754 545014954 611 671219707 172 392626308 33 651129857 4 754720656 267 545156373 830 716437435 487 371341065 852 624995515 644 533150070 985 346662951 840 233374553 327 636440768 287 973403136 841 432522156 381 879627916 852 327740621 243 466935235 182 456964977 306 65318451 327 33303640 641 453132938 415 732330027 587 224309255 677 359880405 562 750467544 471 862272850 258 418771308 310 336880109 465 408655020 655 677826246 248 928955745 849 238810089 304 876080919 831 571115703 151 646359041 951 139020124 518 828233495 883 924760482 818 250983466 913 319864289 917 716524458 151 312717092 995 656410328 894 951752744 854 45616198 369 347228723 599 421625785 970 203306917 612 840201015 420 646136797 867 41072248 769 546937901 123 729420811 350 556519416 136 758002201 690 891804059 492 290836747 141 750557523 234 357361489 820 162954793 899 737896739 381 528537030 468 939700066 947 762933839 632 912968420 564 474614197 692 422431785 600 689883598 74 268628364 210 356633443 713 549901006 511 988811854 497 109230749 160 180842457 166 258731917 444 198563581 283 881235317 148 950290600 957 612484667 632 176264643 146 297195897 903 127109521 319 902367442 691 127894335 849 370597906 884 295612876 935 495780473 747 221168893 940 926347927 608 796959770 892 669696937 531 499992833 186 229165882 463 878901993 903 215291199 739 684118040 204 53646735 763 989740837 435 463468272 95 620015395 813 853851558 504 681868137 639 331276452 961 228321335 636 982784833 870 559976186 126 460427802 716 220988981 957 524738517 309 572848072 575 422108388 91 560870890 152 539689396 756 302857411 218 634213323 778 115617474 936 928871621 739 658204788 446 267352672 532 19203879 87 644995591 679 930274132 417 97881006 843 48577890 68 196450069 301 242507172 929 637994910 372 706217077 121 534874689 652 66529657 154 101852721 104 352245749 943 162156087 339 925787053 488 292744239 285 424017206 971 472151810 570 412419172 778 352889277 129 990069710 757 895933524 45 548230306 546 335083492 240 253291052 805 415687265 146 881901915 414 241496981 349 329723080 966 47705643 424 99574293 424 338109144 304 946494902 814 123306286 945 476258554 191 471298470 75 527517283 629 291550434 968 611105278 578 56573039 551 931728696 711 882747706 804 738290442 922 583556309 548 741279577 742 978796419 893 225863645 692 513534965 468 673166095 18 981491628 584 397926107 500 864513590 75 184226932 182 66187954 674 299662570 384 145567024 9 570081944 784 242067127 387 848036691 503 218246827 767 195957346 944 147395102 69 4419034 741 542070332 120 326058999 749 798265900 615 201971286 417 174723625 421 228742438 96 952855550 693 780158003 557 391113087 125 543138939 23 56731521 483 92411127 88 182641534 190 109276363 867 139771040 720 180473552 351 713198571 880 86585791 219 656082004 883 679856845 618 265062972 804 148731877 693 685128229 1 686331804 664 484525330 39 21882747 568 613718846 83 55275412 171 189735013 694 901879847 652 819228460 6 349172646 232 762120254 767 229686563 740 279144393 112 749274108 163 37357195 361 159435170 704 334240576 19 528719557 28 458273679 688 972386643 634 405598906 79 801332375 217 373787981 910 665921431 858 253300651 964 430269153 158 69137132 198 639144264 463 412267573 697 974455965 140 156370599 268 558440281 431 33657633 451 638285412 198 939156796 263 675815007 839 920178583 259 943619556 523 826102794 513 867649058 914 470165158 245 705007490 16 330301427 262 278920355 982 840332985 977 911407987 447 168710957 263 875158071 923 993221946 267 366384822 694 870295406 162 470663644 911 854774644 13 647826979 520 604032263 64 461930335 426 184047814 405 743511083 429 332922346 590 273706225 59 525670895 957 723888914 374 210746592 441 676251676 487 228517659 739 117229636 498 152959944 173 83927057 99 395833023 460 881017938 655 524132673 877 264374710 282 92694479 409 854755894 147 643308166 962 492661488 962 683441208 584 625827975 812 523151184 387 686916820 614 430683859 981 509272968 16 861678115 485 951920015 807 9152294 81 327343441 242 993522216 278 652769918 371 803049930 541 20252872 209 98277248 56 366848826 393 126958652 461 968021756 297 474785966 394 19630461 115 802757094 339 637549258 271 970212339 365 95582546 512 469183133 484 531923775 388 608833279 996 60903896 63 524214720 842 394272361 238 75326160 317 487030317 2 162328138 812 4993833 252 510127884 529 898311362 942 204757837 95 659775201 385 671416072 451 337209877 243 258806411 830 505140106 673 993051307 412 908258680 335 317538806 728 202309132 507 487675192 575 324898556 989 728685145 816 879942648 839 166112298 551 866528518 258 703485397 499 421860154 408 762568670 874 201370139 341 796875497 836 873309402 1 923524772 683 353681811 93 878328764 667 297654634 502 132933900 588 419296327 986 277211666 483 648188939 976 927463998 549 753257507 489 59280560 808 144877787 219 923728529 302 587555467 790 208993285 251 697907826 160 970932524 308 994366030 639 174714243 1 6528727 17 960915038 897 300354901 667 69789666 806 188626569 857 505066417 275 708791610 76 829407121 873 431360847 572 436058056 440 635457504 680 683785219 249 668122748 14 872065533 929 923706667 413 388698085 853 254217583 320 325968609 295 546331386 707 76742868 975 239939551 387 831654526 528 403700837 307 764806115 955 678168339 499 696596170 637 260583467 600 803444185 721 929506730 159 357672401 241 215317377 810 118867382 672 317847003 719 272430435 58 809036327 530 702115359 206 503831224 129 436866789 598 521067694 311 531060675 892 773318158 51 750882283 422 536506110 374 527685199 455 771383065 305 223540044 922 289143216 231 858089399 335 831301557 380 218421413 138 408985046 700 111159134 483 455970168 152 533367111 245 482646587 594 388296448 955 169254924 170 387202224 291 42891195 130 949246535 332 242434492 32 190023600 720 693330198 573 614951161 105 246026909 927 830385596 825 911885615 817 763388193 382 154126662 941 323267205 537 237736460 636 806550841 285 718435679 388 658128616 162 35865742 588 314515904 388 10171078 678 62788144 369 750987009 274 59999361 901 600510322 767 842793815 574 251722329 706 279247508 962 916730054 144 16791401 590 441602690 266 542650845 709 284419228 130 925126525 685 230978938 52 346916158 668 911100622 583 404509115 351 852441289 792 844585593 407 827169017 46 707777677 591 334980933 425 893242619 687 928544272 141 573637859 407 22727840 905 491585181 72 210704607 498 964788784 248 792609384 156 12121158 915 284513921 133 230843781 51 524418775 576 848501271 532 561607754 164 515922308 374 387401001 536 820000433 971 76817627 720 663197636 127 531325852 270 148856737 39 923280474 990 678436282 557 991354583 375 4426417 870 564266493 420 890621098 227 666293250 591 950194258 701 893518859 182 701780168 920 549789280 998 124008778 22 181423511 404 263610395 107 655215688 718 171515903 39 318700195 325 950263138 76 541373906 388 251704813 136 68170775 980 765598023 758 251064279 980 100669894 720 491924044 50 618756826 959 418907545 578 201289464 187 27942755 471 557586199 268 574372621 544 742536071 404 525909769 695 749853498 524 153653951 277 199232712 73 730323689 872 660984906 338 58566746 251 800354601 335 85995578 523 873414659 512 218045656 569 645403393 731 969345392 874 35093531 873 858263896 477 69559260 451 951513417 83 262424121 661 282604004 564 669719346 601 171178153 813 758430075 966 107988910 834 277206585 782 561342098 920 718183802 140 662359206 309 936983582 357 378672304 573 98616993 988 814485045 0 873538823 621 647344851 47 982445509 506 559817389 153 945238155 720 806109191 689 648667155 817 378747886 675 279433832 596 909485120 610 680020248 9 876847345 94 154532553 404 38521570 503 362246684 367 437926303 588 146057218 1 861849304 980 350506828 113 704834692 307 414446172 955 195726851 878 639163853 663 695974974 1 243146380 111 154867655 822 996598993 557 738865971 865 291320443 702 152304676 762 359908737 550 284152336 983 279481626 46 105535993 581 854134599 374 976415171 100 503995113 141 488964706 701 224388419 95 240150073 569 741286563 274 350044406 817 243120788 527 535645779 542 428027843 790 816799618 494 412160384 418 343491537 121 253301262 520 148995943 990 688023465 694 978875816 965 583608343 786 972907426 480 163573133 231 827244326 604 783091941 770 291932391 245 98632188 498 603822110 562 161782430 421 728597079 892 878434952 240 540530627 57 522864414 408 715219894 599 981897923 645 13352366 740 305712302 255 114111166 243 246124986 153 637994285 397 540030757 89 471548125 115 904885530 612 797359792 187 165157995 724 265418466 970 417967792 998 701054425 205 583228182 58 686689126 147 880718841 422 474121320 144 969981864 555 447446621 835 698953586 122 103360333 202 392119562 3 28328092 232 332744564 938 327703435 324 5600613 828 67211338 368 138108961 403 752307110 359 427720926 708 778542507 288 68086500 508 75155016 171 758810462 142 494314529 585 404602107 971 742077887 529 784876874 744 694761397 349 839298125 789 405169511 861 873105984 499 242204028 228 167771266 207 82163555 538 982319322 740 338164493 309 479227609 996 17682563 696 938264342 774 395992721 968 916148670 33 130837145 531 14008888 72 176087008 370 708919873 794 793846291 577 887653207 172 146878933 358 24194600 482 140881549 343 434891135 297 157743965 233 621770081 930 936597119 251 978658552 408 7731848 762 650281882 503 902656269 524 988930183 160 961520316 828 21891280 104 201595436 552 5347730 385 19270604 543 156874305 992 456499464 868 185641101 729 219956045 821 680172722 259 672808443 609 520812058 919 332591068 293 926632299 12 422798301 308 522236731 392 499248101 836 903495775 96 255440169 157 294522983 990 333285650 721 253614346 303 352717142 255 812510596 55 681850782 332 885715744 238 654538595 502 347648934 520 515564441 130 759280376 694 744019866 380 239888694 927 943560313 432 536409697 382 499527927 656 542637315 599 18241602 238 330166838 622 41672551 485 195035262 459 904379795 834 918525596 641 424194176 491 271685076 308 399364065 958 394530522 547 309010592 730 13158142 322 312287803 372 884660530 491 667230773 647 537248645 208 217732645 240 444901021 79 723493728 623 193310426 729 543279511 872 794481441 480 677204182 120 670553937 748 684524830 271 150533514 462 184737689 472 7267057 590 40038127 919 780804092 273 668683865 86 233039422 776 640720419 977 66649290 319 101613118 980 693715622 945 300709725 930 391156142 938 341413003 941 169410585 366 769380342 371 768918476 772 286329716 344 418066391 660 358434807 757 613573510 338 823215992 203 13430221 724 277450767 263 468138053 810 848935089 983 628307015 451 540705712 257 253899937 65 203858617 962 302422567 711 964369634 631 534016718 377 774678024 864 218772183 499 337209893 916 175813925 717 468759102 0 231726010 147 341713214 627 554001 383 508020191 269 161554154 617 65147505 952 423164467 179 800495277 763 579831882 230 853977410 284 123318223 166 578501236 832 494140426 153 434530549 664 984435538 91 172034546 441 192649680 373 55463866 860 110701863 106 33514320 129 841491555 806 802372498 900 477004903 855 400956428 722 334630861 930 788530077 308 884693452 684 63653571 373 532391412 372 258811372 99 945775970 80 35168074 425 374131554 107 5007981 296 306137393 298 979391631 80 749031751 620 86623403 157 34725488 732 295933143 840 499878684 530 443428120 969 163992454 461 356516297 260 238671388 879 36058010 23 759879548 764 42662737 345 258279449 161 151006151 450 314097282 841 441617194 182 929137830 351 142306630 77 442252012 392 623886241 534 70181409 251 901452403 902 795041574 763 470347177 885 278519120 467 187395602 875 721760464 616 321350555 631 161382706 300 829885384 721 127563513 581 990481585 859 661149870 716 117172958 139 765870277 484 269276001 855 391606938 419 836908933 934 312989253 150 308391374 962 619918458 360 784476760 747 337501761 338 694877314 737 29636963 488 977989826 482 75413932 83 113673323 50 507554939 960 767063868 859 209273770 7 261400299 218 686146486 18 167291938 530 250751992 403 832379714 143 130181217 87 637175489 945 526404137 811 790211446 105 962109186 611 352238280 319 339380917 58 857316400 960 259983648 615 223655759 957 130319531 192 633785239 583 641606682 536 892879315 798 361787151 55 920342703 619 52216933 184 40635245 553 629418568 246 324565598 283 504798129 693 712119101 893 682339693 251 689530878 256 273470556 279 756094553 162 435930385 244 360351134 660 297801144 107 59670047 470 385226848 726 109532541 395 957838084 852 768568654 187 513289103 719 673134957 507 936152100 508 202342505 422 9314193 826 460413766 610 631127928 61 79504062 986 181294988 264 833942994 709 272212664 24 178161720 430 294952477 30 618282817 940 681599781 242 950276275 186 359069575 530 842565066 178 545383507 456 925869391 338 857665103 538 608587844 509 707969966 546 177946660 50 216982969 512 578353862 40 541283153 72 809380057 222 280027644 515 52726021 795 18118523 239 372620267 469 431369039 208 643001468 779 23356213 690 918908518 557 803260648 931 525268731 798 874805019 685 661704005 790 484090485 32 865597380 708 247895351 341 236489236 216 301825316 73 615903895 969 873687310 203 541609648 973 926811917 232 941580982 834 512736053 658 834005957 771 783955917 584 442423124 961 356954664 25 3149960 156 519464249 861 78078872 983 512890605 387 377545586 291 645859442 527 555033727 146 397477845 20 745766958 556 856079918 283 717198441 26 613812448 553 906430099 383 707152235 947 281537616 414 423069880 14 155346386 318 225700046 746 995177885 964 726202364 963 869600323 600 644461449 926 228565165 139 94229921 742 500263957 10 126390753 346 226947137 805 96184041 349 364036069 558 790163342 998 669265805 444 21869054 6 307310434 664 55153303 853 142421325 534 527420798 592 826017856 696 557232793 517 320944075 81 386306255 910 139052639 788 880725393 405 288426165 922 1633490 582 208639834 859 911088074 478 326245855 241 240237392 882 825854375 658 171886694 893 391469133 436 934822447 728 899880646 236 993913022 657 928449370 612 370293460 359 531064970 71 121556475 380 646524971 678 678955827 371 688948545 679 775419042 304 525134484 408 168447662 995 617623518 916 631488106 146 609868371 662 324962657 561 854006081 505 39058374 154 181096577 36 816535740 996 116874094 48 700620927 530 884626988 595 930155695 422 137348582 806 813333880 418 405593665 232 321453107 919 384739273 400 584355872 107 818191800 645 922400128 773 248000421 922 956270906 156 970884301 533 404585718 847 949875391 283 846812377 8 774864903 377 787953173 195 694719306 867 243153574 569 761965516 783 394686862 212 658447928 53 292562510 34 514875559 521 608523419 406 157242621 453 545584066 490 864692983 704 109992090 719 529941797 130 194216578 764 117259683 936 602884261 162 274724822 286 998272375 862 340704408 115 694517297 94 509394324 993 969393570 146 744231382 712 282680167 749 163642598 742 883412223 897 375043782 304 246238197 725 932429150 296 327789768 245 715734745 60 296910496 384 160668143 962 832271352 800 290399723 982 670507176 284 302844722 504 721189356 968 738511634 294 83291033 651 541163359 833 525703033 303 69551509 837 773644717 273 182311480 260 143131847 915 657556853 350 975179952 133 908820561 345 274676063 486 428888586 369 845521386 745 60035446 960 855608921 278 781658146 527 343987072 946 110487447 337 947561763 541 999306876 269 658805756 245 468076137 157 551469474 634 524177243 922 668293966 593 650504228 370 597753691 657 740206122 84 639284383 412 424649809 995 436769064 172 368594562 686 404294059 969 11942923 326 890811422 682 864934741 957 937593115 68 718700768 52 510429910 824 499250938 701 327310113 765 187128869 812 992706362 160 332676968 396 437528034 276 606735511 390 160888140 794 930859745 860 341051326 821 169247148 488 920821193 931 655431663 1 296339146 215 754840913 983 587403559 153 764590396 377 878259430 853 240754230 663 706141405 278 306685107 698 410262835 439 458223316 144 945110949 671 566241296 929 825127789 882 42467665 511 480119946 481 513536096 643 415381797 41 401976051 391 441986273 413 141067925 172 766543203 594 282922756 48 624514299 448 918028189 857 351653314 790 939960591 24 789560395 529 75052519 425 59521887 339 249895154 879 741213148 490 459525487 381 963999975 950 497573057 629 218652749 163 911343336 603 777037601 386 764288522 15 709971288 746 39916049 38 770356564 173 370256471 646 429817948 748 686509369 921 641088872 873 503320540 228 495745221 197 453699499 850 423410502 42 776698631 445 77789148 492 610854841 927 391056154 548 462984606 719 676767908 453 414025397 478 842447591 722 988058630 443 502242147 183 23280670 794 960856436 461 551069721 286 4290791 527 368542354 267 148589046 749 188329023 744 346848735 521 973912399 930 786174447 251 937075424 984 755487538 872 708995346 105 252678446 167 939031655 98 433747285 493 888255306 818 602582925 421 565167226 559 584727179 88 758941857 379 993693465 324 151281903 313 690174955 677 712120664 562 674043373 806 807581264 872 984726605 927 694558711 191 885790271 851 922869376 528 5197045 373 881274518 826 492578703 500 669841318 86 828009002 762 131080633 407 106714104 974 249635992 466 289742925 842 353131289 584 518591163 732 492852397 78 106210704 141 575170181 38 329414061 298 923314006 557 938346930 562 189879675 549 794025725 653 883375012 520 803127016 891 999455665 490 11224818 790 23871125 852 284773201 813 696357088 935 188515865 878 335812209 298 436361946 292 732779234 401 655470684 767 509184151 876 89421784 903 434815261 826 87827985 799 527474187 935 913267473 590 359151150 48 125160989 632 765052911 581 239101811 829 378101006 278 77811595 963 838837213 829 415093008 292 986737635 85 342155099 414 416288295 867 514452871 374 262646146 219 257176084 72 530951492 130 776911022 555 994495770 46 678699842 160 908260316 545 882540235 242 789673114 86 831837161 563 227069318 474 194326670 578 927090338 431 188049379 772 953048016 25 590126915 386 73111297 139 506401335 620 107380056 332 591598371 906 668295149 224 899321941 641 903947999 727 963216466 210 355962004 908 596966387 302 375435582 58 135475167 127 881563667 313 629515130 431 756665043 234 340383861 831 635899408 476 149276491 209 454595461 899 607061913 496 926670063 50 748902873 257 276955170 12 985927174 315 884413694 409 181267210 249 390331243 629 207592159 766 485160577 724 266386567 612 519669302 813 459686418 147 818507773 120 888519731 865 917624815 345 729690697 823 480246510 543 656657201 62 474307452 868 174388595 876 449797166 391 996681271 446 807800727 136 580913448 26 215484965 372 598814344 186 735408952 335 671306000 986 100470598 28 780615567 152 991509468 565 758385161 309 104687378 20 839424136 350 108362290 702 588943643 52 140217368 58 905009542 159 242650132 367 697745106 889 785837938 374 487572190 64 142854051 299 616217379 859 164436302 353 818311564 642 711240910 354 644841824 712 320741240 219 477716616 999 40373154 378 262813531 217 999299520 740 295595314 569 18878767 602 920344846 701 955998074 127 969731727 62 33099945 536 554728372 733 416544599 311 132304310 174 501809536 789 565069943 148 284303587 35 612592355 699 635505686 706 446871624 506 314126282 511 949477512 215 420986830 480 845092522 690 795128485 892 905946994 754 365281198 42 778105975 839 590941525 41 317650855 403 438910569 977 802534343 830 181241122 323 997322046 142 369838057 910 924901865 455 752124902 994 952085474 110 239722599 779 42080863 90 46043660 820 797133440 650 762679346 558 715216637 548 102982357 915 379231013 444 313362142 266 823650093 485 949040395 348 103784371 532 526595309 214 434275132 896 243708383 798 613047315 845 45391445 866 686142444 276 438984979 85 522077670 400 52109253 28 974698730 26 988812276 674 387616984 221 854277818 473 219264427 872 787553889 310 8876887 394 298348613 994 632707229 532 202855659 375 581281829 882 515582263 140 680496682 612 460887037 956 406993352 685 960716300 661 677573165 902 710608628 408 931716450 379 942934750 64 467917555 359 454399594 405 818590021 871 665011376 951 86994078 700 635847722 341 914575002 28 763549374 344 574856848 128 117735586 462 440248025 858 112877789 487 946134284 262 744234007 338 932265588 1 919624818 50 317147706 927 996643524 620 797504716 598 767223088 238 782363441 671 859698126 12 266864588 670 740573058 940 249047056 956 808586537 614 209041081 721 499611183 109 547202086 287 951172138 324 37842612 965 291437669 820 439690067 830 992560142 991 557756459 222 467419115 131 255835256 148 997609775 953 770044957 61 498068497 622 622460799 317 469914652 156 926888732 57 79406091 205 523121874 895 569975834 235 795417581 336 161676769 569 194731936 291 388653253 819 877664194 478 948711915 279 896624764 14 43227326 945 870936167 463 586438734 556 358885788 591 107297638 986 894887898 326 151366486 574 727260372 864 307116604 350 88668132 170 876238340 415 566185466 748 201753328 105 574977590 82 436228730 456 148111843 977 985108168 867 428817822 377 59422791 803 479607388 253 987619553 964 301662692 374 717295879 963 272970546 318 897135286 299 16919591 691 735570262 762 285282081 108 15773809 500 589702054 294 571072745 492 308036542 257 844791123 214 401448581 279 226051900 861 166959605 513 981366453 187 721861715 752 221066024 428 150177035 19 758416310 562 383150150 336 590899898 188 228598371 820 769868038 655 404812925 497 853251615 215 82454481 662 989642736 266 244227546 703 892152043 216 681543480 278 210883881 617 435906545 911 138954420 472 395926314 819 937225357 387 348584963 177 277108020 665 293524755 585 27143578 974 624427347 516 65195502 950 212953288 19 763838612 87 746258627 339 923235407 227 524990841 325 708522934 90 680980827 228 191456150 721 353330370 576 266982011 232 552071071 127 510713152 239 929835620 185 945508312 127 664739265 897 9117704 859 359601777 54 116012606 307 57267352 387 417031332 851 209377483 353 207283696 712 360573066 546 629621491 891 637948539 666 735888031 654 456250213 319 321614503 242 709094337 316 138993313 164 867065681 906 74156686 768 527462115 955 54682765 629 300193830 769 137108954 444 501073222 732 713112779 488 765501921 813 554670909 817 64037110 348 663426563 860 445235759 893 828551654 908 571287449 356 275460799 449 410181913 944 843631374 688 630547326 965 856713389 371 814972382 352 456967797 967 96661502 380 874753690 586 987404305 170 136472655 641 972352996 809 318503016 630 348168163 593 136964644 595 600971564 47 329446950 251 691947328 266 597910889 843 668836507 211 62894914 546 184763594 571 633175768 962 947659458 504 80002085 187 745352149 679 565649821 1 144561079 357 560053840 599 49539951 860 780273379 676 505242438 398 41362498 395 996515141 69 891728571 444 386414554 415 375034903 70 390014434 295 272746957 232 354882205 128 913894297 403 663999978 824 51187657 46 910868765 553 715350033 268 480440616 245 945070835 685 240619163 243 226229745 112 694484716 619 492801876 775 35656279 448 266664839 208 717509722 170 797774717 147 827879824 162 834019383 912 144371065 409 227507654 453 285353066 526 709596734 98 600556988 659 231210092 345 713826289 147 90664542 989 755087212 220 702910888 686 794679533 840 69843649 49 408497604 87 468057839 444 40708859 188 787960694 535 271747992 323 464373728 900 53672849 878 887583878 235 352667718 69 355773377 958 738936196 427 690768853 676 274463324 851 405547742 504 313203227 369 851181235 282 285536015 94 489702293 470 793130625 488 195738693 583 952167712 676 805726855 31 804790180 328 126411056 811 481276188 518 48066714 496 107242121 554 685665653 779 326665617 895 221471690 368 805136062 114 268701053 119 377640192 869 463554231 686 75502252 422 378088696 44 189303879 508 272900754 936 120579034 465 402100311 864 759302119 425 700454791 337 600884884 721 54204765 686 271124678 169 484119659 545 90041771 353 431308539 472 619745577 843 344690185 884 719855247 980 393243080 681 483891584 770 745304963 971 949220757 849 321747080 595 268904293 292 269370644 90 76433116 770 286597101 901 952411316 779 201473079 61 789278676 153 337561323 661 539319366 124 876854747 922 83981947 812 495463563 216 900401766 840 961903693 940 931699856 465 178456513 351 941652841 946 45681971 833 301084445 548 942165203 64 508966509 45 957920317 640 310821296 103 602049216 472 422232407 640 698602765 565 84207065 346 90567910 907 118419161 86 35136242 59 109774502 221 111954721 654 742784182 289 504520583 81 363471348 189 213247294 195 880198647 622 457340151 200 927743915 937 760893103 511 859006717 665 847381835 427 472233682 127 997489546 899 14267166 906 555118622 7 693841771 766 343700118 140 804452600 473 469011968 583 216095039 715 938394486 409 402913781 297 814872412 185 697643904 505 349189755 778 559235945 482 242456795 354 711830587 214 895182957 125 214708413 114 11136330 232 226540669 65 769618923 726 457543022 610 656543138 961 987357678 938 132280475 771 592129614 473 354006439 501 684694003 697 77397041 769 965111934 798 739742350 317 893057871 500 546540543 641 743268422 332 541189081 867 382765033 918 321576111 773 156239776 664 770474723 403 626256006 844 612357469 976 883341448 482 179569608 992 835465047 443 570539072 827 191496800 711 417971389 118 981317445 962 636432638 692 667753448 957 578192112 511 114145993 237 586624046 126 805784786 113 371335771 733 12477783 176 434607401 886 560803701 709 452823606 924 973477886 922 627748317 142 684419844 136 144027397 840 116646430 398 502037627 305 79590576 549 280564088 939 864930931 696 578486960 522 409890821 78 867246003 154 138679005 252 951437330 274 523669871 207 737757113 831 737273016 282 225725312 670 895626775 940 943734221 86 909902441 110 101023427 201 459494424 68 492424173 331 593007976 350 278789385 34 688849289 221 321649274 649 990120896 728 581693974 510 833630897 188 423996571 229 247606870 1 397614169 855 108766382 956 587306414 907 652546502 625 991703139 182 443253237 554 164247732 116 859242721 809 578598821 292 419445501 895 784151116 816 116442410 52 592166587 269 877079492 132 16471098 163 583821125 389 762174130 722 38822966 182 461198421 115 956478234 280 52886691 232 324368245 668 755997999 561 353928560 211 569058953 835 347615667 748 974710069 582 698691057 347 647824332 644 245093028 5 925652818 82 986716912 202 721645500 79 783251240 939 59511038 631 736083549 911 10031940 213 732446497 164 958554993 419 880267973 641 760702604 503 578647271 899 639429603 358 206120700 782 87318475 508 788325207 48 813098272 974 123106119 574 649778539 331 866518932 364 633814996 433 990875619 215 341313178 332 291609645 538 549392847 857 72508629 963 450320873 40 255150609 536 891663495 510 167815465 112 922054565 809 800775938 35 600244331 372 761762661 958 180216718 667 571277410 443 876710763 109 620385754 177 97810416 707 90505717 493 811004008 70 172249920 183 693680472 403 902453046 155 410324443 430 240242260 842 363664180 535 694451721 531 125870523 574 578421960 730 102484879 586 104023106 686 15402349 183 674479706 914 414316144 845 160983218 884 55196722 778 952043662 434 337708137 615 596990739 881 957109572 941 13258134 767 385899509 388 650727535 614 810556529 50 480216619 263 63438521 107 262708589 768 689391563 227 289269453 865 774370589 195 817639677 825 65374964 30 157869754 25 825929299 219 358985297 720 514775143 816 790431452 295 868216325 823 675231061 27 767334429 221 813234868 613 710895634 540 464206483 240 636365973 469 118950213 471 27409719 45 553772633 261 929116850 999 871082099 511 635605899 583 969707677 972 755934534 699 214272138 618 535265337 12 988815093 71 69603632 50 869263280 786 595290333 866 411466854 896 236176819 983 962149603 733 205228364 351 251788673 534 205294006 173 97637520 98 903490772 19 121887670 668 693045422 947 351161356 354 76291573 767 599335698 153 425476849 25 556724335 794 319716902 961 261641518 147 265481801 454 872264685 379 885248803 197 20138657 487 617035139 537 800708644 44 593844438 769 979624675 201 458362284 675 799555515 84 729333799 39 646048720 586 4997087 304 910471274 759 207300330 677 795691093 853 669094460 435 404510482 802 742727378 751 887174080 429 876394000 644 460361538 994 505925041 25 628536288 606 477174124 994 268714862 214 911930360 529 108345971 47 889250324 589 970915810 667 439391684 429 76831562 49 153296997 690 521484547 199 347526157 828 929913719 496 25165270 558 873688131 597 170743439 176 69506822 762 670860551 70 708882552 572 121405335 913 271753561 161 122578582 414 143493059 254 121958986 223 620803010 964 778353215 8 575548173 977 938077631 291 213152043 264 467096661 60 14352779 833 864394858 781 693818971 474 658930864 767 328460243 711 469224350 751 989118486 853 430911984 444 879540162 272 917099990 930 255952020 34 161978062 449 262670567 762 516483968 362 970367159 984 639639039 518 812850012 574 500379679 343 682509653 395 729370220 847 671800230 719 722021933 868 978808955 733 822688237 498 67446726 496 58128487 980 931941888 104 735343544 109 868674880 509 742954759 984 266072217 175 108526694 281 817669810 211 784402697 236 305006381 98 749309862 412 456267937 515 833620043 828 104428970 628 706624657 651 35886098 375 257181523 660 676331935 678 80816827 546 100411394 898 106233880 884 480522054 903 464818287 861 282084436 64 799770561 266 107348065 659 432593323 623 541901544 5 278008867 155 734067365 552 345275689 861 798673178 849 382582807 297 204757890 975 846981186 425 953738164 628 314396220 48 235599847 712 516829073 780 15880856 983 25065316 272 618917839 915 931487839 670 971534139 175 445589384 383 475548317 846 859641031 817 93528802 872 67448506 190 857906443 660 882754358 957 284692226 991 94316547 944 828894817 226 768119925 401 528900187 388 137091062 967 595160151 528 477085647 382 98388296 921 600722083 706 182284223 438 682509259 874 701442793 633 193511096 594 302047789 25 895812807 767 514128100 213 656222406 674 692928831 442 509022798 411 188039165 837 707847382 245 909102976 41 233676997 409 912032878 464 714385925 950 463977120 822 527748049 348 381409371 918 359208465 698 218994343 687 728347328 957 889988059 492 287719710 603 650034949 855 925506938 900 138930508 926 954486360 3 936154002 424 500875068 858 77688401 495 704993269 522 56024964 432 545197772 115 187159783 919 107157465 95 560791523 406 63084189 912 52637844 122 564735559 766 165158839 118 189302320 75 768386360 389 113478133 98 125129636 502 312692956 646 513586573 493 591284114 135 375013883 551 443855649 446 507356032 26 965262994 482 289760765 92 347520015 642 975084171 20 235063490 944 143012226 903 570361884 316 463634125 627 182566308 835 20173987 73 208172857 262 947262632 795 571712791 792 110819008 118 718952194 20 278553373 645 958249063 805 739698208 479 165883724 3 98166173 80 76871552 149 277708238 998 138443547 94 82011447 310 211794305 18 931612421 36 260639818 481 783669388 150 180898270 463 650555583 57 794913944 429 705078358 319 135111548 145 30820167 978 118105390 468 118427171 557 524477429 173 418485143 77 533175851 869 261311929 339 624570612 80 301890835 94 734035173 443 965389025 627 518096 332 613298634 91 33746389 433 988799634 130 860215580 237 886218391 903 593924270 494 879944140 662 706124866 554 659757605 240 346102406 166 858587661 21 477841460 992 628724533 707 913750852 926 972621630 298 131854200 456 469893977 726 475998151 660 620746867 359 629301613 595 529101201 552 642916876 854 732810399 132 400433704 844 894378051 550 528256205 703 58886553 448 285083673 100 20497862 515 489717124 533 41735965 610 486250163 358 854511467 549 137167375 805 463367882 803 198391245 321 852930589 820 442819050 866 89828395 514 67893441 784 179793557 78 255049676 617 854459523 622 399975729 508 795530254 518 808194182 920 602006999 137 571995497 16 652237935 85 188844540 13 988003656 141 656315416 562 234900447 422 498417244 555 154605169 997 510237780 308 472311148 756 157531831 863 848936826 323 527522585 752 781699214 422 420115518 106 580122004 432 351367440 571 1353976 220 865422423 85 618105819 116 133870928 609 414899958 206 701132859 418 590679720 388 116834455 261 592671319 375 721773744 620 590611155 777 261051708 828 869624254 849 144336067 637 25130620 423 600485048 328 288548992 327 701683845 62 867716282 169 286135820 723 472261000 321 849682114 747 250600519 751 948749737 809 510828438 501 809111983 795 398110168 105 147417539 246 728344055 764 299337777 792 324171637 892 379058226 647 683262499 545 144874447 994 321541055 263 266383549 307 511694038 758 888401048 811 945743303 69 376058947 92 93820222 605 906335956 1 757156685 472 796897522 674 90129155 707 486818501 512 99506766 142 402353433 166 669358781 63 523441470 871 847384550 427 595713813 911 273294534 994 447515936 83 806749356 511 576604396 534 957138079 341 360976740 10 391124283 312 281311978 225 586503200 233 245043088 629 569919291 199 137981879 405 790293184 84 264437886 408 946662374 226 579149324 322 255638286 925 153134808 461 201707613 596 412805510 832 678164465 752 320077261 778 438484568 101 830212626 740 335177499 537 468209941 432 933776982 417 424171640 893 256604702 504 424037469 945 238673245 997 309520724 255 923519392 608 193623977 756 22627221 251 42510877 485 658152302 846 239628371 828 156900598 125 685872231 69 438914364 419 50997085 649 950663794 56 259131575 637 16193136 857 414030795 526 583506535 763 311611659 515 690597184 633 238658992 428 651481509 221 602178841 484 789396398 127 559504035 410 642878103 437 476523751 707 464500681 228 876028891 939 503554714 532 74122297 918 552537651 756 981606874 43 506728081 476 932200475 103 565650528 760 538221938 749 24424683 832 630034822 10 491630038 810 175512425 377 365447170 734 209866465 436 343751842 658 320189219 805 196199341 368 94006744 549 200465377 82 551581226 96 207483372 727 975072810 244 603045720 226 479202741 685 10083507 571 221816250 133 324829431 880 836571994 232 633811292 995 905951459 294 214703922 986 163603194 517 625044779 665 291282237 451 938734853 208 537969014 66 973737883 499 513712304 605 41493677 133 70149124 774 62076698 73 869452577 841 299913729 277 737610660 292 128379197 90 847910514 195 902490235 206 322336784 520 256909359 225 638384181 743 607561807 66 534560062 889 367970772 284 182486663 396 584382233 779 127826021 690 372631365 374 606870667 66 69900942 161 62025007 377 223185361 742 264883977 459 50212655 178 786789800 423 136458021 139 79822862 478 411261784 275 138846262 133 718396844 610 973388778 811 482819267 154 103225881 58 354308725 959 356463415 544 677131421 723 872591619 855 461822998 87 862665068 147 573754620 184 8034848 379 793360834 621 859345720 176 589905937 873 430035542 412 208368146 14 117274766 975 845454380 772 478775224 436 662979863 197 780118366 322 736033946 26 510710895 615 171725277 274 21715982 8 555736077 780 204745133 805 710891054 348 851701693 438 220431831 977 814078181 440 472148241 694 515786067 415 732848121 236 624439728 834 2980602 790 429179868 298 436962627 741 856918670 936 919080352 961 673765310 392 47090030 314 821735308 76 666661651 626 211824398 324 569375505 718 834730366 67 702604655 42 185308810 558 519509706 270 691919241 494 976405585 836 391908402 300 925551731 199 753209450 663 570779884 134 739826918 147 414591003 530 594317412 827 98955132 376 472873531 588 90304926 553 143384939 684 371156307 230 449125338 944 86725108 195 37096293 41 618459352 179 885812413 687 97291006 322 496286825 279 149498339 586 24380202 853 550660532 348 722449669 542 520704455 437 930185349 571 199122727 366 742661250 918 71133852 939 766358998 794 953614945 620 795032239 967 990003824 935 276920202 801 354662110 775 275404675 369 860091778 56 142642169 901 86590890 927 660523395 440 337869679 596 164357064 446 146180723 995 929644285 855 844231274 17 471861294 229 764966482 311 36691188 547 118774399 520 680919532 498 458707590 652 234110123 946 920408721 853 885666593 646 372936047 366 131031189 728 461309826 907 582635142 629 98667591 635 378956227 286 185318873 701 937382240 300 44882209 833 984736257 537 603715040 391 648356324 264 364488819 430 718493392 915 646275978 81 328895934 347 253611034 548 48144639 563 572642706 916 154324462 846 703798229 715 188212766 154 776040886 748 293474153 590 13624678 894 172035984 342 357718526 943 338162055 421 673495972 444 89835863 131 188847954 232 908541173 585 416472167 993 894991261 937 700988776 954 511880999 609 544648485 995 31433549 120 643888012 910 281436921 429 76111884 788 143034546 288 457884966 145 324228207 467 140535765 527 234296713 463 709791630 608 71994110 38 947220450 373 151125720 749 230139406 670 501389168 652 415753934 738 40888978 732 963607384 280 521845851 696 9705821 310 681605536 111 719240686 156 520528246 517 858168100 991 333374157 15 613277199 61 848455040 628 219387783 762 102592062 900 419677194 980 70941735 529 426917031 491 914107819 551 262302090 365 912970409 905 894818752 132 364033970 108 893096919 56 894392973 577 289372686 540 394198364 809 161336958 510 388500975 764 729627472 57 209202035 818 68730298 622 999759918 714 757355262 251 296127101 528 452410289 273 441553132 787 238653056 744 214214832 804 249783599 268 397987469 610 19414764 244 785116589 87 930407603 483 646647941 3 136810358 71 437305522 520 459162461 556 544283200 759 4104242 652 216360014 240 757905303 893 674424865 352 268314538 57 505735525 27 286260128 318 243991222 657 375601575 861 344909349 288 908639573 593 342781094 97 300744845 139 172239842 553 492318581 984 979392617 391 518264272 407 115700329 177 841460473 695 241771885 455 690377983 479 35337311 209 416326030 338 728480047 919 738994791 672 952171381 577 919739497 328 860860366 979 595282983 13 169781237 358 958459014 415 616294886 502 93040246 704 900718937 636 258385637 25 544700294 277 891178164 79 352242563 991 172876128 702 523705263 539 207157423 171 299490623 568 149180323 695 526406925 564 340310852 365 214083256 685 143839851 501 512662974 63 617781068 373 603885488 561 182453023 847 579203133 614 673972124 801 55327288 831 305009192 248 303164007 977 501233674 966 998610377 431 893287219 603 640622140 537 554640772 624 738227521 151 638482959 410 715783531 754 812819796 322 816353099 212 217688287 262 45309653 215 116051858 9 942925285 178 979540841 810 236065039 571 94976470 778 298506020 412 604323665 537 395170009 453 550452132 495 48595498 3 615322550 205 241678583 580 501741603 658 398226061 927 70517480 824 676987194 850 174614306 468 814804600 646 922456089 971 670599923 618 287724638 244 33204230 33 154789415 362 392586852 986 455365279 121 75662295 381 506304133 138 698434087 135 70669031 201 685560421 852 693555076 684 737456802 355 411254298 943 863502569 542 40539560 785 580158773 836 128757113 517 36264312 475 270551508 666 482653726 732 124695731 688 264203731 47 345004462 421 75133027 260 77017725 41 18954584 857 104121206 275 79206988 92 837028592 593 184809111 224 345198252 224 274481557 270 761946272 873 861941640 128 668184970 182 801322418 156 154343174 529 423053123 679 441694811 824 932187037 937 283313255 51 216976730 429 210410115 89 755360098 267 23012377 183 957212409 503 816148656 959 423481210 558 288017947 517 251353558 14 378939782 792 310511886 769 356163644 579 366135400 580 439531058 564 663732727 374 856369785 961 630864897 361 249322926 610 586761628 609 240149299 246 277215213 306 4513381 645 387457988 181 369304875 565 465318590 506 300192302 592 486883009 581 316499690 538 295924304 351 536850291 164 21945162 538 863523116 318 718306687 520 85567087 979 108194514 972 59932830 697 285971947 672 432439895 649 865046181 935 692606026 367 36521691 387 963185296 408 700930649 404 899427178 177 993852153 990 740317731 418 653566426 52 142632877 959 541038325 950 773811984 12 602041719 905 403222380 416 628356810 482 469229579 619 754844664 987 673398058 411 14802812 893 628165598 599 229613256 147 576845384 228 977866464 250 181969276 705 365895736 710 865696997 853 410231909 390 885771073 973 894239783 261 568158371 421 245359381 203 479067101 216 671119722 16 429373141 720 778761152 411 341229872 443 301228332 477 355106993 663 960854517 977 116358357 544 352948437 929 949266792 310 704432787 164 480916934 454 55962070 994 623139435 723 748132357 302 686602964 178 853004016 782 690878740 0 898196547 669 550695158 869 479511698 282 617839682 637 53681841 713 144694186 321 844676993 14 912965996 853 131386049 250 134121731 801 897141923 664 169200321 646 875757461 407 483173178 219 201411447 676 848937827 301 220725402 880 295746137 453 583494486 798 953454595 387 245216425 264 766967491 357 289480273 961 735177133 400 107016929 865 30951620 169 82151697 18 945076463 702 240022071 836 175754182 549 602177362 440 665828486 396 908506936 496 740829460 704 651757275 788 231123114 377 891193089 528 594087719 209 42188716 690 732735323 255 15857670 994 788325116 249 200498983 248 120647736 910 279707034 970 241811203 303 275779430 258 635459105 373 81491605 269 835009920 586 618362676 669 845534703 52 11792783 886 998855313 464 846789324 606 548004749 33 875956642 652 461140283 598 73389405 703 292265519 487 880567674 972 877216861 410 722647667 934 137793626 864 511928255 521 87077126 951 534355859 304 312449928 289 679359834 933 680402482 46 581286687 251 480821356 547 388604337 625 255226905 142 240865139 147 529103565 671 263183269 583 710496822 789 281280347 699 95494449 608 901810334 948 395128808 494 986076016 555 104087731 444 412013495 340 713942450 717 792610616 855 880036669 88 198075143 679 252301479 383 432026880 308 346501677 996 196680914 92 78818184 548 413633935 114 843968133 458 758097652 696 67847020 595 738311089 241 346614031 605 628983126 948 185523048 998 524695258 885 630778997 107 289998513 109 195218623 749 423044528 782 519182692 607 783114719 68 415622444 781 301676980 548 792765623 428 430347119 16 552840051 734 663009211 336 886457269 667 32139975 859 528557879 183 200823698 606 165983207 134 438981196 630 950867068 94 835535993 644 411212274 618 382276075 303 201117084 174 11382146 476 401886143 37 603804204 143 252765028 582 223955458 888 409789788 122 976181541 887 546410442 77 888741426 425 901211657 153 236340949 137 211779456 768 793418698 852 554182068 390 13496887 589 101706 397 202840248 742 736191923 144 494417006 736 365619370 348 426850119 30 772019286 960 406823578 39 938008078 158 312742155 414 195759217 962 933239505 142 271101359 0 485680776 704 27736274 17 177135268 220 315962931 285 980503548 616 671956357 674 593005233 247 783574032 733 21947969 87 49177289 655 76667601 961 749889738 322 858363099 882 58953725 581 224652491 619 886967765 784 708497581 163 907915648 459 276812435 972 158691811 651 869499665 851 338283781 747 240812878 120 668698090 597 242731427 286 2891893 75 249483290 911 368226328 149 281267186 742 323052482 115 774743898 872 847405486 654 476689954 607 469695685 103 847391306 972 105601010 224 26730558 664 171408180 971 152049429 827 270647404 960 745723576 698 897106559 72 157901395 880 458308874 147 634147062 663 5184148 407 82554554 329 393663207 117 176210261 464 650195935 63 585131081 279 976856406 475 588614887 781 678659075 408 221054558 749 265380682 582 430153175 121 181908867 857 938751212 374 535289794 785 75022047 739 735809089 650 804369749 677 912721024 511 523060653 410 396388958 465 751639482 568 864803717 278 913471272 556 105081876 424 182153806 771 709869623 176 40832342 792 628053366 799 471505239 487 48532440 946 70089098 96 619035363 135 225114498 634 315391399 743 768345091 425 664455631 459 329582683 295 261952257 893 598455777 314 107858659 883 779919835 561 93483747 790 983193212 582 151397562 405 773218158 639 976488961 406 970924232 365 274105725 990 383471997 925 40248564 201 145787116 681 901650541 235 571644667 777 901574200 239 375930562 530 201986203 526 57644057 292 213134238 795 268964444 416 780946100 692 496270215 4 721017611 604 287989488 572 927756071 986 484108610 180 590945504 863 430021560 533 921943243 979 294432824 137 767073681 299 686106934 643 736474209 486 422975803 324 327471878 84 807178646 411 598614584 394 684725425 607 791997499 314 719628569 123 6463893 27 127199363 968 78685638 451 312445292 409 463597347 654 681697089 921 748012328 270 730373721 357 149193869 668 725076526 92 933449460 881 775680493 950 797687902 849 751250408 180 378876515 59 916835426 109 881493480 360 18812489 367 899033853 154 634710245 92 63634187 630 134140491 313 482269665 364 542400970 374 220293805 813 888601512 579 473744483 311 335947658 526 607479880 883 492239196 37 685741506 404 417498132 211 880550163 816 143530673 852 639811419 439 885962435 919 140167881 939 254571290 117 23159701 688 950510442 684 16931566 662 968609090 36 603809593 194 242873752 703 424689279 786 550508764 271 79057114 437 35148381 798 365994971 161 413804649 204 191051468 369 478462044 539 125540034 152 790876260 785 162112868 654 914515539 574 891767160 719 855774145 753 63437579 430 238161653 467 630300650 965 783906605 478 590776437 89 224417119 820 253248595 107 820124615 802 80236191 484 110695240 577 416868455 939 724069473 144 156031947 893 993702082 156 314582364 618 590895534 559 293512442 625 238046891 939 623181723 858 974104021 4 515638265 242 35242346 703 68427943 514 992417397 174 51937611 394 355091654 982 897597110 999 713418058 205 436536110 995 509986165 124 532376304 351 192310260 527 515825216 271 943403734 76 86779245 468 644104502 197 198640558 143 558170590 292 285340422 87 125024708 445 218963675 41 590578396 466 960113804 790 290699392 477 824430201 313 49763415 605 108043605 91 215312757 979 537572286 862 582660168 241 717800557 968 837228381 230 146304949 258 990937566 726 707090653 749 967393814 534 613337344 87 404289872 70 797815989 291 407718922 60 355549874 201 853361034 817 787734387 249 401943578 263 46731525 655 189530241 706 928370524 71 924438003 928 492244175 653 420491823 112 166161461 139 164796950 8 922058953 333 174198437 574 704564037 239 115282765 985 934211144 956 649214341 73 632627084 200 144532269 880 303889422 234 261721175 314 553847217 11 539861387 334 330169200 381 108575961 318 14675327 360 331027504 312 66012248 787 964559278 948 767881839 923 268827291 535 671388331 746 222715764 891 765781390 233 890852183 480 266773508 795 312166169 578 772818943 989 617384199 39 683480927 935 394013860 486 883096896 144 34622937 657 73718064 77 789879681 943 95629729 340 64183650 334 778619555 344 979456133 931 960943306 474 741863145 35 169320773 20 366579615 448 975823348 134 46967285 954 460178447 986 995187119 36 760948265 431 455574531 698 929502563 969 741824905 707 72582037 979 670272213 463 476479359 151 272084214 848 439356938 8 109654258 801 645367919 537 278501528 675 767695796 137 739884031 576 815754573 924 150008208 932 665570485 827 181119994 449 629620183 301 395710189 458 295678992 185 58254041 164 343523316 952 51975406 337 216394409 399 691262783 916 752263409 975 831680080 249 460948953 84 546629892 998 2193020 14 878290609 565 365366739 510 197874819 948 394457951 141 737858049 123 403959752 661 49740413 778 260705458 918 425188805 850 724252092 301 24933836 847 721743584 119 489177911 812 383622744 692 851536850 115 981771802 698 251531159 753 5066343 313 542976815 681 417142718 395 622406602 474 482890499 495 293653251 359 344384710 591 219930083 585 365488461 823 898263266 500 828948955 993 268082201 168 660226555 19 663317740 56 952168831 638 714565277 499 235520542 714 583027198 38 881274520 218 417804351 940 350872089 917 363976883 202 319374765 300 840470106 699 70791063 509 603789315 773 153535549 952 891437879 411 902136177 94 643499249 506 866468069 914 824965634 482 381753972 773 108743205 207 621618606 15 966679463 407 62406693 37 954174355 725 304936738 164 305660639 76 419132349 635 47003893 916 801805151 88 103463673 423 573335808 627 191971060 999 703012497 19 243094212 780 10159662 754 92168514 617 204583210 825 444514845 764 539925092 992 554944269 478 411433681 402 842076428 712 301305956 644 546482550 920 31559255 880 775406266 983 630957742 957 111297241 78 854683966 235 180109778 545 522991102 278 218807073 401 984441520 433 793356557 435 362034852 271 314082598 800 263398193 618 255681987 931 59725242 257 640313178 991 795872539 881 596878087 232 151393142 580 390268665 917 903052768 42 554219296 691 583856136 897 420645951 158 442566007 591 913827550 857 583763893 914 336853937 0 707309625 284 624858678 637 684964847 217 232505463 920 240110391 976 695229339 244 589726279 311 806738792 927 623295714 60 420963385 843 347437374 659 427654707 305 99373298 569 314269145 467 803434408 898 141886812 856 712734090 760 654109485 472 827481526 615 43129729 266 981769375 643 234464027 675 616468018 829 457933850 299 822358802 334 958201112 642 10286074 687 362802341 238 318442480 874 184985037 527 624031382 69 964519266 450 918936442 255 230057982 519 903186456 938 274779746 848 497365314 541 215657342 744 480789871 260 675896890 553 415187796 961 639627537 912 528894874 843 795733597 550 48668195 377 892333610 347 924294153 67 650739348 764 604153519 51 776940069 785 652505744 564 244375738 818 295696532 692 587045531 933 427327367 394 753928765 512 193066189 169 679593653 836 540945080 873 7538237 584 473885617 236 442718527 663 102587901 826 801314024 102 488739676 992 293921060 239 934924849 642 992831460 447 214638094 6 973290965 349 542032322 138 43487053 316 157980079 612 800889001 36 499804753 974 408071508 578 914518457 218 11254580 608 249217817 795 621116193 140 809633379 202 650495730 710 804597436 335 19790854 599 603130793 242 965411000 122 47337471 666 724536511 854 973513383 364 983767483 207 506429908 761 331584976 501 337741293 450 74094295 126 518437960 312 827732350 437 398150964 25 484547430 213 844170684 686 365436223 480 296185261 485 282427516 485 664764991 546 789293735 611 630432063 675 188475137 641 601904800 409 202293437 46 378057884 161 920159943 391 816400799 924 771027108 837 181156099 725 112235842 429 598104073 236 814227325 647 632380112 290 611856114 86 563290019 128 988122274 228 319728113 79 81544161 10 181865533 869 760480260 575 408069910 180 159265328 219 225049905 376 678265598 968 662593560 767 807529338 629 538994882 872 493830317 863 248285052 53 394631644 263 62190962 863 861332455 302 339866031 177 396405123 527 680205953 522 830041472 406 367339107 168 124306533 510 36105530 854 268882967 704 742206403 254 848797469 965 516558681 268 202234067 663 90396866 388 657364796 286 110580196 560 613028874 947 818528171 607 41297236 86 145678952 44 633702483 852 394188241 445 820416734 572 250580885 362 534973109 927 865255771 901 196153679 515 669141295 237 604266228 576 467293681 641 926607240 7 5799785 344 138439975 688 783512471 134 381542612 222 456198500 309 573118983 194 588903302 144 181990963 59 772270858 263 468799842 516 492321767 430 461216891 737 1570378 310 350006028 210 706769795 873 628368302 513 743189299 326 514553787 565 441652734 757 352972500 21 670976000 167 61979307 517 538414242 0 549553185 799 605510917 624 128277021 783 181170246 733 639512575 237 356018506 819 460823501 829 164427548 563 225619094 589 910776213 986 199802766 239 92169655 566 717700165 664 660175476 327 233298526 222 42747246 841 547411055 696 224306292 906 518835097 536 80385443 120 344891386 706 723632740 17 99990951 151 871960542 551 48393657 619 339171459 771 48257232 229 740599155 506 37008582 823 439702661 662 379591093 829 388462025 819 910247740 674 436749162 91 306402059 438 45757680 822 544364344 66 874098030 686 457500354 518 241872986 309 288551177 389 211968371 391 575573296 439 105249465 952 918118675 933 315960995 539 527213446 831 749777919 117 886903543 430 950863511 236 611793800 789 417957702 246 768571616 402 367736600 564 204238669 418 656588935 376 510980379 875 3449402 140 807915203 309 447519277 610 680266562 457 443669333 707 407133744 884 118789200 292 68581473 372 414962805 361 737184122 583 695798920 219 709777785 332 177423888 588 275952541 495 169448598 478 419485680 28 852825083 3 683309859 116 599296915 71 131510053 725 371387439 430 832284319 869 648362135 484 140896558 919 918562031 956 655602380 600 443988603 861 95745603 568 194852730 189 306480084 115 80668047 219 608798525 697 351370111 792 590353829 880 305272017 780 651572460 877 411796817 471 52281819 883 297402434 405 505586260 755 316068475 87 361563928 487 945914754 208 26103981 927 57078047 231 476459490 145 224716724 995 488839151 381 907847480 244 436919118 753 470464773 636 275509873 43 780556149 67 601561567 581 759837734 940 27534730 350 540569973 169 418873790 883 892407297 209 28983029 814 445870595 781 969273150 631 859915163 171 876581420 783 551917904 972 954220578 95 595302794 903 39693117 538 50106415 797 760212947 717 439767770 892 652570833 224 719061192 753 896099633 845 818675646 465 711649469 101 119546169 478 34363474 866 314256615 507 76090260 826 37490901 254 328892921 808 237466953 819 998410732 253 222441698 306 298480698 381 593257375 69 628241511 694 600370375 99 687111170 604 306501932 614 539053454 769 967996295 756 107616803 246 907017181 807 604577010 515 383259525 271 643838688 847 516936574 932 271133106 998 203804010 465 41451067 802 374654513 81 670280483 669 689736325 211 685727712 493 754061193 383 147402862 966 81472974 362 76809429 57 814558958 43 346674020 386 892036349 885 407903012 266 876415906 275 839927925 422 136625966 301 331136594 96 993072846 851 566099404 35 842739892 752 935719975 25 638676911 515 312279872 859 649850020 382 468600806 178 701039387 251 184465323 235 476475650 175 740840992 593 354195946 96 944699069 469 103949549 703 267836084 283 860431624 234 523363114 148 755330729 822 294024024 315 333380510 129 608201808 547 93797539 32 614156709 96 801545822 998 912279248 920 480040615 25 924301334 564 40995124 809 620009288 184 495390850 433 41850931 236 811634834 197 694836792 127 426630484 269 744696644 885 150169848 783 911588419 760 478841518 64 418215583 892 944799755 654 933525814 52 554021589 445 265953524 592 375103798 15 614356140 754 739315685 173 182391033 892 534734242 476 87197180 437 334113337 957 545948665 64 727594691 13 575470562 628 120981209 890 29624582 14 107642625 630 532152250 22 691232620 640 220763737 992 582033521 581 347102338 127 47718365 576 79364628 532 61426936 956 693023395 802 673282376 669 172975579 213 167328081 651 291420460 118 500656142 252 573791586 706 363977547 840 476045380 23 962410517 590 311154255 707 298040496 385 844518097 871 194859910 453 358869161 432 65616657 583 46539964 552 523042396 591 942986569 262 709387534 631 967801206 244 985074798 38 853672563 912 714366234 582 578874834 983 696065201 450 295481720 659 741181681 848 267427867 110 7749399 99 219244227 503 633526824 919 829346334 846 990553580 41 731131131 239 221049121 752 320560855 936 404889506 533 376489738 199 217864577 236 59039424 834 948480557 783 639121217 391 708364083 998 333477687 741 665755536 69 474587805 370 215124266 675 119657951 950 813121971 85 267904563 280 662307797 886 36698918 70 730501912 686 418436480 513 838899486 903 406458034 715 853636290 364 933773947 63 448999287 846 213794730 133 310928791 510 936032631 239 508346839 645 876745853 664 39724985 74 754024127 731 870693883 580 326982418 521 881333691 89 640501190 688 298370709 697 477022166 581 854484998 632 216692247 699 863765012 377 915156 490 15373840 622 622406006 189 544285529 612 372831542 320 718714290 280 9985291 971 728731986 217 835999972 279 803889824 908 559787046 302 967411492 54 783304988 621 167841941 401 881786243 551 551582071 716 146380612 264 172228499 922 508805432 877 841417087 558 546051496 795 280121569 902 428679494 608 254897865 206 666355479 439 835263418 961 137063405 271 494814107 667 539662276 926 561266515 59 468921941 609 524395356 572 204295679 623 824995451 488 469226422 477 2749447 282 958939496 94 644311584 413 500396712 687 937999402 334 808707723 84 90861182 421 190891247 638 987542076 194 317912933 125 160839935 234 548733371 683 939921390 277 743980367 37 408810652 733 669030109 177 40336809 127 775498500 291 993867482 784 325065626 159 418117931 283 205869042 827 423529662 672 800127106 468 866092913 937 571260573 156 41414886 818 550162988 972 258195767 683 589109681 70 746091617 486 755075461 653 965145853 622 58452388 165 894147682 426 863246287 634 835826891 494 338654328 800 702619967 784 613546385 984 883644850 457 424082562 388 305166506 793 410085466 32 685228547 182 325023472 171 508692469 874 777543320 487 266235725 454 271245524 258 378794920 228 394932405 909 857331507 676 430584224 662 111843907 454 409608743 29 728599334 92 156559966 909 991255373 806 679891524 425 285596263 404 319651276 873 628204073 106 271305553 671 248625943 116 639469340 305 564442022 775 617983740 314 292577054 407 390325021 968 409786718 601 877264910 492 328872331 241 351158 294 944760500 989 997411225 664 482211204 649 369789991 149 215489620 429 408344720 856 88377535 343 479683609 34 434299821 689 971442084 830 554714840 508 521930852 733 96685848 757 151893401 237 908551902 12 684356371 243 369476438 741 36888804 843 672277816 77 551217768 164 82412825 295 117332518 853 307802787 189 752035309 64 310028010 111 303124941 405 913134135 707 397471379 62 646908357 430 599565172 658 562406391 316 439366899 881 605169668 717 433823599 538 696564159 293 44369106 463 607520316 13 715083924 607 97704806 778 578998496 183 158759908 711 842067213 210 972076225 564 861238786 856 424063830 777 944937677 494 311319624 834 863401427 900 278084203 222 242282346 522 211475659 74 397581667 814 668288524 8 461555639 858 176215031 540 320887463 526 307377183 130 725603014 805 536903312 8 267105039 576 109326149 780 889012197 716 918881428 928 565937269 65 67500832 40 886261496 722 807052498 38 984836286 606 655958889 683 877067203 7 77607569 866 782912903 298 232586562 180 997227474 576 696257615 135 519803146 410 452180342 866 500469761 945 444009073 83 454000529 218 325631810 497 620999061 209 303572987 841 440173208 75 72601535 451 863524315 248 536841342 427 551772188 823 510655445 506 904192236 870 513415366 327 781874266 209 672981692 960 440423044 111 806471877 393 143509187 117 139141681 457 24389033 62 415540537 276 904003804 465 592746629 374 822043980 324 445827366 697 136832965 78 287831960 292 456069169 567 59847072 392 889659157 905 306655993 636 623047378 979 988083560 608 658550196 713 600224216 346 603613702 9 699844103 811 365560493 752 320884730 488 13014323 40 895945266 764 857095070 982 472343559 460 228126442 241 876099637 366 213518518 532 206175021 226 365259395 255 212156508 310 521817817 830 320180615 267 440480515 491 236111784 564 452880529 166 755533304 111 438371920 113 286608482 950 617377609 287 934066712 662 737642431 594 378129444 405 695421330 403 887162604 104 837674555 458 100540499 239 180130684 840 32138827 464 679834877 613 601287999 835 608530253 250 229929514 538 396064140 519 83507853 747 731905061 282 888134729 901 862728349 408 832967584 590 60062325 899 487788158 120 913059406 7 109291056 239 916435949 574 15138038 919 73396105 861 952345050 396 325050669 354 876016474 832 62658690 186 390148865 644 572616834 254 93215012 66 880626239 3 215450692 686 404613886 602 109353020 243 983386592 729 290846641 398 790376618 379 941329617 447 780027619 354 273574443 981 563193452 322 545012053 871 463851606 530 186696170 48 353748634 160 959271984 786 925886065 763 26073713 156 681330942 124 617487981 114 832516035 344 784874268 744 525148911 966 354643094 419 126409138 490 697898419 816 738039299 716 342596753 394 59770685 117 304917222 351 65647759 642 73109022 16 995738626 458 587430075 285 898184956 24 938597546 53 401721747 734 500666974 867 711841605 412 118818760 807 132726137 620 272587503 965 483385870 273 874709412 80 279304421 473 366740522 818 363810597 934 868089324 757 597238324 338 223635755 367 940882902 969 65892175 874 612372405 891 621272392 797 813682842 175 52624801 70 180122204 700 5217841 63 557946884 542 127329659 757 744608079 979 890461169 649 626831578 658 382402248 628 157154533 692 395534168 252 185308357 807 150828795 728 609548206 923 243535209 613 154835776 317 937616761 22 307806845 628 670633164 585 293981999 798 373828249 271 557371141 159 593999023 992 791903794 339 441393558 899 744035587 757 186134823 757 12021884 532 30892444 599 216598191 959 893745345 305 837127107 959 742927186 84 617101622 410 999500245 633 667916075 639 8423870 667 957739275 683 184870379 463 595320016 503 48843664 718 502461261 392 859304870 521 658713199 27 910234877 374 871440040 846 908113782 41 744027582 929 547257607 413 534855205 454 700913660 494 858906081 566 280776650 518 333803156 741 568292124 527 440970202 82 354509862 975 80718039 376 15596346 184 59112358 365 993961315 696 860039913 991 301946381 194 285844766 263 385196023 853 470527359 505 207743735 430 201728134 342 991144251 932 626641393 494 288722344 49 59950319 317 67247240 181 234568110 395 759705064 482 951566831 863 213282972 885 660456212 727 91848856 375 683942476 484 348859036 74 834249175 990 193807337 987 340023151 638 870377978 226 810314333 406 873364384 944 173489514 912 842570987 288 406155234 175 845683130 275 839303355 450 419762209 270 204486625 560 700080310 105 536310916 120 914792487 502 323364144 109 638933436 472 935860246 338 350823143 867 874839585 201 149413954 348 564676267 746 67812727 789 945676429 138 819077480 283 292367750 24 642351976 337 406756496 58 425055946 794 17598126 106 912897097 208 490916371 13 921349338 378 627745580 672 682336125 53 116513410 505 911523797 720 219351205 445 256580192 905 922955179 561 509751791 931 213919839 106 462069113 831 578771703 688 285972309 608 712940936 268 334396438 356 569069421 843 655294914 100 137048999 318 564204706 119 451203821 522 301135786 661 978015044 263 708938227 190 234353331 258 852529804 456 685080662 552 409546224 641 211701885 765 304395339 129 540313954 8 593377924 565 394321210 58 486294270 896 926886383 290 498199465 299 257061214 594 731585820 129 663955161 11 352825234 927 45041728 133 535050984 166 513784500 401 494735495 817 500678038 385 504150598 518 28683878 941 860688336 348 148647725 626 918521916 391 697228711 179 335511748 122 165376927 330 87272719 317 305774800 437 546054198 280 755294072 423 653695170 125 575816934 972 224520385 267 824981926 0 862215231 786 791227584 996 996368200 179 812499624 285 217834812 684 610610889 942 893333490 471 47565494 747 562981666 389 764135479 199 253504527 170 203704984 175 945603055 280 571640708 101 530341892 46 854696950 651 867202772 32 51714502 211 16499971 439 331944823 541 378220009 919 340404709 509 317932754 886 710219477 785 980019354 401 646239350 653 937044298 819 777721668 321 282531599 780 347420131 679 950873984 454 990040447 361 820000841 249 707971938 501 821038905 301 971759989 406 495720579 169 223001033 287 336953660 316 915455776 511 365734475 320 619853627 378 258375731 189 207289012 359 865317769 476 201876420 864 161895947 761 324771032 603 843454439 386 338479589 886 623582776 825 464532976 333 710655530 0 171941708 150 593655758 0 960371137 494 587952508 676 615654468 812 806040333 635 623891449 74 223403681 404 50331339 680 268789693 178 641593133 190 451103962 376 388944783 990 745443277 73 961897705 770 168255330 474 57570445 569 863266966 583 832898208 120 172386358 969 788655980 428 702234778 993 479402406 889 371287515 305 847851907 13 988078275 423 274857563 304 91989004 774 422718703 783 646409640 30 147920253 354 912881020 473 524586978 832 213878711 299 212638517 674 727224170 379 321149794 420 817585400 370 609347599 788 479305031 743 440576744 436 658506837 680 92727194 181 198763869 2 519789571 600 628549541 820 527502867 696 122407740 472 16503214 316 577657815 836 949411327 241 629358699 250 607162279 428 981669322 575 51301890 223 74545176 289 311147765 771 511211832 97 823814 201 460849986 720 112632037 664 953964012 176 222159074 166 753286562 922 355957812 265 541669058 362 562059891 529 684315668 223 917833289 627 11109034 22 23040891 164 292258886 127 405563121 957 833763486 549 238786965 193 810944682 221 615985007 269 478449214 354 571174191 948 873064180 978 131099185 765 93591838 992 569578710 67 267335373 83 483197130 533 101973277 85 887125838 512 856282965 402 48491996 661 961144482 251 399247723 567 262125110 24 878942510 311 589073637 53 823710055 43 846118905 273 208620188 961 398742178 879 706937643 766 569214363 574 831619737 800 820460956 965 793527402 260 265583228 887 575859631 791 370333959 82 677729214 452 443717578 309 531716266 78 341926054 762 856986274 127 165770010 342 94533185 823 587936514 434 102335139 89 250787669 557 124041891 672 924436778 616 525778891 398 480067237 923 202362904 995 506058281 928 594714566 726 594200012 621 180789293 853 8262643 68 997290416 626 798408180 751 743376993 569 208347799 811 848569141 554 171500234 774 324560158 479 899350431 91 176994720 221 576065329 971 2505129 791 188980324 4 173734347 872 498899572 864 994234174 107 273449987 57 728515640 288 523473994 341 564518739 268 505354515 349 373930209 771 777555644 472 885801367 473 319165569 45 330536240 572 160636882 927 77603471 764 217582039 973 769363286 235 755245336 49 647902095 366 339615807 919 6232832 157 893303336 753 952896730 83 577557340 681 517052947 800 45385056 983 959547549 167 492234411 98 96824879 466 620509793 3 988395931 470 967492182 389 408595604 556 373257346 43 242898269 246 469436854 389 403271883 774 498243194 999 260596196 635 234727247 103 624374419 526 928472824 578 412137826 803 979378598 274 890172753 391 847977786 940 76114179 193 954740336 229 410001967 312 724666035 205 408160481 35 614951723 211 524328140 125 928315821 681 845605036 171 133331378 775 460752036 393 623863392 324 658630884 621 174513204 187 779110265 324 451382274 331 395965014 446 736731969 866 690231469 183 283218977 185 320637707 300 387692800 603 289613505 417 380602372 587 367947788 75 692087336 325 354656205 339 487638947 979 184255884 693 568484507 271 797678242 322 983541770 656 89927822 744 942019531 784 755704865 101 308132670 603 448497164 610 351935241 535 765340930 891 136742154 85 803497554 779 484607963 130 630028765 469 872556036 728 303760409 716 709226431 254 671279121 612 409466650 794 153836197 691 857873892 814 258723175 257 579970664 571 835046047 430 600098724 644 704338541 21 776970272 372 664197600 129 428115605 585 631023297 622 741818871 275 655997896 159 389129733 64 370156190 339 503748997 542 231268065 448 827604490 99 479866552 1000 340849595 208 987589116 262 336779169 488 557509685 92 452090990 319 963179475 684 20500986 903 458082400 681 111924777 376 182813613 584 165548018 275 405701247 426 521952232 554 672917987 765 67458694 376 451414607 150 708855802 226 411957975 765 908295174 180 902956794 186 470793923 536 612339624 895 642593636 759 750056452 291 151764730 262 801499009 532 442201226 729 990917644 886 257343691 146 999483301 221 666243473 658 950455554 528 784604027 213 95666300 625 818271425 608 75316302 727 306542553 423 289742261 767 828256479 789 288856558 928 817928766 14 912154062 887 664840331 128 972338366 161 282176809 782 852085532 812 848629931 189 221112450 940 694691188 241 102024546 184 269693940 42 33689030 806 834291994 940 599939420 143 483371855 730 129572578 987 546262098 238 218846846 58 502937116 70 196817481 250 145839954 210 597504362 406 785036937 619 601977453 259 723126765 349 752858899 896 263997292 377 369527675 673 587126457 807 782832098 250 629813697 479 574862557 73 60685663 226 588052540 597 113252426 811 28119859 125 237663117 598 458830592 785 377200082 620 646035220 190 781817406 291 453936854 519 538333961 845 901697610 301 306186159 102 698705232 733 690729427 610 338072180 724 721372044 201 786995638 507 111880482 928 591938444 152 64636304 419 82532401 364 329481445 697 346072128 670 855287656 497 369961202 476 753482212 378 470569871 700 863930327 262 339306301 990 349983470 851 107904802 894 369889530 718 906119282 261 419640654 146 564037051 559 725436587 212 112772818 284 495624975 993 975909448 751 842977031 713 563624218 172 1441455 775 394964977 339 657945341 908 156965942 481 70498005 4 288646491 101 9112726 822 636920862 43 445533945 641 938269183 887 645579436 394 403826386 312 32430370 541 179173194 803 400098632 799 212866909 151 913402466 5 298253611 580 361406265 478 254213983 676 735836292 797 721994311 894 135936979 582 244780557 601 433368348 445 372314510 845 993532222 658 715259834 338 172867736 498 9582958 535 950282198 697 216998363 390 741813870 387 935066557 546 114274091 683 553440245 133 223700014 737 728395854 260 138558784 672 139957800 543 719007475 770 452771694 933 756042181 363 445301205 337 675478408 635 866400885 38 131105900 745 48302842 513 345358658 851 656443236 81 339022402 478 11091432 492 462567403 900 460388464 824 49742202 780 104526373 332 956543013 213 425114979 718 352511940 658 542202756 56 55297232 132 100884 462 974535683 38 536561039 611 770994337 43 798870776 462 36411427 160 261110131 577 314303197 329 963675091 730 613015767 713 464392749 882 822473961 228 972765887 612 799703377 319 844601602 519 178343897 203 768619637 187 311836259 996 62457963 342 288343152 79 662309088 53 516592865 483 693128243 425 975563483 336 277560733 326 529133934 308 25959079 683 395707074 531 161054076 528 388470687 634 585614664 580 76892557 708 108411792 900 341149498 243 61761857 217 588118029 840 796223627 763 277324610 428 717192233 333 579074481 129 187637443 240 119132021 19 101827341 883 880233019 370 347435172 978 269250205 1 541926432 90 372706883 399 181468995 305 479840677 248 704198760 974 960226436 185 664134533 942 918858698 503 356377235 454 200985553 918 591263555 100 202236469 854 403319557 828 339784550 510 87825630 163 74980303 59 523683934 886 879780836 167 198006366 890 165027401 319 370907556 813 412841641 639 38795673 986 147692899 239 986165429 217 720051111 966 126083408 501 191610757 786 328784045 533 373273676 294 965886527 457 968205517 467 831704537 129 546286751 977 206595962 319 425223948 690 410395402 828 795362806 355 40158447 674 460000710 99 65162955 716 142055531 940 394269019 118 573969494 923 554891816 220 955372855 848 213743492 882 673399529 801 716171311 223 634166948 292 821490327 447 333768409 858 550007423 187 756049920 717 425915328 415 128739342 472 609424421 118 449687537 817 952059202 232 705452414 398 540291856 56 421772381 904 647808890 665 750871252 115 70543686 975 302784861 649 817335270 210 260337180 403 968661474 822 659292856 955 421489216 359 338503045 814 184679469 797 935923577 644 476829021 49 137657184 86 844574601 162 961227161 796 597085254 480 298915308 303 711224308 10 463090388 103 370987282 44 523748197 697 342289547 901 574949035 38 756942388 767 671715801 710 684804157 270 149243240 414 849536804 765 688166913 888 973240869 306 898124123 914 397154871 34 223559926 83 510942238 630 725841174 181 81513732 499 603959970 16 533438874 93 86046768 116 251974361 738 938096348 822 140878809 597 624350184 159 765893710 555 245750278 426 886111954 528 258132876 720 477543034 22 929864768 854 897987782 393 589306642 646 335863994 630 754770638 834 705647676 734 905348954 929 302977963 526 252971961 284 110404439 274 966309359 621 883396328 624 5130280 956 296292253 635 483344915 304 672186748 856 916793700 515 830704600 648 49916634 510 478642737 351 762910713 767 898487186 10 813264789 969 188849695 695 927998579 25 523282552 518 481773257 449 429318514 383 874389651 695 136257359 123 503539417 358 434592559 447 421284123 87 140385239 841 950939919 787 828911772 930 550235975 419 219241762 511 346349772 182 951048799 814 84824023 898 306387045 458 7347028 782 583245211 278 568852182 376 488481502 432 568044526 182 188273460 355 563500671 837 229134860 435 280931756 47 216002816 55 884987817 993 312743110 326 101531171 411 570864288 522 170722823 478 321177535 333 265756090 65 22644969 477 860711461 565 268584580 619 242709464 849 712595054 548 851294785 467 185237752 365 106306282 915 233241689 685 219155609 291 352114807 2 179079003 359 788483830 450 497834818 476 264638870 830 582411 488 155265332 255 567512685 659 269175054 274 601470301 496 861377949 367 22915964 665 45527645 844 861319157 102 746824491 985 519766564 745 173747260 779 924846943 143 676484538 624 828651655 999 55144260 65 268373156 689 851751151 65 750448464 236 311979811 811 7317287 91 362787463 824 695140248 193 802261642 455 716983241 743 90843217 372 521906260 881 323035066 328 495017331 741 323221359 672 494311589 615 148752376 904 800405785 400 943276613 59 313742177 155 141668406 591 402544980 817 669725731 396 632027394 379 162299926 216 694300941 966 241854867 809 260386565 664 151294992 564 566306434 382 76420040 862 388321938 869 422728464 173 317997628 65 690941880 574 367251513 273 803008640 865 243017172 581 933387897 22 404878601 872 63159005 976 692048347 107 264716142 394 198558675 184 194454137 146 786631541 331 944291674 951 387469467 809 9016314 728 560727777 590 40592338 692 813600786 695 176683917 612 180547876 910 628551159 91 698754484 420 690150461 794 466854945 929 581351369 792 116994034 840 609320829 589 744895269 63 282818867 300 726901195 841 917797500 101 532272367 816 96388688 306 344223598 404 381446274 252 374259887 97 245466376 873 779554847 942 111072701 226 708500711 152 873980292 185 909806384 710 685194852 202 135667178 164 924654518 930 326331478 661 748159991 224 448587841 169 71950050 51 640241550 971 334928087 723 686918588 123 815060200 734 465282019 408 734168169 945 205534297 406 80444753 206 355753011 619 162340494 967 138559174 972 469411262 12 691671648 128 847762435 993 845350043 678 105239021 234 126943542 475 824752190 661 834349963 606 728472687 672 213085412 761 481764824 667 912254926 649 160506906 743 249258892 226 616787570 999 636996552 24 195682181 940 858246047 682 884833908 992 863047266 725 789394348 354 726977722 353 623365934 110 442720345 515 645394034 232 256585338 76 962133689 20 750022544 116 348904167 288 175254234 279 23677451 437 412137385 213 98527959 212 131387605 898 462094048 410 448620950 93 389045068 321 596799225 315 548755794 722 551295335 279 101402313 74 8842872 274 421168077 551 722883555 227 44023205 776 906470523 108 398932127 8 6895496 400 249722204 485 614250704 303 485294710 25 583916563 321 763630630 461 472782219 161 247499096 340 855318528 515 199007610 258 675934418 333 853286232 673 282651021 222 263510283 328 639725123 137 592011450 959 28787903 346 995114739 505 603581171 68 72548613 575 952613163 911 330924318 871 341449377 70 949807715 104 805946662 69 852699346 656 469238780 390 470063752 627 653535018 96 213837556 176 877837376 943 487566472 537 506668999 693 641583168 619 980077277 81 69226093 111 869469719 473 978502860 445 336396151 292 337929988 558 978245782 591 425642086 899 154162983 697 960154114 347 878024751 983 612390153 966 239016578 329 468362337 669 68462996 446 116806661 450 793592169 614 5803720 153 632678839 875 998188134 302 804170518 530 857815248 507 68689956 455 189627606 645 13051832 318 87201181 8 990499945 480 624978452 500 97961224 295 132171458 678 991664116 49 44649220 199 715866982 252 573193663 600 573306478 266 248352163 775 711184757 930 544762631 26 622735430 393 451811559 516 960418090 707 523897611 177 905406175 649 65189290 181 817923704 842 955776916 115 59739302 612 616545867 511 811037816 233 55087962 552 781486266 757 15981858 115 949294616 471 407952586 905 71128016 414 418143255 257 369437308 869 716639683 892 764054339 790 188896981 623 137361240 36 291904296 621 264676234 238 414960559 928 36877974 988 749401870 186 920354623 935 31505323 238 412524390 712 840024183 778 258966730 169 435068393 699 497990976 544 320013700 321 616582775 980 257168258 420 330692989 180 829205552 1 150287193 746 419525805 693 811781568 980 171904403 563 530933522 725 619468897 116 330171684 288 564841121 680 593629934 9 398676105 272 286010044 562 405665362 231 974640126 722 706242385 722 335170197 855 123931550 275 932130962 689 389240215 450 678565013 728 43049006 528 552440822 916 382800707 918 273566959 636 901425942 351 122841788 869 974645827 40 782107212 999 5641840 8 178284590 362 485740324 837 30024731 369 198970558 918 391342340 282 61826162 673 753910316 48 158953473 542 868839605 991 213957614 556 57119422 301 188566401 340 255576168 526 291954669 547 989363995 868 535067211 698 834965899 484 655916342 303 304071446 914 71984971 588 471156047 903 954092404 98 154096040 962 628888737 819 265665694 499 832725359 480 532846707 748 455879997 848 210931089 243 433785699 9 825135210 403 892702543 985 566330942 726 119783845 776 369479873 663 903796784 441 368567407 566 889015926 63 782491280 371 878556067 32 705031013 940 147944583 166 29278489 513 554556949 375 730292607 167 875211101 263 641779748 681 257157919 774 270971879 159 612231165 492 378007272 355 548457457 829 100287450 649 765981832 362 905703838 846 773923441 478 628810899 120 602342934 396 882005156 395 914746329 864 722880103 983 70513322 403 569124948 7 650632232 389 656659417 467 482519235 895 89027204 949 350017978 908 447666705 367 496164419 858 261268596 403 923050442 568 712937314 101 629266244 117 200837729 70 386586998 277 755970991 113 148514656 703 319934148 294 977019038 215 336452662 221 142536612 96 344942182 887 709312725 340 906288082 430 320297749 251 883611020 572 435928554 820 610111822 207 778092544 520 229758952 577 630651479 458 572969531 335 238455409 554 993393847 206 918466193 498 683588868 639 798771357 229 246606813 847 830332255 416 99097427 648 179121337 263 306700222 553 466836953 42 876798796 185 287055813 330 315735919 958 156770308 271 208775499 758 637209205 127 313425374 335 631029537 18 209255606 598 405724354 129 849796136 205 341278423 832 647433846 160 952634793 667 161611347 317 324942290 437 69307359 863 126431151 417 745196324 829 553828496 635 208290540 802 78686125 617 612297451 388 781489229 323 422116985 729 90723561 658 522071499 427 481702239 897 157288388 268 869621749 551 952835695 812 17488855 279 28667086 107 265249657 939 985035441 455 536892562 611 857538450 970 111435678 71 489421135 318 628459975 343 866666338 916 515680595 254 254577476 717 497830308 969 489168292 1000 857538629 501 353682896 895 666357458 158 252098488 999 925607928 712 669974074 565 775497955 621 943399549 271 691096275 240 773685638 419 141680079 627 813657883 952 303510942 329 745687069 685 341981100 288 777589121 377 668684975 80 201283346 287 604616982 936 288561810 270 454845478 967 660086842 901 713132860 267 893001471 375 729446519 200 892481401 369 368789807 521 290268964 424 220122419 26 499910931 510 930938525 899 429791782 310 280730060 211 162487828 584 363056853 813 205250330 687 865764430 39 142431062 579 828863962 578 924475613 419 826055720 902 848848072 489 589320704 581 505896600 128 863262322 786 820961893 842 879717909 760 203771443 958 39762472 96 448957564 313 655448180 47 727192789 214 597755446 498 886426454 450 610474538 729 835687155 245 932326004 683 292984948 473 548919793 500 286833254 244 321786588 708 398335427 657 911439093 987 592981819 968 212040986 152 205423311 659 530193200 673 3333337 298 903287452 57 926462173 187 819120755 474 968450549 572 412243495 960 304726842 422 452430501 648 103600947 266 681014201 689 656085712 171 348329545 688 419612852 958 998573057 258 568170614 609 264565208 642 300895524 737 657478415 644 34316031 849 973191749 777 595096045 680 973433787 413 811717060 333 105793174 158 700042656 766 181597750 405 982682341 53 624106133 387 311130762 521 41686080 432 717053401 580 320552102 44 276991914 76 501662681 32 286438371 276 506804935 687 783411001 772 760208998 988 108217074 409 4750874 443 945938243 395 961771568 881 94295951 818 995895661 671 746165370 339 599803019 221 401188012 118 983534748 72 678737965 352 401539479 913 10311131 706 371646484 242 810454591 247 237536107 27 610374599 538 17610853 654 627747574 455 667381070 846 372224206 420 760210314 295 329779579 453 70716496 258 400448599 170 151998970 275 227249414 82 927970500 737 355966151 77 160515629 696 709032273 770 565864615 445 446195915 346 670262450 35 954712533 440 642512011 222 10631859 270 465678463 457 723228604 452 434270360 436 99579865 19 379904755 388 9827499 224 489921953 998 579589521 431 380611223 777 768552842 318 41966607 255 85943559 177 509072317 219 82575977 557 429677485 351 50624780 239 152898531 797 25197945 339 548765914 647 431704549 181 515159517 837 470225836 301 801247001 144 724702171 104 494746038 705 700439516 152 646116988 807 409602180 698 885309540 179 655611264 659 416672304 812 507092860 367 237315226 194 496891173 136 368739172 832 521257786 62 36716768 447 36229950 417 565926322 698 115406228 870 255579582 523 482464519 117 123060186 959 610219447 587 581655496 36 181980464 221 457830850 943 85730587 168 783418565 982 530412292 17 309066415 458 585039811 115 949003547 85 136067898 828 108869779 38 351948884 100 849546299 265 839961044 367 500274763 18 359701519 985 478227718 620 224325962 492 820354597 406 115928249 22 15554898 855 146064410 290 106815165 280 733528645 253 113280474 82 998879827 52 113158372 469 348992352 774 356603133 540 670457195 638 912741424 856 600899318 245 946914253 181 514364717 52 992356852 730 179930305 596 252954286 730 914144095 792 452599473 533 389555175 138 114467935 648 369766590 906 226223699 992 833407378 746 619610176 405 346825736 855 237374519 381 795178424 633 129442591 121 954174802 14 745138549 632 507586695 181 923327396 668 752699270 99 38774449 527 99640085 473 638742611 316 522733012 630 460246903 925 456754989 413 619633094 890 864367720 935 207750416 759 357205567 79 830511224 807 71029033 810 15208639 818 678136249 236 606027897 969 803790183 433 647662713 396 33904328 539 467070068 92 449847879 397 244024783 743 786380959 252 248194366 777 118413708 196 10508563 82 390924773 884 154052078 5 185801964 479 171593720 907 868649376 656 802202763 683 836354718 557 101335621 146 531168169 380 689729058 301 781775120 752 95630319 687 650671855 521 906354698 12 515287123 957 674527435 126 481160001 784 846243299 868 447379238 486 17554066 303 721006054 526 241564024 212 885494364 451 698296767 325 956980682 566 657158357 159 490747069 110 725585465 791 47031506 136 815690028 748 788256152 616 153255500 729 861043035 237 838390135 203 434203838 688 594812288 769 736580941 461 660017865 19 173412836 716 1611613 887 62132995 607 630101932 507 181890613 283 630192910 714 832058735 312 704547376 709 848621728 150 838469025 707 343324141 530 884895058 984 871199316 520 267995740 501 98810331 5 218498765 199 399978230 700 830951329 162 323867517 794 780708209 383 209308086 693 572114946 59 111740176 937 408636526 95 8309754 146 3980027 335 112086602 629 711647979 146 923951832 701 793382522 241 849557690 319 976223183 471 820222819 943 16671203 743 491699719 141 912299312 250 525440659 139 91597395 770 503125552 872 315522096 651 634870558 321 220381005 861 932408022 645 613817472 705 938974135 678 968857233 170 765428364 890 84119911 345 959209234 967 240557372 621 401174294 124 535375329 332 121764692 95 597473962 899 884493110 490 40945427 852 839315870 46 191221775 681 725863148 463 774749647 260 72193015 492 594172357 379 111835362 624 987712761 7 922851559 476 129173667 631 578419093 749 640843866 381 201278117 648 586337975 747 284640299 885 827139847 342 349766842 72 811858898 312 190838130 871 763705285 715 106260269 920 176765072 604 905000633 465 80008647 481 411268651 515 433667289 60 172059754 425 539479222 47 791482865 209 737258615 120 999091742 37 859139421 461 591580037 45 500059234 943 210323494 23 561028373 848 286139160 573 211449514 323 417946281 713 322514941 574 778584947 229 19441411 306 106605586 161 902780824 428 114486857 917 917432570 369 787895646 616 354087352 829 930990055 530 966617312 465 955584091 581 626404765 453 801983113 555 633373944 426 630699097 697 917173642 115 173219512 835 426872350 800 147245534 691 788368682 131 796524337 235 234375240 940 776558102 790 55393900 970 16998621 159 80774580 354 339054386 608 19905059 182 633188027 853 430598629 41 794109911 536 731008607 862 654781509 902 580657508 838 872993510 776 101272994 799 473258263 227 920391269 529 456744988 285 790553556 576 458338512 542 933342461 934 152617136 57 116481529 608 208035079 990 416651086 49 988489571 889 773729809 313 513928485 157 821286200 343 362439453 317 849201620 78 406398389 667 690442029 28 476012232 456 137213240 98 871506628 892 555010314 87 679556982 201 317243163 967 767936326 724 110112143 161 344801529 434 88302212 600 118525139 147 231995944 946 787190792 164 935423408 888 416544628 977 312171866 920 310419068 246 230985847 850 230788101 134 98482341 606 423086051 741 67982896 5 790355262 812 181062815 23 126968742 878 976229017 553 773036850 578 295714484 221 653065172 511 888864266 498 32300850 969 493508942 46 767989334 701 658812765 225 977552240 454 469175523 798 427189824 392 90657337 294 198279977 318 756906611 977 651786423 633 790918260 901 669811896 640 700264623 265 159776584 784 749907991 264 560156060 757 139577605 419 869153980 862 134381815 545 394514494 899 673354939 561 237424204 587 138575283 656 961747718 628 530415462 205 378791706 662 633704677 125 984028593 8 531348588 345 970643063 812 672007178 911 705455270 609 218378690 454 841102135 529 138924155 391 367066423 474 858166485 94 75672781 863 231709996 7 816752526 685 206361303 603 43275910 873 345506011 819 431902710 0 695373775 386 766804952 177 132710355 436 603284874 700 780886192 788 733379815 177 329450869 304 712292216 949 201766410 757 259716625 836 425008437 944 977046295 718 777084056 228 129621618 529 474720139 2 619763696 307 296602382 707 454878382 688 733750908 337 729919728 195 332316670 674 848745806 667 22975172 733 445757218 311 427557639 712 77098967 269 254188685 623 225925153 239 875257930 436 237618996 860 739752680 58 257533783 457 842483852 444 285286931 202 609667954 985 763866183 923 497342626 218 864256915 86 751339000 903 963623223 922 445410954 546 737571865 777 579523454 187 475215849 789 140986261 101 326741979 402 136187287 833 55138197 169 536945226 460 991673308 587 172318456 919 128781984 663 484791317 109 486854538 471 642657909 613 653050013 105 645473195 75 748554393 850 614243589 199 436209302 733 499720850 827 719471520 785 250468478 20 673968922 453 128563122 510 937913713 196 647024278 570 444778630 4 481318429 861 704868636 680 362562462 669 748396353 337 448546295 89 688621723 504 450003068 223 37326607 766 186807961 668 366898170 342 525454403 358 313297430 201 701472978 110 515254286 294 949057520 266 548391000 826 161888972 601 24377853 936 366950938 535 762805994 143 793886207 668 3605366 844 145820921 582 86746274 434 903743554 88 739474999 752 889818413 618 635578287 316 459193604 638 859219921 153 322732276 689 251868181 977 929216490 510 380078606 297 642841590 358 696761237 142 632872122 614 68057277 459 123797764 132 419838546 798 618853401 896 761654515 338 366480665 619 91274477 224 739943846 373 890462363 399 75167757 139 11927230 804 811981302 503 862326064 559 148865985 789 11623963 344 688333914 279 744733859 273 934571524 533 926554377 478 861520226 670 475202986 949 678104008 845 990555279 996 80011105 791 844980329 571 363540971 480 548888036 217 114500806 496 967675999 232 149661805 845 881572965 19 474619033 707 407478324 623 273844992 890 789385963 498 762274970 811 731998666 804 139642039 995 915274178 278 954307813 552 949875510 582 58453123 450 96014005 639 138934773 105 254840540 948 723871466 48 892069326 603 467220468 456 761426248 585 751348401 862 478271010 384 126994195 16 66057433 510 873423936 55 933720414 614 899475990 339 873887983 250 801984115 142 610067772 837 867523938 476 452548931 781 451867300 26 98648995 340 689382818 642 232126568 943 146144150 791 1606976 494 124314354 191 138469803 903 893965462 129 53147216 863 534360728 17 115875748 75 143857042 773 327210351 544 550174085 620 599513246 887 960397073 922 4112465 850 833335001 780 870621952 744 485319704 131 404041513 55 764214733 285 922093698 489 514653629 661 592054946 562 604941708 506 420105898 616 132181261 226 974499645 743 567505897 249 413018391 517 597148543 231 288161229 910 845434112 100 880458666 155 451180622 720 907211779 556 862262948 209 307779134 851 395111558 857 268443011 746 502835532 117 140521579 749 265113135 894 466169803 855 102200342 40 839175068 576 843805018 75 987066165 145 355010129 408 504051449 187 152438980 993 893050945 985 675465494 284 65649350 513 586491948 355 107127629 734 281433534 202 75919716 166 395305363 728 646501210 897 427382456 792 846857121 459 570459458 889 791732689 525 789303317 183 45560789 756 215658862 564 97546937 162 283962885 203 378384721 671 468639759 866 415664315 244 453887014 978 882663320 342 604263355 711 650884318 78 879343573 189 694179428 62 387234578 561 995121599 148 244860118 193 940280478 904 516858863 161 662081182 138 464712857 862 138003805 983 490184442 96 684103820 158 757752110 627 762366953 718 903987065 793 859341016 707 765239921 584 919719590 141 585935965 127 306150645 398 88806396 787 290535469 321 524854487 826 899747354 52 244027752 14 297123550 196 245597854 97 452983514 567 278261762 795 882363396 506 102615525 369 137928927 853 439849276 819 95378414 628 470494875 43 57138261 168 969507783 257 359009066 868 309115468 352 228096913 362 261977700 447 409629274 540 655384709 788 21913900 564 76818626 479 340730082 155 248316767 397 997686529 211 794730152 720 172262920 765 427177582 213 728487536 998 153680429 80 761936237 494 615836608 558 800937116 958 715479366 459 329746540 190 992269713 374 600750543 145 665923772 596 230170116 120 945308541 989 24224143 727 550212176 419 256597782 88 86006303 828 130276970 970 519625327 953 113091596 109 183471618 686 286679760 258 65449147 687 391641145 801 914114279 727 805768016 13 16817216 920 620329053 431 791913706 114 734114235 905 967798633 134 385180539 476 905083965 609 608809751 710 110931974 480 315029740 714 126945397 83 491024961 744 833442443 545 115280582 750 438636421 209 266775422 689 798962182 141 491272244 382 452183565 781 137966183 838 871093665 892 79588483 987 393899545 939 697494142 956 851158947 205 786966421 418 276977413 899 24568154 642 705978190 565 417990075 289 360574248 936 908748756 824 836410133 172 275603267 321 834330921 218 520519083 238 312163105 118 867114870 926 446518689 538 772632228 830 211460464 618 566119687 55 337796189 295 823427223 164 440195430 405 856396955 884 335622013 825 756887922 814 132382674 41 783315979 111 231040938 53 486766028 734 945315761 294 205515682 158 800753760 286 514338667 962 779890307 40 455460329 991 996844086 597 541456605 563 402149370 534 912456675 617 235025853 55 393310377 941 693021122 742 326812484 439 478815144 134 418375850 396 722229605 376 27042978 280 91898760 343 129028066 792 108747933 420 794288365 786 864540782 992 155029486 183 108947422 606 263847235 183 318845132 45 429066778 448 475914045 156 791449635 864 990122990 715 597862943 39 115876805 339 943291729 961 670625152 604 378748457 334 252398473 171 105784929 263 150531583 295 406886567 98 552930129 331 866117887 511 802543124 248 112095361 356 703104610 339 140619504 524 455692440 676 394229122 203 63654135 76 99635900 933 599902151 183 753974742 617 268721289 233 232088585 892 349542568 69 459497 117 739073698 623 928260688 955 751847804 819 435374572 104 306934486 141 617444166 316 667168251 206 46986241 789 663463642 436 634275607 41 118781761 340 45605635 365 527787873 940 971980717 336 542360789 648 813551935 819 813256864 583 868263569 602 432676875 974 228994143 375 673029510 711 956591150 652 412998404 117 123209564 198 891696858 480 96295507 832 732326914 728 229974285 62 378643701 611 714858003 672 709146228 971 197025880 690 959457011 169 60864230 387 959965734 30 412856103 71 423915654 864 507704352 761 302880135 267 400206396 673 63334583 495 793778006 730 845892690 14 185335440 409 401776015 409 691317211 820 698032689 179 317481871 278 186237424 567 692399465 880 400061730 881 488105850 583 528312183 874 11288568 777 131701575 873 432403056 19 405139875 346 336834398 121 890228850 247 196204348 641 766162396 109 90892585 748 56219553 659 273575993 481 103949880 161 334841171 748 515178531 807 428315158 719 605470086 172 490104160 174 956934337 426 335536253 773 117689115 63 267894095 885 882850776 609 652499489 926 671191931 98 253405892 13 736239007 805 360933165 542 24037426 684 239247899 23 42039969 897 453955543 56 833491112 519 522106514 772 746086085 734 418689481 590 265523450 362 857033009 642 841485633 802 482812202 184 50142368 233 694059980 743 567767419 266 894728798 282 371829759 867 621538397 949 704149025 266 244862785 460 880411969 998 21054785 28 897892649 888 666088369 288 291581858 893 825469101 683 468401640 70 595167680 519 518491127 371 63071698 589 531142815 439 308858117 720 460653854 505 799721126 331 622260179 483 957968496 859 700124664 176 843519762 557 983416196 606 5701116 732 303279630 505 793147208 917 542810227 893 349651141 329 185685871 132 228809169 520 877507253 614 522122342 163 294503667 422 515829257 8 195384223 816 867309873 820 53159286 794 65984277 756 241937188 230 192681500 352 524030227 746 592595574 862 493002208 764 411042224 930 203445268 257 31768432 718 654801632 297 434095094 551 524765342 706 715948586 290 931020922 62 217800501 116 203876488 932 284076915 200 697392745 627 747481014 26 640915866 23 739820181 805 2821471 314 259131879 562 35524255 904 417760441 502 241034221 564 826610219 799 698560977 45 645072839 918 489759549 465 927425976 237 38316767 207 517742497 135 458357808 542 700789498 107 152738499 162 362071866 185 65391015 961 950704645 557 871265019 545 567037893 956 340184154 803 838003860 438 730059120 38 259587531 772 386252897 919 324743428 133 181151411 951 877907533 638 265928406 797 585723319 359 306870882 467 239917678 478 173419712 934 857802484 381 279665247 851 3924196 417 768005533 300 107934754 628 224575249 67 78279236 790 926002735 780 480792062 603 682911740 196 449628291 693 828089178 548 551767279 687 271065388 597 873448533 474 340683183 541 979273923 506 272952351 36 735859062 928 516497784 73 360446630 384 196800567 586 218397090 356 904409341 606 312726345 70 775905356 498 716894701 671 992871024 384 357883353 142 235257801 979 174229658 399 664627772 31 442523139 566 516189271 354 593624992 441 98234559 227 948348401 82 827207296 73 115145855 414 661006872 60 734308073 811 652965400 421 618380968 145 427790235 756 450298942 901 695381373 434 28416856 132 252258086 880 318523649 123 39621505 864 751631713 622 606610015 157 501850502 651 559013212 557 206777956 710 136395603 669 744423026 281 16958520 47 583801638 979 983896896 240 957582142 814 946541324 120 380333322 222 435107739 85 576353523 341 982542651 694 712790624 688 687226063 454 717255872 122 177412040 498 387297763 490 512990930 268 662195290 88 839597265 673 943546248 154 885840538 542 752433548 691 466507561 195 651626358 43 72247034 312 956936374 376 883205792 273 133729484 538 534095429 976 647174521 997 180245013 417 84043827 426 279723 35 627130714 670 962168559 344 721750387 448 617874521 1000 127759972 548 568802351 513 931721426 895 759032048 363 523267632 424 799546713 713 536774484 237 541698784 151 70937515 257 399172924 998 367096686 473 753670243 642 443117499 467 687688902 833 855655945 811 998037295 478 314601657 237 123768142 453 577866552 457 123316898 568 305986209 970 924681869 823 871696044 335 168272309 812 271373884 762 94031145 876 974268098 451 88096741 63 629314368 783 402572519 960 491459385 164 702185744 833 942659964 268 607848371 823 485905056 523 920051186 818 21418066 391 58731339 172 67899022 593 778938817 778 68544945 680 977373844 543 883169330 909 739292200 822 707458353 760 526347835 25 419370235 247 431461049 450 251434449 33 92847385 664 939258793 868 817358412 447 883087207 876 995144300 832 813446410 227 446859480 413 66942409 944 365877190 825 884231691 963 880585685 239 439937775 376 245892075 253 139772904 544 994850861 242 636999861 754 943796984 708 253529609 115 951663629 708 293699440 355 591911341 767 438477030 424 460094858 851 612405672 597 541409603 735 338988109 538 50702705 165 637610949 868 371376967 692 697510146 349 535671108 67 141306126 508 963316547 614 416042102 164 31755403 745 14420490 608 114981601 196 865187439 201 743754424 270 295966556 627 410463033 29 304555427 113 273657917 40 632269702 229 65007570 90 682337453 965 272044737 559 821908760 184 807817124 797 79056546 665 506371423 109 88463919 700 516592334 379 827093783 861 783677705 995 60274563 792 789931350 539 361050184 460 616055639 796 17219627 71 180233073 542 257722814 657 223288551 566 444258447 111 1006514 46 571862825 676 244970417 656 802902944 423 375750340 597 196511621 943 110174200 803 298135654 934 500957420 191 548401481 939 264249195 915 428304176 827 484476680 935 190319767 399 90434035 146 640057772 746 691044026 218 62772337 30 694271058 926 666857071 662 473912389 800 571359184 880 691227534 182 973484074 838 470048368 39 359803963 338 168960638 319 608573513 715 486652160 602 914252654 651 875856797 260 396690269 158 204386529 552 208229365 708 971834997 21 21267665 350 867191422 25 456825974 468 182818993 236 6296026 289 729932850 794 40995213 187 176849446 144 195910109 860 435842181 664 609730984 772 742551064 723 859396955 700 163578347 413 767662284 904 808370260 595 564922247 349 964165262 484 43611814 732 601602014 904 164450812 700 968998051 713 208692627 127 298160518 204 376117431 129 752111602 376 985810747 641 70958142 153 270255541 993 399460074 914 763465246 455 44924401 422 829156789 115 315656947 552 964011111 418 602132761 82 891990364 451 359541020 487 457835492 784 797088682 149 254716867 720 899524451 893 661146417 731 498539079 939 364050981 58 408331660 611 318589186 203 606105531 993 172081474 273 526239610 234 920744799 834 680079833 661 355761994 613 857121322 403 16642890 215 673353347 143 510798661 411 942848431 895 458479077 753 300341314 316 741570739 81 169334810 752 470375508 655 225769809 355 261015803 215 505427953 125 913015016 562 310707590 299 685830717 282 324065756 17 724029064 791 973190502 10 93360319 910 715939306 991 653650107 439 741095378 53 841407997 915 988124299 378 757312113 477 363101264 854 574844551 621 567421189 922 448938796 229 268896068 895 632333102 727 873825158 803 452656545 173 807028035 218 276397421 702 950250720 85 218939793 427 862408362 761 556595990 697 355412413 336 827838155 797 866623984 222 950699200 870 354749527 130 238448439 161 659132968 726 149006804 630 652498233 254 663660790 407 463224120 713 320733695 549 508617222 641 424014919 346 129908972 825 972701445 483 900982049 146 819947506 566 657539727 477 941095257 409 858500631 990 307706528 230 808239522 653 677580089 224 23155695 311 106424142 530 292086185 249 509886551 240 671972950 127 772767871 526 294748801 158 441015127 864 602774499 847 339359066 894 834725751 155 141295081 567 362805695 143 857657175 11 498149442 276 991458565 244 834177334 525 23598091 35 408554777 289 842709228 223 262990324 898 61132448 860 228696493 217 330893372 977 838064064 311 911002251 421 721508653 123 330857133 725 792736486 720 412322850 268 175619442 238 793208490 593 695355864 329 954486077 810 253419035 554 110660903 126 704453869 215 549487567 790 978667761 287 202344043 544 496230365 942 180631316 907 264033439 774 998405602 367 255048627 449 517434176 324 681648150 455 391413149 130 121205134 263 595431206 985 440032119 343 913729067 383 318005857 78 126199441 844 25371200 427 898635156 738 138232490 266 60359269 694 51472767 602 858209003 766 511348549 78 748376899 809 813073712 796 563909506 560 526013748 431 201222655 234 11337658 862 745547798 754 320820318 291 285928371 806 49909889 626 736193486 152 84855548 392 651993237 939 939005015 699 247735091 969 17877525 836 340394944 597 777140562 214 191456588 345 239967489 917 33297409 273 673167384 684 91538291 662 743461442 714 222337930 484 871590317 271 278032401 792 237308058 817 373804114 417 841921350 294 67172999 140 432535036 867 641808102 679 585302565 890 278512719 419 548572102 347 835025964 126 796862694 709 449465474 252 330426028 556 789227835 574 459214980 815 734219065 972 541704395 976 599378241 11 131269239 994 63103319 939 52595044 986 386085535 410 17155875 463 269973847 82 226273233 496 799290755 278 801282742 461 730205855 565 191017488 803 245162682 796 920279079 664 270296635 796 647618654 745 163659096 984 636640473 310 687895007 706 870129930 614 324702614 513 860693339 893 409000044 418 73855700 636 322783894 250 270729260 289 913337330 137 797406314 940 436113705 969 405107871 77 335430362 625 917642631 208 926329685 556 295129709 682 949722223 356 826882930 845 284860679 437 846533907 241 478179121 895 532695112 251 324799059 578 402331193 1 564972860 894 110279260 556 173852541 698 822597516 256 217680005 688 818853497 962 654947843 910 325330268 633 10625564 197 699455294 482 245091990 98 202098182 639 672748918 924 12748233 944 278621598 680 949282266 329 964058245 485 949653835 152 365797339 507 17503292 174 822673933 477 319282119 878 904673279 596 215838521 515 120355555 756 995269095 177 776627966 957 342051744 442 155326370 469 364987204 508 347384238 499 816215569 736 406974551 530 850730954 528 514484884 247 18837851 463 347248133 634 41610593 847 642605803 598 86560756 189 404590359 601 858146121 260 82566253 889 520094788 153 174796413 212 784510555 890 651926832 883 151321705 890 253316356 502 117293261 773 367359672 248 429179204 834 918342331 430 673969681 771 92073762 708 37260180 802 949751003 812 520959336 789 667905584 583 321099232 945 55437478 258 269111636 349 8798303 838 940948305 112 866822418 582 460637550 178 47536864 651 9694239 253 714540548 505 179975370 615 326015704 208 928598466 178 695837311 901 88428665 172 881993405 385 698657224 670 951616154 894 66549439 881 95632777 817 739722402 338 583988396 673 51546657 78 156386632 682 1731932 265 943393691 321 745325673 887 139884834 549 420182210 691 88823696 324 982101507 86 770982172 283 413670938 34 544615896 801 246628560 785 797068919 334 169818032 623 190117300 361 550006086 119 893213913 700 728531784 991 48175031 397 279068175 801 856024036 555 144904543 872 696982865 313 779261446 464 429693197 232 248247876 543 592780723 769 151706481 567 607846447 99 940752108 190 34420581 860 630344295 82 501459699 3 890537239 174 480521006 861 419021881 305 551140482 677 616896648 883 678366742 194 129011899 625 28072143 879 198496456 493 931301391 457 252590136 479 363943943 84 727800158 929 149859690 725 210663428 858 760186734 643 658811190 607 913926516 922 508622162 785 332944973 957 286054726 736 226611864 499 231559684 727 271776183 113 934289343 58 768598427 133 274394817 437 521005943 848 467345259 784 361717273 455 820810677 65 948674032 597 169013166 150 937399090 446 317277484 599 716713054 421 472133482 915 39037419 253 247981323 289 750725160 150 321250376 713 532254934 183 738283613 918 610078533 488 208091509 453 875515400 77 557967145 681 722640877 344 277903243 860 517016632 399 438009849 582 257505839 811 990920009 3 261906197 321 377658899 681 680937976 811 394717152 289 930107928 496 963565671 65 548993614 426 133672365 81 562679146 446 133311091 620 277057669 544 652805181 306 487428340 939 47049056 159 857992932 420 102317184 664 751854804 54 64189369 446 372057547 86 757530922 708 615914787 859 221132065 792 495346637 373 396236366 938 487353330 574 813459347 116 184624365 194 166356043 304 482457457 881 486288878 235 527020751 90 737760313 729 998704158 77 279828603 41 414499503 247 142846197 275 747102971 823 246085473 903 4298960 738 53908492 139 649371288 596 167823327 418 489437905 813 79490369 515 676177498 792 996413178 217 414294922 336 896640727 600 990561783 795 22504879 225 417354436 323 486010032 656 214632712 825 501563744 74 692695115 496 146460314 193 485235758 663 313394833 240 365516802 297 336823964 941 592464722 652 871401960 43 861138687 117 47151208 291 528836921 66 634376509 841 101897409 876 236865706 215 199713097 450 61107246 268 999353021 733 734133613 76 2702030 150 314191737 629 631174789 699 348347987 939 445277995 980 185898806 499 642342570 126 594916737 408 852128108 755 452030479 541 406877374 373 290704600 813 248785283 734 102351924 667 872695699 262 761396539 671 909710829 161 490665234 983 572121737 676 397177814 722 603627170 388 587772704 794 135037571 884 250820359 185 230017325 270 782305387 959 132851695 390 5569387 423 301395320 519 264772289 278 822708770 61 848587892 875 563090737 978 634371969 295 318949395 699 710077914 120 211702395 787 201272459 920 321489272 6 540251175 26 778057746 854 869766992 723 990963961 585 201962104 606 246566950 927 786194617 991 997626399 521 956849626 561 191237826 918 57884246 724 139599204 57 440379636 285 346890327 709 855108521 92 112681597 21 642921484 925 10759161 334 933608163 841 772534288 26 831709549 44 564454041 834 479936666 262 644011112 699 206001825 7 838503695 390 402991831 898 896450416 394 795851962 902 83258778 449 501998646 720 347948912 459 154731115 220 863961617 710 229824084 664 963275295 893 226495855 942 852044180 613 346306886 870 19489744 855 739988472 113 732330463 631 528534780 493 376512710 327 155611308 828 472426973 480 858602640 264 749273339 965 196767487 77 507779686 837 620230928 262 487401936 256 621698067 859 387147757 909 77448738 343 609589042 73 335818413 263 41092083 803 784345548 112 884588247 294 158505988 711 239989475 97 226395689 317 164305268 888 150145948 144 520516199 44 685972532 690 874088741 457 524945705 310 496456505 527 54063543 874 191739491 985 830119621 835 673389176 196 575814120 787 818649019 407 702682564 673 990598966 848 851095113 769 446540544 395 121214158 244 195255715 593 967103269 711 367205185 288 410449918 301 10342633 227 309452231 985 617706498 898 862778557 347 169268920 713 107009123 517 692061931 379 218250364 281 665933334 82 183045619 540 823724517 31 790433343 556 288305700 780 778295570 544 659381974 849 510596341 697 115596860 858 139025172 694 591888772 595 145139682 12 950051679 238 721420537 833 269473823 482 567741195 483 99704904 887 906246032 281 507231443 707 535622964 74 610350816 157 21770376 313 120367779 642 659399809 184 684567939 873 146943197 673 21835687 176 788889152 260 646534517 16 664391236 309 419256283 988 231772171 998 495279317 876 184670898 514 695206841 955 181016751 67 467984893 916 664607425 939 270747756 828 297676027 826 439556531 353 405036802 659 541538812 105 162726035 430 822408395 431 798015061 22 897183059 173 472521519 938 481949423 62 250382954 473 466029165 526 13807704 177 331350382 605 981189126 792 822146841 216 728801633 576 945715494 59 773635314 426 288867716 941 945811599 202 387043581 631 488761692 82 618187805 177 436483896 833 210201415 470 587087663 230 67225648 819 943999494 552 602969499 613 803306099 75 565094813 558 537780825 471 772927430 208 12220547 781 999627172 549 583163983 158 742512949 509 173955726 890 624754684 573 959053765 385 749111737 332 552777784 178 4790977 260 325201663 77 978099948 26 141977122 715 191382411 615 826528795 858 249752647 262 903270143 601 547643249 963 430668150 581 27893077 210 276777084 911 180599710 294 756327174 870 387251670 865 314068479 682 881917281 879 476969269 924 947625082 432 701784145 328 618842632 950 480052707 465 448537701 939 585595476 679 20388128 455 853114484 633 759320016 252 795888357 722 607472062 903 863849593 845 446268233 347 615986754 745 253270120 676 666499909 405 30740117 246 127216849 260 199590886 98 960522409 160 178154290 929 964966749 752 352732716 423 141505716 768 928570975 79 444833468 913 751143808 171 766444870 592 233959756 648 504884155 224 979936759 988 352051284 873 996536808 813 546330294 261 484018071 801 91534345 542 307492198 350 443741336 907 954292197 435 447082581 32 137533069 617 251478748 682 238883870 785 258784265 780 21981259 796 402649230 902 872415693 825 877578593 140 430678172 937 391131651 100 618833270 387 816007100 95 560977946 664 972930373 668 384887471 255 394578019 848 29964731 704 783315176 836 731096679 930 155628821 365 271999791 714 891548351 558 297024993 835 480394929 776 194426419 457 926490245 929 50754194 755 360215744 550 672938687 252 991289372 499 919660842 743 834564149 902 976488479 510 474292963 203 809022100 899 35604391 701 969756475 427 913078458 444 835029852 272 395699557 728 878936121 443 459609801 652 132684501 151 871277903 74 807562862 623 214832106 906 679489140 127 978481513 66 433699806 663 993612585 868 331972705 901 695389027 479 348695427 723 131597811 924 344164523 738 881770784 258 996601614 893 479859993 576 730294367 99 316275420 264 128333883 424 275595352 796 130034206 146 81832360 645 458877880 589 339639118 282 214051357 223 649385712 660 331231890 917 508760960 482 652686139 33 532424523 299 293419802 487 539042294 254 494603281 964 417234990 766 116977141 896 250378790 20 951427290 318 184901323 33 76505268 236 571301670 795 131182579 583 114302661 431 200211607 476 742422006 953 954578751 490 290091366 694 441837862 115 348108171 818 564075855 519 451271805 196 655402591 374 871594038 291 905480914 878 559750615 379 517774483 819 377139662 710 606089161 818 714010989 708 190836394 636 679528659 744 790654183 200 367467176 842 820515525 835 291916247 87 321953884 512 732176169 806 127806139 440 702537811 683 126299463 472 946176888 168 521205865 174 852587361 588 667093610 712 246020129 828 805209464 773 895661153 389 751134416 175 643721436 89 852263467 632 328668141 952 282485320 885 770263433 728 484938163 484 837129620 558 648210986 656 854631332 140 225930017 726 871913676 797 742387681 152 978627159 103 605333340 339 945736442 782 620549381 443 519191865 125 205783045 630 533926694 328 968265052 759 904945923 51 994695187 753 436288999 448 666360097 408 752018927 222 572901355 721 617324415 999 722532170 492 725373341 261 662790137 653 156339733 635 940339566 17 601106954 266 919831827 305 766539957 360 986982257 911 875482251 180 172743399 621 603122657 961 913146977 604 85237414 43 583934307 202 315412320 359 419877688 543 809928690 205 439042740 243 640113912 917 955014194 333 489229643 590 94357432 378 251862327 649 91282897 435 491712456 679 725139436 531 693180699 932 53487391 671 629502516 310 490220194 36 541244805 300 42401772 54 691488066 267 810490366 508 628341043 735 977518728 723 464751088 247 408213324 363 23039298 503 418073656 567 786641103 830 972788823 137 700623741 917 229583824 685 292385392 311 5321032 389 524248632 532 241410572 725 178811839 682 869084766 836 311977764 260 308504038 51 695137370 648 396549050 236 271046554 466 398079567 827 965412750 437 203917326 42 97325933 242 907606215 732 852861657 463 413134461 863 277615803 779 735164798 507 785193008 149 840713513 283 519735667 85 231869589 93 278386101 134 254876948 378 502478201 964 694311588 938 587171450 468 186278363 184 652869883 517 718649008 611 885315038 38 673568852 47 996610973 883 246655601 604 752571587 425 10032241 17 650565011 208 302599415 120 838634666 664 294381869 506 173861504 429 782461631 302 34730052 674 25025751 930 204594441 112 143144405 567 312450613 607 438367543 416 73197022 798 132926266 662 716025006 496 894762308 574 317275360 493 710937852 123 400391562 895 450654435 575 55301474 892 327906476 997 810164234 225 474190479 932 460017461 965 149155150 848 650120447 866 241371468 126 81904202 844 717136075 503 204641153 892 946499492 756 547421426 191 610423285 596 118105647 87 675556480 940 104635532 417 715880025 283 164342149 143 349586384 550 655534930 133 4531625 690 668910993 472 765580716 861 474775556 217 22759322 600 363628603 450 240297370 905 422753313 401 507240562 866 189930816 575 751009181 355 562995494 744 320826531 998 145243757 408 273895068 658 684462899 390 876343639 117 691367984 891 216561564 473 688466580 870 924545688 192 678684243 810 212783076 622 330680557 753 554227150 145 910101803 346 799611740 974 196341661 887 50037839 282 851424376 506 253783253 493 853401451 659 172469250 44 513657673 822 716500708 923 616980281 939 978498718 480 699537983 556 22505471 738 304008264 904 392766916 769 250571039 173 994976363 278 930001848 253 92886381 570 789667676 795 199655567 696 399879023 503 435172820 690 423807955 885 861451658 814 310543642 165 226745585 780 780817559 399 534091866 875 318188172 987 112717802 379 617434945 701 172410061 446 52783365 225 773542907 309 922621910 710 980816011 847 307905345 275 878977737 158 785761976 727 633314149 132 284546360 443 798704717 735 377661358 651 141790952 613 512268705 685 636576345 536 39785550 537 601151727 362 533066585 993 803483468 511 1275906 8 27616120 996 557739650 333 62000917 317 464280854 511 296018712 185 514673085 978 698806840 836 73707777 458 380660235 949 149828632 567 92711948 761 553307447 135 988053877 633 752223033 113 90273540 838 367182439 44 537185434 610 618154547 802 489601240 782 925394826 655 612308134 113 839562929 513 100816040 850 706614957 531 392731424 314 742045108 755 679463751 335 628454399 631 381585235 22 440919351 867 613406267 625 64904606 887 235552154 276 912293919 819 124782183 110 42958720 848 562498046 642 726673656 847 62498230 632 936260678 523 943574194 273 397503979 816 789535426 945 752736479 228 343865476 947 819740965 595 436902090 592 331756236 972 607848319 101 986584382 714 487948540 42 579191585 341 490720435 262 485428998 282 610180024 753 542001916 452 990723804 914 763326155 191 865790300 167 347769043 300 864113785 120 966372881 839 935697515 90 322590034 756 59566966 412 250763438 228 868183792 320 539528084 843 368413395 630 338953255 511 318384847 883 863393969 775 238788920 556 408114841 292 138101913 758 649502118 686 3034875 812 493979726 470 416583829 934 537398012 533 842619577 978 493400170 806 482565091 503 811290426 17 845023860 401 115469442 871 315415949 973 701955517 443 612422076 440 239607122 404 947124444 45 716661701 831 174506335 55 833252549 194 107134231 327 757430430 772 749688015 926 933812053 129 697590928 657 112553085 569 349954113 256 749889251 862 845536207 197 270898517 244 913839057 467 313860271 423 120775258 253 976497220 161 913198656 56 888196566 477 550533444 83 398623493 272 978771656 463 898123021 795 324342471 923 246126240 955 705871335 256 604836871 133 150363756 122 564028250 741 860780313 516 844887320 299 59127668 778 624460857 728 139499959 88 957371418 770 837605741 680 931707754 76 37378645 481 140062271 801 481627160 177 758362841 648 874286193 136 673574809 361 384668233 378 914879561 25 21614765 911 376553699 699 684760418 228 630000091 476 877771851 435 537527068 676 227285629 563 181037961 219 963631581 509 284209728 570 506586438 449 315234506 729 893250627 277 45259414 196 61853432 48 3664528 454 368098386 60 739713044 181 551781648 641 441712411 761 372761240 304 137931508 668 841096005 663 169391783 32 343676344 893 737531991 890 256918785 1000 417227623 605 537218123 109 22437497 424 5686347 217 93209702 286 897405055 914 209003300 22 121139593 812 420658232 666 973081408 769 885282239 546 769309697 596 659112214 918 307691498 259 503446833 777 742983311 839 416170683 77 555899731 496 839326623 448 22129287 250 866941585 811 361102192 680 315087688 565 814986800 620 801196786 40 524222143 87 853280986 978 839701995 502 4906985 305 10591236 480 196490 31 240750103 623 474707115 77 347892278 105 152495484 0 986073030 522 467961356 88 982018043 592 320305734 447 61304899 7 546088314 651 211203045 291 758290336 6 366649844 913 482370545 558 530605418 487 167684348 48 603888312 581 15340511 914 323563462 347 945887600 357 996712324 713 538380696 454 990442456 138 751487664 291 619094501 549 650150570 859 76849009 637 362543304 923 744780246 142 818140740 698 687098289 336 199069094 132 721727656 92 712507092 187 984717067 481 667875368 130 929910971 447 745805878 16 783909543 384 634497081 410 311161730 528 270022071 201 927277250 386 444071736 498 299043649 636 765492597 470 533533258 513 267468989 454 534461482 443 869384836 669 932405747 492 549764808 576 323920839 846 326783888 911 285010737 442 869739369 42 369537563 121 556644988 77 938465381 515 630657991 95 565020226 915 745877312 891 412633479 372 297592756 641 453172380 434 344715035 935 703178942 713 788742814 292 687529165 899 989092509 330 171802755 802 43831214 256 799454406 371 562257178 409 669064489 437 829914525 624 877114586 695 921411594 115 577097978 647 602552205 589 862856097 915 977746068 106 44091881 488 218098250 30 632200931 94 95511813 835 810517976 562 773367006 189 633472631 432 789224723 985 401060281 891 887155424 801 456290322 64 649639536 853 241615502 628 309105241 203 280176801 861 326208257 1000 745178178 701 309974994 897 653216747 617 165738873 415 66920370 884 862858547 316 617371868 12 576107289 862 8311933 282 283546268 427 832627686 0 674976358 37 765110696 104 954006674 572 982619007 263 327217068 692 528227702 495 755011491 506 546174991 566 733885665 36 490574024 862 719629185 447 230239319 111 954364050 20 325843493 495 464204452 82 225462489 857 44379086 834 270945130 744 607420396 989 699079582 910 114372730 702 983020850 457 273574976 837 713776209 543 609462097 425 775125562 483 937108972 334 633436664 869 717252905 218 582925989 205 333742364 902 919035691 683 493808165 51 110575129 297 982398278 723 692764166 741 567212895 382 18764947 203 447238902 965 590672222 202 568327183 145 606301791 280 939403580 406 480637180 404 244878693 562 702340090 908 541069200 93 700205761 339 672530068 776 87692063 409 255158325 323 770551198 25 832728273 505 816983594 308 715852133 920 718130668 559 361927514 560 254158556 257 848636916 122 258972367 690 136431250 939 223076261 663 683012686 17 282874062 711 855148555 790 300232117 118 559517376 22 943571453 666 395539776 347 943230836 0 545389523 650 519180130 736 341240566 771 821673912 355 527461967 684 471130637 693 600584768 596 26821021 390 675841212 509 867002174 401 900332480 687 261016905 33 903926166 458 984911246 506 890687744 362 401312287 168 829196345 202 299209142 968 237151244 456 72449799 715 611407402 602 868355784 317 702384289 839 726873359 79 315636001 322 73762986 575 280625576 920 486156971 966 565477014 913 908975601 952 163131763 312 829099950 888 960292376 91 392726881 469 329366044 53 636612807 854 185642049 514 168333559 971 172090424 788 226376442 335 463334476 582 716181404 334 921108742 153 785271875 745 492671245 811 209221318 479 95455052 348 827242826 16 325222289 27 370614276 45 335872483 529 752054532 853 166840993 999 829641256 716 597214237 543 195960342 389 604595293 634 787463749 643 67773776 812 831978272 965 790573109 21 60642891 45 821613813 819 993380641 894 361807402 536 805606399 768 562091435 621 820173482 795 313998378 117 590448922 906 646609786 827 828693641 334 277469467 629 200157635 908 506729947 576 224591821 692 602857053 76 752772655 289 476478055 961 742659999 774 668492489 755 549778720 439 630398424 465 15768629 160 101269190 509 484657355 207 846321826 719 269669520 240 122393927 773 986940684 314 534652638 675 243852731 827 185694761 476 713430166 875 97398131 638 803066927 23 931579257 843 949142236 503 671814678 582 184212797 751 301622114 348 527262340 591 34333152 399 333352365 982 762028642 707 377400121 48 608168089 970 506570065 611 403438071 858 63966370 698 245746660 639 540789660 723 506396492 145 311698153 234 571203033 251 935703971 428 726342016 773 17870743 220 74503906 401 244917361 16 53307581 191 674498445 898 875470475 392 959400652 727 674827024 853 613808918 862 113717767 539 91553494 331 64256806 402 350606623 79 988218180 356 164138616 496 583854489 421 391198361 124 102146158 631 540206538 155 48623357 998 786457273 30 563759694 572 921214127 899 478109609 471 795182285 681 492813814 177 151879089 955 708453216 660 529857854 490 539093448 256 25512963 980 687650125 832 71387414 762 918329274 69 100662309 900 938416508 980 59456998 30 613932724 913 489551844 639 847144242 94 891889866 515 514445532 282 359070940 457 69388118 965 113718249 451 654479205 382 294641057 213 168046365 159 753208156 774 953674346 872 515170953 613 521441702 200 161229170 494 845983552 992 298130167 683 847697496 599 73406588 354 516502482 612 236490991 684 17959484 177 752678569 37 292055092 460 425211778 634 879647078 485 508132909 850 762830104 534 684256077 393 614296477 249 828412566 681 805738673 388 719561487 202 505300146 533 263580677 698 449145034 993 31975855 801 944362690 51 167500290 659 164739953 663 979099584 768 185283039 215 256933048 763 226464320 863 4732197 768 231159305 311 121043048 881 852074002 504 511210457 53 953042260 692 542716455 981 952394667 691 810950791 914 857826707 1 439095813 464 171133715 936 829818142 151 750725743 225 168927417 655 356565760 111 465487722 678 486497275 256 83546451 734 947323694 821 608171706 186 158732918 722 274471000 882 745061972 58 829958964 806 162962177 801 719230128 194 653047813 505 626566246 320 337680492 111 91758542 943 5540193 116 88481946 682 531273126 161 544459464 991 534792955 720 293862705 433 836310836 964 416898577 671 350724760 362 728782093 959 149040301 664 363862279 919 933246813 201 801653937 828 156389469 344 471850034 697 516365392 341 271878336 789 623525806 300 978437467 904 27098173 86 28990572 932 163213509 427 459810389 549 824857636 443 154104993 793 841499591 63 976052345 107 745318351 891 877080676 982 375582603 54 430030462 794 595189626 114 498695040 133 81697092 905 461955423 82 691569050 441 631090258 972 234285949 80 861477788 642 744017501 438 948608608 944 826697105 797 172788243 215 867679687 960 793884889 284 185765968 766 761953906 788 756111224 137 146896376 157 361007346 993 541434632 89 217509257 146 177311539 77 209566825 845 431079857 932 778927783 634 438562543 900 724742968 139 809821537 305 832448067 502 437434957 957 211548450 250 771465379 259 251880459 307 50797597 205 693343193 53 178003320 911 118898646 412 381163331 968 318099539 946 463284324 248 961065889 303 453725820 480 879840942 208 590244422 92 970747276 570 136690532 33 567146203 344 700444856 340 528453114 745 877192936 129 133529862 185 932160677 453 347802654 807 277018797 639 938558767 444 718337401 672 817652089 871 873389161 167 225315162 724 139910252 266 843831744 654 179656584 703 545251438 946 883703085 268 716647974 978 897672760 24 533893421 415 487111493 284 553933493 387 117581904 668 440232216 362 797572949 136 178076555 328 134356437 857 986524502 180 218061793 611 514162646 53 121454506 687 428109911 613 326435138 795 959076213 523 79871689 87 784397411 852 266523455 748 528074090 967 278255989 128 21816269 221 530153272 143 916783709 166 723537075 802 15908284 17 229963253 801 897508783 927 6652476 800 844004439 238 844544637 423 145540884 280 614302717 701 108389827 771 919135952 406 4425664 569 975962053 674 780443066 785 319585783 411 99533908 992 894872784 838 113348818 906 381962589 438 204832392 0 390224763 407 610125602 73 478454671 17 110209504 507 23109786 191 447268793 460 889761896 464 982882072 527 273890996 639 839469456 919 580775800 750 772130612 920 776943316 7 609710489 581 834542392 391 271554510 490 416283388 7 739515894 720 500758660 868 414217772 228 146522922 673 573504603 846 76688087 988 658702298 107 179655516 621 188594000 953 444891603 768 245289184 916 997129897 23 785030623 584 391484544 119 281591218 176 63670326 892 180710303 549 895658124 249 784873918 179 730459074 647 825363558 65 983535313 578 950168644 296 182970735 81 393582952 145 332526143 701 328766810 233 43154149 392 216908664 461 569027665 800 488295200 312 419020765 569 882957552 349 878129344 128 213176579 157 234707300 42 461772239 350 780418525 765 401710650 764 96726859 288 431154889 431 620488032 555 92124885 579 924945543 939 688980715 535 985107524 533 513847687 735 457156623 507 350265676 57 425366785 559 357509164 619 295758131 458 627802439 417 349399084 604 337559915 377 668023038 475 580001991 920 453713523 909 355204595 527 227170362 271 246109500 988 410658101 438 925228627 370 762504946 542 276243027 589 902988993 677 26305156 909 452244797 148 587771753 558 185099457 319 91708365 398 608912241 1000 705065587 288 30419007 854 255227309 288 547745411 518 795811750 632 318622939 884 792064707 994 246749516 630 67366213 425 961081679 540 75490003 339 908318834 2 567488733 247 600835072 564 416144281 323 872989279 780 70432719 468 667940851 795 881130097 621 627509125 203 160292405 707 435751719 204 354592156 458 157005785 42 240125430 325 254779422 847 826125090 409 33679779 410 415153044 46 197795467 559 171909401 948 807502281 572 703473960 569 46379589 535 130049581 346 747422068 340 866977551 554 660068059 89 625772508 35 494429245 216 827529518 357 334403556 846 704504532 765 384292189 894 831323957 294 882539965 172 864824499 273 993328975 88 521285598 658 808707538 602 110882043 306 394139666 578 323064213 219 904095692 174 201132657 674 276424395 806 655936190 455 596827996 915 671545817 691 88871855 787 932981053 563 21937376 446 680239608 835 473843490 562 575580576 268 402939596 126 53119962 887 217231096 924 597151841 394 496468834 442 488291101 742 466108151 734 324050513 922 532624101 198 11827030 293 650044228 588 659674425 498 592343747 707 645565343 296 971902258 358 875507520 340 77227978 933 148403482 999 300298437 322 541930027 461 685825909 867 780765827 640 957449996 939 316803912 261 659717726 833 693399727 825 134790166 474 406432070 166 32420281 235 870007992 467 76494394 159 155863058 4 133607309 643 984847708 806 886543083 178 405227520 726 622083780 948 712842877 976 677144126 910 746624702 463 412812905 790 71523025 622 498694590 410 599448726 247 637651712 805 460396595 924 189439203 149 825561655 353 826221672 283 747895071 496 305959986 846 6064217 554 201192948 364 921584071 670 524301635 456 456253063 200 99221798 376 904316701 625 521415170 472 204280722 913 687292641 173 353497758 745 570661096 212 910661978 6 962840634 859 628621670 159 861094330 234 898208301 892 268318006 609 666117433 964 470622293 652 692499103 46 496434023 368 329249685 749 548728156 757 553606821 219 231959944 985 294276728 743 671017026 196 88697559 263 507518732 158 610434433 684 629214407 826 313601508 443 802174882 386 473646856 232 744510140 764 199969332 749 158786796 752 37951386 358 685686026 788 596100611 884 554915914 113 104778644 937 919200734 88 253259456 142 619124302 55 684239985 205 269085379 691 380172089 876 434166443 279 683258081 91 922969674 856 213025767 961 403726515 937 837193359 409 670385055 725 843690685 289 224760610 110 940710438 396 965574091 816 289395331 765 277748496 324 625608029 608 67200002 830 681092649 295 647613734 965 970857082 407 747459529 514 220673660 629 404559999 95 828215810 478 164594111 512 861092751 67 124079198 247 44270627 381 584320339 348 897488861 103 813496680 821 813426858 730 748026780 414 157439293 804 113378133 292 873332768 446 543947446 939 589895914 456 327575779 785 349916118 693 957691101 961 276708317 241 517207504 93 450376389 64 718939984 533 941791850 705 13759130 421 874726377 720 564736428 281 88299391 679 162573938 561 48516979 349 394555555 35 597820696 913 570664056 65 899269922 428 263282785 176 870181040 763 80683667 794 798637840 351 432850888 324 916774301 868 397625501 123 816607748 451 894645838 960 773820747 771 486621178 74 831565244 894 756369082 388 531588912 570 314970228 728 523980166 815 878050842 578 293699570 774 608851787 218 513581966 292 414249647 107 864768292 646 439408531 42 52839520 551 92603276 970 173278203 93 906256794 488 894416489 374 196389309 765 894175775 603 119734271 214 140711699 498 265434952 214 242136053 128 3288063 640 733265586 674 319549418 978 190171166 642 396939633 872 519603796 183 978242282 747 768452640 134 722732077 926 836247127 438 183543213 440 428280953 500 535670530 557 764265580 36 958000733 124 510950083 166 401989753 169 470292969 976 581545583 162 258541490 206 666484458 226 18797108 820 898591396 70 119844361 852 629173396 57 584445689 838 861682741 868 597825771 904 648056740 615 338017665 686 368207973 643 84778724 888 67188212 365 655655369 105 614625011 449 29962555 662 160093353 15 134989201 839 706299914 169 845432253 652 485187317 652 613914334 46 466457101 798 301973237 937 410836175 609 70412475 631 653032832 219 265166741 656 397442713 460 244519899 784 708420669 80 381875760 339 19218786 829 854257086 616 516547092 895 710590270 41 956672636 296 983265221 576 664352391 743 996124524 971 941845575 786 235969324 878 491778333 242 176259153 687 551437989 82 613234202 991 558979181 422 123911591 370 310040595 432 399783889 409 797646722 309 667501294 145 771536147 944 164531307 258 357171852 917 697955672 859 504103910 97 654709482 119 331760791 509 317650625 902 543636176 538 37678267 383 491293458 924 788008277 785 923106813 635 173769789 968 391656982 882 576709207 36 277834918 568 596622195 861 456326001 746 209509430 834 70900747 938 419741005 865 521283581 631 238689512 41 882233222 649 501949492 464 119246817 914 888717134 186 544089065 864 297049030 529 128654761 447 653988146 590 380035140 403 235279335 753 208504378 829 538102394 882 511069595 34 229197623 970 941790206 54 9784875 639 58722266 854 565205331 358 994866893 763 353380054 357 776472586 124 125051377 391 100006151 945 549688234 393 876375324 619 934082146 791 761948932 176 215105832 424 467152519 453 651966370 470 142891772 992 75265321 864 354748713 950 173660298 151 764609768 66 469566907 629 663089318 302 114401166 725 34718901 438 795548200 758 226316179 686 372298374 330 777060749 282 284113087 0 262550666 141 192502217 300 826947599 472 761461391 960 615141464 33 502625907 756 365284900 218 304827042 311 686901260 827 911751740 887 32549918 570 777193097 280 60966596 996 297836033 378 891632837 440 336456171 353 902585370 817 317625103 618 869940533 407 288335439 121 244679602 898 315522576 206 927050725 576 650844620 867 246401766 106 76646122 117 383176072 613 474374046 346 789361433 776 781519650 630 879195072 245 361220393 812 755333443 484 338572324 218 822363513 251 284412636 72 486221804 787 115744029 347 834510300 126 753635522 832 590803149 211 743172642 416 794489374 411 366359299 633 531494090 217 882168195 290 126284819 601 422610766 5 710151855 333 427148403 932 913036769 646 768906704 893 617592163 953 22495351 841 892042573 617 287795119 678 195263054 73 534238810 916 766775618 919 549308521 615 18129286 352 531798915 905 107751913 81 926641855 297 4265774 570 84603523 432 346119718 284 145981689 144 853213481 580 88051912 318 413691188 243 868837092 149 365807125 603 48969802 290 436198387 952 40547980 46 111063630 324 262132849 641 187168273 977 920069048 844 256472403 76 270652763 184 747211567 90 425952991 276 842547320 519 251011380 753 140027797 830 707947063 774 359718314 623 978010879 918 967817394 279 778829087 752 702515629 236 945557992 361 587454423 710 674529977 54 100674347 50 307723491 163 181064355 209 996779928 821 227479405 374 845819702 973 295372646 161 801530766 219 633155056 996 624206813 130 40468891 440 186622396 27 146666923 297 561851998 883 475870912 748 928848006 301 939425270 531 367553394 653 476637130 438 432618548 949 748507116 199 911291651 209 625250223 532 803104490 711 292894968 971 395973424 58 512276875 215 992834192 917 665479131 578 555663806 752 169305144 102 295419090 440 102226726 337 370048927 660 539456711 259 984141603 10 754832351 758 89733375 44 157213273 365 134080772 748 427050751 702 427753975 266 927743245 529 221747400 423 843254808 218 215714419 304 763765508 637 18130584 727 525052885 589 500286263 921 472210170 591 620988106 472 582919380 659 26048636 175 235883847 887 682428129 457 294126913 385 200460324 857 661494716 796 959448669 472 284150226 299 55216205 102 943022078 129 167695261 991 751107881 552 193534409 784 948176786 229 768283477 472 818262659 739 518326961 219 381389187 639 549613474 108 419950342 100 414837746 923 745802872 850 378800547 186 696142156 716 621614567 839 149898124 48 868958750 657 732917158 438 400655613 916 961982832 918 365694811 984 52410553 834 104579032 561 948622942 963 178387864 427 869649812 84 831202187 667 103442719 534 268348422 741 636047585 355 31630768 46 27551617 642 330539840 239 386520500 687 827562692 400 190912574 904 387421149 169 77015287 282 241071529 912 612191618 678 866206165 528 685169657 880 671436785 627 975467267 733 771623155 31 360188152 372 183058487 685 817925885 158 535870695 469 826429583 554 578993559 493 15415644 106 549047414 4 713161445 387 199513792 974 339542044 637 49765787 583 204030972 989 240455365 245 764944329 776 182078673 290 388283409 46 861772725 480 494805005 809 324258408 85 150989301 182 383636498 567 359120522 905 338044559 771 202342341 701 687822847 208 148631243 342 405160962 195 801052215 863 595018122 525 357394990 729 157805757 753 377867094 554 571080355 673 793492358 940 641316124 977 211131515 290 959010815 468 714950729 559 516849751 488 689677198 705 961685027 162 302066750 543 738068635 695 371264679 803 237076970 731 257274209 206 973311065 564 408835122 593 628863967 916 687424565 481 265723169 77 618892219 238 13223400 238 126465141 549 689880294 942 466045459 126 871709482 798 206880451 881 808452219 21 88196963 77 414833495 352 80164899 240 872635809 95 672895992 209 860540062 946 579449453 670 787283652 445 958678159 756 990381820 193 601647926 887 683801586 699 32402770 803 86252822 72 836546527 398 601879356 962 392551788 144 708021986 957 661441638 145 920138691 470 804673716 525 391368877 441 820477973 874 827200571 749 950680060 205 454602962 91 960318748 405 252298 7 174520699 464 629454073 614 246210618 272 688505030 987 155682711 636 805546365 357 335697936 357 690057038 717 912002713 281 25808115 387 112682498 335 394096980 403 603328094 449 435935434 831 817199429 352 813084229 17 34533360 507 376619181 696 433683698 388 757739145 876 474694818 796 102821207 67 978562905 240 350926570 228 226745424 581 111580765 429 294424862 47 985590207 562 164287855 891 378546915 548 792366360 122 475097730 665 666007670 865 985627608 318 644713750 905 428442169 25 494690447 547 134751366 932 897543604 937 126615593 559 895884978 753 969314257 958 453853173 634 798222472 93 726942608 223 54614047 911 602463016 455 623255921 9 232819646 160 804962400 145 773592650 138 51039647 436 929298621 0 282086153 17 540062595 708 622509356 514 460345981 299 604105608 246 278238787 364 624156644 380 359056387 798 676140832 792 609586259 48 826741015 875 322715151 201 179094810 818 25439446 162 401227483 113 398463346 875 73647367 839 287429161 483 108350380 338 351282862 399 634215993 488 505070286 287 646091635 79 566393816 41 959508576 512 391903515 245 855025758 387 834308381 971 6214322 287 73316596 173 420736774 696 313332603 616 945424913 437 411239753 219 285306633 499 318569341 947 982288542 773 705459069 796 657208689 999 160426394 992 299365620 304 310863908 431 572574017 624 780324810 638 978706127 988 350495938 582 447663283 261 5419733 890 122967338 522 509447961 740 162116248 838 978074031 86 643279842 734 64242735 284 317882905 91 533093161 103 582704937 809 320866108 153 8648809 13 560642740 687 965046498 626 235300073 612 531112369 940 125009792 233 235310753 273 942031899 256 813324904 213 49712792 884 583883055 910 188207909 194 449814807 981 22661813 191 206994507 75 719363245 272 738537649 555 759155481 917 377350086 633 873088872 151 575346693 507 263029825 757 408670904 90 280621073 92 758446738 736 344854897 38 617557333 104 88924886 1000 489822320 568 400944395 679 73056873 896 486033781 968 347468608 515 596013730 845 930280554 417 981149729 569 80896720 933 201765947 231 610299451 793 956097291 423 283284047 459 927452897 772 565325744 902 474478957 417 959903593 119 748993836 259 423886399 823 656888406 105 598820979 911 219647719 844 759361908 827 817883407 690 17119420 687 726696373 15 273162435 538 904360357 993 627629639 740 96160306 71 673064608 816 642546644 625 57773384 434 309163328 174 885025375 112 35376109 177 717208172 908 716447449 364 160093066 30 508819841 647 916043122 60 4959399 825 62586652 97 649157627 89 238737536 825 657358522 988 107633951 900 53430616 475 402329815 327 100270546 759 102853456 224 635563161 139 976106594 89 642740211 366 243562787 521 48347762 178 213009077 218 815162211 982 675687188 928 154671006 993 100520458 891 67906083 521 160951056 537 622285512 625 387704486 988 281540883 843 77777610 667 980421113 697 661515779 637 701257971 553 249612889 972 53390504 997 364062959 719 949934673 799 301009583 788 415381184 416 400669274 803 669707961 403 254598862 115 732982191 749 514686076 834 838665595 776 217949401 838 444705241 463 8829545 464 748316039 691 934443703 238 651274269 342 27884822 840 596070250 490 205243693 359 386205181 635 737677029 610 307163218 795 586222680 671 318633182 981 641300928 226 410335511 103 727806112 123 803867038 732 369124917 969 538352916 903 373752246 528 89503084 277 816520305 3 639045701 74 194778189 106 60423827 603 698108785 237 169788007 479 88256057 515 375027215 387 508551971 147 547202635 144 271953602 931 580504516 255 60142071 203 459298469 136 455351602 621 934024428 492 749218174 457 392085815 676 573964211 546 640663350 810 915233964 422 764440750 594 457006899 290 67746421 707 405476884 901 557481016 570 965588667 841 86374583 387 590296557 154 74114133 512 32650405 906 44608296 212 40723218 945 132382518 390 839544575 389 661854956 806 795008392 645 914141914 843 678040110 277 583324934 539 653776244 92 837337460 632 325219359 960 974881631 235 775481689 923 860039121 670 200894421 974 859582395 507 231535359 407 706596451 172 262476900 804 889227190 295 889344160 714 473472420 791 883362329 3 684791747 962 161660184 812 725779702 453 808503615 682 511034030 841 995831974 729 487674583 601 450537609 314 51296165 150 688360962 401 801793999 325 650529862 869 384282806 631 699365944 347 282500421 850 177891657 373 525910505 553 987727440 491 500353188 443 85467161 401 338158920 580 986707430 411 750642687 278 91423356 708 626937616 152 173601727 600 742795190 104 87578129 51 300166135 696 208367776 196 512253605 408 66629937 480 724307338 423 610391628 754 955206506 345 858195513 743 378539936 971 870537712 115 574810238 621 48655098 835 224195124 740 357295563 971 495758961 837 730553226 711 716963224 797 134114140 966 111816061 461 49137945 211 644579159 489 889049263 365 384519720 559 959180535 181 179371148 259 192778595 982 171518459 437 812759641 241 450161613 48 277503695 0 407267025 363 33040151 351 814215589 27 635832967 567 91417853 69 180067816 704 30343591 542 897375370 259 140617958 5 707382816 832 456656421 726 612522336 341 938577418 631 817768648 899 406064925 337 551378109 413 745375297 27 758183313 403 882923011 11 812041673 798 621829460 20 211148882 578 976084511 343 628981958 213 177982660 209 771518201 958 554733268 122 385884694 562 329384773 475 415650031 251 487481778 409 56614931 685 350661109 466 695204608 74 848060213 319 57880134 167 213052634 718 678234630 845 263969121 618 173496358 934 108238571 579 705609720 964 766605739 173 360395914 438 514096013 84 7172345 406 41586113 736 433546356 49 205589306 200 219883878 880 582590404 202 334841886 31 514333081 69 522361669 13 750053334 523 641873234 75 106100089 386 502758330 726 26019988 378 659991140 141 345981678 603 34081638 293 753992561 473 240610046 556 369240926 30 835091961 786 309444295 444 329964454 650 218178769 662 904321148 28 576129123 656 112154406 360 419313467 343 174238974 240 858127412 463 528852517 34 134688267 756 390938879 988 301592083 79 126421481 789 941304678 370 906602299 347 582053690 630 829807491 669 268987195 880 318558619 260 282022914 121 136459283 134 991217009 77 937034532 870 692443661 901 340446179 612 624304975 972 810996715 599 157814895 855 466666112 929 148336983 437 802460162 504 277263196 694 658617057 697 662888880 42 412097898 485 739255046 405 685602232 637 956648164 680 635051149 663 159244702 872 178092647 212 969025784 772 879315189 5 745896098 718 546392382 196 519933730 149 672697387 514 828027220 112 641275580 782 318111855 881 93051273 793 922205154 713 342382702 745 975691089 691 65260998 156 444783508 268 221915216 346 929682197 814 823624034 529 449766676 577 44358240 340 260012311 236 14533399 615 587043631 973 659969663 78 925382124 208 839653164 422 427501196 653 729431407 539 609247273 714 844665991 596 880072718 573 936393203 915 65486349 859 536029645 877 272617106 123 245231432 514 572402982 379 378958542 547 549795455 422 647000328 768 318146839 195 288641700 849 657717161 297 512867546 915 767109221 815 257089563 438 815777521 809 353368057 338 53919919 280 254637879 3 225861784 460 978713279 868 795295248 182 421361754 895 718870790 814 835644072 706 621156643 329 548374481 166 833643386 354 87548037 852 657849858 764 574233578 899 468341026 46 692470030 466 966006382 17 242660025 114 463753965 646 598024093 241 812628441 133 50037292 617 443150806 999 845183300 267 261349627 871 301803969 61 400919816 865 131521456 680 746521345 395 146947905 532 164806439 450 799794748 251 134456564 771 646039475 957 551382298 404 424908555 254 290505942 10 809016440 891 710740880 655 704039417 685 786345535 880 657517516 669 220841277 566 984454200 350 808525353 996 217685917 492 226684232 544 21051084 861 196532763 886 230367267 932 258396982 402 724453714 239 927966830 965 865006578 421 232113014 348 91329345 166 743669581 46 945976228 216 819250394 439 810282744 717 560027335 483 202366321 349 494714635 955 859331146 36 353376709 60 571112547 250 175219903 582 399970827 127 590826867 301 601228961 819 328833005 622 213754780 497 366224671 690 135779874 74 122514340 386 96554178 235 487573190 659 377437351 564 417074041 445 845662343 530 643484084 48 4926641 987 850194093 815 145317262 383 710271383 19 957337722 476 699811303 324 758722561 264 251413927 28 994680069 342 872077505 861 312612891 516 532354331 70 57370365 322 893372881 79 888875453 757 372378774 863 803084853 188 972248857 312 663168475 541 787219069 425 457650991 124 457647443 819 862324285 478 300760005 974 828930343 301 836846504 216 744758485 865 753775710 34 55664393 530 341920 582 683726204 410 244324883 295 107279461 856 367992683 831 900494234 827 281338558 437 112397513 873 523986176 258 531806001 524 275942912 284 189861857 9 906569457 635 223620747 418 925035704 635 773062714 270 218756772 442 679039961 928 583873654 18 18655828 637 48977583 842 850089005 855 312827576 247 192017585 79 828939752 933 84366914 52 908756180 127 192621190 348 568431841 576 405769082 851 538199915 713 401488939 250 976992447 474 613739568 351 421951222 86 468328210 333 971058386 313 576673108 330 297226790 41 176028616 769 235179319 316 296016437 186 58874302 211 772922836 289 347924013 310 703657008 525 751755760 829 166736265 801 274829183 822 955191209 814 255788720 359 281502391 619 750797025 434 125918499 520 720635955 220 871601990 193 149289975 348 462868217 622 81275111 201 503866144 552 999899309 392 424641365 223 968107536 872 93188825 686 614212874 771 720682609 414 443322854 66 110368619 607 929334042 921 1662506 591 709965439 951 529312429 574 713197918 1 178601613 531 547831882 850 472969047 63 914948016 130 830063492 786 646103976 631 264432051 984 246012098 567 661055221 282 563833621 657 134161412 211 79433881 939 104877852 539 691516500 203 663174075 64 77975000 677 925663684 440 654172822 356 270855123 371 512975854 845 796275513 785 587940803 533 940168506 422 71469905 30 867611480 776 315579759 421 813071757 985 500846726 789 282739594 717 244390300 637 652357883 330 88798448 296 225604995 960 185782276 57 176998784 986 310922633 594 569886942 246 528711149 526 784646124 628 808964449 338 259078366 675 112000356 221 965964410 562 673507186 181 192801117 351 870901532 666 807611200 643 402123465 398 418046748 656 413578345 377 206401205 994 116173393 947 562933665 902 249089598 385 871932054 890 751808596 564 908827945 667 975372240 280 147773967 259 669764080 583 987897420 468 955453870 91 957047919 494 922148956 573 304418107 583 935709272 688 527668447 94 594038036 325 470744220 659 314446300 155 261476086 650 102398208 800 347884116 711 347246308 454 733069225 645 528866149 160 709159136 703 32672599 649 882629564 553 605233412 619 291827209 798 973023396 448 880763825 404 693313037 397 54309151 801 546709193 91 456400054 111 170186774 296 94644015 330 943528613 203 521765143 913 462607983 95 635354056 615 490817787 964 964661454 418 905586530 290 570169850 16 73118557 19 33833322 979 410260354 691 93679022 393 51446802 94 567110681 834 365806609 73 542954983 71 69005830 307 415915639 120 573741890 846 39500548 841 158252097 586 436349568 148 381234436 404 492731860 845 619445295 380 704909465 231 777445962 863 618772901 315 95572496 619 739309499 69 243290969 521 944606820 968 978363463 872 867452324 596 885723160 855 857936052 987 842071097 881 600911519 267 420319080 90 549412336 312 928588704 748 370259497 181 307208280 503 220740690 385 840999474 253 864296718 600 491697279 717 284492142 959 403220014 682 818484622 688 563327484 156 900486119 913 746266822 791 419478625 479 466367450 755 555014476 97 69180922 369 840000988 471 978890843 804 406207398 267 427467985 146 665641032 631 338207712 858 423349266 172 881331838 301 40454596 838 40083049 879 6429388 817 546961347 983 540937628 553 355247664 968 639981219 684 871506449 624 257420062 316 358892042 379 308635039 660 916022446 292 345040819 592 759837916 378 581908330 399 188700766 182 229351070 142 99455351 194 548427687 148 840494229 25 733586316 871 443241892 683 278581181 559 454094913 835 408768504 393 63779587 623 134375530 501 140413492 615 935832234 65 260522298 965 241316917 751 804643653 181 194957286 265 530044822 383 330732568 338 405983736 919 344094556 136 546096675 111 80640504 326 932126680 731 97840389 228 549108737 515 145298695 846 702172518 738 18875471 876 607320708 495 553195618 537 686245646 605 33892015 939 767413069 415 207870515 967 824201847 318 535185137 926 161526821 347 588915640 865 61131739 44 346633860 893 540001164 472 368610166 715 212439134 378 755371170 875 692664296 785 292910894 882 666645071 53 670514206 999 921604023 824 858023249 281 30493440 310 316469176 357 849511815 295 311400791 573 131637949 5 577278629 237 336548804 269 831048483 255 817698004 572 131171564 458 231102919 470 603262496 769 179185084 868 576144519 82 586709082 341 613517338 371 845911062 670 133038932 700 304922899 763 368186622 347 859834794 708 424150033 133 349779017 783 979167855 57 918536654 349 677879515 468 117500977 552 845100011 390 130775907 376 128677982 105 881142839 594 129644083 842 834833284 684 516690207 730 343448874 831 250855639 568 905140693 690 251549779 392 722140328 619 292306329 848 863898275 220 597178720 135 983255289 757 524413270 451 381704604 826 394994904 906 27986505 739 942872682 610 569219209 804 440463851 789 383532873 741 942464554 341 808094866 803 397553022 290 932936517 599 276875820 820 922862640 96 504630986 543 280831485 562 993707566 338 810321574 278 50525036 731 322452130 2 385036800 746 591503616 918 74585723 72 759811966 211 858367925 820 49541302 940 843427053 749 241349181 981 611485431 271 653887442 126 154711238 382 87968728 891 894087661 821 59014334 841 483894710 824 434757280 956 387418982 22 989465525 371 449662208 884 705879227 689 271720427 876 313706334 248 705192926 932 994962686 859 963946710 940 249933762 732 83924512 266 590977829 652 281794946 981 826870398 566 974459333 193 741941098 698 140052736 320 35171359 760 691512014 573 298135752 739 536742813 488 107260881 82 304553890 234 900032011 597 337839985 600 504817860 646 893219787 112 893385399 761 69706169 393 477057508 921 891599511 925 914057296 461 612822112 622 954773407 393 855286643 9 753713810 845 888170752 227 309644887 866 938315684 591 16519030 473 996203816 157 79571268 445 261011987 580 82818487 205 111808068 249 796628646 292 515164087 389 51685242 457 814094400 743 331554533 295 397413106 794 304512548 349 861430679 564 549072787 397 857859514 110 729693280 338 744640505 921 786121162 856 714673321 356 963819731 888 358239826 374 13079589 632 108927725 460 219161008 37 279140573 136 992477203 468 299273371 362 356628952 601 762115968 385 198568438 720 398190935 571 930252077 136 973006677 157 376008946 319 810803085 576 732453744 189 881688881 988 952409589 268 346226879 223 675219004 976 961607495 181 229368125 195 676857688 95 82910609 354 721285095 860 397284091 887 923231891 893 44885022 936 671746595 278 340202899 815 318077226 923 209876690 87 130792910 316 353941339 314 143995843 319 107516842 97 410287303 613 614437682 241 55771547 752 422035026 335 249561828 106 724490166 201 539589927 916 572446235 315 533980075 409 351874642 678 232159286 321 245902549 379 467596563 610 75351552 199 484268284 826 655095067 465 825624674 777 10976264 787 93773629 72 833990122 445 599218791 728 598908159 459 255114123 115 87005648 420 664263783 517 964419727 278 561264815 305 12322491 351 393292882 329 475929408 909 886723303 925 403740012 206 422288967 736 563056327 432 764005979 867 904577800 831 794503950 198 153505053 325 586250886 805 820997030 117 521907020 33 979366939 579 280141511 571 613155752 212 900550157 337 644485062 601 274283419 983 361167966 95 262206661 898 435932012 593 153782447 133 541796159 918 860746905 899 420160734 343 995851882 168 684344277 509 39902405 34 831698481 478 994533408 316 494400733 853 522873595 132 58724005 919 257110892 605 160513935 561 898447766 639 95867153 88 362023013 541 685832 722 722060345 974 501524455 631 22396743 934 941389382 384 722576631 482 436031543 812 666209471 1 471998753 439 522222444 384 204750470 817 768269827 299 183517219 180 541344192 925 862417937 515 145227874 717 689188432 69 559417198 540 989328510 814 240448738 760 972985219 914 356946815 7 38944899 88 864513625 68 954838549 72 144023494 847 816636896 260 342926151 462 699555175 666 453054399 849 571328768 768 680720442 199 262253697 413 290157409 589 912624226 233 626721781 394 765525537 303 495052409 579 311503835 973 281431479 934 412617549 252 687697924 892 935018684 645 840746692 293 914393502 413 267449139 278 206962437 960 790857138 774 451253742 870 370411562 165 835940980 776 385445528 342 925695445 417 167846029 937 585137685 815 359164257 742 592325257 728 225720536 515 440884685 400 202627367 281 318781948 926 295978243 729 24237971 873 474573828 605 745103822 380 295079336 300 24590120 851 723613521 910 16581777 763 935398244 964 928486774 996 863938315 93 938548854 433 330099872 299 927331701 927 777092143 208 986225906 581 916452223 673 553761378 215 825890004 691 979800025 345 789845208 993 96795966 572 804698486 118 811182795 322 146367761 924 168507105 192 368391959 148 530046979 39 57375808 618 447489338 503 660697739 650 673075004 156 120996501 173 703605925 499 550274139 693 868967083 71 237879603 326 8722119 471 337938359 710 441722003 280 945534558 824 131280470 437 213927304 702 937737945 920 198416894 935 480445623 490 974974607 910 532343951 906 835373027 164 645530387 42 708201402 333 298347665 444 361370193 775 503322133 144 628778089 701 809306532 522 630810062 721 509296151 691 320184675 411 264364675 835 196246424 395 833883380 357 251255286 698 834450789 785 867078342 797 646415152 145 513681307 724 430552229 274 25749268 802 961472382 422 78542100 28 610260809 458 939214978 164 104772973 199 704023719 530 317979924 695 605077185 213 880486145 415 147417962 949 715305707 84 70773449 143 623097017 285 942708051 357 884173369 275 44710433 766 248927634 489 304117792 859 436050550 534 275716127 677 728195498 681 304427658 377 577303084 647 45165778 553 88518277 962 589120303 273 165924652 127 595332725 88 520660298 835 93751237 707 792148656 66 742480079 421 228437804 769 3799738 462 478523272 847 61165220 172 171705567 226 777759748 525 858633358 451 276254116 102 563348652 203 569038887 232 954770354 585 104565407 502 49554823 246 858385815 170 787778870 56 237597214 357 595082360 296 198224019 587 829446147 172 316170912 461 284250002 359 339895748 95 506996258 21 183917641 449 317433373 691 898582785 556 371411671 911 803307026 241 288753967 244 343475924 649 166163693 220 53064904 859 855171692 613 195364128 634 349926795 582 46493599 932 918548133 921 187795687 593 949762613 817 870640197 509 432394830 133 894009800 996 36995493 489 969984788 879 894650455 952 566152285 121 239687954 721 835862116 497 748334834 676 340744908 112 944405301 826 583598330 232 6378679 631 674856340 678 699310626 488 254734220 460 99403093 719 37021887 205 778856930 384 555222980 504 971622153 645 615243044 829 378541399 86 627984405 590 252150870 491 405514141 767 413964163 525 611549495 723 768635930 12 313882280 30 724904647 858 847709528 302 17173873 862 150141471 882 62128859 726 1419777 291 832002346 808 686522197 444 544688950 293 495232492 851 696803441 238 738764448 909 315567022 808 145260673 473 517628212 695 33636071 61 778639840 143 230042388 941 151167712 115 919603319 483 514876840 804 437276481 462 592781790 594 774238853 371 38111995 984 426024679 99 385573839 151 681561251 443 406392159 971 126303747 555 600526627 474 773272335 610 687509874 394 687385758 985 357228664 813 604897018 851 201213719 751 905918899 152 539562560 726 394463014 549 10405032 15 597833578 123 556240781 574 604117373 884 427367959 146 812130068 487 884155661 906 655926422 209 831964280 5 538168617 792 116322738 829 288111084 519 888489013 332 38849335 810 693491872 11 641532974 89 580963607 140 349212763 976 705453328 256 574531628 694 166424481 921 59564376 299 860864956 154 666113869 790 448206156 52 821943196 600 359315206 284 605215129 937 424868926 421 334641647 348 212029012 118 247941431 990 87589828 890 731733126 427 843431920 250 545371126 500 500846634 906 424523280 8 466934484 89 171472210 447 649171548 538 903730366 383 139642321 778 333241372 262 904289219 777 188977710 236 265687875 395 704017915 756 33196661 928 137985434 826 954596806 252 271921264 516 757896203 499 686215696 180 12195575 634 44959621 805 857027601 655 767371159 479 488892984 745 923948289 379 611601584 921 275533904 601 643862934 484 176288362 980 411575201 180 25830227 252 864444377 931 291895676 958 416026610 749 40504120 767 586962175 465 738406929 784 451705267 316 490383411 211 568581238 263 725282181 214 956199311 205 820491236 4 910380465 135 182681133 593 933172880 724 482773644 816 431902729 155 238358644 279 441338767 768 968656359 227 352736859 830 304734496 76 833053401 786 728806577 407 114571921 156 916774156 854 278025424 966 629300917 242 593660457 865 977345275 133 845644444 476 868037820 601 211149626 715 81788988 876 61470223 429 956218283 804 235289126 48 581599928 568 984509598 849 329353624 263 583154956 959 250721644 443 428397259 4 150084712 545 483861345 65 234060012 450 350337808 626 690259011 761 905812894 321 389629310 645 906446991 550 704952839 364 194395976 454 725508937 305 465768987 393 787138289 476 595746111 32 809069209 552 184129879 900 990812748 348 694095592 888 170033535 811 543180859 563 579705751 538 348429038 314 96011482 636 407104750 398 536589452 805 242676201 686 725902647 972 138050150 300 964954332 39 723899733 250 781895951 679 44157469 961 129000405 38 192593482 142 497431905 387 272800218 133 521955410 255 817086007 295 751554773 301 315368135 64 702933644 906 243716401 131 82075763 682 778458556 321 44084120 119 12174167 68 593157664 223 502905128 144 869081557 669 285415527 752 903878457 917 696305660 836 598690927 590 304436476 10 952888929 57 762401732 25 650246989 543 54044799 199 810268933 568 989935890 615 16989258 580 208534310 769 747907264 306 102548744 752 422511669 738 20434184 345 935315807 28 345181973 913 6035425 860 186233972 188 219114521 1 146603398 528 886117744 893 462207001 642 429815154 545 429958027 925 302109982 751 548068615 13 896722654 279 444311503 947 406336220 509 511506675 122 376974480 958 159354052 745 616475908 679 674176758 556 461421391 306 231435439 626 53749044 727 847194170 729 756243533 256 694332221 683 791266095 974 727579950 55 841034405 0 234340640 225 722983328 991 712196942 745 464799963 43 379699244 814 903773308 635 787819732 521 98334403 68 766669284 547 938737200 261 921248804 472 99992605 314 303881980 384 305445193 86 849632862 606 492552778 343 569330844 402 75374576 162 799070913 995 481946108 472 623165792 760 610797569 570 740471298 404 208173132 398 357903313 580 446586902 959 824864120 157 755936745 782 285731243 7 246475602 230 808023173 960 300013784 539 267026726 841 966663744 789 502447305 893 622285005 409 774263144 740 251119759 729 725133082 591 793043707 253 538017875 334 884671666 961 11821525 791 311951339 703 768595611 919 454186616 808 826527486 749 431690962 690 733939461 92 956091376 687 804185674 277 444542368 384 311428419 383 114571873 32 503108862 527 679566236 713 385022796 514 812137127 328 17932582 786 77497262 626 304333173 114 335266885 506 930685728 732 195236726 493 543638932 138 465938338 356 791250592 680 813540245 198 877167315 262 454827949 472 386380544 823 121468597 504 262840000 674 519753977 669 453532049 77 687322153 274 161944832 657 26340486 970 387617659 467 498080132 651 191106058 450 856242642 884 572978147 699 24485220 445 125298129 208 302286235 61 495294689 200 587664738 999 309303080 440 374874579 283 342943151 918 89792378 654 966396990 332 885113777 51 652049918 193 976953362 810 599031254 404 785325834 825 953963318 427 366393297 293 463119361 907 581802041 291 321335386 352 206188089 330 724378189 845 18791230 870 358696727 318 757586177 257 342294657 416 729053461 775 488991892 110 883536749 732 370492529 597 876778111 964 728955926 337 104756177 895 424539222 63 616066927 675 938639240 483 34617746 937 407710880 538 412413498 67 960099246 731 751367569 573 431153291 406 852935830 176 25140367 701 975064730 404 782513679 500 546512539 647 558220615 118 314779514 775 830959318 190 353332494 714 117325530 685 766991848 351 636727579 363 36997277 726 130032852 497 161461937 133 382009911 915 272003221 629 620559758 645 735023215 19 748724807 341 122749266 460 335884687 697 413097287 100 684802637 15 752267810 412 993692522 560 574760809 742 917389468 730 257838438 249 457042616 136 655684151 11 530094716 250 599481536 716 283924643 691 426371291 166 339874147 335 775150092 567 530227748 408 713125676 515 616889283 125 935851160 312 667986423 234 106229049 856 977133515 582 462929902 347 418824968 379 984750266 66 814018136 423 442338274 950 27919954 63 387500995 759 281165714 292 613550161 481 619484299 880 664050041 283 504656656 809 876176194 419 462367067 348 688354010 647 660159279 318 13240978 404 363436744 670 896476843 125 939544474 170 464875320 596 705917970 367 960248204 929 79348961 432 582858557 802 982037573 980 23070918 539 417676197 769 70974691 614 853427443 159 154180312 626 304948556 26 332002413 418 290240678 597 262083257 896 304476416 893 516831941 876 43909955 949 112481755 159 893844931 166 274330812 28 41592769 202 633556668 806 343216915 631 376020844 426 478748592 343 212164494 778 379478661 919 383432448 55 642102445 919 65484116 169 222935527 639 78343866 524 947735574 731 408321063 78 456134364 439 679865770 355 487984134 357 807141337 355 881034481 752 216591875 590 76436094 481 707912987 500 767843921 397 989840546 200 191424742 450 545621606 887 215198940 373 186336053 208 618905969 501 54087001 672 485732656 240 392123087 670 183608696 494 730236189 673 275866129 743 542892267 978 178756714 391 919781312 401 360228291 141 73414905 761 888169215 806 137555687 806 578527889 364 358365151 266 188531088 377 671642889 863 609182931 164 812761122 490 993426778 753 255653481 141 119204823 889 962531176 305 454844439 209 551764507 922 708402252 773 527283926 510 945689601 787 223025801 14 61160195 192 938563194 305 17256887 855 285303556 966 552603034 258 390091631 364 280438398 352 503106956 240 480017775 421 715230437 859 914908301 361 917231413 2 754804775 294 376860711 719 652588791 37 263872944 79 529512590 102 266892694 618 762791389 907 890494116 886 691296722 741 884956400 85 149100548 215 328030741 970 621071980 785 453196147 594 775513347 631 98784312 704 462918666 834 990000314 565 532587146 560 897080637 731 753249449 824 240320465 250 246899032 303 869306520 373 525980735 971 428724440 237 550221535 123 236333240 955 912383564 738 595155096 300 33661677 826 213796967 878 683821187 589 940742160 191 149057189 135 417585158 40 352032667 915 6103981 323 538012658 756 91436009 858 523328346 978 401765500 881 766157570 323 274127807 164 552981807 930 967036980 501 196482325 545 539234124 555 75812667 464 50017870 501 563041327 387 339512607 390 730268913 94 757024699 391 566844496 922 576475874 39 870107461 981 396456911 488 258542665 458 292026102 250 356405008 257 39011445 746 788651021 467 143284367 503 232126411 406 212410073 805 703398440 248 218094809 463 528606487 578 802194965 608 81950293 487 893816480 170 395877349 456 975207913 843 415989691 913 157713051 640 450390514 468 669107270 780 111433281 961 758630202 303 678001023 571 23656029 838 404509238 998 362720915 737 511597956 248 893114689 917 103154500 755 691922290 17 256931151 126 881420753 348 976980712 411 53048760 983 549492674 974 924529053 948 43329162 23 615470888 71 11541432 582 789076956 203 397981668 110 777703968 31 871276602 488 129069377 454 419085256 105 796443382 799 1798064 257 202113847 320 501874210 84 889688358 739 448836374 351 215819912 649 740316019 672 541923613 671 847879324 618 96073988 741 393485642 584 715640725 327 738544618 238 793825360 204 437030620 938 493064276 541 500603541 657 759396584 125 542606670 439 528847376 460 174512511 520 623911632 466 623020744 742 142469981 46 360156697 478 205117042 305 201661240 439 472656451 469 548566571 956 619063436 761 605777746 944 427302693 660 997646448 585 395351720 448 137526966 424 220606105 446 58498099 185 348151222 48 641845582 31 982155494 381 419085386 679 839897795 267 1925087 922 780889293 823 828882055 305 624250560 114 113563411 496 809028482 934 415074690 138 432378577 162 914813884 837 413651727 803 32318977 65 86582285 803 993829297 863 106706986 642 457887337 163 143094709 304 821578382 364 43281649 124 757882975 429 2757834 14 869096765 697 948409599 631 608060163 253 204535295 990 923310861 776 881164696 208 810355587 771 917585291 405 947873482 535 242203351 168 372809460 378 789148706 102 214324134 492 103524808 496 108806602 877 911504624 676 285444718 252 638874336 493 536395741 994 407871148 131 812107352 822 766755792 688 344807617 880 975026697 105 634492087 553 815457606 918 955108420 86 59685486 113 383344157 120 890204575 341 170618851 739 882791065 351 758073443 835 464842172 72 122584466 795 132674964 318 536670889 280 984775689 180 163025112 639 970182338 898 649145387 165 132296306 517 841831981 140 894630882 419 986114580 379 445485259 104 285596583 502 489139359 211 327550646 234 430141091 489 621889273 82 373853581 783 309176967 334 105175449 853 144803651 588 552444301 191 960794432 937 231289563 923 587063641 323 891681979 659 108826630 355 203527437 202 840130372 281 577369044 705 140870579 664 340768039 744 723190981 140 937505303 25 963518916 828 682653497 290 406984743 577 36118110 440 816923238 499 531197398 570 576255934 642 215576985 394 698220135 341 502327875 168 460350904 438 810612411 458 925983904 808 797138267 829 13927475 585 335587408 246 730738323 971 853481153 533 827753080 830 204539077 111 327444435 415 850369114 86 244025007 685 103445416 177 979243791 634 180354210 976 148410644 40 193700444 483 896871628 924 696889380 164 365900261 304 476567583 787 935210211 736 652637051 277 940665715 312 606173685 621 745585405 986 587840073 413 551357596 758 162364209 166 355632550 793 46147312 401 824520712 876 406703183 768 927011430 448 242868473 153 54952128 45 452974875 713 29192968 717 325536952 429 913849608 679 72805742 889 405418025 909 918652615 94 398047284 705 280977932 624 841956639 77 448398936 91 209359952 986 42946043 449 257354859 274 690363290 113 116429821 586 295132957 27 816032234 909 910966225 852 531519993 393 9075017 773 871015111 559 614159227 157 133770262 614 78209723 54 365168247 389 155313273 399 624574845 903 423660218 905 884211290 346 83450213 408 257706405 300 211177232 890 530275727 409 585107158 35 836005339 843 232283813 393 183130586 330 481371457 156 513422619 925 23135213 657 71285077 341 15070182 508 763591638 123 789304510 549 532801318 617 911147564 878 170227212 629 853989754 5 692690980 790 435475183 472 418307181 396 709771048 701 617186164 289 33087865 679 47163733 520 190665172 902 160329267 62 17307574 925 35987888 474 219261931 755 356676944 914 439900340 540 922112458 550 467587722 39 52383755 805 31247862 629 856850242 200 899148249 484 451950981 103 389934513 186 6580550 846 952677323 726 233595047 692 661145138 476 40357579 435 764716140 670 361566054 761 162955079 321 875613907 613 471257093 610 176459454 355 480352883 350 385781853 208 173899564 291 750087908 885 735130001 265 345530690 11 118973648 535 418528165 515 186972442 363 217902405 123 600850509 88 543431504 267 601219895 431 621696106 692 449939987 216 823789615 784 963904730 252 25267249 77 781913024 442 687408523 983 653763243 857 400707778 792 37244410 103 50575325 234 924715230 995 197424356 642 403568689 133 595494632 817 269565597 238 721374750 627 431871250 897 865296416 948 666340571 764 258287683 522 51317221 892 848939699 696 344031209 65 956513064 922 246747004 462 394190746 266 489186031 413 131403760 867 717035188 33 365367965 659 511132385 437 297579782 567 724876437 388 861694148 838 865083250 87 342704796 298 23329007 366 989400297 333 300386343 82 925592807 404 369753351 1 522239092 69 405428465 754 325203448 938 315087507 314 994903962 188 441411828 899 556537007 829 688697383 208 576021947 315 647954880 938 305419175 938 399418884 442 753320449 625 203081574 441 709019343 545 715529661 220 660838076 839 530960228 423 284903580 820 572124503 978 470006671 915 856222717 201 269431989 654 639073998 540 726553435 833 388096696 134 77857603 521 883048760 831 126802276 4 606696396 836 175811215 441 404126202 6 901946862 520 570184416 239 946420042 382 702863792 468 300657461 693 228493873 911 937207363 33 319886457 572 408882316 745 67264517 993 78012627 584 822908578 99 789688683 611 905895874 962 312708198 794 980783513 12 865730426 268 576413298 396 85034414 340 687957100 591 772090528 423 537524985 515 94403011 780 804697618 668 716463364 836 404629953 405 385182509 293 469040381 96 255508818 17 872061706 663 279824527 475 585353901 706 213666982 714 195375451 983 638125704 209 874541686 709 158725327 759 762617563 70 430063189 433 49131983 2 699677043 424 417011173 647 799941833 754 32805834 586 73040830 570 876439679 552 280846410 973 503792764 212 239056385 831 216423500 13 334353547 9 559437805 396 320529320 837 757115489 744 125027334 907 803713734 576 127053197 820 801231043 707 934919669 814 64828548 825 624033402 85 82364020 832 205485752 2 666716868 168 305305910 572 245158422 903 48939959 450 446357222 755 635925885 396 312260253 312 912447717 463 378877471 593 710911673 133 830372874 826 639420028 959 72881201 35 620394627 713 704890492 460 63959440 746 964522269 881 42908736 321 292087116 254 432523242 950 529020123 790 318271338 822 294918490 718 162387748 448 160077608 282 625710168 789 86119399 130 302586934 321 284987848 452 447279736 294 989848702 842 176020750 893 509193110 904 532632846 986 417981805 548 133313379 503 717358335 491 636064363 457 693397943 13 50077972 373 91629388 969 450019543 264 895658822 504 196363219 867 92875613 241 670987730 347 131247831 957 553215516 837 190478040 931 553417664 957 459932020 53 282661867 407 719932202 932 421228315 753 810115978 415 515391921 212 190821651 637 890602522 248 672314649 55 6208980 367 763039551 713 261150822 250 967556222 286 840541594 31 662736014 382 582778215 673 28557680 283 326768315 835 358153628 951 573473981 887 887676128 843 770177962 728 620244956 11 497702883 960 467413346 876 82516739 514 181092931 166 202815090 862 345382802 201 991010459 392 838641032 433 734240004 765 629725946 534 256407472 507 992045672 474 757161016 858 866564586 375 246640210 253 359231912 236 258539104 159 673945863 591 454035093 589 537127025 957 109444879 626 830047683 995 271038945 337 442566087 333 671993321 333 782549898 219 48802130 1 665249157 812 218089176 109 91965665 819 814644224 970 683783979 197 884848393 150 595129153 118 398068450 244 481877556 407 787272846 862 822505215 110 932252814 245 990209064 47 754450756 660 776204077 738 738194092 913 834467674 357 856735469 603 78142040 821 607065554 470 308691520 248 747317654 275 90329243 75 300665153 719 310608557 161 342838145 274 561075847 16 593634331 985 401582100 897 250363237 392 712999665 878 20699668 809 678847516 25 453401338 866 860482492 0 739908576 53 48296083 268 878886119 800 726552445 472 11110551 421 940321954 201 466016065 632 839372736 401 390535377 173 281807645 874 222416521 700 774742602 390 230441486 729 377723642 309 64101064 43 337012908 810 740455123 106 199205443 141 368409587 30 160030591 274 631606499 364 557438918 32 150593111 769 453629914 253 164871454 878 173289683 473 556387690 998 368063315 907 900134113 182 471262208 800 400694631 389 254516850 27 741916227 60 711517454 839 472110358 375 646625949 347 87915507 715 271967118 318 641722859 477 987057680 619 983078122 843 200314725 655 952207699 28 799780933 649 597080252 449 530824151 439 614184421 812 330580911 249 927202690 793 519835389 859 714415763 234 126014786 27 777870004 432 22507972 422 79522098 675 142486457 193 101484434 428 348545004 955 663898293 717 592657208 710 921501817 285 96195979 802 653798519 569 710111986 654 959018364 669 438129922 775 15534994 329 336597083 374 371766892 299 312586554 744 798210053 315 556255556 765 468848289 798 781941673 414 965442340 932 790382321 919 487717781 889 830639164 977 885101886 122 205868680 324 212405683 893 943804181 693 181724574 248 804179314 102 80899356 974 79722758 74 967639991 296 808393578 596 749946748 331 63178735 211 848589206 806 664202918 405 255536570 567 32035081 113 156815545 329 854935334 815 116765290 87 838601670 524 503551659 441 696986070 306 262171475 201 118508816 765 859153399 660 373616911 459 149756632 520 504605375 886 263847153 838 733754900 575 926945246 688 966752391 703 29044498 702 300125875 732 271176259 524 762001714 56 226917259 623 298217401 317 570399679 217 183530519 499 414133281 100 845760928 38 46843941 405 706089465 681 197383913 237 844053790 146 305401120 738 313282741 838 96971914 626 572721670 141 762209199 248 710720603 923 740398421 973 746748677 603 935333953 89 852925430 946 969109916 492 339616760 249 117126476 148 418054050 182 225257774 883 715611359 733 488480949 361 363577287 30 758955049 580 962023313 826 297346022 693 140264854 666 988528144 2 973001489 760 611060710 674 458466666 149 181281627 75 660173929 391 776381227 729 105557854 485 630188576 294 264859685 807 393686230 15 775749223 463 935256168 82 150811766 190 492150480 681 936621396 536 554399721 26 206124322 290 847938810 590 45515400 708 561689078 119 752107240 544 895745023 663 873893546 823 439582210 819 780923928 132 128243173 160 662651818 480 260032264 201 672383504 652 99763894 249 608404369 666 75683103 135 42478459 594 318991743 910 960702012 246 72467682 17 605536478 519 835626093 635 255660164 385 422264954 442 351906865 83 621715460 417 378971257 525 52949992 245 248750936 328 81122958 184 637350813 442 109753647 42 289633039 338 468152190 102 506927526 309 248061970 803 331153769 729 401532130 411 409150111 912 551786668 773 120077501 551 451181115 827 953775178 388 971083367 865 803087777 468 907756064 276 395401854 683 788466390 788 825868547 599 18394572 771 992753563 661 545540264 517 231551898 241 969316851 890 587974265 696 535661534 650 309978593 768 474021209 913 859291125 353 152853361 329 909945526 258 204099311 576 396077601 848 363234835 317 415033466 82 773594738 467 964854040 95 862544778 636 646894713 933 754456303 728 601573488 842 15559723 709 300950486 927 180649542 606 777901093 864 124273659 65 604174802 584 222011803 981 84010083 711 2518604 846 281799704 62 603895535 44 45534911 272 67821749 41 913728298 147 850152155 420 194056196 430 845472320 402 803641762 73 831932280 704 101714253 484 876109495 666 50486128 878 619961307 310 706277794 190 101941082 867 352164092 50 341843083 66 54196199 197 975254655 741 649867274 191 747253360 988 892165396 463 240196878 386 98909595 773 85606730 318 313480333 217 501007556 879 71134032 226 417366654 700 709411474 288 784656905 162 799825612 172 846938583 837 647296603 222 955406754 683 136794885 603 19811202 306 406556825 744 519505724 446 856260144 592 379907348 135 541418141 410 560543474 790 933107683 396 246098027 59 539151665 925 182665570 810 293018469 545 166449422 936 838283628 370 677492316 955 812973609 303 62005281 408 321161304 648 956891696 368 444228587 259 850015580 849 361164517 855 481809581 350 977203318 469 370444722 861 911634678 995 780637803 614 926935306 624 148935813 733 330239690 249 897838504 895 692988774 959 243635953 600 990679274 569 687882733 964 343235281 325 406256553 620 219552581 618 805406620 577 134650117 300 976678200 565 701132858 17 398529407 282 504594761 471 896732295 655 197366203 920 672062752 904 293866188 550 323270479 403 184001797 950 111924508 695 815488091 185 665703111 246 38018261 210 430234459 527 474974472 462 759545111 664 208362303 843 466023675 88 818837190 41 503329837 692 722889684 679 884422697 584 408919142 723 988199544 293 269655677 184 16730944 997 836899011 30 865953913 539 59120395 941 613968839 853 873728787 272 48523399 782 538939087 726 979990260 246 246659220 333 839364923 973 101354112 552 135771510 547 615978358 523 98213570 896 16500704 52 645706042 20 221416695 650 803288807 924 429792455 432 48685368 216 178806604 4 152655925 844 680129139 141 856857504 173 835792826 465 812402624 317 358603132 481 905643861 327 535469597 851 310356884 747 830877423 510 928850086 730 344499309 42 412774374 947 505942992 945 711342568 228 310005466 772 204703263 693 202366638 521 979147830 939 966826270 938 415908277 652 517686865 204 529744337 986 759553688 225 622980945 706 572210161 601 37082974 621 270241230 752 566446865 778 992117614 882 137284219 356 358328902 769 17058875 346 148850814 404 717507471 688 785708302 991 823968663 19 151765762 420 965551546 231 438786078 12 15820750 211 905285246 526 138929911 807 97002918 122 834602107 188 528710940 138 655417311 993 74090731 992 43486736 157 180949035 290 591559454 458 362103466 239 858359605 773 907217447 808 612215504 926 765342952 848 950649555 766 637805431 165 10482788 278 23412568 320 640724567 382 974836879 301 430898854 703 232372052 106 845695806 500 891942881 799 838974058 841 53700306 305 556237424 650 996485513 737 653912234 722 62612969 214 540192630 294 856529009 497 148453958 788 149504191 701 991054585 874 768163680 49 656328674 269 934298413 35 853086423 180 283063805 71 92278317 408 452893106 91 640558144 332 598310259 431 709452298 513 413229996 627 211019786 56 672906966 480 899072378 93 59740808 277 658278019 144 678360892 271 631291799 391 64427230 559 47496449 368 11518602 438 246565204 629 694231426 12 426829788 597 50171648 318 191102063 635 157140330 981 316956014 925 158586702 488 10686847 900 720375559 651 148515227 610 366616573 129 922891182 460 712351668 37 322501200 816 11555648 805 137272354 660 492314698 490 489071576 13 554341046 367 355647282 137 229793252 263 96274345 698 26502010 517 597316663 691 402812962 335 74032347 634 305889219 433 459960537 304 82457154 545 992718622 971 807101147 818 18554909 12 805795257 512 684523006 256 570686578 79 442456850 420 359037999 30 22128426 393 651672670 786 703263721 82 794052290 694 564515326 222 942913826 901 16905801 272 618248197 379 798989031 632 357885325 574 562774353 128 232839379 828 254021097 207 485518289 420 201920600 495 560927201 399 233560861 24 557965489 150 914955802 587 650734399 853 136605738 233 608103894 57 900453377 856 562676043 735 337262212 915 490745399 708 270043573 982 187505429 763 55385390 632 111473605 616 364073929 350 413216423 890 439319624 232 195884783 978 432076570 531 780015623 960 32708569 773 744630674 858 279472166 126 56375377 332 626762032 473 400078168 192 808459424 808 377225416 670 88557224 441 708897210 581 166259913 384 114489552 387 201685332 745 262788797 781 928333351 425 119704551 373 579494052 344 69573480 917 147536776 712 595767324 334 37712384 242 180415744 830 912870473 934 68749437 776 992143733 517 15430078 364 154342298 371 939740224 325 427871556 398 716277954 88 315152085 903 302371703 357 761793789 736 954224453 629 975522101 107 436008959 427 344813823 674 762028380 968 421713474 299 335251010 273 70494504 288 366754753 448 933403468 402 383639810 155 68736950 388 252054826 11 23659738 385 367475135 12 405385451 519 392816137 605 714526917 657 288531223 142 958584582 691 787820933 273 999261313 168 457156284 988 579949149 71 732867098 451 5386688 890 951321239 607 359623917 762 428551309 178 937926149 371 538982235 34 878097849 913 24952897 837 110974420 948 845768268 739 295900680 845 562080330 276 867775648 555 926424732 503 4591541 932 701865705 361 864628428 619 900625556 830 78677327 409 359923389 331 937716129 430 827013847 487 988767992 682 449993121 867 156486193 200 495068282 301 729289456 264 286820101 916 6340474 598 346355644 979 888059760 353 654036795 845 555986240 405 256523540 416 280752554 55 128336655 842 861400480 767 852814343 956 685445698 923 88640753 236 996092318 703 907246198 53 1015865 108 436556267 644 21900327 192 784073112 187 147366479 893 382682220 7 824297116 379 590635619 825 200160036 33 809209123 147 485539006 682 35601943 467 338908442 512 801882818 84 100241275 232 813264882 856 108060199 605 888777101 979 682311182 309 596725473 363 236027904 501 708526475 763 113830764 621 385840556 925 380564992 492 104837907 164 189688268 735 60384318 102 923008406 886 933575140 698 157224176 599 673024464 533 437893010 286 157802726 33 959741501 497 664619334 816 900937637 200 358055738 61 826490232 505 106583360 46 823139294 359 497531199 407 617332659 791 35969693 551 888437930 135 859034335 608 439079944 959 555148957 404 858036485 87 826049777 363 796922170 474 829901938 715 97659388 13 75172401 376 602295038 759 28226448 889 966981040 889 389622825 345 112186848 106 910899508 912 48277323 207 125728245 253 268240874 503 518530997 888 624914059 738 614281459 113 213995390 356 178755558 928 536252172 716 436641395 471 482848024 891 826762326 43 892860570 973 621426377 590 159465914 350 4806217 676 154225317 601 80978994 676 539479043 840 213974003 380 641951616 578 885625679 226 619191104 595 419991641 90 200682369 306 676851975 837 755511063 448 996121536 701 197054905 371 914060060 250 570001113 514 502309556 104 211720779 24 538367720 509 703228356 713 579434676 842 976749883 471 320580353 921 834429505 343 884781035 149 71990985 885 823834848 965 138317081 669 474970798 914 429252825 580 572332849 663 709640987 527 517503888 39 609526037 433 178702697 700 983529947 47 928658169 307 101231444 827 618029337 246 918643854 770 91179919 351 600878907 132 144807083 922 607239249 28 664028713 630 981825605 980 31586932 940 628565934 917 790049593 157 563353271 183 248846625 127 145868853 286 468337974 402 118823774 619 122884300 417 755730030 425 588528638 61 560363826 268 38519128 968 330665574 685 542069571 145 466062892 359 407669193 107 369336209 768 331968759 753 212240455 202 567317413 756 505535138 902 429666642 849 144359015 922 150692662 885 49102169 805 308511383 83 574217357 283 873788580 404 883796883 99 768709982 823 467011512 677 856023095 485 492544925 710 513615752 917 344390794 220 44436248 398 909815857 181 31081195 283 839950294 495 812194138 236 897564618 737 26489417 905 504081708 592 597667914 500 206294441 789 826657810 949 243968798 679 345311772 774 270533750 144 51403231 265 664359694 671 739435878 688 433577590 240 312045053 722 487293577 856 919623394 233 34241498 789 487078377 932 652310661 858 322179296 817 234092575 240 151739104 450 844987566 816 845081898 195 538592658 496 378373472 946 796905087 588 505924666 864 69118097 343 42223212 209 190348571 319 256211797 304 677909958 676 476156061 194 631373388 938 148955913 612 165319893 859 817393042 106 247233898 957 148074953 367 243112654 634 782704114 610 799674853 106 514781185 151 862052072 872 944313153 566 892113779 732 38865203 686 115722282 601 844725922 188 244841126 586 880922834 949 970311254 108 419080274 189 279656790 70 594665474 715 737060157 166 619579329 279 197728415 815 216341687 558 660856729 124 465825101 592 67874473 864 342963781 243 738815139 720 356788796 539 671989632 58 514029330 105 101700199 466 323858082 201 370840797 637 554654718 258 109384605 56 89504175 697 250245337 97 693799797 554 731130175 675 806961008 797 677059 132 300851926 114 526685409 468 396693260 2 504690240 603 87066991 369 943456035 331 8088264 340 708895056 548 436956691 56 295135213 223 881039773 497 372171054 982 988100297 54 750333066 812 935833788 649 797802747 307 989054571 226 442687448 165 59773177 193 620073574 143 299573434 602 152128920 556 40349355 343 396086368 9 29980255 739 299559458 592 614391730 563 401764729 607 970458858 220 258996071 626 292967561 799 764272337 290 138247007 521 945705371 298 211231657 751 166993643 925 724832594 169 478744552 25 132164082 36 125602462 967 229647118 49 389376777 403 312105661 621 644263346 830 353850779 452 340891609 221 611701460 994 28035586 568 414065888 984 616392270 273 564166801 363 119094959 747 597557763 506 574543192 789 701974572 133 109681743 778 600016024 464 349001376 396 491360777 559 109262587 424 715350253 419 656507195 378 518380780 306 550876372 560 597422856 987 757592344 118 728911030 124 347239411 596 544678860 592 898290818 719 345116849 699 607479040 122 209236319 219 892208879 29 914427640 292 48427417 975 61795501 213 686908100 785 209378216 868 664271322 701 772666454 436 902021679 221 337469637 876 782323543 765 163611824 630 596566973 634 31085620 594 557110377 767 511346543 594 929899464 929 226452935 200 557004051 1 447120659 373 397557742 220 716191958 800 106131103 941 820902002 836 989407703 520 862693570 450 404283222 193 249021099 789 801008407 175 710053005 748 492459006 981 580004971 189 696819108 570 917217758 483 79040459 400 994202657 333 919731051 623 514426792 585 763596812 454 75498116 770 849934709 499 20197097 568 978353576 201 790408161 907 780047436 929 697106533 426 562023948 349 637292543 617 787164077 402 111855894 691 371112071 775 135622676 992 831239613 227 68948883 921 969003097 153 507179478 369 737451221 828 289958014 952 321437631 595 244680683 775 183348527 697 397758602 37 832687279 848 916897790 333 442344736 632 74825674 63 294196052 855 142604684 603 948938352 595 265742983 415 872367613 744 174506478 582 580029357 109 658494120 556 971826114 356 105882643 388 391956870 684 312961318 392 528687286 214 382219327 1000 600699906 442 242382963 840 787595254 532 257874111 817 744237615 743 93587749 211 41306664 817 986971690 966 816252925 190 673860760 469 201312356 979 769883903 779 571515085 186 888206898 617 935798228 240 722902415 958 993204555 847 937210232 814 218435263 109 395361012 90 472200395 768 526299219 285 298126184 729 480969946 681 559098276 28 986121623 321 549298713 787 896601850 71 98340118 956 778364923 889 609169361 629 355294867 900 664569576 916 544674984 865 941381930 354 320687616 126 130306016 157 883205662 529 291198827 262 283108184 940 239261648 387 88192365 78 415483317 124 372923201 210 329465718 564 165724251 307 489070391 506 608765435 400 302143156 790 635121471 41 364704675 549 936735569 573 395714159 966 165118985 614 785056778 284 78778340 467 540422390 594 960427272 618 942324781 130 542386269 813 731384763 97 472279990 402 504623038 393 824569559 411 664283263 148 510579820 329 621257576 361 964771674 986 489743615 818 884709096 389 518293625 693 783996189 33 919562619 945 238675132 904 159048765 303 331894340 377 761690313 416 568146947 243 509772199 661 859313905 768 949995640 152 8195963 291 538693425 717 689331549 199 15691451 607 369895058 984 212450346 240 202655813 716 669742450 924 19933642 329 441767350 282 802935662 796 76326789 931 461069246 169 431262171 298 428406939 898 952665389 623 631639603 840 770132440 206 464806905 451 192653419 975 179508375 746 999725802 469 941001263 994 465900136 236 299088613 626 22751860 67 376218848 537 7371637 19 446980640 955 384773 122 269017029 649 729206823 576 762466000 537 185894400 309 677534101 598 794732096 813 952514731 17 2827277 112 8922431 806 900048640 649 315916417 38 638388144 465 970390276 468 147178179 687 507362580 567 292052602 945 593653699 798 526917681 345 724568013 272 456143386 210 212640046 516 324216694 930 200288400 426 757477521 512 261258374 864 764458656 814 314716388 120 144460734 264 556635395 379 282710735 439 261372616 858 242761467 332 795360452 634 223714135 608 721286253 343 635757713 616 108383599 601 261053247 306 487476602 277 10700759 323 806165558 605 350445705 7 710857987 367 583108789 733 615287328 271 254427286 45 814544534 399 912235069 658 277490574 284 593097727 480 625088716 468 642583786 944 473984155 1 946776809 631 456369994 676 168819733 833 350955796 313 825413342 832 277999768 537 690904853 376 61290745 158 330532853 966 316819118 7 975306189 625 805824229 372 79625992 143 348841214 158 112624331 108 303436781 666 659761104 121 376388195 781 812477003 949 93561704 513 219719746 335 386692317 608 900077361 794 104520437 699 423071067 108 587424303 875 274545568 591 236352409 739 706129284 565 557077453 652 147858753 513 994238806 625 252360726 665 431621783 549 508053174 602 884546191 537 707147476 224 704559755 659 560565215 426 605880883 41 86267935 670 328136834 853 137600029 612 232255935 513 332916794 880 378965473 998 687460810 197 422369438 628 466102144 682 101718958 891 794990513 859 982112678 680 235741544 173 252815171 636 378052003 987 48262603 29 681417482 351 375180930 287 271477595 235 127143877 767 428956205 280 819745063 530 208386912 212 689692684 748 687081709 780 287737302 771 119912883 224 891317521 342 555791809 358 333022342 890 68688412 256 955346217 47 618506437 184 439467647 655 142330998 46 449787407 259 449106218 723 303031455 138 42419783 302 160831928 934 890041150 420 490455971 228 279429165 648 15315593 638 800413393 642 357986691 230 499682058 538 461255435 717 659369218 618 687295683 59 929139375 655 873746405 564 666584657 982 182471597 880 378630242 244 197745216 35 243184116 952 251618025 957 27947176 136 301161918 989 102194892 266 478195632 792 808894375 760 38500614 557 941764410 77 484460583 178 517433880 824 585879998 506 857860974 629 914340536 622 737343212 414 29194547 398 650457793 827 758449991 464 331764011 550 370733935 354 41857735 802 469128399 917 905828989 795 159311669 134 660566255 215 456478103 783 214301851 22 760808330 368 52704173 750 59692234 610 45326951 786 355193003 471 242133810 212 438148764 130 764301290 9 186269931 506 332562156 801 848446436 643 337967264 480 287878277 639 976492736 35 501526147 408 583241068 42 228254430 716 493977650 755 793624770 105 948450650 129 833096718 672 90157778 683 512887409 513 296158752 894 595181208 577 995610118 486 157697961 895 227676928 364 620418984 637 396422900 612 599138446 648 945717086 456 442362121 441 52739130 927 124777443 927 741208310 912 569150727 3 199076476 732 807120524 613 23042800 169 176581045 714 31628967 64 508635372 794 555822918 745 482701918 37 827502607 844 872955357 415 68480057 233 692234036 97 6045431 765 845708146 807 448408936 973 836961639 278 47130099 591 427837328 557 739051217 724 516211678 817 301732418 996 568444302 713 84189466 491 95178905 837 637941327 288 468653321 827 508551565 872 786030236 360 465739813 794 939241631 803 376232171 317 996424567 19 257967943 823 717750297 119 713620825 238 139996352 621 847549440 978 314796857 420 162511096 788 494096591 798 869171462 138 530261668 249 643874727 96 908575117 743 28123291 833 928475034 668 228229960 377 231562704 726 649166861 529 169626413 209 428903063 580 252276781 778 448839426 652 217120607 981 435129157 818 664294976 430 392981405 522 8101602 34 700125158 518 382666447 177 347770437 810 40232080 611 224349540 873 185793750 453 908694359 252 859582557 6 424897747 805 730448813 668 986021089 532 693141046 86 784043320 459 210702982 56 49498778 708 331641770 576 252599251 987 575811618 96 34148354 244 908532437 596 366944035 893 356199242 340 222259399 936 51354041 8 820355201 924 308962155 275 842611325 861 470295766 873 260361194 724 455343535 290 602449013 54 665285081 570 548056222 990 952601520 737 806713344 55 610946308 110 975735100 779 318781491 480 757608477 641 409440866 507 411842466 588 164686665 455 244696880 84 956043940 230 145125082 906 210668644 601 663829560 938 30373348 574 888635498 313 121858160 644 85379792 791 684726279 386 586776775 354 286501664 729 677924125 798 389220217 671 275456530 114 452650815 79 397408930 825 347337607 980 830530174 854 29059803 571 634369751 49 977859103 581 92914672 144 176541608 423 848794421 545 997431759 298 405095590 695 802872153 492 593437662 675 966894217 222 452202786 961 617393045 818 182088386 673 217052910 391 500064564 159 389759751 578 452925746 958 627133907 645 369462931 302 896145877 718 97691096 970 155880237 620 935501475 334 294319328 23 828492203 374 622741706 902 47194231 791 244553660 506 285443184 763 914411043 892 355544434 867 565234867 919 297450270 781 97530882 977 724470184 66 412664845 155 954054670 24 787731478 911 430913412 964 431347386 145 852350758 411 533118447 121 467909794 330 55412682 727 544733595 631 364344018 994 269481155 247 490799168 960 533324220 54 355645765 644 733982416 845 691012627 607 360986851 470 137897136 773 910959057 352 524518548 455 942184688 696 378710928 885 697038330 397 442141778 646 960499115 747 764510903 315 13947485 494 17971064 505 295576327 641 997638237 105 700627462 393 888423705 586 888189585 268 702824540 836 792729119 854 198258930 608 42437020 909 289915007 810 729022587 102 152168985 583 42523839 173 771957645 562 261981176 946 497593896 657 758832215 758 152945305 766 32063538 900 777003760 684 236451519 925 707621614 14 89738523 175 564067760 568 246873939 802 689727711 518 946509135 712 391477824 759 662184977 168 777338884 726 309061977 926 134477394 11 226451817 930 492829285 333 901873419 939 916515263 860 480053621 117 823775869 624 90658843 416 648551847 187 961637169 660 185953159 822 102656757 266 371059300 668 529243559 321 481012106 818 667589161 210 659072 358 105262403 502 164681900 340 344806938 958 550035899 775 724367489 928 650670784 661 500958569 866 802828757 824 527078491 823 126674784 746 881318099 9 425024470 377 391254019 359 13202104 591 353350785 106 939212163 4 284092790 374 762619431 851 280292483 668 913396682 460 848493538 20 232897960 574 46118134 68 219180064 8 967653153 575 761278487 643 612859264 964 397340272 861 808451776 798 542827601 861 960715721 151 839798745 431 220596291 210 864514627 962 861398108 491 89150645 204 788427624 234 740636668 970 370041407 49 855876245 465 174107952 585 678765351 429 427318628 453 565614248 116 34334448 439 121569639 190 76590763 227 445608988 925 954912691 586 14827348 485 614804110 33 164953623 603 100940798 402 54121881 533 577703977 795 304353074 75 369024547 384 690929187 695 347339527 789 86419968 48 648187588 264 955575502 411 837923780 686 852856875 481 68882277 763 730160693 592 165522436 726 783820569 693 473680920 698 54715329 663 553166690 816 477527903 614 341334625 709 951007642 479 567929510 798 930765956 278 225773543 586 68582323 168 780820820 906 671644817 800 378680584 319 60560991 994 486468672 637 651809130 988 383332369 263 256347023 433 782419073 963 168540881 228 493492486 5 835433920 409 969660983 318 565576257 506 63689228 913 694645126 496 369932218 47 383723107 645 766063878 352 613472386 585 97767497 686 852517554 408 5082696 946 456669142 659 870758032 854 378614258 497 767974253 132 38035066 460 446884602 768 53715560 162 439539438 923 987153195 785 269195001 598 29099503 250 262866761 261 423728650 627 542389342 939 682544123 607 876717875 305 512134714 390 574128674 770 520560474 663 947439098 143 465415396 711 646947179 333 690044931 197 249922523 484 906893971 305 311896595 447 961862540 329 200457162 741 92037924 352 321536838 440 910831055 135 811416145 130 192343606 505 805675512 272 231343522 239 660136649 582 715504278 363 115433117 179 128436172 578 329362693 841 957672814 113 352263002 210 817504886 165 712504309 451 342193372 768 655829221 739 358110972 783 729288654 622 936304807 443 97997167 719 854686543 825 562302107 773 706501588 150 931625768 260 377823140 818 906697681 196 158599689 683 523126595 25 441743288 123 968738851 35 456095977 944 498054809 198 740269688 561 715965595 42 366159648 841 53583161 729 541778268 950 338126532 980 393989034 214 995246314 660 703772255 919 586622554 446 667877496 609 679836583 974 890901445 618 850055061 906 92996975 513 971966490 228 905048991 445 6969460 786 732902342 706 507997855 981 832016051 566 527279090 850 925446329 580 201045857 364 882236954 230 305951316 794 856474223 427 580083017 289 429663054 284 657298123 6 592206295 119 771373539 751 647894560 690 579118610 655 426071254 563 473774402 635 557694443 114 139385047 342 851252591 840 797171672 16 683765161 280 150862888 614 741120583 530 380390091 638 345607246 845 944332663 383 734880854 97 907129191 900 437614326 211 680464887 537 264634167 818 818582577 362 40493945 575 22873243 186 408696784 454 73990621 285 492548811 320 579573331 99 36831558 709 895660770 63 645475663 277 307142261 902 851244518 909 209616572 22 628624156 419 736307849 953 678921503 753 516485293 995 819496727 638 815980029 370 942390119 886 389993430 827 565294821 284 244780498 289 320303448 597 178273927 920 260692453 68 879209445 768 904736670 166 337185727 528 72243503 410 77418804 787 293576169 616 373164598 689 132326668 850 491314301 741 7851630 823 825556174 431 796488152 511 18713891 215 317098424 222 938878900 200 197025929 918 873105541 940 718592139 962 659469988 278 781993196 811 372486130 41 204575137 974 759881500 361 390460172 13 228024481 538 433655449 532 75580263 990 58586691 602 412057786 698 199406942 463 604801550 267 549261099 732 644558213 6 859700104 256 443449746 529 428887134 201 173851216 344 533573833 264 686359111 945 890764336 262 676503441 676 645209007 271 202356497 812 242754161 187 566566654 943 294662063 381 16327724 989 382664389 368 677597101 606 376768211 851 527755640 888 902196677 782 645860770 690 121126311 246 565668657 98 253298780 72 142474176 720 642625363 368 37252450 972 916317805 598 910214645 117 638975527 401 879569947 915 754796262 837 811973751 844 169779337 746 331164647 465 949513768 12 306036087 806 174792850 481 636151006 447 674477895 309 733804329 711 596135639 447 398204579 974 900377663 256 218494637 964 981229343 710 17387800 857 503226174 531 672862624 429 699965748 968 594057308 697 926534560 714 247489749 959 547223507 510 693998755 590 377749217 636 817277449 641 367668433 856 219599675 795 996952927 786 42601641 251 326064004 979 464638734 446 80482703 902 694354853 908 850344419 538 365101301 525 284430780 537 844771106 410 500860935 982 8876753 855 705236390 584 116404312 529 111248886 474 319597276 763 280930819 767 48857045 595 952551431 574 351454029 852 102230308 953 413958335 40 106130580 935 739069881 802 513614992 690 15074364 110 627555450 449 403413756 157 69500638 231 573528946 965 445360373 776 3945282 159 365137570 182 815079811 256 956952404 856 10484156 328 524010793 175 971536854 768 578934559 819 339678281 125 930036809 119 818706178 151 255604060 721 629004166 821 156406 865 575381710 777 583950605 758 672479766 922 507256389 597 248950410 1 656199170 379 594456013 201 886265030 567 486470906 219 809989456 255 860138844 904 686120051 688 492486092 312 487177362 725 856426078 894 794459923 572 519542718 378 608457583 927 428882294 831 730398094 27 661156036 554 757935593 317 931382671 452 372464951 960 436009897 713 677755904 507 436829965 461 647758117 216 347455447 227 368588889 294 882191529 804 320840212 837 826199868 915 967441002 691 464539287 571 797111708 504 461668443 544 943898995 537 322641359 227 148586650 816 478159977 402 668923844 322 438773182 376 556638632 226 653615952 818 718011877 42 575263624 375 226490731 226 732174019 47 158640656 55 242466212 825 965975644 165 868135944 485 145280499 445 822571064 817 881395196 201 808788525 431 649770265 489 705124466 743 301797285 890 812937517 670 274926534 61 598736759 320 157845717 618 984279674 53 201953321 81 778659432 370 651697044 811 646351555 470 244747682 180 365040663 595 200694287 381 824040224 914 315555538 985 836129906 403 135449253 279 524183806 405 998285715 601 309724246 942 587235224 603 760833529 636 137416150 729 379940172 730 874947898 406 194296898 898 803212376 410 677889111 879 597833273 147 728071168 690 317781245 839 718419510 44 722984817 187 677875862 337 603480654 692 56852909 257 41914518 88 903866217 642 171280031 892 364355734 252 238382210 764 616469210 696 115768780 865 36829256 507 540416090 53 808655904 303 922403836 489 614773001 60 526829673 721 397427213 695 718206156 211 763419870 481 875648518 485 932706273 271 70911526 473 424668044 7 794392080 701 211959390 618 117010444 258 129921885 55 158442364 329 645188197 577 3836589 565 969602286 748 182058873 896 495143063 657 641958979 22 605382846 200 418788048 205 330327242 801 599871031 108 958691824 608 781560796 849 899340307 838 410130847 732 354292741 577 836449256 183 584576569 461 673464864 138 225783809 709 463201436 218 189319461 74 331810600 982 639936302 468 691457398 785 951523367 580 23703228 204 146473476 168 772695894 410 159124719 574 541951499 644 847512065 553 773883906 103 807491062 696 654930816 700 896199715 843 764413721 89 392303033 121 819673106 448 909181481 755 362149659 545 380829847 639 435437729 244 325478983 178 310843232 707 607272356 435 169769902 558 534676263 348 228734796 261 976476498 678 328803343 855 520713638 933 855398390 173 29449766 136 745176163 471 580015393 408 978383134 611 469020116 261 696177901 675 912332929 217 785145911 745 356386123 6 813669906 767 330246324 157 934101499 94 28679164 528 556860429 749 376357449 80 355046722 333 959265479 339 767244073 665 105959288 338 878702399 967 848827356 381 969693209 933 492031540 202 313944423 632 885086534 115 985629372 208 184329547 824 869887690 871 144261459 739 966380948 193 597268264 989 501874851 435 513781037 309 677765198 798 51477740 856 206488203 213 630819598 111 439266263 92 665667238 105 187900509 543 767158473 781 55692987 750 983451151 615 562704467 956 629388828 600 586176031 36 460123784 300 897580547 144 999119567 621 112302377 251 732070207 236 160606104 848 49496758 608 265242918 595 651808419 830 28019166 145 378919534 658 844503109 27 861511617 151 757390135 653 624872317 889 205002060 965 148470327 234 271387117 278 50593486 410 908370372 116 886414231 106 713843117 539 395528952 305 761951471 461 91263941 189 120547177 290 891591324 39 310587531 307 391728925 507 836479880 205 444381551 717 637529995 427 685130407 188 589711197 889 724717560 806 878808432 10 498536992 302 434159661 643 209549709 217 344961900 32 811592410 477 462511807 569 429573040 293 706573608 631 370539212 675 126577584 533 46808930 852 597595045 129 349846046 912 532204962 678 142429296 996 857990560 700 38216555 584 341573366 644 316006324 241 170097728 486 820368900 131 139809767 503 506937801 516 489428360 774 242280860 668 455124359 675 479062195 389 889738376 883 843030557 376 836834916 880 600096429 773 84027096 692 790680010 649 848365600 959 853480894 889 159863444 168 888082973 477 49330877 53 687782093 208 622383646 18 204455817 958 184436564 523 311286493 636 24281432 141 440184860 169 104653940 795 681763795 917 208864868 981 465229081 694 448803980 854 140586081 572 678309984 723 734771173 169 540986949 630 81942948 475 471563989 970 586101577 700 414713398 591 93348609 781 117855913 849 372836485 721 590918409 231 489381777 253 19012445 605 497267549 159 518117393 334 240521663 810 755999122 170 622503065 394 394492440 879 507044662 529 570061715 687 497696459 64 758871323 861 771835143 241 904876199 945 328517451 413 222869595 17 640542429 653 800359129 544 39917628 56 767767874 440 551847355 142 901119852 110 363472968 791 467325213 119 22109946 34 469490266 697 559599961 343 233440435 188 888259492 860 494407553 300 599638566 478 989426240 23 716950670 473 570213152 946 354400010 607 196418741 539 448637052 929 362568112 499 992013628 657 465148885 2 551241945 634 534125000 970 45806686 532 268361126 10 313092736 733 254232144 497 344410572 88 677840589 737 946244107 632 133108848 53 983190460 400 41895094 93 445101122 88 582597625 585 775499052 489 850073368 73 647740302 185 388712135 530 893058817 619 332046588 397 84672527 508 951717569 650 446814752 658 830399177 120 466355650 871 4405037 278 956844555 255 567124906 206 468459600 574 959805374 647 846759040 416 235367830 662 997043816 424 925744185 550 727282569 541 356361691 974 590413719 313 51583395 196 49520232 58 178195739 907 383562093 312 277086074 519 320557128 960 363773427 444 69808006 386 889655121 485 287992800 8 745289478 560 188108032 550 41400523 122 183667924 124 412353579 908 729402820 240 904423618 819 134047490 307 170776139 605 793787765 583 921473846 652 922364298 793 269043037 387 920273886 965 540573595 334 227436189 872 240978190 280 639877389 594 416317722 357 629078132 804 27071098 353 329810826 744 847033971 885 363097200 112 936908046 266 626442136 864 851568962 388 623943315 847 501283299 109 155624796 551 349684777 226 463858140 654 404661803 593 584112077 25 643639398 761 889071528 670 444220319 993 918571587 693 718356436 204 995401852 87 624613524 508 114254244 728 39226394 257 845197442 944 364166271 981 650463769 790 842508432 991 229859393 506 672355927 353 823569468 875 858985701 995 217355152 567 218839046 840 229165968 406 929054235 775 834879802 923 648378862 575 136969142 388 957772675 593 327835686 88 302245399 53 900253608 979 570227038 485 797590531 767 169710212 369 393113702 292 930178375 554 211234157 152 27508898 117 161282503 956 476494941 645 81717557 717 212435800 650 622831601 775 732511834 373 164221851 441 863709446 11 247726156 146 833365877 365 425595282 642 486973975 48 683192039 292 395851566 254 608371684 863 449628333 942 784324713 167 686838367 991 465696984 405 345339437 863 717126948 274 77113754 468 384900370 235 381647606 561 798991338 201 207360949 967 208886423 884 623992604 663 879046953 976 797498485 872 283530302 437 572868161 803 945951314 240 314621154 61 268255787 636 853120700 151 701702712 658 764847107 180 358211446 933 328366010 320 647709232 532 590949265 929 999719408 649 586041957 480 17685347 678 187343093 610 719956112 671 126024279 54 623930277 698 827613905 901 102670058 949 793950225 990 71855305 973 425729952 777 205133931 601 533564011 672 413394867 257 126908173 554 764131308 171 755237110 447 122178131 962 274959863 882 984520256 764 689553960 181 420556204 500 114812927 658 408870352 604 414329355 717 197244144 189 39088248 133 159420586 276 152466182 146 14761106 615 760861821 743 364901726 739 261015834 250 84004811 537 999349863 97 30423099 34 670362483 578 875921016 846 776687127 942 201216081 258 985790384 182 240034012 127 425370891 662 179826203 679 939785628 594 634548756 287 881107661 343 535561570 605 277188259 782 268294644 224 368648388 929 900934479 462 214772090 801 13391211 865 260236327 335 447584734 667 857835333 970 362685920 745 485758087 934 129882024 968 549071749 499 657390699 285 173561169 507 119340512 82 819272969 625 701139135 835 888634084 350 481887393 397 689665355 264 161222171 866 294924320 237 805513719 336 641632077 354 725783491 14 576020397 330 881314633 460 275073912 899 160190309 818 100484065 29 602717592 495 711496493 935 899001314 213 792325891 66 609529187 652 467105379 809 667436119 455 849067323 314 760889771 77 623925177 88 5756575 96 215331519 119 88886169 335 130087754 473 447407757 41 50049539 400 106890189 526 870574564 760 26480337 935 623948896 728 297362079 222 762551686 71 227382936 914 872807945 485 151142039 930 504381207 803 954441988 802 981000558 56 660028507 147 546445307 289 726767975 338 127541240 35 869050162 340 821377512 228 255353552 566 341072210 376 56086045 923 557138856 796 728737997 86 128454073 162 984784624 901 204686586 92 603819773 848 399335850 845 223709158 427 995669049 969 374220779 994 94421342 601 744690612 308 909692119 4 464997937 972 723418740 543 534296770 442 20178601 747 852415589 206 954702483 240 674055047 59 743691834 361 686343820 838 757883768 934 954929915 585 546312519 11 213880689 805 428748460 31 563646658 637 465968376 444 491310649 556 50108569 319 970046375 807 410488848 807 596419110 678 6705974 767 729366075 457 266434461 627 755059025 40 726976468 634 39895161 569 707606467 736 998962164 163 836254953 648 256612795 119 762933996 889 160008622 210 580774909 690 636468230 735 87439360 959 170779718 441 543189752 192 499459371 399 457535378 716 9907587 901 520525611 971 387806957 153 996424979 330 849098183 186 646890790 20 67050666 600 226801984 1 403695538 330 265627522 884 997234030 76 996622179 211 978628354 961 309579946 456 768524883 117 125062425 224 225305538 425 646496005 119 916152186 760 174340215 67 200950637 828 76507286 916 310386534 892 158705087 331 419763249 573 760726108 701 638968587 299 231965977 378 509753838 741 89747643 608 699225401 355 72425363 93 918048651 423 315228706 355 514748735 275 970586364 174 612366943 547 826959339 382 791918971 896 657348494 48 412601166 290 307710419 2 244835515 752 712522135 10 830072385 958 875118873 219 119132152 612 918782693 405 280290638 788 20572044 147 652476448 766 234917357 804 743670316 668 458861085 505 696004080 59 673478073 952 236366201 840 790039053 189 907334391 395 386782037 972 704063024 791 466885147 257 173733566 593 127272082 907 497354735 610 34594799 868 393299793 55 352838165 349 603041118 418 398832754 740 535952197 844 877483676 850 706364716 84 492676088 70 706296600 696 448120682 100 110566769 93 939706601 674 68352937 846 6906114 512 428219511 747 907784588 937 646716844 182 328578497 823 211725978 40 716138983 144 919210746 970 407995752 888 211986747 333 953959416 199 378029124 486 174480295 951 555087825 73 567334674 899 210846797 238 58005318 646 779170003 583 229581688 170 426090915 854 455937497 121 586163931 630 611117926 625 931916631 941 391541497 785 19381261 412 620219854 113 427805824 958 224240222 786 300952637 145 333179644 856 827527658 551 552005161 219 354555049 413 17540493 960 437793553 308 107437929 785 478947848 42 861716225 133 602152592 723 639679849 800 420883439 888 365827844 948 710094641 798 923576938 342 386103728 397 775312755 108 268506362 644 123862589 547 850282828 744 734097093 724 739479172 836 822919383 374 229534985 417 808744670 317 102774675 508 146288091 807 140952428 1 611335241 778 925370905 586 966454063 642 708325916 46 802051213 193 317425641 724 747174432 376 322007666 707 645081569 331 936212349 973 956259351 111 684948841 941 895455930 275 259164283 532 592496380 234 197612850 153 457779396 418 946084438 998 738500128 246 759902002 606 695054595 625 169373123 447 508449762 386 54467805 217 246393589 959 322956756 489 762135431 559 16553191 781 190587184 288 494595831 502 540285418 135 542905535 914 358866547 272 472395288 685 457511128 767 549765472 519 109919918 379 500378515 303 73979418 999 789265499 955 189472299 912 784117311 86 792009904 84 510076266 231 562978526 162 854928734 766 532176111 362 128504338 584 185145733 684 280627817 281 154911972 66 480727706 621 804801445 806 909623469 285 399727933 366 95149031 901 435637489 82 557556640 472 661944135 871 910654247 575 382278431 837 595998992 412 7378577 369 326342612 421 670825590 903 503342584 757 384904544 929 539567634 265 707249412 664 568527355 43 171449441 674 588312988 233 135617703 412 671484562 187 317264918 921 150999724 102 453975633 566 295426695 408 362684007 608 729722165 764 370967952 12 48367191 705 348737946 557 115932825 728 125779540 930 645150535 115 950064082 749 721413451 752 516037383 90 686817666 923 551269373 850 422746843 995 411659307 801 671918985 118 679534098 419 889260554 465 592945215 490 333993044 19 979498527 704 759594534 236 38917098 56 629256625 772 977391591 884 73925115 690 154556543 664 28149560 894 408030062 421 387531102 3 780975008 57 284477199 881 752727108 895 572757224 212 224211180 995 258473881 493 114758765 321 370598327 352 831841008 334 601664469 520 816746215 385 926412779 370 687182950 295 384945698 71 718110349 458 900024560 204 407146974 868 869801735 62 471845403 95 79400182 843 817259400 529 690162384 292 414744628 578 127313140 169 568456007 387 984442413 157 936755469 940 731697529 273 466812595 4 232724342 992 227901282 51 888335646 96 683240093 806 629162137 960 245919490 861 92547728 13 723628627 924 665650203 301 217505656 965 15121165 533 207869200 876 158700329 412 647914142 777 404241258 783 447866956 304 244609359 379 755453429 594 9498995 532 231384105 930 811321957 944 824454814 267 122698876 552 930467745 218 365724382 522 380784646 442 773893232 419 721198153 425 37692446 945 983191500 8 123798377 909 905247725 695 396693655 325 252214276 612 576721408 928 254033969 644 96250072 148 196000168 319 538474924 589 777965692 524 451038580 32 568359705 745 611976460 575 495798487 771 828577796 265 115426868 831 127302656 592 499668432 86 945426199 782 547869891 707 798110246 316 660690239 880 841648511 936 237156359 159 642147447 460 154221275 799 193798940 88 735588676 996 636668271 564 711209739 84 180234255 880 852316108 699 399662689 313 638537613 866 394454558 753 875142958 531 161137516 161 30637913 310 644461997 838 98692099 988 297164674 719 898656801 227 512461380 817 842227480 870 488026916 438 189466305 412 672410120 567 251723860 675 743502577 607 246653536 76 48699641 951 652249681 838 765715015 887 494839606 949 710530634 431 480903267 895 511860008 819 32846353 611 288091456 781 100327290 206 669089646 418 988876218 810 786047358 47 772773718 193 873249990 16 771267779 229 613997 168 431292767 691 477729433 239 264089776 430 913198817 723 546715384 602 980086808 682 329063972 339 605557232 943 331558333 154 630376 423 5783889 308 192471115 645 82053634 52 974989960 604 784775144 651 641864936 895 229065531 924 476870891 73 777975534 560 489718166 93 723142972 417 370370373 450 395033687 661 65955031 757 883040683 214 375551714 22 286787407 535 992172195 368 306528445 295 998675651 582 72599541 461 934493258 523 789612972 92 627120507 818 11620670 453 606384108 106 415750312 359 656561276 751 237659834 137 781413469 293 301605574 62 348156254 373 597388199 909 897967738 265 959478136 447 696021561 584 925959875 909 837515508 689 98334919 967 510349057 489 304370250 750 475418238 764 433983403 616 158731305 646 620061710 714 363276641 673 855134540 940 22884025 214 768414528 740 982696687 501 768639246 847 621666492 543 935124822 624 285148721 973 996054094 35 457236536 642 128228803 34 578239263 862 350550566 849 915570372 36 165373165 680 269596545 12 361836172 845 232561833 476 792543504 110 513408706 475 473683488 354 677152116 719 620944167 125 535305597 224 485766779 171 23430309 722 939452033 141 781943219 909 383607711 548 784425256 368 211081083 493 334605815 877 107892875 518 654999634 678 318604108 269 76007474 651 857312684 297 827418857 216 733203452 307 823953744 174 900709817 680 924528747 34 240106123 127 733331105 102 622650744 103 106300111 548 758561757 211 626907599 681 133867140 462 26360291 174 903607155 916 491483488 173 955041224 349 154761109 629 422843849 100 167729966 96 113618142 506 796198622 400 302683851 647 707320599 476 207416849 677 996942495 828 514293390 248 846094983 707 293629558 20 519604918 262 970013132 800 766611498 720 402797983 430 488551581 356 850095565 798 27411992 974 373851629 28 771171324 140 888254718 60 345182128 777 777691916 434 942593516 755 488874364 373 320349883 576 789171123 217 48396290 180 700742253 79 757586841 583 753451857 187 32170574 429 39954868 715 943276988 115 1513746 939 654606528 428 135618408 265 927468867 429 911843870 382 678872718 366 773303840 297 874956967 894 616237791 436 327155817 121 907551675 852 245775630 759 737215229 642 445259656 823 800682892 157 936671576 889 85802644 459 688962021 195 267017605 857 186344587 163 659686345 895 302805411 967 755845026 727 740517100 277 858195885 137 32568519 820 733837983 700 488839067 914 203167384 59 115225914 602 941553213 983 260091849 83 137292690 893 956657188 20 193390366 707 177237013 655 857661312 125 400601199 461 741400711 780 77561324 67 748870194 83 484764862 618 414127954 587 248005752 806 247194890 968 940316101 76 898657366 749 541701046 290 749664032 160 344180586 247 433972900 335 422120703 624 404030410 642 822065710 334 983002991 337 510013587 849 415232957 266 760718784 955 942927618 42 164367567 385 538512097 329 555560930 881 68572118 274 10091742 301 298117796 775 374924441 637 887805809 568 293731255 988 171665652 459 982323378 955 586963006 949 104483073 838 777865937 774 76156506 583 299518298 282 223879207 691 339186533 439 543457293 759 554883120 80 584497201 396 343896652 64 328236901 605 679683856 148 22975374 426 900810639 199 305225260 4 550591822 282 865163898 507 838003192 867 322849607 110 816505914 642 738188618 714 303010000 574 707726866 556 734231221 521 71314114 483 115882759 172 688369099 437 424465137 194 757239361 732 47298945 879 983871998 991 36981175 851 674178570 731 137838125 368 333561525 711 236421023 155 58051033 195 741262814 689 557790481 895 940800984 807 321370869 357 814479669 914 938235978 228 280003904 88 721491606 895 952091947 290 558503648 656 476040909 509 428549689 251 922888359 996 864817615 899 750168909 674 823326950 60 659058693 552 257777339 421 425577409 911 670175977 559 793302650 434 671946868 182 506210885 275 162685424 260 905694404 414 187390729 865 509902476 396 725687644 889 737794419 165 837471443 712 4326211 352 626403699 227 900722543 792 87835790 411 176749204 459 102330932 461 30924387 158 367652166 205 756549263 217 245051051 872 399897627 559 615986447 127 712282302 77 805918362 312 76518012 128 750030009 576 322441174 775 177512791 54 159964995 527 640360230 606 781928490 75 157632751 768 326365552 740 857321387 123 222757896 716 246945237 337 524593707 458 578778445 353 510932960 152 862594892 647 73064116 145 612660140 475 308466990 12 17460086 380 144883801 249 453089080 429 922271389 753 856259555 195 128925708 897 641884703 309 261996917 367 921170029 863 533563359 911 159722523 69 899313271 807 110286970 94 856187256 33 903742033 179 873408894 361 473273520 439 155656973 110 696801402 253 390426063 847 185136361 308 953906911 375 376541277 949 647552714 616 213192014 958 533450250 661 261896705 909 957021682 356 433105804 782 559037077 860 33424545 795 110722709 444 359040088 145 757221536 938 890871295 711 42124778 867 661546804 407 19271864 51 14855657 709 526004091 241 114117513 322 689450230 3 66231356 330 632333767 87 379387344 778 97904539 321 389205811 610 309749272 580 649192319 145 886724580 607 904568692 334 195458658 703 415443722 107 407942229 266 310437487 279 248965647 818 936751402 335 208306489 848 63007977 512 42307174 225 540501442 800 256699925 459 317283502 720 939091611 705 2890500 235 267781008 364 405672169 958 808925208 692 519691731 808 530853842 373 350496784 329 949922387 286 361795735 432 448599985 63 690504922 126 718218585 343 955068399 105 211073347 752 594933234 105 391296851 934 662766137 177 71669031 370 462891289 723 881762144 622 46835652 70 822249153 641 872443890 206 875247568 189 176874751 414 120651066 342 349263218 52 946307587 356 827801571 509 309178196 703 407377372 676 45946045 116 502496464 369 571605426 325 950754303 600 958005002 86 360251391 722 459383686 373 158673801 399 36176153 744 429645152 332 813526354 574 843440816 590 430877241 423 204036775 188 902875615 898 445666759 442 207322876 837 265521220 207 745759270 855 137242247 749 469246550 523 97392703 281 746142399 575 400000710 552 443469920 45 667321638 107 61834808 821 406762373 101 298205287 432 877664828 542 446731753 271 639554046 488 327262183 399 672557499 760 894853587 976 824811044 79 232757671 892 890866560 204 836264306 603 270322272 767 90758672 435 29787590 622 260500091 341 919407304 856 807157557 507 944188465 14 706847920 995 957627021 212 838736211 237 537480383 662 429378819 24 915195256 437 509095843 500 949453666 902 750504428 979 100401825 266 498646631 712 197977279 229 914099241 732 525530111 609 460528311 783 844255559 70 791790410 907 562119975 50 23634297 653 151807857 292 932690721 551 932518110 849 251238235 585 491602778 280 799192850 917 326603795 447 77014845 582 20129128 928 724989382 56 740055075 320 466583797 983 912325452 860 239556208 304 229605682 746 994303288 95 203977320 157 334329612 185 231845409 195 170080558 811 809113679 883 710771146 377 2760285 778 675369510 450 326344565 187 505927255 339 479329536 813 963202671 657 402413460 362 983847552 925 170203420 28 418856554 248 884687210 920 85018824 867 493780096 743 401893896 425 752806782 790 2511422 798 260485440 757 821869664 845 12116706 107 534245638 575 666221715 234 244304372 908 727236341 29 641390587 878 731667225 483 695041606 805 259189953 376 567200541 919 552459930 729 287444941 293 769267731 686 536001870 852 416365834 500 307868069 499 995371855 216 184268583 941 670538009 951 854747546 971 167011625 62 494605010 649 518794511 800 614195721 564 748403095 234 811902226 952 474638979 287 43081845 968 247949036 832 720513462 722 270278825 420 607228100 441 206111190 811 378421865 17 358888466 583 415823469 118 814731825 48 330448568 666 954863179 203 721416342 124 191386898 876 308889469 11 124908501 318 527221168 658 958137750 175 114974553 844 723466114 751 932646359 216 186433708 534 551861226 612 683593223 858 291648020 531 43305602 214 853303948 411 132786735 908 300689428 942 280423982 356 184532186 263 467620508 230 545460610 834 263128814 433 684226720 796 768227459 58 437573680 780 576888686 336 974301255 119 303944906 423 78925970 679 99585305 548 977151658 355 304323365 250 438348311 319 135548799 705 23178207 279 346221626 52 451387437 773 559457580 529 573202664 380 568311545 94 571667523 98 414129514 803 966964185 819 495881420 373 75708935 858 822474504 140 278178757 117 663024957 777 502155880 481 952860665 176 597919388 930 402642257 946 198385876 513 591103511 438 882491038 403 812870535 2 84703653 737 462890946 544 83737888 714 34017266 722 695252139 983 191974885 970 377475709 291 90493096 845 609132904 219 503250431 605 283444633 960 989406326 128 856168770 939 450231745 436 606560188 755 487714858 150 57922788 604 56589885 316 324418374 42 638663810 803 349269397 192 208254731 863 7292421 812 51715837 584 9071798 38 194632156 610 246982377 694 462969343 726 964057358 548 223145509 66 983998336 852 970601814 201 371531303 608 624366446 281 800267955 478 261904695 550 482433453 149 520138036 891 355881689 70 250677913 183 650632647 176 912794239 106 118548584 348 960911623 794 420851162 341 339749517 28 512913881 595 554989469 235 119181981 458 941323364 118 292740907 922 219405672 495 58594986 90 907747960 395 927255159 569 863662335 571 557918457 306 278863337 997 997670544 888 897669114 242 403636918 260 354884702 99 745925271 267 647777871 676 652837882 541 411598189 308 368157384 235 388198472 675 181824730 864 572554097 932 905254404 356 943653344 684 310008826 369 434082 953 287199832 122 44078902 161 643882385 679 305067863 904 655231210 480 424200794 281 837844382 588 353675549 529 565039970 952 54022060 262 68565098 255 775029413 489 273579981 290 241159948 982 146359221 85 40924050 491 91350085 277 273796607 987 778397224 756 748647667 594 764889775 539 433912762 378 343733922 74 405577376 115 86944617 511 406905659 935 712933963 689 988840545 156 77912006 672 395090210 997 807611398 61 108966001 995 138904645 249 370342211 92 383762690 929 742254517 822 213579776 42 229506204 647 849236733 565 10145004 342 58211628 217 982699585 129 748148160 383 100699038 584 1289563 511 550000264 2 763471170 750 430357665 136 535606795 989 612035262 953 373684189 559 517196642 843 685623983 604 35615672 586 731589048 144 878745993 61 560891274 706 227504322 881 728708516 864 461926039 348 554628091 944 588346040 877 771512479 54 215326921 579 342639395 233 628611690 640 909699574 813 161031865 328 488741155 652 900427469 586 139607547 894 491487559 17 695936490 630 800223805 856 211269957 166 283133376 81 407051149 412 739434310 601 689919541 739 754418699 971 723244580 749 193677919 355 359101466 872 388804494 951 726229776 366 369859788 178 590646768 270 232628753 475 692152531 856 683318164 418 348795215 933 943970031 18 256972225 313 726580952 928 254490920 403 30304964 803 569672805 93 927535599 169 59077410 745 942722042 7 706648989 835 110023876 674 692030977 629 864696575 782 410619878 852 989188218 25 411574736 242 614726279 911 883501855 288 583304580 475 994523369 921 780535978 367 884220456 25 635368608 451 456913206 1 859166912 524 198822006 424 417781889 257 650470132 131 651934576 36 802979880 169 980697604 678 401048204 474 696492822 960 914551592 160 228785774 521 701174133 568 681041816 700 563235234 642 686639736 904 353027556 542 661031675 308 66453015 816 883057674 216 825307460 574 644025355 257 208963445 908 86940191 87 569164192 522 776237246 149 554598174 100 267667435 163 267839992 26 581597019 608 625915513 260 645535539 782 543793235 377 131667911 299 441807635 670 178711202 366 905670184 521 173958465 987 934180402 421 554419454 743 825506981 815 617268198 864 502699520 187 496435496 895 831537694 286 807762722 970 374323 137 750226718 879 312081665 176 916096742 15 898659469 542 694771846 323 383592054 272 22726285 23 764448232 682 697194852 47 126081498 66 348044140 36 456655971 769 681598733 319 20644325 326 15002285 693 868195054 551 179173212 289 786511526 120 799609426 238 953639408 578 99123636 305 121100564 774 574566041 776 383480872 964 444274364 662 160460900 906 57545110 305 893282815 956 516559387 514 834189224 651 351438538 259 734878993 36 809800887 834 937204308 676 430544416 737 872183334 233 863916730 558 810031612 741 581287665 517 272490370 351 318600063 976 769172615 309 389730764 398 511489741 486 240340892 938 453480605 260 194631932 778 719520671 843 579022484 763 845464583 505 236130242 472 630614194 333 50900442 427 117672040 863 988050905 717 565479482 164 666671490 60 94649432 462 432948959 471 186374610 175 137888216 368 44017276 241 598828945 930 188915569 246 966994814 186 754297738 345 187769540 142 949550385 111 251080315 494 443464779 702 138974220 15 179531884 8 762132677 622 183858712 739 761145990 396 616050888 337 917092140 974 825774942 331 214227129 566 565070240 308 805977427 151 336130270 201 713054078 522 811943726 490 745378434 260 588590794 465 320561142 280 451306952 469 204343957 211 179004779 585 779906452 70 381287835 398 170756016 627 27265150 386 103834175 291 916900489 781 340770417 482 491039692 782 82885579 672 354995241 126 308668005 495 209140987 223 768364082 64 26094971 12 487748119 303 702076847 727 304263800 177 370722274 99 913231128 811 128529485 59 41785701 426 398301831 417 132173377 654 347398413 671 634748389 72 175732699 692 409882206 884 202476865 243 732508031 505 959525490 21 506761221 299 425505311 218 929978805 708 598285627 731 117238297 87 242961865 325 935298371 708 421472895 634 42704998 841 633370603 162 525343022 368 346306410 394 723497296 365 976823749 135 852601598 97 90789057 889 339680196 676 490340203 496 58487979 324 750940349 569 785677386 167 189128805 850 600719837 714 310867983 945 321554994 1 305419134 622 854622940 726 277767019 28 542461147 759 909633704 949 552935078 616 506128427 171 989615076 226 695453355 16 978628247 769 797978287 441 322317736 98 321392881 585 693784427 565 367248934 351 891745661 69 204479560 200 332752795 512 380986001 707 120231788 5 898673849 643 615740745 574 580319051 919 180178816 508 834535300 413 384115614 2 240525379 41 289181019 656 456806291 204 762460700 125 230272919 260 940106621 326 560905174 291 727174031 815 936867701 159 968322657 643 21262172 18 518034982 160 370101535 116 669442410 644 191429555 447 724478828 932 997706366 125 620748181 220 701115441 595 952753589 719 953132282 349 283683886 811 664963956 717 945089852 360 349710957 846 98050383 646 107830975 419 449587336 821 407088892 906 636208472 906 789081169 472 981651091 390 876513500 916 434448955 488 188155076 165 8943302 400 411697409 272 836980498 265 643283501 341 253931076 897 219001311 204 852115284 764 134814803 397 549778729 827 942659675 665 628896684 639 351462464 544 430364467 11 73320162 32 819639629 578 507964066 779 247543294 174 56764189 381 964525536 750 978878287 512 627729637 117 432442312 893 428130107 537 744181167 418 946519811 819 83102005 231 882230196 852 518716747 452 802092242 827 457289470 396 319655545 315 809983059 912 502738780 262 752781557 805 594678849 541 572657679 803 729551680 362 155076783 92 977872139 87 684205744 527 695982113 193 175241038 581 600767626 10 156259785 241 993310347 557 610749132 505 665451333 148 263839372 370 496654111 555 204481328 452 703419602 114 368901681 121 667522863 363 252684505 110 700334669 530 799291439 318 738099317 687 934725093 722 746078939 908 887720876 562 660229265 655 531797670 563 804786239 325 646338313 45 537114348 786 507922987 431 256222631 404 229398180 365 580059973 62 302247056 411 422183144 589 571865843 627 915620394 43 436443290 123 664329101 923 448406996 160 924826670 349 875816333 215 858994653 118 121921232 728 563601818 53 530965054 336 980840422 273 903286688 123 301895498 873 55871336 852 259471124 240 335520909 957 25612119 227 457220384 217 574638566 311 558150462 183 748820654 360 525106498 725 903041738 619 87271133 445 618982542 897 508925631 932 897460553 506 697558123 81 320172660 60 565568340 828 416348561 187 168277080 405 669456438 56 206694497 347 138486429 750 108321192 704 998080093 924 243145224 462 878866973 836 612364224 218 553237112 826 11832351 994 195477500 227 142996181 691 480646791 181 224166429 158 669951905 293 531955832 91 885243127 178 551669527 952 521599653 718 111816474 510 615644833 695 378911876 968 433505863 312 245859412 161 987642135 864 89260260 644 397789772 380 555850224 894 418038359 777 41600535 932 593525563 597 381319412 420 97179668 846 895319131 778 419652422 849 1465496 153 69217579 613 853154445 346 413755715 589 604980096 619 187776246 317 627788144 595 848196286 415 252594896 398 307482312 507 16314528 769 602822046 727 570667154 546 252478760 241 89542055 52 378139757 379 743125264 292 747967444 825 821807573 902 628045776 520 855153745 352 853068315 206 84209423 827 434355702 679 90607982 324 684631967 493 450602124 740 317617183 831 615412006 562 61355189 995 463852475 561 486719792 281 525054711 356 732417291 499 956011451 239 334607191 375 663811406 221 229610405 650 691494685 838 504977319 491 604117002 65 202382752 737 506860329 186 262876100 978 945867103 590 456119321 442 269034059 699 70791301 230 425119037 771 561390935 140 386671382 501 633417328 683 286973178 839 935609702 787 323913226 602 140972506 780 280764706 581 132207514 114 161725310 450 951887111 886 803162403 193 765208433 808 386051415 991 829823213 815 727177714 127 622567189 847 617583705 557 717409044 3 736359189 81 281119493 947 100914510 131 842783870 973 82933248 649 430630638 502 851073773 533 83831900 769 868964349 181 683327129 728 477105771 442 179508408 182 293018324 14 523217700 218 392443217 254 400746097 730 693053243 504 787343202 500 93854229 483 139095078 200 363845494 477 803993502 163 722705446 241 986222640 54 941996191 349 209347243 620 804301923 100 770315813 818 905235126 2 392477815 585 297233129 741 387312026 657 892328803 809 931782897 628 256157995 504 596162697 290 583636915 208 730412677 717 304324023 126 140428522 587 122942304 479 967386311 632 515236818 840 87898069 916 768960361 995 34744183 153 844849038 158 854622370 322 518471007 718 550381739 746 233221596 154 539418770 696 135873028 18 221252194 416 395052684 614 890915540 608 750180918 606 425716658 11 355549694 61 152081081 98 353482639 508 125352528 789 934178028 729 637657585 803 832857179 558 113195692 776 325731958 646 856417803 146 357102086 286 46588174 909 502035388 76 4547022 800 353828327 498 654135706 86 166599888 641 5311084 266 86815917 603 761880421 591 177711080 650 440430682 289 745322358 964 792184196 139 845977124 65 814410254 429 157416970 481 496048025 913 47095239 756 337990138 191 928252288 404 777639344 643 912601125 716 527276993 243 725257338 170 863701558 496 495578050 603 443626010 376 250650668 329 362867892 844 671352753 19 596363047 152 156341144 779 471379509 594 698870154 189 2640426 158 300708704 958 625986787 52 889070852 593 968441874 964 478096296 130 672682107 7 803664121 945 940413411 664 686268410 746 863273299 239 377475812 300 757463090 721 836811352 695 999750758 711 852433099 758 391068720 294 706050952 398 338882864 946 415992074 322 923375379 400 479774227 573 357977465 32 161264440 446 642527766 408 211116445 937 750383992 228 628150390 80 478078537 265 225187862 536 168429955 177 164208738 213 354743494 405 698901438 512 823288867 296 787175288 596 510737605 210 496142526 843 780879812 594 689156267 633 60951862 288 579909784 230 284218233 176 41820216 897 664448846 361 81994944 768 270712342 198 353477486 93 712512072 91 268013249 116 74762430 448 755726137 926 31152057 169 686873273 785 717814949 251 157494762 209 98716730 991 346412643 663 86056212 531 390754507 485 133177223 70 148682335 985 645591128 809 240356610 708 187829886 218 396410286 642 148784671 414 948310064 448 122568401 763 727651142 887 905913302 794 828495741 772 524877469 147 621945244 154 487342342 789 256302915 675 877442570 385 745516502 228 419770285 990 984740815 380 148193922 120 416151159 0 307947769 980 72411298 399 659055160 777 961848340 579 261224057 677 747913671 133 318106964 502 798829844 67 360358854 209 570201265 803 442563576 47 562694356 509 47585497 680 318498010 520 953877245 735 340038328 661 978108572 196 862585026 616 128160728 617 47416788 270 399003275 47 54016077 117 340994628 720 478467366 96 265215757 95 63472308 153 356157182 586 693099161 336 415933297 516 115300424 963 790429815 614 180637650 864 326703863 866 57286190 295 534532005 262 227539204 642 926523784 414 699575067 922 172939426 580 151360474 868 276570108 474 875866318 847 375622904 205 85048131 927 554380485 146 892532660 593 435739872 929 213373035 248 968559736 633 622654447 502 318690147 404 266515150 68 568531429 472 303245682 120 816051282 42 403373651 992 461993294 239 798941886 581 373677305 519 869705870 33 602699073 858 555473730 6 981409085 43 414982418 447 93770637 498 258674980 943 349684894 122 13165307 57 506087242 177 147639828 64 762253034 295 842993063 929 40411081 786 702911707 462 863589391 676 896269412 184 934304415 451 62241404 632 207859012 831 961892207 182 711712969 255 837129292 258 58702038 496 482679281 263 82162591 757 810571060 49 851089625 627 932967289 441 901734892 825 240130118 300 690192737 364 867764506 933 58194808 768 314279635 267 84744210 982 488290653 511 791677979 750 957452568 117 207715576 848 457864328 247 713786855 817 214691265 932 712422619 650 995511858 711 372326738 784 935133431 371 898055793 452 415472033 509 669277187 542 283225579 698 122549830 679 593131603 906 506779359 477 199202685 278 78456505 951 208476122 898 367685107 62 595548865 5 111325960 916 770394755 336 660996503 574 469928495 811 442000227 720 151636713 937 832461979 47 970734397 280 129564875 498 131182148 612 384331295 548 648823217 727 931459839 793 360284829 546 599842511 1 203458006 556 324226956 860 70136465 644 138072550 17 953708447 795 171544905 577 622472263 527 590825522 439 228112993 422 536443501 678 54588051 62 665063056 452 720695958 59 41533904 235 968030627 490 866022965 510 974804649 836 299218300 845 919598265 195 655633000 624 861392114 496 885518873 995 417626162 75 479017037 372 370686418 962 624141117 801 982675084 37 371399486 490 302739631 300 177046843 440 71926037 946 107149064 208 665122449 655 866252910 572 210009123 723 632042977 752 558063609 629 577843738 974 896989338 432 281338825 521 801034770 887 416767758 971 683251280 495 319605200 639 230288988 19 450154536 929 19386533 766 899284400 330 663967631 718 979479533 955 228499248 763 234729940 611 259519335 55 117574767 814 708149796 120 531110199 604 280593609 366 552385215 582 309508158 990 743923195 198 963538934 250 407100544 138 597087158 96 195851337 115 243917292 47 323809189 954 808897325 185 610091618 448 853327784 70 784849799 291 854469942 443 854280451 403 322281693 85 237921981 913 578556995 821 483029934 540 981838545 203 130582548 142 53025695 856 247810055 303 838342653 640 22939872 68 44105480 995 793814730 305 650755414 156 903951377 320 762705043 685 703298826 93 914094387 402 201962644 166 973549500 9 529863276 558 155857765 798 985095849 975 552338264 810 806175021 800 642238471 616 493237170 750 390445379 767 526059760 715 940191160 385 134057810 773 536647535 87 7192022 91 593688862 627 976567563 276 858282568 442 63728449 199 279367437 212 778693211 216 196389450 871 939936964 241 992543833 847 133021305 786 469430224 482 265161 539 302746520 50 559364489 843 991228335 900 316482255 747 271148740 128 666831685 330 803915706 411 145027737 427 245582654 234 530572683 246 800714368 924 288340562 444 539614294 981 133085351 694 405255417 361 223432837 872 225340959 919 415587565 330 252475306 772 874586851 401 363581899 48 169822160 815 923246194 179 83526384 46 880352407 912 833177429 0 892640000 567 133589492 687 360167124 281 424928756 896 869780677 477 32386669 56 726175675 173 583872595 491 977475797 54 902976394 605 417350531 775 752768572 164 808412139 550 330332521 739 518776763 407 859144762 748 160806457 992 906979593 903 617850058 302 833783671 196 786552041 698 9694274 149 102790803 515 384565619 258 289967896 217 82631487 47 781809171 253 636850882 289 5276312 938 2426338 66 448522485 895 206497195 158 516567542 767 447159205 769 977055796 134 906765544 590 820780380 28 572879735 324 670688655 504 746532853 329 104232797 913 396149011 876 132861275 665 510551830 202 78474434 396 428274406 189 176389257 748 994238319 257 821275393 984 440719561 174 829763797 673 224466659 180 306164416 467 444865001 138 743282483 50 505499937 320 943946151 224 276225427 649 789384762 380 237951215 410 180690153 431 544159089 866 657823288 745 274117578 241 381921646 93 437909745 966 262275625 439 227018830 14 647758239 362 167401939 438 189649789 338 352369345 142 6402571 716 164387156 917 75410851 497 188189101 303 971906606 120 499909912 10 345830168 202 921887767 78 732862306 355 111719902 498 430920944 175 598521047 240 435787763 438 349870795 634 968054787 853 895949617 811 224571808 573 135529673 420 453700775 616 744237777 406 412078829 739 67175831 122 81683066 32 822290495 828 313332711 968 122675428 947 396198566 447 986475991 910 943654074 413 224636373 369 449722578 274 813864991 741 249043489 343 646110056 642 557377198 748 933748204 986 326173233 278 426263098 29 356871634 864 913724660 805 567385680 266 225368552 866 598416015 379 632458337 809 490116909 900 756930755 388 891287971 951 725495217 298 464447952 525 978871287 262 311956479 266 352995500 882 451327511 975 557795278 603 871519948 667 139442182 38 538160898 858 521106926 883 302309039 10 562713653 504 28638776 894 740576916 40 803660478 390 507044251 159 971151630 542 96427728 288 92990651 87 857022764 547 178834360 722 424844857 44 230590613 197 954956430 58 396597933 808 638523271 622 934865840 469 69436282 456 616101924 262 533696345 905 189978588 680 907204877 201 772223448 371 89843072 576 294883401 904 361918480 380 148042671 792 764009027 292 422942928 486 510426215 204 682024383 688 885368350 482 20113978 78 136645918 387 640664415 447 23789752 511 779594623 348 939507206 174 275825967 520 391632675 756 126568294 724 833394111 18 173798255 695 688761720 771 734793872 5 332995575 829 709862241 732 442814981 953 841427871 145 726395381 319 55469616 358 555834509 302 694670683 119 552001357 392 817498442 464 59250901 429 58371019 375 317953340 27 585451886 318 43422421 46 267499409 841 980370928 214 199447547 796 170001008 799 361063165 711 279966759 375 10841588 741 602426292 754 263509903 961 686796141 604 874084922 928 566879294 985 299151707 444 845264763 589 836790472 159 759031597 382 422069424 432 674182497 426 164249232 329 396822195 717 708300091 297 250968991 364 991660597 643 559192092 30 698954633 761 520541323 521 459221510 795 533602137 471 693639321 487 514852583 574 298102536 677 42273353 137 666700589 240 652545085 922 991993620 633 199332355 590 991607921 861 50410091 259 135359034 544 562696287 335 768808014 962 134290443 142 242064805 919 105653036 284 502996802 509 925646730 569 229697772 480 914629440 569 403901474 961 339088887 892 313946847 83 137474289 844 683954022 115 537637489 11 140878219 512 914684116 911 975208790 988 598930697 262 432305380 65 72756675 960 764493662 226 65728553 724 579338072 828 358232176 234 212239344 732 213010722 41 985402081 869 256647902 909 354282968 702 814171607 730 9848936 574 990064568 825 959988669 95 516283695 149 67089031 992 11551080 481 392431255 304 925354945 698 495871603 360 698132059 693 169642774 803 368289194 724 456445400 287 948851633 391 716882343 130 386876897 606 96028537 847 899509417 933 817019906 595 886167291 371 530607803 567 945249937 317 913091743 829 346913219 579 868099640 239 650836617 503 99996432 864 712523011 14 874785800 946 29571918 841 46517757 565 3362008 133 133032386 427 819307627 768 114617745 890 891465051 39 331177521 434 501096905 786 112542070 847 212132400 611 249844982 451 402367347 281 320013295 704 742704566 108 159335089 786 670421527 201 9093281 614 61905183 972 125627032 36 138073818 534 13943354 528 526883646 364 298703943 821 828386710 306 625098174 894 531465553 253 809509952 925 701312782 937 234584172 443 73061451 171 261668479 338 530045442 878 120283386 677 177709251 693 720836728 651 949522644 179 982499071 696 570704868 700 120104033 687 291220094 419 652343464 938 727617426 795 235557054 830 127867235 959 27751949 820 447120093 466 298500445 132 257177348 378 421718015 41 813595211 666 344612045 323 212908685 807 421274372 779 386173572 252 577376819 922 38744055 63 484232277 37 166516606 964 809744321 150 104930072 747 361108768 910 338455481 576 705349150 606 695250843 12 256944410 100 496228508 496 185272235 224 451848994 392 448240590 945 666639512 341 295996767 809 636502376 979 812733161 193 413002857 316 871214864 32 256709577 638 741331630 390 63303483 292 415041101 555 591383528 249 643629202 557 525310693 682 978743135 564 450827184 836 498453570 814 972866499 465 747561417 981 210694654 578 973090974 981 307939513 285 416856290 91 806650270 108 291044247 898 663856449 318 323652921 896 1267060 729 355537763 107 109272749 846 984080393 215 477582298 98 209714780 447 840036705 958 52898809 785 801024346 238 835238887 81 378619394 964 940651888 559 96582066 910 415107394 153 558123341 261 569853990 362 668276318 569 839037350 284 927757230 402 102545866 427 212693169 191 965663354 533 510477401 956 519681456 63 344403305 854 694453819 959 55915436 36 455908329 415 810690650 349 346214834 155 472147911 543 554087441 733 432059644 351 982707150 979 596042033 990 675472897 481 300594097 421 298233898 56 938928770 731 348113185 849 307442932 446 547716255 950 981383802 28 815003203 279 141623228 616 7265763 913 24321241 923 299428968 171 195040980 219 488613135 471 256579351 101 802611603 292 373108865 661 823971699 443 364421547 381 127499834 471 397210 647 144990554 379 468563677 466 410710855 813 218322442 128 32524892 789 251449244 977 746993557 908 692658793 841 74949515 878 554425569 357 261342366 513 418799649 496 60608080 412 643668103 2 152888625 194 432527199 582 892500929 236 59323522 905 407252344 507 357298012 788 904759273 729 948001539 144 66612884 145 914875737 695 58498308 595 972561432 137 91275722 789 736344581 395 928176899 844 900548338 582 128281520 350 690224340 263 854860343 299 866256126 360 602452913 143 443933793 706 142514661 482 626863361 172 746209523 509 653550010 710 577011160 735 283034608 815 502201883 437 201275418 510 873524339 702 518660437 13 317908171 312 376428915 586 794895047 943 402444575 386 32999682 614 778436223 366 325801044 679 667767907 573 141059224 527 214539514 591 980871023 285 186623421 202 371684738 265 255382803 868 319467495 789 384577641 313 62179198 743 995929952 25 347793481 858 348514408 605 537986156 231 888208659 154 33838298 680 628131001 927 665910700 474 220187110 563 717569018 399 764307370 366 413350790 312 560398615 324 792171060 467 583765308 869 540052773 236 786451222 754 42208950 206 905418139 726 666819091 183 813767591 735 842489534 975 916138049 80 528372731 265 320154586 809 409311020 699 956485335 568 983589537 731 176868218 975 885733326 77 654342582 352 31182537 160 925681471 20 31965306 218 334500628 278 441978695 346 76105789 271 981579678 466 437652766 473 209564715 53 303382871 500 890873169 574 941540451 633 66530719 454 689132191 984 795050372 343 974959237 346 417670926 622 906935295 408 86570893 628 401392091 859 454007551 53 555243818 955 910021494 303 95440230 15 640730184 132 61265673 961 104456852 450 752844080 464 674500014 676 677957851 445 387789754 349 84050918 72 289650288 438 231910754 241 361171359 710 306259119 644 652770130 122 291395919 442 153696109 698 520090829 128 687235259 386 499868134 699 118217097 428 317133083 630 794710389 547 239790618 742 656144517 194 729321773 982 619743463 799 233804175 968 802850569 760 108402533 112 643403757 105 222441103 678 835598622 611 852624137 315 609029095 193 950094489 739 623708912 941 29885842 342 86317615 604 971529916 21 103203952 917 820830672 472 210063513 448 777043091 903 422639420 559 27453697 465 167158928 825 974429247 212 521261935 311 899483520 811 590514948 645 909768131 636 384370730 979 29237589 60 265301207 17 373452734 262 659773184 214 269658319 448 594476260 836 540485061 243 394527136 551 161267999 169 445612506 332 664085727 626 864313499 618 600562536 618 234341625 860 665838696 330 412656158 152 948903100 369 788063608 643 939119605 903 372309172 297 992567504 466 381590446 106 842487835 922 29976186 808 563763630 354 130159607 380 309594579 542 934481906 555 804078386 696 957133799 485 112187611 565 594502557 743 468152027 482 731173219 381 574311194 827 476796730 138 66478146 634 839033425 791 374054561 859 342330329 685 108792770 568 257173114 512 32571639 490 933278996 20 897321578 51 936880761 496 403625742 182 126252688 589 44548294 369 67877237 435 577927130 887 222145669 166 633562511 673 673201001 35 143193258 896 645985073 106 238915673 648 960025451 549 822939628 630 281266598 421 981596999 961 676484057 106 983701980 32 569639465 335 167093503 431 905893687 265 595615653 203 941117620 160 179805492 737 596781217 976 629228061 599 415596433 614 566015058 43 186225809 268 185136247 219 811393725 828 732213259 339 495542589 110 367130429 425 903033768 308 764347633 368 3396642 274 257729217 792 3832959 470 242337291 765 834700810 221 158937524 405 242120985 820 667064717 178 577049037 9 893501029 951 738952457 650 602107936 37 552668654 991 501537692 75 580963883 29 486820500 721 374391185 907 582990400 946 508306227 114 976464347 296 859994866 773 289610862 237 571582835 728 503494454 160 315123554 784 113740978 8 987601303 300 992534649 403 955734794 605 899918913 305 628918759 100 270497704 62 304673391 314 351397177 93 740674742 488 232890332 77 985331279 313 812785278 29 16132867 143 701656359 719 644289372 906 439805386 866 41065797 44 721864615 739 966754296 346 4941559 401 273875087 21 749614850 649 371332969 54 575202142 662 353850136 927 605672424 131 112737782 605 907159723 571 280120415 453 840728956 671 966036927 427 193986310 795 620153072 78 451937860 471 120210172 21 479273296 877 860429013 943 351566509 896 145858827 207 776714009 723 850042842 512 333336551 19 783565176 457 298784309 48 651046119 769 948718526 517 310272241 218 464726677 894 564883385 574 252308221 857 700958703 570 460829454 782 102232405 647 554792463 308 743492662 272 757776378 32 908371951 266 832931522 206 120077387 633 265159174 770 161797836 45 286872116 473 648318707 544 179922639 768 896629359 264 105829312 767 323236698 592 777479204 112 488813630 684 957586288 509 637398471 113 119734268 882 60762309 457 138305370 222 683181348 858 885912338 133 107777763 305 818830279 20 488964585 665 917278207 901 666877324 899 558268781 212 439323556 911 981504410 60 390674171 328 465768309 631 947247320 831 291582667 949 623529904 642 582975807 208 161313836 799 125989951 792 513681484 499 826017181 958 267596399 509 822495303 273 380834476 329 988663088 819 331417194 285 515560253 656 223291462 189 795138863 83 674753524 325 832857132 414 984497103 64 561755362 313 999088947 766 158326947 735 672480691 438 647128348 506 282575075 137 101043788 754 316838557 368 17948146 941 557369667 730 653539648 902 525328192 430 932311788 523 197854028 540 147805152 733 652572510 405 22061523 589 615992508 656 452500114 555 324705549 299 661131738 988 678077448 228 940302157 21 119311520 253 212665999 385 25885931 621 454612174 338 810415658 596 939045354 196 653872941 831 934279166 755 119461829 521 147570500 620 122731897 156 132156366 89 374588699 387 436527322 188 72545470 318 19458621 768 375427594 984 525600680 171 494825052 767 908035218 428 66397454 250 64774940 726 47141886 824 588713275 277 41127483 846 362687547 655 628591231 438 178861983 218 991403669 31 786093191 960 222328068 49 494031798 514 641502479 951 439717992 806 280215451 278 975387504 648 827367462 176 116545014 407 349362351 527 288513212 200 461726553 95 737311110 320 186084317 583 656261652 294 12270738 295 398300605 706 805736911 9 722926485 802 125104100 941 466947313 552 652266848 91 310398225 94 758078724 970 740082139 792 913444967 417 760108996 405 743139028 81 875855675 15 215131957 876 367027647 893 939729640 26 467738177 476 460367134 284 929233637 672 919152294 703 39668494 565 714846185 726 946785680 480 472510688 561 897497440 636 807123642 932 679188989 623 767132480 446 608933096 653 625954513 317 805666474 439 293394696 52 26548809 428 756224498 35 937670155 332 516743451 606 449326530 596 701415364 135 649780695 359 507247378 650 659554896 186 881722558 708 781284393 736 816517898 643 128701901 660 267782882 266 238794073 715 944637811 272 72934254 187 211829636 1000 228007325 273 759862780 853 600385297 933 674161848 492 441057497 763 724670157 339 378825182 472 106783279 531 735488227 906 21602170 645 295394662 692 379326839 254 486903468 542 250210267 171 619580073 583 138169980 853 178730969 466 795759661 301 288626776 991 363563926 917 213736015 499 284924431 341 97291300 919 582377507 753 759879154 699 542293477 715 588738345 355 203510169 691 823384642 161 219422148 234 465852350 139 633309101 933 81850291 829 245137635 419 403474446 154 566454691 404 251867802 922 584409326 68 567106715 799 995825556 59 950234954 959 265345230 951 555402460 353 20773196 845 172368702 616 712971891 75 166643172 938 490201640 376 496111691 592 571879248 907 61741294 294 595691021 21 605454399 285 119816390 468 976395054 547 301256471 495 311628026 947 90019161 421 996521123 535 944603373 267 924883825 974 429522437 986 993787058 99 362271824 184 431401802 375 283943264 828 8096522 21 900880741 670 194142679 572 529858680 978 486863557 518 762954820 773 863959491 957 689545700 986 84069757 273 577896825 661 881210452 555 559730708 645 692812260 275 174578311 240 325343322 793 710208532 689 796323999 749 491919426 364 411291601 636 667038408 660 523889192 633 958562894 36 384934304 866 823350069 355 930543053 82 256515375 292 927849815 754 99246934 490 960450108 763 441725850 556 772502357 992 914466298 94 591806406 936 467077200 994 142940620 895 567734228 222 192088997 221 639401179 565 379409778 586 340132444 565 131844039 833 171061903 968 817071216 41 534345800 605 399989374 434 754085993 8 919114894 813 887644949 555 446588960 207 55986586 520 671612518 681 85415124 114 374030798 929 732676562 728 608404583 459 38255678 109 811472113 86 329090383 164 264166275 719 655088435 652 220545278 404 969017655 658 993228166 73 685987198 68 954434783 105 822930647 686 314605445 785 468492210 736 503410150 164 913043285 266 139808998 66 976282477 93 33608351 410 89993866 372 614121848 149 491514126 367 302365510 107 356020635 994 231412636 748 985906162 439 896109240 668 261472659 968 111787200 710 327756468 827 859132848 406 928451557 417 586318073 279 602235952 237 119694008 271 703220994 688 658199939 71 683396123 39 782229641 915 947197170 276 885165373 3 197574445 373 868614230 10 429930135 207 411200038 405 209040865 564 656996680 665 836596534 55 444049403 117 322176256 814 792648224 396 945567228 826 313664232 0 543646208 808 737167018 873 404070767 441 948668313 716 674540371 645 493736277 290 569729007 395 229675292 0 911508741 872 343143523 118 299920704 487 463172527 158 682225926 375 270988450 356 77227684 137 151484565 295 653764668 147 707310657 830 260396456 550 449705038 401 980141900 114 668023920 851 510293783 84 155263355 16 566667748 462 197238278 898 603161249 735 225415296 425 574523970 748 7978436 529 304017936 226 51246417 53 637121736 39 871196851 96 147034669 753 460713208 795 683987153 75 771965600 383 867678455 266 775754839 529 290749350 317 571793344 844 642356898 869 66040 184 191724277 440 204479307 802 498673433 71 570271108 908 317097368 417 398752897 675 440327026 438 449519684 614 648518650 75 448508689 618 358484820 904 451701643 831 50250089 984 628712193 376 537531445 938 845776789 875 440295781 867 650186932 926 56309325 818 115591753 121 653589279 608 594016481 325 843350421 686 673583075 293 601294707 799 759875497 128 656263878 881 302677048 284 384934216 457 34052251 16 543126520 21 947621838 793 251704673 460 710925258 258 1081838 955 647590666 858 89197971 839 972351545 670 800526273 819 120639786 437 966026583 692 875359040 843 566205603 585 690956984 159 868406939 294 587650150 24 985154680 522 978605484 202 395410303 226 882494843 602 917787687 134 797223874 847 533234579 452 27883103 259 468087650 206 818541449 368 57305616 504 253772591 52 744049132 721 393670947 971 371924754 473 129998753 559 129926965 959 397812302 604 886525297 964 502014685 988 766669199 43 314082974 375 746573219 399 946123653 93 579498613 100 951631919 727 834505115 732 292107223 504 669491204 852 786781522 942 775691948 710 997152304 298 755517724 459 414874919 520 97158123 974 947508706 352 814704541 20 53675562 474 447940935 4 691095968 907 316774793 503 490251061 913 367276980 611 5664710 36 116688617 342 310284428 812 168641665 581 337372733 137 532811110 571 707290071 528 455765379 747 956751545 950 39433036 350 98223323 371 171089183 175 304937796 381 280597114 549 354305467 998 815227762 153 85594652 187 555072630 526 722990850 500 341107398 112 511253881 41 536689258 915 889892254 119 254129094 639 161121669 148 578771869 161 499987901 182 920771119 400 121165849 84 738583867 585 97647620 511 75051000 461 603617456 718 39787587 643 887914328 738 977203821 289 536615993 571 554576026 145 837205155 508 603942661 469 435134553 21 626960895 202 917979601 473 281449720 863 530950464 434 434994 937 763872370 2 40814995 392 235077945 828 639931866 123 554206964 397 255009613 25 366283438 627 937728866 69 777981619 367 398512659 125 302230214 319 206973572 907 800638052 392 382218828 288 50894752 509 366112307 545 191442613 953 669286999 794 143394423 56 814469674 170 709884988 82 775762416 374 523832512 417 876091116 877 83781960 664 832240098 624 749376703 949 703412740 565 999175272 561 32359628 363 267156346 832 72640491 290 258582184 858 775740901 819 703487602 81 490156079 789 107994158 382 547894496 223 394435784 493 928066199 676 157966862 161 757804921 519 49840937 569 335746459 348 51670159 711 481303325 808 165400388 543 923727920 545 544443745 484 440529374 421 860692972 880 359530257 752 152164799 482 800823127 694 633383400 25 136293159 46 403687623 673 778605539 438 428524707 705 134100275 654 508856967 729 374042359 651 310713272 800 659398301 469 582398891 72 928075152 874 62358314 498 2140496 304 712449049 82 812357053 950 271342034 804 810961963 256 357705429 761 259578323 347 80436320 440 809713728 30 809933068 869 864810612 102 664811023 881 770535179 997 247103244 708 137035298 628 81576400 301 495091003 106 559178131 380 791568606 528 80214344 952 908107523 607 413981955 560 95992499 977 70600346 607 774852333 263 15306483 491 816219734 223 983530572 912 935334544 739 297540871 361 276324932 26 558236819 740 475620260 579 797315378 848 330038915 251 329546302 565 265962114 71 362706390 485 508828563 399 701548279 587 463555083 330 538674718 644 251842164 170 359824496 783 688097290 921 397632463 714 504551042 613 644977514 408 596148944 583 245711964 64 583365417 97 325690307 885 503777262 905 293602219 812 471047000 416 445479431 488 360872539 231 343094830 941 863832524 896 261921709 452 779330260 373 262700535 510 323751668 209 51330084 735 833516707 192 139368375 135 947876321 606 65486626 746 373701518 361 532280152 938 848192421 361 530382305 653 389639663 523 538429327 274 805635871 577 457080104 816 902062576 663 706220487 212 797165380 473 583308716 675 593877635 611 918202380 293 527373860 867 414138524 580 513941285 347 816499475 445 706862267 192 334649529 515 301957088 590 388940529 635 734281548 127 745220771 597 687547783 248 54988992 974 808039065 554 759993427 571 306741750 130 95137272 820 117867892 528 662650116 436 857912542 379 187882596 144 933106604 410 38225124 515 239193086 733 192153252 145 577946932 504 838870714 989 89890121 945 549901101 250 474530494 617 258883586 137 692175901 749 308284854 71 263368235 674 478268559 137 781570770 906 376981504 975 15937099 385 706923113 133 454165595 807 582625842 791 363477345 182 417486517 680 268240765 720 77464197 942 487106332 935 361314805 487 273279371 272 623756236 199 943701731 420 17260974 294 939302861 343 324414515 539 688668977 254 764812037 796 125602715 856 905980064 309 668980495 270 310391299 232 70496429 827 183639092 180 5661911 177 396443657 984 318361475 203 892142045 976 875566982 386 22308838 324 36119059 715 131553914 331 473785453 38 764171274 782 830909248 530 598001636 132 439835697 932 117970223 620 635419001 785 618265810 260 510438688 151 643927045 607 978867329 523 951516932 565 801337135 172 822861303 256 77854815 369 542835924 515 216566592 289 749908204 451 70307078 14 580733848 999 30991049 568 497235674 510 155404909 926 426710749 970 227816257 665 785292419 944 966348369 726 608717117 517 34788745 788 726070967 680 751035251 830 64175600 227 505993057 510 975006175 548 969760454 902 682650044 194 813303072 392 760198617 508 473727115 854 8901840 478 128808420 811 443265501 414 951841329 95 638599262 328 798272454 144 124651454 68 576936848 736 786990991 747 153655094 917 359660320 963 248424414 481 490866235 717 285911022 460 301666461 510 783119007 912 790249061 647 296613221 156 129091775 641 286512578 61 508940700 654 630974864 355 704013236 561 296075066 990 559688178 669 230956042 842 822366443 462 514943658 196 444645756 721 9379133 386 710192057 617 108152504 615 931904843 580 813160763 628 958092021 170 322388306 484 901552058 889 12369988 971 182886802 406 77105568 636 403629491 256 697061334 309 893527318 355 162944133 303 875060266 629 166271451 223 160078656 596 138144589 755 256304810 201 274055764 4 134189438 424 185475534 788 88288432 250 393369820 268 754889226 88 446152135 800 216827416 940 477848673 104 765448535 701 850594215 986 665976621 841 48338301 776 964650331 864 505504705 754 41776863 351 207371077 175 475850249 558 26897584 357 701289315 811 350853906 313 407774323 631 372949332 769 998185607 224 176815972 458 64617415 15 601117752 181 271617861 688 378305676 13 939211831 180 73892425 566 969093128 466 615981379 380 918815175 361 128685184 145 822782024 679 726706211 452 281720518 35 640978091 912 494912240 483 47518032 168 620832699 918 578440683 492 216592999 616 301883325 176 907540717 477 678707648 791 988892140 6 935452688 864 420224340 912 223533498 731 958647123 31 404066826 449 879372412 913 253930161 186 742879969 812 344931593 1000 39466857 747 951177761 961 126701346 91 391806935 705 841782679 1 297151223 279 800901020 154 399827332 834 276928305 909 438485880 330 88465348 753 649617533 258 393976291 322 472994635 814 984305522 530 68185543 667 351471663 214 231630088 165 513120639 319 705649730 719 338791502 116 459143693 479 357748486 79 980727343 849 96683165 754 830644027 837 642892188 391 379525453 678 506827989 574 833989959 829 896889063 829 508406966 51 61965398 602 236229124 371 312463196 288 266946686 801 995156332 365 444565556 793 887265549 414 400995304 228 873727066 899 528268068 205 981343558 503 559702134 486 932033915 963 765533290 206 581403990 16 667810954 25 712600387 681 769113671 116 779657574 220 479543809 803 518904744 371 303842545 917 273500481 79 488728676 387 903255145 385 403968649 72 776061028 510 343139468 231 503429358 650 17256119 538 834291780 36 300610762 394 967684991 506 471168866 981 702814258 693 615355830 39 76895616 878 231021842 616 650145227 822 691476594 573 173846158 184 159479858 761 180316264 86 394841145 789 885523265 213 404118425 432 534377090 323 271189895 640 285062346 36 852122163 387 95705390 142 656504273 701 180580616 745 992661260 329 733519817 527 291081543 386 502296257 76 994684418 836 787341232 278 118270588 431 325764889 174 518951749 987 505599925 837 211583133 777 717049898 495 310985772 887 453413644 616 848136053 13 273252157 390 398297112 406 536819467 811 983017235 599 736722081 488 135533332 926 164295599 64 20185731 140 360031467 16 256430536 188 272274670 694 384364248 191 574736574 19 871340931 60 706765598 311 268860573 297 752619965 334 855551136 257 367042830 747 137291180 609 619607094 64 869412672 399 598879180 48 301111769 692 551012743 692 226908208 528 523152818 407 461155000 821 241867711 351 935811395 860 475062422 989 597824957 811 835031194 11 526483049 195 379159272 171 923997866 262 234978981 990 839907923 937 637413360 419 249586238 911 878316540 87 986951460 213 549912422 554 59548422 90 39982045 280 697358969 77 932618293 85 176490704 313 144576837 769 348956887 646 935847303 567 611926655 319 833306246 254 128414409 331 166704180 997 491589932 283 395030103 191 57564519 836 993861486 532 789686259 455 930845482 743 395114777 431 503996111 558 83717156 445 861794564 541 640978657 790 873702573 634 649128581 208 460917522 310 596963585 648 970230635 552 594126037 139 678036137 967 671541061 866 645670801 131 22509323 741 870471012 808 617990992 644 723890883 323 228407805 808 248161217 795 738042547 174 417926662 687 725911975 490 93743181 192 217461063 204 130815977 645 686196675 527 510993085 234 130025715 185 160046365 354 936695359 961 173299556 738 443648527 784 255201961 255 568136722 764 208304090 853 832737910 146 937292404 994 820488278 847 960955905 325 638453778 935 625576286 591 39703648 183 15762412 674 428866815 419 490222321 885 894200099 27 763610479 352 548786689 581 246707545 6 125753088 163 405636989 559 458992139 98 621180616 428 300700698 684 98718361 758 508696298 372 515614756 911 411467793 682 193825545 134 813108115 839 365836986 842 472444781 498 368614095 870 572642655 223 578975613 19 93346103 501 901155677 418 709554979 0 681717727 884 506680304 542 369021354 922 313759852 328 820331228 845 742589847 658 532049948 251 18279715 852 560387221 308 676706597 240 88594985 294 729452012 393 642317422 207 278707243 983 168926721 275 907984456 817 53163513 713 232313604 608 213930835 504 784971065 664 660476743 761 707190727 101 111738523 297 263877306 612 128614277 228 190575532 888 169942573 971 571745332 573 427457018 476 291063325 785 379554800 737 5728013 102 32917788 267 529396969 937 161378656 32 174451718 496 581298074 813 494257240 859 24906318 889 297845338 218 752318996 852 532149509 679 509743015 731 950984715 769 40450452 228 441737947 972 411164525 952 938561095 421 526202021 71 867292861 98 474545800 767 193695201 616 497006496 56 741788180 55 955473333 510 411704561 225 936351382 126 877603019 910 364247073 704 159968935 305 519327677 140 470182571 286 630685982 750 949308813 59 884156243 537 950158236 69 56913166 800 852562487 68 83798111 761 588501082 999 561439609 979 681208052 437 784561544 495 752967666 748 627666610 556 434953204 949 933438392 289 426303324 327 14872252 467 135939956 762 897698614 750 805981019 267 942424434 636 58374137 448 168789639 902 936014018 594 547685407 380 386150276 20 713161425 199 562102231 725 74057439 777 632725519 197 559732006 236 538898303 695 381344999 959 22223812 975 950154164 394 769741144 173 655889144 8 200205222 569 260938439 653 520761091 972 908990083 341 487605514 443 911627041 654 185911635 572 770777764 84 569084152 619 161436764 205 477890443 254 294202421 923 160912745 18 880766542 938 419460163 579 145324178 57 83661763 228 456591678 167 838552372 556 185219912 124 335455783 58 135142410 754 931832075 680 835398849 205 966096330 927 293779899 331 226536031 701 584803281 129 632613731 549 140482685 882 373934170 92 957799174 681 741426522 836 48828236 964 426440727 273 296201175 995 686027640 675 99041853 495 607349997 149 266775210 550 703675772 30 38390162 26 372141825 325 539848415 404 37025527 772 934562667 937 595338088 299 838403326 607 551020200 776 914478331 535 364251448 606 6440525 190 605434173 791 764751358 141 973544971 272 726677537 373 315711216 35 80681785 238 762045600 79 567034347 128 498719999 536 306088340 842 250522853 324 557794032 502 539173051 562 755832275 701 439278459 615 629384938 272 32800248 199 976857989 932 7826355 624 575164391 975 998988630 649 231454903 4 473340518 588 621783244 829 377871638 175 252220476 337 57823270 838 424345264 90 527968575 926 537719694 587 617671075 1000 320494258 650 518473363 890 852514933 194 431753363 531 138140768 749 909796857 912 684897770 507 178544854 325 30221418 20 312121888 619 1405862 396 889436727 100 677591859 794 570468508 516 268186158 270 686290583 179 3523293 285 712394738 287 71923374 624 9524692 845 811843820 819 646774200 948 832332841 680 838682189 386 174930414 62 864577407 817 173757214 932 119745665 181 374659206 8 235807644 818 770561664 363 869702769 682 26321973 129 95049163 673 123030580 496 191991102 932 71910425 232 305274616 825 295779811 995 162304816 477 974635233 979 589925387 908 38771783 84 142037836 14 421599460 954 518390989 345 869788226 645 228692388 389 484682800 290 232667349 707 556731071 916 461600456 709 556943814 764 222222764 513 288334906 678 171318784 694 667765985 943 106817291 834 224721258 711 346987155 295 697956544 665 401515145 956 887589834 29 961588677 173 208998447 118 906019799 37 992418377 72 848347289 721 556023406 581 403202733 369 381780172 218 429678110 434 134039757 870 855766715 350 467633121 259 846835203 956 433066561 739 365113965 597 586528056 744 573336667 592 791903043 247 334170641 719 59251851 460 669098469 2 26051845 890 669944479 742 296875357 88 551981744 46 171907159 946 248101255 525 76034339 218 923091701 746 652303873 298 191560563 60 973915966 590 611414654 847 667163848 187 356560709 888 754992286 683 770885661 72 633353576 680 833951351 949 738349306 158 320522829 21 776200515 845 418875908 418 94293290 839 507637497 457 689834900 834 477542065 674 494050996 763 78387515 414 491978331 270 634932904 727 322496028 112 345032600 718 126581510 31 853296591 559 860263290 690 391148205 880 764975460 111 979641419 941 660649416 945 601605385 299 903266734 406 579758236 49 871583875 219 328184189 7 582125916 244 950436742 2 771898928 555 993714391 203 927419359 170 270704876 132 300847825 341 319881413 111 486346302 662 975890186 42 640211433 982 17281773 993 679487128 363 154116428 296 897187489 510 345269702 790 326483800 828 423037154 382 955835593 551 545455991 942 289181289 875 455696385 990 484578046 6 46031301 807 454377216 285 702397756 299 44052297 895 432190384 761 414373899 827 678037611 21 582249958 92 242867534 116 7460418 903 518186283 121 691125444 995 705148824 846 178166428 650 760314624 575 66495893 379 493447483 532 629356015 372 897107895 442 971404630 525 905511600 381 286952642 592 516690877 428 156806715 254 30148586 691 373269329 895 435333690 61 252923452 217 718020429 894 482443425 936 314794229 984 226114033 16 238953723 794 764086680 930 162243254 378 435039583 202 756327996 773 344638914 329 571312246 405 865799875 559 28639093 138 833835069 0 16988912 558 313390890 41 661674423 47 460086016 384 149783180 851 365427519 849 692522186 253 43371849 277 242484124 257 93060628 837 336472978 333 601425861 807 892032843 957 387062497 271 9071932 146 468160134 580 69053180 404 769957507 929 901514322 860 86965657 493 258269331 806 266040206 17 411470020 106 371211814 165 867232678 981 75617321 833 616249446 361 29483215 215 887998243 834 91514747 250 933301703 81 435839696 570 522167921 894 199530788 548 504000110 871 434250667 969 744055952 974 878602167 182 775234227 7 476895297 761 199675606 817 76581127 967 30842613 761 810907268 834 377013089 464 447768711 865 887410615 553 574843658 150 427614643 394 716645759 503 270550094 6 547540187 516 438014334 843 865071422 717 912129013 124 933315222 232 586505096 611 242769965 540 979481139 279 793340026 521 421645794 406 206629726 521 872461616 665 41459481 983 163637495 314 143317187 18 689562341 716 175354084 453 734488550 421 473287540 925 418216231 496 717683124 211 648846509 230 435631715 20 343595065 851 316227818 215 633129836 23 373348148 956 342382163 691 36613796 176 125979782 402 338924572 601 121909650 309 394224318 706 90205826 776 523866408 431 682271160 7 995184741 365 872230797 507 418041024 474 449402006 972 552982014 39 13335300 480 2054720 286 793449679 4 397063906 900 618861159 627 320805539 705 483667270 110 649561758 374 321193455 643 259695317 411 899495627 53 917043583 300 755568860 507 380073553 512 474362959 267 951975731 706 60505355 619 992734075 224 62889972 948 507919647 380 240329265 30 738659283 608 802745597 821 353069003 318 33280598 525 199299737 125 156416044 858 782039348 400 944471823 620 806010894 854 426369732 864 880226165 540 715788767 293 300545320 278 780890059 75 162699327 551 657492153 258 10400149 328 925792032 503 481739217 890 557762052 509 217697993 790 551136817 464 508881864 568 170412580 457 344395270 157 575319388 554 757288081 398 225155512 362 372286920 373 745125381 727 409100415 874 774937117 997 526943718 482 496800728 524 346807825 605 18399037 214 191089933 486 187933196 972 670166321 270 184557503 587 150337661 344 455692059 414 133869175 624 566075406 455 669937652 426 204040688 546 36517984 378 501803225 876 212033356 152 85481433 520 888975169 646 491982914 845 621126969 195 321105078 141 101960689 730 561925270 693 829486307 47 67203613 616 452853932 106 933684850 154 684163501 953 260447572 13 398526766 652 485894841 863 511167786 286 478190016 173 24146418 25 106250229 499 124295386 547 37700968 305 541709258 83 629763031 873 262120491 439 588174672 318 916271008 787 215210307 16 612914763 719 614231008 570 208270740 222 891312871 998 588190168 80 30800258 332 262565695 473 457117619 118 183810164 7 440615600 616 788829554 304 562022921 592 406892826 869 202724494 529 343483207 858 989807551 10 885946366 52 816030826 739 729746117 509 512665787 481 50877086 337 812444808 566 916247559 837 383872137 350 558960809 934 134438780 979 75657988 399 787703715 130 682764809 503 240865989 50 692035262 167 825960227 994 552455206 597 433606342 178 891641370 448 772206863 940 370756277 338 802066418 734 946498054 972 65690724 939 465079850 815 734532124 241 416160157 151 827358941 884 747959088 461 539299541 701 615163830 396 484879314 509 37520036 152 671500187 659 34168185 784 135207329 708 388115521 477 31324591 666 576404544 491 50442156 374 189857381 489 36149067 914 8709193 304 358616476 89 93714860 450 383249042 883 280649063 725 299077656 236 646339480 589 931609763 418 176220496 738 501977761 269 162732065 745 193684296 567 956787958 406 274593802 316 33024166 775 43903097 78 595150445 447 771267360 766 196666532 84 583604194 116 24529768 781 78575395 100 934340747 102 862787718 612 805703354 120 763566405 621 543599814 439 658075942 340 249303396 443 136293548 56 219829127 281 850055156 91 700844655 982 765806871 721 715158490 731 328981125 337 266331302 652 962619455 27 853530975 113 832206108 53 515376380 355 880678513 170 781529012 571 928750937 458 781215260 386 876736401 183 913682862 14 590759136 597 708028186 541 411923166 888 714626363 826 264945151 970 372778653 287 736082705 86 276517268 806 881418302 663 297558176 987 730743381 713 568046128 87 26875790 837 858771942 324 32175658 883 202767143 940 130719029 859 13098229 550 537561565 41 110410834 286 954589115 654 307029338 629 786983930 955 946669894 298 133024675 369 25412023 135 133582320 83 168139329 646 959270263 110 439300565 222 707899381 938 183494323 845 567567469 333 114132689 127 316117876 474 368331693 345 451958743 717 922496088 964 782604943 901 178206474 373 722423470 776 764976910 116 139613240 926 50312983 579 694030913 186 845731879 39 833617825 779 231572496 381 212354892 64 499058524 991 522373461 143 104343148 543 208976951 461 987071800 499 409881141 891 336587723 765 176842276 971 750705595 750 867356006 665 690231205 658 368095504 967 330842893 37 902189823 54 313338206 873 894446259 991 503563010 856 415169411 865 979804479 62 636872464 285 320260233 81 655588841 987 283735978 30 445560874 396 149191662 51 198988836 479 974578667 467 609421418 49 488541846 18 549107732 924 505562449 709 496117546 221 509964611 672 900562342 212 994818860 873 987295369 582 943494734 623 963303349 863 150769609 550 558521157 654 423481729 472 193231397 636 549732368 217 573023979 255 215673309 975 620500198 13 414493235 589 76443462 86 448999121 415 535496535 819 363956325 722 728400442 699 316705210 28 730706292 382 189027871 593 355743554 877 780823474 272 51181614 917 936108534 174 307589179 256 334410482 727 129024936 544 45942788 102 267926337 947 248233582 726 792386489 322 592803584 572 451213977 864 707447255 409 266590971 503 571427965 508 891691464 125 483419610 428 91456050 862 466498617 66 505661226 914 895764372 115 344429528 710 591204821 758 920647853 565 832032647 795 662913004 381 260801421 69 443551303 815 229655278 523 68046847 272 576472846 739 40614257 857 341931467 197 801972858 190 794651779 810 912845080 338 298307594 487 789075050 101 888872078 309 392168788 986 690190628 84 447128901 819 305289356 788 925218506 342 679653850 833 789069748 143 639316993 421 939398452 901 412555167 673 51965838 243 718291232 785 558800071 945 323652327 420 889965305 707 682424780 399 864003772 630 322585115 659 819580396 146 73484536 532 87979617 262 576282712 320 540805221 333 48145955 132 435535900 249 320272405 744 811268749 881 488523700 309 383468656 973 685720723 327 690030762 10 348312005 924 111980833 664 959960559 86 578340275 633 719817957 55 465044540 8 953170972 677 212042809 248 870188836 435 225952539 753 382559833 298 609854476 358 829080381 823 608718655 909 839091497 987 748260729 374 888159258 847 131592703 628 849825606 680 630942971 927 539053847 986 449171288 971 774531958 68 169950670 532 780909776 378 381816750 886 3330365 746 185180100 337 782811899 930 96080482 610 10601221 203 446432403 498 240116335 75 300452152 738 66054287 728 900041671 616 284380331 766 580264826 209 952961172 32 454613028 362 922209035 443 407847199 873 580739867 434 38156419 248 661352516 50 598199513 419 995839455 536 149388067 416 75240460 68 195941609 618 404839380 134 604891359 415 401243616 587 844120792 216 807443942 282 197528188 107 775951705 177 975649661 954 57380146 155 493217780 139 599088953 613 28586780 869 427352447 831 364570743 409 890988428 98 56564420 172 891857509 836 776562757 823 423025405 929 850192046 802 477704185 573 752841469 720 728768259 658 262401993 702 681430815 866 508006127 41 987431812 8 736392225 357 681380242 542 530598505 48 459163940 95 338377643 133 698686646 415 547800461 869 584802778 734 212967430 415 49194906 170 278890093 738 1012062 326 572160816 180 239205082 103 166722340 556 309360702 328 921995591 97 851270657 686 153230194 575 354955684 404 229069275 370 296959300 885 444301725 389 753395969 316 229012314 710 314881950 945 357426694 785 324683599 430 283226816 291 145896599 956 614035948 619 58676518 142 289305818 979 841004678 287 418042399 283 549216575 577 957169251 121 350615136 906 346738522 247 354503321 737 342137434 37 401414329 811 809297243 470 56952197 628 575181245 104 54691712 984 705799303 773 95905464 652 23340961 641 791095348 697 22566243 260 509214803 478 761827857 766 879935099 95 762718840 484 850285390 192 158906491 717 663393142 753 126970318 276 811553747 576 915492093 875 390135033 102 591765262 586 284530612 421 858649000 950 988022419 927 656981926 885 451599528 469 713067405 453 102541951 705 791088806 267 599430458 308 258687856 386 668085934 116 540864050 152 989427017 493 895331018 221 176648178 687 333193446 686 38015636 488 150476781 123 856240163 145 456747629 802 809175171 70 962602590 84 189612374 631 44006020 993 81164255 728 220221619 43 326237015 175 56435537 856 976960011 663 640973872 927 831860989 853 229519837 853 543191935 612 131959937 855 663763106 608 864981124 347 964229094 101 668029588 577 88166331 720 959492370 31 291000385 698 633132409 503 27355463 758 333792637 270 248115893 903 938849130 733 564366681 351 944613053 979 178928289 848 810682661 51 130025966 188 63848258 281 862965119 475 37035576 979 287496484 47 524260721 213 902001057 198 780170469 529 263531971 138 147211649 474 540228756 263 31397440 962 621849620 152 833312750 279 342727238 236 386761583 125 145104395 174 522754832 286 251556155 813 701044562 933 261976545 970 38249014 656 452504793 890 810569091 402 328794980 735 79710938 493 894430506 639 877283418 528 448924726 392 229929403 573 241207816 325 89313215 259 934917299 935 818885390 514 142915724 769 10409635 947 486476823 125 76205295 257 49991053 445 489274992 809 965500080 195 212586973 312 827117833 219 806866766 480 700831265 328 907162969 374 879254721 452 268586558 832 169162843 125 96765684 68 407404239 712 773629723 432 145813732 581 557758934 918 298295768 688 486157096 305 381633602 820 289357873 789 382407854 639 962221099 866 405857712 419 341955673 138 123165031 597 336429137 300 327787720 60 152752868 980 795439297 110 621197487 106 666764082 942 281764994 434 932786653 798 772075107 688 617947770 351 844207794 159 689563116 210 196713486 716 431401214 18 526620192 717 459283102 800 536162256 610 112779780 824 225217528 331 854474378 704 117986580 453 628061781 1 532164213 928 312701231 164 480750637 571 704180054 104 878008347 931 817073678 238 342755055 716 310887285 928 536453111 873 973616208 93 871343481 380 177398602 973 676262048 329 902521979 444 465794535 963 207769994 602 15338458 329 696746700 0 424250726 76 881257487 391 312642947 357 457668070 817 391624633 780 815084340 482 407878901 18 915186796 858 749571806 346 531376665 916 376822097 68 51205970 561 249617680 532 798019888 649 155474552 470 959836377 886 937019973 774 380501380 562 455305193 645 212497217 706 177180810 437 962706380 665 432774637 402 129412304 354 209954040 551 960633141 447 693393439 513 150525953 521 362132933 95 882701146 516 762428542 547 161270550 640 759866221 43 25362581 87 936951943 760 412350387 698 361709506 84 312542523 742 382378568 432 142615196 109 192235240 351 24697992 875 309963982 998 349944635 330 968737532 114 696776102 666 455670093 553 855244186 700 778043114 282 297993149 964 946694487 275 559702001 184 217621162 607 219514333 867 747496620 409 637791452 794 948013995 866 562280005 847 498930799 146 966430880 740 578835320 703 255876838 188 118979765 989 83187018 582 472907205 622 272080878 674 954151627 579 815749455 403 887958269 824 311431385 979 768868460 114 749876465 825 453494142 651 485611685 483 558013779 857 560526131 48 545827782 200 410720850 360 980121173 609 340418205 927 562735828 777 786482731 290 153407627 991 63681325 361 139712636 741 655155435 546 321296205 445 371520838 349 574959841 700 698777097 346 945818458 911 53832843 195 929780320 290 583308050 574 290072994 866 134974272 205 343764733 439 813441371 77 781598815 733 76515337 835 366126270 151 589802171 988 849079007 300 828541019 367 108345644 700 145601317 910 764656246 952 676080241 59 583254633 752 483377724 246 535015463 635 445534902 984 699161302 779 365797354 20 354048944 323 917948665 826 711497524 138 819678983 374 121570407 592 738881729 422 137882611 565 980250903 417 723668654 1 258993669 802 442388515 28 810830709 805 374785879 997 104888790 321 159711504 68 22318190 296 380724054 933 654744765 936 134078867 272 636422545 244 851891931 977 358564067 211 303258892 223 306611139 533 138815715 684 621482264 273 609104985 337 647782293 299 831735911 104 891729502 665 627092747 860 994499016 298 456302997 655 801269570 51 911884130 321 12552052 131 71617481 57 385396281 325 323015663 578 435680394 693 91279194 229 795660407 18 697436969 416 484322563 37 869989921 673 354382608 656 754644370 885 627119667 558 806780767 839 613513621 451 894402690 537 330274913 115 62057072 743 742245572 760 433781515 227 897754388 461 636523811 673 547302864 916 790059493 365 57393316 794 734166239 330 172177582 709 461089388 909 189095426 181 271317600 753 860262585 226 325882312 879 62347458 238 244044357 989 571546124 991 267767140 343 417714967 332 49872087 752 544183926 360 331911589 862 157893605 430 181017488 427 780045593 676 853049321 219 970537292 985 64615849 860 583929519 405 776258174 258 635736364 969 596166337 216 23783505 439 286022065 144 865927314 85 691791691 241 298362173 841 569600255 346 846521199 939 532074515 342 420108064 73 136358624 651 500794290 782 826607377 22 508354665 979 580278800 465 52714619 938 984538051 349 256284103 811 136620876 823 133716181 839 64865341 444 511258001 696 119945522 209 731713693 422 510575786 324 807340312 665 598395732 821 50210943 237 770498683 745 870384417 474 826232982 666 836483084 433 691637273 701 271161172 789 353314506 75 972164048 393 733093451 479 41317409 753 157871260 981 399123379 198 866119686 163 223842699 40 797197622 845 298245011 391 134145040 244 45499789 968 129353871 732 975210105 63 454574626 774 539062476 571 894993353 576 850208330 474 792891025 754 379750718 962 805197873 612 491716226 676 331579125 948 422428644 659 241270601 73 943735636 927 839286797 981 455427946 880 606690228 459 68014421 427 581801647 306 694334319 482 956607624 48 586669131 718 954850222 10 374052483 779 438568157 191 452308938 862 258214237 760 287306544 92 732077555 792 172238155 332 987117633 343 747211167 420 556209115 31 596967353 415 628811376 231 500633831 196 395703561 718 610013950 80 133961889 212 775358529 368 70678061 373 687172296 641 102965673 613 19243800 870 20465428 44 716727555 444 936411602 161 623058476 404 868401524 822 268105690 710 344463005 108 860799189 1 925262275 190 377080876 756 34827794 981 890411653 893 16154576 38 614525995 78 425355702 360 421872523 296 886833485 295 518443698 572 197323309 452 700129299 638 946050302 905 648595760 64 334901348 608 54696518 91 151667055 290 175059778 928 30558157 189 319387269 131 951810334 323 777902701 181 429845951 835 975845123 805 726478965 469 227499178 785 187528916 472 739837732 370 119163619 879 4149780 682 181306022 646 519711716 858 991294963 961 317569326 956 761330350 149 853159140 437 765118804 495 316451152 598 272154666 744 269172274 570 195543433 311 127866603 350 861138341 306 673216624 911 154552955 258 374117149 727 177064656 679 787342645 376 120368829 369 617118476 226 841074031 447 28102554 588 999246552 602 748522707 428 505122837 134 311452146 926 360390710 24 635920131 607 265279044 612 221096425 713 647833217 242 680630165 557 620744228 72 479706384 71 568116568 460 574398530 992 222720553 455 11639256 323 976300855 489 582171165 756 129076521 624 472351051 916 857123217 528 711567820 239 539663072 228 547642530 26 739958773 617 71437822 255 605161398 896 927172244 429 789083258 18 635347054 886 529795628 562 542573121 5 706217726 748 588236165 493 912177116 841 701173462 356 72690091 982 709409471 709 262951896 159 687875564 966 863646871 467 963166321 131 523586166 50 657724454 808 350382957 52 107955352 318 890853263 653 73085908 962 89818112 690 479675757 338 513222489 162 40374998 673 251580733 310 554120296 723 616954881 621 550647968 916 829233324 373 662321298 449 560537131 751 172842946 465 837216940 131 925430400 547 185147826 98 232849247 399 745406453 326 841957772 476 527519355 810 393878270 820 625196701 755 456444492 552 161419359 216 959501320 745 882341307 482 653048417 629 88029566 811 932976808 733 751023030 428 55815990 312 934290309 75 829593434 439 276216486 96 804825349 488 494062795 956 414148627 864 911564508 194 826217606 643 659626320 347 107336809 378 920278819 285 875542005 642 535819495 830 243833048 251 797565426 61 28797343 732 861650949 897 22668190 776 194567120 901 73740036 509 155739193 749 683980751 154 692483400 6 64059527 928 223268959 296 959896509 465 110219740 494 683826696 757 963856424 853 149573101 380 439489352 583 12972208 893 987608717 836 7013777 184 370352789 630 312465696 603 96625291 763 384252450 999 612266609 699 61623816 472 961747541 592 746696288 896 145254294 187 226312009 222 241312471 602 105375215 983 207080122 184 182568850 471 237563287 960 441667502 356 875297160 790 645269481 275 280435899 563 132053912 821 359204204 18 888625417 961 437030674 808 432770785 55 528985871 494 603852867 499 697692387 727 568108737 833 97168250 551 391137900 80 578206959 140 969293859 617 438060060 864 396366738 822 976570824 929 164505394 368 720492368 490 603032946 910 358417633 431 658575656 316 573514162 106 487366642 208 853595474 608 111099976 477 152679781 665 258970462 578 971648781 944 356556248 109 385659734 157 105475896 282 96793625 934 846865487 949 577612399 823 923674877 690 729671816 991 714077087 108 738404521 987 864400274 940 99160478 910 749640074 921 72166826 388 895220028 670 282147278 161 632314045 945 423410612 671 299274453 156 399896812 192 101406848 945 972601169 787 2232765 197 622307985 110 972940043 330 412696417 736 487609617 803 373877417 480 553074999 721 242583635 601 848028736 504 33851360 460 625513228 994 47790319 461 819881751 961 251324124 707 592781731 511 418011341 145 270163329 454 165505839 511 758829644 234 973323644 805 841154587 870 68474043 692 573410175 442 792466001 231 43763965 342 652909289 705 737127568 50 76686416 427 445925109 579 409269099 926 532352830 371 688024330 522 592655488 160 277034380 437 733942211 924 370670665 754 548250121 637 669549632 103 439131039 144 620090971 928 348638368 524 318634616 131 913101689 502 371914788 834 764015267 87 406780460 833 717404636 868 188595980 883 781500088 756 809637373 418 889881103 143 300122674 160 482139055 666 776167850 666 623585247 107 337419025 108 274979312 764 715917983 987 538753045 403 475588430 707 38138629 368 687583734 684 661596481 369 445142760 575 188625115 840 485814863 851 75399878 347 330967443 1000 255896382 683 502048384 939 472545345 478 38128577 222 63184429 108 515950751 201 392795445 22 592444220 940 504270737 160 457206518 568 17078 311 827387795 180 772664668 690 543535779 732 338774304 127 968838324 670 176405566 176 975162470 145 604678175 826 91516593 591 135105792 514 895839602 603 48190695 81 153882047 813 982863212 625 24815023 554 333886699 175 853158051 6 476009445 312 413766949 764 55168822 144 634381193 314 516259163 521 392793794 318 720040078 666 255354416 243 759829071 433 784878484 984 796771530 575 157464531 189 127111166 383 602032088 660 823659348 513 651110984 663 483238119 963 534402681 871 987622640 781 666762187 29 84440109 687 509710557 536 459001345 737 220166188 744 727039075 565 244010184 370 723144600 152 558308898 541 450958416 701 797429369 520 131657963 286 627430208 275 260573419 697 243524441 393 431023630 971 787659296 878 673867835 485 170224522 335 498467713 237 249544124 458 216171769 176 723308477 582 20348970 884 430496180 13 239074191 597 558878694 64 709490276 382 353002313 323 311439187 866 736099066 60 40327008 35 783524209 530 349347102 560 57192560 338 252512755 20 793576673 571 548172282 783 710473376 793 299854390 153 483851436 116 920782620 183 18325366 32 983231239 907 964384325 478 500793049 857 426283286 957 774528088 251 935228432 670 619371349 383 881543299 370 491049686 602 228013124 761 975463515 353 624426791 886 578974215 870 641593196 958 318755281 3 447191178 116 692335484 661 452800453 786 597299443 743 964559619 787 743051345 866 90091033 445 244800796 44 324318789 61 34722171 457 96709134 979 400017746 256 796166835 573 134895332 375 917008221 206 124828136 487 251880817 162 656555072 943 433685729 976 298762126 88 77204449 773 35295644 157 873846131 461 893594307 791 415947997 489 601610507 818 733885867 706 138915738 893 126041766 87 880629381 466 173465012 657 171827330 178 267390794 627 120528372 535 833336237 499 423969313 684 288356885 69 44502641 746 566805752 333 590625556 514 77140760 846 373368267 86 531361135 952 168315457 763 363965083 9 433591613 367 35855864 945 443035226 415 116451632 767 545918212 71 168022668 656 895372003 124 869465396 982 3927665 783 621203884 226 840951619 339 242697456 707 138157802 220 849210226 437 382832194 168 987060605 1000 315866430 497 8438756 924 150142271 678 726627558 778 659069700 160 114659906 397 347382854 219 556805133 484 695128419 335 782593417 186 582719811 884 128714779 358 991764923 973 590719590 184 674482214 489 619502674 149 941439040 756 812011198 906 420289991 304 139422586 641 723925755 452 149886451 228 735154902 683 72861041 277 332653524 706 527887980 416 299422660 994 646896851 494 833778468 183 544446740 670 207836938 126 718273064 883 353822690 65 735156354 21 559400171 622 488538379 662 400770572 825 248318025 787 23254862 503 436524118 998 627571228 591 255945969 538 257866484 632 224759963 70 678647706 832 340202029 812 192642664 476 4285568 964 831560278 751 317087265 720 674969067 475 273886665 685 190899480 64 340008698 346 21168198 817 977217824 876 956038083 339 82010241 750 481623742 216 789684888 126 43963114 436 796791964 452 175914621 241 995779174 241 707007814 207 879324479 70 962117060 329 833748950 351 515649485 411 830952162 473 830198706 900 765450103 711 974979882 138 500989681 416 935456164 757 350663585 184 356785012 651 823660928 252 933620823 577 927311205 632 641066416 739 532207854 305 438923996 303 113552434 516 585113772 477 450087944 915 822628539 25 379381288 911 168842439 687 564194155 627 381908622 631 361948412 812 262811717 326 123316100 654 548403435 945 682315043 888 983075246 381 850910081 367 672086200 651 257365071 507 522004753 856 228590158 464 822917474 440 794193684 654 348872026 252 446558495 228 54921481 373 676011739 748 791115433 116 742352200 15 145946172 469 839422052 542 228033850 47 691852833 588 106853742 665 458819853 676 698523281 519 457275298 719 794171659 134 271258619 659 157403417 832 128250154 100 167807198 360 774762428 471 82491912 909 990370535 152 167740207 904 382802692 666 639264518 849 136335105 957 685519634 39 205506851 416 930633656 358 249561717 548 189265128 960 218561498 251 586689430 348 490479150 487 830836949 388 366046148 944 845901320 851 740532005 434 361844029 297 359655486 163 524447474 250 106006029 415 135483822 945 202899880 409 102368619 260 208288010 819 529717334 665 379858453 909 530874003 434 302781786 111 329138944 753 708214987 488 184052670 424 484827605 353 102047176 792 949150448 469 430623108 420 828172815 776 471891392 527 285419011 678 116477759 61 787519601 288 149031368 431 663172757 777 756806427 700 617992305 397 276551768 430 939970241 127 26957445 876 76935597 77 53751823 917 871824052 45 739310031 575 409388827 614 30283181 932 589239588 508 396136575 180 557262953 253 939866309 339 252902413 116 494328811 665 858808913 292 319404156 567 188578062 477 316825263 141 898499011 4 999195061 725 674716521 958 350774826 339 517839170 105 192783483 12 479733730 846 321258548 78 545116026 776 543527533 680 312106574 245 604968433 579 771596529 988 896882508 989 107048781 831 318829416 532 627819431 380 725559295 956 654030881 418 54400270 295 297743031 865 292159916 282 43601026 658 203174669 919 208356809 732 293384387 595 407327830 614 658067382 131 102500402 124 217022335 519 141753417 655 32578104 349 458331148 252 383819291 68 629605794 753 793984287 27 612339048 390 630539343 458 766295946 584 908882058 113 34136667 944 776272680 273 764342729 64 668420213 922 740864399 49 650119773 635 430665836 353 623275298 641 315949606 145 289913451 592 649703218 928 561613838 366 847553522 609 274530473 279 594359594 408 408138198 689 980411314 139 128524014 335 585552823 248 995666936 657 159844526 574 612127113 465 652882428 263 306098352 572 475317847 263 353961944 407 229480982 401 694997892 192 600144869 204 65410651 427 712232712 521 750066646 591 245169578 339 491119512 839 312113158 7 284701318 709 92880968 663 934023911 851 923277737 917 793336157 958 207268659 901 127011927 927 796965541 348 852756230 602 785420877 20 671705844 115 461609106 290 353266329 199 159928323 788 83347651 619 619083530 775 989598419 891 422694868 10 747983763 974 120183764 66 306130211 444 557533772 729 279899806 605 521224443 707 606269451 688 743149181 578 1955159 198 616785465 367 84710260 871 360450997 966 255203003 959 873348603 555 507343801 607 512258613 454 483589798 418 780140105 481 513174179 271 685953500 253 359360906 468 771767044 904 156166850 530 519171680 812 817806647 599 680955381 516 777059926 530 766240313 739 960253935 560 511461972 140 252828652 678 865118269 122 25018577 784 940051261 592 428740345 901 488306879 349 340979139 861 729486047 177 446513352 926 359921187 716 781310848 612 741275732 434 772945354 536 849206189 596 517307255 467 410134269 520 372502478 355 475601725 296 59362877 512 51021600 392 829572242 882 210447376 247 402236505 823 188147432 662 561403895 370 98112461 848 529367234 628 182678438 940 978368870 27 52697175 920 12344667 102 12774697 103 592703345 345 66107251 233 733294648 476 273695002 569 558600323 443 343369037 17 209797472 990 103036957 467 341284751 321 100512229 550 193614005 20 144778638 171 581442466 721 145276161 19 423937857 767 173219995 625 461210319 970 748084525 177 889671096 261 838693064 876 971558356 976 890444538 863 97646658 981 754911366 610 61033890 13 124374083 101 603943862 554 463212858 572 453236708 366 96431083 218 176521637 446 91517075 369 787254908 481 251896382 214 1367535 377 914231701 402 63254261 207 133991931 334 910128162 884 32141557 383 966552572 768 277366707 887 740765889 2 429991663 0 113921494 451 523261432 516 400865522 399 791113208 597 933403025 327 923852039 30 102721747 50 275153752 382 441533389 545 814502387 900 741166882 946 35416577 534 964410112 371 312956714 678 715085640 139 745725729 841 185579403 125 626999845 34 350523344 883 616184710 875 506964104 128 842091573 2 973047193 295 445783619 906 919706336 313 662572277 537 422888184 312 613238723 970 851327339 536 833891145 5 486060053 261 43742641 8 608242409 887 972465357 90 215597461 481 787199180 437 727581598 620 185831550 955 511154556 320 642163370 776 32708255 185 242001909 343 166123299 391 275859146 867 109682863 546 670804860 810 821149929 676 427442247 21 467462997 642 968888117 578 502847406 684 713925836 338 9287870 73 70174961 205 520731797 944 729937924 611 57893265 734 26284116 130 363490033 107 354202584 665 488407575 326 211539621 771 822154125 471 84560903 920 828966612 254 843616148 71 928703265 374 26850013 252 139548476 906 674954718 133 322563728 27 734422976 472 103424219 656 632677279 426 446595484 328 729615215 659 492871661 216 999936133 437 792223497 963 704385831 963 222336493 246 960093202 852 617655518 50 880064546 115 314104009 793 375125815 132 690062961 798 284242496 477 592567715 787 842855279 849 59747498 161 59346329 319 232308809 80 369108188 825 31739838 519 543121414 166 806567848 182 428799656 134 635949256 58 787420271 553 317712262 838 329332288 50 581103442 358 920898836 959 223075051 646 856827928 552 684165269 656 586246684 946 338112795 488 513013888 667 266546576 816 897635566 224 856859479 143 753380618 329 438221707 8 805482880 401 999740771 788 272372908 3 475284110 651 86872301 600 177566543 233 958683799 224 850806768 307 275935404 289 675710192 964 202842056 681 972877068 582 667481867 850 29264597 821 730534128 793 959484647 861 931668958 258 978005712 795 21997121 789 212774038 673 350417770 436 44688486 363 470785189 635 128981663 809 221252712 472 101359414 74 517038976 549 954329479 436 494014883 708 609267956 25 849516131 19 776842069 149 329088042 587 312654612 854 949566969 615 406474568 828 988462221 987 928544351 140 684244121 554 517168616 838 49163757 625 622946135 177 270494150 58 184175826 255 426036400 439 990211844 365 408621611 157 567161550 963 6841714 116 311722119 229 500153042 977 666859025 710 924576511 652 469756425 499 600132713 730 826578045 115 929383511 18 362962166 872 725347510 136 9461944 175 905643785 676 840787792 350 750021567 302 535616268 947 702895663 261 235589717 654 391601256 48 331044827 455 513455544 714 474252411 342 642264262 294 844648890 639 147559855 299 35473290 429 260112133 148 272324257 60 172370666 79 676436489 358 56653900 8 813075318 927 755811283 781 479457977 867 38740333 613 548806019 665 241020494 858 220613895 359 445872003 91 626164509 256 446824806 391 521193557 976 144396022 703 503516651 611 863131907 908 938159918 743 324055422 592 562487902 456 24101995 604 851267938 689 62577958 113 209994682 274 55257521 818 923428659 385 114085496 146 776767993 671 491900438 472 872801749 197 706424061 148 390287499 768 358383027 840 97680534 282 297635488 240 111822479 955 944669892 238 269041854 705 604905132 737 818542603 814 664400552 521 547284904 539 152295710 791 625310120 880 310213871 299 930839742 1000 119244170 337 622577813 343 840506581 988 823140198 641 939048452 478 953321291 400 65144253 258 158614155 773 639130211 486 580400372 327 368230673 278 212592462 253 226178005 751 464884624 862 180586758 802 423452688 933 10057192 792 509592706 515 833829285 980 682147114 3 541846233 21 106076296 311 350765116 598 367438514 334 538855928 564 793409524 479 334363443 311 992722913 587 693964536 917 422150568 444 992289928 891 867372336 304 349321328 19 679835860 88 995425766 30 214405903 866 359872510 779 98203375 11 72409427 731 327284290 114 980772650 0 346890609 169 556135989 815 589055730 531 706985161 483 809768044 116 277080020 56 929681302 545 378395136 768 891832537 856 94357993 901 180953022 583 24402584 580 460655624 2 346530775 940 556229836 820 861700708 196 372255591 496 288356169 934 647884931 38 1597710 282 279925695 485 215575006 234 149630114 816 819495425 458 763396494 507 619051057 587 550620398 553 738758352 283 759728579 603 78331439 49 465110552 189 451682580 987 777300135 484 677228054 314 90875539 718 464256291 552 125466330 565 929567738 600 133724551 420 93344261 428 773434640 348 998044458 24 525825062 892 65905742 325 899576483 123 465728168 124 293398943 910 595888714 976 480669568 384 241396139 615 85550883 764 723114208 246 268893343 52 251391374 139 46078733 480 403851171 730 112051949 497 550621681 623 371267888 49 78555423 971 847859278 756 883282508 610 789219895 698 512431688 498 617252889 74 992767864 932 934578618 49 61018812 530 827313788 620 479019626 294 681425597 162 917545136 302 346239598 306 591497719 137 819767005 701 833261416 25 433736022 763 227650173 928 861316469 905 156210076 579 781962211 146 703640535 283 617751671 456 874211152 545 207703198 656 104808785 578 447504641 84 337618915 984 110024100 804 809463960 848 444574685 784 583515836 238 943087833 722 245536379 505 586278038 85 179990752 63 105370915 21 964438865 191 130250150 133 875555210 78 687139835 290 21500260 214 749785057 823 534962407 459 109990155 926 977403744 509 197186206 278 1679426 185 337230355 77 371347121 41 151325402 584 893698268 175 1170754 177 93691780 262 422063630 453 402688413 757 119469450 818 299581779 617 946642047 683 700375941 352 66783603 424 55649129 66 930458469 680 122836873 768 255745682 672 388552320 230 435532498 346 701897344 527 624677105 389 607707773 38 883783909 683 16950172 618 781136577 237 960834093 748 297822550 287 616861028 203 283481030 217 607540596 507 371753595 683 30189368 546 457004820 70 681620058 295 432332455 870 817770757 548 960934274 625 748100182 587 505326719 2 266180611 127 755366618 652 835415905 333 999884862 100 72395800 456 649633940 723 357705636 275 772503271 645 804964212 156 985281511 694 610050978 159 532020415 196 507442335 607 375376995 846 216122816 229 792950184 586 135382824 870 136295097 436 452368548 192 29279777 932 401396675 319 583820085 369 919264839 480 737019458 646 234492467 183 979210063 773 626280954 789 749935774 762 109530785 907 223426627 700 53266380 139 562918753 401 774121811 452 304974879 90 296697536 322 311130669 734 675511894 944 232790596 9 667708360 658 109334769 644 265496985 643 229275459 4 817020080 469 783835696 80 535278925 418 55194638 523 981703284 179 5303237 417 337615984 869 390989756 118 150842043 370 172614976 271 298757130 894 930795006 299 704527511 429 491068872 846 741124701 7 604549406 198 858669263 806 401988694 599 900493519 585 817150386 519 240122720 443 562401043 587 131818934 962 675610686 935 232662437 690 976563492 452 240095171 96 235112402 527 18916381 889 137494063 221 892634507 282 384634276 180 670019816 122 566666889 443 656884186 595 758801354 481 693579984 18 745797152 85 564733526 930 821071298 316 811630799 757 779620767 509 240863969 293 187914307 560 138669085 100 772006957 120 218347713 964 929499646 810 630027788 740 201047976 425 282176128 205 849636082 16 783945649 923 25032791 110 864785659 62 466638733 862 9097222 722 222342404 911 221406110 988 682333416 813 854067709 168 269715033 423 469675368 134 890863762 83 856132860 774 435731666 123 484299971 286 461519929 133 714350733 591 787715899 973 174786756 140 492805264 656 365539920 390 553927884 718 114226352 215 275280044 678 72621994 201 349630084 64 756294173 190 397366843 369 310153325 133 444950320 754 689730726 293 759473606 328 783266831 671 109786655 242 209342073 761 604014672 785 779434673 201 870780351 734 221384116 485 542034930 919 604145655 522 142332837 614 425619561 305 379249079 812 186766910 325 107074951 695 694263147 536 476823910 794 242558542 697 224972078 455 866270915 569 392122249 782 268156496 31 774476588 444 343886339 392 679369722 194 997887613 995 500392733 962 337621509 730 581916115 430 666188006 541 544610219 951 130394595 65 59771763 974 416891343 11 135871849 878 83657673 380 511252347 744 329861439 818 852152179 987 503173217 887 665779866 81 898289468 863 466877363 31 444870552 520 335585840 936 493470339 623 317540063 902 526340372 678 733443797 921 147909981 465 364267454 636 621518324 244 510331255 431 852198428 373 844928636 202 854658778 763 827518744 107 304219132 639 87975219 366 2491045 835 280888346 382 499626771 479 615089939 675 877220765 711 116100655 814 591322611 519 837974607 902 673171581 928 726565231 116 761008968 810 243880379 136 401495722 550 290152568 961 593511504 218 999054698 516 786010709 449 303051817 494 60116309 797 589199898 170 973130902 507 638852129 161 159041022 404 789417960 87 140880420 16 293013497 851 512239486 326 639991265 723 651208277 752 278524034 139 839325228 723 882001605 500 150069876 950 913591611 244 357171418 0 442726238 152 900326991 847 510817773 837 73134068 579 444594390 546 424388632 434 752288107 150 874783449 98 431629131 132 941570768 212 751644302 776 840663603 474 468675688 689 932322988 664 970073618 444 742061680 911 826908656 80 633257409 245 234055747 867 918138045 68 459279825 449 911049951 966 544817225 112 190924439 956 572718089 452 895538417 464 538340800 140 359934466 428 429083494 148 537960223 428 824528517 308 813617218 652 332301302 776 563924662 623 252272923 386 402081556 420 340984225 969 551280948 705 470842257 326 23248198 875 212752855 822 973401243 8 424896165 535 122822024 871 183475434 516 992432504 481 58513843 12 551707013 991 420559005 764 952564532 673 139139103 354 285550645 797 489179808 684 666090351 512 758501261 805 843670481 382 115837723 547 50308908 65 559731930 552 874251701 690 37115810 324 90273407 599 934522853 516 39165487 54 246675725 696 675159578 430 801365794 195 354298014 772 153834008 991 367591853 836 863406496 452 205113178 685 525070246 576 507982696 249 602665775 564 965713597 288 911232019 750 121461175 768 847836465 41 91710277 201 173182581 245 929495602 575 985187682 73 643206962 735 804979362 303 418603651 256 494674612 734 244735407 136 468803296 518 777984644 21 563333942 811 525203504 485 688024658 925 461789543 209 452164429 151 245590574 821 433350148 737 54715074 791 368163973 727 432415174 668 506864472 815 438251900 614 545796479 802 923157526 685 32728096 280 761247574 408 218951291 923 620954897 607 965908560 834 163156458 774 695937032 106 290193768 881 93359404 8 362333251 753 885406053 341 937903071 369 428883794 964 25682848 451 581692180 810 798624479 642 782508282 264 730909346 671 457017290 816 506180958 428 939117894 27 552173865 379 710983757 114 66111911 728 410348327 760 578294362 514 660502179 143 341206270 30 485884397 507 362293611 491 810463885 342 436358238 313 442116921 626 245446711 129 836589367 223 972069236 322 635276460 228 514014338 667 13865878 588 116474673 868 638016867 54 975564453 822 409532629 393 973689292 217 155167048 174 773648453 483 10635642 17 392869197 381 304947345 602 496112279 150 273553948 251 740056592 663 206068711 138 220041212 281 936923337 387 300455526 792 29601237 198 132661061 521 744650087 641 610261676 777 499970965 959 571500333 472 313169059 280 680744375 218 322535615 96 76149170 874 577030244 437 513155772 289 499669954 29 398897740 799 554295531 560 404177730 682 886530650 552 224935537 678 298991451 468 418334817 592 187854651 321 420080787 839 147898361 914 175086642 855 80973963 385 984674241 516 580472315 132 972145685 10 335705393 708 163161775 16 428907846 993 422260555 520 458835546 202 90559433 973 864127508 764 142844443 453 956443532 139 229972002 935 989633148 796 804773759 823 470872097 260 626612985 597 624776447 607 469493449 556 973942416 90 920736809 304 469576810 412 137839270 97 342256151 120 100553921 512 586954441 83 916244333 265 457492177 807 485451329 877 313369737 903 456616042 532 578463581 431 172664920 525 656037120 537 875665799 747 889220096 965 52968763 865 43304671 123 935537958 438 415187874 764 636005758 594 189228425 873 169939756 965 916660980 251 739607405 31 865731414 146 407786855 19 386351249 775 375685794 611 352259644 712 295131540 682 689003068 396 561462739 456 552054438 131 110945764 539 118803192 80 766034950 687 361477156 869 336239224 500 148750604 769 235952246 675 369764882 618 499490254 905 790772687 103 607964085 188 850496119 421 253718702 514 687954086 490 684924971 951 822197801 615 589152902 599 528305806 547 393541140 735 182798299 814 621217539 949 335760213 655 739508413 519 686082606 653 312280246 596 409787031 96 819552436 822 484217561 402 254876119 909 161386734 500 841079779 880 510437646 538 155433503 754 756616803 780 564317456 579 540692429 289 506096651 242 373416179 232 738457471 143 654437729 263 797473977 18 856137381 34 949294394 80 305963768 446 182618817 81 391100257 514 73586791 579 709252644 537 424586822 32 365128765 910 45094349 57 130346924 781 325072008 372 239486286 134 723613281 680 808049743 975 94518794 234 575646806 437 618385079 234 647412195 306 114245044 393 136051094 985 537489606 978 306411487 653 248698003 616 871611253 672 944133049 919 70238986 676 867191864 331 941573229 459 111056448 537 564771540 407 11648258 374 573664636 948 358618591 96 242421627 699 455661090 374 387601274 549 719315394 233 997674022 807 576598536 425 696455730 607 835628815 33 826360612 523 780766589 774 264907868 147 757521838 487 183105194 778 651542534 371 586488558 57 284077646 195 516948278 696 614970169 489 940456178 553 191000844 402 635703620 720 5795263 531 306896345 430 47929999 137 611475036 222 640966329 396 54005436 215 946282605 112 256435938 550 424106308 437 645508278 530 389443821 799 485706661 621 158693225 12 158535098 58 342540406 426 54646394 192 339325154 314 444331170 426 766802796 663 471855396 362 436400185 546 672409647 684 563287527 733 180732678 170 499827075 668 287646361 153 652617005 13 803923379 405 872133078 832 549765634 977 816765737 165 863255739 516 798300667 545 360723753 334 119743580 162 981749057 269 512180689 638 300862 729 677652458 636 467666788 800 333943142 515 504509496 1 223696242 607 322568614 78 617637668 693 169825045 665 427944044 65 485627443 381 880448332 671 38852889 497 412800640 266 61980647 983 912724440 534 848079115 831 99165527 37 672146003 644 788525872 3 430145554 405 607759428 851 439405166 886 590877841 356 150513315 102 863932702 922 126705964 429 858049542 105 67669484 539 347626484 9 314874366 604 259450448 930 153647286 692 121885037 767 2146792 511 551548149 70 433723760 347 364679325 492 432074764 794 546213335 152 804331283 428 410256320 794 270468013 839 879398470 347 713826372 948 493350370 398 705505265 570 823320826 727 172535614 986 450098120 912 209957715 798 518906188 646 92806961 213 924154227 7 808469005 869 107464208 447 518130981 762 890061717 398 928698200 984 280376446 585 105402505 57 973754522 211 444075707 375 160576159 503 508843585 884 711909300 516 974781917 863 830049023 353 383033600 427 304954138 203 886474902 974 853345251 569 702095751 782 662837982 64 811233069 517 736076930 204 492340115 472 677730624 156 563501345 307 697182436 599 974078604 880 736727303 463 144433387 711 285117165 832 24634729 512 235694080 618 808900405 738 270329665 112 218130072 268 519189611 78 883824451 722 370708665 312 185577316 558 48315201 568 984927677 478 683236028 397 986197660 685 243739449 682 572679140 191 857093394 983 905305273 979 513494861 54 879612942 887 891742271 879 261517068 431 792335011 792 464291190 174 753365400 551 530898584 974 900320331 68 801035566 501 572691929 520 798793280 370 98859680 487 773530290 285 671125663 865 145214693 786 933086922 512 991259746 168 496380230 998 225516780 901 3732227 745 902893980 225 447801178 340 271535645 525 246576124 155 623795556 384 206408545 138 603239186 838 917089376 108 915434742 628 767691608 119 353197680 5 650987142 760 891507783 978 505836229 780 156584145 728 875530545 497 347575781 1000 704330029 995 93609203 915 697423400 728 94723666 410 40475170 711 804046478 603 294843780 200 925737057 430 719835387 146 155007394 420 213068363 486 883610513 283 663298699 365 497311064 797 230353941 312 288714516 382 230764492 966 162892707 262 905112881 854 587090883 60 728174260 932 181300186 866 735931312 215 191564964 244 89737647 338 650747358 430 23288710 813 911700047 13 244780080 471 320820535 831 862351574 854 85762738 652 169621667 513 258201455 47 181012767 595 772446209 244 848502248 274 572701576 124 300035093 459 127042006 216 265291167 881 617007840 968 288404424 100 750451089 902 939361011 956 451812420 168 647083977 102 467120491 553 182510460 388 772816539 520 347294086 403 394757859 340 949035988 230 868337538 776 175082925 802 660854446 289 408401350 416 541367447 694 286775279 847 501522903 798 504942204 564 287725239 293 260223860 725 529088304 463 187239826 460 848394238 577 214599587 104 370609919 484 805214263 27 476628089 877 135065221 130 31176859 288 11549031 684 303482923 487 878676487 470 121753764 223 659463077 207 974632241 968 325133354 988 220287896 584 139026999 656 183832666 630 16524458 941 512713169 63 388897039 987 851045363 797 612661831 430 796755146 828 578317575 721 599562369 350 495783975 439 754301829 425 616464497 958 888913733 449 154114330 425 514906266 173 366856168 724 42518886 268 222811695 34 524189385 700 823499957 439 919163709 987 612175253 490 297494884 446 421900382 87 498944815 194 427574464 903 67459234 804 549243121 903 512622267 557 99908693 525 948840112 186 25934559 45 6799567 46 261769851 352 132684072 794 970948223 131 805090178 560 568442089 43 943919383 31 53772781 25 184877596 809 108863606 118 735893309 775 597723843 657 319947710 595 715721649 327 838283929 752 979713013 727 227040819 862 325652001 868 652760966 874 493561514 928 880445125 720 767088100 334 935461950 470 862584733 712 73350588 707 633722000 286 555052773 922 730929129 777 278132137 687 9802808 874 201986372 912 532905694 717 792402251 691 42962278 462 639951695 297 655669199 200 211540377 555 979045591 85 546970336 228 911856483 772 187258201 945 483462583 85 868317261 375 411348738 333 812253381 362 8753793 423 902680491 652 137309803 363 439583523 92 540441214 918 669519521 55 27248693 382 223954885 79 300002167 583 238321783 90 528836762 689 262372682 528 687897695 911 797712139 668 886622054 486 877183021 122 237284420 460 264308194 766 206550138 953 79572591 547 938146400 269 648064767 608 506155352 711 595024148 321 665723520 49 969454206 132 22156644 660 917637107 30 883963022 916 839519322 663 657273360 442 182117255 499 35520304 425 905238619 695 329693477 640 51654039 707 841696652 499 842392104 245 74157317 395 981939190 881 826872780 256 712070764 235 858113564 459 177266102 422 999777314 557 807219030 130 767449403 79 282777122 328 636262117 496 100705720 743 802937214 541 680045640 853 589179720 568 344617789 586 451008991 311 421308635 997 229907957 381 699905363 383 31524676 628 33586030 983 228008998 376 747109335 100 523782330 921 172947434 518 861199975 364 176820324 587 498541103 963 603353905 889 681501916 669 665677977 658 601206152 222 664404127 221 336766285 954 633797415 746 78223033 417 556154685 104 275387750 331 439437293 986 725665766 279 327801104 923 406060559 109 32772407 91 814288455 220 212346965 730 60907263 364 684627085 693 709022457 662 720359590 309 466022895 764 624922933 665 423542354 645 823228821 22 203792207 948 917667476 517 254031669 249 782115132 61 890795033 205 189734553 490 505252882 528 476148536 36 536394580 687 69631993 787 101507431 6 548915876 499 281685836 49 967212951 137 775982690 155 672177211 560 278354482 927 203387479 759 227755295 584 917000249 457 52881493 978 598791821 33 234541947 897 630939530 754 351349546 229 759553873 572 508334507 829 983907850 277 665191683 16 428996634 187 253077214 480 553213011 661 593329981 937 265220049 167 287155927 568 470126189 604 227054474 14 239769120 358 958601844 838 957636190 912 375542461 406 306130570 320 688594599 201 144664062 220 609606365 284 942208872 369 570745279 929 363573716 803 179723526 681 252572637 871 597865249 839 212478424 166 679811624 131 944638947 26 764117688 408 468680693 301 346461319 995 766343507 293 72583470 556 324200337 695 447537707 798 476778993 899 588884778 996 993602890 1000 874787292 342 506241329 692 416924565 202 99941069 619 516153684 169 271631128 557 942879432 63 110033013 190 555467740 721 330002873 197 559740130 782 59969853 455 96184352 239 529817131 734 347146312 275 724065196 656 86550558 531 768987283 707 151066628 27 173356873 365 671865194 844 349977300 402 423232389 91 75134788 570 50656732 281 632321998 389 558578526 112 38275030 520 401921802 529 577123561 721 727464590 588 181491897 930 414221901 243 383680296 691 416550947 422 361420426 40 191274239 490 721644415 116 22322543 876 947187806 674 98812927 70 799519478 358 631651329 871 400658487 751 149272250 137 413468369 481 573013369 484 183025858 494 863274139 182 944354839 962 676585778 642 347737441 597 536904029 79 492503126 211 879903864 768 448300366 814 92518623 798 796188064 63 25751192 980 694667606 211 89578553 460 174793516 718 462761597 414 175606819 930 842557276 741 75942959 655 508778834 258 249829591 251 201880506 618 457882841 900 406880118 989 451718694 193 579268174 717 680794832 809 421562795 854 764373707 418 944257661 116 986158845 298 830179836 427 36686308 638 571562022 584 629062029 379 773782263 908 446639677 746 180873348 542 296325231 246 353336380 850 757883124 91 693932905 751 68508654 609 83799366 533 734780469 421 522926 522 646799159 934 939999621 738 398467297 365 560851361 63 799259612 27 44745834 720 244469341 659 783181617 334 309480934 808 631420146 970 334759965 603 661323295 891 282720313 784 77925151 556 245629963 962 14036764 206 65476903 570 823830971 460 122170786 375 159647378 125 947315357 818 619707719 927 68426885 481 496260737 495 878888514 805 362790815 82 28510761 899 946387675 453 358965060 252 179346630 818 328005021 207 725044817 583 11149103 155 999281927 832 527512723 506 396947610 217 334264124 627 618700733 600 981988480 478 952417873 686 27459729 283 210565189 736 439204365 870 558991059 301 804679599 509 298175404 239 953388900 176 648219913 956 214006022 390 588642695 519 224547845 267 661676391 533 504314422 359 361138425 844 957515125 193 291680534 960 622956550 244 503436259 626 957117905 549 906677761 81 448679936 751 257952787 778 397957206 226 138496137 139 855503215 920 427538906 489 6868635 861 789338718 980 555557022 881 316220803 369 199766414 161 949554291 185 302762819 112 726233206 329 497620088 29 112084107 292 341812200 396 163766075 718 175075923 866 348522502 617 397615281 946 724743228 558 205003451 393 266252518 962 818246792 978 855070819 837 723526534 115 232254394 331 439368363 494 241897085 589 233621101 250 313236488 701 24197680 893 76700733 661 406917765 111 799350159 236 217189847 561 245446977 566 446038547 304 849242367 846 481709709 605 678287449 623 472816419 859 502079962 727 315500893 963 171566555 385 263682717 316 794768111 794 794311989 513 83850761 529 99244778 56 782020231 202 830249121 821 731152113 244 670201273 420 194783240 50 298291828 190 204956416 629 946867776 533 740712478 725 282269679 395 543227206 282 590826987 184 844855619 77 878742884 886 969418297 100 88240993 40 11448472 451 214532303 662 304870795 460 909980340 239 443227286 734 658776474 77 648207675 89 492630523 801 96911979 756 990126507 392 626690838 843 129201578 588 83900577 74 227371578 204 887880032 193 349980827 488 654926126 866 943321212 274 258858711 501 249022508 246 381762493 950 644226188 403 547591136 759 901284054 834 153590734 465 978961212 615 186371178 503 340870435 658 885925656 307 108773358 670 11360626 807 974035340 974 202368192 659 971259893 17 983970985 438 814612466 135 319081761 297 64578432 695 419144183 452 54352835 197 699006833 172 728333134 804 886901818 58 544224986 916 438930847 318 793686765 901 839023985 380 519323013 276 114833394 404 506492542 947 453944413 761 193930404 444 425969010 90 58915140 897 436960426 249 545529674 784 539308827 507 993803336 821 978796508 64 801430775 651 258973802 876 777000551 952 426885090 236 711407884 802 386123809 405 926895711 736 281361046 751 88177397 337 476921157 452 304489946 793 806708864 694 127969633 897 492163990 793 647197107 339 196148558 611 430994337 181 878520591 706 664947818 374 850714727 13 335217193 493 477779044 882 102479802 344 257708643 987 204885211 92 390119246 513 139266968 441 594855849 805 884291974 80 118338368 179 566253804 72 661721875 678 739325191 28 801286878 92 129882235 30 657831901 84 293298854 678 692707410 311 353372600 814 712556779 852 762553766 359 14208763 486 584559160 595 899825014 475 998084156 192 33263297 145 906791326 341 524373750 818 767405488 46 905601682 90 467787729 513 252122042 998 496821797 574 748415197 615 196391504 978 508806941 724 620331365 486 511880002 777 166159168 617 552502498 122 340030981 583 901990968 339 535642266 143 251601273 968 137789244 44 882415950 567 744540228 653 754497940 138 906531132 559 153716243 474 78397867 802 901361423 314 419250202 262 742335454 535 665055666 269 696598407 664 503839616 370 953331644 22 391364119 301 320246521 507 192925873 704 713164538 641 110177510 324 984096334 403 680001101 208 652014362 877 86676663 832 413535249 781 354099214 999 888885979 1000 442759466 698 772100265 687 220697849 914 75767692 880 577835678 621 264018758 66 1592253 957 632639969 89 510522030 364 45415295 111 59403651 542 638912068 66 359458827 433 669449401 995 412820337 347 102076763 447 503645189 679 788642941 977 309452237 321 812844253 525 58572758 198 586906360 927 588830032 240 791755641 413 203960988 523 414513362 414 121332130 668 25100898 182 492027296 295 957195485 685 977247445 886 737741211 55 149545728 274 803892514 313 798923435 573 578859713 46 872927150 871 776212405 400 448350561 983 249606408 721 175283223 558 74405525 839 621466694 32 151238341 347 542199035 312 977423809 951 437435501 999 311227468 212 164549594 268 414741726 5 690066614 259 349981859 708 638041816 260 22022408 675 563342332 810 465558728 418 69672013 875 286586591 556 120798846 860 663667111 390 69230683 147 45118379 625 151053842 572 945667894 849 292742011 739 361142680 771 219220456 67 101575447 652 142598575 708 483595875 831 909355812 275 997111849 564 6095784 475 706422611 755 387865974 346 145468283 93 612517980 266 642884971 225 186478574 907 997223861 387 106528281 875 716816422 560 476665810 316 273126864 701 994945662 5 844161841 178 255289433 354 535713169 737 756080204 13 4943744 105 733450177 401 277223445 97 18572229 67 43966653 263 134658575 812 65680959 735 742931371 946 241041995 299 684306285 279 72032078 790 600703091 589 639407826 220 489541087 549 910067908 759 248906120 433 646509722 325 634423453 476 341034951 600 659896673 557 196730863 692 438029629 113 2459057 758 134872338 559 271833909 152 311400180 321 199327158 615 374538146 276 127403966 782 114726625 114 383016310 183 884017340 540 420618109 898 800709486 831 398920886 687 818371369 279 329213908 151 730042777 586 74186012 208 864111831 459 886497656 725 682929351 148 692055396 857 575630381 849 399020571 84 434777016 664 708224065 861 351327979 893 696693745 651 500859973 847 610999324 727 668640744 332 696089005 790 495397432 685 784771787 390 84892868 23 954492388 830 553055914 747 951333751 419 114783263 367 503599749 732 254466269 192 353497105 330 341295210 93 246060033 865 590288814 34 155407593 521 864596906 964 74088360 747 579519122 26 885490251 730 683371922 417 147605103 904 89120779 672 697435414 436 933630247 207 500583725 264 932182908 752 510902959 48 65677343 132 503480446 937 66002646 566 742908709 123 675073218 790 229571152 638 49162025 578 374388437 762 402910346 936 639039173 953 961895261 869 72448988 561 768252176 822 536298577 384 685223796 234 9556378 463 3393900 155 138795434 918 129310038 827 187118270 592 572088427 722 583685618 453 428833978 418 544317866 482 660063818 521 525314131 440 44500805 395 61135866 792 443919077 615 261475122 337 283478220 125 105402912 374 669258408 550 16177983 349 420781503 916 11945257 139 913946174 662 165029935 830 547328228 546 18575237 738 144817788 597 943054213 395 920346995 42 210312806 888 520015348 65 348688929 773 724380062 902 478084525 352 397680705 852 575048257 613 302597613 142 344636762 429 323305311 182 707726150 528 136482042 240 880637539 918 12690308 993 317249444 424 253172536 35 571835758 922 464407723 723 755008379 537 152430005 197 81344681 259 270962568 601 498212923 290 722573263 657 903080905 300 653736837 240 946536473 962 91978785 357 376953797 737 407761636 21 366704789 517 83533129 844 828451407 405 510281421 451 353031164 495 511237087 655 312059951 911 969426222 697 473301664 694 130590602 343 398204722 673 960901617 525 340140188 692 901816008 347 655744247 2 618775513 241 479014934 734 373887795 197 167161533 942 775837586 880 825540812 458 512920455 558 653982301 113 340579335 802 249982257 36 223162997 596 596883157 723 318367378 681 81404172 923 193264584 132 422666373 488 249409334 846 483829999 361 410155434 123 635299144 185 393856025 502 285023183 914 101797400 265 196486006 396 811531708 162 801697458 524 755608889 214 937570524 643 962783978 322 623202270 943 939083951 651 622367523 576 217951241 150 684695774 197 98401157 184 324308442 788 79592287 328 458194512 216 957178046 747 209173491 254 261841997 248 503646033 645 711713569 955 737826994 126 562189707 808 738468813 447 337973909 351 882149562 474 970706790 466 118256134 662 440137842 94 335448686 959 230892676 982 671034830 664 810045072 66 766929064 597 935119745 634 680186365 441 516650217 310 953704680 282 499843951 854 160201777 120 122600990 172 839243326 117 132903201 520 129063575 729 659601112 726 991670039 99 495181973 889 854282558 601 490874643 412 3082986 78 139082580 485 193771325 175 883207239 75 82295771 437 464857344 550 674793447 740 557737872 730 949186281 935 717586654 238 339877511 133 206566411 129 497551896 722 507323666 171 330864298 439 283536413 940 606329361 598 730874927 166 540908965 48 334850479 860 597195162 60 817152461 12 243597233 415 596977969 151 178689101 984 611616388 791 441177820 92 532595414 811 487616469 437 586407641 600 985099544 850 532125173 597 278450514 810 580427990 18 46590202 183 666302871 129 751034898 559 971621094 160 388798935 829 166279181 100 469678410 780 101541577 366 482777599 24 679827510 554 835775513 281 406287049 407 370911172 404 886339181 689 8475899 516 958553651 343 542001843 895 110081323 504 216329688 434 87050196 146 486355427 928 495769615 353 935814368 261 275145092 405 245527054 967 530455233 768 161957166 124 111198707 76 942535096 683 36775572 650 165732609 281 15061005 185 737917147 419 719393426 9 856295091 103 441150162 512 770036898 847 146059740 632 98844925 606 666233739 821 754127154 101 464787788 111 621551146 760 130359496 875 250057634 829 81259445 817 577347091 684 31647615 188 279061559 732 423186310 947 749471690 776 19672045 117 510492608 894 734815541 572 513772261 180 240133401 704 580766978 321 391030882 55 599788307 298 701022212 476 42955265 35 590061188 680 110414236 253 790195569 372 219215226 808 301291730 892 303645624 152 268210520 228 774560703 213 370680824 865 105888097 945 927850448 401 180356744 518 470518776 730 76088665 438 436947514 272 402600016 65 502240520 488 777742180 316 406052392 304 143636955 828 434645199 465 971100461 591 980839657 938 841261164 870 174619363 424 502438055 954 92232400 168 771512552 733 721032038 444 488706981 950 415025033 5 696958570 253 609864626 514 958473321 96 46077089 1000 892587525 535 831352673 967 136071219 168 101247816 167 496600709 666 632218310 745 216407408 154 666096500 818 671060219 244 168658692 358 666726381 785 684448190 970 22081752 261 714373286 420 270688613 251 768103642 597 707118905 646 694546496 340 207672309 535 859298868 816 952068379 712 958583033 216 345009891 332 966209726 802 27275545 166 573658866 46 432881726 884 389839484 832 570085692 61 501415657 250 960434069 785 170887569 427 808424800 825 195101875 399 198797142 463 668223093 994 100073337 972 512535389 388 524285630 819 728178086 18 874708986 667 322972880 684 58405096 812 57370659 979 834438560 178 998924888 374 279210986 376 624535765 848 726532770 927 338337197 302 859573434 959 265430169 542 90825644 60 300979145 735 844299254 398 386347535 649 926256794 616 822075840 213 372082143 506 382637835 691 882476607 149 61223798 199 332210719 199 450101052 337 91892901 358 161544881 598 850203639 571 28829077 781 337714954 528 570020657 457 382557847 669 994753189 205 183462792 391 832421079 152 348732129 776 219843249 521 386259262 558 182894768 660 277094870 260 700100650 789 471340882 636 441333827 686 497811716 599 592359854 161 345264074 275 531362011 821 476136721 303 764630128 275 845554798 732 812549028 933 807463570 752 895810343 827 865938937 90 216262521 694 347387896 291 710142492 119 494884393 744 802810468 238 591281675 143 216977460 414 111404084 705 201326990 457 192179537 650 688809737 331 18518871 524 697734976 671 136680685 285 323738159 577 646958365 652 126073753 601 828594015 266 814814883 652 768909955 828 868543450 238 718658754 862 49074339 896 228575871 721 639938846 49 649805008 235 485637587 408 730629805 35 748814071 128 826219923 644 857041544 240 108785689 407 649640582 979 771353065 658 195150339 997 783906048 436 874464621 313 759736263 982 169599679 1000 168471484 102 368600977 462 128715998 53 573421492 650 318677346 308 870061427 590 46429938 992 782484195 750 881877467 801 476494624 48 318868791 422 972043537 711 113521292 563 209228200 888 330985545 397 677199480 309 902063146 98 583511659 163 455648801 47 20170864 792 877847064 715 58750123 568 343574748 872 494683614 988 483414281 226 62338647 776 282643604 636 66446571 963 282236852 888 212759431 692 467674841 676 888910854 334 962199490 312 547102480 6 30041894 871 528690502 784 634632361 440 785143742 33 647036879 950 395567535 95 505495668 370 184511373 517 752240919 964 724045146 113 16028143 403 224757814 429 394255859 691 222092018 423 361774226 713 121872554 344 384804642 437 728663517 814 105024304 987 286109758 423 33242381 292 866744291 234 25985759 790 71255903 222 797248695 364 539411048 450 728273110 17 925118761 514 964791425 799 935604947 6 489772634 928 603430231 305 786264499 705 317279154 282 364257116 569 846542549 863 593756992 454 460187258 676 35649695 959 757275793 85 902846510 93 348644094 230 573498387 38 816699954 679 964931354 443 816070302 530 227578377 360 876739706 881 573053077 212 212194060 843 900548395 646 366130168 609 812438224 807 305919772 627 511226237 759 534874859 132 617086906 311 144726643 431 904975839 794 754978430 210 157742498 912 753006999 450 766740630 227 733963263 168 169780432 699 518715247 919 545945546 821 254615006 749 714987559 17 534299494 881 481228622 823 319788496 906 229283752 971 677882049 330 7984918 563 198299899 302 94947470 754 368833047 631 231379639 451 264923635 678 437249653 49 396684090 12 1471342 239 4405366 991 682912914 178 609583328 995 872349564 743 771692545 311 734798358 847 372530973 27 528010492 75 9761258 6 323677982 417 936321259 736 52804334 618 368901659 118 694422206 925 846671910 959 233640423 37 966303598 23 808093036 892 560240008 478 325780224 149 372307926 825 602315748 749 180292304 658 595683354 229 518169250 993 337641427 759 221319619 597 659332223 97 816856061 564 797472880 933 600137279 463 981436749 891 451670126 330 403996479 853 383950806 860 4199882 711 594191537 545 280138964 695 550828195 190 312692917 398 366758265 299 99944171 713 430222704 605 995809362 542 606736321 749 232906021 950 705884397 746 192616211 358 392207273 454 424728558 34 951719146 377 658885382 355 827151009 641 40305667 958 433217493 835 686627058 728 699092114 684 140979943 212 562837475 71 595616925 727 921534523 842 336395318 832 325996971 910 394948607 959 419097946 894 718593200 951 788663765 703 903841881 853 195295041 624 648290951 382 240070146 10 739610147 242 211759783 72 213187817 33 496294091 484 55515660 515 172615378 757 900579115 364 648653450 914 886642432 56 697375160 376 187137940 855 647082600 434 676929260 715 123702474 212 755836323 974 565618923 482 865307849 686 943787471 895 47845700 876 658142532 103 92862890 296 852712978 814 909562405 813 412654452 818 229893891 710 437455220 544 139170650 614 309591865 188 873196115 573 648158835 932 332478900 931 25703398 246 292617184 657 596318094 448 329801028 647 708680372 785 441173309 313 939286905 778 414519678 121 425317995 988 418726909 180 793961112 394 790456858 453 888957438 133 648571021 658 460753552 24 210673362 336 455087300 515 276900238 489 771754331 404 412482806 719 764498569 377 550013494 755 257848110 165 863493411 39 132307375 453 696830318 129 249824635 866 540114381 32 293043751 533 804870106 566 926031737 14 64329007 450 277288039 830 83872570 614 799270953 860 314409157 36 859905826 585 42444707 281 893695669 136 384642119 349 301089986 842 555879310 354 48676841 106 933205795 455 311871445 911 774249428 466 701525913 820 151570769 818 904471613 255 607169837 401 19093461 687 424103968 452 835602757 431 609950765 329 190195911 444 580610168 3 443523991 186 645393063 333 480602998 68 722729392 158 391991522 125 897872141 719 65460909 845 947465540 948 454891248 183 844897917 447 659701277 969 480569688 357 618326896 269 259882247 354 157197827 76 688426962 903 333107718 663 126320324 441 321221071 912 432370890 158 954910680 95 374075546 791 135928165 892 941925384 562 344137784 190 612062318 561 834020375 673 535109947 596 64452663 756 506996360 250 174819988 737 222726432 215 907822080 981 268482068 964 335025183 78 482921872 606 712824718 58 331709769 572 824094459 918 234674646 656 789898460 641 684129498 972 131301401 765 511306584 731 343005042 527 271892093 635 116467614 850 439133075 422 288987557 504 68057387 963 322205845 534 660655536 18 336829587 77 320254105 551 279354444 927 682346989 577 493365926 949 717987987 633 829733207 334 734936426 43 502925197 571 465911680 593 123380012 206 103792298 782 110702111 808 458533288 307 382840568 771 386483833 743 35958920 631 613757734 571 407724612 241 191509380 564 270660661 862 263505190 765 31045891 673 137703045 519 705962809 649 480246450 872 736955755 559 754955345 350 186911785 56 538300820 749 873493742 653 547292211 84 548688081 934 279349714 435 494099517 116 282547382 181 501869583 259 652379534 189 521173817 671 765698052 135 127387331 861 974700116 562 476732594 435 457450120 50 497258747 779 102163616 306 839579282 991 485127999 830 261403361 345 285095078 908 586465450 405 368098807 617 899185199 432 611434503 277 308907884 429 899599641 463 106264563 165 425562792 547 390408551 544 287715049 520 143949122 201 92981394 288 290868797 457 789108152 400 325372151 811 463987279 416 438466296 39 920366149 819 876396329 618 601515569 774 821908909 0 300951926 542 469481447 919 411910329 635 167059296 276 418015287 368 932308488 981 422144223 238 850303471 317 760669399 811 156261248 800 975959585 582 240948731 841 189754549 681 620599403 136 260853006 442 474340477 636 315308797 21 134551373 397 416018494 749 641559056 481 959175399 348 301656695 293 729197868 848 39230356 558 943210876 62 868891555 374 296395590 530 178940525 942 438004985 978 481884382 903 180907513 1 292748577 998 908328175 141 575423923 164 940949529 542 624982970 905 4724788 89 184964513 646 631393607 812 682630229 559 757881982 513 783918075 586 479747558 200 280800881 770 284255269 46 796105817 330 618872692 592 701810900 707 708663045 541 743493732 852 891110226 355 296621876 381 102864184 367 959532659 419 275655742 75 23322349 552 647250389 697 467079750 705 251317926 267 873977216 808 478957345 135 484499633 870 161222590 214 369535163 813 556143379 697 365072428 855 124500191 235 874808907 72 522881963 331 288283125 532 342458833 329 293380454 124 859777487 39 46022064 458 833506378 938 968053341 311 811428040 531 67182124 95 852407581 281 538271246 535 817414914 198 405031662 37 703011393 325 851394216 864 784164996 480 465371991 251 674786644 52 257809634 218 867104070 44 939826757 681 538047960 965 180651082 706 744477945 811 367295403 635 128595734 599 427850998 83 211884182 91 894548570 224 327794893 275 264737855 236 290118810 679 277900905 526 679037881 498 990916095 669 729058156 419 842366294 453 626702032 510 102390057 434 832346967 3 338484694 11 715086387 665 680481841 152 688709949 68 339609321 303 678455735 482 226714607 866 500661560 977 895128496 565 323674806 829 982192873 31 110461746 545 198392459 733 135410135 322 767032747 815 962931193 991 578694822 27 144538543 554 475535972 851 426103565 315 985376728 155 473381881 963 136866464 55 822401310 687 633468353 731 947731369 401 846097124 65 419217283 443 444783702 504 239004867 463 265804503 311 415410906 184 563870721 954 870426760 882 891636204 268 86521927 381 49030155 337 435768693 784 916811510 806 72603903 681 861427761 508 35389804 318 280947679 635 941299657 658 157179773 407 284919657 389 331188586 412 674790496 386 348386506 991 108465612 901 443085936 383 875637002 359 954317984 3 200146887 567 281991461 874 865718099 343 349051065 458 469345472 182 647116536 971 586470610 160 271158748 902 340014926 87 49390192 482 413762430 531 451585287 68 612540508 989 356847590 935 127980322 477 240852309 148 241259478 341 294523568 167 585404683 524 210652567 840 411190768 267 235696552 536 874649403 673 255479837 866 987751364 104 695492183 557 81778405 46 525531907 577 401148475 720 16736862 900 14501546 263 21392558 302 604058262 39 467407985 779 192123564 557 127363330 874 258565861 619 457467529 444 947336433 174 621163572 957 544261963 723 388396880 157 528110675 250 523409873 473 235042394 841 77793599 775 407208001 440 977528609 251 829626028 105 525544543 174 301443592 207 752203941 652 296228285 466 236274829 105 797154097 355 299516761 855 397271732 360 572563026 825 151851245 27 393514930 58 855832159 640 441371057 495 469094848 420 979995081 581 558630837 393 12513401 23 943212089 771 71648747 763 154517428 382 744096016 743 831960428 683 835623764 984 928119299 910 731983251 365 738070626 643 393095831 944 658622556 303 491663998 784 472282345 842 173300731 580 925632366 187 420477294 698 383897752 241 725053395 367 67227065 749 365895231 624 386426067 640 154874435 837 731836342 501 358736765 108 792941778 125 608464643 203 537639668 388 905000647 487 249417720 593 325694614 603 756314049 542 664377845 185 631480146 166 435460345 703 928632920 464 428012108 700 732889176 526 895304984 87 643329680 947 667265920 619 627560859 512 848195373 643 136754837 101 364003122 361 515483987 546 971727755 87 371324831 506 354432397 824 774051815 764 633102779 224 87330774 882 192410457 965 244994370 67 446479545 243 592413228 354 500792326 962 119930584 382 972679928 474 435299940 476 939696615 867 973175417 217 312001270 740 685928323 639 366994863 99 456647946 784 889858083 926 723551266 557 534889147 220 53771280 446 334808068 809 176010265 131 135143730 822 332146401 496 826450174 877 473082193 919 107145807 633 129315554 947 528434125 515 597643415 610 880209168 145 361362239 178 629736288 617 89631579 952 427963188 107 906133790 85 218079372 892 455821247 72 238160583 598 68492120 279 328296994 165 471156257 802 310184692 58 630275010 137 247552387 465 777839660 922 338182164 34 274609852 586 395585327 90 866447214 996 899255130 177 544790183 772 972624277 116 496117048 576 296030131 974 767510288 554 386325442 918 326487427 781 49976040 250 85790031 237 186424138 510 530059315 288 901363487 381 455092523 708 213620120 710 876764041 133 964973619 580 155881601 994 880439514 884 689551198 831 964277119 749 937830637 26 339707401 927 825607029 431 913826619 208 473141008 6 76780025 446 421785937 15 737135687 709 948992250 217 741730289 952 492233254 503 854457067 814 960300863 881 809411797 606 60831628 233 508815728 141 427486783 915 417953146 430 251903147 481 164627622 158 195519432 649 630407472 197 557161059 358 618918040 860 85019718 467 290783271 62 767205654 894 248143475 392 983643692 42 850709814 761 987624479 908 90963058 831 596870873 458 458795443 503 253812634 297 835424070 385 849753660 482 609264732 916 737577573 806 188395917 746 517581238 269 32926983 95 997415553 116 953407278 640 134639660 156 609724292 974 204203382 941 969115273 351 39524695 538 340821432 728 493117452 373 667973499 968 824542787 140 473108230 347 460601372 637 637038934 301 370300598 88 431950418 76 667245205 311 65720922 443 879499461 864 515234079 46 549787791 505 973067246 862 992335404 475 552725272 101 828817739 13 930079406 866 908782073 465 51780961 504 670536873 841 329335811 516 69338556 934 723665926 881 224735636 406 948957920 756 549557597 38 519231498 459 269463639 355 996054933 306 644795 571 146864450 617 811056721 840 504628559 490 947624164 353 565067944 721 916652782 303 911571578 850 43227730 50 660562530 576 276859231 978 727521498 865 36904066 759 624896825 715 417040708 900 481612995 731 324841821 737 994106780 90 498901357 260 735970457 719 949237600 690 647300959 789 279284318 704 501099161 665 882191763 215 130872674 54 418997999 555 223200697 69 168281313 584 948348629 413 50972497 658 328863510 851 631982300 97 961105563 364 556156998 656 537742666 560 802953448 463 870394042 257 306407197 176 283304111 118 803827278 493 36489037 106 170608001 982 143425864 227 782876877 175 88731033 220 854213717 962 388808525 549 726380712 369 613751094 991 279520674 825 567796988 446 507425493 854 37267376 677 159252301 717 749114403 787 391967823 706 479188799 584 871325930 446 908743985 222 502209694 442 315065294 529 861178540 286 675816722 779 287284227 596 549495482 500 448136638 732 861562696 587 155795789 457 320895476 356 400619196 828 840059240 414 644107135 308 342277129 981 535766820 611 132267197 506 886605888 941 826327694 185 663837889 565 55307968 370 452545267 561 924403412 806 329679025 232 815343494 596 607536009 170 421186781 65 873048154 306 719110053 662 133740064 714 604060420 871 780624813 766 40713626 115 163143278 245 866557575 164 661577009 679 442957649 731 217764790 127 356284434 810 669763832 991 661801443 363 358979790 785 977478148 856 601640139 326 513857267 761 981690307 85 534849597 319 855373365 338 453864680 802 934802863 250 595104083 11 200490571 676 182845234 423 529307562 238 58151981 687 827566748 322 804866797 990 912080222 493 700959117 430 590616797 393 228395859 351 492735150 510 510244906 480 362767053 511 293201799 662 560357754 27 668559795 911 604318550 391 448155810 228 125244222 699 986372111 112 296805374 627 165177578 773 580589508 494 306070059 933 920441916 544 511363675 240 391784774 946 661475580 514 308769124 361 697844375 625 708394788 408 425182173 535 35358559 605 478732612 125 3393678 639 362247139 668 437962405 445 392341087 685 90969684 240 867090135 212 298681741 287 588453049 803 231903470 110 890497909 731 220435617 562 246993774 882 400750206 491 399831786 823 271673510 271 41467321 62 809265806 863 412853368 617 668449568 427 667149148 772 680240493 642 189636960 5 154426422 6 206845791 665 145932676 813 82957597 201 452023647 905 755578326 708 382444978 962 38122309 629 603825467 346 120917021 835 283992750 776 865114246 72 111505298 951 706417914 991 558149287 118 505772612 720 11591446 864 624297811 921 215285601 647 41511358 276 64159536 141 444571423 141 918199237 666 260299510 694 500256514 995 948227411 990 545699924 826 240484151 887 853803462 183 795289478 834 231273160 319 900510511 386 811311539 802 794053256 172 127464724 321 549596062 819 274245359 109 43926128 831 333227244 339 350269854 291 723307822 526 413623031 859 801420979 154 426514568 464 127810646 524 637190827 349 326698820 786 855145477 72 815653367 508 515486890 637 239269332 445 804735324 694 156296772 572 324655340 884 949054711 221 218675661 415 53249894 414 705739377 705 912598674 927 561893644 906 98664460 269 341680897 576 208876720 556 277462378 842 489623139 254 607094070 268 660423139 738 242278031 51 68841814 283 657155079 406 137007460 120 55221069 81 730107800 219 757811547 969 780100742 214 433225327 910 770389291 101 409572391 923 962315420 641 624089215 616 896928095 839 339170736 266 112621436 153 692921131 373 995030413 394 164917347 571 705113139 496 696883525 714 538728702 606 834781463 117 310428322 212 16113275 614 494501412 513 496166462 36 488127757 860 15135144 618 649182864 671 68401425 723 771554230 144 310688495 919 37695931 235 546059559 680 371057655 517 745529036 740 132798545 133 18032574 235 406780960 947 495228216 416 111243406 679 346402355 813 345669454 567 530183694 691 965116355 744 993647043 911 157026611 578 358222560 457 532993907 531 88981612 283 578411483 878 231135568 428 166368120 836 338218825 351 526002943 827 523153395 889 267160533 253 36405415 725 858724317 795 927144456 49 17893285 206 264010786 694 252472675 124 814656402 694 330286469 55 639891282 906 342883694 909 794538697 472 361920883 184 410648467 115 997498166 911 886515390 593 814190392 887 724520173 448 157979864 234 197449636 670 417582182 160 117784450 336 196831702 466 800480007 589 673681107 477 303156849 740 680939150 907 33258362 748 488776569 334 78196177 18 376538933 519 260933098 745 797150040 379 126844682 128 679074063 332 135867730 906 220445909 983 245240202 453 417206510 10 715358695 855 896893036 415 843236028 402 534987249 740 431113540 994 585796248 483 762127759 801 438157529 180 482998814 973 240108281 305 760246796 645 547228135 751 448129103 485 348742518 700 935124204 115 887461237 714 593411080 543 733364534 239 705672844 805 626011857 375 35648200 50 199978959 56 753469955 469 377578936 758 774962785 160 254521887 20 929861456 221 662277828 772 284885807 894 627222536 694 972958590 129 433393397 520 396652974 204 610667092 131 581799540 357 902218959 324 625771396 533 339605784 87 19891137 568 365013973 117 972345475 925 666499704 32 425586866 112 300528226 846 720782122 271 544597713 545 926508066 679 430117433 531 630903648 778 616275557 444 231124129 564 758802308 789 916070354 904 271758822 84 704591230 896 377944844 419 609252080 650 233803361 281 597625688 936 945946305 876 416375639 674 290121654 495 472667304 985 192829256 357 782468217 86 83157566 873 142274159 725 78654379 174 91806342 939 94102285 510 633509657 931 730232284 411 999664282 528 300117492 443 515083656 60 316247787 411 610683664 538 207420655 924 946463353 611 538016683 139 418424957 240 833033298 366 388855729 643 741944071 831 976219309 152 954157232 671 230545450 541 5187357 489 603091858 574 477128448 165 666103043 730 359007232 126 49385235 402 653932751 780 816018137 403 215469657 894 779619136 545 673786340 699 220235152 330 94116375 872 81804557 114 83320905 92 501812792 553 517821067 247 79113613 670 498849519 334 56600452 886 751954298 965 523942429 470 306952822 82 692204194 815 26109110 519 400475844 818 899523878 172 500630257 182 571441446 220 821947689 58 829741043 624 212902498 474 875398831 203 638337640 385 938380950 899 202859596 724 595416734 229 408322510 553 606771810 153 60231192 102 872994218 763 653885375 271 875498786 575 341697998 526 744145679 610 816600138 581 37104799 476 485672231 263 412027276 322 395180241 459 324960462 642 226198123 165 692567353 162 555696756 382 393963059 720 886703472 72 773256284 559 538383428 41 88682918 167 995097634 985 833198630 810 13801226 190 7751854 413 869746642 394 528763665 569 398123294 838 678862500 147 25566085 169 741684410 552 108279046 919 40708759 350 362179499 34 343126095 212 715646022 260 981023166 622 629126154 595 947676518 704 334717529 659 924802300 124 951548892 706 299055323 231 407300098 660 90388033 765 425935931 891 694131331 316 975167781 112 370921860 753 942921736 967 93789521 417 940559721 767 981140496 480 357586141 189 189520858 427 118188797 674 120056706 277 796260079 774 60602185 297 869564091 787 844247666 135 272899250 252 734763443 79 469708998 637 982173423 272 389005831 96 620821949 277 707078319 55 284440953 536 854476741 878 509088659 870 533503607 400 542990286 213 535566394 993 999227062 800 380613304 316 773798333 153 14042084 674 998088776 48 362243362 786 854054181 666 390483364 292 677870886 963 566299015 767 276618339 535 250974311 445 444652759 419 170011092 78 421576425 587 887488494 822 650128332 397 785390350 522 258523477 660 587864336 940 689326106 923 255269290 447 787482440 947 453943884 391 212749770 116 2346308 386 419705891 917 284762496 843 229827615 991 866687565 148 660975437 780 266485418 76 604452846 115 941785392 462 514622742 387 523475813 563 298535829 985 456795347 445 608760327 169 321088911 218 297117291 154 114479739 750 832161249 180 218110514 133 870638165 373 629955665 748 581357905 483 945184523 855 809251512 151 444289967 300 332315835 263 435472727 746 496547264 414 960423161 505 300828769 202 114669691 478 79281092 204 78590742 569 192163409 739 245556749 897 689404736 69 530031036 148 871768030 478 365368687 29 438566503 670 209283971 643 558941116 509 342077323 504 67833746 302 170153649 646 159377214 442 547154185 309 473972482 991 731829034 913 207650284 412 582833804 958 21383175 515 523641724 562 939697062 204 407862020 113 587885179 549 51018988 480 631248744 646 466307358 923 27840956 875 244853355 758 179297840 984 727623591 968 402689954 48 224913151 898 488590376 684 406759461 705 965570589 593 776833508 398 312573717 899 785764758 824 73710107 775 332484485 514 820029393 289 677770768 147 210807684 991 957059611 536 304251939 825 841664538 158 280623472 137 460648510 839 191182548 615 891943893 362 527716510 141 123170343 629 711760691 685 803829634 367 818869226 776 732757274 8 582347424 389 622841695 551 439919581 962 153349421 382 403237006 838 431881606 7 894420267 98 512313773 850 507520255 752 749991493 93 673679672 799 113442040 737 960613885 917 771735663 312 609337077 919 564446929 33 498994592 973 979178703 416 219002239 459 510963324 422 579000852 475 959248146 275 744936374 279 458105268 837 408816436 48 743653660 210 339924554 448 823192346 537 921413596 356 414027379 642 267584605 350 448750850 382 3429935 567 190723824 679 592353852 836 243945038 374 170242714 0 712069058 397 109768614 358 436152309 288 929958915 569 778642109 767 890762456 663 533790405 955 912523750 707 465779132 95 986255230 815 124659351 855 903715213 698 172110965 126 120020327 429 278300167 83 591497487 786 366671197 535 371531619 948 551374270 542 996392288 946 747944324 845 682584437 314 290112780 57 307797364 724 851796603 714 924365486 394 703247445 702 19694141 95 698616690 416 668735506 766 667384437 196 382622835 579 946115673 619 919783988 290 302795132 873 288287357 789 337816595 188 442131689 677 610421015 817 142577065 542 263392141 801 2123064 754 478348937 755 392014102 318 55068610 838 152741828 180 18804554 834 746769988 906 484564935 352 911626052 224 816952904 42 351797114 964 434639842 394 282320425 292 457108276 917 928480409 461 1614480 81 273087860 233 843120978 954 307285355 411 535599154 170 339882764 668 567244477 594 887142544 190 435224601 866 104610068 763 322819456 850 947789951 316 11027709 184 373983581 178 900235876 208 582968476 930 141767477 31 407243645 899 366115812 406 945533907 913 81310644 307 63631579 56 223060362 161 454051975 622 737270332 21 525702484 905 899636452 165 601604998 55 896891763 961 288887629 637 340167786 862 933977257 318 395630804 782 499836741 827 611386539 485 42638693 846 645455925 740 39975765 731 256119732 905 37605301 972 274925983 257 980457992 843 216076441 465 659664168 298 691656584 559 511159260 756 418235581 394 568017460 201 324862310 363 277498206 308 375304641 846 97811209 819 978635317 174 354022812 283 953365520 81 51937249 969 544816906 949 162848232 735 320997535 137 94597336 743 101753542 284 185406460 244 959049686 26 352672557 24 672086043 389 275053820 886 172193718 538 174912934 445 37380728 302 183076776 681 627149597 959 800375777 712 687695963 335 972062279 795 782594106 450 722027427 733 190578993 939 824918988 213 42944057 9 350542972 673 742317948 435 730086856 321 391122583 442 324761038 907 743217306 944 970687571 891 156469534 302 112261787 401 249001743 141 908659493 928 125497933 505 969352693 80 868670320 13 892520350 34 882621418 45 570873147 526 284900136 167 199334243 334 647859798 28 764661888 445 555067448 648 984610413 326 927437048 943 43344269 613 231126208 345 244049228 89 346345143 688 503882960 135 659727361 767 787300188 62 183202220 206 295283952 709 201449879 851 242759498 479 950666313 253 674208600 655 277576721 112 164024779 27 644655679 934 709718975 396 911203787 893 169689915 919 744418153 146 113789009 822 210727191 599 86733943 785 60168311 331 801800274 267 589911917 363 614587943 919 13214188 18 89442209 641 221941517 722 66370025 751 973320659 603 995073220 134 674312024 671 576666276 513 214201007 204 819591906 970 920051345 925 885918712 398 506851339 644 780245506 628 419275650 166 241347604 681 26767310 586 999819093 913 616697567 186 610161437 989 782856420 236 610196094 722 190553899 487 614889140 50 649515329 290 773921748 997 621472533 759 41781929 665 223090048 204 374804807 66 357899355 367 401687033 526 237898912 238 428434310 627 692064296 257 372503791 694 227960415 508 696372367 732 17718757 409 908851704 359 184989672 519 108044821 862 886854985 383 99285414 120 850632682 864 140742672 455 452595088 959 752409635 849 623413263 612 3069268 383 383243644 654 725415731 149 589669357 271 216078928 941 410307480 571 208807591 891 394907895 590 422622876 984 857870258 707 440039353 739 509337765 648 388747203 929 461017009 568 329795504 162 208819562 981 566281424 540 887609879 123 337974323 371 272928512 35 596042285 555 829051971 434 218477851 222 329866413 84 184214621 960 433235547 305 866661337 23 238345190 994 771516300 730 607808005 990 532659597 396 761414777 122 967604890 53 56131401 402 219567425 956 634466651 253 578368043 56 833284018 376 587312463 375 764212973 603 838461429 481 303011636 533 491548958 669 968787427 420 224926080 557 803878030 815 725745463 469 126606735 349 987644453 466 316246062 755 872353701 510 914938401 192 506706157 297 986116122 873 952868818 946 937959551 219 807674513 910 126616247 501 668950049 375 36176703 549 503288039 970 849294483 54 847361004 0 57079791 522 795946860 636 834636371 407 443241810 960 34039930 564 547863449 49 126418188 971 830597212 853 512665323 578 284282750 997 165128306 635 70969079 502 646737538 187 122536583 176 626870226 764 512192926 810 773123061 304 523122140 114 588746655 465 247467969 855 992743324 63 191580766 658 44463642 684 73140342 471 803489431 448 96158902 335 313950048 483 383874345 594 784924499 443 990423019 769 46717711 112 906513722 381 359869185 255 319143438 827 589958924 691 566381117 233 847319720 790 931948446 579 527275062 381 527872725 912 57975732 239 543665611 675 470652490 595 539214915 809 712594581 559 628988015 855 676042501 874 650894112 148 119373786 241 487139108 502 987214481 846 716069772 183 644080752 71 728752052 127 327145671 4 254283903 276 277724120 958 73878469 985 220848688 420 574554212 39 295631146 97 387147856 279 544358698 806 841626949 823 204767109 217 659959885 822 765454155 277 864162332 950 287880211 461 620107008 852 438374541 83 635352135 176 728264745 371 381380761 68 893762093 196 167150410 717 910142446 449 972386829 656 800594058 670 101063415 67 52047230 540 410353523 761 425181893 505 264980783 237 688274247 789 721082372 908 169772743 893 850252408 367 230610928 549 529001203 261 325834761 29 381576385 793 604778143 578 373033595 982 70255880 346 520520940 845 953774583 761 782260878 298 813283116 803 859917619 601 454192584 394 841857330 748 752444917 893 658621127 862 621236184 198 960385090 387 80624160 241 472139712 561 757337706 132 362237752 990 239356296 236 822667290 84 777329097 175 215044226 998 639084991 58 503474582 17 431909036 556 549998200 492 370122561 668 718639078 808 837541426 605 140568916 774 490326681 138 718205014 95 907586001 492 466583204 638 536249343 280 277009964 416 420626076 793 367823082 602 604994350 585 174181448 55 911666246 702 315039622 354 317527649 37 751603857 820 207480046 84 638590348 187 700475189 517 961217302 850 687676400 17 65086511 566 155972607 695 990699168 977 227924519 227 568769333 504 160587923 697 87433432 858 526565208 318 190825528 524 255889259 200 982025962 195 578000231 282 110339964 868 754539552 14 565892512 493 580436201 812 69350716 161 373381548 183 621517478 993 945453889 209 399107426 639 964017106 20 51686444 406 244240113 427 954031001 308 287891745 353 366890988 903 465204064 517 85440048 289 14717844 543 597381239 831 517580507 682 779407949 599 531276446 71 286779563 632 292941518 805 603107915 862 532327576 312 377782430 890 815673888 333 19693369 922 71221588 523 847475845 477 314651742 236 596519813 755 6534426 982 921019697 148 718901384 105 568868395 855 952271193 386 849002174 465 110337395 109 742399220 413 631454335 55 73014319 802 327488635 894 996660292 159 75610748 704 590927188 506 981264279 0 135487603 170 115094809 573 534709944 991 171346721 128 785672172 839 534591227 515 469209717 290 261404452 664 951667546 611 197815122 837 506071593 937 667490512 519 464256916 491 480790534 418 551035738 19 457718526 963 843921288 837 527556365 662 791753693 223 739417662 970 370808885 317 299140323 852 331518891 761 611202200 246 43632655 280 396393729 640 926850680 440 279128515 183 896746653 627 525068960 396 524471067 870 351281742 916 581106779 18 922704610 193 486060396 465 680219783 96 910511840 13 390748565 406 121994425 751 161667217 537 589976531 814 498580052 776 711751766 197 170465019 332 993346591 760 487385336 688 751431504 151 492679970 159 987113108 344 292452926 631 169517288 603 309647697 959 837617092 501 389955985 62 261256428 722 377708694 121 168125243 328 258859451 469 465132602 578 378798917 138 334818783 969 941286978 705 764463119 309 553513713 185 892411427 909 159640151 847 708295994 582 103282460 704 761720716 347 193474239 397 216520597 894 57386595 514 445268456 15 66056854 526 651415243 954 938969451 777 44037298 711 319103290 416 196379552 38 448412225 151 230252250 896 642223717 135 139192950 215 133733035 306 370437937 73 939040081 697 845315040 469 464491984 639 18574344 52 899245472 804 206489916 517 704306856 512 157038435 381 803626718 890 776669639 347 134456746 207 12478105 397 755871430 884 821878801 749 367045947 908 959968263 538 525922614 241 950500155 530 447965251 493 974480394 861 885736013 999 17406689 559 398999494 730 225848227 329 579792313 881 358236388 502 349609977 145 2054432 126 221252653 721 708155709 286 551350338 577 355823993 330 295562031 239 63742910 449 155641496 90 633570968 438 765705112 95 451076549 963 884729589 260 350096567 739 285445541 477 148529073 939 655128296 752 643876604 22 190294722 753 903544302 187 337353188 769 88464408 876 593644624 164 906963217 279 93244814 11 413889154 512 954418957 362 443820323 654 370052333 858 478592189 985 76139898 96 468274983 1000 703755009 568 484844113 986 967049458 3 654819567 572 225941623 150 471318498 547 40664101 400 280297613 407 915807161 391 421347488 48 798954619 522 624826944 771 263936847 344 606271576 909 153622537 418 755441402 90 693523591 157 741153041 223 904075243 297 59379503 365 104680829 221 601643044 511 899181582 857 65235582 274 90165667 454 28175414 171 980042847 696 75473736 758 524514520 133 534744127 551 806187906 858 817034441 35 194673575 587 11937257 976 787803358 478 998316670 181 503852052 839 156522767 159 528094243 694 723757122 617 39234834 785 126835803 734 613316776 214 186182068 312 915312513 358 199987576 464 919840278 419 890120029 933 655648713 675 440501394 288 578365343 973 866136231 500 696747799 656 635082226 552 528535573 262 870271235 412 373840494 423 330499828 885 308603395 524 764771628 558 944128405 719 533819384 788 869153282 383 702217591 961 659548728 495 188752097 108 26825265 539 779980046 6 792215634 815 370182522 797 199383069 431 267796950 334 444282120 133 147116011 755 931497632 3 424433272 740 965157202 113 407761463 580 878727666 856 811825755 110 83485573 44 529016705 572 215581007 461 187665098 698 30423709 579 79575378 393 557921039 887 622166255 795 566849613 865 802916970 33 236311797 746 335868273 943 674604359 98 402178916 195 212940692 20 64323669 36 789469846 769 105999399 403 950963908 657 528679450 659 192086297 909 929047820 372 580955161 928 208767349 676 913896876 18 475120596 605 770263419 249 774493307 524 963536079 965 713948412 46 975070650 473 553772398 468 530284344 834 749221463 104 786133178 269 163745172 42 973596225 21 307983091 877 19021563 291 167888698 752 175121089 940 36013872 496 706822416 229 468167669 567 704649496 468 702449045 766 714122008 165 592450696 158 789960701 560 52314250 507 469965084 25 332264272 485 924590157 669 151198194 98 731234451 661 288322348 125 425169077 501 701529380 992 44332995 231 916818917 402 222261385 149 668400051 617 97932966 359 662708846 652 523659765 196 272154024 808 604528895 889 243704079 97 10645913 812 979233099 68 425836114 251 925771736 903 536406379 730 94536466 39 261409148 959 445931164 766 508029677 907 583411687 780 80554076 610 633000316 663 606974935 137 401842384 19 25867430 827 337004171 969 888935133 63 548706319 596 715413368 327 314492119 241 380458946 56 510417702 744 940443646 936 318472444 627 729139410 999 459242377 191 907130096 150 850831583 351 701265241 396 74279759 898 236268199 198 848270967 611 554951506 635 354564886 148 862259023 966 868411691 161 366363335 278 37729792 289 898576702 236 736994546 409 75375293 483 295570038 325 680813785 998 711052895 397 723694445 166 214377903 817 935266274 134 51160940 59 802169375 242 3024082 688 376791245 771 984688771 190 944032218 457 504799450 123 634025351 85 759606536 761 912446063 981 153056875 726 802678391 487 583604060 128 660352867 970 540718263 429 366150157 900 10821299 891 385439535 536 972874794 28 465995103 623 598738287 269 818291966 576 277968152 461 880380282 450 674866794 667 803983942 861 876553903 1000 490657580 681 657161565 482 822915354 769 285406140 897 303682723 13 206585586 205 672391599 200 694630377 244 613077792 678 889515008 394 717246451 901 115785269 74 643266253 779 279246589 891 855572369 941 446560985 895 361804898 440 550938830 951 195253541 309 557308486 407 404182333 966 323778159 5 902885059 704 509565041 719 188218300 558 13312327 684 64566394 481 51919020 266 860728863 144 645935896 746 684757517 931 752367274 645 118434601 327 564578253 522 894621644 817 618518457 116 45877725 374 586468696 487 379502423 782 135669138 92 230019523 650 506658337 968 500168891 309 444505007 143 4526374 582 501634103 607 404233331 478 780036606 905 485662875 94 670376459 124 451778460 518 361822019 916 2150712 725 615062766 543 777904378 191 285779814 194 421336991 368 536458499 622 656780673 445 413758128 120 111645888 691 767137174 434 111040848 665 996967827 810 577658860 250 955147232 117 517066680 119 773893352 365 538731670 97 932435053 469 712462202 904 801712513 295 779000334 37 605327943 81 409160228 259 1036868 766 729634706 236 611731059 951 558538924 192 951576755 92 543864690 457 256418324 618 90109280 338 851847478 528 533903003 915 706632251 915 95020852 758 874592914 659 556688318 215 960779599 917 674986202 290 871333965 921 23149793 339 859819707 576 306116748 324 155017797 947 397467988 586 364159317 66 700466457 249 934950578 322 963482269 242 846548735 384 63671025 350 488155125 782 262947175 455 814917683 981 509089053 1 966893865 573 661453167 49 739215648 776 211907213 750 195436872 541 846723598 489 548928884 969 581620442 589 651858502 72 462161545 238 492086615 424 153181124 474 227920864 884 487766629 963 135815347 122 280474020 416 882440486 711 490642980 261 878012269 522 780978982 712 714630560 336 728441205 733 619262262 520 878624688 253 793083333 786 699164207 269 614287279 87 378078206 229 101805698 726 914215354 475 356887238 512 238813179 519 772133835 960 327176864 819 968419935 802 427019860 104 911400015 563 670071851 408 149179856 333 658711418 117 638347592 483 681555366 805 473481705 725 954420354 446 283564373 894 312748049 643 804339588 763 690218263 578 603318926 301 69032737 517 977565433 813 619118958 880 631946520 989 850964153 707 627053872 396 543013736 422 229987653 212 128783409 936 45320900 122 463631712 961 87428995 216 265017538 358 885572442 352 378296027 786 110406108 308 858374872 99 135800143 440 356286878 840 885510014 830 509746732 924 636931493 779 895482125 431 110995076 645 126922758 460 542288064 9 258451098 436 967148693 691 745712731 149 281445999 859 854247615 96 25245947 985 186523661 924 377273969 515 733734751 899 776471780 789 312194580 312 585583490 46 917602366 322 14252008 273 789278193 683 851583853 100 292024269 794 452445627 666 300671894 246 86410325 309 74200582 49 342465412 446 808186014 494 661587410 42 275624983 641 81003982 11 534121347 914 647231333 102 759628353 608 354159917 125 69657233 663 625580682 190 814624264 556 577266093 966 305567509 921 354587620 260 826212725 352 739031392 231 500784578 652 796641552 910 157038056 429 938461249 224 898109987 746 146212241 118 478660426 253 9891194 411 772010050 657 35698320 786 34456948 98 335165284 189 416639509 44 950711658 773 227005755 823 847473443 959 145488447 221 826095785 643 31748939 624 570939531 335 829099041 730 30876720 275 654513032 272 509987104 434 558021043 812 275985072 219 794015715 975 619453812 364 901838812 363 254554946 667 453915202 3 952649771 560 301284661 440 756725771 276 705262149 438 980506443 190 397816184 62 660643355 876 392353832 613 350723843 80 950861875 521 658330916 166 81143088 398 460069190 11 920628258 606 65256106 606 454767207 264 376820139 586 97336999 926 178256589 42 693149867 602 94243630 847 352761436 454 958368976 145 580342612 176 95321159 262 995005228 879 13979843 169 208537448 651 303228582 140 775454265 325 377879867 71 439103002 318 614575688 616 984415063 932 865984870 407 287333038 599 925394433 309 275515265 316 689786096 887 513234086 670 387834136 554 394453477 860 712099888 265 19064475 255 758306979 930 40952147 52 950500179 157 685251915 686 915125073 321 311234850 250 212968636 916 894993540 448 601291843 765 455253990 216 494928913 169 703441097 174 947052216 652 270167355 320 109813462 978 99815101 799 626391590 199 88107570 902 106770983 213 992425731 708 507589825 556 590270245 993 502472742 868 741432270 119 89447506 670 15927673 470 814739486 357 140715968 961 28506228 99 763524548 521 259048836 297 632050208 743 12517893 662 676208087 656 572451178 781 954055671 11 148139864 981 533771824 224 948878912 589 369524617 679 538341121 934 19456748 22 11942621 188 534941500 293 816075596 868 454691461 419 502015137 594 340002132 698 171429032 506 451879570 529 331186543 723 911812207 516 476768857 603 289952703 561 853974901 193 797103976 180 167114607 37 361933600 983 107843597 224 758905577 309 121558027 538 532784164 260 763721634 594 458261561 55 121601926 150 753111200 209 416069118 339 943421672 894 758630922 827 240095014 336 565225502 810 814455937 532 578737716 622 381913527 441 376655493 316 591496366 153 550014305 305 134988357 286 661029086 959 174751536 521 291277402 383 562930150 741 208543297 383 426332237 960 566753078 25 62379294 359 856501075 396 482384396 478 240538123 890 167611397 633 544712224 706 35405555 521 309150561 111 180617532 867 24775894 421 63678195 84 356928441 317 910896663 947 51986214 468 545743131 156 862220362 672 80746255 86 694330384 776 382422002 375 530130036 86 26756951 745 137371106 493 864775191 98 410955075 966 798536236 406 86006041 125 900688708 897 569193593 334 112622923 906 513894582 270 422277636 455 881179667 60 812251184 816 716351840 1000 929009270 489 389579608 39 668825024 202 369899870 496 294972019 423 448477716 193 544201852 715 828371161 577 171886111 87 573869312 237 797721237 892 557925322 439 918199869 286 953539263 1 624142262 155 83375811 376 740732869 874 625894144 823 206318084 220 98615829 65 121251415 51 427335122 66 254737737 826 204565537 627 730412305 403 644351257 587 220186016 1 676949059 268 180002965 351 444265133 888 643932089 206 865512466 851 930714580 520 644432355 628 122805259 584 377471726 224 60589780 30 327086093 274 250040717 539 335225442 262 400592030 390 807864847 352 376459654 636 87716191 763 237603363 741 285140597 302 488588026 570 754102086 817 460569297 387 551301525 75 101150411 223 588713076 933 575991814 986 300239181 336 454280493 223 909994733 772 796053313 712 509860122 945 888257027 779 365685866 395 526334499 72 171271541 808 191831256 482 203496278 237 798975127 454 603617892 850 486602691 106 554975700 603 927824976 638 244386824 4 237135577 253 152087399 821 921662063 5 638787660 268 63675545 821 593695453 659 391926144 601 497380766 246 180391305 6 647882015 70 975050962 542 756307050 272 17337603 879 69176038 251 328135306 585 575369676 982 747044589 222 955791901 925 928032334 964 285124327 129 44784427 185 839325415 243 598151378 18 33644505 534 550714186 944 760486385 140 757717986 323 538728206 806 434267660 266 684540596 517 119228070 900 353653535 812 675687135 803 988016508 922 487410355 268 114611530 318 134262654 715 280772400 100 295792256 990 709245145 499 629140615 490 307929411 732 570360238 832 505331355 43 863403437 923 983572252 141 133564230 163 741564153 981 126330904 755 794403399 755 602424437 996 601126359 748 133342177 446 815416020 661 421194772 186 373404491 877 602588558 424 915331678 835 341935689 784 919987728 907 507628981 217 230702307 113 924356021 717 136847115 310 515308452 146 569208884 315 838373852 806 642604820 695 891562967 582 438138980 188 496220106 630 956016713 607 972879708 693 713478270 452 849553208 535 885291280 459 668620679 338 822839654 9 897542215 116 369300259 222 459636437 117 172067989 53 303551894 125 807995228 376 796324945 264 337530645 526 945480278 414 748680016 971 299253726 926 622457927 4 854155524 284 452883713 236 216533432 535 968558217 209 98971259 380 492738392 385 547599154 870 26471722 620 661957418 338 905062017 910 662430183 974 653353831 339 31265181 203 145228818 382 459477452 108 569783620 618 832803411 885 189614030 997 978250618 371 713898472 263 278216004 189 469717886 544 887358416 879 923466335 417 150630740 449 353070782 288 606751036 673 199419142 997 705407149 791 193597588 521 818659325 531 744568272 323 274686292 301 15473253 264 101847436 228 764122527 372 658310209 164 327603418 336 119492874 572 753569478 172 98017802 866 661272974 702 636145501 20 717228117 846 800358724 489 522015766 118 490541457 908 977309678 87 252008694 449 709917190 465 412346889 786 723771408 813 968805860 375 475567714 610 987100670 232 38282555 568 107384745 203 856725861 825 601910960 182 250336444 291 966259465 768 826058779 533 732124134 407 539441247 971 343737133 34 939292723 322 684875388 410 657086602 497 632473880 858 667037021 159 962079235 709 995174920 653 711593240 383 733164909 670 194073858 805 950615071 294 593587093 98 295396197 345 503903865 332 147491899 269 64573330 959 48913648 328 719849404 872 104867185 401 304691274 770 510530964 970 613112348 506 627100417 714 489939524 795 944418764 477 222446391 867 848719770 58 926528628 991 720325329 831 11386238 543 451297600 947 354447368 291 547474921 622 308498543 989 434347614 278 988664606 591 75680573 956 119533576 320 595322608 44 599803228 391 446701005 416 203414522 415 781936329 762 507000416 49 196970395 823 553201726 748 693695251 124 516153118 14 430935276 489 577141336 188 570383956 56 94242249 993 935640184 896 901158037 836 932308623 154 573642080 199 979703793 761 119086882 195 576982454 812 693133027 660 381398524 564 390752127 892 731390385 57 556793853 971 915244569 284 343393317 812 251260614 215 846604363 799 977412698 971 728866508 523 736251240 154 941170492 64 493439067 334 630994080 203 576169733 678 460858204 545 677175508 89 874869555 459 262850448 150 874542543 186 612548582 759 311284066 155 67197777 631 487934492 869 829064092 458 555898094 487 142367331 108 206548001 913 547465571 894 559364509 177 728011060 828 478821166 744 794263885 85 167830432 467 112404045 956 740777198 720 832953380 419 509071119 818 501735138 39 596615910 571 786892631 970 626079268 826 709346947 130 101847550 329 519465179 947 520136453 135 251161778 608 152060933 26 714185078 161 657068079 967 526215770 115 36605928 256 582581484 221 278507987 574 783596576 207 8346186 683 873692428 702 27003475 613 652241629 56 683071692 407 692780294 188 436703375 103 93733340 608 102662832 906 757432093 411 650487161 829 573080261 815 900965468 132 244886342 439 480565795 40 364974852 869 533004701 789 988268428 92 465404385 832 507840086 63 336936737 518 925995462 833 602884964 936 821550063 512 180288191 54 564305903 544 83486425 438 897927205 698 607694197 886 638643313 42 26139274 994 79411457 227 43159339 159 266239537 872 460498004 235 718281951 98 47705126 862 349928389 245 120128439 373 206764272 989 231134671 329 4097545 130 732662994 816 974820839 0 998537915 18 739958309 658 519404567 969 290042152 498 15977732 264 751115211 269 603089449 214 7331739 226 679705481 666 150269519 734 527125968 522 125099815 557 460041465 679 863010953 285 150737209 257 145999182 353 410092700 547 757302639 4 828401365 785 726288435 212 603841589 531 470571279 23 852960892 368 864041665 530 232303626 897 283301737 730 656228309 775 892267716 143 282006194 235 990202448 352 528058569 423 582978053 676 343409591 427 440268711 864 142128031 163 46581127 596 471134030 299 645862537 3 570799897 114 497949681 352 116212293 153 794379511 442 587435149 692 723035956 369 418314151 842 942762278 966 580906000 249 427330356 652 290455299 898 304038489 609 553860390 52 566334881 17 696642157 531 571704387 686 621133539 751 287747201 138 135796819 563 870600829 172 970284296 79 987591805 401 664065911 216 886078375 762 999870969 387 929408877 765 190889775 282 55852880 539 738888733 941 831987194 570 708690100 960 785221548 592 637125746 815 335832284 697 55001327 439 565761224 90 396392734 287 976243855 379 139722042 282 668015478 295 929642578 86 173158579 853 697343963 309 724363030 633 456666112 489 121703465 383 684551603 201 325056981 440 482107472 408 849547947 550 51788199 243 834105375 773 408022257 840 743198580 731 614258663 818 349015937 609 945456275 85 713681061 808 348331392 954 718003823 370 444006657 11 888872700 354 664604930 510 539190803 666 90388595 379 147931120 553 44219064 434 50141869 149 620231079 623 115604861 272 515463193 72 271324046 602 554374354 302 352365747 842 401616843 54 533672618 72 536898236 570 917195101 612 827848568 885 748330957 793 620193787 22 380576236 869 102660999 945 73879571 936 104743392 596 182465129 353 399202716 951 453583898 229 931424614 337 641956995 423 618028647 614 210276223 582 542505742 277 871712861 507 2868744 944 205377688 255 843510371 539 444907076 10 876846488 1 933603099 487 798115584 477 891951466 605 406274794 187 286332268 512 994876789 277 20068886 251 506485314 38 922055179 8 280095774 539 467537192 805 601814089 704 671805902 520 641663413 354 763272139 752 280248946 856 503923372 138 733283881 789 887517496 330 322971310 895 40658996 904 219095468 170 270733951 2 321716921 694 656661541 354 847899443 619 127727072 543 569946539 973 980701311 942 932119307 328 750471066 155 95570440 156 810802407 67 464850653 976 610046746 237 610369754 842 231016762 245 795994861 790 823666994 528 491408910 463 813794049 995 442184309 398 593605378 808 390359996 514 487483715 488 790182025 44 766847216 652 158772559 680 142419146 255 488868362 544 350539070 365 943953083 601 134539945 830 263476957 971 740393814 870 333229759 966 805195386 492 551229138 703 975795198 929 665628021 588 426321539 639 969238033 483 145460004 414 216219245 722 688928915 714 972922052 90 763863765 345 156651385 264 75528288 730 553446878 628 252972739 467 195537856 209 453388503 446 65860457 865 260423698 969 172602484 618 906496736 599 957078035 66 239022988 99 216692195 265 594230774 674 184875657 821 237569282 192 940388452 926 573607418 84 691523012 874 742669360 272 423225449 397 841399236 220 357110281 972 977493045 536 84215051 912 311794929 685 188131331 311 944323006 287 983253370 274 983467093 938 259995425 485 442218343 501 731543145 213 256655952 664 755166481 493 339747268 391 943097394 625 110651930 722 850623367 291 605296982 297 655178685 579 197216104 956 610741913 672 490421389 126 762540986 729 396133155 820 318501033 360 244091859 463 621734762 972 316684376 479 374588434 347 572217921 986 905287831 103 440660266 84 516005667 598 296280482 360 323974097 155 934891376 601 186702235 30 395171526 818 17206204 253 198361847 187 53685613 728 323364868 873 986524629 843 768134339 497 900151856 768 185389636 738 668217954 640 558090695 232 939802928 878 125105618 274 807157446 804 258686900 277 340835215 555 511028781 328 611494894 777 139649022 27 211180773 456 474780257 827 167591613 617 83983288 53 95309752 852 271541415 235 666149119 893 466173874 394 276283747 117 896312524 714 258888323 497 149173665 644 433868652 520 928784184 529 14742097 857 177002321 961 26078024 768 390341054 760 909223510 224 643139011 396 742943344 948 3715909 979 459369933 366 560799271 762 505914775 917 727736096 451 600057634 38 999101747 109 226836338 630 861390322 111 359297764 278 262444787 159 684610241 451 377593752 124 805803676 859 866576693 278 995975958 864 466365106 519 580474294 614 865062543 679 170409382 520 96553887 376 827341366 77 217501577 992 721396727 51 435085859 96 784390845 780 305166360 568 415115968 376 37622975 438 51729567 957 370172973 745 96627125 754 647745938 904 26733241 404 373765846 633 946872685 571 525938953 892 371425621 908 75897033 24 827786081 311 670244059 293 453749298 950 769896210 71 999994851 453 247513127 399 449900328 229 109972278 8 225402855 939 356592736 529 848831220 764 486348495 343 924879972 480 587649248 397 608164316 311 514398629 482 757728819 900 743923749 843 358056858 429 932218925 233 324972627 495 690472171 336 365845108 505 474603947 968 617342942 640 608701153 512 602704538 583 357382521 417 116250088 236 843971643 270 183565070 98 61833261 500 907495405 518 136252895 569 489341215 333 447559532 301 348202493 844 937423939 369 573050690 239 108224966 868 673989824 982 61543424 901 641457794 760 412936217 280 895139237 349 640258898 352 362051667 275 265863654 666 996235363 364 501898285 696 607114591 24 736407058 505 236343835 450 579128680 318 910255371 936 358225230 27 3157792 135 7195308 350 871116700 579 949354656 373 638302235 640 747976968 941 861676650 42 813604520 595 914219680 797 459396011 767 869097257 685 677356864 920 911091075 762 865748504 485 121387175 867 846245032 850 283998445 908 136233042 704 362939573 500 782425228 600 170062606 179 865963966 756 441476206 240 349068354 115 325956624 306 247148118 108 876120879 523 664361754 220 899337933 106 434135357 649 944420069 162 237847889 638 881201429 577 901132333 262 97129964 406 356794843 792 583267146 842 904770466 72 935034350 767 604962560 189 399742734 639 909100163 774 965533715 581 48401771 887 147944942 879 364504317 204 982471451 686 336617755 929 642474160 690 33785675 140 274336218 282 871441197 696 895668978 972 831441610 906 743193495 747 927357180 717 178625789 987 678742374 698 922038997 159 305286903 819 281628249 197 117513824 433 352410766 920 675941288 44 877948127 607 223910309 546 830234479 306 666213317 34 699337840 739 642295471 351 911743348 124 576748187 564 442503323 468 585161499 660 77681809 169 920362692 573 262648465 536 506027287 974 919828526 915 932360406 787 725612363 499 979599816 891 547683430 852 807569960 751 246825102 325 233344719 909 31344551 242 788123833 126 682947295 505 908367688 113 282796821 307 489076014 259 503584434 749 859738524 99 455837508 92 90679363 569 508443047 540 656486257 407 953137870 758 204565877 312 216013917 724 766007679 500 595345742 218 970784227 703 726588561 186 318362302 228 309552327 77 786877386 127 628329477 523 700357654 162 295295085 822 564513816 46 12386014 712 88413952 904 748798864 919 878776816 878 182477425 384 524878548 858 702849050 209 466070263 695 343553072 801 791672397 99 296972792 771 879721923 744 118702370 726 723157015 762 488533988 988 492946176 806 571035610 45 590480148 640 393263909 702 85201068 369 576087696 760 600104182 32 635923697 685 900159474 300 427778870 838 172595321 150 226141752 777 845440857 833 51741578 869 961731572 548 982413569 374 790499389 101 326691050 780 919500541 949 846936778 126 545383998 798 146612038 151 671928303 918 652246101 393 320281151 797 488173124 979 662992468 957 537922623 464 319730275 773 441052907 173 131003022 194 524566031 239 87220850 94 189722201 175 950086517 56 461944359 900 711084841 684 824547997 22 849824251 650 635120702 262 222867161 576 81133657 997 701833673 724 480428918 679 2949954 62 997686812 70 662036958 644 415670514 594 417312715 943 392786384 78 114237137 736 382944281 770 548567983 463 267613691 510 568093674 350 190765211 728 549040935 273 229935504 707 650072985 828 960171404 443 825444517 738 398179428 224 622787461 637 356150390 630 205327204 793 198978680 552 711865376 371 594512462 955 850564261 816 896451400 58 280520314 516 438705633 606 90278172 819 490719387 675 257343847 215 906643504 992 629356592 998 213632131 666 443372908 241 502952900 360 252049096 356 566309552 922 74001116 180 444139381 738 462583489 858 955070628 301 823955911 424 53774678 726 422877848 3 223283935 830 624313845 173 265801722 25 642657315 443 4714822 332 511731785 620 532248097 60 129534242 360 450106968 428 745824280 566 246719980 135 445898660 608 209172861 191 918455380 608 665245408 753 155655355 25 306397461 621 177823736 722 492742673 509 659390470 760 277833567 903 21579598 665 829645569 881 789517818 935 956794133 41 330984509 47 580016629 346 766670633 368 476188114 843 713990499 774 96237881 395 807090133 370 935019174 513 897036832 807 782331224 352 719792122 355 900558423 84 258483899 623 384110449 644 453123230 721 187707487 469 831202120 931 349806916 670 855497688 475 899409707 785 158572737 646 671158262 87 258345970 975 108234681 275 655108087 893 350093788 93 426882011 920 391592429 475 952245997 376 365116071 861 934326125 775 586732420 187 540522737 378 369102477 539 156667215 728 199728067 125 562022756 576 166560193 886 712908240 439 930434344 469 744437608 891 87869659 683 568392308 98 375185985 144 67132975 497 248551926 714 756818767 907 931756764 326 626029381 71 108089865 841 49357814 599 175629445 122 873878097 942 461168106 386 106542459 292 476687621 732 603929587 279 136460254 496 86416951 355 989773376 406 203741661 308 517550369 731 256811298 472 715356127 936 837247501 343 61166031 0 408776907 152 744111215 1000 36066560 935 175712168 578 424487263 598 435117868 42 358165064 303 911382044 123 115764834 359 524229798 975 393056450 812 780019344 306 756242379 17 712677055 732 56165172 581 680822825 947 146398677 915 378950279 695 61505412 928 99090849 971 142405644 505 820385541 152 444580115 923 87456841 942 283140600 803 942162398 974 577547488 174 357376859 172 615867490 915 435481248 871 247320183 253 504664204 891 322658370 110 210380969 229 846544205 581 82301842 34 510529824 717 332734941 918 502520971 914 397683348 692 113027301 660 848363413 563 54293413 258 488702086 530 311305595 399 662388675 329 246185978 232 777519016 345 562981080 62 569917223 601 123466929 307 781920473 482 607203927 137 715815958 20 489966894 416 472646652 354 97508325 346 972778778 885 544672017 610 170682993 55 96953885 490 316778003 911 997862362 522 984339547 55 752465887 574 349706879 508 531606160 607 135335496 270 718733116 865 796002843 200 427601958 129 682233090 70 66674834 949 780418244 660 416104214 506 947283580 112 368647553 950 930849603 285 538448752 369 704625374 243 190644844 389 464718812 405 503747162 697 228887416 186 277256651 171 997832691 610 675847499 390 395920855 47 545469365 183 439719352 186 250969679 421 753395275 764 931807664 998 458002778 730 486292523 98 450027092 328 761296123 952 908252950 837 410380940 681 850031641 72 360628582 384 326544629 577 668718080 70 850531124 525 348870994 328 599820892 563 211269143 497 557084784 834 20787103 957 15559923 534 24225424 629 881814306 467 279977784 331 818951981 93 791338306 184 503066651 8 662064708 237 225219659 938 271730246 809 556756947 391 207913487 247 5650639 49 660015918 221 993551601 447 256831926 500 310974789 691 473738063 763 649523526 94 960508911 552 82524827 70 62902192 981 94490387 422 628801896 926 994458700 742 830663800 669 73157982 393 545368623 664 363699492 734 563736936 134 25400133 668 78921897 698 223924402 813 690723561 407 832893132 915 100649649 680 680414109 639 656161372 604 172691379 37 538782484 248 533764333 889 858151986 710 866329652 478 739051404 201 581361880 818 808518152 245 789395556 23 511162705 87 741912654 292 374859693 847 160643404 492 645340462 865 670677433 926 493467861 972 283460472 59 327070863 0 474992234 805 606107027 264 785402335 463 267782720 486 362370869 90 509272972 273 414286909 661 138038784 443 753540561 980 808893182 26 989519627 990 573462200 698 644882337 508 325818621 161 492614732 680 570608643 150 991636254 86 398677106 741 486084586 765 679048366 673 587531334 460 469617694 1 939928372 444 566216759 695 763731228 844 488979898 315 872445355 989 11611499 729 399057052 905 957971426 622 637750146 799 706164150 722 565218133 118 401497168 502 468366963 302 306882556 35 410028571 495 386030 887 390679681 327 12651220 37 782037675 532 201841361 813 681296713 235 994304554 935 126146210 98 260944524 296 129409272 844 505025156 926 851650661 874 967942846 65 627200157 862 709004107 447 71852398 157 387350298 533 338235923 287 833588084 834 309983657 275 681051916 792 985528454 302 258630670 138 452390223 898 816532721 929 427492698 692 814037574 297 905483734 82 681380343 428 775936473 678 867100190 493 557278841 559 552064629 233 793423224 380 713577515 689 170914280 541 916258681 285 495545190 261 377588023 965 395525551 390 644969541 444 857204235 446 795053286 141 907797682 153 194089427 233 330338827 170 123427644 330 470644807 611 404357266 194 900121904 54 346747594 881 744112519 294 805166791 56 28751007 181 938930144 610 121879572 290 259415260 741 630048403 151 316501267 685 135163071 41 19937043 170 153465360 113 7375382 227 896820723 496 226141935 472 916233815 896 588116243 226 836104090 317 917248807 475 499625967 170 331638996 205 40147453 907 581741712 942 600014295 483 258383526 305 108638175 412 921931521 447 812568841 504 391368428 720 948552540 103 937387318 184 621320446 847 874913375 779 410416619 778 490638165 216 85978897 156 810101374 455 378044168 269 611488784 972 469287601 168 567363829 945 715285448 932 842941330 417 877432513 866 599022821 417 199416924 44 247126864 848 843140371 551 894888557 426 33229699 93 4577 131 414647403 530 494811585 511 458965605 926 915372070 691 928072824 781 296094577 215 631307246 99 905141783 659 759367165 162 709442788 891 993900728 67 955246653 710 786280283 308 905828303 994 654347030 613 254345994 718 736627820 483 393318020 956 121614311 355 685342593 162 243676895 303 733936823 82 731824870 948 863799806 470 989830570 547 808953919 669 516639118 823 739062857 21 351416583 604 893129882 136 518192517 973 847423485 85 212080509 703 170224514 943 220246975 346 768483127 172 141287077 272 368115742 342 401482210 327 597029940 570 680359499 387 488072830 399 530950946 318 458969916 274 304133388 744 774884969 991 153786971 549 87192477 955 666003096 63 425136131 978 48809009 93 238544827 84 604313017 108 778958552 660 583233733 701 505131735 80 921178463 809 801713761 481 499446532 965 548703385 779 710079926 189 184245716 888 300938651 426 367966779 49 651438517 885 566333988 101 583684824 471 899132693 916 984996876 191 760138296 287 540939272 555 956822057 63 944102944 667 822579774 679 609277319 872 27633412 787 256015165 100 87237934 138 310607829 170 783549499 170 481372033 514 411932881 218 881547651 335 495779920 338 41137191 434 985856472 702 203235001 894 565486946 315 695139121 80 667310460 602 821678062 732 270555907 519 140875000 596 364781980 879 471507214 638 63146464 390 513995015 502 554706098 948 614023712 927 525411702 674 505664887 479 81648264 452 677966887 97 559357765 151 510033437 890 136026212 835 580737563 105 349690895 209 151077205 125 663674302 558 746238035 662 463421135 24 193457055 110 271037418 433 708427604 417 406715706 714 811503937 244 202180288 759 82211501 162 680469898 168 931602140 262 557113543 181 673324136 894 788993059 92 40053030 132 921434433 863 859377804 831 440459261 307 343295231 789 178989016 844 627500208 437 209838812 63 652076948 634 349281865 574 776809713 393 805842744 298 669642510 963 57336882 431 418687056 912 509649703 364 129893565 18 807829356 968 963118348 512 225520172 813 661062243 901 474286341 283 936475270 93 766803526 1000 329282692 600 471764240 882 929368382 899 550675648 940 711060579 705 49461800 893 17066091 463 616419694 917 360904819 911 426671230 240 804249369 68 619669776 563 88181298 642 84789091 775 293595607 497 149705190 67 263426022 972 51927714 101 17753570 261 478581214 462 203827470 855 790455471 522 837442568 809 604396511 278 251535511 734 259044161 202 492146142 385 650856890 205 323049781 584 182754635 613 683648449 21 332598562 329 20597506 847 11241390 359 484801288 726 497673196 906 409285492 500 985130932 911 80260992 785 815365023 570 750934155 464 737591978 287 101289060 42 800995721 903 946363231 217 365688048 118 701164448 31 268619092 364 427342944 148 180462982 474 275983450 855 576350917 430 439020139 266 649320577 656 294449405 870 443006640 510 316103203 782 361322505 766 455749690 201 352905423 349 797363724 956 713391536 185 112256718 694 291641839 67 775648991 336 444995954 659 940248539 374 799046177 965 890943176 945 27363525 315 343101188 449 548782036 258 798924345 286 455066778 541 205340455 206 719090515 801 813650756 233 148744529 629 751991750 943 153623802 124 766630989 675 517983815 857 350716727 848 214331877 937 36456522 656 459478116 539 193258746 530 719549541 981 330204182 860 418809002 568 122895012 792 725542227 232 115424853 699 503899997 91 773556314 532 480944319 682 333841597 387 445510970 233 659638952 170 889122580 188 525438089 598 778058470 379 203304666 708 878390198 320 912560886 430 624697903 334 870200569 965 558095006 927 990834204 26 447423281 926 833595430 301 550578236 511 433474173 245 360216287 958 811870418 586 175186371 73 544148850 386 562836505 150 599679997 308 333053456 168 871993076 392 294259909 698 198466582 646 895738889 100 262227256 149 227661353 4 893483363 971 914529426 702 113791638 83 308253900 168 3220507 173 852057224 105 389542384 695 464582493 271 730079690 799 209867441 230 777562419 565 78483250 219 846557878 151 127226309 596 518808073 780 183149628 541 291927488 186 859739620 900 679486368 857 984530821 324 9916035 426 302577126 52 345717051 742 508278085 927 68234530 195 843247143 104 941511871 376 314526484 89 341953099 960 316651326 866 945883521 470 398797431 968 994691316 572 879493336 826 584339340 270 247022743 571 626698008 374 620275399 532 614661076 698 407249561 450 168073996 95 866587694 502 876027934 795 290270178 665 430403016 904 672423892 987 433715792 990 42667325 578 546645669 327 585445727 763 713569474 10 238130955 367 501757441 733 959116331 485 371880572 690 61261654 823 422200236 748 321591213 864 718111521 328 119864410 344 727750490 243 864849717 524 268484442 157 205426574 539 601728578 198 212057031 620 71509332 881 207843079 751 171996072 206 263351659 820 143608501 414 181361371 685 869564921 37 570974977 446 49805316 779 833196456 598 646420223 98 621586903 894 77276907 379 785590044 775 537319783 867 931755763 915 741808194 323 994206775 837 895347149 41 411374450 462 8479488 678 998305153 359 267014318 401 863282454 639 710258280 476 969656340 862 562962501 962 601030639 926 394897867 900 804125147 797 278347201 266 255497189 279 963041228 479 850490413 907 717919629 879 366720666 616 55076952 860 24957412 726 402339772 490 673948676 242 648097875 825 161636983 738 135260994 576 117596331 986 686428054 37 129195527 718 898737861 829 156375651 639 592428517 290 488451330 932 86684105 645 649116012 346 767002704 626 129397108 581 219899425 22 556646138 534 705056541 499 118621231 288 565325885 824 650386800 730 478623157 436 118147716 301 12681918 610 688888446 227 919616328 429 484835371 986 839555030 530 788707704 464 734493396 718 511902303 896 479822175 773 829638530 922 786961642 102 998148232 999 22922968 322 737886787 760 810988622 260 874300732 656 651097811 892 393044446 66 262301203 321 194121044 369 279414507 475 601187580 241 630029599 615 864768378 534 348134517 922 240800583 99 953218565 985 945019002 154 882656140 537 490393356 902 766285234 252 577411782 842 948510693 53 196221784 367 343365599 183 386062154 31 289745325 912 624721374 466 619206561 900 581646112 113 451674916 782 739261094 418 701134130 122 380830667 28 37559244 592 191582840 567 799106802 487 782628007 11 941995817 558 350568836 546 660940840 348 500839895 45 616195018 640 735383555 582 591283483 714 111233523 10 225317091 478 369689340 476 508182413 536 343926540 107 803776865 981 402640773 71 613828501 12 931490845 968 18881656 690 115276853 581 657953771 486 826561173 47 595359339 898 810089414 18 786831537 351 898593342 444 23699174 426 471277356 485 464347062 38 348958894 848 910944999 377 791287504 619 84007931 692 503897054 59 464479784 894 504468735 664 916602502 900 715037367 921 90079867 200 99109013 772 352748422 774 179265375 919 269689874 608 51703325 140 600962719 627 3023711 656 228544560 82 48380444 129 797209325 880 896742620 597 992675872 62 616724803 428 20748303 5 228584242 859 171704304 396 175904437 391 171862607 346 1092144 832 949783210 898 767175017 30 362828063 836 48591097 773 829313735 362 198427507 622 963438198 383 83134784 20 140605990 886 817666788 752 559360333 512 877677730 615 78054426 677 383702149 309 886344276 214 391268795 538 845959004 709 21435365 985 137410741 151 491168928 338 536586236 384 132304867 97 213095380 367 515292217 924 533712495 878 679381580 887 195315076 751 264228153 559 498828468 792 899850775 370 394779955 595 104660313 369 679664240 273 933267964 534 955488283 122 159943485 357 227434114 374 149002611 843 423421370 594 850859388 606 753089098 752 564738690 529 506878860 931 955054990 592 935879978 997 856342397 466 608742978 960 875190396 512 495885450 220 589545594 612 304966126 335 213222523 308 720386291 994 107445230 244 23196516 472 871111382 966 549865873 594 771796918 574 919848355 580 187107010 732 587688677 204 796550208 684 341687973 179 372147585 445 390457778 136 800043208 475 427985083 574 874387995 182 364832411 669 689398273 595 679923922 310 183155190 193 482075979 240 112060807 52 999139702 123 920747668 45 913918359 775 572270364 819 596520272 537 350389457 429 980719740 365 453489743 633 228927852 198 330427065 872 500163416 789 977840094 643 474930876 691 732138131 903 621233546 471 692383422 200 559545594 97 312573457 587 397683851 205 949997573 264 115854039 835 249687984 440 393465413 522 405905617 652 527728183 53 843818901 774 157188093 147 731372202 714 703762508 886 318891042 356 12762513 421 791838806 449 297581622 938 122181533 928 669617439 829 365198603 869 685342328 271 147118023 971 326365682 593 161327719 130 421153284 971 526099349 943 361462948 275 159978885 80 971073550 328 338461905 416 633344818 947 331497326 314 180384251 18 63262575 202 385184875 767 537446151 861 936163549 360 701350649 214 113843366 27 570920211 551 569476889 331 899773300 154 570375063 421 966955605 389 238749850 158 339120584 800 563719960 313 532914304 728 22773883 727 188762485 21 311698099 798 24238731 664 717248045 71 449237666 125 953572103 464 599794141 18 682708081 798 351085366 627 686704933 632 389427355 586 262695660 168 897739278 472 841363478 945 336001918 599 920278433 326 624876556 912 867896572 170 457406147 567 994860931 125 523280550 893 957384348 885 714500974 907 563699188 822 553538533 961 123654883 508 805239899 696 238984152 41 276002858 167 56305801 875 97034464 267 266674189 784 924423082 95 664365714 315 690518721 584 803928638 224 9138258 452 251463161 312 74448716 114 774037513 634 414834628 990 918108735 433 695814468 884 446268517 378 296406216 207 746256721 100 206895804 556 815144694 714 508960108 536 519356047 149 564718898 124 843113764 288 141713544 288 595348766 675 319648376 559 189368837 745 398779411 690 55651021 387 806796294 131 935045634 87 711830095 825 625822366 986 477193130 347 79220085 342 314661422 764 998987942 501 583183460 334 868101864 710 924572570 963 342146086 358 85347945 370 96221395 925 729628992 818 134240417 672 719749787 9 391538650 754 58046015 200 980998753 96 265269181 13 36137050 624 123300926 655 872561937 800 525679262 783 684332952 179 951598432 661 879703808 397 713213396 493 936412174 353 144271819 315 563354447 505 137265003 380 674046277 633 569203903 311 415118944 854 314292226 827 885103734 302 631295719 804 201907568 827 251344639 618 146418646 14 606558669 431 323503699 609 718649514 555 387182806 903 280562048 681 936135568 880 157614792 716 607573841 784 845275644 959 632781418 926 656705622 704 831330613 888 328801552 22 392126643 526 904397005 535 736725591 640 270951223 786 155360424 196 30114569 42 207982339 705 506660632 981 867242437 811 185403722 801 149835124 752 625968435 71 973688435 196 948123375 77 798919336 629 238644422 603 609944872 630 50396506 625 528682471 443 619588001 563 431900963 830 526595507 679 836382276 102 281772259 360 713199850 879 479439582 68 154333251 339 283942231 334 607930369 774 640152396 694 741766130 112 139717787 379 854721853 503 425260201 416 483059311 773 940021901 12 553573442 486 24354677 358 388004711 877 544445783 936 278882408 242 783868015 656 615100042 608 897969695 546 585463733 182 880141735 860 395940453 399 81898714 51 540484908 746 464073174 74 982155491 375 949477766 562 982199657 892 892076572 443 52517450 865 261758704 392 421284048 619 414507865 37 838114018 658 449241439 900 981087692 600 502679048 845 441632753 157 197498986 765 466979795 121 159862272 687 836957655 486 62252578 493 96522413 828 841617373 503 7773311 774 539647120 437 612029144 157 881299691 72 193027828 129 626277102 840 726654498 429 346719237 547 176755902 833 592922207 62 449771062 204 4951633 272 478405388 800 39755841 403 248154967 793 450577578 789 545762113 395 547295137 714 681381535 801 807356884 936 791486389 996 342348963 722 455903640 345 270483907 357 245207039 966 265353467 622 574398779 127 400179188 723 701581328 401 638511869 924 185781434 209 38742900 423 902739120 664 332518475 833 595623194 174 15585669 546 932112560 732 852946827 144 27844712 921 798465154 347 474335461 404 615400622 226 736933825 597 368711096 602 157639101 921 725950 276 288196129 341 174075308 563 126425103 228 105641655 876 320634403 573 177087404 726 480604019 82 662728481 147 59047271 741 320200663 732 971597985 106 673372114 430 79187826 651 857073181 46 561763357 834 721579434 437 493001532 586 191396705 417 954356664 704 575708595 549 145092490 759 262832593 212 899448588 413 234246740 411 218549384 789 322500749 947 110621589 830 733423868 673 769083502 836 536377924 413 790460779 853 251077120 550 540585011 40 979403889 705 889532966 43 77417304 755 763565037 734 14679486 287 880401365 818 694703733 73 342021379 898 963391795 665 306287266 328 321501833 610 523683304 174 335505794 118 993744180 75 386381268 652 373160946 564 64873193 224 52627346 22 378568208 730 432511594 52 855186864 486 735185083 463 347030116 627 895836691 158 432998770 227 491529481 940 974646403 266 655951976 970 967500543 111 220380702 626 516129000 456 512835924 908 838183381 926 873009361 7 566043560 704 445758419 322 906118994 848 650531312 150 207428303 967 72186661 670 710866769 587 586086589 26 552210324 434 204056305 463 868103017 92 139597162 107 890643537 981 367740451 590 385829353 270 323378269 904 745378779 45 604721013 890 940454294 848 166614119 695 285903822 474 522201310 996 828080206 108 913506567 795 605629563 643 650746356 71 218394597 321 123635477 443 745207211 183 77603054 770 355837978 545 190722494 515 999227024 611 659351696 743 993672103 270 805432089 860 383996008 301 361081145 854 228043805 869 306439593 483 23894794 523 144897815 160 963213511 876 729821940 162 421636177 179 57074066 881 245934348 334 430107938 753 804641661 435 187810479 930 852882872 775 773911261 579 718783452 134 423740398 191 135000942 629 485144902 265 602989178 97 20681083 688 766694001 352 39087950 157 21116178 173 830201937 262 591390665 123 761204588 336 992748476 656 199185641 211 294790323 506 688844224 124 676939788 804 43451956 159 794773774 566 124699129 159 316018591 555 372491656 629 818264412 513 248845273 681 506448881 102 308342273 715 937844019 955 330863551 141 523060835 497 873978428 107 305638952 540 615209406 535 419661883 237 394361286 499 697442079 59 334732701 985 693406141 266 138482791 114 164730107 961 874948058 783 465807487 38 209049699 957 149485031 526 739952492 757 809935260 934 832812648 802 263796458 505 770507017 773 844816722 672 417036350 79 47060845 484 235387895 768 965014041 912 484722160 101 798922207 344 12186006 117 151370637 121 289536647 46 734159904 488 551051817 193 993276649 6 428218372 841 247967185 943 973316944 108 932684775 408 652375027 838 843234590 823 76141322 725 445272948 45 137445577 71 315056074 586 836632855 643 587248168 679 567920241 230 35347015 256 398548231 631 947266121 475 858300524 512 671796826 852 938962211 815 14153650 484 120426031 936 795337409 143 455880767 933 442413503 615 624346068 594 429286530 105 230047051 437 353037862 547 147888781 406 809945513 235 475815501 205 662421702 809 424197361 808 448128048 351 392115640 435 497374401 479 535177300 241 230786226 106 816324031 880 530495574 974 933954250 884 807626750 114 930127013 188 847138744 94 225089624 107 304604853 435 962042018 816 703566945 194 794372771 352 171921644 279 806808576 3 236439031 179 528004010 258 439237760 573 234655514 310 18561335 464 261443371 22 933674996 837 554807401 771 973067539 617 49101741 746 998815851 782 382057209 423 79772631 6 480835017 816 934568317 87 863259263 227 176258567 813 463209605 222 491121256 64 137863649 686 516541476 925 556520928 498 118258588 204 681128276 545 383622252 656 55041555 339 182889724 611 473943042 863 583114547 976 321202829 624 501211694 909 505979038 412 16804242 468 169349701 396 455119170 426 992056896 364 537999401 993 932410192 683 23299094 96 40082989 890 732158427 979 782543180 379 700169963 718 265362818 859 85058580 455 509049875 993 81667822 904 649023909 579 87044083 375 547811897 155 846018216 539 328626957 613 845630624 937 686367349 95 291839219 911 969985475 5 114191347 800 886660860 363 584329166 225 609263516 446 603796781 562 162455555 827 264087524 430 430761116 370 717265573 25 183912091 758 128648394 503 775843880 351 121409247 918 304230388 272 445240094 629 406674677 900 892563849 848 234766483 238 451276191 438 395405342 723 444024989 358 635557597 383 91979477 871 14518330 674 165579112 907 927792434 233 969679232 470 365990393 27 90364760 129 425654988 953 518405918 31 120656144 132 394491446 278 839396416 459 437422118 418 627751671 668 279274265 428 290958933 671 284151875 710 622487460 799 254010872 636 508943502 797 696868517 763 567143676 960 620146053 730 250814323 715 472005355 386 264624083 413 249244388 825 932306418 640 510284364 299 759177570 564 429639118 423 79362472 113 585645419 399 990909081 920 506814862 814 163123718 673 113233428 737 469187008 213 690718482 17 117937006 181 697426227 682 151345873 894 191973780 660 398321474 407 832579984 6 128659525 216 737964487 14 961819852 702 650839286 525 277802383 454 166490421 862 235275823 728 129813762 733 546780521 366 409934415 363 541736890 370 848782170 803 557433561 797 417067721 895 192967385 307 935148838 160 911813421 838 279179750 798 299141851 460 129001133 294 776170946 515 226413117 621 742234134 876 893854920 132 52417628 575 44971910 680 937741158 522 535993375 985 8347960 416 578447461 818 493998821 418 852790873 788 206489971 506 968184579 877 127413520 908 980084120 230 980227937 215 570767435 898 753003401 10 736146263 15 822409487 988 466382675 124 416022544 105 69007038 925 664250452 296 655157949 664 928404244 878 749905900 601 625869270 489 743469416 303 553350331 619 475954361 60 54379005 625 862999113 801 622938438 754 668500402 872 77350961 742 460124210 771 507357070 733 984682197 591 405748349 537 444370456 411 309135854 225 167329375 929 199579211 162 998203830 588 78471862 818 853914359 504 494005768 550 775374104 973 259080674 585 372683778 407 955207496 406 310043606 659 441460415 690 612609742 901 316761250 497 433917437 980 252229419 396 606265782 219 455928949 572 942679066 535 570448486 953 975770714 856 228729794 979 325356427 614 155112330 263 25852768 186 753573993 912 611201827 418 798024904 614 2524963 536 327284290 801 556326968 763 818631852 744 530841510 521 146397357 371 345148669 637 244109121 814 533604959 463 47179494 93 791941774 615 119450125 324 939962807 590 476410144 373 550430336 639 929393391 918 200651391 720 30549357 280 272758205 675 500130946 644 628436805 475 781617083 678 907105500 902 123402085 535 656468170 760 896456196 658 690907341 476 811906480 589 257979044 108 963387104 705 283233367 807 138658422 72 849727076 455 920255861 207 794032797 377 328668189 643 533130982 295 275586646 428 360336831 131 848528352 633 319148581 906 132512878 68 861282933 352 897857296 83 83462313 94 237990409 513 721203035 629 21350045 906 812181674 216 508052996 562 445633129 911 555428956 492 716008002 642 317072101 468 616956194 752 693443697 706 374615421 919 301813499 595 664288843 351 875145993 478 445729731 261 912901321 471 629545994 436 606007484 785 500607046 34 627593031 326 905378794 52 807216549 287 830751904 959 471461332 349 173296969 729 232851111 247 974429358 200 563144285 480 818925109 248 177785013 303 667392986 825 348093717 516 43743928 437 827759352 642 443653716 885 811721443 968 66455182 785 173860425 756 942041862 363 122515854 137 559780335 261 711739126 636 467179788 432 451968023 490 899246173 169 371708463 172 646210757 382 771403597 333 730223159 554 661331908 824 142992321 663 355401409 658 840839081 670 427679454 589 736711655 337 173573389 711 899026200 765 112289095 253 839002653 549 140864044 768 451523742 49 825893291 45 732595051 41 242733919 995 402803088 0 915488023 571 755875914 275 96272487 396 604245537 808 668848291 59 332167491 863 100197987 589 319482458 882 284043412 57 807492040 112 835381688 728 638009210 902 187301099 778 142714460 243 871399682 159 793807155 326 368081491 260 17564110 110 959966255 689 773785070 16 757193068 528 136487359 309 949453708 517 541377642 948 776328461 464 396839228 944 126905184 898 102490305 917 439185831 455 779250976 145 535715059 418 845736474 967 197960554 751 243687074 517 605931372 583 946357868 337 904020501 729 429852357 464 35719403 740 345926664 170 579493498 513 43742036 223 90476720 332 594637780 557 214639151 948 935545940 419 629873191 163 483041406 340 131622535 368 8056058 401 319712891 127 272184228 45 792009557 689 171678935 701 994349760 273 269902079 888 544252570 594 82731441 507 539654210 394 520082557 261 926002254 913 780014248 457 133536328 915 262664844 241 61170685 616 40436583 734 828384826 22 419073262 308 214023251 825 328115298 422 598681187 559 734153069 377 673332091 976 142366943 845 892444777 366 549422185 471 483487409 211 217017369 861 659432863 70 262172727 385 898029323 966 615755212 851 756429217 177 121643049 583 339990054 351 314274313 108 171570772 790 450363002 85 720392839 639 938710920 172 119668682 157 99661375 835 942039033 981 902210841 626 892982070 117 712654440 472 934302407 212 528207695 464 887108040 386 218107557 20 315749145 579 599207368 383 404884719 844 682861450 19 386002519 792 935424356 645 175115574 716 872690975 351 926680780 865 46366546 765 212117270 795 203969307 726 132068590 442 687895664 98 972760809 997 945754697 131 375787816 191 122228901 29 468361525 498 183001488 903 510482451 78 701871264 841 186360278 583 453853629 381 69509367 622 352664798 374 222556279 19 947237384 863 343699858 907 599565894 429 593854848 190 674156148 681 49470282 315 409664827 328 62478058 194 150283456 570 114363593 315 603407463 261 312942586 803 311596995 929 139027824 453 221357246 496 154987440 231 90916739 644 261188690 510 611895657 552 160615747 724 687939921 956 801672378 43 713194895 528 243624985 278 278387382 886 542633515 221 289450094 168 266950258 464 126775201 440 236669798 986 104345907 911 957824327 409 737845901 112 698622562 215 963057989 724 887357627 627 30678360 950 773485467 753 54776333 482 2727785 693 586733779 771 110800706 357 688059867 117 550256265 709 465424994 8 25670482 829 673132450 518 997637885 572 60906719 228 521136696 675 721198095 227 757516423 543 947307247 248 627478061 872 57505570 19 749480290 633 290047928 240 830966300 218 168117327 674 245043562 626 564867929 532 915449285 820 876289018 601 873827084 927 20555630 971 535356624 113 569620567 901 474909795 501 332248541 757 744481881 873 858285958 950 427036553 208 88461484 977 282646052 94 55417800 422 443250595 52 561043661 294 130333009 885 652344227 650 897366694 680 215433325 942 401310307 258 958187310 306 217763086 387 270483925 57 567966631 915 16678249 873 770085111 83 126011206 11 73346170 33 675534549 327 770793318 458 166005088 638 282048979 735 514707543 312 943112208 536 767543371 344 693229327 954 192370245 196 842407170 543 667136515 548 128524160 17 942614120 632 520565897 309 45858280 922 170188715 145 312615989 486 391731585 301 950042434 230 46756755 693 604405403 328 626850500 863 913296383 21 820528518 919 546663900 841 973213471 610 23686853 663 729189115 99 163324058 213 657368443 986 1911498 865 818532294 66 413778660 917 758259466 218 856100859 637 247019348 436 629535626 262 382302320 325 635202613 779 595177164 77 359513454 3 745940173 872 516157629 499 743462584 656 715143533 783 199338752 925 794217784 533 809434775 386 523637178 906 525968648 419 900180093 653 610723958 480 173824596 331 763289349 461 88803539 760 258209059 711 243728296 472 457183563 9 322925070 829 845278375 731 495747426 3 382589884 714 441254984 624 997480552 510 289774994 567 198396157 145 68406865 186 754320542 779 868830143 954 128290002 342 211208730 859 159042532 83 186654278 52 120521269 358 376118197 271 697567289 919 460006722 923 856635298 243 21813869 258 604679771 379 821524188 224 308801283 657 362268085 34 754863788 959 940393761 158 836593112 144 580889780 948 984671579 838 16888338 673 812015200 690 340252990 16 398930194 763 754338921 204 103842363 435 570273842 55 236401357 335 122582381 693 254964810 724 466809625 37 685787139 761 534441756 208 312124368 124 171441897 367 942453608 794 161656540 323 737845062 227 286225938 806 502419746 54 214235369 356 537043783 475 582374290 264 576623565 975 217614812 66 521802265 146 779963145 823 668996897 991 287216860 470 332443010 578 81300359 527 233917943 354 299695437 428 649266696 654 11579092 68 819088112 972 747252279 76 594033491 486 153609806 320 637125741 291 651381034 442 516718411 343 368778818 971 173946929 267 327352342 672 856672556 770 704634900 634 79145720 542 550274833 535 48181829 371 513495115 702 866427807 204 981298540 731 529950431 656 528843219 366 774771870 717 509614877 12 751364130 204 519342301 560 628569079 69 369855456 709 246845280 719 750376307 878 823636522 756 56469064 449 251011196 761 431424477 303 998888457 24 79088445 321 176428361 42 159952426 45 620700491 20 764801004 87 198193262 261 25598438 462 891505509 384 85308447 322 119391255 402 115450169 602 559447044 653 382453019 1000 299870521 54 549654279 416 716909075 339 692219016 437 483821232 246 912481482 40 658491267 680 127066956 71 894890518 679 117878534 549 170274441 946 713198793 435 591181303 163 805365160 871 478277465 724 242229074 564 242983201 726 798965281 522 597430433 503 979367024 617 312186770 232 484920534 335 917404182 590 101152879 925 81837566 188 833543256 295 87905624 155 649405306 638 386443391 666 525534903 905 71274593 785 62805499 5 545228701 305 578233275 170 317505730 325 397716570 164 235941729 272 340950454 51 230829600 631 97854204 665 644374629 207 7309323 33 218546917 319 244790841 382 562712361 117 895860335 285 291987455 63 588728720 954 394935656 195 248075109 813 364537145 700 754397856 831 486777815 254 330335108 627 261155649 869 128843529 531 636827883 183 152938184 337 967730119 334 902748238 305 682334226 219 828530016 641 114284874 776 606391995 12 824291766 968 489754286 44 112166819 877 442557121 328 562445645 84 347432488 644 55160028 311 814556970 639 43067208 500 147402331 365 457793447 537 510936290 183 536840226 222 108833393 922 442249487 707 423234663 690 131667572 752 917964594 745 819661484 866 711205418 893 658275769 478 604904612 769 459713614 15 291542203 121 551769423 521 515551661 143 906349418 143 983556794 967 749270808 274 502771073 989 588472234 352 621957564 64 617245813 109 832790266 82 139699496 759 638982587 517 985253963 226 369160926 94 917561231 590 930424946 850 620847684 394 564832953 922 894674129 513 596078365 736 90367156 212 267112046 902 928171408 371 321375965 885 840759718 704 885348633 612 834037849 831 720580389 716 257195095 894 164493223 313 655768945 885 515795391 768 813613531 618 269099737 626 647926913 521 452628619 407 42092445 457 237637641 543 910846874 602 271683969 804 467785692 698 948744844 651 643367037 89 315297284 957 397718149 309 490327648 353 709876036 989 704092956 982 864807468 146 396788697 713 614351720 121 413027703 561 501842550 771 694598709 306 412219574 222 366420093 665 532340102 19 924811429 766 938828929 984 361260194 600 133261574 986 407391459 746 892523385 716 13352124 745 599418350 523 248677152 639 121232338 553 854472873 826 702533282 775 511786181 42 195986786 304 255607269 323 94170068 757 365109924 518 307967601 154 550436567 263 451951616 305 84361774 430 356432258 586 656253747 513 437360040 731 148784505 827 946175056 883 545439199 26 962536849 152 731171530 629 811165721 780 376784510 851 587452629 422 50753268 546 312575436 38 13629136 866 513045567 703 660444409 752 678411474 956 126005933 528 840744190 324 149759893 466 977151649 348 326211570 766 296056359 633 308952836 672 126331738 817 438295344 762 285000963 413 351078818 842 88694330 397 269419533 527 776628360 504 945393787 703 442177012 469 534482282 42 984184723 156 479143819 692 120545931 436 786446799 736 308309449 347 312312523 853 767781309 250 850164925 564 962717894 648 137388806 713 980049083 185 193892866 401 549513305 933 366047959 554 515391844 348 243570465 900 345838175 443 298096137 164 235183943 385 174391462 108 508397915 944 843451605 493 922143163 944 239279150 797 723860523 143 366700700 797 125228888 353 955675874 834 550260600 202 526971437 417 263661024 429 286545020 773 938820908 85 643048503 33 115680221 173 247031465 102 858825121 256 482149130 698 176317083 159 957246507 408 130633593 790 117230634 310 667429649 534 874598282 97 247206936 328 784275239 533 60022477 260 678720564 782 832804586 983 92883923 421 240383144 42 448799598 415 207165057 794 288838584 740 825477603 394 962847062 394 577903990 880 911810409 883 134629748 560 599520615 390 434387617 799 36959028 836 365533018 335 826641435 801 65269770 821 581735625 734 970022454 129 894805707 729 763499441 758 772985280 480 486630733 125 358567936 113 158558738 167 875912063 412 861499211 546 52232174 946 723908619 896 544577633 176 269167759 244 175375046 338 468403050 471 602384155 64 834078290 250 394139215 383 702662756 224 424256752 632 884994670 481 116631723 937 988051612 955 859832879 822 535496287 934 642172229 25 356103979 751 406981487 592 916305289 663 762862995 9 210360176 790 107777697 764 151704482 310 853628250 887 450693432 473 624119851 659 177097931 696 290127205 940 164180238 202 589362620 683 733200219 950 626675111 362 336905973 994 865258296 558 266366146 774 215449550 798 961698461 702 796895286 985 836398729 379 992985816 233 130420020 304 536540590 46 113644377 745 440758074 175 538950404 264 981826558 4 795748539 395 48400766 409 834649432 817 520141664 850 415661460 121 584494738 95 143960374 825 551913902 122 307278484 354 37107037 709 446589198 556 195956728 425 815443200 998 958743874 693 957964808 458 361485625 710 696643867 465 291248491 5 294006378 149 824622380 417 285256272 926 204654979 42 4625967 641 798059978 584 628633918 813 599948791 752 840069599 397 226493883 677 597421347 495 502758683 483 145535839 639 353576188 737 897233258 2 938296807 878 378793885 709 972905795 101 569424881 479 724617414 23 666981568 908 893488615 904 253192104 305 42426547 334 688744493 625 7627116 418 313688415 674 764411739 487 638466586 79 626634466 514 748012671 55 728224867 343 731720751 692 958304037 518 468095672 101 431198785 552 689074943 762 128311044 105 330761810 826 214983533 48 710172747 647 773671598 822 65074163 666 113039 539 203286107 893 850100453 196 537142577 501 977712004 725 965192598 377 373263327 83 962390454 83 393880726 839 344216255 326 986236160 322 532782170 488 281884764 703 211290051 429 973531659 213 736318082 966 352284346 437 679857010 875 769535621 605 55743012 651 298223563 759 675439627 396 99903223 122 956840441 626 116197083 624 266515954 794 424609426 83 932213843 334 913467932 669 881117793 540 35875189 392 392414209 834 56469822 128 163215172 894 724430946 233 393850308 563 23189828 357 271629018 746 723164213 731 188024233 704 367252474 542 977287864 937 770649012 600 677915336 605 69438184 984 34554385 669 667909594 642 78791622 848 308576937 691 186982043 819 658393418 829 981529325 97 50258683 621 639265891 358 627351407 416 189005158 195 23548065 531 385729275 975 583280821 514 742047374 596 364679824 835 737783296 666 621250603 794 33903192 857 54237022 46 469210970 69 268741822 761 810422544 657 509970253 722 208024172 619 795723130 818 306604167 544 116588115 0 512837682 228 105329229 942 214312997 497 654786333 943 524847875 905 889670329 322 251764503 83 755007125 780 742317806 303 829906985 741 820945309 922 318827423 922 479750961 313 960943867 804 942130709 755 712651054 465 876056580 940 257170830 797 236272290 334 269361245 356 559937240 391 800968358 691 753479015 963 929752007 354 745073843 705 348530564 720 418859022 787 678805011 188 193828629 503 567865133 146 923099806 766 59093212 911 443763858 126 236489331 756 802884953 616 689830285 61 464797645 513 150249076 27 921187618 513 471421654 879 37876072 748 244426777 887 840913050 283 688542562 731 613221564 681 392635098 463 159741508 144 392089494 561 324838711 843 622045918 795 927206391 615 649926580 532 528397215 902 418473455 280 976761533 405 772013345 263 150854078 919 888103202 30 986884088 780 607638034 42 925253055 622 845292556 65 727349705 63 944952326 866 137317795 195 58949903 373 966556250 193 716042942 216 526721289 313 270478591 402 459384803 157 403801522 473 34705846 742 831939327 544 700849866 77 111689428 276 696202686 693 370654447 671 326785948 467 308399621 277 870509559 545 450946699 37 67101588 774 267851322 257 157995655 232 491062482 643 781333171 543 456959947 797 131514795 821 543125346 783 730989488 431 332631373 214 185868650 698 680672324 888 177239392 680 615359617 289 11909017 236 982300948 589 142830267 548 867155922 983 249365877 795 41363839 628 141709299 651 627911092 115 886097078 325 981961854 451 789706724 290 160950955 685 974626602 533 592184620 449 207622626 170 133748354 424 790414707 721 850163830 700 10215271 491 65306905 933 167882342 418 399385766 807 876637363 187 894537026 282 885092735 543 212929284 525 608487930 965 783753812 581 166985750 638 482566970 815 301646167 91 439206387 350 311081003 882 167839919 513 16272405 737 549010828 450 762510801 676 769736671 945 578638569 801 849901677 936 505746311 433 159404177 225 131719283 681 402686019 9 138575681 893 744926386 532 409682325 903 235208392 257 406027710 343 582256893 351 342024941 927 161508435 313 550868636 995 7188338 651 133344642 455 416930886 489 855640151 744 964221 891 863653636 210 660705415 454 334670470 287 775446062 508 77538856 59 624026256 661 454996605 858 88990993 497 904076827 364 108316515 116 130286395 83 665129917 101 556095971 278 225686698 487 426715153 675 885135139 329 23782797 480 443458967 742 523796337 639 354515428 759 623895615 56 141292265 933 835053679 757 153721702 782 272797722 395 137363464 797 800336396 233 702798599 201 955487061 479 358182383 156 371382316 65 512699373 773 823211420 684 97101888 487 926663198 20 447649740 195 462468945 593 968541949 379 175271996 889 783770036 785 209986368 902 669084518 485 637858735 207 635355111 259 455933467 997 302445142 364 932759781 622 914657203 177 957449163 653 893514494 325 600229474 512 68925781 737 814236749 122 500338925 124 224714217 320 190518980 212 655967926 674 473377079 695 230484067 331 741132209 572 453897899 563 36739057 672 104656741 206 303925570 738 70888294 73 977781534 741 868318286 393 515420023 732 563525374 304 907650411 607 773130343 810 809088772 785 537464553 115 922119904 437 849952073 317 929977621 476 910202674 582 328452755 378 958020850 1000 767981225 40 248682562 579 912666985 111 373950856 623 599023925 789 712959397 246 375164176 568 924716124 783 807351709 530 93454545 179 665543689 56 669766283 893 799268963 297 282789445 819 495582015 543 912094657 330 567142057 132 18992393 474 462490592 662 131874952 608 457401050 788 308401169 741 203294184 226 705148152 408 585579781 44 219942510 863 701039312 380 345006124 299 402367168 891 878961871 602 859758792 458 766533322 578 263075525 934 766046752 16 36726561 133 954519032 211 217105224 527 11769293 582 87626449 551 506448000 588 218558124 375 647640699 790 713611541 91 337367580 704 700918551 470 756265479 114 276772446 686 868097947 825 394140353 172 876747334 513 104531510 433 767842541 788 403875610 673 405031432 881 31861421 161 281735484 695 142572831 272 646736217 979 427996306 234 571918387 826 775643983 441 810143441 628 928575853 609 798924769 743 712438847 728 343328809 504 273459503 431 499059837 565 121948196 331 751049478 431 859029491 219 852612138 559 969140729 729 101642786 632 201499446 497 872583208 47 545356717 50 801642861 333 16276568 396 873533996 765 236423750 296 809676708 97 267552515 296 491753408 483 256632610 578 753107571 351 26500971 245 392899647 41 904706290 638 435129957 342 239365355 182 6756160 491 823084882 975 368069369 899 993322563 151 846316377 4 458386478 685 301686517 481 347653227 682 671100165 762 79110257 445 338360296 506 775560025 317 308839194 700 486122765 236 242018637 218 261393686 844 165185763 93 159507962 464 601421101 895 729951827 970 627455456 259 373692701 66 153364032 301 152021809 833 412375142 848 225182612 688 471890808 550 332026034 833 103898134 62 91760011 686 612366782 898 236549702 495 175238759 744 971896838 58 922862438 921 155152539 589 981683618 546 916513986 533 707810148 728 622428237 759 980519610 40 490956995 192 548868433 332 208221883 905 293373743 254 382057537 739 937535257 249 170588141 891 857742898 762 998477355 456 877471587 331 811139245 367 828359978 146 503857715 661 878793569 631 812868718 300 49108438 704 279736799 192 271410033 163 92554612 490 564205910 673 808759513 136 770608363 434 45931793 27 144257146 109 541196763 978 109837713 923 332106371 1000 950653213 576 744113108 431 216688384 352 932512599 985 527185942 177 223108295 19 338985905 813 60014848 730 595670733 952 824027558 459 633620153 504 480753966 940 308967232 692 50655331 339 131997773 50 179170182 154 492766143 80 652831053 919 803918438 576 174409591 955 211915966 729 490785364 511 267916019 14 680796718 260 832699541 449 951381319 146 43630241 949 965542458 289 742180732 620 877897377 518 479281878 712 398312418 32 378756071 446 245766803 354 901904354 943 681672741 484 760450137 563 600781123 703 82284812 848 591562060 123 804686553 755 517866722 784 486450653 20 357677688 932 333645542 249 747370302 145 622379807 8 207967748 520 909622161 517 466661748 575 186069722 432 643574995 860 392944553 141 325638870 318 768986197 57 970705861 950 785548681 175 560419177 942 235939829 225 283076607 996 709186306 561 335691303 466 887964109 118 351951159 420 696910486 643 942077444 395 189508002 276 309778115 291 89556689 573 890407556 237 301801757 45 242778831 439 276380750 428 197728738 147 961472000 24 906337592 747 49727454 178 899040151 917 349248951 729 654695841 285 547317673 831 64931583 170 946739110 921 31010381 718 893259100 490 391428804 938 783065964 931 837511557 597 735380974 363 496992644 962 330847602 616 654886521 108 416592221 462 31103808 167 3920787 835 506417108 743 512809100 766 769923567 277 272449430 586 777685731 819 263342154 980 363767190 814 776461714 576 52945257 33 532031290 981 475289344 190 678030536 56 973286952 318 47360564 539 455371227 835 473907357 890 685769440 225 444256176 499 769734407 210 64001366 696 250861833 167 980821936 307 319755386 842 905999709 255 464918141 51 408690420 10 53544666 569 4813714 831 285363595 577 496648447 28 246791065 409 150103168 299 76318047 723 428958105 507 181188429 563 542217694 400 833703940 336 697143300 871 439273689 211 442641685 378 788815206 788 305597811 473 829893714 545 313788542 174 980149613 777 954073907 325 535374512 867 994272386 573 525061329 273 19161902 598 207500627 179 125961258 176 711868215 193 33613059 189 704941722 705 212874384 753 354136326 86 232473009 950 621005098 626 965767692 85 709464916 478 164768248 39 755446358 856 509620200 46 321036091 97 863416818 163 696494954 876 183214709 772 317122681 355 240367557 385 953927976 133 513544608 938 71517738 822 475873370 799 580273769 161 219206454 267 829146612 629 741398085 122 730118059 499 490561088 120 359441120 838 20591061 691 85366081 129 65312624 847 854621043 87 850937178 879 478069946 206 240676385 272 256350027 92 388918496 420 70626332 712 325993254 996 860511910 440 631951473 186 30500890 752 68239964 224 459351520 130 929500522 593 239078087 76 19843296 562 531772350 72 694641824 912 985592003 912 468624256 701 174883881 134 38447968 302 511630484 328 381646085 610 900076279 254 343550932 942 72477214 676 580731246 141 191523766 706 614883690 184 76075128 787 162534190 193 508581398 293 405974917 883 866761547 583 101661088 369 773594423 784 512105966 958 653440100 69 875057759 416 991143175 492 388325840 732 47787343 782 675438119 50 894344682 874 611739974 96 441329090 224 887710819 298 636495565 797 773322349 954 286642878 761 176413484 288 227047007 382 30546994 357 491978894 555 303067060 398 858522828 367 119759426 725 601622748 183 434299829 614 108175595 516 791031486 500 704871741 957 466618327 696 231025433 354 726495138 920 293180673 399 61425160 526 962376767 348 57014455 594 42465476 498 455788970 231 755870640 293 706085136 473 364661227 843 882466140 237 706768107 115 852437834 475 686725722 603 676762565 54 10477670 144 285363454 275 225991273 841 795176194 770 369407732 269 959412691 393 539788399 866 100262149 304 97212359 869 445303211 225 656455430 153 412692614 381 248394752 331 763080196 48 291221947 985 280065837 807 640955252 103 669630881 13 762979761 476 235134695 452 856053997 697 757646636 533 815799623 700 386755916 33 869605768 270 421134144 26 97313726 435 378668014 8 385727771 687 256180990 363 376287837 407 237601573 354 364758973 473 615755994 393 550232360 453 421169152 634 179859399 304 702041204 623 983968435 722 310946101 538 629007850 323 879526375 140 736947177 219 902862231 820 765929594 592 963409278 799 862772169 181 633092586 295 161322083 734 542616610 377 564787935 149 394684240 521 31201712 648 443037476 868 529111742 158 601333501 672 933650573 739 603231948 442 925784354 285 220417976 893 375131780 358 816471813 139 140942671 930 665518205 467 284663714 775 167739600 378 423640649 917 630178811 566 614860252 283 701352308 301 863622020 423 210932397 561 93165233 314 773391851 422 552916745 874 979486785 905 752356575 99 950064478 263 94301674 848 65786920 911 621461426 496 112971099 280 54374359 5 173595631 671 482355357 665 593957585 725 615694430 86 545779387 415 657687419 471 378298173 134 731611722 940 596663179 64 549539144 401 962610791 560 403580238 962 158054718 473 914737729 295 489305223 572 97299109 319 894847977 141 496770197 908 395493491 393 28441865 322 330675531 946 891496356 757 670641133 724 274631667 238 616251999 658 626999485 658 5137264 721 211511266 427 102009864 391 915816374 494 306201160 52 446041031 437 743278232 83 59302013 866 401728357 916 225778939 415 318846132 339 913222192 424 640607762 372 859044342 79 368261471 335 100007639 905 270408872 780 375274093 380 316695635 790 173751869 951 330262128 734 773639883 244 127304056 519 431273981 12 394117865 824 945768572 828 46966864 7 825934582 163 356760192 905 202982052 745 82581664 618 942305185 628 23099076 639 316868729 415 615734866 564 570118293 334 539558983 547 147485713 14 501232996 209 23778287 633 641289591 290 469231109 540 1723862 681 312191484 991 273777607 748 176604840 486 640113665 990 782597646 116 297073170 996 377336665 460 450729457 71 224117368 985 341399144 334 193906172 64 120109081 420 450493139 364 6426765 19 545402625 191 987805291 155 344153126 926 46936895 210 479519721 668 96897505 570 798933566 833 318654636 305 397128977 965 93999694 495 721983979 78 426026114 855 422399861 334 143420880 651 60660142 508 328960575 416 892873753 75 144342929 526 359876873 452 127161600 4 529720222 391 380085390 296 265203391 894 544611557 513 397988 571 409744619 273 507128750 479 112929863 319 624227130 804 906195519 421 329543305 593 958424418 852 522091479 787 925340494 598 329347936 77 497483447 421 242057657 889 652406103 171 282730133 632 222732661 335 536543706 18 53046476 671 260994192 24 588311853 962 816458521 642 981568096 850 179334144 358 100198417 780 265449024 255 740925583 122 762904520 963 338896092 434 432489596 335 672965563 150 967644310 190 424479500 790 721898120 835 484277427 684 104880828 575 518084346 695 392411363 946 663100499 132 741748920 676 811444236 738 278755355 594 155424764 431 747878403 529 441599461 123 775324871 561 671405386 774 506150000 731 56414074 286 835061620 11 573009722 115 190066638 821 862276772 437 895675872 279 448591740 214 414638181 327 250508367 667 423052427 327 804036462 388 819541320 850 422298218 200 907524825 199 29336039 478 194176522 945 707572547 217 499878496 224 200930767 197 612031072 880 833404528 649 139239944 437 279260641 507 544970678 87 902074436 624 67039004 4 78253803 104 892409267 564 719160765 985 464055670 686 626989568 925 654447710 506 777512018 300 797426639 206 961263317 277 215007019 413 87525757 975 456043707 638 625655635 532 88253989 276 326840275 968 356033852 507 445911687 382 567613531 396 914569241 738 56485095 560 886805300 137 370534414 899 368065029 668 561708154 176 547871553 173 653757213 319 68862756 837 941312506 458 63319012 139 892894456 942 404213387 189 603247445 351 445507395 893 400865233 286 38981832 60 988422141 558 497206175 860 644999008 953 287580008 900 549894609 16 497575060 530 964222219 579 936739421 334 731045822 574 827196053 199 518010492 68 591340891 966 662243161 547 733065707 505 860531524 789 751942333 290 669173247 223 467764854 472 788686938 71 446974902 143 350533165 76 168831603 201 547077411 968 75381751 434 30362668 854 684306085 158 799517222 349 81372594 206 821410762 482 430177261 684 683303200 244 865433455 23 483331718 221 840166757 685 896686590 731 63261314 666 840827370 821 823989323 625 870708216 180 435985704 854 654561262 13 124858038 637 533311180 909 904058416 405 95562991 405 446555845 989 651758638 589 854342607 209 230291905 128 701445266 701 431586872 176 136939210 546 740164799 704 652619308 900 153549317 407 395184519 104 278708140 429 795581679 535 836601139 25 762772031 521 178643977 359 699573691 114 617627841 585 935110106 8 3813997 124 590151138 902 701145435 341 28732093 411 446776529 484 257944703 359 110683504 747 567497606 923 985317585 948 213619647 367 482539082 795 178876164 639 1024697 121 707172658 26 843222614 538 241743052 545 227184223 525 713446309 419 453065675 290 958086885 594 438537273 128 904158998 572 717622995 554 306443359 273 489150752 415 433734972 817 335920459 840 686442187 663 52393170 679 505260179 561 782425090 265 866603358 820 784363468 422 777446882 406 282087930 666 72297041 794 804681977 916 791769444 247 758002222 506 368440639 853 571537096 488 340809481 963 218944873 939 621473412 521 132359740 15 178519794 567 623127274 761 847803023 781 575341062 524 312720310 281 191112674 47 256557170 507 437114980 774 395422790 732 532194153 832 676428120 733 649150417 576 898533232 264 374201339 186 432234038 489 216988704 227 161015309 217 109843306 942 923700351 892 646887090 257 974325485 786 280502710 668 438285965 529 223040509 134 794735977 698 507558316 621 207049073 824 765093992 680 460558146 554 309313837 690 399399919 547 100642129 900 478183215 104 559945943 941 417170258 667 790479555 652 546002205 766 474217249 388 839423892 170 430845943 37 215645910 748 217848159 49 477650214 448 483040155 386 238762642 495 982221723 204 442517180 797 534659848 293 534024832 571 422536544 690 177317724 881 35427538 642 634341952 923 487937491 538 115768200 739 92975009 912 796085449 106 196184648 531 751876600 59 196500100 164 368065687 551 880168224 426 567203665 258 610252329 476 655035275 893 198033077 63 553253240 337 129382623 227 554289738 987 332212710 840 392253674 328 672314209 87 581133797 965 57867165 483 997764953 989 301633314 262 395987355 404 907364045 754 718851988 566 455016139 407 948672518 526 128874033 666 737715 705 680831493 150 174129789 600 36695048 798 881122793 988 524778592 580 966725004 684 360584732 623 779025678 835 726769192 504 463356518 729 505808582 510 477581443 443 674493106 71 150568579 949 462492961 320 55105525 257 630150312 888 478934926 83 704563986 782 481810703 987 490366766 317 517450862 595 20472899 434 320198740 931 683539941 27 276564251 431 780752902 349 181943107 97 959821101 334 503130299 63 24909943 85 275714305 603 784440364 61 845542579 689 569989929 145 950820276 824 470213565 187 124553783 411 847342675 138 291353860 510 607320053 321 968998677 782 466867806 532 787924603 395 123460549 201 948605494 789 204375652 586 267521255 623 936905221 195 464786128 309 253438788 611 83511226 653 413390204 895 108067046 320 40294213 345 132223592 289 267512784 291 115399316 713 196829968 29 499087230 533 751169269 757 92898948 794 142440708 370 689034531 999 602360132 273 188148477 229 768163746 956 562024288 923 859952919 204 112739703 458 505317004 965 374928096 302 660901674 495 858184704 680 555403347 225 724159836 417 672683069 97 577065163 515 714531060 900 192122835 503 644175787 909 805384154 136 620529654 445 878810824 61 596594152 801 452986791 320 105593854 360 808266160 200 430081271 883 290681862 402 909543133 171 16268680 662 144864677 146 592524268 310 386918134 399 765347691 243 699204156 734 903856089 163 34703111 529 347407224 649 878615170 556 224948672 842 449466203 367 176678296 475 428679971 995 308047975 915 622005169 804 688841281 657 363104236 1000 270531914 28 237727965 916 341582226 614 505388111 605 181965854 989 714703025 652 980457237 779 900978728 879 574615566 994 609706169 919 469857060 242 320670947 599 535446167 668 524027220 761 425579620 551 595737129 175 90796036 221 430567486 403 90270829 315 873844990 316 967782919 938 823730602 934 815502570 873 5142769 573 844183776 516 927480372 547 505043401 521 23657586 269 91509120 394 594732616 76 162769576 685 882977259 556 382991205 511 884125164 490 30577398 447 801647838 239 714347803 285 390669648 860 917679433 350 467401556 892 301522055 140 87642100 681 955822303 6 997893349 290 584358654 832 373483120 556 390963029 369 219264078 466 754841891 40 359409474 260 597758502 514 985879978 761 285380357 748 20279451 470 135236483 890 583914524 811 930521993 217 188706464 940 467843424 354 17825438 83 208189770 340 696207446 657 400804 73 549185397 103 927975239 54 236592870 7 657057948 583 563711073 817 824434089 683 554011324 310 345279648 626 438713310 121 259940170 842 480985525 1 487565641 864 896255833 463 130944735 946 662769154 901 896415571 119 566047108 937 45432834 329 562232659 152 326686219 863 595517184 953 527547963 644 735958968 445 965797360 19 889168132 846 817383697 885 629804122 347 656200781 579 916145146 167 160414624 246 903541564 842 56042704 815 291453726 760 867290547 34 64212988 745 655168828 633 32974229 50 545167564 668 75746557 316 714743515 780 12504575 283 155446723 530 631421765 70 546625157 222 543915652 396 305456223 147 340787051 909 545688161 785 100651269 220 705364235 601 455511521 410 401744210 524 286197171 673 201403008 127 9277616 764 722828285 368 641398564 716 35339242 939 556031815 687 882368644 108 422820489 602 831590222 731 54663707 949 26227499 670 865242916 293 68150160 951 953322597 254 905114850 662 295446285 478 383421783 124 934817073 551 877935658 881 465948738 497 696803403 274 296519558 88 786540856 424 944275684 178 547744482 131 364868058 754 898967389 58 756324285 174 42480762 193 74917903 423 839229633 465 932859464 567 238090195 532 683172529 460 334556924 914 384535367 424 129908735 230 651124689 917 732266331 302 786005407 927 468759922 896 422150780 549 6537612 587 974284837 964 416948804 652 73198283 779 254810156 359 310295217 159 986003840 734 208592455 610 983703274 290 2141671 766 934528134 413 50976805 850 463116949 307 752844948 956 892919546 5 173284805 343 143549147 771 906008606 297 215143752 525 801650171 814 836177902 358 936098375 241 74812984 68 963231877 412 436680740 647 70876371 861 324243406 381 213441276 985 651455432 437 48164796 573 861329209 439 905205380 342 520893937 380 441995801 391 814502875 7 492410674 566 92125896 655 8579408 126 785811839 868 122591830 759 106333115 54 362118849 190 820123386 86 642186539 970 711587037 397 546157859 670 490221005 905 598326100 905 25490679 283 208301277 430 536565466 312 689834862 869 377768864 191 975541256 740 650456056 113 105818410 828 496456851 175 336038357 978 314054583 190 554822118 251 986583779 32 496747976 10 3873873 814 70551938 696 387247451 662 456592302 956 424335281 464 422743809 504 236405213 683 697707175 625 330826886 332 385848949 952 524663285 810 101822778 253 565537965 527 521647497 578 48656114 999 233853944 913 595969734 294 635556823 809 156189079 107 767405500 697 794909862 627 889015958 600 80651510 475 62052216 462 756101289 125 710676343 773 981435225 134 702608579 394 275769141 748 912029070 914 210492905 582 216163249 133 54364003 739 520510780 212 468627901 54 202074160 577 523348609 429 166211212 414 441905077 719 33090644 247 628871771 670 266025472 604 605658075 76 890618906 77 174190237 412 705372909 831 215419460 961 597541639 128 287782075 417 557498799 298 120947637 52 177611629 116 654824742 908 106325357 133 942360952 682 691218743 906 962480151 223 36299021 220 277904022 792 867804186 568 255352847 348 508575465 155 898524069 452 844132971 313 650678861 474 121178061 733 466159845 440 245470912 857 313268792 862 470397051 236 117017202 49 196941295 909 180004941 871 417839037 473 508344878 88 613046719 793 347631567 669 488707494 920 499000888 100 308472447 131 510665554 747 940078543 166 903641030 34 901465790 92 75746311 391 627066296 14 752251700 448 333978815 938 472519139 445 431062604 218 96401117 549 23522357 993 891840888 628 544741862 653 655841552 342 233544191 627 828657363 969 915026125 190 805857070 849 571945706 571 447072738 928 854742370 631 893028770 462 939731909 862 265778249 517 652279364 722 292021329 215 194522551 237 250154378 710 974264629 183 597525705 573 234277076 202 487791181 937 74819300 254 980522575 15 279746650 454 560247519 507 108685179 431 197221344 478 724825036 52 824763877 867 612383864 289 557949878 532 11722464 776 824619370 877 169316509 148 728379040 767 538853219 728 195090074 26 935010808 844 809128969 405 446805536 949 364283892 438 641913355 402 787113453 435 973957712 478 32777294 726 428349868 130 827035008 507 573065639 284 794678797 392 376621954 57 711680353 624 483952474 171 893602495 444 152809117 251 742439834 1 728016061 919 4763804 308 379160646 852 780504251 352 498539642 639 380593163 939 770470686 218 779299318 137 170942315 887 72132125 410 988288440 742 343701771 765 338610225 580 744772870 618 966467422 127 296017649 197 548806285 655 635154625 9 820997124 87 582761738 753 314714851 692 123220756 709 847863181 643 133159526 191 431191610 319 518232355 803 434943275 25 531991218 732 328995318 725 657694724 690 381506484 45 973656930 681 730045070 103 883068631 117 81791854 655 601429845 173 170816204 275 56925136 418 127528090 841 186703281 824 777264140 82 583743317 88 959282043 722 685768229 347 769200095 10 202380992 227 255532319 832 107455542 880 607173984 18 330865716 646 549082341 836 427112620 115 165512101 413 625295991 573 907317003 595 931692870 110 791351195 902 682781739 605 667134110 539 716097691 986 268933717 452 286089422 70 568336729 222 697413595 224 578084983 978 452274825 776 572610227 453 197511417 503 155505289 234 834598973 12 785479068 819 440830423 357 752470884 410 172648062 810 715510048 524 888989642 104 867391575 972 440111017 40 955980161 49 703172820 349 610533322 722 641720499 820 55292303 44 248429919 520 397913240 246 335259065 176 866393904 558 344114208 662 400675119 402 683313194 307 178799339 749 295966445 537 797082942 167 484782569 58 604831433 296 960457335 826 733636075 725 454568584 214 240731299 862 458097023 685 487135460 892 920512602 640 195664113 609 72985726 489 540770376 828 512774312 312 291983045 793 653777275 554 303363412 923 966311593 271 288722177 938 217927639 192 618183420 103 847949725 536 470728229 272 812771620 537 217683348 365 246002561 31 260720070 865 364800570 819 44334333 319 978769701 78 751245723 12 606972550 10 351054921 468 216881414 251 754627146 244 884632073 341 589159448 721 102397025 730 406740656 88 9813041 374 769876039 336 408543087 568 297387289 54 962270070 284 933588693 865 971047373 689 89519290 965 443279153 483 538379182 276 395618399 546 671810730 752 422119836 995 167396018 141 206482007 813 402954360 155 973752008 826 18810532 643 218335657 187 936683518 331 277666612 57 602232688 436 144474825 965 277338343 28 735006210 56 463288917 28 54726530 606 549088795 649 724183837 532 83281539 896 371940124 2 108740580 4 357275478 145 97020752 678 423275314 279 843910171 489 848027293 388 847116937 663 391743117 381 669830843 390 774051812 770 333120748 171 558089647 259 255837401 937 920638715 169 469030357 849 367665129 500 299976310 507 790394336 671 125391162 925 389158327 486 556904047 442 181651949 519 813251472 538 426424143 434 837754933 742 947404567 330 206462370 934 732020920 711 761185483 970 785293181 719 19194421 679 837885173 580 261077883 245 327406704 890 757506205 845 900004204 434 855867546 639 434789850 102 763103682 347 318963858 750 542613009 623 944675728 472 130204373 737 400888786 417 639001212 806 578556744 663 478943540 354 517910551 780 187320950 673 662524147 992 681349572 887 385573259 74 811548073 974 361499843 638 862014111 45 921982879 839 3848379 463 69160851 989 73789483 585 221303986 169 194062189 24 339239195 437 21188098 173 745046588 573 609443783 221 410341335 462 972434057 489 970586131 393 729704844 714 183767815 124 395604287 591 715182454 809 165354302 589 559010447 603 860682767 907 96548872 341 973710112 240 294736587 630 210610755 493 32037310 238 218109621 894 457923229 199 487227792 328 635293630 404 522258411 991 355178510 921 200244331 195 24810047 724 938330774 993 479338655 80 541326096 617 33420939 66 827244516 401 438910228 318 567736325 300 914467595 629 406276029 363 710558922 5 253418720 880 349762144 867 15349362 9 688168366 150 720360438 142 383081317 950 15163149 224 64221355 783 262557827 757 35175780 247 928959842 160 63965475 311 105919940 665 646591905 202 852432363 882 389401457 1000 21217109 273 143129941 827 104346323 828 343842001 293 139393817 78 506008547 372 197866936 428 877851048 65 243827443 776 784549101 157 551765723 457 330674441 766 447307909 223 484462665 643 709089338 261 199689018 436 375392300 429 458805518 703 432097889 440 21840890 159 966627689 988 670223272 767 440859283 735 433386455 521 134329206 208 815987330 238 598200741 578 191241045 109 629629459 323 910216733 228 843318408 921 307516008 506 504284061 575 422447115 771 605218198 344 320906801 944 401584740 871 466025260 384 467225412 687 939940481 394 873067227 384 275954872 898 160677783 724 370261199 171 656115566 980 425356709 210 501489290 63 515413515 13 161426548 74 284171086 321 425814725 806 464531689 920 514300218 566 641411441 782 676878954 165 814849601 652 907222726 533 72905895 903 891083727 23 260372901 291 536905070 597 575741819 85 928180657 431 410704716 763 969804325 396 810632465 30 992351733 932 769555494 622 880227824 576 873049235 663 620067643 289 180523566 485 218224660 432 777476913 6 121698229 866 707294053 553 478720995 87 834468398 558 855429633 268 208453596 7 804146533 138 896941773 575 263357368 168 569997936 953 660335003 50 705760092 49 803395467 538 23795345 944 382271818 682 724341556 157 465605594 484 846740225 21 834012888 709 952994620 395 435940766 231 78018043 166 719065229 181 642960577 285 869238604 96 787960853 268 125040118 371 913363897 782 389294439 334 130973318 819 607970830 405 420826722 479 774754026 392 525628503 836 62943264 32 578869875 135 237229631 906 425239519 438 729543406 241 444419402 594 837082199 841 573504614 305 397281952 285 688837648 286 173010227 524 369815079 61 866767686 193 790582630 624 688766562 811 242550521 273 710529172 757 577801217 93 773574642 546 510597596 116 574398944 832 163249695 141 161814328 631 638934692 243 851290231 449 313053962 761 842509519 773 346030187 7 196984249 581 456899479 869 540574497 880 476330438 197 658721691 816 114556901 975 703320365 577 865681447 680 281180044 869 166955576 708 45313740 129 955739310 861 251105819 552 421414650 705 583363488 872 513990692 146 973783297 343 305485113 958 680690285 27 690657109 401 517493757 348 80993765 196 113132912 116 962749652 891 303669238 21 244201250 109 621154058 29 407574070 221 187739333 439 606514197 127 296123939 50 302046195 217 365970951 30 134917979 845 353479755 555 712784956 972 952397519 527 717107540 27 669828104 492 595237839 556 284385177 669 312882204 186 656314466 610 299567406 936 596164215 481 364265426 286 955220080 196 470673066 822 564826197 831 875216944 474 474697821 594 547807902 393 295981713 933 139241449 701 646589725 9 686920379 759 319164123 142 956852256 986 94877068 364 152013624 820 23519244 67 886055187 880 17901452 371 338812557 441 222142419 519 960587050 986 417228938 418 59676909 246 827905537 848 621833883 559 736965981 648 49633492 565 37575307 77 874817664 941 597607646 0 590120948 723 92497029 435 469988654 925 868587743 979 337636882 802 462159350 277 801841831 829 101344399 113 451669926 500 136634609 200 784193948 287 448859638 665 571246941 606 46640946 186 780009094 790 442058355 283 488239064 181 67865266 501 976107497 31 44633919 415 16171946 691 467749831 1 347801659 128 131876435 501 992446175 623 487018037 7 688025834 120 674899204 309 659946461 641 492994240 299 657817598 160 342663842 789 62743606 598 17789309 895 483261840 114 64721879 644 228940981 788 771222207 548 511838570 380 331514246 175 242329182 575 218171755 226 478183045 25 244889877 276 683595640 969 972590184 337 857790880 73 366768160 470 513734587 863 921654029 498 879505364 644 445506206 449 952387979 277 358606574 791 478361898 333 657680624 808 409330477 374 824753421 126 77721765 939 775462152 688 956174648 562 22565074 827 890977591 752 963725173 929 209112775 927 382472135 106 823201153 170 836871373 825 972082978 971 936146981 250 543814453 533 312717060 479 861501613 7 363373617 263 682011209 401 681375345 778 869948725 604 836263358 642 818802311 653 472979187 149 866258037 25 293843789 16 668255390 911 260733621 0 472601848 44 183561348 901 452656326 620 636278939 578 150738262 664 644141375 310 713403569 404 9004559 173 947983705 720 823309860 794 674734544 144 126509596 981 306581200 353 39868531 367 83558856 443 475243109 321 735817185 774 612000498 54 764141802 432 62678145 585 929894764 315 249164956 990 407752374 5 992652126 364 45274379 830 96929284 25 211583958 918 346036493 591 801581641 951 672747573 712 132820352 931 835401693 734 655273069 96 504911007 269 810592232 624 98105066 901 906100116 860 694739230 691 695347208 286 543927859 247 862214298 492 563387777 482 72411764 542 351598101 390 16056534 828 129892481 377 822629623 344 344092097 918 139189840 79 213730097 299 455285838 495 304874258 262 734575458 201 968578617 282 860733798 723 713359066 42 322009780 340 807579416 725 185012247 891 394974603 682 779301887 786 216052062 613 383386292 386 634417313 335 490793143 975 903064603 661 809128081 549 204255930 820 611571994 609 263685693 839 403462914 329 719492052 356 850677986 561 510538521 129 362293615 60 42377921 592 334540512 358 728404369 810 360933443 607 139004822 823 991250284 131 657387549 523 667067844 687 390728980 925 787790889 870 144249950 462 15152894 701 834724623 590 145240515 499 94536865 541 478202394 706 207757046 81 772446337 500 615493024 914 736427268 989 888900098 271 709439124 516 84000452 450 92587502 960 652114671 699 442964524 117 771287951 747 495675559 626 628259928 850 236876780 521 675429843 760 251152333 372 59394842 608 894086764 63 276140082 113 749502680 50 802953960 792 331491122 427 211023222 958 456708921 928 794259304 658 34043097 957 281939312 21 731159286 699 223090020 461 97087616 793 105193018 575 868343610 174 830666387 794 836725042 790 802120661 695 748998462 518 387367934 405 339892934 824 54539127 463 72435860 177 199345689 13 65669983 470 880301905 850 593325756 382 695171878 578 858732522 844 537931283 355 424007858 99 291395785 334 646213108 553 448582162 525 959542898 102 236312878 607 414081177 729 457011026 69 88799730 163 585272498 908 428122045 791 396195863 341 961191367 426 530952838 993 742352927 103 717411523 824 854334537 540 242662967 742 798960859 839 623008492 156 531887718 187 786379022 634 827103130 724 676101223 503 56229756 491 768339937 325 498988954 310 898640194 873 297560328 321 110182773 85 199292081 571 645900222 898 506109527 945 917186396 798 855348229 697 718602813 543 557602248 764 368308812 559 40031414 667 652051148 465 843597093 781 172017613 260 979780389 419 913550172 45 435391546 655 100022949 311 112742788 594 288990085 334 236397985 177 524613472 597 896959659 192 110434223 44 844899649 484 298142923 247 740771660 113 161183018 295 192829060 802 532379625 732 348213315 38 700514943 855 78643247 608 255334974 867 310855923 87 152161326 587 414824162 787 716666642 943 353372176 89 339869572 689 739926904 108 313441685 269 9257074 1000 820312339 986 795761032 454 968353738 598 754730279 102 905705203 195 353457305 952 874784355 934 823818468 869 771209151 449 781521388 282 355569336 404 607110330 783 524294340 541 218786612 229 861920858 727 378854412 491 557181082 629 613011585 765 75311657 715 862549829 26 373486617 586 374147882 542 678831230 713 75959073 852 136557005 413 662588309 362 993837677 530 984793751 815 18747834 829 829066322 545 162427137 79 112876152 334 543170212 155 830812968 65 576222113 302 633950748 383 736793834 607 52199800 157 979836749 631 231018026 611 461066386 702 462568649 832 446013550 713 76310358 7 332040671 330 378955026 964 997345723 418 347395014 250 712818187 363 627898859 411 370964790 921 621950820 759 6173623 134 535916596 130 377133817 167 340744642 9 948909622 820 278008874 601 136957892 490 451381911 269 929012892 471 547299470 93 695779571 923 219648794 264 836663691 709 263317818 82 545450298 562 740716175 677 383485493 666 274075307 11 871285196 954 273850494 899 509616339 904 973259549 568 742346851 564 426830574 924 932722585 765 287863574 972 990141000 426 426104156 223 33133356 454 179195055 255 85302188 93 305565405 393 532602920 359 82300550 300 45441079 677 719379659 711 144461514 410 954497886 779 794760889 687 374721978 38 727910908 346 86778135 375 121296312 362 914997946 370 220014636 181 241323180 380 262972085 242 778638318 108 427268880 432 76874041 378 492062017 290 562364851 260 429651992 629 357841233 268 545416018 72 771571918 199 941994788 341 80715464 850 763178758 879 877283075 19 543140921 949 997010105 330 752457840 56 153419514 494 767526662 268 656595617 859 781926704 890 240592926 252 786012156 210 595556893 473 495600323 79 546596255 950 752338475 472 49846997 411 692286882 616 480400359 707 445154657 409 562937035 799 507519019 946 599639199 136 338209178 589 275461437 777 512882718 621 630876697 862 716609836 681 319778408 33 308282499 474 625222592 351 430065321 862 571653412 391 829177214 812 777675690 916 447854557 731 958398270 636 20006622 120 366169343 511 580612224 496 910209695 21 714907091 510 922348160 91 261855921 778 7713219 661 163297440 342 758028330 156 666440041 798 166370895 965 883633169 381 40016176 684 263526497 152 637936947 986 349782752 149 736144731 283 8190352 39 448770051 228 289193067 765 376687943 363 852561107 1000 421242577 588 562068278 568 396856237 21 182066631 651 693303238 102 53590484 890 192249252 835 54636405 162 388451420 249 109965116 894 499502107 889 293241151 835 956678886 59 822533291 784 238194402 137 599850536 436 415359050 387 313893421 350 796584376 523 668785740 493 601279424 152 492556312 245 432968896 369 531155700 812 562102156 681 707257330 96 412737703 243 518176260 804 698210393 51 336752715 622 879098079 84 525986416 795 44266957 729 845355317 163 70243507 511 884147886 214 96247651 458 562733876 457 626711112 666 215937697 560 87783564 28 802201243 202 783174386 727 565928215 981 357646124 840 670524737 346 167256867 422 397257436 491 537614330 145 229842870 32 982096928 21 299487749 605 859007751 53 35490954 427 205966423 533 729721033 940 102572876 895 437825592 274 635698404 536 555710405 630 753793461 778 415843589 178 101383490 856 267707934 116 915679936 980 191946256 20 367723044 871 527801297 915 832658092 823 919450752 917 749077326 457 655957902 954 530190674 873 294822029 20 676522139 335 587092054 972 66096597 916 228472877 20 666130189 576 43372824 105 420490068 369 717711634 933 513411618 836 429206511 633 396019351 688 450400525 839 652347894 450 37270755 711 192979201 711 877478141 801 786884660 501 31296232 562 197667305 889 859339110 76 842923912 450 220727655 934 735192673 414 942521824 85 295093788 988 527067377 591 355749691 939 434523859 468 910665321 816 212954189 198 992916464 837 220218229 619 628712864 64 524199998 602 227432991 565 914796685 416 647607981 583 108643140 238 20945949 226 296770557 834 156610370 723 81878895 863 58453680 91 208844763 653 540623761 712 64139702 662 327403983 438 559391257 556 163143367 261 56143111 574 595509561 945 783478520 911 20674678 5 375963061 608 305992061 980 749136562 112 825491040 423 24718896 637 27013129 885 564047090 274 233020060 106 357751853 543 868592932 747 75085841 819 700857765 984 481626417 8 955757436 828 638944873 571 91562165 804 18505475 35 809183340 384 741477817 506 45297787 403 617049837 893 504819470 75 596939951 399 901532690 608 19812240 872 960566879 186 243261820 942 281704498 800 714433222 578 972738654 616 507386599 403 63156227 64 203282976 772 463610785 736 370770918 272 909748160 439 690479760 195 153844628 901 799332158 85 455322897 595 751919939 517 851451616 422 454097690 634 968868426 796 348150363 401 934138198 909 491687586 128 139484142 189 838284131 318 79081582 301 195914237 881 370281089 406 764786789 886 9902239 696 458130246 832 589630318 757 495339632 999 712286542 690 923818045 751 846808189 512 361888737 727 623185631 273 672173223 220 900944197 183 8205809 295 966080623 165 820025852 383 212934982 471 867781075 161 278522407 88 848865811 457 309116569 316 330685927 395 896547761 490 569709870 292 384717806 228 409094984 289 833356419 327 594034481 504 108358956 912 10514922 748 83158706 747 826510679 793 422680491 883 597090804 33 396289655 495 68579807 382 220202268 682 639574964 60 302053966 898 250179099 696 312292622 958 409518232 226 738982352 864 124293015 926 461735844 457 802204769 13 76530953 120 300610359 53 115259775 347 635825789 561 303876119 514 278065702 41 215234541 993 925877164 345 942567589 795 328262406 468 493847276 448 134143965 522 813579962 73 340689497 629 378801457 335 384877659 591 173978889 43 271444165 214 383067976 698 551242021 557 40068802 48 618223114 99 931392234 721 254772409 338 544688719 254 858926135 39 866968473 578 219534466 67 157183848 968 88875144 169 107459710 732 18228678 912 562697982 268 188082614 829 852778368 799 124704765 368 389486396 282 514349382 967 411132691 408 120756818 183 445341378 444 570836782 236 806453034 126 769974058 881 163670795 71 554078686 980 364539512 310 478961630 476 830842916 816 79157473 28 797670263 369 542367642 281 896705039 463 873545943 678 203674014 437 878716182 87 18201354 312 511791735 141 668842659 629 951132010 818 392670472 861 492207410 279 690165400 760 940021040 916 12651744 581 151332903 228 571563945 940 773348259 278 935055488 616 293277985 762 565027815 527 866015343 431 83667501 134 401431043 434 417785156 61 626466713 819 910062021 449 78146331 471 265326230 75 454003966 126 651676359 255 761178272 961 146647904 36 616650449 327 333136093 903 573407151 479 1549616 661 569121483 779 949873059 634 549194104 368 818338059 210 147278196 673 379450943 982 47257772 334 509781219 954 766014119 684 523305526 286 652583470 968 582532396 190 556213566 324 156370311 562 79688100 897 552275279 462 829164503 7 808452719 899 772905485 387 441889008 411 503616804 169 232993476 228 316692142 104 136090886 957 842524305 495 516019278 688 143203696 22 661701717 683 179533675 89 470685390 108 856506702 18 494474639 889 658384600 570 540453977 249 48177360 704 973840820 933 375149023 445 827115863 848 475396523 309 991919474 898 608079358 775 323650287 337 351384672 401 600571404 40 997022023 223 295000272 447 243856802 954 344049786 937 694978134 119 75536968 629 971681698 602 132836964 56 920459719 216 107708958 311 947357557 272 184788556 477 288767963 995 979823372 469 571844045 413 131799931 645 54947207 213 222989668 212 543252008 75 517338240 167 455189439 634 466655550 391 762659585 821 845243832 860 35275783 299 143636238 1000 779786934 150 113633227 541 308546277 747 884110128 355 824327947 837 317929089 988 154716387 784 822738107 31 767149232 27 394912168 228 378257246 729 280193350 76 173908807 324 624339783 209 236686885 18 72275716 797 58384685 577 290358596 947 634023333 528 871484461 63 417039203 626 622006864 791 22147140 127 865754040 490 291120178 817 346493284 173 915526863 145 844327115 177 756898426 375 790298811 531 789232261 968 266070615 847 383447827 266 25566269 884 587027911 529 750728093 598 195515585 599 42878726 249 106067572 653 729902815 767 372835103 762 882600634 494 298710369 109 120926297 236 845957323 31 48810398 465 204250944 826 670927067 603 569984634 895 292975461 421 765796046 163 231789783 22 182248289 754 875016001 463 241388339 113 853610683 888 430904745 319 832968416 953 864410219 633 217134032 209 72924655 320 726190874 874 279477034 829 659686569 148 366420288 728 935874903 261 294374098 840 318754803 577 359449289 316 859212504 238 546264192 42 674241415 202 43754073 69 200456209 407 980735294 103 228747756 49 485884591 853 462376147 701 429886138 890 70494608 481 90324785 415 745080012 7 594849458 259 419055292 599 824032711 622 166498355 808 172198327 76 386315684 495 149681828 871 540574767 851 39911016 890 695730186 748 636168501 616 500104010 365 888679840 641 655696947 56 328393592 437 161624877 280 935451 704 594590330 294 958007026 688 573804474 93 331958957 998 535945957 844 761954682 362 147482495 306 17441880 282 596584763 116 308117298 38 655314834 702 813381522 639 977608258 885 455683384 166 455223157 878 803918685 550 899358653 909 248877279 486 856516542 778 860138888 812 548185272 634 649745669 952 878352449 664 856973072 685 256118339 239 807213192 240 343352482 883 991462647 767 877410482 49 513808865 42 737991970 582 608528260 76 228729422 653 152161534 776 205720270 558 79744371 118 615551170 16 305747208 583 313048484 77 21771201 267 421413534 268 191612278 939 805538639 245 194197657 546 10124951 413 863452704 275 191718794 20 997982121 481 172994906 993 635191679 295 840083402 311 755763012 546 507414863 657 829013480 393 2613896 833 878228754 145 723316936 846 226135693 199 349279857 970 439022567 448 97071097 721 340597303 211 896394065 335 836896563 605 953791708 86 835317379 635 209334153 822 738458558 884 579803282 129 660695221 358 346170135 641 404154263 784 859575111 4 957941810 29 675789662 502 869077190 766 711587194 352 846377064 969 676761743 972 374344066 725 603385156 820 365167619 565 562366087 979 737850605 908 567176845 943 341730722 279 915513581 277 210591615 540 41337468 155 119767078 123 717895139 816 369244556 417 50163837 430 982341146 403 115558114 626 777356649 888 794969571 614 259475291 517 4605306 663 225640569 227 877949515 518 104455099 249 822345951 342 975654406 945 306782459 158 376406069 398 666457328 349 840516993 852 166671537 963 826718905 970 375848820 755 190539283 641 69287115 715 549333884 573 76892561 331 630972162 311 752577786 986 217431938 200 577128240 291 600632506 589 65355322 632 502900528 334 343766210 401 353136002 869 449812119 543 214288488 320 609167831 89 756969206 995 392410488 129 623694820 631 447377462 108 286537860 872 915472121 120 519175520 982 937021951 804 245308332 210 862353458 553 463323961 560 999752410 357 65347081 903 649626148 104 673142017 256 324447500 126 225715373 735 153200468 656 359418434 265 885156485 309 766509569 616 214828563 805 938422774 963 286622116 829 400284916 888 207771362 56 450792730 140 415503478 889 353786448 972 639578401 539 515081469 729 983778820 877 333621964 530 56192978 608 630560355 819 202446335 960 807603300 467 331664337 151 775344014 486 458658125 314 397156902 277 786321767 363 609833091 470 243480871 385 159103886 552 877654630 433 406043954 295 49374665 426 214111882 151 792768332 939 25369437 791 196837873 891 354917883 173 9697630 208 624917802 282 742697250 649 658001286 116 602768924 819 63697103 904 285792333 334 867302413 54 823475292 791 618838173 700 261684024 577 879084186 849 63049806 422 589517065 82 800712553 864 837636926 499 50595827 776 870850940 425 582752185 25 603942764 757 770154492 51 337933305 214 544603736 860 723362999 868 881879748 298 111883316 362 278552893 69 478170712 968 769370584 996 41187749 389 172443393 178 157590945 438 972026491 735 698564256 506 743991044 950 294679412 482 75632569 138 673225064 441 814656224 44 115900629 758 262524317 876 74711838 900 712471386 614 746379028 640 414379809 821 421203145 59 596689626 615 448039819 450 192452217 819 536385613 65 847850756 902 227313478 59 577982750 427 152229347 932 427578331 538 963395258 188 371149776 295 714673712 520 220715279 568 447837418 127 700257573 384 67391779 465 881308380 341 548982086 701 840969767 492 699335920 324 242397738 845 886481930 349 611250035 468 675234116 860 15535412 437 82057144 403 700417862 1000 269717748 5 759935128 571 430511135 746 167330229 349 47610427 159 621106438 443 766031729 205 542069945 352 829719991 464 4744025 676 490401505 638 672228584 445 362530360 737 995505123 616 258983149 42 691079616 787 317513580 577 925427564 569 207391255 670 635395187 460 762735100 942 842025914 163 578890998 991 223327649 989 165144403 284 811880235 303 57452074 983 146926865 274 800203022 498 617366836 581 43111450 433 133234852 73 432427603 51 951986798 712 687876701 134 338793402 818 434208362 848 476075339 515 943453699 993 668737603 609 458655744 48 86115200 508 709294837 649 831521063 86 733783910 402 723424962 813 982476296 599 429059746 153 356288700 735 6913132 20 938643283 184 703360175 195 78058849 777 160027924 36 5847856 348 701983418 292 789554191 207 420509249 745 613696922 720 37392974 7 298435961 306 265350121 395 32484253 217 781305344 267 97395878 18 74759432 442 14980865 254 164392770 499 898096752 295 687770767 390 10970396 943 123550393 754 92852609 441 663068247 212 195496263 654 576179683 968 754424935 579 311924188 157 387172706 181 343901587 275 703228511 63 870532996 534 385810431 434 747842269 885 121340607 504 309828340 312 845628777 79 515643424 551 283671559 570 937078277 493 625027122 942 343607117 605 921455210 385 995794685 137 542071978 881 955689705 466 146657960 948 972100951 763 625650 775 690072281 712 68206752 917 526279999 237 914079322 807 200458320 759 772128131 333 945046618 671 893332367 870 331565429 60 933395034 356 106369241 15 633106749 246 232912185 530 972949127 735 252214789 648 755624292 415 937176254 150 355353580 315 277377297 805 686243741 936 822191713 849 862582864 834 648631435 721 603576496 998 637128283 379 996666051 430 631671228 486 410947052 284 392194175 176 561893390 21 535007664 417 950307970 377 547328808 606 635745668 370 832424736 527 537829414 593 862595013 471 544362590 115 179999219 327 224045072 374 815489903 418 741171619 695 591866276 867 56834917 849 429415135 464 617726135 251 295774832 516 386214062 111 976118319 881 246173449 762 655864549 912 600541856 639 421981448 207 414329787 401 974082681 279 69698770 780 712396297 628 972619684 291 347419084 44 313460646 795 432855292 125 73701738 781 257548646 193 526550049 383 926847417 120 64240095 410 86864056 660 927801312 301 926841964 286 29514449 166 906376604 95 330066603 332 746696490 887 793414103 694 439566844 729 385607824 333 218810060 0 429817816 194 251004139 441 280721257 258 59688049 246 732193090 325 227567087 333 741161514 192 47923237 262 835700452 820 263642264 407 108762147 854 3545268 167 519485547 109 150665835 743 170107693 892 246206277 643 54219046 485 765985451 423 414339745 718 427975095 40 211357920 865 249013910 787 522029420 722 551039343 72 562557265 912 551039531 48 323212722 606 435670829 406 579906144 539 598786341 873 513345509 135 838014499 375 187080638 755 264157708 984 817151198 914 860336081 128 906697692 632 754917980 517 548162874 337 907450609 445 721076669 254 227659870 768 806862907 365 684941804 45 891871077 436 7583522 853 192435970 956 291872081 534 469950145 425 722176568 286 433611205 233 984962860 191 56605396 540 857258437 180 568676687 188 88433374 106 358399311 979 644243699 421 666431409 714 230523509 308 504448320 274 451083391 401 188001203 486 229045907 985 87640283 646 455629392 368 242670164 195 435194246 291 53252868 403 73471422 698 265976730 604 970373524 566 661780314 256 324492807 676 386587609 868 45982116 898 651511786 755 19664777 489 804381365 556 941153461 568 546652273 596 34583403 710 688687973 874 944160010 901 961908778 472 861427232 314 792104561 888 254186676 980 492690215 135 412395914 115 819080102 922 513986407 459 523583661 809 653678839 540 668940028 344 316548859 504 943856978 157 831038803 551 980736801 24 704419544 908 184140096 648 702072054 130 177228293 333 215805851 497 217843701 80 742711380 681 82887723 950 386779581 13 134155352 485 833731509 73 4387345 248 721898322 709 207007929 573 566116366 36 651755231 252 582491932 410 594074529 191 735089469 548 390151613 395 19022159 675 290684601 873 983638349 214 802959877 780 1419163 138 478955783 161 223250489 355 536574249 687 394707362 939 767802043 851 440798455 544 58876789 969 414306674 964 266574848 538 718676149 463 465780223 696 286492922 71 669555929 621 120674578 427 354864518 35 46906050 82 179257863 494 857034032 589 758945155 932 683975007 243 743046250 746 181356399 55 477573159 205 39546630 95 711769880 624 36300144 421 443409834 1000 272021763 475 276227235 388 795404126 539 76040658 418 422482730 29 994456667 976 824999387 360 126243150 904 346017663 418 557367316 263 305898265 978 528870002 331 562719554 897 946930620 778 206614820 353 679272520 78 922814537 851 839949015 192 892665093 82 90760583 221 108333328 200 536820246 953 183483376 475 705934055 582 64801356 355 405130242 350 612065750 467 385348162 302 781386498 634 349691305 856 413012023 630 89305895 94 328612269 538 674622309 446 305288111 982 304079191 756 848593816 580 765929497 159 55397783 565 98293046 446 786062376 918 650812687 759 611416037 965 863124976 887 989444550 987 673481234 173 815602681 461 935156004 573 281634788 203 513045109 697 912368026 786 883087975 959 208032147 756 301246250 583 605073550 305 58365242 525 676444650 662 516162574 283 325316519 6 21739996 185 627613233 79 547521334 811 235955758 339 327694565 791 846310755 381 204814648 334 202311858 321 407849768 231 52984893 712 771916531 49 643909373 691 632482369 44 253590520 996 17879620 535 485304906 278 728051909 318 762631091 223 907448145 768 368391465 673 127796218 286 170759636 965 805901265 183 154948880 179 954020342 533 812903454 826 47747622 903 757002467 487 69764472 482 654759215 868 895426353 470 959143407 753 632497589 719 320442972 522 894091638 846 528379545 356 299553526 921 256176957 398 483905142 743 499709502 17 193639723 933 629046934 614 250077130 595 775258428 414 774484946 964 890436469 2 821401391 446 638852097 336 784501589 114 657067518 963 402159292 651 921199161 460 840634400 51 914828158 991 80656316 700 675818834 511 901049829 68 874668324 657 400910202 840 858740557 70 637938090 471 442238934 704 996280932 335 352949512 146 410520092 829 867910417 134 300444665 89 573066611 226 768298058 101 22347430 937 452417154 86 979748300 786 905716228 595 861371576 435 177905259 222 725617966 177 390244058 155 652471488 444 871310065 992 330846328 758 646314457 520 192374350 886 943045331 784 465666735 689 989576493 129 660011194 149 574269686 517 15014532 968 224860702 161 231455574 347 110794199 463 945035449 519 484841082 149 512513541 620 259692 60 312290815 566 422781877 251 695111946 468 100092992 167 995259500 112 165178028 524 634327473 397 284187346 476 557903839 283 29559054 711 762999632 297 237850905 927 211026159 478 291824945 160 699341106 635 248970457 117 206721670 888 744200044 390 571588778 577 795858101 699 820010474 372 8373821 652 541454090 970 313517162 512 627928088 164 13472743 384 187471032 378 506368032 381 505672403 948 38337314 212 100826444 303 555402965 76 314449370 775 238112141 949 103833216 418 58544999 929 253452250 583 793443873 193 664578744 139 462653765 65 731444779 625 347667716 751 745525712 221 242716585 449 963893264 274 606642918 925 905974050 190 929530366 67 932861429 883 116039545 88 607399135 784 527463723 217 899006600 162 909037248 987 560868520 221 61940129 44 333132533 720 274975169 903 124470641 929 405694024 391 710284019 824 872457553 246 520861460 767 550180426 502 375925746 255 806085756 713 539606283 530 440016036 949 365377405 78 760340383 282 103647884 583 907268295 657 281413411 75 709613517 608 755854153 277 858404111 577 377532933 886 176211890 398 443951231 975 552747062 775 615647960 687 93576853 656 159286559 593 739052427 49 44250959 676 827286585 195 678045777 614 557794877 333 800456326 628 961133858 815 87120607 829 857417959 221 685533729 251 180739107 384 492509430 950 476182524 639 115871129 629 489573662 186 177866822 52 123484625 975 371461778 209 186206188 742 298297105 287 558763045 391 497031912 357 310501650 435 663370679 715 383233100 782 129252969 484 574776020 548 445706242 653 947647227 522 263356874 774 750076283 812 261920496 168 707573318 623 187720110 132 232194779 984 28520703 869 721759364 679 555561046 224 9478350 922 498979202 530 414648543 939 715347363 471 990344415 140 992987626 390 640120729 421 83698834 348 624480118 854 263957108 188 824049623 740 347275959 494 841089449 707 550152009 965 139972011 554 125756134 875 749919410 433 495451347 201 575375404 429 796320035 449 750905132 994 907141258 269 819785717 766 757788758 667 367842822 183 455244012 976 480118509 457 538664338 101 760759270 86 204151124 89 663593131 796 560327833 771 132084004 588 119075411 231 59181554 847 629480761 994 515745303 48 108264630 638 485789811 7 15402595 180 570161241 575 390197398 496 676147281 751 758082686 117 336734771 346 593472920 209 747968400 60 800307288 425 69701749 859 141945262 217 891345628 507 134187068 263 525892269 407 368593431 764 319740896 539 373751317 735 966396531 227 443242410 150 899733039 551 848370481 908 104245708 184 849077769 792 125808636 903 237291897 670 198915088 789 987089081 913 646313869 22 519605930 655 847975387 420 234234139 606 901645446 512 84568765 15 935334665 400 627761044 750 85708056 164 549912851 69 195469632 970 602965306 937 997062271 437 129568555 69 641679757 330 97055846 541 102752604 531 799059380 596 757315072 867 212483752 104 222128265 41 869206979 284 271469762 823 805508423 995 150210460 852 119703889 132 589714067 190 264348511 594 190652801 823 624998259 315 827796081 538 765705890 460 343298308 658 397800098 699 697091154 757 961211934 377 780088553 932 751629635 869 771712176 568 986842109 653 87489904 672 994598757 263 249941982 269 820131004 964 843381194 840 14332623 142 782082681 68 810097948 384 762202832 491 256475515 238 304879174 477 995688680 829 289382981 976 52052949 835 632129643 490 955110439 199 66060279 651 275993271 505 478362438 582 847333647 44 814866948 514 654734923 139 308048896 298 789020244 973 350564868 792 158182441 615 178674613 528 23895999 821 432351149 852 291466769 157 332139831 130 166368209 925 535495103 188 532910037 203 927538989 693 101646138 476 249420513 670 414337824 258 419754714 425 566204260 976 467714149 822 114605049 30 217749256 46 513839275 953 579646232 598 144733839 822 839305018 918 792627396 850 204118019 920 966092349 725 826556311 587 571074668 485 378289956 718 794118613 151 767511388 684 691287034 676 348325400 108 607749145 395 878923142 503 561829205 816 299978890 268 152779594 879 112838318 604 494701035 508 471445832 421 494120219 257 422367838 848 683927595 804 219818515 95 761421947 401 411943810 476 444981143 158 381616793 857 779258970 906 510119192 699 707890521 731 515658886 24 936428858 55 507477186 133 941959624 655 183526403 854 545804525 523 577229419 175 656700577 823 762653749 624 206571763 911 847267013 186 462503894 423 951776075 520 225807381 705 180871912 369 937826984 726 574180701 78 396845773 849 702867732 24 785633599 507 778261990 840 16291849 686 621605571 718 330484286 135 250566877 34 199345656 515 613654806 560 766543878 379 136958410 139 874916403 831 898976500 342 188218748 703 478825115 74 584259640 825 363069379 440 256549059 289 585833695 624 100988175 180 674013984 38 314260248 341 913269377 189 385035990 837 432382978 376 234138999 959 768857927 739 118268506 778 530466114 76 705769235 203 941003281 512 166565910 616 960082838 883 259048911 851 717173640 536 334066419 310 976599312 991 298841852 817 693194129 572 117886242 485 845545612 181 346427078 205 482891412 478 724161847 732 366357980 718 331931585 102 237372935 746 799160035 25 94799041 154 713684572 530 201449901 465 945316035 726 41040530 88 392305578 124 431730303 552 198413840 743 810909594 740 226545098 407 98568971 299 893249198 568 513269929 856 735083927 301 187079478 961 229873460 622 129445829 125 309741131 23 829661618 383 426900572 991 2055206 649 245779393 605 634812551 763 829381118 752 341416087 842 201517105 8 458347996 768 61013359 758 835638299 922 143517502 384 845860255 393 668604176 756 321736343 737 451038308 411 727066233 867 663604484 465 443902617 48 105830369 219 58464575 950 138528944 847 489719073 578 637926970 930 422455279 816 158333501 622 983501824 661 744018040 971 107575347 839 879245092 900 352385877 951 475810946 575 226368285 292 278355385 385 221132214 490 662863486 260 999136230 783 58224673 614 206483713 732 974591618 643 974386794 718 288257682 155 489996539 645 98396941 411 776586469 551 53227571 388 819827894 194 77410926 623 559220504 519 815949377 240 805876867 262 428708833 17 71059525 649 523766164 439 904938215 329 953078696 874 958455512 760 560649537 305 479927841 838 417432664 693 520919913 851 230657230 716 427811186 758 886329578 399 831290943 853 392636516 891 549777124 771 564256512 368 991513526 778 771158085 530 8363733 426 447709140 506 582712541 70 754687501 635 71851655 393 35311400 981 496831889 533 746915095 59 428547627 858 694875221 64 363887231 973 227579702 577 880642318 188 725875226 488 69568578 605 74019834 486 772623786 232 954577036 823 352636219 445 394066149 5 247759718 945 434013760 768 520925870 271 36465167 448 74624800 716 140807556 801 642561458 479 517146876 591 824343911 523 453745830 860 709013557 690 462521680 678 14403774 427 645060810 802 181715661 845 407314467 188 771412369 171 504355256 60 179128983 880 350313414 244 374936468 651 630422557 204 760545977 832 914318414 908 305896962 325 688739780 792 271289938 561 731615408 228 454387227 215 173149966 285 14340760 704 378559050 707 869021683 703 666763524 515 673905068 899 822746095 511 411730069 401 396806434 548 922129752 989 488360007 756 591547989 832 912124734 880 263208235 726 997387138 568 985823081 548 702446101 878 266716872 356 610869814 117 620883714 793 805611191 668 622611789 748 552850288 867 640044913 384 951610856 151 633482668 733 236254422 767 471852215 357 846785178 419 41116953 888 807196891 610 557138541 882 10344029 536 580259365 790 201271407 235 476032432 570 888122994 710 511351778 873 651539269 382 299380775 629 557485098 827 96098533 449 324420947 348 362613503 628 441369095 597 196236880 515 517356613 922 223524322 389 788109596 953 911856852 552 33029925 244 921647469 158 155746874 799 359201172 324 273001210 943 474576966 588 661863262 519 572843606 922 889977437 819 172357815 380 858137134 668 445936568 260 382177048 718 214372125 880 346585941 236 819761692 973 477978488 226 961073553 666 501927786 767 903090577 509 255572292 36 954990224 212 856603302 685 592405744 857 324310793 220 296635097 435 227132397 348 455186004 424 43724148 749 539824978 499 343778619 126 416852639 57 785038250 37 295773867 660 144540053 276 714391877 192 952631819 571 338503226 994 78051951 225 711946239 139 344798859 825 199972625 745 813835557 897 983142602 569 40152732 645 947370451 20 811901996 749 375523535 702 925686064 301 983833459 975 114552834 325 236743323 771 736032631 287 519449652 641 781936059 624 527941067 335 582401182 826 697969255 482 488386145 618 246317486 867 631801890 223 23388553 757 696729293 976 923771003 704 951790146 183 709629689 299 813853610 269 973235902 243 882807472 281 107072086 413 691720430 338 456580311 819 139591436 122 822827274 270 230931313 819 917379211 837 483535927 424 440204296 45 895929727 149 650871230 738 702068416 894 382831523 169 304209168 428 616923110 151 849725533 105 137864356 970 531474146 455 741105888 574 471789263 493 210153005 561 917011986 253 18283532 288 651750729 152 909040500 358 727083958 951 418010436 856 264032981 246 923515633 877 500112157 281 26950200 512 580395701 877 509736544 295 985417076 367 116074307 319 883423950 241 388883762 824 449112784 861 912134891 242 727751883 557 252834695 322 591337707 699 208766618 205 791541789 167 540337459 508 858853163 97 559541456 130 758079800 350 88157756 601 273840642 536 479273576 202 690887132 975 695867801 551 689044695 167 58273965 59 536638870 843 551317395 566 921214012 781 639670501 674 475734343 337 253594614 531 987290388 860 99148534 517 96103462 17 111886833 166 45569269 773 769749354 265 312158671 841 878582585 265 92795145 425 361203400 195 512560182 871 561095008 474 472041089 609 237400264 520 400056665 546 82974125 195 684840951 898 537368221 906 478526804 220 593581648 288 790340570 482 302804102 254 493136550 788 362346159 275 296427302 268 466788563 507 974324369 979 411467878 28 976928990 957 306066739 502 315155406 708 872327619 734 872170957 658 918462808 91 64092379 709 292784785 600 769087150 767 403606754 228 265222670 283 978247897 304 242073804 959 578491464 596 28625448 946 113836809 804 948379088 269 960052662 884 141455527 739 594633319 181 309800006 629 536505509 392 260280666 52 655472783 440 213655945 648 340159157 796 485221614 194 667781682 510 701692235 923 446574783 846 104169657 28 752995989 823 42114697 963 160563510 689 899103594 570 471221011 1000 548135435 201 499755171 770 941470640 607 422167554 575 405645610 38 19925310 350 313517324 798 175161598 364 812678422 558 747932078 951 585043580 767 283636002 911 453367134 891 879884337 306 420608386 724 390952478 534 245839677 360 88132463 112 439147054 996 321368157 402 817722562 948 981345293 173 560991121 591 376297903 720 664286340 54 119626838 554 249332207 525 537375746 872 762064660 677 840016730 981 348257597 758 465140774 77 611419456 297 302004572 644 86365467 23 340985941 140 856133875 921 587545256 13 120902816 774 653474037 411 432101218 668 406652276 510 101731148 549 310546042 864 702740529 535 57259693 37 135647320 550 70575349 179 139392499 200 747537839 239 359045333 50 743211613 376 250140253 352 417693435 112 317396102 550 443562490 542 999896644 850 601596218 430 332427127 666 879690890 696 723035725 776 912568273 172 661164940 876 21559449 125 899303219 128 958369177 290 580852708 552 70323589 29 133797513 191 870804726 378 900308604 100 101433029 791 804134326 427 443730436 989 770233836 418 675087066 56 339028444 598 966739966 833 751408987 738 404269554 157 236882446 373 85434343 160 972407493 177 378650785 778 698118731 302 739257851 784 665915679 227 471169067 622 807008920 653 566765416 372 455620048 99 623065010 478 548971112 105 887913135 387 58735442 107 591606856 267 154086160 59 780639619 883 511113941 25 875364875 438 90563897 355 26801757 241 827214697 388 911002723 859 232210765 113 47807090 387 558354207 585 529798851 853 95293937 900 600836840 63 124186594 166 724284840 418 647663023 801 439127187 102 384809389 989 934038240 517 709911521 29 259852309 463 56558211 648 543282883 128 382976302 333 388960192 313 175812785 815 85698035 616 895539785 534 357708451 436 821056914 829 212432550 692 664022570 617 220928586 621 38496772 507 851444643 457 729471298 430 401317918 535 173920087 251 809008901 620 731986343 564 390530975 734 467609427 828 40129164 296 703239622 553 455757602 572 392214255 22 157754800 178 711071297 142 628093188 208 41319933 681 297898571 468 447659821 262 666649288 296 207102301 430 1533790 506 481329344 66 452704324 500 765535058 792 531849171 288 92837537 387 133724943 115 919504876 530 370669705 767 869993924 470 131166907 189 138340422 986 609331499 484 680737550 566 145355790 378 852712806 611 339023575 172 106281543 928 943469533 417 294508011 69 610628910 613 490191894 459 769110285 702 242146149 969 301578109 951 70168467 47 477642433 568 221093886 798 738228061 68 371589921 614 838046492 45 373463303 636 787448487 138 48036744 140 925419541 546 982436332 536 515330117 347 87079366 397 440389486 229 83484117 292 271286408 438 890169820 632 821301679 236 429040062 535 119744246 694 737307855 110 492105741 396 943803690 468 87474761 268 291307631 123 102361540 155 354205475 510 956438833 296 205929655 954 338685940 333 554471728 900 59582427 610 380460476 82 455384537 590 715106695 48 17790610 577 418015096 900 493449471 601 245842182 943 317385901 716 839206019 767 358644651 922 940616044 533 686284077 664 237065055 51 436601858 842 854540020 139 175357050 992 139302051 521 255227490 371 695154428 973 122446613 575 537246881 139 177066019 493 973550899 800 989028352 98 300577416 596 944890352 927 246244396 304 199044546 315 286794416 279 953556309 763 154002256 714 385004667 289 950681024 939 98992247 412 716804994 742 44742993 574 356952502 833 154481533 16 428496831 987 24374171 788 139393045 366 941920430 344 855158205 791 818470695 552 263407742 498 381893071 999 945206825 790 47724373 341 17829875 835 712413237 691 938990295 409 631159902 781 271858852 687 730110497 956 573974266 93 812567141 108 104723915 810 749377854 592 911362038 173 397932289 598 668924325 1 630144251 468 715428254 33 920368368 844 834767880 79 613721338 789 318014881 185 314514282 395 150899871 268 37122114 588 267908965 664 725163807 965 798963059 211 653935749 748 960516846 775 330272076 740 841467193 328 427172985 93 523537059 934 614482807 655 408590312 980 62746394 246 363550230 647 148708225 477 392102571 650 963344119 386 637879124 879 509777952 573 445453347 892 674574296 823 686908751 828 892055980 638 181163332 167 752237229 168 888793712 952 246987622 154 711980508 717 925078006 513 404970048 724 820599511 884 634895355 944 780629885 547 52610111 579 119537164 631 309244969 836 286421435 46 715685906 238 552741687 851 546975669 57 49109340 183 405308537 289 742291795 758 304422108 644 432591154 819 648152812 898 276866964 824 559148347 197 383012606 217 782066092 732 379287618 218 708207459 413 488074512 37 242414547 551 860796025 853 709273912 534 553923030 275 652933239 790 165746201 271 87109763 970 169876420 841 999772891 556 174649485 376 660132290 656 906287502 412 100928543 233 185513194 47 279241038 53 779585713 950 798403948 120 427891240 532 453659008 880 146212668 541 117179152 996 961610314 669 146896401 517 561530857 840 927709061 735 906938045 389 514785433 677 772099027 293 591384121 848 583800129 191 171720255 336 344233433 679 537906948 596 154938571 909 690428485 755 710855364 714 598499297 41 636998346 995 18156488 134 335760653 669 218006395 81 818646080 810 525949504 105 537516193 586 715556958 338 648495924 689 63773874 294 579968307 364 872376911 79 604738603 817 424131017 243 629143875 300 105827679 789 547684810 395 349682536 632 782723021 276 383381196 105 420387212 766 631788410 176 563511510 74 151060243 453 491532124 552 213000873 715 534918775 141 935582897 16 114988624 952 623587744 844 487751848 411 284463965 291 528645619 787 677106010 954 232718450 750 73303724 750 940781089 269 200049763 540 787211228 21 846700947 36 208161825 459 261506191 818 855245044 318 737554521 629 184343373 55 620329412 401 553063848 951 524754063 150 618348090 668 931607977 371 667745173 797 398476386 904 375282652 388 141112578 391 301933521 489 180807777 987 697929660 870 765107589 842 152619991 599 912659226 533 159443149 963 178384378 512 602746921 767 954836561 258 555749146 481 768680462 799 504812435 904 980218095 166 774815307 11 943883930 617 986416223 238 851941029 876 658752488 371 975873087 176 932931820 622 40111952 418 972552301 519 986925016 836 856557766 318 386311771 643 98528208 29 552302219 25 558862719 712 195845767 702 207203236 600 709867833 681 594582414 891 162077698 993 138047717 285 132904709 104 822774031 857 346773464 665 786043197 910 177655825 701 936556639 822 973618969 30 639778498 671 71742243 500 853049186 588 721804337 825 917333462 138 796974241 505 772218106 560 685600204 905 176120609 126 782842247 300 933425516 777 464415536 208 307338863 894 462619262 304 287913506 747 150693004 252 651157862 756 271072301 381 173255039 748 230886745 374 963736849 661 815805500 90 525765579 431 161112463 463 489230371 264 51337693 916 691476956 424 686190432 959 666787830 856 263289213 769 36491261 272 795604761 600 519919671 721 623752762 205 35469640 454 626188362 34 419682401 378 346228050 462 746976165 80 618308356 206 370581523 951 355705506 235 843970631 761 508503998 920 649823271 978 591616093 625 568084751 242 582867253 871 951186588 565 213632329 97 409075555 610 385639554 10 501152085 293 722797413 313 312858016 643 411852064 204 719439731 714 356677432 42 653285173 650 201576856 25 487512861 209 341176045 735 476541758 86 336926714 890 286177596 99 57674107 893 768359494 518 164213711 567 733753168 206 731850827 795 939542413 341 407892166 636 794096233 607 427416632 275 219042142 413 218325906 152 923734299 696 267234944 843 951243750 933 144986303 404 41673905 991 609340712 739 414909458 326 829913201 775 782299188 49 952028982 910 110229215 645 843402073 43 845334872 517 504353318 538 731681694 274 525852841 531 386008472 242 553657996 102 149844926 373 285170825 506 81023581 114 728879949 374 39235906 9 357908367 904 744221112 409 33013168 664 461824295 999 718422943 441 924367690 499 994649872 983 819623056 944 128299013 481 509955377 697 240416006 617 971447683 657 514016771 106 368068301 209 635081465 869 39965253 224 744243502 213 307462388 159 917828157 347 896464738 951 718828324 970 782588913 711 445138033 419 957692038 498 6166120 998 482344888 696 505517250 126 984409225 815 575875454 917 196288487 914 691427999 431 839217854 188 2927720 166 47455720 452 802936518 535 778393836 738 619670611 948 488371969 857 690206320 359 921221653 138 740941313 726 87795728 119 667090207 427 631417243 783 501016825 394 884359748 482 992662526 9 818584157 338 536453994 179 70820110 568 242389160 973 703280045 502 420263926 611 774565812 153 580974795 701 734157025 29 190347461 948 338145678 989 169531762 247 944429621 407 506070322 595 506238151 558 123021299 950 859311657 518 736547038 333 129128077 531 727403398 587 472724928 610 604019391 947 618999786 118 49617131 326 378057286 198 923910415 372 441911282 806 779992058 100 958124546 603 811339736 779 569783615 777 247294579 122 319566830 427 762901373 190 939051988 599 778935846 596 576156203 675 928581320 475 969912581 367 531583047 262 566298895 322 216445265 140 641320558 732 21407576 789 124739406 906 882178023 728 538691006 635 539935648 198 104138492 262 165469705 339 755513929 702 60885859 413 913644160 184 705018108 846 202319016 24 386607978 852 465850239 162 666870132 755 540361214 321 434907980 803 655994646 34 993011724 664 470943983 777 829473775 171 60532129 743 694247525 883 43471746 43 692960241 384 153233180 633 512538529 190 924224556 875 971632681 955 140878196 956 201434641 449 721454578 951 196609832 537 239192052 870 281358057 474 805618018 882 341780982 262 651138506 321 550114797 731 232545323 651 254574607 29 222680834 152 257246204 642 274459864 216 459154117 543 403190999 12 884001919 1000 862926566 961 237697978 941 56182159 674 221079732 222 769467516 37 157474774 937 453802868 494 411549740 258 220138635 386 610419184 80 753764438 293 761119997 728 249096344 592 442815322 737 980391004 979 789839841 35 866630449 64 974170943 538 911563140 408 650660030 284 102768644 631 56864644 879 4051070 473 969615092 313 246456598 823 806727542 287 175559309 957 695188813 221 995507103 829 683367354 197 515752320 794 12799667 614 161715979 979 58577751 320 103531538 860 63747931 760 160187188 740 460600201 399 722189487 343 599335911 64 999687012 264 678405861 217 403721318 613 826920838 957 911428252 441 980192556 147 889606227 134 748502146 289 344944978 132 318725553 71 784507028 946 454615842 402 128867798 428 392041122 367 271009634 975 594820715 429 608222794 409 991237599 839 449750115 131 562894246 393 352415435 58 817609055 855 80174937 138 19330979 861 349283704 19 863750980 804 583753149 731 314992306 321 85009172 201 112976335 971 187027776 923 723006607 348 921422454 99 549797664 408 704059948 850 388220498 524 272246108 908 187906084 263 648860150 509 747092644 416 580748012 380 933546407 380 943738598 753 480000745 720 642346561 535 208240461 664 919348401 676 567532763 310 561440526 939 52044698 336 416130191 584 298596732 827 852787437 850 335389135 458 291374448 94 758438574 395 908071720 692 689938992 896 222810709 978 352297211 455 404239236 259 448461187 777 996867140 218 862892405 570 172423802 691 915640236 606 805340862 92 522419982 837 67231597 18 115920700 510 941344339 692 755663637 919 654376110 744 152724837 195 736844586 597 882256184 967 804807260 694 77802815 372 694029927 432 210617624 447 389235270 83 506116364 512 662775869 543 531844418 133 685610982 441 514643590 124 620349675 891 219625018 494 99805606 312 735620336 766 375320796 346 703986858 266 627424729 571 596554914 84 567618052 99 64505923 968 259459098 332 750758067 294 868732175 124 178462841 243 596718501 416 407415007 182 653646312 516 533036408 676 926542337 282 989021379 636 707277869 367 419887532 259 644821797 64 517944055 589 745423486 547 776492493 254 990029521 5 623210138 284 603404593 391 166286628 923 114470746 848 650626764 279 479656429 765 612794498 133 955385469 748 402051443 463 660223238 608 664632199 544 194328821 900 60525632 515 669315692 576 589553081 231 52664984 221 659873535 909 945795187 401 275266846 172 278563769 518 721263588 263 277702979 155 871215094 468 433973884 475 370229571 844 836887324 588 586083550 597 49319484 941 26200102 439 787596597 485 474109174 839 860964710 757 960860672 940 937039048 965 306803021 465 113734400 621 888707753 826 792026695 180 234930107 716 94337697 689 704999654 108 589316861 604 561061017 533 285533470 396 117932712 571 448357941 581 517215212 843 62780930 996 770607139 571 210727606 929 998042145 938 31651675 714 54948673 944 10213121 837 100774550 403 576256505 114 380075527 544 160059874 422 428413793 62 342974150 131 579770339 433 181243435 500 183931853 912 128729588 911 629026189 279 614615029 852 252973918 200 396855091 350 109475798 694 939734135 26 458625796 703 287178875 546 601861227 322 604679778 690 735491212 554 333706703 241 434997917 720 794401775 183 445170994 1000 924809044 105 278933066 206 710828767 977 224566039 301 922355358 406 435364700 298 638594298 212 88418603 86 267853655 950 490980653 188 744266714 495 768698431 243 976657528 340 88777394 608 281284781 405 792397925 237 18980072 766 572114052 261 670542767 920 613238208 895 183709571 902 491866893 11 817273349 460 664884985 10 561405417 926 695603497 314 318269657 234 663405692 416 5690508 233 325334890 192 838757705 455 547997354 637 858455928 175 401297651 459 824294281 748 186532163 194 246442856 489 96806049 797 416348846 44 960630143 148 25025027 650 143993430 140 511425673 598 931618410 245 4867377 762 73586566 868 754107506 928 677266128 536 665267110 128 177097599 577 376895304 828 676183174 973 977389622 912 600797949 388 487664857 939 121813349 626 734304684 663 895854719 126 334609037 897 586127261 202 277648758 245 397709899 574 393668506 883 412213602 416 503509190 484 536588059 178 378128484 612 456110795 26 737674862 297 924196559 217 530443574 174 388337932 147 728870700 15 407364079 911 683283170 324 762012511 435 173836613 271 128299502 528 301901104 456 632213124 316 469936705 99 625626769 824 366148659 396 815341691 685 441920153 592 244655357 94 384685351 445 609829878 488 699246667 898 154749015 454 924963898 352 342197498 467 997676199 999 247533987 785 237445627 336 15360918 31 275917459 175 439862053 932 439187666 192 746259979 786 747229633 432 427523558 744 447992276 884 897470706 308 431365158 975 752132041 360 62468869 191 788563797 700 713627733 17 671462512 114 176260377 789 461448440 433 784914383 837 76550737 104 826288375 882 931142051 147 295176012 237 977590701 335 189551376 330 163875361 305 309852307 515 300428554 972 294425008 601 15024910 211 384281294 366 88206547 607 431332666 910 73593416 656 500071016 738 210116161 193 976052776 71 684804176 328 269009717 66 283763278 510 907224269 929 812442787 790 211970964 129 841375338 115 16574507 444 216475927 638 848176578 733 681567125 735 539765589 72 29812352 494 445035420 191 193815128 434 216149351 188 223067187 259 977820458 742 715543093 404 750601518 852 380158440 914 509853124 70 934638283 232 496268049 353 100632572 515 756598572 3 797167910 56 447563508 300 820515142 411 171899899 317 232540074 747 771854845 993 193912188 195 926751053 383 675547837 166 76918208 263 229392197 905 589213139 426 842399171 993 54861468 315 167052207 784 119800956 380 747000574 732 754736719 287 896625881 448 191918821 31 722446475 993 880660347 472 115330203 495 799838925 195 198877364 249 39935283 456 518533306 151 363079600 274 819333379 942 622044001 451 64458104 444 119866175 571 938529331 488 38536466 464 69946557 95 879204011 496 358513473 452 767081273 12 49276789 210 579019565 602 470926338 913 769531636 534 814021821 171 392535500 751 790505987 769 804203862 719 171327619 132 790365914 341 676151002 933 30657208 239 991579729 156 243453183 771 831189851 229 87549051 507 116166611 905 757058223 272 631178640 317 311571221 820 554681337 180 34610240 128 861212503 473 77309497 426 463637311 508 479856565 232 181912840 66 889545407 724 986845769 792 541208897 239 120818409 574 653235078 466 904139210 810 751500250 471 721974593 936 584590102 78 157385066 394 392837720 827 149361095 746 720817188 526 482989860 918 104465164 454 716721941 207 440110855 359 133022749 844 608746981 876 445191720 821 622894402 327 598672689 807 658856981 511 698546747 22 295553628 750 976021534 323 69573224 471 175987822 703 460278297 391 773841758 257 939079789 658 432344906 698 266190863 387 572851035 84 191140598 854 655635823 979 984022915 212 371632365 487 491868146 812 79185881 856 622846410 720 445104893 885 687601506 704 777021751 207 170610165 65 279062489 230 566640420 454 925476275 145 14076325 783 834304561 329 801244480 744 988684356 327 598638723 675 623205874 323 661235743 177 498209473 240 866197736 86 330902189 773 800682919 281 947481777 324 458037167 106 287703304 543 433055645 91 806423347 30 116325120 789 478597435 639 82611672 951 167549759 720 868939763 398 982109365 150 671842297 370 877200630 194 349450289 825 982946779 381 314835926 375 319180520 390 955580576 440 777989394 713 71976085 765 57053239 595 60175298 974 292710761 332 846527269 254 181026689 59 910824765 104 20046743 573 649968417 400 840200505 277 978754648 535 76303392 429 914195589 832 960381941 298 572441662 172 955253997 337 682261205 158 252641589 589 177954815 102 258827770 365 16069433 391 376685047 505 337737386 757 297205963 402 348552106 524 923083549 382 577491533 565 561068459 666 126289907 19 716220320 162 424263608 222 753742752 168 886837208 346 424224365 253 766187611 890 54400297 129 513602979 90 705179637 816 324542571 373 943427800 693 740659226 200 696283965 155 953845638 912 632036810 921 941956140 770 359041005 145 216973409 607 70790217 763 755014323 88 545507792 224 411721133 590 682165531 115 703780334 852 925524150 375 25473550 708 759388870 465 973727510 618 298144550 501 897163937 542 287831094 845 371264663 9 441789256 409 819979134 782 492913166 237 980329670 891 806893582 315 523694964 411 340002403 809 343209702 313 927226132 195 742685680 702 400791481 405 363588563 416 209308092 330 685183964 805 270297691 116 717751888 379 73017759 395 651636796 932 936952694 763 893980583 470 599793420 298 955233413 568 173079195 410 21040020 329 925998345 884 967178096 179 226207696 404 183294053 506 897502939 849 87312840 245 667401199 856 979642169 863 604096178 714 975678421 63 329972687 520 592871548 241 892623873 36 416445700 386 646179721 280 848812227 614 229957133 457 45354367 900 924418500 983 974429602 343 634825798 32 426346245 887 929756991 785 827704252 882 728084534 932 23085602 186 472886556 419 623333705 703 902251183 106 534830350 832 613410470 112 505354675 992 873885317 995 694036879 514 92109411 237 131266842 667 249766802 887 815412505 639 424768648 904 681125953 727 117827167 840 145027614 64 188956379 423 237294176 375 696304308 489 415868574 437 972696518 544 785597348 141 999023022 726 735387308 259 585163271 819 998623562 346 679455955 371 43547810 392 903388416 459 509387571 269 240403692 126 872960129 710 220646211 749 589770274 522 312173946 261 293588954 707 123974768 933 140795484 768 322402806 733 777215217 723 745186211 274 330012853 697 913623835 300 96255169 879 773970333 592 907763809 128 406651958 613 941976356 242 999714814 650 414476897 872 258011601 732 379542570 734 110385107 695 220660226 680 595598481 108 787868259 901 835581309 684 285424687 805 428202877 385 403733502 543 211850293 89 160587616 675 460684486 372 986335401 577 461592207 359 896995341 262 60873882 755 889369988 372 892246648 302 403441132 695 1531683 364 973747893 741 655399658 413 451847967 791 762116562 562 883840108 39 403164438 671 824191379 447 814438194 827 83800672 734 295676953 138 870981251 599 481931638 344 582755622 555 610953048 653 690713931 871 91735194 641 188044607 242 557492236 276 605669487 728 58931410 880 119456557 142 943385447 113 820200059 597 942717517 960 436884997 768 124309813 569 945944146 272 482361043 561 137275580 235 991215460 315 737817878 797 620225757 66 697245992 656 825140213 829 839692439 394 219286755 508 568691872 456 325812505 950 182779343 938 819216996 634 219757988 694 863130619 944 12216131 93 4495034 234 736315439 807 646027575 944 8903826 555 825342925 597 436228174 624 52512009 264 258025559 616 917334741 392 516192751 159 492536697 559 694892953 769 962286172 453 499891810 186 548696694 749 414668220 92 848291853 886 305707940 221 96213776 647 434828835 355 451549098 485 505466767 541 520295842 348 660935319 590 307808476 117 677138613 87 310350622 638 85626563 551 680528821 601 766225556 116 991312395 8 588767933 991 319123240 27 339453231 73 262679578 196 359169906 112 232131217 573 220831318 192 203466618 548 558852737 558 778539772 545 641076037 71 477606955 254 857831496 966 987767939 806 159948389 85 56536893 629 571508235 69 117109679 97 314329056 718 407371623 688 597089264 612 860839763 619 985326140 78 773019714 732 223684854 397 522291900 903 890136511 51 282436820 495 898384470 448 817313965 430 618710838 503 60095985 32 921320314 203 546673328 775 678779196 560 349935327 319 387197494 326 303039903 242 146002612 570 169322004 8 141557443 988 492856132 727 782130379 637 801161534 31 126151135 327 214126029 204 868754418 765 7438143 527 733248801 711 925179488 529 482089149 145 2047522 325 341576816 577 815569320 213 892274890 984 990667297 178 78932766 533 56277253 481 223170711 617 700041933 556 281007043 830 623166663 698 852585735 0 764491652 764 903432429 430 180356539 923 375891309 554 335555076 519 785827844 535 713221900 756 946229820 730 609203984 812 427706774 833 5493665 219 663607771 311 913041226 770 543738450 876 654720151 782 872334024 29 320170804 904 804361290 989 456853256 553 569669051 301 637806064 547 700169902 179 769089103 382 483832279 74 984503156 643 92723247 303 601665139 94 718003223 613 725015732 21 455851321 795 505543305 319 107849770 506 18885518 112 920997307 712 638352596 484 875408504 797 788612881 98 87799862 945 120787042 12 303039676 1000 93685076 327 182181021 346 346652721 9 260376255 918 116465565 357 573173065 255 626228388 552 424136775 93 499445696 144 499892808 344 962272736 663 284709976 944 526253313 340 544237096 905 216588627 772 422859769 237 548294775 398 255450042 387 252269893 428 476450794 612 272746298 156 572217974 680 320047605 529 45554638 862 400330541 598 637878147 39 738467328 304 65941881 430 174922637 618 401268213 494 450288639 253 664657319 916 368396314 564 246563102 212 130436771 286 872772326 165 32430317 167 815382580 449 882423364 372 751498488 74 201195427 839 961427088 746 483946715 808 946768387 127 914960843 111 421851179 631 240113369 457 634464855 734 620031900 414 107446874 996 434277745 241 666334905 751 733760064 229 244201087 549 141299443 81 7628629 402 814450451 942 831102222 304 723763751 401 932962439 303 974955947 648 126095457 482 897148769 971 787076643 351 840168886 645 41813106 611 977161761 790 235652838 901 867444114 420 957376370 501 335018963 147 878691865 890 192334766 351 111079616 525 191949510 765 224711274 542 421897889 60 331327994 485 689456936 129 865562510 180 502321502 820 19003763 256 164974 239 811282874 575 857687337 581 346084210 877 760333366 751 754459313 838 61812891 224 548374305 857 843088860 90 812085819 417 92095710 654 952678196 3 340111854 85 688110426 567 544548487 242 583043438 466 79343527 715 161078106 68 143553295 524 702117703 456 400882951 18 49047850 606 221209926 26 628813120 530 866644847 71 168490269 669 744882515 613 38993620 922 663909341 338 528150976 283 507499080 921 25819828 293 824971908 317 908677815 604 435673572 407 502551522 783 93567739 891 285997154 237 721768501 705 32651075 138 42503439 101 953571856 776 407544627 789 153752629 487 202694229 107 602800274 322 542417977 220 381595514 533 377296925 286 932271453 446 685433215 468 443131740 810 126217142 47 331893743 738 65657169 60 813616842 408 796573113 162 785153535 355 887557674 863 82341470 271 711123217 897 47022510 955 243381732 729 867266931 872 294125233 56 428349311 999 970892632 981 777172151 859 458294195 895 654984182 86 775907069 111 725111821 301 760667310 964 790809804 36 224370085 705 837770970 491 841048946 523 894410492 504 93043779 105 851303637 650 931161963 20 716751499 351 595166524 74 844900588 669 346441098 801 444004946 365 137497736 394 484649426 452 699316352 227 700698520 506 992606991 789 45496413 944 980611407 699 73037926 219 53687071 670 140589821 333 901465945 132 777472647 961 114090807 400 923287804 781 737417370 444 368575845 80 797294090 292 938024738 567 99146837 785 199622647 139 343109998 807 412314804 610 598150276 953 461257964 152 523352052 896 491650576 929 277305257 134 572680616 386 545638645 769 674374191 509 204233705 150 93286007 285 895830432 169 359192875 529 227577704 117 151975092 385 621924009 552 499356481 43 650590751 152 211585938 295 245482145 651 37528904 147 786081245 432 757653475 144 160093283 143 950289747 620 383375027 776 131803339 587 552842399 599 62116854 586 781827292 494 702196803 53 761136772 792 587768068 151 891686459 827 283220684 701 819206251 382 144330029 537 135099683 51 82074159 526 424152566 273 940116699 877 477785612 58 801209805 172 577429509 288 125275516 922 420335973 435 34222907 290 173538992 379 391654651 84 323093384 921 868561225 387 494888572 449 191690023 116 4891155 411 874301937 891 377101907 331 56324377 746 650749073 549 585561360 796 415079093 472 335697522 909 930955055 39 771022924 852 369232904 882 109395236 920 48324514 64 582135020 286 753205654 886 836929656 319 282481676 224 311508226 123 60504623 885 303656700 632 943945087 128 467282780 183 76833001 437 598952546 545 216004333 631 609837574 133 751186880 705 714635479 348 294534254 571 452368543 666 497174333 692 105485559 232 118857081 375 758786261 249 661024608 927 289098941 684 278496672 477 531625955 968 210070660 857 387452329 630 434429696 113 376580407 240 77377065 754 391440179 442 275104440 668 752686131 795 693890194 29 416926416 296 644683501 938 626599981 164 623952140 131 352373165 575 881619265 403 573434186 219 874791128 942 792046315 912 421206579 51 909257384 201 330340152 235 403972229 378 299197437 347 242029931 73 20842043 145 328599171 361 315263556 509 98447499 539 5689740 646 651846450 421 815098755 660 348413428 571 775168329 790 286350739 59 507913933 156 624824873 273 554424109 582 787038826 271 39941883 79 481740612 374 536271176 472 444340474 925 448448638 38 465486592 925 989418821 524 379914288 700 223758322 293 312362900 218 591945161 531 629377070 268 449767813 212 314612859 375 89130877 582 431510122 519 16637639 145 493052072 106 279713630 704 655975883 384 321120210 753 916328525 669 166462427 961 414686259 613 386294446 6 928123759 669 335151430 758 795811811 862 182514628 516 430282387 125 718483648 327 620082388 556 973805433 746 157604319 645 62535238 246 518170007 293 76796571 883 626331956 69 439636324 367 384230247 566 478974425 660 29701330 878 15267533 863 858865415 641 112380477 253 552747063 845 304165155 393 941714225 929 284717445 689 373330683 625 331769525 53 185670944 258 563303058 149 433197143 423 745860719 60 855503938 546 873388021 985 888892950 855 289756838 728 529390920 636 308366958 636 206324668 327 856345568 21 487727224 593 430510578 829 930488505 981 515058432 741 157816099 149 329772973 248 478102623 102 588465109 516 564908661 510 211342336 433 849164037 717 816135088 720 579676506 889 952287558 155 543760138 44 379494765 411 10964604 911 423536176 290 963267049 900 210625782 7 812376034 576 264463805 305 764879769 158 343341246 970 401776836 349 302303098 123 91825723 889 1439970 112 976299136 233 669661859 254 762462805 356 753667924 882 27135221 450 767957357 196 846268231 873 137889067 401 233289287 748 215836086 335 176312527 305 149947200 118 36353015 214 989992185 462 396746391 409 225070076 20 905212036 652 171322217 159 771300315 139 467675632 324 71300543 159 787469666 870 940113036 186 907047046 157 957680823 548 544880025 36 862442253 925 112305376 124 850671861 960 202312548 76 729140293 414 312118745 950 331894153 810 422816496 243 66416299 38 446883192 295 901929898 499 370264449 300 664587876 262 342115176 431 361334466 698 775141620 179 469005272 470 895325228 133 375896573 964 115472465 116 994702084 995 439309423 713 952385148 691 255906194 516 626042770 588 425424688 1 329817169 155 645262130 544 364780562 99 662118284 622 437728440 504 850748023 609 156312421 987 620970143 857 843997789 786 648363382 681 778145734 885 765057819 323 573781155 228 10563252 75 323869751 89 892797665 468 973809837 109 290012375 472 208984881 811 535093436 366 567050058 91 393682255 761 997592805 145 793345109 228 358512311 344 532924855 908 908182418 472 330141354 554 765159834 479 689635438 117 438538897 192 48097193 184 976042497 812 747881886 465 806776587 414 113693768 740 212321437 329 746131314 182 335675459 736 68704723 981 36282268 195 534543788 209 950722337 893 690991176 473 259195179 446 702294774 946 108578569 899 105985943 739 671800793 450 157111412 946 571934017 666 988710637 871 439490649 252 359951091 207 243305846 167 683676919 541 367878310 660 52142846 694 785388323 789 926564343 15 341953298 557 103503448 996 16424017 107 89333189 695 631732235 198 539184476 4 959051043 184 648159613 959 961874427 684 364428057 441 858155102 918 875556702 846 866628846 75 65938883 536 236894750 993 463178170 213 93197037 5 246335151 70 248133890 106 432489230 214 96681390 39 810543014 599 245347590 655 276083857 682 102118936 953 192433415 472 57832072 875 890179658 440 436649599 355 930223780 545 307691262 142 363552608 107 498028853 475 483972814 192 428560604 834 131744027 224 454379397 511 761311460 113 334808026 182 419108402 147 157244936 190 523034978 554 342186755 316 718829026 23 467898826 236 354457361 380 525252061 565 396858630 447 315167761 765 615700108 61 971249082 817 567644221 848 597017656 206 467410244 833 362861376 423 336726065 681 437608484 181 960209853 384 905314736 5 216388124 574 168861796 330 301474012 546 643375034 228 316136108 441 426772474 175 452626976 281 147660905 189 261821767 150 90528240 949 719305155 812 159490103 295 689414037 700 473057795 668 959898293 999 789959261 684 354939403 906 20194445 53 85894424 927 775090128 964 512901714 989 140227480 208 433515646 994 149109023 152 638535454 376 479514257 236 547419622 740 191198766 359 813799110 137 444943401 914 957810859 633 238732343 168 381777840 405 993378558 232 819760871 191 307328011 386 123482820 404 523994994 799 902644773 543 539124420 8 261772547 160 245843823 641 701007102 238 998533004 358 748254593 139 374662766 649 4586475 347 906408550 139 37038905 659 175468464 130 422273515 19 720940412 676 782030685 363 958181370 803 985436537 542 452153936 687 128770224 274 463799685 556 496699302 805 623608921 419 873489744 467 140390510 868 683147914 381 602484676 632 600236930 14 242168468 871 372502064 345 29441352 624 706392365 84 571974714 327 730193181 278 318201393 659 380968954 379 671614028 879 347807094 644 113165587 8 356645012 613 100119436 370 789500399 63 144785949 12 865986512 775 932898445 592 580667987 51 170608248 646 833615834 906 823077046 824 87478804 679 962472723 273 374866617 691 962987 19 745858940 183 499435286 673 972248477 248 405256749 394 974959753 340 319167986 724 196096643 355 689303214 307 550543008 857 777339455 628 272661168 660 789876193 27 534541297 46 121413712 958 611807980 910 929524399 864 459976090 8 578627845 704 737103375 931 790930590 869 763925208 452 745546665 518 37778370 291 708018104 724 776533314 2 390357582 483 955679942 712 176108140 361 518371834 970 175086130 321 30572400 206 38944530 808 194224397 307 498954670 310 753680797 251 521795644 866 678495657 763 578972156 290 859534040 161 807562569 452 258981789 999 895090050 950 546553211 694 307116031 206 46440669 620 43355553 885 6093384 619 837622557 615 609249565 987 353242680 319 48835035 754 202007609 858 789261482 179 54742805 422 877585121 977 871812647 485 879484753 485 965296669 490 556950501 455 200666437 349 912826326 799 345912798 368 522273037 638 179923443 470 906744809 604 338438433 446 684451263 529 830325784 497 261500111 522 42202603 703 150842714 656 490597225 614 300784809 923 951525132 648 588512905 77 918757419 391 954115241 1000 170152766 509 66267 216 651076372 15 869114065 682 163856949 148 578665451 11 245490980 583 122600799 690 786162174 316 890183064 148 118062656 431 181686522 745 304110867 449 827836278 56 717965752 545 304070334 477 414841845 335 300874494 683 548768116 135 172302001 218 361118818 896 743491973 296 731015136 957 80537158 394 380564451 19 226999337 405 578139380 468 873673570 980 295119898 686 240430632 274 455301022 910 931494804 875 180213791 961 839614403 649 565515231 123 103887482 546 301116137 90 241003108 982 593086628 462 784891714 883 529914745 201 494894960 985 597157484 313 454729384 633 709480320 572 42364975 605 254382680 103 287652381 236 121795462 887 62288250 0 810906708 404 16788421 322 203309736 38 354664092 969 608054540 863 953980054 205 765317216 828 33593971 33 709882020 744 570610687 92 280766355 515 632252211 17 300137069 415 210610731 126 492703519 111 387814215 617 787469032 561 714193493 78 869087280 446 236020290 992 36330318 944 307533761 35 575616850 891 309502077 702 95604908 191 890617841 227 466638759 51 674913985 359 332638802 444 760327164 670 209597368 706 757563175 861 603921236 272 638382726 43 423889599 364 343638090 717 922912618 587 790622068 423 932696749 947 277570961 511 633914575 95 484376194 185 713593368 635 83168232 752 285191588 336 648245989 704 974740249 381 1645034 185 117409928 495 67629550 48 333801215 405 570578104 256 489339484 817 474977779 509 895624504 532 861220984 112 974570827 872 12308807 59 264218104 891 635378609 729 252296572 742 89199328 381 229657046 931 698027311 750 979076198 759 537768294 881 516133759 16 719685814 162 609750100 483 304398754 56 774185628 618 105706165 506 620123394 670 589033732 775 814026241 99 165274772 602 601962126 478 606562947 105 942509247 367 680723677 176 735517977 281 507233489 847 485547756 166 875784262 303 163127283 542 88864926 761 182377445 627 197181757 518 841269868 32 861554062 743 799404492 448 798056004 645 50614921 234 992217743 959 774648117 761 288932227 155 186772990 283 608213657 604 897009324 987 478144604 423 958784136 254 944986323 897 127754585 330 154885862 331 456386488 979 994400080 967 515893302 537 990094971 362 44623856 759 45527842 258 393659496 808 440358310 246 753518713 643 985417530 584 737375590 111 503592892 999 695304780 951 71004254 717 778888015 233 352405976 327 318614015 598 848391848 916 927338565 874 406849165 471 336667670 650 141543760 479 238116504 373 492950409 871 725273832 433 94728389 400 992453838 87 739429517 974 49752630 174 450816570 622 211063597 48 30044088 991 593308203 883 829969983 68 505551773 589 767343917 859 515336356 217 975235864 314 145741620 644 274743277 52 584605669 790 569752704 594 286554381 56 987642401 320 635189104 871 73352951 424 162987297 659 17781939 857 151368884 58 193297611 332 744106585 625 198481872 115 758648286 844 237622995 215 677841123 990 937967671 732 333399568 362 721782357 240 91388105 975 577830492 811 281952042 692 887226268 377 340099930 167 833723633 869 90563133 758 33046515 490 471433817 579 783000418 148 21616882 941 79210969 249 780283843 563 832688553 391 517486798 627 99666952 978 608699505 500 817642603 888 937863553 997 598620425 944 292048971 24 966435209 659 99937833 33 467594964 482 221705357 985 2402602 237 227132477 52 989331227 824 859741424 705 692646387 834 626034302 441 965593464 878 707247066 569 72271462 191 620257101 71 333159643 835 478636186 840 664503678 297 955505948 210 36899781 115 348376029 576 351499383 709 349594540 66 79993470 790 526759214 343 950108531 706 761752529 166 628158416 146 954087535 976 171508110 283 863559657 651 528922485 283 237040173 584 700115545 388 334225523 653 790650951 870 789052494 745 265778088 50 815402820 816 80630196 963 689192 611 949143625 447 607858901 167 113543403 387 128024576 401 964699832 919 782160710 386 595282614 210 21487822 552 904019175 961 184825919 383 440901056 431 886676957 399 59973951 442 756392477 41 789264788 981 813277842 108 747589429 562 409094632 183 182778375 470 999468501 167 52308987 898 740334949 327 92077300 849 930228461 810 43939569 204 434616278 745 497144324 900 530038998 850 864168031 90 194175671 960 270966548 870 908464371 235 679720200 505 731780593 255 978553398 950 962798227 607 116073499 859 628357772 203 749183709 790 688179179 346 222992201 610 862453930 103 375736132 583 498701401 177 808238817 949 870292024 853 908070592 387 911564740 791 473652678 815 997931932 739 144140804 376 58381987 93 355138637 303 406846981 549 914132429 831 427137253 969 33506163 216 574932276 303 36382276 83 802468119 867 436828867 944 190776314 532 859725722 9 909765308 130 747267826 749 142337732 410 584927723 316 590832277 145 938291450 565 858191871 324 592694875 800 218905180 757 857035517 318 564542398 707 732445119 218 778459659 20 188642181 658 386427004 316 933364270 912 888250463 237 396205996 693 671336357 433 594624094 735 180145019 474 812383411 713 137882498 723 804050029 621 834193954 279 73217428 506 76987818 433 581462200 814 949211411 296 537300276 610 514260101 400 32986348 439 141932987 807 597341810 431 46560793 27 597006879 470 502441979 828 860197696 624 153541123 452 936388431 860 559964808 138 529376416 937 950861415 547 73448339 949 993717837 799 431468358 358 756943180 526 899069296 22 548674616 271 87093265 477 828044817 743 467951069 512 343547372 208 933882397 446 679771844 147 234631742 707 885095893 738 625971306 497 693968118 157 555853906 288 149808016 262 22261482 354 919705003 314 831557300 404 742061087 520 968283585 939 635447868 653 197367695 607 245877459 568 432872907 639 485303013 863 363771272 265 390210683 68 498760341 984 283208464 442 769432739 962 196907731 500 936179939 665 378522960 694 309728465 789 892346737 770 476703293 18 85424803 618 328351917 791 966182221 621 877581997 795 261307055 436 327996002 759 821758044 882 8335404 275 275345689 704 953711014 198 573342606 748 510908043 328 997119868 659 630920629 685 168160371 34 188207406 348 753318628 807 399333674 449 889153514 453 207234146 53 893936586 346 373976440 658 552330450 518 889704002 379 367683148 791 799738430 529 738652623 685 173660056 70 315187202 792 631540799 305 219499591 958 293914482 446 275688885 152 513363868 449 335801575 422 406732190 737 866357410 291 958138263 612 355874539 348 320869304 575 231673890 22 558815803 153 234099023 284 347365390 828 240324860 884 633994239 78 681261848 705 490122045 298 398928070 327 855034974 582 779452574 44 132218215 597 174521464 93 468165428 401 684848552 973 147779047 471 317406858 736 807218663 891 590060024 457 861311438 872 815624224 869 279556873 718 314947113 497 544937128 89 986507380 477 734482235 537 328426955 884 352625891 14 199424859 743 513907455 276 611317898 790 125808913 687 858602716 913 967151301 517 68840138 739 401073997 353 512441861 425 382480504 65 196129133 674 949978474 713 453416585 349 823775587 793 352814835 198 703721633 685 912746659 538 871751699 13 987275501 918 559901785 262 526986880 885 143558514 305 133866176 195 838363421 825 65985302 252 837248500 753 956791391 680 314213078 840 695938768 492 719327739 210 214293230 341 639935402 206 360633529 154 374448286 243 274645372 753 951113238 777 573503046 317 347837820 966 547947111 221 961206542 681 60501073 295 590132983 75 877651647 965 969068042 496 21361635 58 526114979 638 951619295 678 393150267 258 105601058 1000 855318208 559 455076245 818 395645341 577 176363578 113 47535968 725 444227212 392 536901122 597 965513736 299 549412137 373 373392589 513 520355041 422 656146500 875 799297100 366 86620690 66 394634552 93 450160850 3 501358650 949 832547144 520 759996927 636 996198184 932 447952195 608 876900394 939 241380631 588 306274794 164 990344147 926 136041533 612 169489911 720 736383377 379 566695423 842 831472617 885 442514420 110 349677260 109 150056819 633 34870393 12 867291018 234 420595770 990 232604115 816 336594167 766 17476009 349 741188260 681 160586856 268 723732790 855 110375557 632 191050439 923 903309488 551 388889238 137 3295074 710 768812308 29 4208279 287 663598643 325 178083653 543 173128035 996 394449821 859 910199117 908 688518606 860 164812890 235 563321016 270 165633193 449 190050705 756 609869622 983 795932333 28 817855682 810 496685273 264 586639562 319 444384709 372 634422242 597 587930831 262 126864817 617 624580405 388 529598872 523 788093065 752 18770259 120 486027681 519 293298124 751 33646044 718 719094472 773 568436865 248 684499673 156 622620611 833 689966658 669 54296115 368 785475795 968 591588513 376 803485954 802 209437409 825 372180886 740 693996885 982 257401248 857 788862691 64 205505266 916 765786102 161 33550145 353 614359620 89 187409020 143 727326378 367 300238143 369 63473994 152 140983689 444 808385470 801 802644612 306 528758827 37 795386575 574 112318380 498 772468733 900 952777760 936 611171309 964 220824571 562 178548382 922 124754431 730 431588718 191 892939513 310 924873714 922 120802710 218 728100239 941 360138033 114 672279174 589 774943517 920 566888359 436 709714988 855 369411402 760 105284927 881 315438746 212 582535541 437 561381523 610 663323827 913 856598177 66 741257957 939 887848228 694 972134191 501 518681882 144 161960698 451 579651034 289 269904213 878 549901802 166 232503206 224 92819370 287 812536508 524 998739474 942 818786611 710 793431288 158 774753130 730 447156463 619 817757522 848 922554151 920 591644979 166 85409629 888 974655843 57 961405739 650 59739872 450 59129578 596 144777448 220 698580145 134 316697374 26 342523593 727 739591543 985 509761790 427 709419564 999 187049878 119 783501430 637 540720926 880 517078871 865 904863144 254 870510146 835 254787535 78 510586006 965 138285176 855 559387973 528 689649479 266 243619383 745 634200272 203 384210476 866 931363637 191 406857663 8 654225869 507 721237210 751 209774284 708 867880266 974 553969039 246 218769506 50 485294410 490 143831355 903 972288206 440 379651594 423 726656209 719 104199079 423 792265079 264 239590907 117 968623050 735 253845965 794 509285585 888 919982647 789 298528437 77 371818323 52 551810262 254 834028826 452 16938446 968 199802556 786 579781711 703 532392087 677 65398559 845 348976790 473 625613209 837 911582268 510 446874520 74 709778277 197 795159893 357 106489041 759 601467130 478 5334533 465 948013228 419 377520509 767 735715077 553 910972352 919 615617627 670 444130440 641 506203891 55 433289007 255 221999067 171 44984699 114 737664377 572 659344747 471 75737618 401 259005161 750 94540569 80 744446829 78 589827099 6 266742601 756 189067596 493 591183604 287 222297345 309 303608191 135 982642963 697 239198035 218 919987114 851 290240530 822 725031787 971 926588315 259 292117171 682 201177579 868 81292105 994 913015832 517 108493493 615 588797253 569 642955216 787 104609892 268 905334012 781 884619628 549 997388277 930 62775101 705 626921473 263 803418013 755 720981404 361 912809829 457 234701397 523 59863696 901 445895672 783 560496607 48 547464596 151 523562543 903 10473502 362 383581995 946 858796824 562 42511392 719 429705080 523 541594415 707 615254475 251 591508148 112 549526327 942 691590634 750 772813783 240 292584849 987 31224771 532 828412957 711 794590126 236 331144755 193 112936107 350 245156219 778 580974129 231 686602265 231 707126164 473 819154989 304 146122881 503 773703049 476 200634948 57 369964948 254 497667415 533 45131193 395 591021321 341 996170639 243 443416290 31 71118861 922 742522642 935 156648809 883 177747010 607 631157304 604 677286255 212 49478661 131 604351412 263 138531203 763 802328733 444 704158051 313 357349975 124 124989947 242 120494265 622 387282703 496 594228821 329 980783820 126 949508845 99 908080920 339 360304997 832 799107254 143 910400548 868 736281936 712 644371970 267 583548923 270 294539062 137 754849102 200 764996306 573 49998930 601 519376357 61 83739484 858 859422297 323 805633811 441 676971846 773 187399630 584 77181857 922 682450653 586 223059980 745 590364138 338 692836313 747 855533419 888 230760587 16 321994945 181 973757865 556 933853499 558 172254644 503 490077961 894 159654073 997 581884173 429 260184293 659 236520837 204 864314354 411 748085382 512 960193845 239 980922994 447 360830655 441 265706867 898 417611585 812 634952176 503 472030040 142 920372 475 764946759 575 167144331 755 910363505 678 724443456 123 756160092 237 648590138 746 555520234 51 540940818 452 244241256 649 510876470 79 873807949 874 392454938 985 345518265 195 218344518 709 36000775 356 155461688 921 755151438 759 371699445 848 481010848 579 525312463 983 329827232 555 132647808 742 187795462 501 58942257 193 978395953 582 354818005 59 2306560 555 914772392 577 358066369 857 530303489 8 276587447 533 815212024 409 516798574 339 36373446 782 218289670 917 368000446 105 70929638 197 240287924 39 19029845 922 434516109 372 527365959 555 842685702 598 189203616 630 987787228 0 8614638 95 917285482 298 619718450 460 70792045 12 994027186 197 46572342 763 591337749 865 86402337 799 191841323 986 946144077 79 626967740 838 151366236 605 793785021 903 424813631 908 105506318 821 547366190 430 488292996 323 366126444 777 529203973 36 635276177 779 310373435 528 497914539 279 114199894 610 894134780 767 671904998 550 978147754 95 168751640 313 362846774 943 47925946 215 154589779 311 768260320 680 497114035 969 151702187 983 673203724 778 739434918 37 817790066 548 476219348 598 607542224 509 992176293 166 315331335 524 753200607 17 258407525 623 203873598 287 343506696 486 38142672 304 377149346 884 336972626 599 267878668 775 275328446 993 315329430 406 439429436 782 303081791 754 496902294 411 491128706 927 83932293 550 188251328 615 840674155 295 72481340 726 519567857 853 294169062 492 563581783 100 530096411 36 388935305 872 302301155 56 581678135 908 196066696 253 279132258 264 870305606 457 322582589 869 55257515 868 816848947 322 462263090 91 800900005 308 317750760 174 65595494 340 687790181 883 964537303 533 442020480 385 558111987 386 470078473 312 327971484 192 853131298 12 219915814 815 664185590 148 236409833 83 548332118 749 138525599 668 930299069 339 573864877 310 662200992 932 470110372 142 292363399 335 756115519 341 710513386 212 910999701 439 921460612 70 837656362 916 128799202 122 729323278 876 296983313 572 836899314 620 381174059 116 71758399 729 644616635 342 973141628 51 134291929 887 137505118 521 255872671 931 982459894 153 684091434 178 185858238 523 241906899 997 592133903 872 422989126 156 161191404 313 846284599 50 30732275 440 328454625 181 811346499 391 257451301 847 421897662 356 479041631 825 730702445 512 37565487 348 170265585 487 713160679 298 221449806 512 42089481 482 431119441 945 466094851 564 413627388 715 99722322 372 248259167 15 590324638 612 946205251 998 510587181 549 692265069 426 676266329 65 979018345 944 704556008 110 596901091 747 660620240 958 110732490 4 981187304 736 319782346 638 531519633 103 565740901 624 853871825 996 423182917 115 261949484 980 58853807 333 813497546 660 379502436 258 12988155 433 521124121 772 468204097 881 384521533 409 566337889 477 645018230 359 267964957 722 904303658 76 408079341 230 856986596 618 165324090 537 490939274 622 466524822 552 470315538 131 861278974 352 282123306 458 628456132 458 95023755 556 970165108 465 712083411 373 451255886 924 929137003 913 844667604 740 85962610 663 800181137 191 132327038 229 372850492 407 687582411 610 29771181 441 757608590 782 346794970 593 994954031 224 591941457 846 431410490 190 123986943 133 622337101 233 250060426 525 115135123 701 371825941 951 965476638 914 657395800 502 92637237 441 58706855 9 775515912 327 246796039 416 96458986 863 323502450 419 668577001 194 770905104 78 794897088 918 88227016 664 751706600 213 683686806 21 334176005 320 779599730 984 808897248 85 417187834 72 548712976 220 463282435 582 517381078 125 346979284 254 80755759 443 836364019 505 431660245 446 249406033 708 268041814 871 874950369 338 858874780 431 512899512 413 965295110 613 169658744 904 991340495 92 228631803 32 687566699 560 340248595 234 941763265 906 842595120 860 331286064 973 614768202 98 836690530 108 852996749 527 739465564 557 921867311 121 684903058 452 135178438 672 520299014 51 575161797 431 767502784 483 924763249 207 207890124 71 932263238 98 520885811 51 830575330 259 887398603 377 34104977 749 11595555 461 763380871 974 371275889 201 257717518 251 45395266 789 474623890 558 260162853 818 727735139 87 773871287 66 102842249 263 420248382 495 995963370 225 637534742 967 586842035 326 634696266 199 908188918 254 906162099 917 182333859 998 956059547 935 193196388 82 849232756 776 296661506 294 793502330 490 730051505 571 9451830 345 167329279 972 914413733 18 702323251 973 423101262 550 733476472 171 561407064 283 24218091 283 217161278 11 565815665 769 60689036 249 723100960 116 496449467 19 374438344 22 91495940 76 56120153 358 482912402 474 215418801 38 838681726 632 277651994 901 657112285 517 810740446 332 210918655 793 322971887 90 329913015 226 260582859 29 868117581 685 438215760 509 192529259 718 625861715 306 489304767 54 679415442 797 128857762 787 500024546 906 652370836 855 546694723 41 847099893 242 488583457 84 277977634 510 569510 845 911687659 271 898817089 706 789978393 704 38902034 327 245982638 18 233863979 251 982114064 575 407289421 506 414305133 959 474263929 230 571850896 393 146701214 544 921261732 568 929140313 157 600543657 112 931009450 942 173884503 24 648957935 418 493162461 71 6472250 213 283230604 144 740432886 144 519673843 439 988044042 917 776667961 114 724920851 98 270062574 558 965772531 685 375175770 208 475120192 679 817518987 818 719405186 450 141442392 515 719241967 79 322143396 658 291284911 162 8386832 117 297690390 408 139660358 163 311766274 446 788318936 114 560369772 323 661046950 11 727725828 34 652082766 475 717932848 64 299155132 215 323478174 688 624321185 164 27750071 32 754870063 929 205170148 661 800242251 490 589512017 205 417361460 616 915842848 892 351684896 491 867084866 281 330515547 188 732173286 934 473044932 442 393407347 760 742614454 716 761018807 395 605503029 184 509963689 102 345100500 197 216477031 235 909233782 276 934331350 187 674027288 273 156769533 900 798388741 263 616084209 461 998842364 196 360391442 211 774668206 769 476392529 623 146532080 44 543374209 997 957541420 349 646348916 859 135510882 54 717111884 607 975116065 378 464462437 819 778047213 811 550283314 635 93873573 701 436177004 801 958342981 962 193262792 470 219168914 266 119786327 184 844337205 322 690142705 899 937201576 432 496471248 574 751732406 729 198269471 784 930359314 608 221894784 102 281985665 556 478217718 677 4418931 554 28457022 46 831699911 975 492901624 2 539475073 272 48732269 120 43902025 787 768633797 482 499704743 862 772858594 815 882299811 387 366437053 805 85284977 607 451462260 202 56164688 889 443943997 54 892035646 199 86681152 842 677637560 884 620164128 60 78528153 39 359848813 686 239269707 677 50701633 139 433468578 716 536615823 503 168565249 653 136608530 878 792968539 362 415810177 23 968062073 778 838505714 841 678129174 948 453851900 281 496497633 796 862580191 312 705799352 36 707202328 116 136627104 439 496162934 357 429966946 888 346306599 86 339737113 151 542426084 431 763548037 81 626601577 224 492370240 257 19568538 119 581696754 551 32653396 499 837529545 558 245162108 448 551576949 964 344917513 563 899346995 819 421430327 41 718392481 79 106573299 612 837351528 313 295408070 677 114113663 98 185436794 809 978383242 628 283510517 181 192695402 787 800307880 20 651145873 895 791332782 702 728767915 359 781388562 272 811765453 381 83537305 135 661276113 765 165487295 249 15561172 790 347589810 528 594251533 757 424152561 832 728859878 709 844105789 98 828746389 65 565192582 666 127945851 222 459580260 432 377486292 284 592556259 786 686143776 958 680773859 737 720418824 686 799086671 342 775347700 6 505866143 988 336935673 652 739528784 122 800361487 823 274927673 219 45485475 480 73639436 992 413414793 586 332633899 555 30102340 226 248295810 285 438548852 899 640367674 782 550135271 450 423326318 776 462366271 734 127295762 464 732572953 295 921639200 823 93464613 996 463696960 728 604775165 232 254873510 285 330840901 637 700237652 886 618557656 712 643842402 795 314188664 236 439932275 228 170074531 738 63659290 56 71634290 155 121602640 697 538970259 854 475687544 731 521646554 345 463916990 482 524382996 421 230324723 10 217526392 954 825468069 630 811664943 17 375391802 521 500334253 27 468752385 208 351198760 500 713283766 862 346178650 451 357579902 587 722699444 888 371688014 408 535812286 932 322316734 783 380417505 535 918622192 832 439624882 103 649013841 505 844262138 535 497114005 840 46296541 843 54814768 342 61133144 244 509220601 811 197907994 469 668593321 440 22021530 41 950943614 582 929273621 949 711264619 132 769957147 663 553004127 416 133854219 773 337013535 969 181637620 841 77117556 422 737925322 967 293775118 4 711560336 339 256716832 135 782817176 716 38550132 34 550156454 143 109095256 22 282082862 430 90710306 86 892201293 28 506427173 562 193932806 787 596839695 213 181284356 15 100353270 971 105310756 845 215606858 698 851628212 832 182035780 281 139025422 872 313213405 378 968411097 450 151063926 717 746678878 483 103224993 929 925731602 434 537601445 718 204542225 582 850172859 683 161835566 637 281926437 523 883665222 397 22249866 520 410128505 410 271903142 677 391841314 311 979037147 818 338043784 13 590582713 925 206149731 479 513739651 445 627350415 105 630700305 775 343666246 820 988637159 863 896615008 956 623806532 714 982041536 539 389241283 126 207762430 313 319252778 858 110924274 346 513580972 354 43358050 93 409941624 90 999917217 530 324272172 341 376138220 647 582841344 48 138219528 90 199161953 255 393697678 612 640490965 370 753535926 11 250701457 465 583637258 433 907677420 236 114023478 170 895720165 952 373776793 154 116819319 528 694864755 288 143906590 319 80510911 191 824348268 42 775005679 98 777417043 730 145911604 190 311730965 773 833047320 973 188981571 158 185561571 495 169199470 773 563884183 83 845167157 63 822970240 686 486793664 278 83487460 192 459975841 174 277883152 587 853885953 812 434057342 550 539924647 658 853134999 394 303514626 186 694392097 296 865717238 367 61204143 759 629643650 794 749890329 401 751779796 711 775605268 559 288237675 930 733597778 375 697508996 437 354299238 342 870531119 121 20134563 501 325307682 145 540203134 291 335727407 238 639379567 604 520665957 406 903534318 91 52789956 76 18661173 850 184420941 524 901364337 98 16730838 579 26491826 661 847908644 323 54654889 59 905685366 450 576511763 827 810544540 74 148078826 733 773633170 140 222902925 977 368239654 844 87637372 39 760173136 592 155459662 982 201965569 493 228103432 177 280216067 957 114519208 573 45389806 130 727164428 898 383678285 996 318543861 980 931958570 226 476348192 36 340630056 460 977200809 231 555700674 526 647339561 432 171262747 924 960713331 81 215174709 918 560871596 829 732244043 754 777088410 165 497013051 411 827684525 834 135379055 155 554156379 725 930385563 766 96426010 92 43613627 566 861952101 349 635695124 897 247642376 979 432036729 987 887070415 90 947281443 837 226458534 792 358493700 795 764614543 701 523802758 178 291796339 180 278719679 212 422061245 974 952807990 537 912451800 456 982014207 234 510299021 272 273254536 414 876572088 896 153368234 468 475438986 19 262003402 278 848710653 452 446952573 737 978044568 461 947599797 755 207291647 219 977225928 618 180262586 960 736354810 593 663141053 179 821137149 743 782021208 621 136433369 213 72100529 284 38806044 202 139393284 514 252213830 176 124921564 401 710162904 303 92648285 685 423721585 927 899215253 485 591231491 963 94907721 733 708098141 421 866752551 362 185565695 844 296172049 309 897532933 304 135921623 370 590637927 270 164444209 774 686687060 64 976905196 732 755752196 547 122906965 100 206344016 346 137542235 914 61729898 472 664256314 541 249688542 605 150652841 920 359163267 648 300335335 82 199224537 85 31519607 790 547653817 343 495796141 842 970238425 195 585646269 841 439525169 79 433887554 458 729404048 830 645840347 303 759591385 243 833760266 211 541833278 796 816612276 276 692165873 917 704069915 2 109970409 490 750348429 893 861877791 838 275688152 42 584269115 733 172065776 485 617057150 95 817110155 41 765868922 712 73677779 489 807917824 9 894383917 344 798338242 218 284444490 29 867098967 304 425143472 319 680719120 106 745785671 424 95774593 369 990987179 142 513338720 459 989064387 299 251776619 32 476201802 220 945050518 809 607598505 104 571128600 514 73770700 552 876985807 89 632096426 518 941567363 914 162987983 794 940115804 127 68531183 350 556814069 887 361279418 422 877717417 860 477289744 302 865258166 336 244220004 932 297960233 162 342680391 272 607682832 139 321662894 999 750247688 889 424934033 528 657435963 360 439814525 229 405694280 66 233830282 292 215177656 771 125108588 473 486609626 444 757297101 737 168259484 376 97240518 999 516716717 518 495244819 380 875295015 741 557226137 684 148409355 592 147641130 688 988920845 939 817922030 881 31289523 356 578685993 108 938681268 145 864791853 638 738439289 764 356394349 823 367259762 203 512883779 407 178973449 93 219196820 947 885076827 435 460868502 144 811976216 156 324336106 733 239938849 682 165052017 55 623987666 749 56720998 890 139312491 516 335779533 542 531500289 865 70713902 777 652297972 358 632230457 483 723875069 976 823700695 769 96102403 223 86071994 966 607025654 234 708226549 677 794379873 723 423965540 985 642334879 654 179709135 572 190863377 825 280550528 706 431619849 257 206228205 422 722412687 903 964798113 775 207299138 574 9700085 262 481500910 713 575859682 584 119744867 993 373690241 840 480153822 919 64650875 6 906065333 999 879252061 114 190593617 453 582504059 829 648853885 745 105053585 819 23841727 773 990894711 602 130704907 872 113909353 967 779215622 832 426064919 162 226898760 228 67558579 596 42983087 575 129224169 726 116590866 133 73795729 734 966002934 751 397759841 13 88521077 744 298929177 679 649908801 415 393424748 471 492685470 421 909132754 786 919316883 93 461741165 566 869746921 881 199341872 364 782915135 949 823105755 236 936451575 801 797584421 155 819822209 679 403293451 887 685583605 934 817067789 146 326879167 568 80757995 209 813569322 141 910129756 332 611889928 348 745471811 486 167841686 569 866461704 393 781346770 942 217924501 199 310909087 313 332529264 414 140132802 14 900390400 176 54746543 955 556714313 211 763483322 12 726977366 837 197216351 110 241817103 653 988434752 718 768794190 215 610572385 275 820022929 753 296858029 64 437575017 736 51997274 528 710500311 432 978884262 157 771757777 127 174303389 443 222167153 643 691740410 849 667498249 326 30891491 555 969759114 505 899456647 633 356047860 490 62841426 289 835484624 466 675226561 513 615385233 220 76590017 893 98734623 929 864306873 670 412585942 1000 791597648 980 854327205 451 739128653 726 379303441 267 394048790 962 450935405 121 394897865 24 19370304 552 625261425 783 561856141 477 191679046 611 810909454 15 338542325 944 507685876 939 578757003 548 805950470 114 213331816 785 718482799 437 454716521 953 972253471 882 822246498 971 659852128 537 731068822 45 274449913 879 925818289 557 402778413 643 496501953 295 734850279 504 783843889 701 490144308 10 561991137 956 633785990 748 796381745 635 169525669 675 574533900 35 149173359 520 985088276 617 156510409 112 883376016 11 848697224 444 79802873 505 145397077 867 826297033 295 995171853 20 71906236 497 984175415 626 919208494 720 72590334 706 153731886 642 347092110 101 771474145 146 814070127 17 777423077 336 244879588 171 605850786 298 104156767 545 772138541 149 138735935 574 425380951 832 398461710 723 383392170 357 957851760 404 88723417 772 459027702 769 260196936 577 955205140 907 480776630 420 687078168 914 156174725 152 841814248 992 338201846 514 930140611 55 806701114 460 982322509 948 178799967 229 692516971 172 685592051 408 220358977 662 953088022 249 737524130 826 398344825 243 508292035 36 967283109 90 370417779 310 880628886 300 168877582 682 264519373 678 919334762 549 55972477 80 359679749 886 844366217 726 842018083 179 702850455 727 847200623 635 487720570 856 8032 581 94413677 81 688540082 183 602399686 77 593395143 790 558102370 598 314271425 802 624937110 377 772842277 238 671348274 798 487304905 1 211090836 751 51166878 68 97952598 731 362302373 398 65986505 749 750498484 726 142252686 812 953131776 402 714603941 615 799703080 382 29839268 570 345897600 66 241323723 17 704967077 574 973477022 55 346010917 280 40290828 842 491870392 621 236978189 510 731741786 259 754404775 877 550900480 307 183415415 331 134089031 193 617726662 820 838938378 689 37183069 988 203023159 440 479574777 586 931396187 2 537749415 801 102538413 230 300377959 510 215473990 793 147696350 371 967517731 492 372262765 377 633974731 174 363018381 833 175313619 691 390811730 308 543826496 971 77908560 292 224152281 650 622320309 625 858027638 852 847200780 602 238572722 58 447945249 174 195534014 368 507111095 13 376475990 437 866367419 785 249775961 190 190096677 82 242492687 22 872559760 796 675252444 842 119929250 347 331470741 528 923013825 946 246838941 648 483865199 662 583065671 618 322642330 968 428780572 734 898266898 262 9223611 471 853244083 213 822897918 141 194781516 55 169843330 229 546664581 549 169286856 278 275845437 87 555609524 922 426137859 796 114210264 82 13872206 742 1294296 290 750286306 501 37606428 21 317033980 214 721712408 579 821793547 262 959006547 874 95258301 733 700631545 336 67902058 855 101925876 424 797551915 271 46675117 750 278226106 755 6147516 824 521885911 681 300216459 487 874708488 953 665844825 974 884075485 717 591101815 130 836749136 957 136919859 550 256745001 604 899892644 242 974595259 719 217564527 411 504421976 80 250115768 144 215460290 372 95838409 740 402420159 471 808747974 504 742478434 446 299654435 777 492737905 925 615750026 551 238601741 53 599862560 218 928000009 193 776447360 818 5508123 41 145465314 652 50762643 976 269131636 533 623290301 403 777846762 406 75362373 352 894600818 905 525087489 963 843936875 256 169752404 720 269127253 870 785282197 545 687135170 916 607154067 621 862243235 881 79677774 645 808040123 281 55982852 89 971065331 510 591571275 469 81246170 413 527753810 359 672247354 318 705243105 516 739613757 232 882985557 381 746295708 968 520398094 138 290400517 699 841826429 350 52351057 180 340492691 489 535713474 446 486222775 72 468156982 61 758420923 223 222426889 316 187698564 962 851440168 567 165064003 799 267981589 880 610813502 361 665321035 752 822392864 74 844253476 656 863720687 816 293807757 387 215706001 298 826834756 850 810426786 195 471882000 517 384915496 652 68789158 206 40828609 322 486968949 312 83320579 541 63645652 223 45882123 987 923184520 980 262269030 548 862284124 554 291659624 918 565460262 275 839970148 732 361603875 563 888741088 258 326821050 866 190976274 414 341451347 14 165717979 590 589601997 256 420707226 20 455806149 425 312051924 570 817527357 3 672822857 121 768186044 241 195729347 121 135322454 64 739809785 581 64782066 591 498759517 525 847952039 954 557272988 794 651208563 217 213669801 151 846836873 81 910135828 95 114658789 551 48527595 761 641155069 583 353192708 847 279607100 455 258688467 196 956450234 4 906923853 384 919269005 996 755182493 413 379628629 517 282282511 755 484119730 405 853439382 865 100375287 913 518330296 19 806770096 651 257093938 916 22568596 496 694944349 919 826810795 990 343720990 273 105938391 66 358704599 367 134725672 689 519955730 94 606606406 320 51764229 874 403981273 283 841345379 349 745699094 199 294894068 662 111176660 641 657981604 973 949599519 253 556026902 509 595138747 430 296267344 539 833681578 264 915710439 865 673117159 325 56713566 257 87328740 382 879923522 605 115219300 855 961747865 213 805332470 906 174607766 812 945244056 808 207753584 291 472657760 179 416960015 358 792997373 662 127468116 756 977659627 437 112372075 764 411950838 403 400672448 177 816317344 92 743470803 943 160375511 903 296768229 18 619899479 197 975965219 915 615296873 630 343320861 588 926546176 260 120438550 431 883051528 322 259942119 85 465162678 201 489099961 761 666261763 459 335534191 943 261259771 128 990437834 698 895474761 262 723457033 990 211269131 618 477718886 937 128030562 848 77102561 73 667404786 176 470050626 479 459588601 252 763899267 712 488235333 67 737792925 819 21514566 242 896839554 461 633154280 825 445728064 730 94869722 661 74375323 964 328631869 167 424573579 567 305069130 157 158133303 166 239400968 356 148762912 251 656585440 230 560783030 400 471683974 370 522314827 805 975038149 815 460377947 269 555584093 41 364706673 602 890304132 897 387998543 389 34452940 205 456675660 96 599218084 624 597609863 977 523725819 236 283713556 841 542030731 836 158088376 641 939334154 594 500559503 365 904921418 639 500666868 511 610070832 879 636720851 560 33166588 3 824036135 628 304210972 492 623679649 415 477628450 683 868869211 420 733220086 611 175424674 671 691005290 996 872715989 496 804869049 595 39218145 248 968948165 318 750592146 154 675375068 480 655298341 236 306988262 150 919071908 623 224518806 48 873287392 397 94014998 197 498081751 322 208326475 293 530204726 545 453986853 329 398580407 210 420313251 712 804376995 814 951898593 931 517611267 850 966787164 868 748298092 532 707838379 207 785738203 321 747816528 615 374200032 861 126818222 243 115500118 564 574716662 544 600815645 790 360695617 143 692494140 500 239384593 307 235822677 455 96706915 991 517268557 62 694944393 242 993471529 210 362456197 825 901697120 180 337503916 608 131524805 423 949531795 295 589816987 644 953796243 789 311247293 557 721218118 306 791773240 86 647219837 567 458480104 849 240932462 231 581568763 876 534475591 468 455042036 399 727704613 466 689413829 396 199419840 982 743586739 339 664682077 620 196409664 561 729795058 551 239859929 868 225736290 630 405733887 505 457472352 767 117275467 341 280618582 544 589584773 629 419544407 416 221962096 23 993271048 307 530187545 568 831014971 922 412529832 34 686060020 506 769047080 881 484104492 444 272927449 999 183698423 961 121426003 857 443298369 776 995599631 627 214214462 588 567239225 519 93349581 202 992134187 735 376501044 863 301526482 418 204651448 347 100716973 439 130056537 931 489625803 466 812579114 852 803917615 484 281815710 120 608872581 32 780990858 724 896927073 377 564712320 611 54768239 272 80337215 816 45911124 760 175870623 455 179182770 744 901004118 685 871812762 872 870665970 893 162534073 956 871757579 444 847932202 939 512274787 266 218560217 834 728308062 836 158967508 982 165952664 602 94964722 312 800920872 410 48635548 788 36992980 979 612018460 731 141291857 963 622698925 242 170327223 639 28915189 16 155390143 990 987415748 67 169545130 877 375757394 5 650052118 264 842312115 551 320068573 333 400142957 818 401999269 56 649830466 12 449585655 226 430186288 377 522660099 122 548129118 373 716880149 946 550149524 259 478284045 21 207268851 617 62659622 151 177853806 408 804751167 567 20060517 85 786833121 820 601527866 486 905596482 336 344924873 145 499420746 606 936649172 369 37153841 784 515077834 864 226636598 762 212876897 180 432776449 207 532485123 678 700075024 510 804927977 106 949796431 539 480387906 430 751582255 187 494159253 291 193468860 54 717602432 924 839758100 930 475234534 657 437538968 601 212543319 497 988975173 489 648934005 26 605422940 342 984249415 121 538969963 139 402175325 274 869790518 620 123112137 81 169993649 849 18130628 867 809665090 268 140600598 981 225399276 492 837322938 63 448119257 557 591662859 779 801920877 828 406451900 406 676087804 472 984912343 63 899843957 909 969965398 141 569954614 464 349638248 465 956592913 538 902985428 31 189025417 15 672386859 508 761199060 278 351852563 106 762074790 639 962991523 821 933396722 893 188863248 73 331195237 548 862271018 359 563511157 388 594952058 401 45506178 367 995933052 252 486050346 894 801438634 934 334630988 178 39260544 234 491285782 924 568660856 786 601413770 668 107331735 96 32607640 64 995529746 404 483984586 58 544573025 467 809165738 415 904299777 128 257083852 609 612045700 76 618041389 428 38898783 576 312861532 577 863056007 585 299757417 938 437329653 71 499812898 816 542723609 937 982807406 798 931464668 138 72569202 866 421570409 131 657344037 116 509450150 884 549061195 363 375083787 477 20895633 722 474419840 283 730073470 445 477550416 758 500131583 969 216128846 118 193131714 10 241727375 651 548015671 169 905058456 896 950459760 538 864036119 689 566998968 561 22500909 866 565589568 926 529430236 629 34606520 868 687233457 500 748996916 577 280667262 278 511274986 720 714282284 300 799872190 81 75015498 219 657933204 527 210808755 768 383611118 353 119681653 270 999248965 348 81455132 626 876514499 96 781384369 103 678263463 770 202199993 968 325878954 384 909787519 392 631623850 378 9565164 325 901930285 81 875358403 177 436626437 683 719311916 321 591677307 511 106856318 200 553383152 10 371048503 286 156942299 868 474492478 701 791577635 180 989190072 436 933130019 64 609700878 528 784297892 297 987700291 941 968867314 811 408979510 672 725695801 348 130783356 437 951735694 313 551908168 682 570255242 204 601878999 337 486373848 906 265475728 551 620904967 69 987640707 952 573342097 74 276643011 426 156625966 762 931406949 35 40638808 329 261521663 140 338931719 311 992676602 137 696274445 752 705754578 691 398557746 497 783885454 165 406369814 872 908503266 54 572397056 919 3610071 422 419611732 688 424138025 123 320913027 1 368145096 132 628510225 420 367870379 910 398848462 97 855160842 431 995524508 529 165160946 860 560372173 673 684542370 617 643421206 952 883047573 471 163486566 708 569906643 192 41226000 564 953265179 784 296410937 411 73297480 761 877860547 331 280348610 928 588899573 771 892771820 389 724889119 976 438316720 99 963183012 348 303273440 667 824864036 636 807509212 145 65034475 547 359662563 939 335532911 272 580295478 601 593704826 385 681405278 506 576979111 229 878515953 394 577670610 571 596832957 233 386904999 649 459783746 298 979804746 655 211703393 91 617606216 659 871142008 583 58785895 314 781759513 946 890025745 860 831667971 14 100064443 864 764485978 571 738027395 464 952231419 518 988917211 495 748691337 977 372776677 584 968217992 405 448733857 212 668210060 887 26895181 333 109465516 816 842589609 373 172182321 421 139585343 659 698958919 120 32789978 907 590833058 699 891782626 244 27878574 421 774068208 616 257405798 336 726772285 254 902919073 446 725026780 690 888679488 666 208367949 335 216934468 261 196528650 890 59842983 107 158785666 472 662016303 882 719299849 547 954224480 698 610989642 916 846753962 689 96247133 975 651662997 722 968260794 842 480694700 179 722636354 34 772946909 219 889674232 863 519847923 330 599777854 337 92474909 822 227425270 586 530498401 207 973961410 389 384636694 797 927970597 522 130616755 925 840705543 719 440799225 193 400543814 497 458171599 571 634422598 799 694125916 6 998299942 548 23173912 319 567409140 21 894693150 877 29190901 748 198961816 262 120789911 65 210327331 870 18059414 476 135139939 22 547808762 717 565844303 790 31821415 230 431329689 919 625998136 71 833753508 604 455847231 715 116856297 836 178540278 633 848863900 471 618007274 855 230943658 36 247214415 976 384648584 568 270452788 72 820571652 753 745542263 269 37976352 475 339069661 763 962829636 141 167047618 541 767314902 123 134539728 46 274793516 253 642273534 432 579258252 132 51533106 807 4713101 720 369061923 19 618663883 502 774653263 806 20926294 847 410889108 48 611884498 470 612606229 123 94099820 883 306415251 142 175524621 60 926430222 267 113882670 730 408784246 864 347245302 288 991840699 467 904259701 661 562324835 651 930958854 60 254830502 425 502655708 878 135721619 915 506960883 589 535691108 376 495076336 6 48207232 354 69643775 75 261957714 458 124949507 747 799460857 679 381507446 555 758652594 48 598956142 521 5196895 244 906916282 151 220393989 134 923287487 549 734321856 45 195000148 339 751939365 942 325071531 427 376256980 894 286758900 224 444233712 636 613173211 269 410723252 265 300343336 359 533462499 949 369169369 237 788712770 349 801699299 95 45319823 192 477161922 490 224879431 875 430791308 403 249671269 251 646399505 479 840687186 928 488931382 237 659371580 446 482814639 707 810839299 906 456316910 9 704804879 200 292106945 729 714292905 292 869423094 586 222723085 85 838443804 83 311343526 393 428121576 35 333518883 359 752913561 984 955584281 999 169027927 109 910670498 328 584965413 788 200083432 37 305668528 912 590678686 272 526350785 223 922734704 992 935740939 701 681896264 215 643032913 185 9125220 822 702103073 178 996054693 533 21643070 602 527402196 639 368178446 433 646783214 864 808148168 888 984907024 137 615349950 630 874444355 823 436695191 654 826878485 41 312149567 207 5206918 741 706723067 921 711631301 14 427500133 785 299227727 380 301248265 18 604490531 355 176107245 856 123094600 356 281904957 540 452275265 235 864772386 250 490590566 303 59170779 452 195986493 838 902445985 758 452471507 631 151795622 856 666599400 447 600919076 6 743029371 812 696744435 608 566276019 495 628870636 740 220078553 161 383215881 868 962926155 987 960621825 291 773680328 39 843070673 101 736782781 971 101907614 673 763519587 321 516061792 777 26416844 510 682940122 480 325506852 160 385371268 316 650598120 907 299377767 325 788454182 951 391519062 879 844839604 61 417352906 94 310709142 609 429445496 27 276807980 155 830023365 699 595347239 732 521047997 991 606629381 598 708533031 406 522588220 594 515601605 275 771404621 459 359673512 378 375149070 135 971918262 271 416530929 419 599430951 20 369464758 387 745933428 986 527309937 814 984074382 783 116131858 155 289864520 246 917570648 308 794464406 981 231216775 588 745647374 222 829319631 361 793433096 873 542549460 804 328427209 91 506401668 734 702293279 536 759735366 367 135852406 771 867548465 245 289117548 922 320214110 223 90801906 746 392965586 414 491712586 687 585510805 112 50375380 455 451655751 834 829777182 65 826481632 757 961822311 879 29770669 808 4766876 360 107307527 154 876404584 664 760185782 888 387738891 479 976459961 72 553346277 853 858805538 799 183236562 630 610777728 240 623274783 803 144087260 983 155849691 667 11802790 888 945002288 224 34091961 346 37145687 950 680286645 702 857871596 745 686647370 390 563239408 943 967839410 127 669695712 24 129171728 424 471206134 59 468179263 793 796009016 449 844698177 337 721933634 950 433038244 358 930450520 395 329143678 944 586980446 452 575571699 216 699810458 770 347572700 578 410503295 370 873859028 468 808876334 171 27109000 384 946151866 413 918989920 590 103685371 800 584607249 924 288711030 472 474707372 102 432032803 862 639132013 113 379547985 48 369626533 330 436800772 804 891996993 605 144193828 603 132467632 798 549795989 569 500791955 257 626272133 54 910717326 982 31321074 986 591547577 937 518038683 919 638977551 54 445798797 439 679169026 190 104514491 981 334998551 240 214837988 709 763268992 904 141324847 606 812083500 749 755212727 378 124644829 827 116958225 223 383987637 966 707032979 773 310026281 562 531595461 242 814351213 916 983816933 541 225823905 681 563512554 619 677296803 687 91518108 30 45201797 395 241755654 589 910790496 456 675061604 674 972982971 969 511765936 781 597359081 247 233655554 289 96757876 248 679797907 413 477102211 305 651800788 224 948678937 506 994838633 456 272746671 377 594183964 338 240624266 712 606305979 401 249519935 437 62216919 368 713624816 650 218379729 966 932545887 902 336412146 550 135116603 863 895011118 925 286678695 58 700014341 761 952750275 425 713201519 148 652955728 574 476027475 717 643850203 615 255959406 29 601643872 590 403244581 447 821971476 88 505189049 972 744634652 789 62197077 544 206400599 466 451113016 77 934421436 711 267273136 646 804004161 115 271633186 895 299145888 712 158091447 152 540200973 757 538176305 940 805244123 286 492717685 168 779015724 736 279601762 898 174922703 893 278539468 790 584394011 382 355875654 2 465330036 582 239678890 64 993126708 884 999072006 336 450634767 655 960898501 245 999239278 602 919548196 878 40071250 578 588423562 611 949741484 200 559995865 973 26081011 163 674493642 206 520695956 373 745763060 0 396673335 586 518392660 189 721534733 141 327541338 734 588177578 304 645093983 703 83168622 892 999071956 539 929833354 166 341962162 16 236013023 783 471733656 541 304495277 856 590866000 407 150335991 943 159223611 226 383124463 590 416005724 45 249335200 784 148724701 259 234242347 187 330893702 15 476713289 22 129254797 303 828447326 931 592474119 49 814402325 403 414210758 812 80880370 392 373942833 570 513066498 14 505769575 789 654949513 203 334508114 476 646047930 369 87180007 849 729747493 856 883511666 333 592598983 785 728129054 438 556775784 173 365982443 397 849376258 893 649027129 923 194949851 211 988583144 739 686607025 358 132810829 198 826387456 794 560089304 943 237809672 507 390353277 644 514738466 634 933719006 970 873677496 685 583593078 286 646239101 103 442428298 19 710000604 576 706966241 671 199911452 158 13359093 605 546676736 869 101997960 53 999449965 808 863261123 123 488338633 961 472908423 362 970087193 6 849176345 603 640700470 583 333618176 139 804681713 573 25363433 770 575227720 161 92777873 849 919962377 357 546517996 25 39294484 603 102425942 656 715157604 989 749483988 701 494424539 814 946112686 194 334201947 988 190782124 651 162281728 842 155605663 733 303952163 371 41947918 304 723516930 616 497520801 813 490002661 482 643561870 254 871376640 10 132867079 786 200748132 718 615821014 425 469126906 10 836113912 585 142958702 319 137796153 583 433252496 359 675201669 445 502870225 924 551179636 55 174880983 368 70659025 845 515097071 847 720679170 434 460910774 512 908507561 632 840724811 425 221147943 403 51527220 161 632561222 331 701386173 407 775318475 943 590196137 265 46672026 274 885252590 150 832392416 289 10801491 919 291309759 892 23512946 995 231835982 403 500679643 495 528083266 309 567138845 327 781447307 34 211179806 640 463532651 652 611229507 290 483873383 560 818782362 216 705088862 2 911611937 63 922227607 58 694540376 439 860155015 663 154753106 261 46743758 211 289752870 428 313341336 383 343308839 173 342475517 609 372433270 415 581516837 815 427786670 622 123388345 277 177686083 911 587337801 785 38292643 565 146112795 859 812361444 979 286365417 844 766878688 24 71358370 943 355818975 181 498862941 743 598685716 978 382237942 560 750585297 506 908847647 380 669057558 118 409183662 477 163469602 790 902111850 10 993586986 649 774087262 928 547862272 605 175125560 184 75968378 984 606789288 20 245749783 119 173810157 83 586158380 477 115317826 179 342129505 111 117731135 328 994712417 358 862258081 995 964846815 431 411063457 904 517068098 282 590760474 157 560119926 515 330277140 7 378763542 616 966411558 836 760658780 753 40811681 845 584467393 985 440159602 964 273653834 76 143990119 70 818432408 489 217241546 232 358135534 554 797439539 949 564402358 133 416426106 657 399123994 238 218761963 516 331545488 0 736757364 996 736384606 865 955818558 283 864993488 552 368367621 5 14586214 243 11556166 635 784394443 835 952428297 566 865559152 412 78590428 934 49070060 724 798534497 383 996214524 742 98527721 854 432470742 300 932820250 291 412367670 310 828714110 236 720414528 402 840299437 847 69008327 74 465772230 174 499885460 772 432962918 532 963647983 806 242865360 197 910983565 82 100142407 624 664100248 175 513544942 654 173711630 209 968702595 195 9242757 703 524159460 58 634808670 968 387293038 320 467777637 330 131086728 960 63286715 367 870197932 312 760974591 440 261474887 197 125767349 705 364694624 394 116905508 949 799228095 850 279535753 366 239753582 654 785884552 829 37906271 625 346208127 734 4235118 237 215654781 321 924177724 734 103129702 152 612867802 404 500814867 232 716113769 908 605563129 169 793558475 988 269076256 693 814906159 615 341367822 979 379227988 384 311310545 788 441165720 113 238337072 227 363201219 124 50476468 688 972478962 259 398385447 811 289099180 800 938453763 326 313083474 945 81327136 617 341569116 336 647888858 486 744121840 247 541011674 400 224990961 811 952173822 69 956246289 47 561343501 115 640170612 62 589406537 159 589799841 55 876668583 445 400426885 724 308072102 440 730031660 765 675782885 946 454399144 443 363772465 195 693838598 743 648460815 479 361033065 416 56874274 153 16191914 673 791989505 521 185810046 114 479181198 107 493713114 871 36286740 389 244696199 851 726360846 677 677493310 462 528359137 414 578174179 302 205793912 645 31605734 387 234092021 49 149825229 754 305694767 227 34265370 223 654186662 43 610623904 81 776280838 950 94984245 707 173650328 902 7334971 557 61258119 80 133782160 0 164203893 2 369657460 905 702724080 994 723246486 197 670313172 489 302830581 194 408605713 139 921521309 787 573250855 170 74010784 786 379241527 170 511504686 535 972340406 754 724655947 151 52109362 320 654669679 82 844439687 433 427562344 791 60400951 245 424194757 858 84148842 88 138316354 543 174624328 675 250627009 2 40251037 917 390556036 92 924312534 489 158091266 531 722923985 881 407048928 956 617809827 436 856925678 59 723272488 129 852415475 378 79080268 921 646848670 651 139883322 378 937390003 569 240055653 943 465152203 649 230530376 216 503767955 652 974655840 914 409789215 936 757433968 99 465751680 482 412025044 982 467890777 156 27790275 53 831501767 256 186069763 216 826379735 143 233945239 523 835067368 226 606982821 804 665421071 172 935210101 446 161111761 47 550019867 466 564983483 314 283439854 682 979266837 384 505158080 312 843776650 20 77331052 342 233966408 758 831487667 542 456954010 629 804508102 619 286552607 887 544865119 947 903338315 372 890216425 859 686657182 686 807555007 621 2362713 439 528405249 578 883037556 648 390176405 453 855338937 186 215991124 197 439176819 705 854916538 608 631697354 927 95655776 152 210617805 284 241423777 752 302700950 3 759592600 677 672430208 426 141168373 679 927906816 237 619219608 323 926013271 559 381644976 855 608575627 432 371243325 29 747600800 62 476259981 91 205071264 603 372940818 16 549933962 39 746856018 761 903143828 907 260075358 917 869995229 526 345979148 349 198901589 187 813914626 242 11203733 852 291149763 905 809795142 18 886237955 600 385225117 937 897902436 203 185112926 564 7601753 963 233039832 494 572234328 243 597473327 202 493506783 570 688166735 640 418741469 477 639127696 980 211558774 295 27371935 732 213229785 986 944575053 1000 971220720 198 424725968 231 405347629 276 193576615 407 898049033 504 542244946 613 7849654 929 797649879 644 589140718 232 487253318 954 234964621 41 374374903 591 920454381 612 112988788 38 129684188 281 8753174 901 394100143 514 552975890 23 720477402 863 583508425 326 900367329 258 771397920 69 196504690 222 734600633 647 785989633 118 836477567 116 476614945 857 157054061 907 518874245 206 552972260 582 809531324 716 756488740 171 554419852 1 661433853 322 839279700 591 931962571 656 346467953 33 542670958 957 523431713 0 366446775 275 966692654 889 633589533 416 352637987 711 137135900 624 408534238 423 702320087 798 748687383 820 940768183 408 139019236 266 170867117 341 600927930 165 427029066 175 368362962 660 905421642 641 517026779 541 293428798 486 134072190 680 775592738 163 427696089 296 943478829 422 278336032 579 384957022 998 904166070 516 918405766 762 493544774 949 417286353 437 999191715 332 736963723 44 665919924 114 464439746 821 48916306 834 504768139 957 876701583 442 20248398 47 886656555 153 692692729 120 546742110 835 528013246 409 377622436 310 694111733 766 104555402 763 978238570 50 803290496 544 134785448 771 301838925 855 176238395 953 206719193 760 297851676 428 654958497 847 297659804 126 321481386 422 983213008 935 743788070 151 45778127 529 907527392 986 834733606 286 249029041 373 8247897 149 987279911 406 108261705 144 648755743 404 611992911 194 443935401 204 149634635 458 775398588 770 901882562 584 151211860 960 544571380 147 43576069 31 593078798 810 627736580 225 118775648 953 771771072 506 54136203 583 760622952 90 988202961 139 967693038 707 728857939 804 718110987 182 718988222 543 32770025 855 773611762 272 526089808 716 441306072 965 961185685 954 206057777 455 890826652 498 229133873 178 396849359 692 451868845 669 449738695 216 869402739 162 721426763 42 863021838 48 698805984 597 154436220 25 113744038 876 504728563 270 668438332 422 813326606 245 723174570 346 706129603 713 347953400 276 527505358 838 758812775 111 516288882 977 592279035 178 927786094 712 577251647 436 812312683 802 75858267 510 997649881 847 680288207 957 720126069 705 847629507 272 973333575 973 470162074 105 264900386 102 495068263 417 164821531 310 849917927 601 616071702 600 341857550 799 567437855 752 533334256 241 652882349 52 681757300 890 650568828 879 611720004 910 693721798 140 943201510 655 504101679 828 808497659 787 428760400 200 642352711 841 815679742 131 297687965 535 780591669 515 798391943 975 265182687 998 926737109 639 608028019 510 650216289 706 598977614 642 63046025 920 474725347 114 168967365 762 528678666 333 116902664 435 416269268 647 116041941 588 795468817 541 716816596 88 560213613 978 520025923 648 29295155 227 48812713 399 970396603 83 826157082 589 483273450 905 737608406 644 356800381 122 334892843 152 523296353 36 643692056 379 225235995 7 625799163 791 733804291 720 940514720 767 118926310 114 651596223 656 567301203 413 136220418 193 507222453 703 265939219 726 233660206 836 271812868 441 914724391 490 504978984 435 892204597 478 170140665 826 580741850 133 581585117 193 893820223 488 705404422 616 425049147 285 972616427 748 731833560 147 976794084 160 838521665 355 216658217 902 454689982 771 965472974 783 651586254 734 135523644 450 792475449 787 592042247 174 468137630 167 298915850 69 464335499 317 34374698 689 227548754 45 961424037 40 813813860 402 950247055 591 884705871 261 201579477 222 766875482 235 577610635 49 799740695 924 626372 419 239515922 833 999083318 731 336475653 267 235794606 952 104055046 352 588753471 384 100386966 62 178629283 729 969401413 679 340919952 593 524158416 276 370777345 362 223506447 225 728229097 642 36207028 462 275147016 36 303721528 598 580786698 936 758076322 1 407963159 849 721916072 658 844148175 341 272389441 912 820834292 179 229870648 513 313388207 519 71482118 940 355642518 919 877800081 838 458101977 272 837926937 528 766591832 533 833335096 59 426622823 939 845235977 673 199110734 909 250169464 506 370954161 598 469919021 814 656755992 34 148999870 572 531153269 858 253616480 133 819719514 910 249435578 835 371555788 223 594022758 24 982006815 994 648900750 538 789946760 77 119681014 540 936726882 848 402029163 53 720528032 462 385298837 355 213126665 529 711495460 175 34312165 918 419848220 995 385515371 681 384350184 514 652819057 248 638487369 29 427179826 1 414866405 818 321684088 894 558137000 381 669491562 498 993536726 107 556398091 724 610153338 842 913723263 86 802470478 94 498811852 318 21792098 819 260869776 941 827040561 50 933188873 619 749919665 272 393538771 875 364088532 253 156699107 816 118177024 662 22783463 188 45220503 6 805708730 431 118521593 479 601878641 291 460538783 959 746071937 761 363121374 494 598326091 503 854134360 308 879963338 194 356226699 979 859364554 114 943260345 713 336000628 431 389807218 263 215033652 201 525233915 181 673578679 900 126146014 846 24259020 459 975876742 407 171103679 455 188096566 336 763163658 505 999476869 921 730986693 127 338328411 669 726807989 188 614559839 737 786440982 591 579775339 157 617490982 724 210455101 899 337239287 305 219018901 499 57844608 409 429998461 18 972257138 702 508930904 177 809945901 122 912228139 968 591103118 172 927890494 375 521447526 851 727825118 851 651204080 125 422319885 701 732367989 736 573248482 891 693888037 483 835496119 358 459009944 307 830289327 833 44729322 464 433955439 797 207982178 597 782803558 869 797814288 435 702586477 803 657948503 702 226825038 133 354454364 591 873392156 418 363356585 264 930279802 986 413160810 477 302292580 770 204567421 227 469233204 578 545090717 229 499755991 358 317656633 515 427660467 118 906507624 327 240856432 890 142164027 267 591928786 902 171186482 597 223827174 502 495419738 924 821972561 317 316626920 755 527871313 495 370224381 479 405982726 211 468547532 567 508623933 891 448409669 36 464936508 354 148229600 88 561976353 845 459357744 873 320564054 211 770508068 308 546326670 626 441910078 477 415235473 606 56282189 69 936009214 289 803932891 603 122754819 639 584481978 87 48053775 850 522471427 543 571319461 952 356882249 631 190180564 16 866797779 712 844840119 32 463937750 479 113598114 77 153664599 183 581064639 686 110995417 769 639038168 7 570019134 32 107549997 985 620025086 973 237825601 142 139651845 196 501348573 744 320150587 755 766568759 859 662289892 783 985416147 780 508807373 643 134447335 650 569414838 278 175888966 179 457589128 996 739945750 303 683100029 110 661535295 446 782661253 625 730513054 132 454522362 984 873512540 856 31194498 513 445571037 884 511557985 264 547243559 951 60260782 283 96225205 229 435278294 317 206687365 130 200242447 246 583289293 12 428707213 864 853281136 869 531664626 908 805641282 114 976622008 432 96938767 178 518196842 583 588436284 490 555069172 461 107952770 40 304462719 171 746533701 645 188492301 182 68276106 331 666506749 586 95875356 28 333127273 364 308131915 537 827724814 81 148834962 862 617240537 348 157147760 811 996149570 507 410706709 620 12344492 702 926476178 510 313344196 964 657623752 734 606338880 920 847132499 416 720883953 478 298691361 210 148716565 539 558132458 52 711350353 339 758671176 639 735445523 881 803872501 500 968533864 743 921003991 277 213076029 103 509492876 219 769377649 892 321478979 263 669767355 993 257143982 561 378143220 29 895887814 26 541391853 961 891049080 485 149853342 282 626145533 46 141176468 102 899451011 8 801157612 334 468772992 93 228293583 972 201597827 872 893440452 550 211008961 812 286260386 817 936261095 195 918301085 397 328514293 640 103107465 730 807287634 384 831854335 724 67086103 273 186573068 544 137857927 489 934815165 697 395271104 578 836733037 71 584358801 776 62889105 3 158542707 397 320775991 206 40425313 758 170229288 497 730977419 959 670355136 10 2791893 955 224950111 327 175083657 38 502877663 597 717260849 461 397735902 392 786430726 937 231083249 18 630176122 292 315138388 517 39242676 675 383884825 981 487004861 285 538934536 773 941831665 496 571073777 380 145895954 979 976039004 811 167249039 635 6464232 422 853148684 958 861766487 890 636941356 885 168366505 124 273467001 705 226470808 557 209521097 100 264830625 559 558455955 80 746828617 470 336040300 53 814681750 279 610776370 973 394602624 883 380442222 67 103115010 158 740671230 218 475077342 354 435669147 322 330624584 293 82142155 659 506326770 535 515098133 171 221735657 576 404625139 448 897783020 482 947251556 248 659185365 337 870631868 855 837423662 391 293781566 411 907425249 850 264944906 986 358158574 234 288362213 503 585781904 390 983037751 406 928389544 386 429150447 10 338359906 974 235130171 382 185865145 16 760432314 918 163362457 394 140465265 326 391247513 593 746819780 9 320847542 986 642017194 581 515803250 665 179248232 514 7304486 326 459027141 979 429292634 480 757921873 455 776802504 759 421422375 195 538245161 789 752391203 800 177888835 762 991483473 464 126206136 62 922950633 597 696936636 504 545653623 185 506033953 630 985584004 498 752026189 887 442659153 366 812528867 483 436003308 759 783689058 157 277249700 753 493239908 595 335768564 33 569975737 436 791174105 210 586065446 267 932657049 223 983264567 307 308850133 981 416777147 291 435870571 734 302113153 216 13951029 827 731391496 868 379038170 573 417450881 960 362476714 823 657210946 400 194546667 740 239399222 900 308853038 245 576974341 11 865131786 956 144403999 196 271853906 591 827321568 204 172263160 364 534952082 692 984547285 925 182742784 178 213108541 575 345480276 196 575195007 928 348178409 859 869299625 244 671683574 694 398200607 568 281127589 679 525975133 594 564533833 294 275612408 570 793409862 853 34208759 700 944439008 280 26535642 520 379486310 766 428967522 57 70876989 513 257705229 756 613905325 182 802512907 261 226810310 167 546540298 873 656156849 223 85246862 279 827556783 958 298430780 770 402678698 391 956128263 749 549990627 448 665399971 383 243433364 19 632022687 824 224637911 858 633104509 405 492224852 530 920884279 301 375606067 119 514685159 315 959154521 267 806234472 282 598350474 588 497492806 325 925427022 16 345062721 317 832650142 974 731168682 806 458884295 290 633997970 557 952679556 755 617280330 443 523278464 254 433319816 548 490327958 631 725666747 698 432140214 734 646717127 889 97561284 270 216027361 597 290870748 660 228302923 307 15723935 48 133603018 869 917317127 898 842400057 861 782902313 757 483856980 881 85254823 140 103965433 226 801210078 350 494455092 266 834229994 248 66985550 135 898541431 887 441482342 265 653894242 571 135456193 200 361431016 559 376236975 198 828316333 898 531272673 378 157684114 761 679067654 110 478574776 924 996732151 780 341847948 698 359438376 454 606704911 150 137838825 974 738719144 9 281198681 961 287721380 556 556780599 401 559558919 254 713235809 123 155658209 708 426366332 882 529941790 515 554961508 99 964960958 339 150371307 43 290984136 197 758522707 82 434448623 196 256600172 484 792614527 402 957558809 189 985163611 814 7144222 187 317090572 101 389798708 560 976423249 519 18570933 882 68240442 519 654022408 998 664746750 703 826639020 131 558212601 625 326237202 581 146670449 492 233451405 920 891598767 940 728945875 147 98879801 496 689566013 234 342564514 529 248821839 300 906795472 553 193399968 378 740565047 263 282987790 717 753808192 473 548932228 100 491343360 168 725443107 230 319405060 90 45421396 156 782322468 434 247758832 916 389422445 242 707058968 538 937393757 870 71756870 154 47051350 406 940440633 27 337160490 558 412304201 575 792408135 425 471562713 892 428590214 268 558345397 536 472525123 733 37343283 789 802883681 486 847871467 959 79164081 980 76402921 594 156895811 626 828045744 945 314837507 253 212356614 74 145913051 96 26139522 968 501505773 300 46078357 102 298919201 72 207792451 911 297986379 863 820579746 504 297915480 519 419476462 106 56262118 744 843261299 227 742197149 980 552593348 203 964406628 363 466623598 664 999245638 710 41727705 807 453167762 505 361170137 210 624999759 487 27702187 686 34166761 127 896718153 471 369193671 723 626911639 564 558516649 483 976973398 883 629191106 56 996585098 368 573812630 413 274219366 334 729629747 862 72218895 542 200091496 644 932029128 669 648128461 771 882453641 380 342752880 985 980339641 640 215337899 986 447891422 402 952509207 964 708927646 983 934178798 126 366479036 528 613203590 454 810039755 615 368437788 497 415847375 435 42022558 188 838116304 181 659977271 529 245165507 6 330601400 936 690656169 885 923010988 215 317797928 802 904289106 183 902750464 925 461388364 471 47463123 927 233992805 265 810167754 315 890881567 447 715730543 19 431194436 192 777596091 538 216180364 74 274935460 576 639333496 1 373598407 785 371056212 592 8397537 463 916895204 260 610746420 44 223322808 52 717190927 120 841325614 432 613776366 975 372237406 149 836314375 60 798024559 625 766168757 136 826909795 320 740290475 827 487886200 472 561024176 787 586980456 342 36310036 983 497377465 432 755262541 803 307443350 896 972742782 412 475060654 219 904979478 327 120730276 40 619496630 137 547946023 195 953200158 358 594679909 409 758569242 931 436012070 915 798704496 8 137935789 437 847239075 219 616700743 406 263159181 832 395594143 22 844586809 152 681663026 511 831056249 823 410655961 923 551027991 268 966874515 456 955661777 639 438657872 899 762848732 108 510880126 498 384940019 848 240803886 78 306269250 768 743795314 471 197401867 707 421508917 50 190235938 338 341753053 484 422707474 111 610306054 282 589319869 2 910864206 292 875492059 521 13845883 349 727561475 537 2962867 277 537605352 470 674214386 784 527449460 195 445508674 530 912569084 887 905864011 949 774868435 707 96515574 423 665554001 525 193733302 228 42132160 460 29209554 224 54423573 258 313124681 400 817823757 710 402421612 868 856726484 613 286805174 455 763084458 777 744566029 756 528049573 933 962040617 348 130559873 93 312604773 385 971791028 504 474563344 362 636355819 238 302112421 548 597293877 367 138388652 743 975636003 532 37905086 598 777878076 757 310776757 43 45341220 533 824676380 758 794477463 351 231690853 592 528569359 582 156091842 619 610836810 647 48282755 47 970039347 365 490533019 127 752124392 321 13127325 650 394514461 480 805397749 697 137302081 305 553448477 837 514063932 577 392868855 471 707584247 160 657574303 836 17183124 308 41643150 562 667934083 1000 778649742 91 653517186 280 996018695 307 786894145 197 648118680 74 179885841 901 437872162 817 208596168 554 169970411 692 911671317 417 140729132 10 711811517 661 5843437 602 980331058 192 327954441 39 376612758 615 770440297 529 90896472 387 854085038 690 48111040 821 289238104 661 779144137 312 502312043 994 651748482 937 435830143 812 696937508 574 982524637 50 820639121 173 164453063 449 255398049 396 6212115 908 478564987 415 589067407 435 82156527 33 414510411 415 329501482 883 625583054 627 914161623 487 502417614 55 993001889 426 985397141 3 433062332 161 135099531 293 925296275 617 26553803 158 623515279 698 119820813 870 200642652 368 714388092 63 527792508 843 334881693 232 769367009 855 407072329 481 137224678 55 14360176 231 264403118 212 710676582 523 23797961 554 936377415 482 186777757 391 615158659 239 960956809 939 135075073 660 163505499 186 630200852 364 760685991 179 934946142 921 893532041 172 761450941 986 921704535 154 509248740 898 374636187 389 825128832 744 399111507 888 467368512 157 871797210 451 208256527 148 259801185 742 989433058 102 326419642 247 912531502 938 774673638 975 345465415 999 1349505 317 825891762 717 66307007 881 75578431 305 630225087 730 961277764 65 596736786 14 531161734 381 330246636 919 435175199 899 22288414 179 797785123 232 609303745 477 255670356 482 413428114 700 103150441 626 886558925 644 717813912 991 334639486 721 654645494 974 113936403 466 746773105 125 514918019 387 635488930 204 538021695 999 245339389 934 475687732 849 297873963 26 505867201 8 914598850 457 160223335 535 224774570 519 488788991 210 115656492 883 258514534 770 173115145 856 859612664 892 711303502 543 495201 119 265087482 369 695149462 726 216606460 325 136119195 242 472989818 508 19365754 651 816163553 875 207480249 384 733892796 861 697385004 985 12055655 771 661722846 712 746536946 361 353129788 746 964275068 311 999742540 638 693035004 275 950262315 47 7561735 769 433864671 523 784679071 759 279160042 453 138268558 56 548802981 172 108407919 862 697569222 716 135557981 637 778940953 411 149801089 159 976296751 41 485964581 674 343307487 688 168465297 643 352475858 813 893689796 658 820936227 840 956741766 448 145904658 506 731093058 808 519093496 404 584458722 801 441787819 52 516422190 67 290904547 989 175227591 77 621124346 876 477517478 793 307014313 670 837855548 983 421519115 469 252905870 645 591459142 331 439405522 127 86867976 212 911028464 655 910491898 974 38830800 273 400518145 326 146836944 675 766431601 612 546156339 94 625988574 171 864799851 199 538038697 902 829151453 274 636280826 554 696354050 105 375817037 941 699358141 112 510568484 155 192786411 874 98812454 638 966787149 12 894539746 773 119952025 617 966654099 541 845974877 51 835502043 644 90934970 250 939176637 772 970598873 171 658652656 542 292838854 120 895449996 45 154845433 382 697642102 596 215886828 241 743107833 51 401011090 407 588374819 48 975891229 64 393322986 781 24584584 121 543249744 788 812578902 146 275689208 250 407311027 436 796731562 963 137531530 659 527548246 665 390618583 4 673331150 340 458046501 820 114352929 662 271123367 545 10793867 132 37622157 523 3199859 687 354131308 480 918503548 743 223345060 710 305354176 81 67549851 12 436883458 285 903706487 711 247618028 264 523192580 645 78876033 271 189462576 467 752503858 375 490970563 741 47925293 479 990950645 197 485648533 144 583791461 173 567684470 97 96676871 84 642136149 883 827812372 160 805180658 328 35830486 473 883961312 139 797024778 85 996125074 884 925345749 91 970034970 759 834111938 649 64457060 989 505206163 884 232188120 794 361374440 965 687308071 871 58488894 277 428137282 15 936648959 22 407313411 308 695848489 469 178891684 418 212673882 384 865558368 922 265299590 439 553225755 741 744538044 796 660708445 942 672836571 353 937336646 487 941800794 615 277865629 168 788693628 286 3553203 964 809985327 775 863440260 953 614863236 456 673817516 43 453771245 202 984511315 177 63815166 703 490710896 270 700139573 726 177752778 859 141785537 250 875445008 338 466383 737 398363340 94 277362168 508 505444797 354 551610947 509 670008891 322 755041302 99 165493671 89 45100761 584 409954769 178 742915734 297 929856358 489 390463391 269 553374128 254 621264898 522 849175143 946 428226038 217 244512113 131 79804972 236 649409761 79 330079136 106 822446378 160 416252196 852 298915011 321 694568340 229 737790996 436 300833011 114 907085508 538 399462357 959 656931025 517 251381727 116 381587229 805 396038663 306 89029292 50 419744006 540 609365590 458 38833729 171 87401720 561 742972444 657 331478291 282 281991207 557 426735858 337 633254649 23 87705389 749 472810710 47 179178885 44 948117443 494 134127931 968 812719686 884 408517275 786 176916342 250 849513511 225 373669281 168 59379165 858 169244738 586 44672082 846 31404382 411 621266604 895 638052730 13 834465082 570 801191091 546 395213982 407 510403501 224 991714510 972 127279768 928 299136330 635 378110567 176 462183266 24 33200667 274 116708157 744 43727673 424 263033316 268 681182148 380 141637636 793 495308904 465 279022026 752 840431684 710 177584767 876 442418011 320 845908503 174 571551243 723 578119685 947 718468386 30 607006172 447 988148661 141 629033695 42 32351927 66 185030921 525 111248348 948 206806092 593 719497727 346 377832784 417 520577989 493 876308553 223 68525814 482 661722632 235 825173732 283 367331980 250 49442895 75 587264558 776 872588335 978 179827746 400 195336041 44 773140765 182 820536302 552 405035163 42 576055041 974 920087033 272 950515206 581 672481277 99 893496022 261 527019944 442 27784005 309 568289546 528 879776760 529 190167932 482 173582114 693 979109451 920 73664647 790 733068275 516 273046372 524 335254259 691 983856721 391 941427333 89 805115001 118 69787 37 363166812 959 32764755 430 493568816 339 13981708 28 876092530 200 188445028 452 873222143 164 959642912 853 970758846 659 67567037 638 408613365 371 127633730 852 60105209 463 740956204 989 812506069 648 844177931 254 528852379 51 883749144 245 816227558 791 535564605 398 669931279 183 267044857 70 571265132 977 428569734 558 978163908 136 633981970 172 448246851 221 323501092 840 207140314 823 548011827 123 677152444 801 436252605 273 139927544 570 120365181 572 624001249 625 381950439 898 105360755 145 837162341 631 859871489 320 497044766 289 991196797 404 987450147 236 128910740 54 606786819 917 400269682 491 256657785 913 858711409 327 627243097 229 214801195 53 739731719 250 811103779 665 106669420 276 495773018 281 179448335 766 27568075 364 391096695 491 193940028 548 779853087 610 690293484 138 960802389 289 645125532 816 45817440 328 894542730 874 259379223 12 212161024 823 320832037 217 294557186 209 982407335 128 897729904 114 107529819 693 665349189 98 565441086 641 264094436 232 377321302 424 823582821 9 477843555 568 32622242 301 595231859 600 170759968 148 684551216 630 858455021 246 817877468 831 44022662 655 414941504 974 828692828 155 595500893 967 450789444 217 621035651 351 80433564 648 321702403 175 293291530 579 897238863 61 690957952 853 565652385 907 422961112 784 576842753 469 271204669 256 821849315 955 315851121 494 912944948 494 272805445 767 234387791 65 781921403 549 316807137 147 391123265 817 374598347 187 104627942 740 393285380 553 179993634 695 877412943 409 949341902 591 443546377 725 620588237 10 707539834 541 725050798 89 119563992 324 180125208 876 420378430 290 252586982 666 572805275 247 895729946 940 232745497 426 812597222 153 587201240 508 606331856 593 352829495 744 364664211 678 857617581 189 331669913 704 426590835 424 948475250 551 201483344 462 739928328 883 843576003 54 751352613 761 501354084 834 385313717 909 233382979 65 378717870 689 705388064 953 11988568 821 219949077 457 926251932 338 511501109 145 843372636 373 243670738 252 428175498 554 45697317 124 108421800 109 599849617 763 789343048 719 457677088 426 356534911 490 192375433 203 331109147 370 976632888 333 725330402 218 594786250 377 840461078 962 1835763 667 19375741 21 12697639 342 762514790 814 44185466 748 870591049 805 514713115 694 476591798 292 687692524 652 358273896 682 307839680 370 659271454 323 339712518 890 194466708 993 419301217 250 315772376 887 625402327 64 962047870 136 998543081 184 10172984 165 904473198 262 50785100 377 195991226 193 732603408 378 483689389 608 667925584 168 701528905 951 497567697 514 397369216 773 222610116 747 436907954 32 532478420 177 391918457 273 19882614 661 71310571 731 167972521 269 52348956 868 174111356 288 829120156 967 859726982 409 748261021 996 956409118 365 259757086 200 702346614 340 411193986 962 223733371 63 995204243 296 112833441 204 139203466 40 195071486 758 506565473 837 483654834 499 437693477 980 166427224 42 201102557 521 720774701 538 183390386 399 556437875 499 895626224 859 784319935 531 864680004 713 256054448 33 230499160 285 281453699 836 233946800 959 467622062 14 149294065 770 108482184 527 974359867 699 866049808 557 820922631 469 179367903 876 448979867 207 14249879 596 244058545 612 549113037 732 936939583 741 22383139 440 663525172 267 248420327 958 696064896 546 275185576 21 79381624 321 789643629 852 772239498 811 153100074 963 81145630 627 952435840 782 861985411 556 38265530 357 971134950 728 313601979 871 341255195 192 84588181 621 94153596 867 776495425 495 665510062 39 974814817 901 148986589 862 216630560 389 342454363 775 706815103 87 828308752 169 794820954 557 432746119 377 247121222 782 784289542 658 676701258 454 674997053 790 110766946 294 475181748 135 152541718 887 697346659 262 331827347 86 936544358 715 344197549 15 755945813 795 407046637 249 892579410 268 913485575 369 99660383 59 61131139 733 985803345 607 143746878 176 329040840 730 652863897 510 777987108 855 551261195 335 165050792 821 560675315 931 81620567 233 158108600 637 371909754 301 20039123 423 56768196 46 816198226 725 762834952 889 172578189 154 675279193 797 751997108 591 714229966 14 509797908 819 15269206 461 816213209 732 461535301 994 363279517 440 534758408 155 954845055 377 414892385 564 45474873 382 529896054 943 409854966 229 332160582 58 582571353 645 186265565 294 194508142 99 514438544 979 634046282 287 405789758 709 248654209 103 543248137 285 142043400 165 217927348 857 826847834 67 429246852 592 173442069 376 951145027 682 533790774 963 602426552 206 20276389 923 943936835 321 27554622 252 843482871 284 211665157 659 400295576 694 826022578 602 744124942 796 499639772 137 495203229 894 711142320 392 643016328 935 529293152 310 623212409 638 107375857 456 549148200 682 42144306 992 867998795 951 432807559 48 181993424 580 955981455 12 478316979 33 371414873 863 775592863 364 910518352 13 521322474 889 403531871 940 442239436 573 401046824 363 906427082 432 197845405 796 524549918 514 483208994 380 209685227 411 36222644 753 80523821 392 600002893 295 543207315 219 283229755 466 921207501 438 429791552 28 215831590 299 359550154 468 388059845 892 403177339 256 190016671 732 778033763 874 641398999 101 250102480 112 199405247 231 221075794 545 895906725 548 39319925 102 578104114 164 940129936 666 54910111 830 494870079 298 690761668 974 134228283 491 166923869 52 768463031 619 269132778 968 253119841 191 856301668 319 924088042 425 429415988 215 334889126 238 404607361 110 958343983 274 56572366 106 533603289 534 839265783 137 887303444 689 495994389 589 298925551 273 70775684 66 39622676 466 92475461 514 711976204 572 604476369 571 163362027 870 652536059 616 856903700 416 948070845 185 391510238 639 152222325 317 425698408 993 254428323 992 105639451 878 644639295 844 715689268 915 454658987 380 476320423 580 436987278 146 245359687 731 919365902 952 163579161 857 721299664 350 902998769 125 721567978 247 625227845 501 475561327 779 433726976 289 637844285 836 515285797 787 937992029 102 267714732 678 280080326 559 515934090 560 244783569 568 514578671 889 142888623 788 671496026 110 554522100 623 290089861 978 293824966 46 46624232 298 54367671 10 638064178 661 326929624 249 145000929 401 515308324 83 548877571 349 193499917 655 341642544 677 474683473 992 6158656 580 981252398 22 727595589 736 359691095 376 403445954 131 141680329 662 565390181 50 878344429 554 662316191 308 19803059 655 370508218 739 129322895 691 919292250 862 923970787 757 404721622 301 783538556 315 884680919 418 768510666 206 931685672 492 423517028 356 753981190 516 350648290 6 382799453 175 44685884 590 950490941 910 568411384 750 175563496 790 728430599 775 107553031 519 976474441 668 687656286 126 763927005 183 818934051 771 812990968 690 501802250 486 478486606 21 127010428 395 498576263 833 866568185 414 468460291 648 29741726 983 231661674 193 108748561 299 650230466 145 667634338 158 230367949 969 117871826 604 699144910 43 13734187 855 43202184 65 418477885 912 247015600 546 941499569 872 779847875 557 196884030 369 628459172 813 873106615 574 639065182 254 858312777 781 188396181 384 340004764 509 544079159 397 103151853 307 226848693 919 29280247 198 360777584 399 525068068 170 620955668 987 535288915 866 842722904 988 456807700 777 604136309 100 114999836 825 440699243 986 297775242 224 445984493 222 141584896 918 764548644 677 85650313 366 932656392 836 288431579 857 868706417 105 455355165 964 976831107 737 392286974 350 594186912 466 627589856 964 424828224 163 913502326 208 178580911 746 673956400 909 423056053 716 322000056 660 26194650 859 192837288 378 633434584 240 842107895 673 981373118 816 685902959 310 455483049 551 389725293 636 65156118 891 611587982 193 133570754 39 396919347 509 776763429 854 32396989 753 263350837 782 684079564 673 823600075 34 743415883 6 996318951 733 336169070 491 19232084 327 831942178 910 963827505 20 829023543 464 234496898 552 929896406 931 904493603 459 691305317 746 947328369 668 491686390 77 973618050 834 429542191 699 328438526 350 669496415 50 62162669 20 611059339 985 899213267 241 505899702 732 43048000 819 39651560 883 79857862 926 703251923 28 826538953 109 70443725 918 435472635 363 650734544 590 725737698 269 592887586 761 4904256 446 505904319 287 221799005 581 495234643 318 890641832 94 230543313 950 865520482 698 361613439 287 600872286 127 654840091 60 379153690 413 512490779 836 867755934 691 168772874 505 723768695 389 786206194 526 791071444 962 843897364 36 159348532 893 446148058 528 616072459 615 107616798 513 564169239 70 22780446 400 777103961 693 110813960 166 852205557 692 624214755 488 98728546 955 453390674 316 665494226 222 282303878 242 258286001 272 996953882 160 741167173 554 233240267 809 171926856 806 311575394 567 160185739 45 314362688 501 457551503 209 503283159 404 404264207 502 174180883 503 784793830 580 985822710 339 932324826 790 883235761 574 601274381 780 236943976 421 438272691 651 217658525 58 781665045 451 682791108 623 924658361 76 399639823 641 908761380 177 362087499 956 307800815 287 452937082 825 701989144 682 60665640 71 424997707 168 852582222 587 321594190 541 835233751 517 445140727 391 131658736 40 415634743 251 346015961 363 178437411 90 490027447 882 40763269 148 92735611 993 840656255 829 501861436 512 305610907 558 785019477 274 211276761 370 719954087 213 388319803 949 584464348 279 738310844 905 276739174 713 752106981 220 195216034 573 805570682 960 950269700 105 665537550 81 771474867 138 113033907 923 746093883 430 536821382 916 12726287 361 154605548 369 981177715 732 651451644 843 807578453 305 42488074 941 909625180 39 871170319 86 520836755 345 886643621 317 73549891 616 720248789 369 742090920 63 841402296 968 19520096 802 491384507 867 964872985 422 246476630 407 481081505 165 188498891 478 239846797 983 848526472 228 318083084 135 116081378 877 83582327 425 490728777 498 693541035 602 628605675 890 339570115 620 20072896 745 73918135 646 628684555 993 41515222 464 956520097 758 632701433 585 195623229 451 226557511 779 788530787 558 376059795 349 78344254 425 774285759 548 411501682 905 737183763 106 265145957 579 112774265 163 859374971 445 113948379 266 377532542 83 82804758 460 522506181 332 272406170 963 803618618 158 234501757 4 171868133 847 659408594 58 97940327 434 762192786 18 821596098 548 411472863 178 877130047 196 449382090 429 796786238 152 116593556 455 677045697 844 31818703 461 486662508 168 418206910 302 904108857 181 231109168 134 842946365 630 71570749 704 876238052 925 755668999 340 271139184 497 579507699 68 983415007 77 900843395 490 727654588 13 795286939 280 959812008 829 677466061 473 771603276 884 169187884 400 605110164 957 450523701 680 805349077 42 537030664 947 185110482 792 380822828 533 81384374 21 310885533 466 887287845 604 685406568 318 161484030 555 657026992 383 48718889 912 235888355 274 313690828 821 482522792 758 387931875 752 822017077 757 54362075 168 616398184 247 864801488 490 93528557 543 576627593 325 994480614 845 652457745 861 523375223 423 131211751 0 327482415 872 109413260 441 661064065 913 28400330 85 63297199 339 724330279 29 944715262 118 428702347 140 326666557 121 982176269 454 914303383 846 984923371 865 561846483 139 790626876 281 428026023 231 914060482 627 134948976 347 575114819 823 983231817 245 109620087 990 285315683 115 737723572 321 530469295 608 595231129 830 500179122 710 374642348 958 257220845 536 361668189 622 359505506 794 50232635 880 860870971 579 372968065 832 447581622 385 503074639 622 160893862 816 118111655 869 683814091 1000 798767610 477 9220766 683 43795933 109 114694121 391 627410429 946 910515348 570 992423677 31 285559232 452 651593845 760 432331332 908 906579234 121 108165183 942 946965472 751 479067470 397 604739034 654 108002952 647 214604298 60 454164855 399 127297683 101 585560841 341 694986735 280 231246513 676 883405918 122 975568612 64 482871782 213 326650448 2 373066698 877 895444039 120 319522454 53 47560519 180 598569046 867 854996899 779 36244042 700 815505170 816 98000148 234 524911248 19 940277349 238 500211695 972 656290170 745 474929182 359 672251852 953 725269419 893 117952074 248 385875344 229 80951966 359 699392668 562 182544776 942 163960900 712 37074600 458 695077441 683 130602942 454 655398769 367 131389339 610 295814902 129 820003808 676 60123405 353 151625890 135 191993641 827 27248774 884 491769488 32 539576154 180 908640887 812 849641879 92 618343872 71 228026682 954 315002645 413 10021769 250 66857750 113 124501729 206 298103612 11 59525613 45 171929494 802 290675930 619 651143689 40 420738513 775 140410110 966 1986361 858 315144642 307 278809999 749 227655876 879 867861623 908 803446318 970 483937256 379 353956954 502 999153471 968 551863494 515 968304944 674 844665525 252 268501401 583 623924392 72 628234917 721 489818743 458 788905858 63 79054708 430 757160833 517 499475257 51 224908323 630 359472365 224 219158314 179 695742309 86 411703591 679 49659441 1000 251250668 222 324514397 986 905733870 538 27850071 922 234715028 344 793120585 767 503967733 869 54973897 655 269357096 958 218884394 712 481360738 646 795536998 677 992704811 666 604679610 342 479530449 815 567487479 222 576488330 920 378852483 24 622843709 343 832514900 30 497619261 975 39027984 659 903231730 155 615348333 798 334389147 908 113982276 112 28507021 563 483286406 176 910997428 84 846565953 162 928922633 692 829319217 803 546542245 607 119794111 121 703953252 443 466858702 676 769908190 983 730478388 967 276397540 255 52666536 219 926744237 910 102683447 652 685123723 625 466948645 3 971431309 990 350051437 712 139592646 297 318077383 176 940625841 769 285161503 180 333038575 493 732750418 643 169585528 931 279738642 791 25631629 187 852888466 842 897670566 344 713268532 428 640519324 381 722305226 719 192764583 885 103353295 663 330441397 254 972644130 806 676110654 422 203903186 246 722928391 979 292958196 973 784200519 156 128071681 621 760231776 513 847968839 495 91184476 838 556262219 638 665261093 142 645166687 541 686612906 312 443316626 156 257645156 350 281401493 460 159035823 8 948033510 157 892524640 419 209596990 899 357635262 899 306736882 599 371380439 863 859094730 77 161591112 792 420387793 152 164943230 640 732409807 780 527222671 99 489674651 928 673188055 401 795924973 833 345722971 240 781223433 989 278131430 384 139033664 741 74512522 316 798123876 921 692671316 96 325927458 564 996682661 81 150335789 884 557083246 97 395753622 245 418266602 588 51421672 940 233077718 661 345272543 517 51807019 384 816004281 383 605184727 523 339131735 801 736636677 592 21876706 478 47253796 166 201647965 194 68901780 63 408873070 248 180677338 777 483954420 812 684189953 383 374901213 169 69808820 812 774058542 27 409568158 325 515034062 84 588801514 305 527821643 486 285642141 150 896750905 161 299147981 410 486235719 830 282641781 642 782108814 127 263462053 63 710688763 92 10508466 492 349748707 615 525519708 337 277710516 592 960468947 476 793169901 957 898646823 532 83738885 206 890409893 412 525997876 313 39917976 885 991438642 188 870380925 512 470358168 137 752159225 163 318091379 816 111310865 598 15318552 465 893037802 215 199098160 304 209977687 80 915125126 723 368064377 16 625919217 556 65377068 956 820102675 81 114565616 12 514520492 860 73700243 89 235530212 46 715425963 298 666449098 612 773871630 834 853468359 318 310193498 777 949288814 326 3458266 665 539955946 346 470405199 705 728771523 852 513705473 160 573937765 925 265580881 333 171610905 698 373810366 874 581317462 482 499825483 168 71851944 380 746100057 301 960692882 227 20580148 368 204854083 887 859275395 563 281333891 59 704758475 13 61820491 646 562439183 402 959110482 783 272569259 756 916957350 883 378477335 918 943441176 64 278085931 193 884327995 638 748476376 471 728854001 154 878820388 457 264707786 214 485379778 50 450484744 981 231878143 441 42659069 822 72942173 236 907557039 688 756623503 78 335312006 452 14251994 175 443791710 285 256855655 279 95670119 659 742648166 3 277244111 828 324344073 958 11463872 540 14900235 262 97945164 443 146227803 88 412097467 931 538291339 99 845316551 14 412213920 271 871839343 706 284319350 983 206829243 881 411644364 65 672806949 573 342004224 55 956757429 13 143576735 710 573923045 496 201974462 925 66017093 606 212861016 547 460713319 666 568428809 479 133979006 769 191596689 277 222673773 145 773256548 706 350199698 794 748630310 200 702746209 700 234343984 461 480329278 428 921485376 902 870212723 523 853367010 258 27077518 458 318673619 994 340963593 676 670829903 952 980788438 950 455438095 68 620415455 182 565435658 742 334850780 214 748928746 553 55920532 81 121370036 646 611093723 865 984916001 240 802947036 733 509420678 805 144505666 345 752546292 270 971431983 286 638757713 264 222591438 646 756252404 324 897438793 376 289007941 862 148278408 841 319556084 908 277225096 851 181350705 652 570446355 183 921993014 719 861835413 770 363296864 573 389566291 722 167324878 987 950389331 347 157930113 474 699070842 775 695222905 989 707058666 276 30359030 667 982942573 763 710274157 459 7652227 493 699670233 274 760828109 886 177212640 798 641357002 36 902363586 693 745863663 586 553803563 306 387152346 992 983238838 598 147408358 114 709262200 709 33973178 302 199354700 563 786146803 852 429096588 610 120719330 314 142623431 309 136509355 358 16153704 400 321955381 379 549891706 770 938614471 705 524593949 397 16788462 163 330890170 340 293997177 485 458742915 766 454293289 910 279614274 153 227440359 969 572255258 215 10457201 73 612659377 949 468677499 263 677765245 302 683897115 849 627578485 643 87906019 757 639444987 900 160136992 240 830397289 887 216729302 625 163695770 44 650429661 212 866770847 548 194345674 482 491774095 574 306401439 377 238074562 195 451257054 359 747973496 154 637866580 806 597139491 296 598965164 825 893411800 310 464969594 19 785410892 948 720484331 952 279622764 523 944908504 937 417683426 4 948060361 835 467572110 417 675654657 75 226032174 487 728030163 714 806033755 655 412537011 510 597196613 108 884555513 174 820563398 338 750987887 316 811892860 763 393603435 90 75672145 940 920878289 741 667534441 609 535005849 194 492623823 396 661266996 29 96553847 228 943788809 40 324923516 686 383043733 83 822842500 969 746288355 514 268740975 524 692195965 698 279432256 904 279677510 907 259389849 735 747235737 470 559500415 524 439728065 478 163330138 437 462641999 83 390935598 396 645145726 406 904908800 25 487095417 761 558469976 348 208641962 196 314945692 226 104788460 942 868128935 176 991175998 577 988914316 768 910110905 694 419111109 851 438959435 695 49415316 59 206100059 209 435120105 420 367933745 61 626663244 90 139822226 591 98165009 909 145535746 710 852198698 348 735774182 996 385972325 61 57432889 807 741232119 398 138446533 938 210141937 162 791988344 232 556973853 854 256634166 244 850650419 575 779774209 813 409302367 679 965922345 16 894983459 356 491559527 380 589743556 897 514752521 741 420080821 959 101357220 378 267022406 305 389941635 355 834737551 989 323121491 913 173628924 723 656438023 735 662788773 638 59658581 908 489075742 864 641724763 101 914993121 745 518293510 428 225405113 458 668675495 442 26328512 936 418806223 958 499082217 37 453065459 504 601035529 446 123838687 653 210275535 989 634664846 60 849933112 979 365956469 530 63244330 416 856573071 353 696724979 966 912396733 371 888953114 163 717444394 413 727764415 981 27762782 948 128307313 664 443729922 241 136923518 434 377892462 172 903324978 423 24782135 232 966535974 247 242573112 457 280215373 379 805365287 201 845496826 661 297188556 891 319090009 663 6104255 793 242243506 762 256790917 872 310118540 655 330092341 819 605938006 499 347578550 582 481693195 109 925702932 807 453755927 871 814314865 745 394429235 992 385307144 955 699983598 278 600842710 581 537629769 400 960442509 924 818040884 731 943535971 821 554885575 521 12787592 934 399260205 83 78192768 699 297298592 988 390192711 223 266799117 276 116463565 962 593631789 988 394490428 896 136927020 798 150341423 704 660872524 126 320135426 841 723817247 174 875068987 299 2107180 535 16665004 462 959364934 205 895811393 206 313528175 129 61574949 330 559838768 402 287803418 261 410738612 222 110925689 636 606347121 32 518679600 779 717494238 61 123130276 308 901771034 833 922352230 536 410515533 725 812012865 692 937729696 379 995220809 205 192178707 439 821849461 587 474946561 309 827822698 763 604539197 292 894659245 341 335017872 234 538237947 34 268814438 974 168357643 739 748405082 38 109921903 217 616164423 849 772289959 272 153187060 655 279328077 376 606561201 808 951897422 228 480417060 95 886556180 324 117206521 501 196235455 594 640562588 172 496391390 66 365886425 309 137834673 370 894447019 858 476661833 544 600415608 916 908199379 272 379663020 462 651334238 79 843931462 875 790484049 242 464304801 247 863559553 230 819876906 954 271054068 957 526466556 816 517305738 532 227550385 941 111541717 375 829400966 772 697536169 848 889042609 273 894971260 124 538352246 314 740735686 803 432023502 597 543683552 176 204812557 540 704244798 819 450188724 896 539959122 292 249494594 23 281717578 325 464986410 35 671437807 441 880915906 348 706441269 816 546411802 293 869851784 512 211698824 888 385551534 809 261890943 256 876515111 610 103917951 797 251922505 85 157456175 90 448484168 362 705587019 192 197243029 705 301688617 210 950346009 680 769948105 363 881567980 561 754595330 288 212600084 554 560590656 109 34653592 811 761662029 561 691736916 986 724829245 735 930676312 45 717275743 595 170575291 212 554864131 51 100202475 844 210624036 24 358814548 831 675061601 571 306837858 73 284999763 645 76078379 268 775651188 333 413974489 868 869299594 619 723861218 948 697603842 531 373012738 491 875974095 302 800066143 271 509664250 203 892952528 240 401512957 66 768397145 886 584495373 970 515600783 503 389037236 491 472282968 180 381478535 371 687253127 402 513631548 820 978828169 669 164036158 729 100305919 612 709115259 943 957447929 32 431267703 394 269268909 840 295884308 731 788875771 674 775265591 936 555756106 735 273326729 918 398341535 890 682343630 41 589235952 664 2649384 612 390584007 927 404891468 398 574083864 939 623076404 719 66849388 955 237382599 722 913864746 594 936778629 293 852914363 66 619396003 872 86194572 251 887629029 877 458520281 765 158179966 463 523588645 158 461037137 144 18286561 8 689294411 708 5038606 15 927996996 202 518491810 810 956028655 944 639403686 59 524107728 639 674389366 446 481814289 766 105193668 706 248627302 850 711309503 484 183980589 790 991971685 578 674508180 66 639175842 597 450683110 445 523179008 817 178579371 170 466171542 625 270746315 453 216196197 948 844102846 414 620606078 905 536565702 704 992668275 722 589287967 992 577385105 196 32727768 396 605848091 20 865303376 154 724747562 231 105367574 132 748297728 993 449491892 908 170239236 191 540254026 227 689733024 733 277943001 194 559287857 31 361314454 629 389602376 439 845370055 407 356954542 441 394743504 355 42648412 25 640746627 389 365222595 63 641056101 163 531874648 344 255887046 242 43633947 999 701825051 391 839761772 829 265117582 256 956764509 757 759215735 927 160237708 578 370355510 778 901800544 600 239242987 728 741616251 783 568655163 493 120006754 797 479274630 228 157061295 132 375806466 442 831530690 212 356048566 453 126659247 171 991881059 988 314960740 4 596904758 267 939948035 466 442101647 671 544256486 638 591945375 205 625240856 549 832023463 3 350146949 431 292926265 52 429464357 327 714702911 629 987812671 807 469989721 793 891520728 461 956629255 761 778591325 819 637759143 29 816240635 911 280655149 457 613218764 466 980422035 872 51267793 260 85030841 860 463648491 415 409726758 110 884723798 879 83765536 579 63044418 228 395190532 555 941870137 331 333053912 752 934618305 111 132834050 637 297378100 882 454582541 705 41355510 179 174833741 137 763263159 410 580935182 496 783115789 717 717976353 174 764262976 852 816477146 838 41011610 271 181242079 308 744896215 710 372245880 728 481245271 89 188345956 820 289527182 766 825643044 958 310907402 959 697779051 331 755256539 217 951798585 257 160354238 596 189827505 298 430460752 310 980678952 84 725172832 447 875025644 409 428619600 474 229124612 457 546554127 126 181675254 479 812493527 661 496823021 744 420471280 582 767683739 355 931546788 952 625410166 986 773095166 173 782891906 429 74408314 65 936400981 646 185922793 707 980119232 506 590037669 675 158823318 780 513136930 211 433571935 952 621242293 368 104377204 405 987414618 693 506886806 888 109072706 956 432815416 195 375417415 422 97852254 582 926364446 37 97260679 645 373830524 553 614593249 491 423031003 365 595299300 585 648976828 107 678670742 611 147716996 953 567498961 652 220429912 971 610967021 137 795766457 104 884626502 529 746727251 268 328956644 413 680953803 756 126429688 321 784291912 263 293054365 798 525745166 232 437027816 371 326841526 791 43675676 998 870848027 300 307753535 629 55418185 693 657510073 446 238332303 681 253887371 959 71304794 922 544794102 188 368358998 658 805341172 377 441196184 579 208515200 629 715147329 684 620937596 411 899092871 362 922169670 124 896073088 995 947852333 300 194415979 679 908173647 788 948068755 64 722263985 586 170605170 660 799854765 681 643877553 893 735906700 695 997431180 158 516866835 132 388993293 25 969240939 601 247798545 383 770962813 221 661976246 105 824742762 838 578425188 817 966228509 117 353001195 593 98822203 824 149523334 143 263633338 541 506864006 672 925545679 609 818376215 578 376970407 509 655312540 621 180458110 968 20711481 477 614797019 39 803715875 741 514578093 967 182711513 27 980173118 594 458314083 296 103628347 274 964291564 734 725544227 285 484124737 879 833061964 429 181860948 36 812736806 901 531782510 554 762113083 194 245497343 932 631616171 695 100314751 203 319883238 550 130350616 376 573881399 891 717790364 807 221797003 254 69273833 283 89762689 477 8163897 414 665334250 227 839828918 412 115111514 179 451803969 485 92256055 837 408131222 923 932503220 371 514023852 263 314601726 820 802574411 709 16757307 181 24078686 196 961336285 37 637002162 113 411296008 40 380280182 654 860337730 625 590853068 494 205431966 45 734943021 27 781013080 556 735583224 909 929683996 66 954551333 767 258332579 920 461949928 302 255611336 269 419361820 953 782303602 581 779882334 286 400925898 306 606191531 616 824630521 644 428627163 232 386607379 528 482421367 986 271190947 484 501406531 979 336624516 439 37104913 649 312813630 594 757441215 529 562830444 823 102503913 89 887590825 890 145568007 1000 542838775 936 556532685 904 539470270 277 702765425 692 989752849 23 3430247 280 878761152 279 513239416 653 880233915 624 940746376 224 23690467 365 174328776 476 433768844 961 417284573 576 445526788 98 962687620 401 169141334 693 190780076 228 637061769 929 452834903 223 25409862 466 325776943 446 543284222 614 29522635 181 718841302 811 525100954 500 911258462 517 886153728 346 955089361 911 81680248 572 551579600 669 851468921 89 176444954 880 42042451 284 674944094 246 261069000 782 945002941 912 465756651 550 897273585 204 118631079 226 362138066 662 700369205 326 718414873 5 889342364 561 976059798 911 406209224 975 860809128 239 52379826 644 24354412 711 902621870 781 594689034 349 599665905 610 937136699 37 636913438 376 747836622 314 715135890 685 720120773 690 239131264 490 807421927 106 432303107 712 432472311 485 937535867 834 137589517 113 419375910 734 948505461 198 727720423 276 825813587 294 683496503 757 284055331 491 444853745 626 528649128 280 220887937 234 156736210 728 562702116 711 779947484 762 181828883 949 85048151 355 813890271 96 498758031 804 147766994 143 907322559 96 205925431 81 299411913 455 447221698 779 899611835 402 2965974 535 77988985 465 240360732 201 107944363 564 963762516 246 267666592 248 524273332 511 472029880 8 714807833 970 866391383 994 805481980 310 576432727 609 145085137 753 501024858 745 982944238 136 97528014 0 936870878 149 980891812 444 718807206 985 638368222 934 103109031 953 238995102 651 846542339 258 84391515 550 700308190 285 139814101 217 488176572 557 331552108 917 303573538 355 321727409 906 764381066 438 104010167 609 673641245 849 836064961 419 240742231 16 611464142 368 846683116 783 739402330 406 128717569 446 438077416 671 516052820 379 737676647 217 356047353 957 190534487 719 451332425 963 850094114 154 832524127 704 484469122 191 254735722 729 644252827 986 296209969 880 14641375 443 206970649 678 944748927 116 621562438 278 904704419 354 971260604 477 184787217 57 394443000 8 443281035 358 8983002 59 830840858 246 130129101 305 742314614 292 561693077 541 572643864 903 11092016 527 521881140 814 744609073 678 27393144 265 507247639 527 920840805 815 188303625 199 7343189 911 71212938 54 323002599 417 609735808 213 842513277 797 641849884 342 880259116 472 944725162 458 691246974 822 833281626 778 391141894 139 939305086 255 8181767 450 534145168 27 713651254 63 94828644 41 945984549 344 353666790 762 754391531 664 658207788 471 519667393 371 31565312 306 661485000 762 407123545 737 540669821 970 244727318 326 920042315 939 117724783 883 29199056 469 428411537 932 692841083 896 323601619 319 405382915 22 128415810 903 306120242 894 953565220 220 819789416 9 759472967 743 205851875 333 772479715 722 372086517 589 831659129 746 936126061 981 376827678 778 270255954 989 578095040 313 344037470 519 78034444 43 804500326 728 528826129 855 33301887 92 939014151 864 879748484 63 52205392 328 926048208 309 426242427 217 133572015 240 15540218 815 860806141 888 352135419 874 642960785 990 249077703 773 310508798 900 52428816 175 988769497 296 386262267 556 461142732 672 460842582 295 439057616 114 42916958 443 864658371 790 138386448 52 254163959 623 329099448 830 180058010 970 205740430 746 793946378 949 44624973 265 964454803 576 406877924 511 628847856 523 588614185 743 459514589 585 354525078 709 614459243 212 223767288 665 509785970 89 392098466 706 727606875 99 773746203 730 977287899 156 936695225 823 54179771 2 269383546 232 558899121 300 889967144 519 562754387 23 213542037 987 707739545 464 586827370 493 552782318 434 955029058 499 169281813 75 187323483 91 609762236 264 191462070 780 928946437 358 526139315 151 900896410 603 344183774 72 483369463 604 16010689 338 296189819 180 309749609 199 514743024 388 725255792 841 877236838 206 22543220 836 712029243 875 959373744 777 883153633 668 106536873 273 798090850 645 159340157 702 122703535 375 741841685 896 902982532 624 287113138 770 536367231 156 584201702 557 352333737 463 614829521 942 791981886 120 448412901 560 481606450 208 873747600 292 829338904 658 711568498 705 62169396 869 429255837 839 780815790 480 2017512 528 327696302 625 516390401 289 904263194 119 528111679 554 687611651 550 658227603 312 56199630 610 664147811 128 976993559 420 153317218 451 820871066 317 71701842 78 489184945 758 607661600 521 28363822 22 929453587 455 544107350 943 308433390 501 770096660 796 907743035 173 329915074 932 264479633 438 754565879 226 407106283 207 800705589 848 700394578 842 882467068 161 322234220 662 227647817 451 300960295 896 705879959 944 926529468 393 597173373 638 800522937 238 653177959 62 762245886 864 649682279 492 307080467 117 709956042 795 85995862 65 474682316 565 910766962 981 213819044 297 502272122 581 890247400 977 100147719 724 537256904 390 319669516 387 268843494 447 470116602 203 926053539 357 196786431 155 997908661 659 573936836 318 54038480 817 179586700 425 762834851 215 54110711 988 508258137 555 298633063 766 168925945 167 768922896 96 833877764 524 930055581 148 977338888 272 917631666 69 805855125 942 249909675 496 444727704 744 491523359 239 872071657 583 696060868 715 221356766 364 114021161 552 712101483 327 718021303 830 35595802 830 875257812 238 763516805 174 152996952 510 193907273 962 424400330 654 86944233 359 934630375 688 77674206 703 780046777 928 609643332 637 823072740 237 161340855 676 143677704 606 163448760 443 773129824 391 195805919 812 657072304 17 182624200 913 682046187 597 129981483 790 939529678 312 190309763 586 267028587 460 143129102 338 284350247 531 231056840 52 813531381 620 724533746 71 946176604 185 193718215 118 262268480 618 798622049 577 39408073 654 62405477 571 49816515 213 461678994 256 220062405 639 734094117 775 837283462 617 958507017 441 366199523 992 684334636 123 8967860 339 487560556 700 927348411 816 918768992 198 541554623 843 99923613 113 340854321 602 695352778 546 908976395 525 151258428 483 413837880 602 140133115 176 336265740 338 317866307 125 810173813 352 589745443 964 380346352 219 573242406 487 711246757 327 87627987 448 567866046 244 381121029 864 621283962 703 887680057 498 458635528 168 365103359 980 652347105 547 856499412 5 843028359 767 176373395 678 279405797 54 998735648 963 830096677 101 240420403 635 261579631 66 212295903 829 772865711 540 693578462 138 358122670 692 992831404 398 137875737 527 299207360 878 330900918 609 993579078 800 353725913 893 612340163 961 539318522 726 771916980 174 234595893 913 204809610 23 392024849 273 423770875 982 235555265 23 568312303 181 195568724 652 839349619 170 805726290 345 670636969 711 961483253 174 70205086 102 889091010 477 444805639 817 50453548 5 296757894 598 954891054 657 212028347 288 845244843 446 757065443 461 886341787 921 573961380 147 714377904 486 968441454 60 560527270 89 834935871 959 150791300 296 614361389 635 234311198 740 123989845 221 625094444 640 935573627 995 517559428 10 750811950 724 976240481 387 938677419 102 441835655 812 527823422 878 738181641 14 84501814 25 871281619 232 580839191 347 998364328 532 789631477 324 817513623 605 812753341 535 978316194 768 227749373 345 384254436 619 949488233 759 879043830 440 406432271 373 556886484 675 38390865 861 848007471 87 310089947 299 196785084 454 84203094 191 12108171 237 646201575 51 84988388 749 774635631 429 730197563 873 307975559 364 707633001 106 871710416 75 575983724 300 918648466 165 292311724 89 184893404 585 377764221 788 436569653 277 615484814 893 553231362 484 981171172 783 103787845 534 429597407 356 545820223 770 961774518 180 666561173 124 468095108 795 248167092 726 736147422 354 649980248 82 986559552 28 970571470 310 112202377 778 907980406 58 978317520 766 757637456 206 818162429 801 535339299 828 866986022 503 509357339 403 886771801 585 71386795 937 859146419 849 408836626 337 140999067 777 392895628 178 276386721 552 276154447 581 146022007 177 776211138 206 735239676 52 399460802 316 217512519 572 962375764 91 903655724 364 844858520 87 507607478 352 914228303 201 577308232 881 586033455 728 609158339 143 206457316 417 430728048 146 905419088 181 438222728 358 582330042 737 522822983 514 383722407 0 853429017 890 377389403 824 837520953 517 790247804 554 198533721 45 922820553 323 958141943 636 744711189 883 123722992 428 209131948 56 111797451 228 868161232 703 228552652 718 578770548 217 629600089 192 761354095 942 187105855 149 476161999 855 266169294 25 622428637 100 644936595 301 763789603 627 729967536 392 685922978 694 705500051 416 293139372 849 152961660 876 948173077 455 278139542 86 409929985 390 677817985 157 808147298 873 996447180 181 325222202 925 885622214 48 232844056 347 190896119 646 197819635 810 133501922 221 588397046 874 329150952 946 757563444 449 22810667 433 876154857 413 98659493 197 619044859 449 130830410 735 285417836 279 685310544 85 373516165 54 3828311 998 793447454 10 635683313 328 312581235 812 152453168 34 834486640 224 518150999 176 24344519 836 846256303 572 553273479 77 887309108 572 750533430 391 968524306 274 149119330 62 78569324 870 876809581 982 558675939 162 452950605 32 947448413 826 560267307 831 193551759 526 462959966 922 948112331 54 408300588 93 467329929 355 326221014 458 226934376 768 293858750 496 535392494 707 151771893 909 571182905 117 675147289 541 408820561 539 705849307 617 875700220 117 844981675 735 15572022 384 268858917 700 352441104 376 546283670 930 645827332 439 784407860 321 527336460 299 866506024 220 326793026 482 93647009 313 692133381 356 307624929 845 642191450 431 814251108 692 106311801 255 927680479 210 333306624 85 875100525 983 843534543 291 247616452 566 150288873 920 86108858 538 675484814 470 359667938 443 72766967 673 461717640 764 961169864 770 326595601 600 415369358 822 218320561 239 622074035 358 738350597 358 258810218 132 807431705 987 193743489 677 299611785 819 7673555 894 725363261 126 495505632 425 192110214 483 404120875 35 459161502 620 492722587 15 522015716 865 92134760 890 335091131 435 961905295 380 897671801 131 385771736 705 651574616 267 675792510 836 759594974 78 21563130 690 829785211 810 114521321 961 543031582 630 318983122 640 342325028 758 599949225 257 510325863 423 798276400 75 374259140 263 651298991 335 932256959 394 961629333 749 806037925 212 7446458 417 766647062 14 432665504 597 325054789 262 91391425 550 171417348 96 53423636 105 301056136 648 391807407 10 669084609 870 883994596 519 270551713 523 567794274 81 290776676 413 598095301 335 226581575 290 761823336 259 235965020 508 74150939 972 950748531 167 999259631 327 58231437 678 566118396 533 931993349 996 796791120 623 765550707 799 834425928 112 943276834 182 102002728 962 418646472 110 231053300 725 186779571 169 930153934 861 334090031 385 902199203 970 879311484 615 97393855 423 576344890 517 35144084 591 738882467 711 462540677 35 390742780 557 446905098 158 850189028 788 233454046 208 131658769 104 836586037 248 558781445 273 363294528 70 394155431 126 95697652 806 587518915 805 298614208 199 329318579 663 730426725 908 66249568 910 122349942 169 195901019 777 408738678 757 555747069 171 156535072 223 227771947 859 176632853 403 441271607 101 195591187 29 939371316 651 442921714 59 886545724 981 88266960 508 218677716 433 867560569 514 65105896 153 986254493 933 880651817 221 783097120 686 728642724 247 358436712 628 342017604 243 324311693 40 124247976 90 889296438 476 802198571 54 839996143 397 485149863 63 183141077 961 943075189 651 893056747 823 200547739 424 803256836 938 726795433 192 676662107 170 857234117 475 153730473 94 424566327 785 926393650 192 361720081 815 455784068 651 880983769 458 5237942 519 510254338 460 218429656 509 793301683 753 487341507 524 34485286 568 238162348 16 220415633 730 18537608 351 796534852 194 487429282 272 11998546 910 570304759 248 306364469 991 828386015 536 983794412 552 215820066 759 124960661 784 406621712 197 681567834 702 982597694 422 598208414 378 11651913 414 978560308 99 67060819 697 710097021 427 136659572 604 871585307 376 414871755 60 615263550 244 907315693 502 278877051 988 90757697 780 896977588 888 748957518 215 280700076 132 129134326 641 601644926 692 529192207 154 663798234 228 551747360 280 136683473 134 759916818 608 754452083 623 829578490 877 655512273 643 824099501 87 427110291 739 301715184 906 504719780 783 108209473 858 305001937 577 382266827 551 152825229 23 219094964 690 273141584 932 324267602 733 181214216 656 333515377 232 302844961 971 560898793 457 148984888 326 428782548 355 301096398 422 334868970 554 478808888 812 461371927 757 72249995 922 337383938 160 555553167 893 961460382 477 979880239 485 112642099 314 481234132 827 35609590 907 650469090 919 47859579 44 884254048 316 631431146 522 50549481 477 987624847 107 481244825 141 518701457 370 810579690 467 829705637 345 562248924 571 60713195 341 311690775 297 807561051 68 843854768 474 663384137 840 563394310 361 806326004 33 303569955 166 270525053 718 183744494 266 356589473 997 110867081 471 778457483 93 95129501 515 765212154 174 150890352 278 243739234 54 493134400 581 678594976 363 734388698 171 811901462 2 158389420 210 750706103 971 435187097 70 275672124 209 182115640 622 45544745 41 896275803 454 218090743 651 337456807 557 737281069 108 54889170 584 969058523 971 529819069 598 975957918 951 238698459 49 408003736 614 638703814 837 214507130 637 690099735 397 751115527 225 419977203 840 381300416 795 981625736 696 579271491 284 368074345 719 247792969 12 713306863 786 683652222 226 713197037 320 993112961 976 950398554 669 666014995 180 265249355 260 797609847 89 31787033 420 816605609 773 325183047 791 603561897 619 720585767 322 382464109 141 676079866 840 131002276 772 898595219 381 688301465 935 344565538 286 729540337 220 518854049 913 794362960 98 46317067 193 223969577 776 902775460 683 172651877 25 869768929 556 760146592 891 943273139 290 23355551 735 462026135 656 653886584 76 792496011 481 722485411 582 370031906 973 224768667 374 136809904 500 801421726 510 220057858 464 683828558 210 950311615 691 521899187 483 720042552 694 932240474 360 245481836 617 722075418 519 233710470 900 16667519 964 925843656 159 973368105 331 653708386 124 679064759 358 790949825 307 790013475 110 5836210 978 905942966 62 948378860 15 53092980 25 221774579 419 471140206 770 215193762 546 424413628 82 636925182 722 611787506 277 63707614 691 284772409 464 457797747 551 980478559 998 554140142 537 616257135 692 285937214 835 946512717 538 230678188 727 178047233 175 435441216 697 318371976 943 774244249 890 841476246 963 707432697 236 9247153 384 460094127 989 294346913 545 405654458 696 116720427 527 44650255 30 711688566 70 173793375 562 533589781 535 856482017 143 398205779 829 585165379 734 635203079 428 368827019 570 633907947 221 851028654 953 14675318 840 224491454 34 663077285 74 615771388 814 359626140 425 341116667 548 8618718 599 787777328 764 46747626 67 171946973 369 126447432 246 837694058 0 924114222 424 960489195 376 24109033 621 93666289 35 894325709 374 905422070 327 5939831 572 844427225 535 92016390 666 579809507 961 230467864 813 617817406 602 909257627 926 821221589 493 872681044 479 339970489 649 25511513 672 216891962 832 823693975 151 1631621 862 11734548 430 299107239 374 481357666 820 660095301 992 359908697 955 531050822 814 714439052 364 614874897 702 21361788 889 630544862 596 990408207 933 130467468 751 162345968 959 41561660 368 719976869 85 800323968 35 452142355 786 825042640 710 962034894 596 304166600 285 727432774 511 910232813 655 304313463 14 194138823 458 163535398 576 350498253 564 300213277 44 869948628 973 549354798 508 139299052 151 276252856 860 672520648 478 240505148 397 960777798 582 191526206 982 311625992 21 877437995 496 993737158 334 499894300 625 127009476 685 163348987 286 203069200 43 494059617 478 320383948 994 592974099 514 219890588 107 261790693 982 864175979 253 840339288 966 603663811 974 924196903 610 430648867 580 104336204 187 416360700 536 240281907 460 635486679 688 370734258 925 199845045 411 967850254 713 452039561 163 347846159 29 442783507 60 7535163 657 811609552 281 397320608 538 847335002 80 147553752 725 977698802 655 577124892 738 327161181 65 541547545 403 964152010 422 709704028 997 220441064 467 773521514 182 48565463 9 441348247 57 420693711 604 785599948 702 86508407 248 276814153 921 547361872 723 882066534 527 20245562 162 768939227 733 513141284 827 215339661 555 67716889 615 665460841 130 60822857 940 793620343 719 425026483 502 673689880 834 703799321 619 591433847 155 207283041 367 521428042 670 48985410 276 11995006 99 472945865 741 453368444 431 870621608 792 892248461 864 680352051 1 615116889 796 408723810 503 24670724 859 362963236 214 177718776 662 65106517 876 12690154 707 222675488 311 878385494 230 715564133 873 21691306 505 606667910 382 107619365 155 817075375 76 503276322 219 625706275 822 356667832 920 378230988 458 580687735 562 983485082 703 210861149 262 374721194 173 275924184 103 492718357 427 862295589 892 416336809 19 164611102 165 838805350 730 503267986 230 143422548 781 734941316 517 877207869 216 901983741 336 232205990 183 2749190 222 356314621 842 48600355 866 584589247 366 628072367 825 917356994 935 702158528 416 426571011 115 988864091 900 476618363 354 436740590 70 704484176 1 300694861 47 191069641 49 231880892 796 119075289 252 15194047 825 306163512 173 354909771 292 929423481 803 524696805 968 721681666 400 898261222 206 289227316 995 292565138 827 590748747 422 554250583 318 250876888 494 501240299 594 450982927 820 336519954 832 860284425 23 909183668 790 606133757 518 83047401 79 637927921 357 876455034 902 566025573 839 295341464 417 44437336 210 817335795 237 844328171 841 986545741 618 132110494 371 530987637 664 552833105 631 656452792 182 659629886 415 810973658 359 542130660 366 391258556 158 522019025 110 896238386 638 718934969 709 948461085 671 556947234 929 340009688 7 287865443 309 265755548 557 889422900 745 965130855 455 184522427 330 277255353 829 715307040 343 657864360 200 428714041 755 677424998 699 937472675 138 35810331 510 282683639 826 825675635 313 963617674 912 218181135 213 99816689 834 809903741 346 566986412 104 626492881 89 265324200 377 757202243 395 526490688 530 606638164 380 6190024 668 607794991 721 226246897 496 36434317 360 861658347 377 229123472 186 858488224 936 827858392 178 369334668 37 70430146 36 479650002 132 79798541 529 636059512 613 142271528 710 669134628 540 942631522 782 786238320 709 946426276 276 957036204 682 76989324 760 905414431 562 37613305 87 231157128 617 332840130 693 422236906 298 591683514 106 559606486 438 892248967 990 870062096 756 957670041 10 978674568 347 807353243 468 768837818 79 383748467 885 444125126 832 195482972 12 130963675 539 255355751 611 867410097 932 958744557 219 15884497 283 3019977 568 737432594 636 104747436 575 420791572 733 471811529 908 657533975 520 468626842 117 104604683 885 629354928 31 153432896 668 607827778 842 852806169 730 722853075 209 524163906 803 918716098 119 161689509 177 692176802 726 317354440 165 191454590 314 776420604 172 647547890 180 959953063 383 742006273 265 567811652 279 404614065 158 690671175 573 656969729 456 981576194 424 154048159 881 408172180 378 225433955 424 830575138 477 835059494 337 758190207 987 611326980 953 837932693 115 974041712 355 188096724 244 595324126 325 912389961 187 301639891 860 761726088 627 389023634 369 645926874 704 859953455 14 16706279 607 637995160 822 847057736 236 627874650 273 167712520 515 471632162 384 978734182 243 541658456 561 246109396 265 114356421 536 694821465 711 605248350 77 544955319 768 626212109 577 399841470 335 490527364 636 175417334 528 249167106 675 988893881 431 824182653 411 162077689 89 972601274 478 155890318 66 46306564 744 158445668 993 354087571 121 457336060 154 158099182 543 109872751 123 860029002 395 253792365 525 69203800 97 659577419 675 135069587 119 348514663 942 419670641 982 118126357 711 412372676 538 367663843 392 714887837 535 822988557 35 549724654 930 530631815 60 218234149 856 522725568 990 814942729 745 976628196 108 189035587 277 100718110 925 173938098 167 544509391 864 168827131 699 993921389 270 685324156 304 143500747 181 756795122 721 482830074 925 508619297 352 830474780 587 397527286 803 835146897 809 226695577 202 310874994 456 939846103 570 735864837 962 961628896 730 13933151 244 293368533 651 579893861 445 86588116 176 477602983 768 555454441 609 279493349 847 879261772 759 741597076 230 924993441 959 361336041 173 883471774 633 411530421 515 836751115 775 9450603 293 395627021 801 458495594 360 395352047 330 575601048 128 959562680 847 830182751 158 130539334 32 747514922 330 358722338 348 99651221 217 644539363 422 441035444 484 888518160 523 728279632 918 157461444 821 416273718 736 108406770 155 571923579 913 88124326 10 114132597 419 776508389 960 72361534 471 165722761 159 378610512 599 132316090 12 561528378 582 252460492 468 372767420 117 588546447 572 376025622 969 618122261 691 286911165 544 403225152 396 280293178 728 887789504 19 183099170 724 964202044 646 359589600 584 624667802 215 538948692 194 828702746 940 475242832 691 236946016 423 574406762 695 629730252 636 734767514 816 126002832 698 684629782 281 263858781 429 330779397 1 233913137 736 167061135 647 911810296 452 693370821 14 22744740 516 365631547 927 36160836 143 156896785 473 715690922 807 938979134 166 775454035 706 154489467 354 887186526 557 369859805 918 114411063 242 358979624 882 4011136 246 20914224 69 173808107 396 344507715 532 793036440 911 81482754 995 887901345 94 626428573 240 692240656 14 343181223 821 591301317 743 91147189 738 459525911 97 847267846 748 256839115 996 638382510 390 871898870 394 601638531 988 706278517 268 509384097 247 270238223 325 870365268 520 621893113 330 463094615 450 535373704 388 735121985 202 523989993 524 633076578 431 604083747 237 92940167 812 37648356 976 444417353 350 429553468 47 732693108 505 539002498 335 640591341 560 636224135 653 544829213 36 337938669 111 796650791 377 12920206 530 356864909 654 836647539 600 513898976 133 179852014 103 600420393 219 205385526 714 336720751 922 504254516 268 466147010 433 232829005 547 601952671 133 176198430 958 196644585 399 554061497 406 355889590 150 887517433 543 284488040 474 222666269 88 184856203 621 132012718 358 942424948 401 283714146 686 674673673 538 311518749 30 618645098 639 785909486 359 268939989 645 800278965 459 834093953 729 541830453 231 205056389 751 352357122 64 134609099 733 427703375 401 26433462 49 277829709 311 577411120 149 499346111 906 244283518 868 670264602 493 444297283 62 759017077 823 629312604 897 764264847 16 99564722 749 698064423 273 136584863 138 610824261 75 585373468 928 55720492 978 698148183 659 689683084 883 688238240 77 618471631 671 478297830 115 475520301 220 267950003 695 188220287 569 791535051 959 138537167 595 455697713 877 497965693 816 957367558 334 795626048 311 83454226 286 937512464 64 823002983 287 259182926 917 721516531 83 588944873 254 880014739 503 653698713 912 287366251 291 480740720 705 860278129 421 887885769 891 771860911 925 128343994 558 109734261 216 973678326 201 980987073 573 352448102 732 434154630 814 531472244 642 905737557 318 354350940 282 299733824 570 992952792 822 855505616 852 687987462 780 832923833 529 3220109 166 275637854 107 539124615 472 205823195 538 638408660 20 200628748 486 532699350 465 875461258 104 108858375 698 267239472 472 439264976 503 270878104 398 567638897 48 796413833 129 337428062 129 376005924 417 729788449 565 486834258 926 57812126 460 386368492 334 734287311 21 749135062 298 250332483 698 823651868 425 625320911 381 922236117 978 498149317 275 681296619 923 63346333 588 8749996 89 14829050 457 32771984 500 146742169 45 935325799 645 161675518 525 580147319 778 50913855 46 132979401 866 785408278 667 257594073 403 893840818 301 43311020 251 622841891 266 139625151 679 282260239 419 462196834 323 173042674 463 400817343 148 567873274 298 390675784 473 136648918 690 440985289 716 617315639 964 635274566 479 921467662 234 631625935 460 287753987 916 173802549 936 428662739 932 993751942 210 155656786 566 658333885 868 8688760 552 147190767 445 556255132 424 547104812 668 383101028 0 852249706 540 95333391 834 67302120 818 165068210 994 248655608 136 469494594 436 835339478 309 431050611 926 457956548 753 179319537 741 444218504 138 982854406 861 907815798 771 564789055 324 212366261 238 50064234 993 263973215 253 271289889 319 813844605 940 863554764 527 542018847 217 537495385 945 528222457 38 637701507 55 77697111 159 13545401 884 147082854 698 379720611 672 967604817 96 591472581 500 458362970 492 284555966 116 233364123 113 4596836 431 995504870 835 633045173 172 222382984 429 639439006 553 138851739 120 695323047 61 875433610 364 570547451 705 519664283 709 837527169 984 215703529 431 164359096 18 683800471 522 497770778 383 906999740 320 207437593 326 329916078 278 548039443 659 892588182 698 84341870 279 197016482 118 809059300 392 274357052 28 917596133 311 586878946 508 528925953 929 554261353 927 634569626 778 79458302 158 135492589 296 228470397 802 680197828 216 804305138 561 497162693 131 546572474 690 410870951 35 942894767 69 500613033 906 617753249 58 644663099 977 616950315 592 382593610 727 56439081 136 790916280 27 874169818 305 200298548 492 45687555 391 911687212 903 446118863 671 749230337 219 681623537 400 544741881 707 499430060 293 872601759 335 537314520 897 42495755 887 784756010 863 999049334 101 205278429 841 136496619 786 351754457 75 961850028 225 307934926 802 114574937 492 94422056 937 87134953 177 248009016 600 607803201 127 410567745 481 820809598 79 151433102 283 398867730 565 923434402 687 683665469 833 229057876 845 684934529 411 184747650 323 783646476 557 391247369 185 87887596 465 785566889 559 768610383 748 241972453 518 65665924 579 336101761 795 107405840 393 935276186 76 817105435 81 210436340 976 767322145 816 129235429 493 789319921 596 162733295 610 570104526 57 908376406 764 85235651 832 791592536 196 533110191 561 693477179 742 855083452 73 30187347 924 663288710 619 417003395 843 801143375 503 474081907 943 116915547 735 239463633 47 424868131 318 39177410 80 262572005 888 986716344 663 806951480 221 314554191 854 642621744 383 988440714 484 994169016 858 876126243 185 61491023 768 542385038 142 534785468 791 607242850 730 196461910 895 452755791 337 709808199 846 606061612 827 585011691 362 347174446 801 54381555 811 320727535 318 447686709 241 69578417 494 471794607 565 203307703 616 738213393 148 92668161 353 354351103 370 121273945 731 55579820 415 108901936 87 132961107 456 62887723 448 311193517 151 144252727 54 218445100 554 535457717 508 482309683 165 778168636 763 135755945 837 911565912 434 445645372 526 387682238 995 958948110 370 252832280 563 44937020 717 945211997 92 569597322 75 372025674 966 791488036 369 999613409 724 310531895 1000 191279 322 695813283 419 19747585 320 646555493 567 922007311 26 928033844 850 518947880 397 61919246 228 475840406 78 574188517 666 1996820 831 469269624 899 400245178 284 990879497 972 436301041 12 737642929 876 73455571 361 242337750 200 791691271 43 169834046 852 304540627 935 387321720 1 637253501 178 235007928 844 939273858 470 722903562 267 69965591 913 906440540 93 960633530 420 911075732 565 740165076 45 522747807 892 644598948 324 837964764 475 923681044 259 125088247 16 511177341 228 916732196 510 849328544 196 615647647 193 62052605 495 38646766 272 492940013 954 281448221 59 435869933 657 356247870 151 99020758 480 4644878 303 962466886 877 135634780 411 684219612 137 566424367 442 477023915 455 275042851 464 347544791 851 547056986 714 764711685 226 192181731 549 698203262 640 481142992 981 877809604 507 577809818 661 289927391 681 402493729 655 440199004 296 37651814 267 352694899 956 822320756 459 511399193 695 660581086 154 962267822 818 132989324 550 888644541 364 167302241 68 950442918 975 777466632 360 543296240 860 292063468 810 560583204 449 773585344 327 493690786 368 563252707 207 410685185 361 905219120 964 146448972 773 941619195 184 577788760 134 757233557 155 271768538 504 285691657 441 441182087 772 354598377 678 546405751 274 854892312 23 941534064 936 301109382 144 701484503 502 337725612 797 772749035 220 460417653 968 655725977 816 776626865 434 848448810 540 770960744 666 698437542 675 100826871 229 321990996 692 131813528 568 745740527 68 789728395 440 355947810 561 268178653 135 64973497 220 187986650 967 889468485 182 994894812 477 363686258 482 695231209 868 834296049 278 348803112 769 740041813 691 12345848 585 343281801 312 325346260 294 482389693 788 411985850 861 491144734 171 485686296 260 224974608 155 361366910 548 512100395 759 352295213 23 367094498 128 458419873 458 7621751 746 765503426 856 964937033 28 399926629 914 736707833 887 896282822 501 577529348 489 597998065 433 165380102 134 766134551 665 805141825 587 46977245 500 121382818 817 121618010 347 778357053 521 326040751 790 76192504 552 728620581 759 361820528 920 738460057 653 999993947 187 150778063 528 399365164 603 783621959 557 712213465 771 824724979 553 394624962 639 324158245 101 276736574 159 765933510 13 624929725 973 821101503 965 394476868 423 209381245 516 188975478 508 913447871 92 946194129 524 397845650 212 327664436 571 87537734 919 726274164 476 991522341 579 249851591 534 832712714 842 566027593 319 506332722 640 778958962 417 204879788 699 275506882 983 821656623 43 154496457 750 971559457 771 233878240 909 782671082 78 559949694 29 858057510 107 221240615 985 637787292 779 467248456 230 330453359 108 285151936 124 354115723 776 426341665 319 235567081 550 181563000 889 666064034 881 959122533 965 407208474 693 99665063 419 136251734 609 840574343 131 174330886 351 636477233 639 40227185 843 661416946 17 698739610 707 69356545 15 546423882 364 977712450 207 344404566 296 107713461 226 761232017 301 639130405 219 235424356 975 149306792 432 989713143 762 574203367 242 957863024 918 71542983 409 917024475 677 643495839 171 538614298 983 217578655 896 870485740 144 70843213 46 65745033 543 6361130 36 997227791 439 24008065 82 944621412 207 536772378 53 342382084 443 153688645 481 487516866 621 651516578 152 758350520 922 422869201 348 343593257 479 542716324 901 121589305 637 696328585 986 599241536 427 527237265 998 722225237 115 191482221 400 313260146 218 789374112 441 167467504 239 957558649 612 554442866 614 692857073 476 431206735 125 984103592 577 965085855 774 930873268 443 44694677 935 236099362 475 841343055 596 951012678 857 953377655 423 574005879 661 586674253 11 202081307 131 712250652 977 874177023 806 46114276 901 495758388 186 739369249 376 445142882 44 351896867 212 710393835 778 764198118 654 750005593 354 561474919 192 124801639 489 986100538 223 46203975 26 990474925 972 241179514 280 914894617 875 900090661 525 90984334 397 116935123 34 847137686 726 654551786 323 511726323 880 951354791 898 6564437 371 848215287 68 999639420 376 988898010 908 772591696 975 451660665 87 300233934 853 998936827 102 717449869 329 344485425 700 990288110 429 243191031 411 448418475 98 179145610 574 282990498 614 404086128 576 705866703 246 814489529 223 889043168 304 45652664 769 372236837 975 170153918 135 898187038 118 934003864 46 791009804 891 280762052 392 849810087 933 14655454 931 966623555 858 598783434 227 995324121 470 606444479 141 479569810 573 794008899 798 510816815 570 652979771 116 536185479 685 289710106 686 450505099 306 154425586 905 287246163 701 667522117 531 958939650 530 146182286 155 499051972 162 44941921 274 595236661 548 542970034 596 774902858 166 400591271 370 690838850 269 75305275 344 508466209 117 682081623 571 427096015 892 577908125 207 14401344 573 297126274 69 135316809 807 127432867 693 50313399 405 577885335 361 949163700 537 717380932 716 866625125 275 582545279 180 902588828 645 701405596 423 13996931 539 416519565 509 944780132 697 685256701 259 189674119 558 142115229 43 860568882 810 658694966 443 586222586 160 454044998 724 607252845 60 373302379 752 541562952 335 194420220 608 354495043 46 496587126 40 743768345 265 824902474 378 820903644 623 653140320 376 697752391 5 237265750 669 723661461 791 424644434 870 731324272 93 705595376 452 217565348 913 56887886 638 677732426 679 648472446 326 787132092 303 897198047 576 247957318 151 372693933 798 560088763 579 969937771 0 92964611 851 793870987 291 944928056 132 548182579 961 236513510 585 38678000 756 377227434 788 44443927 749 922083495 219 410408074 676 785441858 499 769156564 400 113979588 622 130936989 383 78629789 946 32063702 197 505359284 789 329559714 383 498748484 114 287751422 5 686786388 393 473629986 642 322290620 394 148506050 649 735170353 299 330057261 59 125558535 136 498334790 369 548364257 323 644583900 163 969264427 270 222611063 878 825683764 67 598971762 501 756268343 195 42671543 29 862797115 169 723748588 933 427483941 826 55076243 322 753223701 939 394765023 606 901253448 275 915691206 27 790416090 868 987844688 634 805782829 227 544850945 493 532835732 723 896395376 419 992225385 362 349061569 623 604359377 381 387140291 924 464246 499 321853004 215 545950303 98 56652867 652 712465984 196 418645761 747 896885952 425 245835490 869 646828923 854 702845501 918 78402197 570 943988118 4 893402596 615 665183563 709 297144088 715 485948159 306 499309075 962 149121380 444 242011697 552 752410477 430 46005583 994 216721569 920 538967082 993 378711664 318 552195777 802 124782642 606 281663570 826 606415904 337 851780342 473 197384286 242 996116086 43 257527535 384 185829545 982 386723097 667 603567879 460 580122383 422 126850759 87 413651027 290 762244204 751 620405965 411 168216101 886 362141798 671 919525148 117 310728966 59 313487523 226 950006758 530 644221611 67 804251371 131 53196949 517 481061329 373 786275551 466 323461381 226 861883514 863 157190341 657 384382779 680 813137745 528 621620684 948 258768000 367 699297311 906 79097178 461 713535128 680 38006755 363 39258229 858 785128479 805 279504818 621 809748830 546 511859186 225 969325117 866 150000039 403 684031788 127 972929106 232 195131651 636 288503716 216 139572655 633 858380144 872 771032429 165 250765773 22 651950676 465 597567024 514 107911812 53 147995923 83 646920263 314 345205967 139 342032954 932 624863390 629 553155835 46 221342500 807 761045848 383 26594534 806 900387690 854 769851475 451 214286887 479 319113287 762 313711814 608 440422199 919 682911092 691 695224829 913 872650798 85 959727070 330 884710695 201 489547792 307 154516539 1000 464485416 199 444694088 173 253852338 63 728145197 762 407998303 281 516098891 119 98849153 236 621889746 122 576239801 271 388484276 770 65442328 395 773735119 288 390039025 524 697428460 848 12623385 834 234467500 513 942163499 579 775817359 760 491241940 775 476558092 124 383781192 16 499457824 861 484558103 877 46786076 78 607342408 234 633305501 134 132868946 191 667959166 780 212578042 562 571734229 377 729350082 185 307780785 281 405555317 619 623313175 228 549165591 709 29000999 969 787829418 847 165888785 127 649377665 1 500770118 794 585129469 519 328211050 484 765559565 751 683389998 252 256198280 162 567418553 4 483687860 218 115457336 969 140938639 861 937962902 120 531116118 79 790038691 266 833908631 221 83343040 466 893823038 149 687264100 578 318335206 476 18156499 35 553247006 581 952395264 573 264495885 127 369273506 971 827005834 529 673648782 415 984211608 162 384678671 105 229905399 980 417075367 339 168385462 973 441266134 518 51202603 59 618419220 813 843129312 435 510959213 170 755631413 860 552150518 530 442233435 486 157451161 387 262557353 11 388596437 119 823887618 149 308137851 564 506350991 444 286226008 250 211769152 366 19044519 84 543164504 263 649575513 409 792084580 147 720182587 210 862812527 221 615005987 806 441659892 198 508928554 572 648175502 351 969960039 484 906098465 686 619126937 754 206184783 239 969777164 144 350563612 792 32552620 640 225886511 439 271980817 679 600308277 740 376163210 934 990059151 693 963891714 678 575944683 48 786169620 283 500050654 882 423164297 447 162685552 79 960834965 509 914883056 661 976193654 295 48173762 65 461145838 317 889433992 917 692621729 654 951047389 606 983887244 565 846303445 20 898473532 129 800948063 210 697460067 734 690390571 698 393759705 27 548081706 954 858298318 899 200729969 706 174140951 145 802650738 779 929750275 598 844225435 145 165546615 420 973265956 432 168385910 341 419224549 377 510145409 73 265637343 736 747153194 519 522919342 16 913344457 456 511383762 623 747019779 985 442055621 628 677896599 262 498215369 568 790955921 856 914052446 253 952993274 916 280694748 479 93016811 22 640081233 879 909258292 756 343922062 774 348071162 409 622236863 207 543561285 748 997460775 318 460808832 565 541585312 280 828571983 543 103155233 240 549131452 458 29545856 743 753689866 473 760090333 88 403713457 179 989582692 806 382025201 473 147517340 489 403352911 675 50606003 832 544981668 973 727452963 445 789009398 209 567773089 657 909562166 406 277377806 625 207362186 996 575032244 233 961489940 447 52904432 157 963817820 210 269947986 820 522437678 660 860836750 165 532979003 136 695546305 284 114795547 311 652889537 940 459576619 382 407064516 794 892345478 298 539436145 518 192681182 70 129904652 639 862206196 52 611237943 527 986357903 686 658589356 619 444112276 233 892378092 565 562393404 253 900644740 567 856718970 320 16541297 653 516578454 830 751039036 352 498260900 941 495931801 492 837359902 824 378292582 257 258379033 897 127291888 286 597357572 534 480756544 150 623784599 883 243319270 788 862581002 254 77347225 873 217734495 918 220381081 890 600492280 708 865922908 422 84947067 437 376506991 227 234931733 901 23206151 846 346534614 221 882226022 860 222486509 609 382023820 899 496047730 754 440783935 21 824242439 493 745130204 392 511870045 237 279667076 969 110742083 287 281309518 561 15173823 987 166068514 812 992058907 340 840936859 450 409135749 940 569189045 554 508137208 51 977988839 659 513727171 7 463622746 34 584518368 339 121212797 586 142829239 841 287426748 783 575860856 552 57591590 189 41333186 376 490628337 570 255939480 588 633951300 244 983019635 870 90998818 313 290072159 556 238617073 145 120897536 582 527446923 731 820406233 291 862224421 470 769319664 515 136970958 388 798797526 462 508755378 113 80033091 860 876083961 742 464540314 870 657356989 609 625210232 677 45548709 660 53559851 440 261677072 270 991585562 281 452492050 113 615239685 603 971368475 237 671347586 43 506063085 950 68035241 374 101877209 488 544393998 194 284852882 277 746669314 825 366701226 922 403479411 164 57985636 844 377412239 685 263791776 370 226431329 689 201421221 921 23113447 270 331622320 75 448275341 380 846181267 780 343642926 238 308550644 816 720470600 576 144918429 344 787000728 867 117469262 169 524921160 102 473235029 178 578592173 242 766696354 410 124690837 772 854362429 564 727232399 165 583972062 63 585564020 181 475840916 943 267770851 571 431352139 487 322095685 354 891811618 429 584285979 454 541883394 254 541767926 299 386990255 823 494920599 453 44397852 227 237189597 582 72589593 582 746623369 9 809992654 442 835568328 939 701547540 344 321800854 121 521211685 999 388238057 625 866479524 214 676999472 428 915451636 34 306680835 911 914993840 902 129580868 131 17382837 228 115735208 193 866459812 766 564012948 143 504099657 593 379674157 443 131072740 742 614485197 327 72557787 7 813031903 634 820318868 910 798622532 17 342726484 983 197260137 343 658548668 338 274569123 12 838883176 444 559977598 588 399238167 461 36693086 808 851244367 246 20968946 498 963931728 611 549470203 145 583763623 183 974399813 59 296925323 19 281695541 179 716875762 546 767998619 617 340586397 246 603890908 933 739533539 964 749086041 10 986455919 566 58427872 989 443346234 925 876286984 96 260610899 165 242526240 885 521447273 724 488749674 906 537541955 447 920175738 683 192643430 71 265286839 408 146975153 750 908273859 957 623649 291 816405141 320 486617611 102 420589242 49 480940163 122 511998741 620 53858491 850 820029757 523 247626072 992 309658469 884 982191154 825 302439958 455 220739346 21 190210159 938 799545802 608 206733928 982 95348494 935 203254765 447 157996013 910 42652890 398 377802333 304 945861189 189 2518313 413 130735718 84 307361649 636 17052657 632 706140105 500 162626031 161 887331797 454 808907200 298 850615039 169 797190028 912 190597846 832 961333765 500 392176401 954 399065315 659 412783612 856 958128608 614 553274691 684 841347097 4 84561591 427 869967177 609 76446245 265 59631620 344 506294189 251 582096109 179 370788594 229 209635747 382 88691464 527 835740899 985 482934165 362 865244139 755 540418695 21 622795401 80 364573439 211 502299500 134 226092638 208 269664685 277 847882283 53 195576091 981 821621460 825 478104645 950 952273627 799 600261397 162 428173046 52 449787755 682 930719112 527 560262239 19 561265770 178 126128381 310 437063012 944 818693783 167 540333841 394 517504769 477 688580487 172 215059759 190 501772981 409 481586975 846 719879219 503 522687502 791 128491201 520 201666985 65 619246953 789 780643550 280 790351014 472 596753935 514 329570840 261 108196091 748 280237446 539 788073647 314 499748476 72 382553635 736 866518049 464 26168945 947 290225934 616 82854859 143 305658142 804 344956067 605 479723203 133 301024401 335 805845181 38 552173533 141 668208823 476 978546818 456 283449603 299 562425469 459 651972878 83 963142483 250 722250291 438 89511883 376 58301596 341 850756707 913 332684870 356 735903695 293 180241319 737 638603631 999 531264905 767 649924192 673 248615842 660 670052946 136 318016855 981 146340520 310 602518683 573 617643159 464 995471377 836 283424335 973 393651044 250 782206160 346 736917134 6 16000862 25 584466002 343 599676991 238 535449894 615 898702330 159 963876095 900 319174949 438 459344729 360 149266916 822 2154118 421 856583350 909 915132367 63 137222679 193 334363754 532 910045295 876 990603553 780 333029355 240 772283354 252 869104213 738 667394404 649 324800872 970 233392189 150 4580595 104 262033323 880 170087474 809 343553110 381 727203414 620 103493268 592 536317750 871 375186265 181 219487059 618 914393486 981 140949521 397 242127710 657 428913606 73 267683665 463 567259249 470 422743240 646 44634962 986 753446346 178 4243563 31 870621623 846 353255921 430 580931881 203 404839388 774 12655752 216 196554032 277 704003657 87 759817734 764 16895756 10 769016019 539 201596167 611 397096945 8 826376807 543 961002466 144 797686161 466 992772883 367 682640210 343 822201431 963 345810606 832 760430297 976 954392137 162 947343096 481 26162571 757 769079272 689 182922745 721 45301825 775 147341963 574 479782582 251 565907861 238 506275083 796 489902498 660 520471159 820 275353970 354 653659734 191 637634839 668 32830826 68 650947701 290 835241434 394 15598616 465 292173904 899 704153369 241 9524205 567 564141697 139 289964804 237 758452311 673 666190828 502 581879093 703 197174920 813 91370054 66 772999499 461 568376544 401 130760606 489 668115799 398 677428073 143 479311144 416 758453940 726 354077829 119 553674843 220 239980625 269 77746453 333 604088945 69 242903975 14 750547043 48 850616855 209 765098555 866 763983538 182 577409229 842 927711491 821 741617566 886 162809813 509 456860628 1 943475197 620 357989713 417 225347326 455 918048805 384 904847311 605 352576377 565 58096323 536 25425226 925 824892114 778 805030069 843 961932549 158 871541940 412 203100780 353 538600921 98 999834357 984 337756103 531 596835891 369 29875189 405 103638840 868 422533126 888 184728884 535 422131227 847 605077012 134 730661639 405 261067906 59 176964419 456 810752297 238 309364832 630 156076545 106 586164449 704 693382591 248 933861310 344 820763152 671 160494697 844 713548015 483 106533891 44 71609815 717 736188281 790 808806054 100 785357660 387 236420960 974 262649594 132 340928173 39 472639416 746 578638210 149 445183019 176 919014015 858 343241318 268 137989938 370 291084621 992 82966822 873 678253211 528 606763895 464 743735586 653 356603236 813 529295537 199 62144433 576 84691590 419 298229072 338 979358150 199 986610860 304 34612344 105 390419408 685 848642106 661 180732877 601 197625691 23 387141423 970 266827952 62 820899922 695 91962828 215 751082038 405 881617158 795 31770493 653 737172117 695 899395739 986 531992092 3 143200811 282 447412040 159 494461557 505 10629332 685 648757505 225 488318789 355 605502598 476 222182712 629 437355970 247 350648918 117 410953009 903 938564563 847 823762241 299 709224745 373 390072090 489 98655112 769 50144430 287 755972889 227 763891476 22 623850044 576 144140366 770 472386104 857 765595307 541 382183184 374 554040470 933 936839256 320 444979461 240 456616004 681 482139298 592 570956860 190 368752529 888 574249247 329 851164321 671 988608368 249 456224439 371 73382128 37 155394811 199 717612289 549 976165799 48 741620787 253 130151183 771 290702897 103 196335660 60 966515658 390 447604817 666 647363266 660 560615532 169 93909100 610 298544625 491 82411196 143 750752679 500 748046190 239 606627949 323 483336726 711 42775055 985 525896983 15 877751615 963 645743488 836 160376109 174 572556498 461 589041695 159 997578117 776 553860432 286 986801850 5 314003433 499 274259346 48 149550691 111 386290937 245 688078493 709 41178797 429 46220982 609 588329789 923 316926814 246 54797901 607 387584445 561 819702991 432 309097665 733 808421828 396 800093216 412 954127455 498 12411368 774 433515269 98 682876427 209 147301380 176 17892963 668 98078927 471 21923540 449 561539474 480 767288887 549 971545198 646 112953745 946 748026836 935 479787202 919 112235665 764 31203436 733 683307285 536 24175155 904 296417625 153 64268699 745 143789472 527 308157609 644 858216298 614 833861697 175 245646102 982 535144878 410 442823436 489 625915974 780 368115878 877 142254580 697 644630024 570 387871649 37 579648938 872 634133816 784 14284326 426 610399292 747 513440319 474 499094827 553 861333970 999 120476707 401 825093857 26 344666774 787 474747840 924 734468311 183 357175477 521 148226074 267 219472863 234 511313826 633 830567237 806 98651474 355 139242507 878 108754675 110 869100241 4 50269604 842 489042506 804 623169673 44 886851381 585 76280501 493 313741086 179 63732673 149 684697702 595 175128781 680 450557337 526 341659100 323 171044779 627 749928971 906 157622068 1000 184069327 526 288019371 507 597719649 333 44564218 87 183184377 440 510798484 155 761781359 478 889675448 72 544873403 792 692818681 52 765281029 682 553631905 547 95960817 27 641288448 10 214499775 367 266745928 473 836652796 667 208399162 370 486941024 230 830700973 22 203063553 344 668570159 827 197137638 894 450103278 592 388899510 599 708282700 891 118877141 692 520986234 470 430628883 553 716019461 5 25428823 416 207691833 63 188217009 694 617429941 611 10094872 996 413041635 250 977252287 731 90561231 13 68941238 1000 245798720 250 241375254 966 269457373 737 177459356 838 680847274 194 649902955 399 35702119 115 233094724 110 950370228 120 703164250 995 448460585 787 917542143 123 142896926 976 107922158 280 113122924 824 736752611 355 28070595 820 453328924 800 932481201 25 889963210 289 148557043 221 980113708 652 13012951 350 392335470 411 409437695 339 885934452 937 33733057 571 638880419 133 461148697 489 139643219 203 436482644 51 92961891 337 141630969 612 517438101 746 552185878 878 547359116 725 360987521 123 318310951 882 847512087 167 238787132 379 671213052 174 708891215 643 399830511 864 298067645 178 226368784 123 322537416 956 949748246 166 319301646 768 454030059 745 931894381 295 769330518 83 471309043 157 83466551 215 272603137 348 691507080 223 576982866 297 238374604 796 495937137 407 135488657 418 926110783 607 270750013 366 147412498 767 27631872 105 416202206 663 94640641 745 877117483 965 234622216 778 54409150 671 24090182 529 539978893 577 864377068 92 775186899 336 207838713 978 936981268 887 47086221 669 439853688 717 907938233 810 698713885 208 226685699 77 844968971 937 88898008 9 540541190 500 214234543 192 417966863 222 230288639 867 764176826 247 592418460 128 712340628 630 277678700 617 810008877 536 612840195 514 319345794 274 676643661 183 795355077 593 24479707 709 732588477 744 326969197 876 291938776 999 302224138 7 460481172 531 24513497 737 422011451 120 806133136 536 496654474 531 566703906 857 243417227 426 921213933 641 304387089 19 493799846 431 23243613 649 745652568 79 870863456 970 544610933 216 470684781 967 336518261 509 33932778 179 710127104 288 30643247 411 311532305 544 142206959 817 294619503 848 507388762 832 587002428 750 76788340 94 569927991 370 25914216 200 444088174 435 207783880 256 314208010 85 937965057 372 565349385 398 368719223 998 108538685 168 620119759 21 408272607 371 619025832 783 716836984 628 277505561 91 966868611 440 920022494 108 987392340 507 101539688 73 995101609 829 235999987 300 308190089 429 329882329 140 405469733 40 23128027 877 72544226 30 981432797 812 274525760 351 783565659 662 201592197 128 428681859 169 785760068 31 298784938 658 532927043 724 974973135 788 201025382 477 408677304 193 575123292 26 480033942 911 322299480 700 98215935 627 4574301 634 152989492 831 958904035 208 667259483 325 963252088 661 905383068 22 310276900 346 621221600 836 199445837 773 176835367 411 459651571 582 377203379 929 402572435 592 971863862 174 217115227 463 261183132 7 331381915 330 769983881 480 954725687 163 170147460 104 567273974 299 979003197 770 418623602 972 256813407 292 595397027 562 716779953 338 68320290 839 399853113 792 411472923 430 916250527 414 196676130 63 321689253 697 625691956 818 570636126 58 899296131 614 48787300 505 889168142 372 432776022 93 356848194 966 543286867 362 924416246 622 184037367 727 856322880 752 405556279 543 854991697 400 623983805 631 160141354 307 421067603 874 329920956 651 682610632 899 164799813 131 623542133 115 184313585 381 740814910 648 997177136 565 180393757 919 20888885 800 848569733 838 422053981 813 494992089 75 669289615 309 717019084 935 623969540 441 627513386 570 902839575 724 897550472 106 401965472 852 769279226 230 338937035 638 944905575 921 752100216 959 25633216 519 532229845 378 684715018 471 644184597 808 669097114 873 670187977 707 291037889 516 621356386 548 944040217 269 766933067 779 234449110 804 20569086 433 702983710 888 409825426 355 128415478 811 575092367 939 535710551 547 625425329 923 228248264 693 88780659 817 302676989 385 92267633 598 264287072 510 275747225 624 876564957 744 718205940 930 541326289 675 566549661 787 708230139 652 70066317 228 236706517 11 603814845 769 621720206 789 431119818 548 550316122 81 124787410 295 215640640 145 704470204 498 423653696 388 986499385 954 501491593 356 764553200 653 276840333 852 281360224 310 662214418 25 9939350 903 696146123 327 339727129 676 315446040 158 321325730 656 704662618 717 936807368 489 277632964 681 907432812 151 382980481 887 235797557 58 818571803 433 849721720 280 986822746 621 471256631 185 255312279 422 483657175 253 329324879 778 861507163 468 671099359 601 908942961 714 253304028 884 198484638 693 358702304 560 418175265 79 103952861 676 326895446 600 842072039 966 351076092 865 831638371 486 241544307 738 195292067 153 392943153 88 64245537 556 21005398 903 774823552 136 847793849 33 414111540 617 875772853 526 736485163 470 130871072 115 632941124 58 775396529 934 376017513 401 636636032 361 768733145 353 969409191 369 202395470 999 402079388 340 99538290 47 598607518 608 162445637 260 312377357 577 481487101 167 857793356 358 637259522 116 349662162 77 763999347 783 156606701 328 346828671 373 801147349 225 937779288 186 116704329 537 282696902 309 104916637 729 855011482 788 99750317 715 578290200 8 202761654 578 898705399 720 590118209 228 912587829 942 381217335 708 628219108 21 547199368 68 774962457 841 121005655 192 317405151 50 652024274 885 584689493 203 644907664 82 879194679 956 27116711 58 485002922 0 778478864 959 186799702 507 243463119 737 459333933 382 243889717 583 398596825 997 835612142 70 958387822 759 681118002 533 949806180 463 658830420 559 367576494 920 915122029 63 465633995 913 154618901 669 443435929 189 439666215 26 399021893 993 766995261 64 601595142 703 990858654 527 867463533 549 514534171 234 384545135 568 843969105 391 100633070 178 190022269 241 282959480 24 256699032 611 423633639 231 643431068 207 95925858 961 584201690 572 398714111 739 301445109 206 815318756 308 887617382 338 854653063 447 673858918 370 286302885 999 703378237 46 782345630 762 283711412 816 164230740 361 195949953 587 607706513 702 544564332 918 174189903 149 879621808 192 864603084 477 148930004 536 798964952 346 209615065 68 327587352 653 786940167 308 837089673 805 512926248 344 156135676 669 995893330 288 903515425 933 874537960 854 221396384 928 756847211 891 591311464 611 604822016 470 770657960 294 424027501 531 558127209 326 302934820 402 660036153 877 403488543 670 706509417 592 888449915 707 658675674 103 123256224 784 225761919 634 654079902 146 732693199 913 66364871 268 152604590 947 332819426 289 482890737 661 407078505 601 339928272 370 489467601 451 444435836 28 796887277 915 717034651 369 96547485 616 498167276 918 610271003 401 108553770 690 944659305 806 151433319 328 815009053 513 918733579 689 652441659 241 487044600 675 43415175 857 45240307 436 35467467 264 488500828 723 608613659 636 631451019 954 313524500 59 854327976 429 444794925 201 387067221 229 560441470 576 411239149 738 120268869 129 863570583 505 386075941 942 941518225 962 154103935 833 866204237 294 85034763 645 227903107 693 924285112 674 340951040 204 719602281 319 793549501 820 353873716 130 775006443 422 297067990 876 821505455 807 340484647 497 909573067 434 111879332 186 699600256 552 416010977 122 941502572 822 295461154 888 833992464 952 379785403 547 893222140 585 849455962 909 843146292 469 118039208 267 513886330 41 949775534 1000 865638417 968 475705753 497 984386434 190 834286376 49 888708454 250 746946893 766 558198219 602 997376304 812 589339847 107 137013158 61 727840354 638 298329507 75 795441582 609 485653713 254 136731230 494 972598729 220 24594929 143 140795829 14 959288692 817 147687905 680 324932456 43 758367412 896 290263022 918 205041930 593 816304153 46 367002944 453 581234625 442 947089754 13 297324873 17 984456213 110 284413623 362 958964562 881 896791083 97 338598935 444 552492424 318 248833627 296 414489329 169 696263949 899 921810920 747 685739053 814 15744052 734 271219952 983 973300103 272 364680397 340 802298636 825 660570659 379 873067973 592 854381778 371 777447159 917 902790034 40 233808335 19 590150200 877 603335568 84 734946456 293 609882764 448 226211135 567 6071552 64 289791082 949 127949100 614 446523539 956 406427715 172 465543740 443 252873433 424 871048670 940 969715490 712 741277800 615 119509359 198 729971586 90 45284463 94 565940698 679 234870066 940 327444185 103 22178535 754 698193088 426 820159854 717 587884719 285 641678805 607 779628542 872 185942910 498 861824484 315 132297746 676 800314217 93 942113269 794 611027663 184 509067108 359 794923834 969 112227978 663 135175415 385 914038192 333 700850958 275 278926534 917 635822209 171 672369997 88 502952405 945 997401052 223 657538756 131 430476085 445 157838498 250 827463673 355 583450591 933 33862815 41 127041703 616 763366822 193 949386173 501 387630192 184 222286102 381 316073895 143 624068236 834 502628852 840 882623766 869 472950169 162 194444002 958 765972674 866 886125349 265 516063432 589 46488928 709 882414553 19 255446082 15 603715488 747 160949462 276 627129212 523 196180365 740 324081138 343 346557946 697 219780412 307 617639669 779 449959157 894 968014791 901 890684465 772 192965156 932 48864366 848 620658103 681 388449138 96 320137197 137 540975298 383 749351378 661 281678157 440 578738678 834 599466090 44 432848437 405 297100805 948 202493821 960 799893718 797 5894374 178 538807352 3 97413997 817 237949136 893 322202148 320 145619969 668 547776093 523 32784504 699 442384396 716 217560430 640 505490492 531 928804979 138 446340533 713 235659408 246 41596964 760 18250822 496 303366364 805 802004777 710 211672983 15 565533072 80 119149265 648 298586320 645 326550502 440 511217855 340 484942819 243 416530598 118 509698825 433 521013569 265 784272328 380 479185788 931 158354588 376 854308644 121 71108057 819 165498071 633 469640438 252 597497371 549 922560335 225 449102159 51 520456994 69 788222247 911 243789702 608 217201402 929 899642996 356 494852779 778 965484710 99 896058703 697 121858235 477 536320163 326 648926860 10 751971663 105 696482547 953 696738293 561 350466473 622 564825779 887 142058955 130 604002871 596 850058591 634 383884592 746 248282744 255 742345210 349 214949086 876 193305213 6 887432265 227 153900857 910 743000963 729 338703458 100 744914184 874 361719760 104 58997250 481 999719151 564 634775265 341 648606751 294 56183566 988 427664330 69 307366186 768 277763884 767 481519061 750 319065658 428 141985044 631 315810461 320 571997952 624 297644813 323 931258813 877 135744835 430 23115935 516 457372821 728 776566441 407 206993593 231 976894634 366 950172059 626 164394195 844 687506125 318 996629978 686 361489110 414 193113501 14 149435976 50 120634842 639 647203969 784 268979500 307 832427829 445 618691497 643 296685602 871 844176445 395 502321327 48 949911202 29 873101278 701 376617590 378 208438358 404 345823316 33 164416902 770 975168771 98 691698584 2 105348150 942 398262381 602 715296516 732 760987319 540 210978125 62 149246162 583 524995712 773 52897757 945 29692922 168 307376663 588 132016426 172 927007095 746 521979678 511 8146892 672 119391170 23 425055339 311 815607775 841 846698939 577 620875893 638 349160902 833 259711250 462 946425665 235 821678181 587 93246302 646 869060208 243 413461129 266 410710697 105 8278895 360 598469478 715 148513136 347 230098687 613 645214895 522 280778185 675 960282590 575 821796075 478 643737080 998 857734160 906 553794871 314 672026215 454 191906550 302 862081646 913 602623575 150 794939754 110 34037180 79 417797645 16 151399140 381 942597059 242 19556880 970 767031077 112 40282671 7 323061884 6 498692235 46 759930681 201 542015340 428 238192109 427 970755307 565 279069456 308 375835951 812 305922728 849 530279523 711 852276146 966 852514121 840 552417533 260 728110558 842 485011891 311 489973312 4 375505801 745 474929464 403 763920433 491 947745748 225 954433277 585 141154284 829 212233106 5 903114118 683 358187984 971 23747191 201 771903264 148 623065302 811 147827866 382 265491569 127 428538004 457 904110923 621 7890968 920 498021366 422 231394965 688 595172470 66 840528826 722 858447999 884 296193808 471 766401449 15 321448630 797 837332250 875 552347927 353 701332059 673 81500553 268 573935510 959 503498618 381 837435874 277 761156870 117 852093269 810 627773438 938 164631606 907 552140874 427 493354245 719 445265536 476 586582887 334 534111712 977 399614945 429 820465297 52 528325924 817 341328168 53 945184794 709 164122369 56 991002221 758 514215075 459 433021533 574 912405299 421 70762744 989 42715758 515 245794286 520 593653830 13 144283087 608 560126970 175 193091171 436 7267126 853 865952141 562 691374841 458 232681676 303 607899157 668 99244964 436 273613009 658 665513748 722 473157063 593 444478328 317 51041527 491 254236847 618 248159862 967 914776392 134 260837412 268 288090339 429 648985013 360 991957608 687 869772515 204 244899789 243 78516706 490 709470835 268 157480097 391 223536400 631 97329563 53 413899848 485 430409337 690 22902672 84 985210637 107 781015044 418 461488148 984 276035036 945 299078711 669 845880693 292 647389408 540 923149599 916 594241417 502 56934999 892 239299170 388 166996069 387 23266017 60 680058230 814 84449299 500 773013806 704 573431970 384 88732350 681 619741603 152 110416413 598 229181178 846 779453692 937 872844276 59 780221130 606 911527341 228 905794195 139 716079535 560 485570035 661 337998236 742 444840439 350 11409326 611 752971608 487 585372303 352 208866069 792 105247976 882 128932511 124 489577391 863 318897015 663 570622783 208 806411929 897 918909243 356 369828497 644 871082440 969 377691655 789 708256763 47 616908537 547 512242874 806 311046922 629 349909982 501 457779308 168 223498796 241 518754956 463 771126800 542 976223686 934 358341267 476 593163066 460 705063326 795 241958412 103 253922475 710 723272767 704 40668755 761 386679051 222 91142900 744 250632810 268 181856166 217 388322974 667 365419909 0 92652492 661 731256235 461 388012690 2 206018043 718 1155349 716 278348899 445 61798307 777 905163947 411 833048907 596 906658688 547 402107717 224 987618218 353 611653791 865 993924593 79 706172889 254 898769142 630 774400617 510 986183875 357 62322995 743 516852802 672 169471045 239 687887248 943 519945347 817 307062687 788 650384080 994 23210723 76 407572029 918 884031611 201 104063017 225 789243772 912 256768434 334 609212255 643 178639055 149 758054258 464 921149752 986 36512911 573 735429198 650 920468269 173 366361134 405 172743896 296 123597660 352 447565020 689 267319927 452 847056213 553 35660023 27 639626895 399 495658889 940 503851779 233 772055423 793 509584321 911 251063230 847 598558055 701 610899633 192 457377737 246 439076314 443 849815327 648 333075343 65 438418967 357 20219352 260 916763395 757 955194018 668 653149109 279 534466269 236 76761294 714 178071348 110 832793763 422 458109956 459 491386756 732 290501174 63 350937223 561 843678909 621 511583996 144 372060009 732 18347718 706 82519080 517 460704717 112 696748640 573 664293366 434 303343812 393 353165787 185 376578563 483 537870729 414 706947532 492 138683342 667 965775671 878 404886791 801 974668358 170 359574701 137 396598345 663 748063921 892 737904240 309 966239576 479 803216673 211 420223712 642 493163052 831 866449778 522 144060854 9 767855711 198 492296137 376 936097474 714 964266970 982 73740973 262 205602333 297 242807643 102 824981209 390 989355201 997 471470024 961 287909537 16 857467395 579 602538946 317 243200316 869 350666681 11 767551657 107 118182418 269 797683769 575 471556919 690 948327901 739 590380341 513 409787080 96 195907351 63 700388425 120 94038798 717 374472413 433 907049049 449 249643600 620 510257463 718 827772444 397 605826548 46 46633054 697 33544874 650 41145511 109 143720223 653 174767031 289 439987245 693 530520738 298 864365984 667 621624853 365 141411729 718 820066695 459 385759625 549 310860715 816 470102819 629 190707140 994 728217677 537 251225927 2 155974059 729 229144497 261 75427461 296 549987133 243 50621032 947 363508038 783 160357456 695 403740366 735 896404806 880 966441153 939 212345573 274 825570964 829 260027332 283 181257306 586 420828369 291 896707322 722 628347835 594 946402739 445 627752886 85 970187198 831 658791707 473 161876252 611 137109185 45 413118088 409 788295818 590 269511094 354 415741901 976 396574538 48 206724964 321 76683926 726 879125095 704 365227493 368 234056893 432 91796790 34 98677873 733 296631320 200 260641303 45 499348572 580 931870658 145 798840 468 152527642 863 540069029 380 833093322 212 572770108 41 863559420 487 974288133 102 830821760 864 723967309 566 7387519 751 395266170 296 246178446 281 829159144 44 318822387 626 260548670 356 273095477 303 599850183 335 765965863 353 101976952 204 656473536 648 17314751 250 365224087 991 535981399 420 965353674 205 144268966 894 701945189 331 554473007 39 504016230 139 430280102 536 796811592 836 408648446 939 85068815 437 741198975 342 251358365 697 16241197 918 25486384 752 296999461 524 678287068 886 638161919 590 792006381 889 167416678 1000 683676398 880 457311484 31 75587483 469 282840153 100 715687578 254 778260723 592 832098833 490 414582000 678 245523239 998 428074784 9 33100288 798 800781975 670 96567089 837 736147169 744 994362754 270 659168316 146 324237389 186 587460380 270 188983816 907 732175184 928 195144389 587 251110338 535 441332358 83 489353783 523 76715905 90 890826913 772 729031696 567 606741627 67 679863723 788 615039717 440 743884788 577 9101866 293 618710658 458 594251656 875 915543157 65 523180336 665 93045144 731 59300957 947 703375335 500 982612420 755 190023506 456 538201316 987 397683704 52 758059153 402 227638939 329 188374251 921 984921350 750 839754346 535 587977888 255 639222089 779 583063206 258 82329176 466 891017884 1000 703977646 259 705928362 695 290696942 778 981252037 819 188900807 505 542438701 804 272760236 607 808814110 450 405359980 768 211048253 362 827353669 7 717983721 546 5927722 803 926137700 977 297125804 330 696803785 445 357601824 519 771238189 676 471924772 775 422143959 413 856946322 515 984727280 471 119717323 483 647415209 433 729602077 595 588201982 114 123743341 227 646487749 891 801980588 427 127665423 862 460326786 809 690922227 677 764231054 877 221518021 178 480955886 47 402829743 837 301289344 319 619343165 564 756947793 755 838801897 872 741721063 840 566607768 136 82007881 439 472081417 877 256567838 875 807431854 544 96080645 209 621052986 839 487071357 854 869096821 649 187631412 469 479305783 944 854735038 399 149623063 652 96586461 567 874060909 875 273074085 372 665205395 203 28965811 732 253287004 623 258807846 790 982008182 541 457712084 276 859905076 300 676811203 829 276423243 917 23959688 321 899163788 894 223828598 289 498473202 850 738247782 522 919894998 192 431815708 909 163969467 482 159437750 617 362143579 666 140574532 575 784367042 470 166749543 770 215204698 479 261423338 214 912262953 516 121411864 608 522776146 648 569275241 526 872178382 249 749901949 230 400199983 124 453093037 886 339085420 10 668652766 583 503499710 251 772332491 997 75065990 716 432435191 140 505356169 233 195985005 381 940726435 393 649069452 519 926072204 953 592407436 713 428683862 572 524110185 323 620311579 848 841952365 365 962566781 566 555387654 841 168707275 974 707796273 301 764395967 317 771726426 858 634190456 712 769386653 196 32859542 749 77041197 217 722843749 251 539131025 957 611803625 475 883634415 615 233572348 394 265217543 248 268315791 938 730161788 730 869734894 979 680526648 596 40378000 931 106467181 40 100911719 702 665841124 714 263086114 841 995457391 740 326408713 425 963852941 507 671597440 257 340100329 229 683702064 665 302832363 815 829307452 990 854236360 878 172959375 349 641572477 36 656451836 878 375941152 484 76449442 678 496814942 236 548464776 361 259784795 16 253088387 384 864789225 80 973622057 838 713580443 246 554107658 254 521171172 438 963467453 515 512572968 789 8347848 152 822833945 801 64656912 184 724123188 32 94378967 465 833655390 129 641581303 676 129303609 400 246609402 525 438850821 200 937464240 400 105963568 142 21565892 682 503100756 617 898927676 551 730937119 793 62937914 837 507540228 838 734839782 990 461082087 944 637999844 388 907689019 1 444150168 851 257726170 824 628968710 454 971255689 151 435218046 445 215285157 687 447004788 480 661020722 445 288809267 558 712988515 685 69754249 38 421307152 409 714410641 117 168312574 17 781256886 844 576400056 241 113790934 598 103853548 341 495151058 641 630505782 815 914699940 674 758658325 381 170535247 810 477981794 82 55263635 218 479766442 344 855673495 518 518869669 563 312775013 553 324353297 480 479026881 857 239770677 896 340927302 527 253215750 927 548918864 705 669758573 541 309113091 205 425536116 644 895940180 809 451425674 737 419379920 899 105724869 858 267046977 572 311292097 577 108853635 203 462929047 649 376888423 489 398888828 141 796558735 874 77999718 49 989753426 517 734879831 802 19568249 77 803635190 893 321927845 377 364922531 375 226727281 65 309360836 709 714616736 26 310168423 656 28968766 47 20841636 856 29109587 30 474054914 603 437212596 422 92773495 339 667931297 370 939613533 187 598703443 383 87084752 32 774792605 542 360092932 956 136639255 993 571615569 845 662075074 796 616065902 583 590701619 362 428253204 146 422479819 890 575893055 85 755952314 68 178384531 362 813807375 436 271584671 931 677888198 675 577386619 538 261933594 192 653862192 344 930175694 846 53926382 998 497394589 923 134261725 895 155100787 901 607515895 330 816532061 284 527029217 94 465930539 23 25361751 156 50893401 644 265846610 204 867044376 516 63303507 843 881853067 828 655563296 91 368739323 329 262270290 1000 810339987 434 427893243 454 782965044 549 219967830 864 823669912 1 363478892 769 806728697 131 782829306 59 334651725 932 78781860 16 487036341 263 308524310 159 23195497 101 182656558 698 542489966 837 696931755 170 339961744 820 369393727 661 497355877 235 381264778 694 268496683 253 225093718 376 478325345 770 952822148 640 755206634 380 493523929 974 431031200 958 431302539 819 906799418 788 833934475 480 28544978 242 831142428 911 513384498 40 891346126 606 812838431 701 355630679 926 142033332 44 910437548 382 564908187 599 575280665 621 605464633 971 668661586 31 365384291 162 593782369 733 990095585 734 663400799 908 947879617 539 274868832 741 767279233 23 75923184 315 735448797 404 913174832 994 711664381 585 784239725 0 150858321 448 539688408 132 797231887 984 694804507 246 899594969 433 760341712 129 177889037 817 54946157 556 862145379 811 392671870 113 448907933 0 979954365 245 495681920 320 353008335 677 952259851 484 354102902 605 898322383 358 593193361 187 72330674 807 238662206 709 6319544 735 997592244 618 851760075 968 447926212 950 269612081 845 630223459 951 601610505 983 818050611 696 587515882 986 193911572 130 283305173 662 622055660 983 151678061 832 459897899 285 186991701 264 461520665 797 122903151 936 622200821 998 613317125 397 875175267 65 49440932 934 945276945 188 814084279 181 786972679 756 56991505 389 479157717 373 816171465 915 476127745 376 580584059 958 17212635 326 792312573 438 703664986 245 786826780 563 694255837 739 933789028 979 59788202 594 321826626 951 475274419 665 880684104 790 565976484 280 591435149 308 941500209 553 132616881 418 191163747 33 807357755 741 587110159 972 191550105 692 918448392 302 66284003 267 498645943 892 388719526 286 506939026 658 840119086 854 902350334 194 398665246 392 687116575 210 425326216 539 856879765 232 831795033 379 325850348 742 977310669 807 968664717 276 615450385 479 415780651 339 315604203 720 659724016 989 690197063 592 538735471 60 145052506 32 837119742 403 961090100 125 988482310 966 20407834 996 42981294 535 850339697 832 469115345 938 235584088 857 471745520 291 307506873 720 322716739 249 673387789 941 298810318 706 716387955 351 981895652 798 785029904 33 581483827 228 2036793 471 284383933 772 954013713 628 529102596 880 981481349 752 47955331 282 635305936 408 590642437 450 674678573 492 550369558 241 827031186 138 51474922 136 405863212 827 614713035 147 313293787 906 83805862 113 284707359 410 195418888 125 746538933 89 447548904 986 492530842 804 742694910 944 136207055 39 33972442 869 648572482 259 948567286 926 761328882 321 247747891 638 892721562 912 378655197 70 832243651 761 793332573 483 278565946 329 484089382 348 719397555 720 768616618 490 95553876 894 184089200 613 675604545 720 370457513 365 124641954 784 686635300 722 211170452 521 233125014 91 143801808 671 51307602 382 718800644 916 265455108 682 588946320 276 473766533 864 978381587 237 227654917 544 77498076 487 955642928 937 659591829 471 537614121 44 929949567 653 363385840 583 695015089 833 176860596 143 343635808 991 606597421 40 824903839 359 106995605 293 682829350 79 547829599 906 507316956 249 777675835 630 273090837 291 355160681 476 198873380 745 195704381 407 433429845 16 939410305 634 199435431 565 514258155 205 590364751 883 403436459 971 557437630 261 836829201 207 294322117 28 502635229 192 345848044 208 686121959 814 139881611 32 648427066 40 62622710 319 761500532 154 748952148 168 964374945 282 386214666 323 205435179 504 759363283 590 842875269 861 718691660 671 623821325 990 670801767 827 830388940 825 769524239 285 259415176 936 4573839 419 72750937 543 48382865 993 434371466 735 423872134 469 66726930 762 539131995 637 861525205 874 523949177 262 173178791 586 500072591 613 766988705 852 295602470 53 30451571 840 840539200 45 851824322 657 568481946 65 480825537 242 711042466 34 942763289 496 994770467 467 169817814 106 591715411 222 139488218 102 318163264 314 621025897 814 244429389 850 323651552 633 619040780 36 24266729 307 12684628 801 41388672 118 35373809 102 306986978 950 733881614 119 80860439 930 851757654 629 592338728 497 17568884 613 110574195 351 570720503 81 91930254 322 716118117 196 477056937 866 743417999 669 943087080 528 726439077 493 86264952 693 861405986 69 477405400 14 26616314 283 859278054 8 308575534 668 283656797 715 355425247 13 16411949 860 718439306 899 249694950 614 10787016 923 937416464 510 554680072 267 35991710 165 6711833 1 19750304 368 197404369 291 126132527 456 902155082 661 200331598 827 17011511 255 789511070 273 259987309 966 899874660 110 631139071 564 468796316 141 93329687 585 663717465 191 693409870 947 852716460 953 138000074 732 348229886 330 211236349 829 250112933 184 426943759 501 790422064 53 911179241 555 323883430 838 458685840 899 590263027 459 813877893 159 838427721 797 916601121 864 522656214 657 897261837 945 813220897 209 520723029 975 893433044 646 17349075 188 254146775 569 266374005 342 613530102 84 217132808 248 970144565 521 977601901 996 286055218 619 983610628 72 566634301 719 474778551 231 187859975 720 930647263 826 377924343 452 146428223 610 386927045 282 536467641 670 639018844 705 249227535 307 713043136 214 447885740 266 69125402 634 485285199 581 96997087 852 315732883 845 808952851 233 699094078 269 620906246 172 626373869 681 19692545 366 68220088 258 955855716 498 859096473 197 928280036 583 74617316 587 647027051 531 618161478 475 916039644 356 30232687 70 897133490 940 612055452 490 909407949 66 572775923 25 673635103 288 281374836 242 683463703 457 637743767 595 48205587 311 790742690 555 963901745 586 293892285 984 693759893 597 269534157 3 334666757 525 84284622 543 864708279 192 500090811 486 190282823 469 223022909 911 973719777 947 402405999 434 396331740 764 643317077 981 23184518 21 649579218 781 993983890 16 327392872 367 100228569 358 688855881 439 658607364 109 16529793 601 983654046 577 360039965 759 772768732 326 108751981 558 767682384 977 356001182 133 997924329 345 755526823 228 97524693 332 396773408 777 881687324 585 954246233 663 751444253 645 957554003 649 436569909 45 964790146 744 831218106 28 269800430 824 428983749 40 108176348 206 362691824 779 270320223 868 745225908 997 204662275 555 24751277 101 245133071 627 431096213 434 777455463 383 285558741 233 543045385 771 981855059 987 15197623 164 702497721 129 175214532 244 297491981 981 408957354 823 575443653 118 488789123 174 747493256 433 591224522 791 25582698 995 111839205 641 159497080 813 253401379 661 437571503 365 971663574 589 867695531 169 257278452 859 413898187 36 533418003 537 375978974 338 933847116 933 161422932 519 159811607 24 272423021 479 868678413 768 498539698 388 944085678 316 319981546 245 447923072 172 919683459 677 609297570 685 132846532 290 503366693 301 411541228 529 149187223 670 612026865 772 223008934 707 129594366 558 792882313 328 532641382 450 998344645 930 840184066 108 47705251 874 999927829 516 859642360 779 447335579 199 456528576 991 259017675 15 855170111 955 595435904 645 458342533 196 916799814 560 320018161 454 648831735 444 613691942 578 909526980 197 63546571 786 691508627 929 900640787 335 215480991 214 210455291 785 841420074 888 735150318 453 586496244 767 969389948 107 988649825 615 525870803 436 517641672 624 804961939 312 58562553 162 954771423 168 122967333 423 451982783 453 686288948 912 940313348 742 966616307 151 98734556 363 230302203 729 894928994 890 597642331 566 115985564 870 887368232 763 359442351 452 289270116 481 344748235 619 587784867 751 199474701 709 640471827 190 413807816 587 619133245 624 716244080 998 334699790 106 616579822 419 915889525 521 486485563 377 227081092 358 492454141 215 670780643 939 685479441 542 69604632 821 944845535 872 948951463 597 659902729 873 656269386 528 436274556 139 399141269 91 230331499 112 510447521 649 527272474 498 399698265 422 86649253 520 228460062 221 426867542 670 347721270 177 128763934 0 825595227 382 604829000 132 954428397 508 258147444 383 710853388 642 577324591 837 167152752 338 570259100 998 72771617 685 409391574 498 351464583 866 554939815 885 769770295 562 340147163 931 121868272 441 181322657 934 288933047 675 669596473 104 791226104 462 453656258 192 512513002 858 727627911 197 340175786 370 711884929 53 812855324 250 990115505 911 605591614 919 230308394 69 736964466 660 554182186 272 389088796 274 75527000 780 371082007 22 224028884 511 626275577 372 630981801 599 858787107 506 158637380 371 511079875 162 653054593 711 273775290 135 555698624 417 760360647 158 624793564 793 310647972 973 23399479 784 815190779 230 303061225 664 117942534 786 901234820 833 274436881 417 123787996 533 102311560 14 198038047 799 38292918 835 534033553 326 943928371 814 388604407 549 645562090 41 587191434 417 71490296 628 818270853 43 850099343 280 116751321 315 678821594 656 825503957 933 361624291 32 481917747 610 142248086 431 751869647 813 330382702 261 876272726 145 852649211 841 869820204 152 583106356 741 231117529 626 58602706 197 490258262 929 139235144 12 975878540 584 368041183 794 809482980 343 522500933 969 491940889 944 3789671 298 129883936 195 662609920 808 974946562 312 263985393 205 626647108 69 763427017 324 13239396 701 65199356 558 120450406 125 804949423 619 237549072 303 994033959 284 433928029 186 707003316 540 927254271 299 738620967 1 824055044 647 62961210 477 599863227 726 319735491 863 730372388 942 248605086 621 670775932 458 441318799 370 368624126 641 329933846 580 53840225 524 466865331 822 992334928 568 817631841 187 978358387 403 93781161 309 775429147 637 216637286 471 844148859 453 147970790 72 883964812 501 774960131 596 115670553 333 505946235 302 498855780 327 582337181 248 113948012 694 253356854 410 695277741 982 420011627 286 243118665 602 710184677 619 715984716 14 629249595 52 489323057 562 255491775 656 789556357 579 183737733 657 30840724 891 274268311 245 425056650 874 758147783 19 41258473 62 650205473 734 225895536 237 404155850 25 422607654 131 979655229 213 173707622 205 937543218 473 905528500 692 466988827 214 74968565 693 107443688 515 823178551 19 330458810 581 114150711 173 217561887 844 164900202 873 850650482 39 103153422 259 293518926 419 99882229 412 790040165 241 290884493 76 770485362 856 976909809 381 363799805 411 85332789 461 794473042 847 937072693 21 822611298 136 189718081 572 171046786 26 916269801 641 755704530 160 456497572 626 987929458 691 488536139 909 407466887 830 934784669 334 477908215 928 914069430 773 155484999 365 930393631 274 14434459 139 705514776 15 190957941 73 595918833 638 555984311 724 851707802 989 874157478 476 330919989 38 817655868 890 959833128 573 528692185 34 580061589 211 477961215 854 745566465 601 214723606 263 754062479 153 821455315 238 932444486 582 965435236 397 738727076 704 396668382 302 527183890 115 505536950 987 687845507 483 6558432 70 514820029 830 660973560 465 373400786 280 212356599 881 312208734 969 255832110 353 102947798 400 69232587 927 100989151 221 505532821 538 497404620 166 35321341 215 993546568 653 982512861 911 305121471 736 950824135 262 132336059 499 810686309 459 972763746 672 721914030 124 683845158 568 937348657 34 63231823 947 244651140 125 470657531 27 328345238 406 966920327 889 734255189 770 73230130 609 990023124 132 184697813 27 556451791 839 650194911 920 922381876 867 931892287 702 4998836 660 977614143 50 517526823 169 782679306 304 177411449 844 775242712 876 255453571 984 114719128 464 592301508 477 864831654 98 418704662 923 265128291 545 44460276 83 892097380 636 274521377 107 536731031 43 827157957 583 279702966 675 759429791 560 614670066 597 920369799 877 257186612 979 320645346 328 715525439 956 26715753 786 374435335 766 357896340 272 335523282 50 141453310 583 907555149 320 943762889 852 506376679 635 29809373 417 150400518 661 920468033 277 925639630 386 913835723 211 763042103 904 714870007 512 47127779 177 312398440 59 791470173 708 158045404 553 15556962 640 512112196 32 373436866 907 772881300 709 123941003 444 83458512 258 750698920 194 140790131 883 511581213 680 290082789 800 11939195 974 187523971 887 790504119 341 898764160 823 142919049 881 30429921 260 643297107 617 608695910 580 495529958 947 784695404 684 81384094 496 18871210 507 379575118 171 135050464 909 649175803 564 639979531 689 194869534 433 98903302 197 461439681 914 693574779 663 675504290 308 90182730 913 14181264 472 32044949 740 516196356 795 478102045 402 478120658 203 209049745 1000 15688601 805 827899017 165 549109042 707 797454019 451 25706640 794 299767222 490 662368807 298 466940991 320 916198630 577 23736558 12 663875788 112 334755016 728 374270563 209 658075475 250 581348462 860 919854001 739 829881796 581 28287385 277 368185447 376 292404324 289 452050131 876 918212172 998 911346135 246 603809237 817 548508734 638 665067562 782 951199232 447 208778251 67 99328359 541 950257727 989 17650355 840 559739853 428 723268362 840 154006825 636 906678188 888 978934961 19 28835916 328 775162592 573 956091074 198 250910357 739 210207559 336 660108273 207 670496386 695 530027549 432 50085671 9 179077032 679 755276794 516 118241475 430 288367294 106 70843011 302 596072954 435 426903998 565 680990725 805 233331007 335 388518834 240 891304786 359 758314257 593 890697567 387 387464066 50 487482824 160 744706848 761 702470358 788 999217286 22 534752839 153 296035116 919 565601891 512 874659474 164 470882273 948 675749668 784 264410271 866 86904592 162 306378622 875 949500864 612 13066325 720 875518196 959 557366751 429 343098582 627 182695233 604 212573741 75 142032902 909 18703969 149 701190180 839 793797438 268 881768900 834 746803420 221 257518843 644 301210690 667 216790266 255 981375637 865 396853993 556 298854134 658 367446118 517 817730799 379 348574976 735 334363429 847 174297216 869 385050779 927 554408660 505 594222344 358 743257597 439 806815539 795 701200579 783 81719578 529 215151625 917 217128760 296 164832428 599 689259580 39 323113642 921 106129405 511 737703534 72 318744025 737 382403249 541 424040571 682 227366792 959 493428516 968 640668959 966 145517820 808 287242306 125 778561164 688 232678987 293 476628516 531 611305119 893 605186733 282 507441615 325 783244872 265 352202280 999 517252526 553 478041320 836 914705766 477 230087410 359 562780752 126 395267136 880 712565175 223 106387188 784 619298784 305 254264833 232 33955019 770 302640197 228 124850442 763 236570562 195 903092784 456 89434905 706 324670658 488 154290484 203 822356028 884 765528049 432 532318143 107 93482376 302 97340769 449 936793486 784 817917073 486 122491659 985 992615451 140 101860701 948 70706357 191 625924430 424 59842654 95 46077544 746 314171386 634 909606751 702 900800178 701 749867062 124 980761111 611 667727669 409 130139939 37 786465315 399 3267467 631 819257863 813 66760484 971 446493895 594 561133123 366 427994760 82 565852647 392 627274708 626 818905387 714 753862201 731 294298630 408 6632771 659 939128924 695 190259529 318 444682 325 973125393 104 16938650 879 620170259 108 446405222 322 381639862 700 47416966 911 798984725 841 864071070 890 704261558 776 199146586 670 962440370 42 434115129 632 263471727 140 50008857 564 509616424 92 762933097 728 354778229 708 456437663 786 361219194 19 962302149 102 489720461 153 552825073 562 696049786 777 698246011 611 392876146 974 166649060 724 184160977 875 301173407 492 246069218 101 803636656 930 796717585 828 331977165 359 2197979 341 803767635 310 643652562 606 975092401 635 253192783 48 152530762 147 719703090 662 280317786 399 892694304 559 6985789 509 773939266 326 37167946 464 227321324 183 886634935 361 265891931 903 175321753 431 283325744 867 618562688 379 788590883 677 946275987 539 602584007 195 568068328 691 984175307 502 429563479 148 352636313 253 173193697 873 344712644 488 253081004 13 462480994 513 29366608 972 234810959 480 470586982 194 328423667 41 891253780 735 346666114 599 322953544 333 336974147 839 907876063 437 841168888 573 651700946 690 51567868 713 156640930 202 952292199 381 509693217 439 90792289 356 198888355 998 458759170 375 73122319 289 975209821 56 708991332 860 27883968 636 303553448 984 661104426 535 263798535 439 466263581 420 983386065 742 106205097 836 80187782 654 345539888 513 652769109 72 137393346 885 580427882 108 20138154 400 101999572 942 669858444 20 489640665 216 808522350 47 205063058 691 925342219 949 535819160 967 50752819 637 511249284 72 593476380 314 537927788 293 772076331 523 394218085 740 765244125 53 794841628 606 365825574 2 843085676 592 177896556 933 857169830 493 257354882 794 804553578 868 810447443 753 678600658 281 294212896 725 285207944 674 748366667 243 795465645 142 960632994 276 439034715 12 607625680 264 312664952 908 635713892 943 936562686 228 278100932 797 77070480 428 507884568 934 529868771 431 237733182 516 529216401 376 244337825 324 620304843 801 862779042 700 990377377 773 760951905 441 40037298 703 444350547 145 979316664 722 96518928 724 690476035 443 404401227 149 936741690 685 720160294 319 54797957 51 551275541 123 430197676 390 285595077 181 272840401 698 675138762 450 315590470 21 673475903 632 14287816 578 658713161 855 855972862 301 418875376 139 535888885 574 161901607 105 515952159 488 373851979 369 335662966 384 206767348 305 127323699 650 540843682 116 569232369 8 297037046 144 306148956 340 563768593 969 981587123 359 756592803 637 176892800 19 242709472 536 355867928 876 508212956 936 80693901 231 974707994 126 642936175 215 37661872 244 15989701 500 257175800 465 800313738 266 90565889 826 457067111 110 362817631 673 844448552 951 457028618 12 60250418 375 583094388 873 676757857 912 917455413 899 721176577 685 636376996 947 67624337 637 146157061 76 594293814 763 909797021 775 674318964 72 894835458 304 699691973 493 798288313 20 378959394 362 890459714 703 774709368 297 371942493 122 611884376 988 194708612 408 972425100 787 54141677 624 549487961 379 965453149 572 494936697 381 225891687 574 383501046 171 290150619 655 600734379 288 220233942 864 880172571 881 131207845 716 421415675 731 969476848 167 169352654 23 899424296 495 251591942 477 337232122 171 749311780 507 269313460 538 202402018 53 421637733 480 887326486 172 228200718 125 877638033 803 791413914 167 726975638 202 598927663 71 752763443 19 102976264 488 749245654 588 421200424 464 118851833 502 827003013 370 676931140 45 535385965 522 36906167 551 412244797 673 35241730 48 267617788 773 827619793 130 752208207 313 635693002 458 154896982 713 407966361 564 3282205 642 499630648 544 872011849 372 528782059 907 734341358 346 702563351 561 46550143 347 581624665 887 608924874 768 906082463 867 439446851 843 825362294 255 561958872 87 631084227 21 788428776 5 53935981 503 625091943 456 701373436 875 481919379 955 831540623 866 716303335 426 66110701 6 65297602 748 711687629 114 652901478 327 932215192 108 288031433 616 650064611 169 98511985 335 695806473 961 357254345 262 657600379 261 749004507 291 715311796 145 245540604 690 520109400 456 294642988 255 85158962 912 525640389 913 213663190 865 627431335 741 42003030 760 478292884 968 737276129 877 199198432 327 381097630 486 691121389 226 557104295 49 113617271 494 204927804 502 84129966 49 79931904 153 594572254 818 797693713 115 754981536 782 281953632 315 732859204 726 712656759 976 275549818 672 152643853 607 447794169 481 354652605 288 795252008 789 252230919 359 790580947 756 622722843 359 897340281 538 509116693 164 114909898 779 488018340 332 169962259 330 758705594 819 84744035 34 462511571 989 871816735 766 315771078 750 751961446 241 531359988 474 828125604 14 989724416 677 772792989 885 568416861 754 105558376 671 967498219 858 313340713 859 82532996 945 545722634 994 37666364 96 408259154 22 727556989 994 441841936 577 626740474 835 720308603 109 741327974 756 348510740 558 599479782 191 402108717 476 451726645 950 243431610 650 158571887 903 913689109 705 569002036 300 74316436 942 769626843 71 897195352 838 270234539 398 968210225 173 495311845 712 424470304 61 450555963 983 665311433 120 77371417 176 344455822 959 91907192 965 599757338 790 62304666 941 76523718 17 124104090 443 602776474 471 916433611 382 209787684 497 652963891 547 238435464 16 100460840 993 675613040 248 773488880 278 376475685 460 867508628 756 388356460 413 770475336 174 44776038 192 612066898 254 300971208 17 631818767 535 981336852 158 37892248 595 326857904 712 599328656 156 274092693 204 671886787 847 713134583 157 663491010 879 455774146 354 25268679 147 887695855 240 680319727 134 726197877 311 365862158 369 925998410 661 368876396 111 861207763 244 787119149 690 184511370 609 482233990 551 607784427 395 679222984 515 400117152 975 87544267 586 918186842 416 867204378 240 499465554 201 80118142 888 876811736 513 611013507 900 873460325 901 884942535 535 120073371 337 951247781 644 744852245 312 299457545 871 342172610 740 80075158 564 775984558 337 196148651 595 746550150 239 377563476 67 502999177 701 105503816 136 318713717 639 659931733 132 208222114 246 918126711 4 186753168 939 479337418 380 833746875 283 758997129 502 943161599 54 64886552 144 313812347 982 210411283 887 378505203 819 603405488 519 952364810 129 537069731 504 239027963 889 644628572 700 783205735 800 307256302 600 270047760 426 214994342 620 4687344 386 220948725 537 180151379 592 239288107 721 826849214 774 400818486 853 258183800 527 353205125 570 128963370 838 824281762 549 992565331 682 54098030 338 359831485 63 233970582 287 147919662 518 504537755 625 33686530 990 682593941 469 181646020 175 357143473 268 11917922 511 570992300 292 471738209 482 211329052 880 212184222 988 857496471 803 245735204 26 177180370 6 84014001 873 631955587 168 291173504 153 715415115 598 570858404 925 589489653 205 155533164 951 825999603 382 235372645 379 394684030 586 873395422 199 227117140 151 749929305 182 815739850 172 623836167 804 22592623 35 506254234 370 502534621 626 994279127 985 952942864 168 656142213 80 900745889 862 446652102 204 205701248 455 94187286 16 914059939 120 696383 742 459608009 989 207783588 594 803046133 352 510136876 954 333374758 541 205270601 600 386959336 155 782138523 371 70474102 875 406498489 626 940204261 205 377719883 225 508356540 892 200723803 545 584618555 891 136072070 699 370513224 691 872482763 151 75830434 608 873719599 752 254273018 908 623492541 945 487908124 725 198796552 78 89436396 116 651075400 569 814715217 276 35547431 822 133951535 17 581538366 982 865646962 111 509259776 122 525347719 800 139665226 367 930281314 184 6666068 374 435686164 571 880287477 446 281677480 894 11592307 892 6810528 416 682473511 342 607375096 462 149195819 998 162749194 881 277345356 815 545250538 33 577901191 263 785664570 457 966859046 50 977544055 365 932512601 653 981501181 273 358685154 72 393255306 475 300134351 428 960415862 716 262114956 660 604598098 344 750748133 936 293908462 690 52230467 734 67186156 755 603494117 12 121957525 216 301400523 825 325136096 136 152861764 254 424867113 709 535125083 154 80518857 89 874729420 509 688831517 742 261059381 711 433406688 633 973060551 977 50319781 112 963044325 963 502113534 512 643217492 622 492808078 79 410501883 848 387991891 29 359379722 996 628001204 664 499840663 300 143696464 281 671847717 844 677751015 136 782445650 326 249587663 762 420016011 434 817315228 278 232649561 629 702203261 526 546645398 761 654810940 406 963623677 711 564944055 409 487961807 788 161241980 341 734700469 164 124443544 806 526909500 579 78718319 424 58664648 432 788243874 549 900993827 597 973817848 328 6639314 491 455110485 801 701686554 530 487798780 617 121785992 603 243173305 573 349995869 854 780320681 700 912481389 80 752593686 69 47704122 18 774050650 18 36660149 318 268170493 728 387525190 844 909532316 357 426416793 46 529713512 108 195967864 814 167079788 245 571522566 58 171294770 725 912729837 94 641137763 565 280748546 492 219484440 705 750779721 529 875887018 139 42124211 996 703443417 803 911668594 399 212651210 706 340292222 250 319806951 40 889632282 263 40793015 319 483647468 226 385065170 109 996495364 958 255967867 383 105285974 185 518123760 417 250507977 666 679661398 519 507187286 268 243652552 938 582766892 993 657837469 905 618003228 472 931670599 623 201366665 799 4280371 259 697279941 624 84825822 310 323023226 503 687155084 6 372057433 95 870231760 973 366882646 403 324856436 339 654649453 550 659662967 894 250180281 472 476158331 601 370139568 940 223476105 424 543032203 579 307586535 701 940729788 273 22945848 906 95394004 522 675966240 366 212371506 386 991926475 179 57590491 553 356688655 132 847980816 712 566872359 614 985794999 162 700938705 833 356968683 180 950823171 846 16657570 372 953040535 721 169025177 944 864098875 828 695826344 217 289160088 616 616291679 676 67695223 267 35576078 477 764314930 177 855584160 411 533205639 996 652942242 529 692062474 874 634752622 548 759640693 462 574057000 408 976777936 339 880725799 422 994807054 662 961711080 285 402329899 126 884459531 133 812612310 589 221109420 392 924735823 483 208849403 687 750995906 574 3156140 201 227035750 547 422397244 846 623054961 53 390709139 837 951600239 825 959203360 171 605323203 580 184659337 986 912814718 43 822032721 697 942723496 279 39032988 103 57398451 926 471549667 510 88369582 98 536460729 944 624991569 255 366442167 980 563732136 358 910353554 998 66024897 554 952505632 643 50244340 370 788881817 160 426502027 6 802781176 639 224126392 74 500413118 461 590948617 637 563555846 981 565402535 886 810677759 912 967104958 413 717475588 291 411030163 235 860229253 262 92942588 775 763656330 451 297629085 876 321308010 906 279753584 858 319876252 709 855270061 650 696613965 137 580866895 988 712191170 54 187025664 436 406972721 828 585419348 801 60475004 765 394025973 898 306678217 761 348609896 585 901957178 577 767945186 448 896513760 339 91219331 835 742094007 976 753845151 314 899263117 486 134756523 20 108003645 632 349804776 35 458776062 208 355489030 874 605614611 576 351118447 258 19777637 987 820238714 567 795333187 59 967459069 450 590855798 428 774980983 10 441002880 81 213337603 845 682286538 542 461420468 654 607903810 959 349048819 775 517312843 798 815131692 746 193360305 963 125078032 609 383389222 198 992636166 365 253716181 321 170688796 706 863071666 459 690153690 387 91378456 778 69738670 933 36225312 608 599066632 219 589353150 844 34420790 618 292823822 946 987558494 755 501295938 264 467813870 717 289400275 141 235483233 682 867545092 321 75212232 869 771264066 276 283152968 108 383816479 769 216656026 979 833387910 575 127968729 365 306163434 60 105945334 522 752343506 826 183561503 596 337716869 621 721239000 548 163255085 988 28184079 183 109525524 622 330267955 777 111068408 921 154477572 849 100998930 991 603980489 575 522660590 127 308472993 88 399523770 250 70918619 50 216924362 685 980881462 234 837097419 395 959188623 260 542088943 787 618534831 308 333094038 832 548541819 876 328200398 337 451737808 567 259539465 343 639801539 751 273735042 838 97109513 929 496924489 620 812535817 450 193318591 287 241969823 616 81990771 989 159492400 330 772667443 750 965971624 576 944944690 115 898696734 131 293884519 371 989849039 50 241532894 637 823772716 683 145538635 527 422880306 697 650884832 221 124207911 968 560154181 324 491715254 41 933189415 854 929760703 309 691291026 12 332331707 829 438128391 444 304455658 313 860005143 810 382032332 547 375555613 291 772915956 942 393910815 885 762496976 197 136836185 568 107515442 173 357659901 184 804948250 424 723904396 188 439565194 72 107506989 753 164497309 744 67511416 95 595337005 763 367685559 17 74367806 512 69783187 383 460375487 285 904316040 761 935599176 66 691784414 407 694954214 611 284573638 173 403030471 15 630061682 507 897314089 811 191606748 561 786621791 364 816779908 369 456022204 743 659361756 416 37487700 375 525810564 592 389787584 2 457135903 436 22686815 310 941320712 765 554694217 335 572845356 273 583511753 987 44711066 609 924816865 257 905244539 227 853231370 721 982454752 623 22888044 116 331421077 624 5352536 398 961310876 806 722269367 372 158658630 880 558748373 671 789748163 437 699334625 821 414516858 803 682822279 501 63335639 118 964957391 302 627199846 47 842861493 543 768612144 698 851863365 82 554086412 371 394437216 906 932701077 239 452580005 27 17907305 650 731746129 417 447255728 663 238573282 351 282396493 490 590318268 788 969475622 992 737157415 246 74857114 515 920913179 391 389315244 683 570031540 674 219138879 794 851305777 962 734222471 893 957892440 412 651069465 464 18295801 50 490150968 540 494983693 881 699116571 214 246678937 256 350008623 766 456864120 424 308530327 553 481524017 994 652498196 531 608373138 989 774721985 434 447706858 66 584290067 675 522243713 386 551392239 116 785653171 833 143711706 908 976749105 690 613070588 572 210992673 235 501006186 405 151963882 90 878111317 244 487034715 357 39981803 778 91172582 267 843945299 657 961938936 36 450860666 857 21765398 623 81197587 624 668547261 959 889595186 299 834188132 110 39357554 986 569509452 446 594344730 465 290647576 370 48489217 849 894510847 363 724170844 876 480359490 25 432655833 769 766131851 813 375279910 928 564173028 273 639274761 787 894023607 867 707096940 611 76782142 239 815833873 110 147530121 821 139437731 395 3207081 906 428428273 30 755243363 709 570118406 101 723703396 615 426167577 477 440976917 957 572107778 936 377283124 652 161375305 834 935121371 969 146704128 978 183686090 31 484259533 290 412703488 326 970996018 516 162296853 553 206169517 5 845201618 10 72738301 356 536932446 101 406882013 832 504123460 485 102200779 953 308273307 841 33853168 372 314269825 506 778022038 84 884955337 782 318903811 319 32801067 7 880078475 407 307041947 155 843195410 248 302580631 364 952334706 455 879307225 777 12955388 544 231868781 260 319609630 150 35504176 331 201823137 902 664597218 853 90237837 140 402241272 105 948551187 641 493740972 344 555007046 181 624074494 932 560358924 859 201650173 390 624383973 166 709533132 203 448306668 861 793494850 786 15643916 941 479021143 750 160016242 717 853931277 377 852229214 629 27746902 802 275208251 857 934208807 74 468066570 111 479137346 462 556514164 326 938353963 834 544184381 468 809751665 530 653771595 191 440322811 866 154320570 548 229988957 280 678014767 266 334603979 357 311707221 689 742403471 948 94519637 763 116282478 109 849173166 948 601636292 359 534273239 31 684830620 896 336831570 649 942919583 203 896596937 62 739931717 528 426403368 561 680459787 305 70232244 455 840028183 252 457256955 321 692757766 906 407961971 793 974805351 809 71347427 580 177018880 229 937210878 205 632725704 604 358404677 130 585685353 716 51091733 285 276284005 309 265765541 66 685121650 577 683363188 392 973580285 409 652727682 659 411271129 49 579786020 177 652516621 148 824131194 876 894526727 157 652591910 638 147161224 696 245083263 206 236231437 343 505000879 603 857676763 240 7213116 92 23900916 707 6308599 468 412221936 580 770170925 107 14105442 835 700012064 310 86471955 533 900090113 339 38904578 912 963123592 334 21134934 450 357723133 934 258817160 24 625673355 265 507024604 280 98246289 597 684599292 621 506578435 844 137093013 531 203042956 218 15741710 683 660096358 890 759135262 427 895636391 652 579519696 339 939635179 996 477718306 613 717251544 172 155045504 483 689774343 587 220097518 619 175503781 613 208545195 881 101563438 490 682260940 912 361950157 530 43220682 144 398156098 996 51123667 249 833663901 409 700685786 180 97671797 790 10992556 928 468773135 136 614318225 279 632253697 384 47928998 991 690497814 286 323324408 254 50959328 638 253198126 643 348475985 562 574412091 635 934246792 328 546718607 67 367885515 309 478709285 585 936546307 181 517187284 625 11775177 127 659351271 115 971496438 532 231773983 963 900583223 3 10701150 721 50699255 740 281641201 666 922640383 330 948708589 24 301374656 672 509726258 123 505640596 528 635624529 20 538732326 984 207292525 389 890175072 894 39654190 284 458005808 766 906981266 95 752635066 26 776982766 146 941818869 867 330736304 871 959064635 261 881637268 97 562888288 268 268082351 181 406707591 750 737614547 176 309328084 389 545761951 474 781774624 917 930735793 936 825628082 111 898868272 575 351352015 357 109849535 639 365915868 647 676614652 424 620698294 261 802910666 33 311164524 860 891880178 941 536229268 93 733113789 735 990458420 102 54025183 592 651259130 262 75566665 823 655397443 526 450001721 496 392587806 282 296116365 721 265730733 914 611150403 770 180564426 861 822518188 245 206808938 898 730209134 590 178454075 690 717564323 254 792299782 23 583315308 162 851108788 394 640374790 505 397667119 953 23711922 69 309594103 126 98073719 118 304331004 600 345210444 907 690391903 789 54847463 796 273949976 859 369887858 422 965141122 606 820197007 750 524371825 716 616535003 610 445956914 834 18564923 923 678714899 857 959051366 587 410219012 584 143896139 846 1799568 977 802433267 291 277531479 689 417670990 838 21177023 439 810713418 952 213537520 697 214417472 138 350620504 105 168868156 964 926426837 795 655843671 903 488688803 157 577600830 704 648925878 998 350281715 846 764815486 634 377154587 22 830076879 578 460695879 718 774086980 761 104473069 334 907755641 31 422048612 614 812752303 862 768758524 669 752277610 372 152409940 300 839088515 616 63575890 140 837230656 404 147517058 197 161590576 757 766069011 930 646359642 723 570996887 703 401202222 526 399184220 660 690182876 337 418414634 532 765602544 693 86224539 191 93542912 973 336604693 393 701101882 352 222345511 105 196737294 600 65965788 460 291523890 365 160446391 186 454615382 924 312026111 32 270379324 640 824756453 184 646231526 203 777989058 858 845138339 583 876105622 831 479533907 771 910566070 205 202220773 947 459660311 723 394045683 336 976823453 301 106844367 875 847026275 527 795303547 458 32067597 350 856625231 687 503128741 762 875890558 70 526086975 34 890255867 954 654752925 678 719401521 985 217915146 183 661378047 337 22390695 224 568123805 887 131946057 318 548740101 652 864142935 163 569471628 361 977394091 101 748583167 877 358577365 136 322342865 249 647875415 313 100330046 745 395715418 932 267066950 789 309335415 885 665115456 290 485121944 76 455820835 683 34426101 470 1824803 81 579278105 185 970267893 977 446953815 733 695769253 724 949277744 630 233244817 552 148192086 125 130072128 602 375030511 26 127451253 682 689699982 948 978773354 244 261919359 293 28545427 365 74273047 105 400904951 852 219996549 967 118980545 848 774495765 865 169123032 318 525283281 171 470257173 5 658318280 639 902203329 106 462680629 753 767331437 614 871453825 143 160277200 654 772395655 133 946525040 879 157085458 162 366634878 218 787262079 599 456863147 182 87232239 857 203435305 70 256499009 521 357628129 442 38623585 151 613922593 138 459911137 175 411441660 335 517574922 957 784555747 375 180423758 837 479349835 632 394553579 848 137785980 237 574267321 646 327072150 640 132411557 935 332107165 471 81612614 254 315232425 325 300653975 528 507077899 594 441059079 162 451660243 936 166661017 300 975028673 785 840801315 584 294970984 414 663568105 660 445265501 323 742949419 255 378661063 440 808084678 169 52574001 350 362190333 853 974098070 522 38184889 965 392791119 655 500746788 315 860782297 314 211902005 759 83633076 12 115367363 194 518812046 875 222632388 883 502043480 857 990628710 668 552564955 703 553092761 690 878659492 581 985970504 714 290282306 64 559194059 812 563877100 125 110112245 748 604396605 195 660439025 430 953867523 402 923592047 791 783884032 171 173653986 937 687521242 797 918799625 521 263574152 498 373292960 149 268847494 208 567774713 217 102875802 979 969381330 351 303469966 467 295151797 763 425380335 251 67159426 542 825441810 57 802953097 642 170463985 242 718113949 544 729599178 306 632343181 748 535622424 15 268402187 688 172069290 545 732754273 84 813608013 910 922519744 433 60913984 909 908623229 661 747095277 639 363109643 290 236894603 284 994086173 944 259496161 445 798018554 209 371245435 360 598368122 709 537667229 892 986745760 963 516395758 762 248013686 166 799118037 10 989780715 546 765009135 651 601486806 175 394967452 834 849955675 369 584612101 570 219894906 120 465356704 734 746776377 332 158670303 556 179523541 184 122979199 266 742523939 13 158671005 693 299130824 197 855847727 80 86050964 393 660796909 547 983499186 538 247453711 638 952953288 963 135571996 359 660237388 956 62694491 886 146349838 957 35087529 921 20211320 359 849070224 181 367113614 994 269281037 453 93285274 336 820686566 188 213663225 229 562200941 96 510060557 684 739395784 679 409588735 429 513301997 798 806106452 585 738513964 770 150146431 602 76695387 695 964789038 130 189164100 501 618894908 458 372939678 629 831509076 993 789484000 655 367114822 890 155015818 63 422659027 126 233125609 874 614337959 165 231316378 691 531505527 409 558727640 964 234420416 281 345467397 503 251582286 750 775924093 598 891231741 781 208833958 79 471586504 214 426850410 466 624694071 661 157795170 533 613697311 107 671467642 989 481032151 157 549984510 628 939186642 285 624325595 616 201882512 339 306301082 262 135323949 358 38584184 404 506815707 174 892939365 166 771373128 99 263602487 894 619054896 772 660577363 866 886823749 596 756972819 629 952202703 124 51051184 751 134787389 968 665283496 945 184013394 472 304962545 904 568061267 743 545622638 826 312151430 49 551006838 218 834830332 106 962509464 205 84981223 620 321723338 438 589748136 843 568548113 125 322172312 860 933241388 286 261932513 587 84960630 82 352175020 24 703394198 828 450080611 777 687558582 226 793123668 848 576710332 27 217031016 950 715705115 477 475977137 640 700900020 560 374613250 532 854971074 166 285198987 274 379704165 859 998357383 4 871617974 493 471278814 706 779622646 755 255142537 900 475553563 370 758180298 817 816920106 246 477273349 675 231630279 85 94969190 318 962535149 497 586733804 690 978760182 946 703871301 881 656745662 359 688460237 354 635755523 626 512075664 868 335881112 749 587408641 503 406315432 374 135864292 580 32848080 274 143524583 812 789123840 553 13141013 466 31871478 814 151374268 550 372397919 474 482689373 442 887901849 526 308631261 977 426366183 731 960128297 198 637516213 860 554492767 950 550123634 32 326621407 453 133570690 942 80482932 469 193430252 478 198922480 967 704998006 952 528577982 833 342013541 150 282959747 165 35986996 458 547899482 993 174536904 543 792134656 793 92524784 478 755728590 673 483220963 168 894582067 637 813058700 40 482147428 190 623405511 330 996799259 185 131889675 50 317470109 465 277818132 77 655913888 472 16375354 464 763426975 544 929254701 68 195578132 750 979550644 58 119636813 257 360987481 459 472584521 358 214464975 855 788944767 242 561413285 504 707722919 188 301127267 502 491750866 783 202603444 828 154670536 662 450170076 22 503230245 852 865047221 319 299577074 448 570930735 35 219992788 259 23010070 164 887241018 584 28798382 605 802995122 390 8237782 511 610061675 542 416043088 153 195961105 543 646497602 246 421873066 904 860441110 197 708338261 966 95788158 89 674529579 567 265262829 423 333744923 591 723845478 276 294888128 272 370746425 642 588400096 241 519727929 461 248951282 734 190299342 67 565691362 943 589167365 507 49745762 428 683999687 200 422293043 209 647288476 846 227354563 791 806167461 481 521485340 58 671968413 73 986741002 478 499762126 740 380394946 157 241988014 335 71686048 476 770697467 847 981741943 546 917924610 808 336807578 182 27986625 375 505078656 490 903290817 540 949520441 167 259963076 301 647320147 452 151367493 819 279334714 705 374358108 687 913743833 781 106373106 203 884158212 490 166636759 712 335213656 657 932729332 457 621303237 145 305791565 44 235253489 452 973636817 196 758264581 304 966762542 270 922176891 154 997151218 882 364614574 67 980385727 393 112201324 600 359067552 801 407311783 751 234364001 818 10474629 906 841577624 808 496493998 31 456339137 15 889886027 197 743586646 848 925329778 35 488617381 590 851676355 350 857537692 627 190199458 963 30470710 756 632106499 306 540539355 346 875957711 560 86998773 366 334817167 791 997406733 164 707650696 153 474718845 586 280370496 715 639705099 443 695182370 181 486339546 783 299710518 701 270857879 506 562000841 585 757220318 44 406049528 875 689256476 451 571750344 333 96605295 260 466781750 340 249049098 202 597466789 694 717496461 185 645277652 265 89659802 614 970838749 494 507095630 954 247220565 666 289144447 296 711196905 604 766324702 162 786477842 960 311113583 802 946806199 587 335362965 79 479175866 532 126371524 955 712301405 375 475801717 426 619244999 515 548211267 896 431219083 239 263183699 83 570725485 480 939038246 464 603852287 582 105496067 945 219140812 120 418026150 769 339685788 517 615721457 685 70607036 480 711367368 370 387830085 160 556385885 725 869079038 975 462039060 15 746111402 137 302063349 590 513552322 227 567346669 298 1294521 428 767485490 456 679459822 200 204710423 905 113004030 845 94734843 897 462415492 951 639699050 693 820166425 934 96581028 662 357938387 430 135716513 513 424356183 383 747432916 89 282661989 879 204210334 190 143667234 541 454372843 351 979744152 62 221673894 292 198600862 170 768835907 803 675730381 263 430864534 7 587298346 755 555711690 975 253671643 116 322643460 501 292870841 106 634754404 229 497465727 254 27608083 246 945850461 52 120372107 364 128367736 770 971143804 514 803466695 727 533582867 182 895142122 538 819936001 400 717769508 843 586000914 366 980727827 974 301921058 6 316522512 517 87863699 173 517902473 402 37290075 420 488985416 48 29774158 207 345321418 612 488272614 681 294427346 472 176972200 143 472612988 946 820331169 810 559923678 228 897329938 271 167586018 720 302898154 36 882374945 604 763099430 422 108469256 458 325933919 793 622809625 860 531650638 75 476812116 22 821727457 77 611542623 499 128103046 196 750024433 671 30489915 928 646003585 590 618013052 522 811577290 557 424990743 238 233562211 811 12828716 168 895495410 965 533558517 694 737062151 629 279120012 705 906175066 123 511507335 414 170779955 503 668814169 680 128521259 424 587130058 109 762040356 763 69341828 331 961704476 733 778713343 782 690776726 912 535643513 388 44727609 575 481119227 967 526055002 355 541605515 264 727220697 637 495399675 455 172796702 122 294217221 865 431857531 911 355520277 423 411806916 567 887448370 51 153994103 903 943025509 814 261781315 546 943538042 585 10437678 967 593463872 360 223767173 229 342311811 915 801613429 472 442203952 585 253075021 701 542777053 741 775274373 224 748001994 710 680152575 572 495531154 598 961896243 171 646857374 168 316603051 437 325481198 809 43066407 658 858131488 156 26350339 727 646234271 175 143395426 26 531025868 127 6001634 196 455517315 646 872921258 37 430778539 831 857419717 934 571770248 885 251476551 587 262228101 879 453752919 247 71153908 322 632963700 259 850037793 16 717482669 795 804889265 203 983556753 381 312389879 195 560417752 974 354169743 596 406927094 711 395877556 560 640223215 188 935487030 980 427037389 770 920793718 329 772859203 143 921051639 898 151835274 256 958337698 764 957273299 815 251110963 353 775931248 819 429887595 29 322392473 527 373090510 781 251803741 613 590107869 32 866568190 662 857682453 339 929284483 400 248552063 575 782502342 84 530087930 805 726376138 923 940575771 299 923685943 74 924890743 572 288934642 252 332588636 971 89732409 420 300632985 814 871279522 832 749101933 7 551407328 64 981211339 991 671714010 261 514169850 736 374960906 100 376133838 37 177945970 314 715887945 648 226245713 169 407725122 989 52403567 59 642079742 474 592510863 868 901436662 612 137163906 495 481728222 871 729860982 119 768555697 232 359307940 937 672018133 882 395994482 724 381575596 535 549247908 53 872264140 748 286620749 102 25578376 507 892158474 983 848975020 652 723538748 451 280598151 845 821809291 795 979005962 289 607847522 598 965158857 268 837398749 433 25965608 262 96838854 701 477166433 624 876971355 693 604008107 797 692656050 13 39142528 600 751011939 498 15202002 363 197433336 277 948131200 743 335538277 215 64282273 385 244819669 194 652079186 830 757756650 734 311202933 37 468450082 423 363931084 221 56995014 597 201570985 957 189903375 540 164170818 124 167333088 511 592880649 235 744970442 665 555309448 861 616274924 388 437321687 626 304382351 568 736690419 810 193811726 764 937836705 838 999958436 868 962160723 668 448697850 153 692271181 22 122613804 12 469311638 968 332213541 570 638957383 65 894685451 131 146343841 532 464202585 422 531031304 312 202908531 346 844877393 951 360737722 738 642910741 143 417013348 634 560574601 764 414127335 728 815938227 128 434296965 590 400798398 98 703222443 539 150417306 231 823783197 720 915306269 387 50613259 573 885967379 152 786585559 572 726537806 975 155829666 664 175964337 282 766407589 803 526053751 439 663306296 217 871832633 71 506647623 77 447134764 864 675873192 893 980034833 873 637769152 89 246823418 864 717290524 564 470032345 577 624710079 543 530546866 441 179358108 568 584570463 661 736983950 324 561753341 742 381177665 473 393228298 489 740906185 56 357687734 312 394807755 765 621898786 200 554431203 972 331137219 579 23350864 222 952147853 302 59751521 634 422874478 899 462771274 553 804818869 848 433858967 832 991422590 745 411315541 965 932904589 611 589979561 367 142101500 124 151907626 360 192736030 729 996953418 905 712100915 14 265051729 227 376388240 196 685084793 878 751091789 866 857611852 962 53886766 711 805965548 806 73176804 844 247078756 173 872555937 793 460780301 978 999807835 475 372655835 801 835168892 692 882511374 163 108064268 862 441714658 77 273325970 639 843151547 756 668124682 465 404903857 6 835461307 493 678063643 272 274036029 597 134078515 53 381165230 234 936150668 206 189726437 376 738865625 816 594775732 584 776070831 285 226026272 967 63355147 862 322376791 300 523823799 772 841048872 855 920483904 527 825598421 925 43202550 921 718000942 578 619581621 118 590005083 148 299230068 667 32102448 989 346176362 420 928493387 588 344239099 698 614525021 568 14830132 0 20759763 676 406257793 44 707861057 758 759273872 660 580704161 233 835595300 155 233437903 826 802878315 930 927534151 855 39244580 247 221598921 142 396009450 821 245217073 978 173937129 812 480050399 815 578428853 893 722569425 897 697604862 959 184123401 562 402312207 656 95681228 748 525539725 449 89980231 702 60346970 87 796555013 460 246138629 457 397894481 406 324301066 412 255166567 75 612826028 731 32498679 920 129347691 733 453903887 22 556429927 205 958664241 996 864672612 442 745354055 834 18201801 387 32454698 867 791428729 781 187432811 493 489882714 544 829852826 810 824906491 581 899041215 952 544363894 312 29521684 278 16417840 206 976192914 922 812082762 204 572980177 511 315165635 866 92749570 243 359852168 976 94724822 392 395789322 543 651434661 131 170690399 597 238140875 650 20824576 917 127312383 960 915973412 816 216612429 240 196629168 332 572102433 499 596571898 213 560641527 881 895653402 399 548745 203 377548006 318 595627722 917 999520810 594 764447353 371 608125142 270 709551302 359 491736245 800 415601961 193 476564487 616 551396859 594 294022574 124 889240852 328 915835758 934 945095212 653 240398205 1000 947710460 938 777342572 232 921820026 248 552045810 192 173241163 125 217427003 86 90500171 899 802627007 550 890103192 278 510153162 429 911201458 466 208106249 522 512586500 336 933942062 971 148448578 364 726534009 613 886769745 62 724262111 80 905213564 619 298559094 833 380513406 162 785688104 739 558292652 860 846753693 342 931482368 502 324879412 822 357229880 509 661824722 725 131063400 408 414963178 745 325845939 945 456342840 122 924754745 461 156151262 743 152498177 735 564585764 270 435422917 657 370790526 241 122892403 524 317196877 335 363606020 285 179061742 829 145021904 778 375328689 729 940018072 120 756962878 168 897855467 344 37026439 15 229973154 543 304063799 453 446049413 932 60035047 626 607910197 907 2976707 342 966724358 759 509057516 783 350044172 257 135876727 71 688839837 98 765188961 275 141603607 415 983060214 628 227005601 668 934079370 494 218926950 875 743300043 593 283044357 326 838633898 607 855089467 283 674430252 26 961745920 968 977474053 940 565013886 125 721394792 184 4450514 551 448788569 183 434387900 879 550833049 226 918940552 782 412147949 222 837473696 11 315371157 273 875863251 910 334545168 32 181260700 102 235469103 957 787558259 381 744861678 36 917588957 679 851942744 916 197363807 629 757668239 615 28033309 545 860732272 891 627673531 315 798354672 198 509232343 638 496230310 693 121354427 265 2731188 343 390543313 833 792635496 554 33936299 788 725342531 596 709278738 418 898915044 986 702208087 757 693372296 932 708649346 940 135140991 620 908547599 405 559258448 734 661240584 946 392467203 299 17209875 279 299376154 887 911029870 519 613495098 944 27500186 288 465518749 519 786361071 464 720250710 202 439948580 494 801529705 203 977650211 789 151801389 315 5531814 411 382019670 266 537001430 803 123479712 746 221656373 315 738003465 470 460766673 795 773625809 382 205907862 535 715143751 909 880805129 296 424048509 527 375532644 475 800770406 10 376409758 999 468297030 805 217812943 681 766295998 167 13218487 247 316546728 937 987847200 537 842208060 243 66686953 268 390994342 241 255549071 315 636018139 454 561349658 911 140426592 230 545623109 988 161806719 839 937435323 67 552643111 911 617975868 308 417389156 341 384943908 36 660673211 807 203263027 535 622421649 239 491214737 903 724627236 133 861763278 207 670869236 164 245398097 896 716765219 798 267551682 917 601423133 44 684813011 964 382077304 669 547043133 531 314463674 62 415437307 436 15353354 479 819668098 335 18070267 721 399980548 751 917169404 587 200956716 27 649080351 291 774135669 297 594411558 832 879685806 433 147214864 492 655097181 220 848998990 953 963858465 357 972520144 198 484960878 289 486349928 704 820584798 371 299096996 135 687438311 314 680580069 756 512799545 785 769632056 287 836265506 814 525075278 483 290978383 51 715019952 448 739054096 312 702638368 595 715717427 115 233322841 715 126528479 967 741199169 547 353070625 550 450888850 107 739700489 385 637923683 109 256069849 378 111179643 407 889193486 745 625234381 445 480318973 979 434629925 811 80789826 589 598672141 218 400058505 558 257883439 28 293853670 585 144682994 444 667385092 260 229858328 684 894442310 861 581158120 652 126416632 811 980095522 872 541777686 93 142575729 974 246772513 327 687449475 152 652565341 93 707551465 739 585269727 942 280221158 956 465597993 810 721945661 843 730426002 360 438581462 641 940946142 744 232009126 502 485775901 206 739578770 644 199363732 836 476542895 972 730220736 399 747812376 383 497942757 371 226593071 108 893208112 266 538656033 537 889074599 659 139486914 995 470859171 28 891520034 543 796703542 585 310268658 599 147583669 188 484670495 661 844855490 865 981579766 228 490260251 43 909554494 211 677830544 744 851798545 509 518590187 827 984136038 694 923389658 407 538750330 885 975716937 341 380873706 993 914615338 172 730288016 572 732622932 263 375455781 759 892956227 508 107471758 705 567978084 10 935382866 900 691776076 428 284119816 513 55434581 644 310022446 653 314382569 323 82919659 64 917625326 728 476091662 696 24827014 470 894578977 991 107160548 439 824829695 488 175145235 93 466327764 93 949050565 522 663930411 161 623354323 436 604618611 653 834167410 398 35774800 434 5109736 892 867645515 24 288208680 721 92049379 589 761106696 249 908386692 159 182971503 492 566638239 306 350680017 552 512199537 720 214824181 344 463737637 274 779119254 729 508331730 93 25499984 22 601391502 14 178335645 640 647914409 893 741967086 450 796336367 968 37642902 928 356321075 248 210586523 255 876465568 367 149922409 275 192046986 192 380652876 945 462104240 710 159294828 718 860780122 782 409669703 275 624125960 441 592979934 119 529752819 22 813866735 360 43950865 185 942677344 505 650334773 830 647877353 275 988702373 938 497968323 386 537191596 149 537162106 42 533749620 752 704295655 381 568147564 293 556624893 935 574209448 495 125818073 440 430098269 828 323478467 800 436350770 611 540263905 703 927417283 179 231669338 166 828467239 434 532618197 624 127142898 419 224616599 140 472490931 769 200904589 413 400734906 471 94915711 860 806844164 57 711786377 127 568393120 68 781507716 583 258264475 448 176448056 877 465826693 43 88457026 526 660241468 178 265741275 151 157853332 313 552090137 9 603112327 436 644889892 806 275081781 897 134724408 309 275846467 652 521055781 773 854649209 925 128533894 449 173912203 736 778106545 556 606972146 505 57769428 832 278637813 295 836398892 943 311185426 526 460108717 901 615969728 633 677973359 6 893009812 661 204387240 464 231605768 153 301045613 145 73682563 508 708877324 672 900876042 809 820208651 867 472374979 803 166953215 47 239655455 433 966408027 489 383157480 575 471500080 457 751436544 571 812474177 175 672247083 672 610451857 75 941686519 532 4194476 537 596613456 453 785171479 420 732448483 646 675930665 636 541914928 262 51594198 938 883973692 684 311563432 78 504731823 931 732194464 519 582750896 61 943846623 888 930064616 521 713934808 993 479251426 792 902477148 836 842852032 443 639518680 147 884028097 380 755185776 307 955058277 550 675858054 966 131120121 417 410424371 346 292987802 286 748739857 7 527613171 341 793973032 835 864940626 787 839028901 574 679959036 450 905345604 757 677782095 570 195617540 363 838132818 679 711291643 419 865280184 433 345571280 620 128458526 936 23517280 805 839065834 256 320015354 744 742802183 609 241567642 534 883284644 26 198502525 506 482648627 300 469687442 581 615230450 985 607441305 615 543515150 217 456691111 971 408591986 339 942501137 252 502539761 392 581769384 112 874445466 139 272733792 578 717138106 266 334902131 873 233120218 634 159779915 586 934142595 805 355748298 350 550116216 257 391170827 142 617142598 342 19527372 811 727716928 470 515814566 128 620510369 938 452969493 88 546449640 788 253946241 258 770883970 934 742886109 995 760487900 986 638872184 596 667885739 609 271284492 803 806347220 261 948087361 155 405975367 921 795531732 97 679319333 708 446959970 342 819505682 425 673382889 18 490267297 488 589522577 14 9497747 629 944103864 968 948674334 15 487676828 811 241040230 683 52249943 950 837693578 298 160408861 476 956617623 578 67226896 533 970458556 328 329245142 612 900693719 196 281407076 413 971967903 262 866369495 339 993099146 496 577143614 884 203808401 746 4417859 56 451718698 64 661591112 799 582882018 262 188428322 645 275560285 637 372767746 282 2199376 332 43508257 355 619521685 23 770332340 36 199968164 15 181151045 656 712837043 684 353221832 473 87593524 269 532581473 498 594450084 585 446296589 179 664021377 545 205357923 459 645874814 158 711311440 515 708533420 619 472966264 201 402388995 678 207390976 869 181241997 639 283596228 516 264042527 933 291993136 686 786333655 373 641965312 854 152814931 817 642377594 821 416951961 215 114254075 117 224812240 993 708734725 785 225972063 197 429246525 511 590373284 79 144083311 33 200887480 897 50688865 715 399415465 10 72076138 867 778203662 603 959050257 694 792520873 633 884162796 702 31090370 324 414246028 8 766611626 554 504007327 207 832554652 865 928870655 184 646156080 939 515850975 936 761504036 945 965976807 788 921276855 669 619902635 578 872262938 324 929184407 470 853269910 808 489875643 611 185778892 885 495176994 380 865954852 513 252616318 933 880590761 595 250023808 552 279700031 518 617202577 57 240006167 89 420699200 991 219865287 798 632182763 510 439060004 294 325676709 540 347771029 445 486220390 660 203660958 669 402866336 246 171924452 791 295049438 309 57155664 472 251371326 132 415603788 94 410497743 587 218769849 117 86505666 704 878264644 892 632584539 648 856385239 695 191016436 795 884598036 369 239400189 873 73917072 788 444560180 575 304622243 479 531748161 928 618896734 745 316961178 102 47143736 642 543950851 281 398253381 169 235745606 123 975241190 469 32636615 408 561500489 118 818866944 787 859353456 940 557098570 877 173011022 736 989759876 785 181173714 228 190567821 627 255624289 160 781683505 433 947502833 394 410889382 902 24887999 173 347230662 798 695760259 791 316438327 117 143796815 394 957256082 415 943165085 608 876721728 904 374255845 322 695104967 410 691872004 636 388100419 239 806897452 155 706455287 704 476304550 342 123096999 312 901464395 9 897040115 341 528766013 761 988255596 275 703223423 346 387839081 656 14662654 126 332721530 555 968839260 358 641217935 763 799893538 175 627889687 828 824819410 998 697306259 289 310991115 836 939252433 28 753488903 53 394602044 974 7184512 278 29814363 578 280576877 567 253494555 484 86971286 351 96682467 885 250737073 888 765887504 324 253468606 345 291081422 868 328819084 891 97741546 348 178554707 760 18956612 19 809993190 191 706438551 196 103440846 686 353631647 516 672979778 32 255951848 12 678174895 9 745638667 867 739946287 947 586210822 938 646045329 363 627427505 412 676502634 318 267682280 114 670144889 953 828340381 837 612650976 891 253927324 465 79632739 385 463110311 327 548501424 636 997768785 420 12480965 390 700672001 89 510248771 698 48460669 814 843563748 528 293158990 7 413445255 807 80018535 979 976012850 626 490152606 180 95690658 155 29163468 298 306651989 474 205900356 947 205382132 508 906302169 684 671349345 439 567639148 781 797503534 713 160474216 406 493955526 812 954741243 197 54406254 806 927338186 134 606535306 594 215952336 193 787104408 561 369661483 840 469650021 980 438958420 288 878529292 968 146719754 460 114861945 94 177723345 519 370530478 333 174471223 198 691614714 938 519667388 139 976962985 18 24499751 835 849477905 989 180372161 828 466145240 101 519811502 409 732698077 860 237430477 295 347645665 173 127654728 854 834172560 740 109118585 376 383101885 574 549392355 475 327310462 688 365910359 136 32256441 228 116187257 245 535617464 594 419294204 724 752908873 814 531100528 277 165047038 724 333653542 143 20367151 920 108124315 320 157302954 528 718502960 816 825507752 272 397274910 304 653396674 231 860520577 585 153265746 75 979539899 590 784575019 363 520160452 382 970372834 190 924899541 292 687443866 629 628318992 901 962240822 379 711329017 875 901101245 109 489684677 547 313719539 993 629496702 449 583035294 927 491946851 52 932957665 809 57552352 953 748237435 487 603378193 554 299550310 298 797796830 964 638123679 827 59947648 734 286398235 259 290949239 862 62015302 878 742227719 591 709029376 230 583263114 347 738113590 751 465816371 664 664326087 502 392305411 354 128760499 69 242455352 726 170761981 716 565437017 652 993496594 627 922332980 859 575910382 976 973390010 862 784678092 187 956174890 679 525597823 430 954166925 835 294864302 566 302634840 951 267319289 39 794562048 807 981182965 86 282457926 572 908780237 910 33638698 531 121913975 890 670262390 223 984657222 794 804872097 619 602842929 786 186332030 339 779540510 190 323103396 289 399615424 2 341751917 271 11011443 387 918848551 430 109320763 166 832953064 569 470823239 754 21131884 181 648611981 191 13088825 332 182717905 779 790267031 785 887385789 978 264290788 814 897182652 943 750449510 253 664932720 613 877265456 515 733051101 719 713011280 60 122976291 754 777393157 666 444790224 598 688676584 665 986285012 749 288531102 610 422806093 479 947936758 688 981443209 832 470474619 67 440536073 412 979074863 802 72533705 884 335156522 797 84335397 119 332649867 707 684763355 899 34756997 729 261708680 375 215647896 592 743607506 848 633390676 708 331438501 706 160933669 647 454554287 716 124758191 260 191778434 183 878503720 185 46602187 211 322257408 279 108806924 999 138025550 841 631187164 905 244090760 716 307908952 389 468729887 267 538894921 641 160362792 471 17473541 359 694027962 865 806117727 239 826600914 455 487324289 835 847134499 336 38817239 785 806397706 237 207847623 91 324766184 918 675974853 477 763415057 990 693415779 168 794590858 299 964726910 521 712089167 265 531088481 109 527086694 654 857249980 621 314185893 358 157757149 180 309599955 89 837560049 218 625816646 713 859655356 614 858459885 696 406129365 295 85021408 732 818237335 266 367863705 303 354688208 469 484800921 756 906287321 976 43092437 981 138315849 789 322494054 731 224410425 851 762475936 210 338304399 863 592147695 877 954119191 660 620048141 93 452880883 490 11486960 587 314486419 99 762045696 642 393450685 908 56625770 805 424515843 810 312293579 644 939409878 332 386251789 286 169020127 589 127435783 989 696086476 609 481061254 28 690799699 950 673435303 159 285021937 492 299012459 117 858637124 604 302276075 437 681499130 648 681136221 289 748677193 530 883209155 120 310730288 272 553933456 163 918905986 543 809277504 210 989355210 279 878512188 187 496457549 432 902728165 647 706473024 139 83912938 747 335571935 590 414712082 735 282896741 449 722099138 752 113165253 100 30651821 993 828261221 375 716173882 369 718536629 822 879932407 982 46775595 247 36990761 553 789804450 530 681918544 217 516933964 793 923800764 402 120888308 751 735352717 248 398074420 49 632338622 302 978346694 857 46974072 714 830223349 337 103954480 942 326676448 964 224343254 718 405502209 346 930086443 824 783746118 734 262230966 767 944443103 757 684979396 636 193497845 865 523471921 565 810689592 391 999309736 602 960124999 130 36325829 4 47805052 809 329217880 213 909922042 974 535406687 37 825047678 886 918342749 892 824064526 249 60353977 454 326615709 411 28503082 702 404600394 717 310231206 355 69832605 128 673798570 411 478575165 349 891922083 413 458533682 426 202536766 505 710928646 565 548778233 683 360139820 237 489618628 677 505925822 521 412197326 394 729725726 273 106624300 436 256167384 73 936712911 408 784096811 243 151303009 626 70616435 874 653628404 127 707381927 219 375052642 813 780216300 130 524869059 808 197328308 556 621845267 779 25879328 529 24441274 213 373600563 533 718229533 231 610509401 730 731888105 659 619564395 259 640619058 50 951541983 198 763127092 674 786394871 833 659216610 456 875692450 140 694060077 31 244510461 422 726195613 92 402722230 293 59069124 950 163983220 667 272777503 972 798253637 250 185869072 492 727644619 876 410032074 427 327723085 880 63227805 409 716751824 104 767275392 916 917866887 43 90769392 106 969733269 533 832152611 263 677431723 767 507647192 797 966090442 670 651399157 147 476279306 128 92671369 362 727099730 220 14489870 37 953166487 229 406490200 650 564678314 148 380844143 443 15860243 794 26355140 231 391742513 945 190602064 516 616799431 639 578618393 656 931245163 990 318229242 198 550663081 533 998069746 839 315172936 869 891138812 118 949848717 469 274500059 563 757631618 521 126719645 437 417584465 472 211037243 518 989135026 875 140806819 790 126897996 977 268957761 606 370189848 120 645701420 600 545385245 509 918250716 541 269397694 569 128871480 332 792240218 914 793835505 20 853981345 709 619213138 345 960422256 851 273997663 303 630139050 997 524710954 892 491867682 26 435841063 826 689858694 136 559769484 861 460947048 115 542483987 246 365149273 257 871934636 145 314427814 9 849921293 987 317515798 496 580411791 794 855886469 355 508813194 7 718477122 54 971687400 247 21829194 689 843600123 255 437269167 306 527297959 390 109955771 507 708960367 674 72372185 843 594840785 968 379672465 263 957283174 416 785650051 424 679680688 336 867936520 253 553772921 511 496959029 319 385723498 313 929401229 710 467565338 251 515413755 279 999403238 208 600651337 35 328229105 31 800444302 805 730510163 374 640858913 375 273661100 552 320340585 388 552641083 815 176212107 481 818352547 639 784971252 60 39031418 640 343821563 251 672475219 231 35121262 368 863888085 343 642938632 733 768848385 245 23513184 245 34870897 298 757844674 594 865803461 486 345895701 491 203722403 277 107489143 339 872880601 793 295438447 130 353835833 972 202388424 904 900147170 387 817229224 957 856472031 167 923991478 899 971669586 357 49130245 819 533140928 834 436840410 43 725069953 157 328872143 710 776696579 941 508875594 357 564948985 154 997866 329 114772992 681 389572718 338 360003051 440 867773589 583 993210018 114 859403135 770 563710821 575 719376105 950 664413350 74 387831113 712 408787853 996 302222155 312 968503701 188 572868168 453 594642533 82 690254553 396 646576796 286 944589245 414 907930882 400 51912365 886 376010181 131 143090599 823 940610469 217 139001870 341 295968657 984 75969936 449 127847610 632 983604313 382 583673635 995 850920464 723 552473652 261 231812696 627 426724274 73 388024706 91 992819254 579 926499272 195 667875556 7 872336175 233 405144948 347 98137658 181 358408163 795 612008665 323 793750307 833 68636196 345 689400763 954 169270478 87 432923264 907 41710795 44 823524493 603 87685411 277 401358069 766 333284480 559 503049051 359 178986704 69 214887252 676 79971653 862 954176420 274 465737934 293 509446412 543 433684860 626 546484143 816 65083005 468 59952540 89 971723530 480 493421269 389 909544526 857 163826078 857 897280266 353 178890066 228 932730651 38 781496064 812 5360239 713 683596065 485 634169674 732 394885047 49 421355462 135 526893306 289 612653054 518 111097592 743 381221806 299 946970055 302 611585494 891 946461043 889 576116290 763 917861420 342 949794141 118 356890106 255 281610073 862 705384681 560 470694696 350 88171183 496 408904145 738 99887971 453 747767313 581 506118823 993 285768599 671 137927872 129 909844089 879 839101411 727 849039450 464 425689657 185 384475583 809 300484859 593 970463363 708 66846460 424 757142149 416 880300894 406 171804225 318 675221035 273 331100584 52 332141601 892 272050811 463 159136570 585 302208845 895 694207855 615 343167892 947 757497321 486 931642248 133 8701373 595 370273450 487 738129065 868 662278378 471 467839384 177 310497556 889 419555634 517 876632291 462 150456964 126 232243076 768 45553343 760 604415737 592 772013795 25 759905184 30 323231233 327 608172158 713 240948285 664 173326355 612 133936945 32 190823523 151 580355975 723 264219388 989 796733101 94 815333411 771 570854986 556 552558577 186 222344067 30 534563582 878 990366747 835 730869788 629 142857931 714 141511187 907 760012299 411 540188517 159 728178393 605 348748072 388 605292563 377 148962832 573 682022907 670 644916823 710 632469934 848 474027580 862 918187553 469 216644135 117 134203159 543 808264331 323 368415563 62 635088561 185 813742753 318 348882705 811 727103019 308 125708471 90 386136024 387 511530756 388 455132286 671 115203321 249 963727138 174 403762824 22 926376154 382 536134666 718 808252335 84 155348122 479 675611361 291 103391777 75 828121097 602 258150251 912 149895719 191 213504648 667 84746143 638 129935656 136 262168407 931 789449151 88 169450997 950 408351362 602 542281879 318 408033907 701 158442832 104 234646087 981 16221013 1000 792312797 625 769295395 391 947277856 774 754511473 356 993854531 347 691376576 83 850371758 213 894071221 554 381386642 191 751541179 501 225267387 801 3435092 50 482411169 186 631073470 596 115349017 503 362536824 724 469939389 820 284470437 951 928463679 928 272418292 506 855387842 306 342278649 745 521957510 616 849260934 342 392168263 429 406255275 992 342023553 742 761344990 176 431366717 920 193127981 431 666132808 555 735981958 552 649941566 292 133855790 309 247315868 355 113337702 992 280859054 494 252019137 340 264591357 210 193322055 416 469620657 943 671856899 143 576121535 682 185079451 191 313428749 888 555682516 53 101261576 95 262107490 37 633669829 618 450657921 900 968174042 996 66712200 680 497952419 612 209684229 721 295364725 903 428416783 935 163423337 746 916196771 299 682394526 519 366028535 817 304288435 79 508436659 315 745533932 650 369469768 383 553294645 599 829011115 425 787817430 562 53507454 8 136141424 315 677741744 713 691604405 58 667687204 458 644105441 147 663634679 294 77316430 675 348251561 292 878507200 724 88492370 794 776354522 185 637839042 819 693294184 27 134377740 609 953877436 63 206464859 541 112090146 391 205160266 52 794263533 138 787922479 350 973492429 639 917511978 949 340775849 421 48542534 928 110779254 623 519301096 574 696413940 899 440502189 574 869570129 426 675915243 892 893476282 868 242327744 474 250475846 642 157051547 710 313070904 413 710180812 670 579241967 152 923082094 984 195798035 530 791606113 351 774150441 681 374555388 559 301306514 111 161332945 425 68701294 204 677927834 367 375904122 878 750252166 720 482964244 590 332088227 225 71883602 928 239056278 757 533285895 528 242947548 83 830849769 123 286607746 19 727576337 661 460410530 362 903401592 746 325394215 212 593439567 907 474291205 575 321554860 530 915254209 344 184136741 897 862726826 976 766239933 817 785100350 588 598315848 222 868793632 466 628318938 189 46116083 837 295886052 386 112875828 670 274405785 316 425645432 614 195386339 307 325481401 638 548047645 307 2954046 39 343249503 343 179469566 74 651116906 518 23808976 70 703274339 853 535745325 664 283154467 678 875443895 857 230549704 683 655626762 559 550060999 142 435405605 230 242708388 465 27804903 965 575333151 994 939999322 304 284104321 171 154676833 252 796833521 638 118408414 408 947771388 123 152767295 10 778482525 152 338620328 244 959697438 433 699650644 390 690584273 777 50785339 726 781528997 748 577611895 378 292093971 937 678353357 562 715866430 572 434965479 186 476862455 755 266131490 679 187782326 501 191989935 367 762682044 555 218197910 882 135583274 196 446302859 120 152859165 13 580535187 774 440609034 553 398716681 319 946249474 838 908750881 481 990206499 327 16265486 225 513304234 698 398830397 959 600457582 784 249965917 969 596537264 534 287714933 657 22080784 944 193564506 485 498849478 948 789913055 12 306063367 530 759792067 560 335183728 517 848825240 530 344880874 583 551828863 718 545877789 365 898298655 73 32547790 207 11786871 881 337855078 571 796557733 0 751412269 516 100355623 856 270614336 206 441296950 208 276892498 21 765428793 338 202732302 380 621028628 550 974992034 29 920451033 685 107295526 195 244712851 768 642287700 554 316849309 743 879711421 763 462751119 190 546696044 886 95655200 299 756242123 667 653146722 480 224823834 861 470106718 193 895844121 868 234954271 6 642524692 24 440151745 618 768321455 517 215945468 235 471769919 727 992018591 242 862824278 936 426273864 77 582809461 645 903276485 802 770068147 532 990173933 226 270915820 295 264454019 787 568581546 967 559330357 367 783743152 790 340510400 834 475586019 654 359131202 444 833652445 313 498531688 115 351261826 300 817740299 113 688977624 907 258092852 854 880129679 204 502632850 93 202285139 654 958922898 15 756611772 705 320483809 245 800907258 791 704480510 48 325266084 903 82241693 37 787916324 483 577969983 394 886323021 60 156490323 967 682782563 533 786846402 805 321681141 785 763913187 42 694136339 184 299090894 805 807995932 735 238644961 797 329351185 957 184405705 736 599319380 904 941752841 471 566598931 73 748849159 31 862917123 408 904495368 20 177594725 994 71994276 715 190634971 666 288839887 610 539654606 507 435821736 808 37623935 661 27407192 145 429957748 400 8638666 215 250089906 974 963530099 766 231589705 543 139076021 485 444840390 601 255265865 841 540395898 440 681821376 242 755844494 955 717416216 686 810088659 952 955760646 554 72065809 611 721564858 723 556603273 761 516369794 520 289525782 419 16251469 197 279232923 515 629736424 191 198287179 312 211800806 416 933191125 206 607790596 663 245133981 462 821743097 722 659824870 972 628238382 678 594934699 269 305355055 263 563133844 227 848632998 755 140606867 235 462354148 498 952416242 720 450248762 637 35311793 448 610433279 63 657862059 800 230483842 197 83421884 615 848188750 672 430496919 841 56397992 437 559039466 911 160881090 940 210256492 6 518092793 818 660759021 982 401973135 706 62695588 184 190016023 879 451968683 239 881295612 423 831854456 288 18852252 491 953941395 67 451379156 726 848263809 517 849192463 725 474244384 535 890836556 776 318222232 88 879138765 864 78597811 951 528197203 151 113781225 500 671239731 756 43567105 698 406634849 857 803151704 512 212020410 148 823212241 729 541675193 360 435219737 950 216429907 366 527633119 813 729025481 52 339127265 92 726258714 505 208107318 478 793529271 433 239905791 937 857989391 916 163615992 57 459038732 255 510680301 203 869116864 467 76535708 764 180947733 500 56741399 773 624274375 305 188303075 993 561317223 97 734630975 476 202621762 985 101460110 132 725039586 798 520469837 636 898956748 514 486931918 260 571896497 471 604563985 965 467012516 335 878201553 289 808211685 940 310284245 377 715805396 774 816978796 111 489175257 340 829595349 241 314987054 280 183858044 150 919899040 218 182504001 794 191692299 337 772145234 371 314670662 707 253996458 370 362467651 783 131912491 870 228360450 842 742251682 219 406633151 507 766883837 760 622335266 696 777443732 828 473951542 814 947920307 673 103925626 162 331954919 85 29862836 114 795539235 457 797386324 47 212266109 66 851958440 455 666811376 283 271543883 917 522487451 859 677015353 658 267205045 284 736143280 962 320256945 903 20131841 62 934272676 94 281654422 491 685940074 397 158812846 874 952233752 712 450387796 819 299648777 495 19163676 548 229121041 713 444466852 632 301565552 875 664982163 999 984950655 433 150504657 132 111125264 128 312642344 588 303579253 63 722883382 145 65730260 915 766443695 350 557380330 715 427949819 650 801359223 504 44861502 345 768210966 287 403860845 254 94731968 213 872630168 529 56607705 153 655563864 583 721374305 902 120490186 268 360057676 875 95057630 23 494661590 972 13062338 813 808048249 587 512645450 954 864131457 96 256067807 559 927111675 505 692958068 439 862496392 242 483700621 229 511823999 108 849585242 2 660557713 473 411871986 14 859398219 395 745667150 642 571179226 741 85302104 705 768367686 855 915776944 767 696473458 466 423999139 188 697725012 857 594121653 456 708686709 67 475412000 138 79936419 977 115662580 229 303283167 694 214978408 241 434518378 768 22127733 133 952542292 124 625123289 905 614699605 329 926371028 326 474364375 342 893886374 432 907644539 79 738941135 925 921081638 206 762380419 384 407235554 986 234509171 56 787186712 970 638587991 556 318788251 3 6389564 313 368242765 605 786135028 423 57583967 895 534304715 575 934715476 458 927866028 326 255853386 182 165142400 869 348415951 148 835360302 960 556797827 151 254167947 945 267364580 82 577497437 21 810688160 925 477941813 783 529559281 1000 823037660 111 804387143 431 111926697 308 836741083 106 27451662 287 588954875 768 640441881 841 295452560 930 884904660 596 836874018 886 488097044 948 46840580 834 359763335 751 135906725 697 889097025 439 156469903 937 950594172 739 908117318 523 552117213 106 388935880 329 999194482 40 26923526 469 766294477 928 692326452 373 421979003 299 161980683 952 703115975 243 505775152 599 228957633 973 318259478 827 761145034 569 612110053 601 360323547 43 594523275 45 664586070 513 898159589 119 980370609 41 449784060 401 710858331 817 822630930 890 160039277 821 475349893 189 742353779 735 46250106 150 999467084 382 573316196 331 475952426 830 836434231 21 33664464 252 308834482 901 150130102 738 266790126 571 682504376 947 866754127 449 151017276 323 267461074 159 451621100 311 233042378 769 976604573 796 803019432 450 455699280 977 634482651 460 883192370 559 958452616 554 237468708 638 17579707 545 236058487 382 756930970 161 917249406 845 188263178 653 571247970 431 526146172 446 138197174 731 75170638 600 780684775 196 606018226 923 953019706 230 631702578 304 846139614 467 689031538 814 651879046 555 2234254 640 500434013 948 812907846 956 808431341 794 790856162 295 858475824 869 111415552 649 2926108 575 749437641 22 240762068 15 404888642 907 311793263 443 104341130 293 362769152 627 297830875 381 225484314 1000 770605447 183 826368382 247 450904880 11 54363022 599 358884628 80 624166839 809 260516449 844 689439394 991 685308101 994 236033983 472 390227154 84 193550908 511 387716927 485 905132261 746 500144754 333 728422690 891 393553420 281 55908582 230 973467443 970 226445002 627 308306056 10 940101323 464 458138894 462 870814096 41 358726784 751 431766570 453 43549917 96 757134769 750 783425455 427 255459140 362 197557004 597 140204099 403 479358655 475 750004731 876 43597020 495 781963874 832 386799184 111 878153454 755 61286613 777 178215071 226 203819600 689 220660910 105 346537703 550 914043631 320 725692402 720 498039527 971 464702225 941 866881193 174 654798024 624 468898239 181 998083461 263 701796295 248 536877879 477 623344466 13 743668096 515 607267907 113 294401370 622 466830085 816 476254381 317 386988430 433 396028171 774 454726455 294 241408774 761 965127642 336 75601171 559 71778387 452 672797521 945 742052629 676 985181832 772 871236430 33 53420266 459 266165889 958 599729154 428 803909591 728 782079558 202 253446419 364 290238465 463 710518133 609 410798603 261 809162749 608 590311007 847 469441854 998 575925519 504 247724997 752 3261533 742 272023612 191 880968767 320 393345782 383 349273900 85 398532985 654 146036310 65 682426191 132 58291889 616 600409142 844 536239584 273 789119863 438 937169262 909 483308400 378 388352545 606 254326543 95 958463916 207 767022365 303 8739860 572 575047517 182 637128511 761 604829900 426 946761560 519 741808358 908 650386231 90 313889245 116 748872654 207 480376939 646 142886096 602 727242997 496 890166362 377 385290535 670 754681430 111 597146382 654 210420219 711 893134131 334 652405990 113 787447209 267 810687995 759 250767761 683 589922044 686 232913725 459 173047722 859 281133153 150 430206214 590 417862836 126 319511227 199 535682478 661 317749768 723 713055520 392 156405784 725 798957985 50 190422479 903 416168955 945 311660851 672 913479364 531 493417347 850 516850267 881 155711029 455 878508473 271 934239100 805 670827378 126 563305099 221 844179108 546 250653712 758 284177725 148 362194215 998 609730094 707 198458223 762 351586727 894 256743835 967 248184636 795 345990775 982 360428861 686 878341249 816 282125190 628 220537996 476 32285388 958 484303092 341 633444256 172 622361161 345 843339412 313 102872091 794 383890890 744 284154278 4 552290360 209 453583039 838 480473849 572 101626494 951 169023804 419 873094651 262 827987799 242 339256 642 638101926 627 375490462 971 268241139 154 687757892 381 701482204 627 532550122 486 749332185 172 751688961 666 654377143 719 682666282 586 456214470 351 807231354 761 39659713 665 494719709 908 258431635 646 454311307 134 253021193 351 43615942 12 107492186 511 664769745 262 642315218 407 624959724 49 214913037 820 979929537 289 223264402 596 896468140 288 496923426 991 304254514 784 598978474 519 288788091 344 332129961 290 659106701 300 732365783 491 141481708 33 719880133 951 865447641 569 382753395 362 170076465 10 471241077 653 649111769 822 834767268 673 625254077 334 19246969 760 467975266 840 585445141 998 873218564 664 563808057 747 739397687 669 860209843 539 430443944 174 787043495 325 595515066 720 806098265 444 978452806 287 274976742 318 645842443 790 4244598 292 783535169 192 669712101 905 101274105 142 412601561 424 621020562 733 251958896 189 253018980 51 553226830 498 967876455 549 738074957 735 85201889 391 460734839 923 243202525 849 538051003 792 586681026 767 57006934 443 52610791 245 564395047 557 157096929 288 439049324 739 40626198 286 6369069 776 686217631 872 802228771 578 311072227 12 907899787 295 526211808 920 385915638 450 515866427 401 989975288 366 831486727 42 469134458 50 149964491 211 238020443 480 205389678 13 26539877 690 765867944 512 251060080 917 408482969 147 679331498 696 409017745 774 33700716 676 195293648 482 922965975 34 265408716 456 43419106 376 70940519 378 189058889 358 955990598 464 696084168 295 839301692 508 471320101 269 339528292 708 123770681 829 747226836 190 540867482 558 260280442 631 712396445 983 535518400 955 353795828 669 882134784 167 221129274 58 979989813 901 85807835 161 506255835 154 59331009 377 867937397 516 391987640 612 875509948 924 874748182 557 670314203 699 356666158 950 973865875 624 892783657 316 567042069 751 101964126 724 724820939 300 408544926 172 995613846 498 748677512 227 298801100 170 866438960 859 940576459 197 680308094 91 943777169 371 87382390 680 852588756 478 982898443 708 999582553 162 873367754 395 280631812 381 49442393 126 691290652 111 90849322 826 343824257 884 783444478 89 141910734 281 58014880 687 767853124 304 177471918 115 185565088 431 474627776 824 230116075 108 826646818 500 713911296 644 279890163 439 574026364 940 89874896 731 150188542 25 353062681 709 365533120 940 783211324 185 549049603 172 724282648 873 592139266 700 752722847 710 882432550 914 515880737 60 732811564 610 118164827 633 995487810 792 773383143 873 250042726 585 496609713 878 805014917 399 654017629 349 597071295 545 367286599 189 175020131 147 387027496 846 470957 108 806709375 192 4284943 353 604738686 881 975976473 256 288031758 844 940858033 742 640487069 323 369775584 876 631557676 481 753609338 971 491674703 383 966417422 982 24354745 980 806560907 171 336991927 157 424413970 772 308299082 624 709578338 92 665385394 259 379537151 333 788371839 844 410465688 553 930965855 299 165809062 586 280738060 684 613413880 295 160860852 700 837047243 985 291206296 170 222810645 776 725305082 76 166242127 835 223624874 188 514122572 761 5148470 757 445353121 230 911810644 513 161295622 284 82454995 529 930265081 311 34222335 852 218328371 682 740123261 975 134675684 685 655590030 727 872135861 10 527067740 752 351728673 558 521360548 917 535741086 825 990314709 197 609979480 729 971001402 732 119710323 230 536550501 720 854551222 955 366103312 454 258851122 710 184190297 221 73543837 750 459194016 191 354188667 31 992717942 355 843535820 371 483181565 427 861629758 887 838357978 853 135369103 986 629304053 155 841551102 717 358172616 815 69124842 661 777461161 875 594199091 649 168726201 356 642085510 315 142205480 682 981821311 569 545937074 316 810947370 323 170736609 743 432191720 331 413065989 504 191869115 365 145984350 179 678772503 51 993263497 752 389575023 376 98861194 346 620557355 884 177126209 86 926724435 593 627220106 345 964145490 11 67588181 672 67631457 26 835503588 991 520591508 730 139089594 963 985395096 786 996122154 695 531880532 967 719632741 317 427461507 57 343061167 339 679145301 660 537328587 519 449048216 140 476438951 428 172449813 923 111504877 481 805110756 263 306319665 236 594963318 660 423321964 979 873059533 908 205530913 905 310394933 747 228236742 814 244070893 771 951717702 164 620690473 41 986799608 31 546621330 394 175318471 239 239463745 162 204223389 801 747090968 206 162567931 133 28659719 432 58127434 373 22538773 265 974051494 950 16787165 910 221527435 311 988951178 249 98208710 501 375250883 684 301026352 15 660893138 469 167394427 893 779296332 373 962979746 193 872893525 59 824628943 311 461993255 649 230825567 832 954646672 258 423076821 322 320655374 992 444578164 432 457220653 627 387870513 465 308244433 413 530467063 436 983914791 321 706773633 441 999439657 440 276733351 5 194043695 206 216373384 165 947243193 238 144187678 813 681024091 82 52626518 63 7048895 949 847158846 486 324359493 667 24070407 442 408646105 103 160678624 916 247322091 393 77148202 43 515235135 240 726173680 827 98957018 517 212168133 670 192538502 246 549571807 169 593498402 539 3786142 622 753301109 881 555168169 722 158072291 886 58575221 423 969761920 851 431569196 867 904885062 751 263687075 624 974570479 975 823390727 826 649865549 395 208534029 656 760701667 690 78367329 275 764612653 453 961885528 186 257311634 291 539371815 417 137550377 272 188868205 983 116515303 507 763818786 678 285212289 287 635639389 22 765462475 809 584902254 162 444483220 759 357019677 292 268161714 110 467519050 946 634607578 605 404266913 323 623086178 352 606158937 369 632790274 685 268280742 645 935741184 387 344168437 650 48871145 24 564675403 279 666602723 401 211274231 351 584458166 819 104428799 456 329778995 803 826303931 856 849088909 760 118811515 250 846190273 83 995074017 342 584919280 398 542340875 302 951062616 123 879700500 124 432186899 817 838917513 794 198377310 313 976466644 56 661128346 896 48997861 824 743392547 277 295236712 427 771694234 644 743597564 766 322001283 971 344012741 504 137903663 420 514204780 970 241041944 993 507852066 756 154000684 924 99920660 776 943650893 848 755919084 535 699548315 385 797412543 252 213732784 831 942330982 239 644495091 168 859446721 357 468196881 292 57829927 519 730552601 844 190129930 158 781795433 972 973950804 759 675236520 391 604950343 755 653515373 841 727361550 331 629869848 22 321017495 281 101702182 46 864999571 830 130885695 45 490344625 623 600548947 54 646849388 628 628484873 838 650107806 613 495827883 324 939822036 276 192079375 685 405306545 578 601054442 552 233033159 484 944983432 490 692335644 907 85898246 501 682485718 402 561059628 975 687478905 277 312313493 391 51384330 546 608937630 438 706364466 433 530989070 851 941146148 923 36515325 504 731155278 241 571471079 175 15412389 981 779856822 478 321889979 112 772675178 142 823022694 238 895270003 777 508108725 551 89389598 585 722490318 979 455180630 364 633425012 908 119962781 265 372705241 759 544444613 516 117474917 925 366634468 478 296675840 842 813835490 882 11020385 931 575091974 611 438221249 300 687255416 720 58727011 89 198360659 63 482555991 477 204259068 441 608332408 438 218479349 83 497844239 424 961871250 478 985281015 177 420487979 762 978953663 638 532386376 536 995627564 957 920345586 624 370486856 802 920585424 479 18918829 615 837928917 447 179214978 159 928875085 91 107285255 271 270134157 131 374796641 554 540409479 741 697704782 831 504236549 175 381061518 770 570491408 844 34356867 110 293494606 866 673658888 831 100313541 436 131807985 772 560297043 405 525110066 942 41635673 956 141536733 140 485366559 111 162986852 854 341404884 616 268714779 202 723561736 308 982530675 349 451092399 251 656686426 928 799682999 736 850026089 693 912093161 145 757621903 540 121498217 527 191762877 58 99483282 623 972726091 664 434900555 478 539066199 412 513593830 596 724703007 45 604533081 177 997241424 227 841478882 939 29157008 457 956450018 806 38317181 760 960122054 426 763641817 887 146459750 129 339382200 960 570481389 148 207503271 583 886309336 66 72780945 600 62405973 645 7370940 228 913850797 80 901574261 917 428394381 894 127350729 411 913777677 726 264862545 70 255499938 616 310544581 433 999086364 462 54627967 519 745096065 5 71595660 250 709605804 325 795424748 27 820439228 54 635590348 970 721944217 10 864025609 610 459450675 156 533205288 986 613982405 843 173574204 538 3991555 333 513156146 284 346815433 278 700408562 445 124832952 113 890475815 550 792342311 398 233016535 899 759187052 66 78392691 124 62144641 44 870932549 310 996231989 199 779253281 703 681466336 583 788967672 786 210835817 969 402245294 891 598318490 970 270911317 734 568521179 960 920304658 489 840822497 482 517969746 773 317558460 57 155347834 357 505472891 208 3378472 375 557808577 442 962113833 382 225814274 125 597999863 699 273525236 77 391367510 84 758224051 524 311067131 236 43080587 882 533196761 808 95053231 413 723433133 412 499262842 781 401951562 786 217250141 401 376372593 493 298714265 80 899299023 99 915772381 742 690691445 643 999975832 655 588148034 922 42482068 902 233146343 994 758414924 309 606175251 749 346580652 169 60661070 689 59522893 43 57963679 143 147198160 286 588593618 149 874508696 954 526493212 71 880056976 275 87178562 253 815482445 666 214983982 842 44070860 807 387006501 740 817907978 103 419485843 456 818785444 187 602854055 730 305301979 554 535824432 914 796213461 543 570709156 89 248391628 730 708360693 714 42167993 829 248304645 138 77458421 260 478560154 89 253421769 768 680189259 610 286667535 832 751443655 246 707535431 563 581640281 835 959883110 327 41018415 472 848908662 151 987555121 35 815606964 53 417589702 338 637173519 961 672801982 533 695983576 834 163463718 802 956690255 742 563976080 450 804272605 744 992269404 831 663551778 58 924909029 950 244326902 561 317103286 391 509584130 187 941205266 85 816996957 859 460671087 272 253082012 151 606647897 918 452021983 273 173252181 258 572749063 530 183251111 417 6485935 176 139687111 735 356959558 457 250251620 751 185719020 943 458769504 532 733754856 401 342873153 356 510344529 104 620923758 680 323242069 451 965499414 551 363587281 614 383571532 359 697516950 398 717060989 518 773165470 410 494587362 540 614227425 949 588371727 951 449067126 941 8900838 795 252766604 804 574530112 992 350532936 851 182547218 805 338627957 224 880181835 910 525071158 417 570397672 298 955257010 885 838490196 490 135951791 696 516099543 193 463646582 828 552802755 288 176552997 543 778585776 181 770885979 389 171432085 817 340099609 108 74431736 892 974849347 500 931384270 809 222198219 572 76833510 116 938276980 284 749741926 324 145548532 802 518068628 2 35618424 17 415653617 66 828402756 5 414503781 715 105618033 377 156184243 800 299359080 171 167488926 159 721643275 369 140187974 556 91375839 634 132244600 67 825629188 460 417645202 690 889169230 472 511225125 637 850797460 6 46331547 59 844498966 925 826814568 983 638722272 270 588702162 950 6728300 478 143120608 743 10872174 8 245915663 292 521890154 683 807891470 455 999062857 834 203872216 186 751791475 399 718329851 916 150738763 479 562509221 800 366312670 571 5386447 656 7638847 227 681487233 331 323503920 594 703200205 377 212463830 861 796987391 420 861423787 704 693942441 15 345165073 688 255185371 14 516635742 420 889914963 695 687837245 906 566107455 593 423562833 961 369629332 502 454724929 968 911038721 190 929642222 948 151458051 360 450384131 876 636086977 35 878938985 535 340782987 624 923059258 844 491980558 482 432105443 534 231017193 164 862957993 391 937918911 172 980389545 608 161511037 677 233405151 956 661573437 101 504996127 954 193726081 255 906296417 906 33683449 701 311863702 811 471133193 641 413468267 734 272882580 627 646363832 272 789357776 379 964552309 59 917222157 233 292731063 928 735761615 929 258041488 209 924834455 849 232688916 898 276119656 464 753882610 734 15733310 446 683195705 719 162492671 106 766287712 669 756412116 889 545934958 413 690119018 240 100087228 23 134648912 128 249801904 98 444272901 647 989761729 326 414198414 490 123780839 119 664851141 393 6703140 621 664352375 629 403348780 32 356923564 30 768989265 970 22100558 719 630064045 338 790624297 837 419380159 95 298448993 335 216313852 169 798349056 701 74238315 361 579683262 536 905042632 963 555339391 59 247789290 510 196698075 783 993169736 49 997303748 918 214935643 156 993593903 317 961155845 175 667384770 807 251606762 195 879576099 634 251581586 175 984375070 789 782618959 691 710970073 120 63505057 854 981106756 217 664009977 109 117253492 637 217552494 906 697132209 914 415440514 535 960272543 802 353518691 161 140426981 227 227095519 591 536742058 765 595944346 860 739011782 394 571412806 876 121480062 705 639979271 511 139609911 90 536464725 116 153876266 906 473290288 497 121543946 311 526742053 435 958731086 292 387175052 586 109762012 516 42531226 991 305961662 865 977442447 456 888826927 609 360303891 239 255532441 189 444071625 39 227338927 542 230217470 279 812641124 856 867808109 901 716881168 530 39873242 284 945298150 150 881510742 483 701348365 337 685983277 71 412289343 152 434424875 550 836817846 643 404943556 249 860553332 671 31770181 950 13527792 261 770177319 537 737139589 744 421214476 357 972618993 375 881859887 760 558711294 117 463827638 318 554143275 0 880458525 390 34914624 189 707462969 587 192867808 306 896411934 371 904261579 486 746428380 986 136650022 476 90514178 387 791735382 858 328798220 696 240123890 355 605903822 4 148305124 850 955936372 84 143657974 138 112479591 787 774962486 234 122640424 781 117766234 128 963088971 345 75373072 0 538943430 287 209759690 566 997938751 335 159243629 300 460428705 920 894148926 308 213194377 521 820734774 639 672406036 421 128076342 23 968202003 362 695479198 294 273094879 710 965084020 693 447717420 450 918820152 60 564221631 312 658884761 330 453302906 655 25391065 783 313377143 805 34168398 954 600526574 84 244164854 815 661417289 581 607022620 957 987670224 682 103029274 610 599068941 223 258557537 107 92523652 54 962053130 193 134037470 625 719308808 64 533705046 295 426693121 520 576880168 772 597687773 655 695713243 690 440305651 318 57619875 600 636493336 188 420075007 662 875143695 195 679304180 193 314416280 212 47119688 2 725106231 627 765272596 699 600085450 788 260607157 53 74177032 733 556981620 29 42781590 194 614610615 554 139522445 798 849025237 718 859649287 890 776905406 420 404773940 767 342413581 571 287884248 90 528353146 731 1486865 443 917795832 119 890544296 737 461015113 201 283098461 307 736919976 975 856504908 945 720135516 550 295283176 790 332885437 7 309523710 166 635922380 955 347920559 72 839092472 9 321411453 479 244727428 943 331011401 28 619388002 936 596965439 532 47453048 756 579303353 211 412813501 767 579041345 132 786722370 451 290354233 504 228992317 196 625338430 158 442368165 787 90512838 734 635364405 370 434724050 519 705800570 156 158988313 846 754651033 180 325206643 121 509969656 288 196551129 174 645902234 961 869498659 992 880568975 539 208406101 470 645325231 552 166574330 800 676820877 570 110882643 195 940402061 426 845159051 681 539237929 693 708780142 365 207940747 647 158793676 504 391128792 302 121419599 763 840555951 190 890440027 625 575443781 523 911829208 919 302367622 538 147426509 462 829175797 554 23822032 444 175785222 509 460123522 506 942396220 915 24014721 405 356289248 945 64536827 795 665733548 243 685188595 312 25577612 116 691730539 229 514474145 985 665839987 467 591276242 158 562931906 688 161817862 672 130988966 710 742456257 39 993640821 24 234941250 538 933530755 882 529415060 573 786929319 473 210484658 375 86539941 414 82944055 275 928997352 114 16571052 435 763551596 113 859829694 682 966256611 963 910577662 473 971131579 414 263309328 122 216392870 781 411417729 233 856434320 479 249595490 511 640959948 599 597562285 672 334164364 157 186510584 161 472684518 253 714848671 44 610355495 354 842778874 653 794067312 908 165806952 484 374459236 94 952991364 199 209514941 166 298489167 863 675256347 919 481039477 351 630905388 957 119570396 223 658846168 243 2797996 121 746250929 808 854373021 411 832177091 900 55657932 22 147430036 909 948643218 700 570042961 102 778407260 894 377789345 800 384560977 308 16490583 957 396597534 590 770573312 518 949122432 99 411389228 395 648357533 713 486248953 582 956348147 650 268558979 246 108415588 997 664138199 980 417232701 754 552379590 848 179063374 471 76486689 121 946600654 54 282914735 936 292598059 710 330421071 247 25231363 750 200990926 933 861928101 184 955115037 57 264508090 73 909039521 286 448995471 917 629878527 428 155513735 103 676881862 893 855832284 181 32470714 398 168454927 126 836027763 597 745184558 676 586574297 325 884320102 75 363334040 980 809810246 290 374907340 986 172406515 234 163626788 290 94973635 211 585729334 939 310194186 691 877351761 14 309574153 58 724786165 990 827288353 756 141083501 62 835859240 84 975847548 171 614072760 572 365094414 718 55339532 177 971731024 788 941064414 411 993390344 687 439278943 174 798793293 482 877693 495 554396356 902 301695031 929 219886768 411 281732189 821 210629301 597 707103737 547 299135418 931 780053506 563 204212294 994 757941031 641 371026208 6 976406108 669 402313721 396 681211840 555 139769932 256 783292338 673 488858439 542 746481409 880 922923676 770 880004993 137 477644851 422 696236267 292 501266641 822 3100197 335 95031652 906 833419696 252 114303129 209 227402600 323 344142428 44 639687899 590 223784669 680 326290663 251 392917945 528 702857459 3 843460875 115 983632235 881 651309932 62 316543934 670 96964799 857 567775714 833 987674270 690 250760627 144 80816591 914 485206906 817 456157663 49 108498832 280 959058342 692 840461685 664 557506101 191 49800098 92 169074062 862 186559616 409 602506559 815 496662959 683 154603460 939 441222290 936 953451957 28 359089660 278 260216712 215 336622871 486 886881816 291 678465401 998 398881909 44 430562993 813 596445121 887 753139121 971 466936411 685 869069632 992 843619204 995 179929537 825 204610245 689 53765164 355 753332691 626 916235007 518 57956709 496 884599565 70 613794148 595 901484254 55 50302440 273 199861634 180 290756308 183 873394059 556 348011129 372 296835483 62 937926317 690 341589883 469 158031924 707 839391161 840 841812327 883 937858108 250 981066169 658 574951866 977 718505693 634 363818757 700 936766011 390 401941720 837 353938284 901 44257354 164 574460498 193 503234036 852 95613088 135 262424417 270 642134032 428 415415853 709 982741348 212 533677727 732 961128435 927 128396869 588 418560042 938 591033258 247 102338700 973 103087285 704 430958818 590 966219183 180 923004074 258 831785191 327 65995106 793 149574358 547 867242768 932 354510069 962 879601340 935 163151243 298 24383376 70 278954628 545 781401345 946 93809966 316 437052298 844 341553061 649 852495277 337 87273503 385 989433201 796 183263953 490 251562899 41 973061942 987 587315888 26 787373059 949 404203812 588 991567817 209 520008520 478 653588306 35 423260241 526 556519222 339 925221472 99 739237749 915 145842691 128 972704067 673 569470377 216 397945840 793 36383464 143 591609335 897 517862584 237 794183809 187 844150995 725 850160536 221 743093214 294 737765563 788 137680375 864 79009012 778 784952686 125 948054597 376 921899425 174 866659621 485 181785023 942 583666435 310 320635672 941 262940073 925 113350984 450 681013961 978 815770000 248 698383708 567 639850222 722 81310872 228 662243524 990 968193791 863 982125995 756 406143994 927 746497761 767 532440166 187 238276524 565 299771802 742 714677045 777 509424686 412 676455783 900 554661247 164 570818472 773 110016960 28 307075825 526 226629747 230 727002913 860 602516391 313 484000782 156 68571878 367 746141640 31 258242124 817 244746086 209 668528354 954 602811566 227 763777430 607 530191708 41 506376549 124 565633821 888 569538535 723 36306131 805 494099182 602 677123024 330 136487653 10 429420889 384 848587354 652 673536065 940 470842640 460 279003652 284 359778211 243 966701733 381 275556969 868 935370070 949 17410889 827 422436921 370 651501489 518 586708787 168 815464000 860 911351580 876 272363827 162 40550203 502 805743430 355 36211036 857 13069502 834 653009510 143 934653828 205 824217732 458 451724668 811 215156151 539 876387937 846 296916575 719 628474659 834 661119903 883 337192614 949 975489430 760 968091305 151 644025686 880 500528543 329 4728863 99 791471367 588 354397191 65 149610597 560 312290744 782 41811080 441 982210055 185 744477435 438 462032720 585 182521901 931 235544214 551 208701379 666 869599751 495 310298117 999 547540940 82 986352454 826 175845519 397 409127450 151 738580292 884 763638030 943 535488774 428 706470479 59 77231120 77 972256767 883 488030676 111 163558362 339 836609026 415 65781225 814 254645905 364 724399429 36 547050340 443 376327064 250 29435789 353 489776205 177 952747283 63 370617643 242 494627573 906 516058572 132 292361906 548 799700413 559 186976328 771 599337310 430 986317828 153 351700156 835 141245074 512 650477953 378 100750384 640 994456123 932 419938884 578 383881603 743 977939607 347 362300089 340 14468276 61 903337405 936 943645428 9 518562915 373 819187166 118 427073635 668 518423488 203 410874400 376 721009017 807 360360862 424 590598748 178 898598400 982 319798342 665 727998953 463 158203351 154 207478595 722 266679048 420 43167512 978 464209220 317 757951775 374 389431067 60 331669000 465 407548693 612 885310512 874 214005728 663 179133533 575 841960313 449 781550703 278 513870012 309 562946445 500 296536879 276 255967039 808 316117799 438 609309593 311 24589362 122 716072379 829 393719782 913 389310996 747 94576344 472 599939104 85 320956839 534 904126987 991 388657469 833 845710213 787 761676605 463 371480377 154 465969077 385 372781178 451 584461686 388 934300591 377 195731242 29 774445432 483 425047068 804 420945088 749 995365951 894 140631157 406 176828925 572 432410402 109 550382555 472 304541631 53 844346844 412 185523621 226 788522680 833 159667751 208 534196982 405 195285224 559 763458601 913 617910506 38 105283183 421 831134141 457 214797227 850 703176831 890 896915677 584 6053201 823 786792257 831 261427580 700 521007175 502 453020365 59 98432782 40 45930208 215 291255129 568 127378332 92 64993518 483 138167796 546 148600453 9 1401465 694 153980991 824 390552610 784 358891858 859 822388724 707 833227178 387 904229043 731 713183115 141 948411398 679 549335994 438 342732149 50 18621687 396 389510215 543 614871983 32 286080233 641 14502325 859 684358695 105 809696263 267 755459286 44 777330404 463 776362952 633 691997456 966 545229223 25 943576955 732 146814667 928 320293545 925 472513158 464 118395373 817 980359877 179 816034280 928 601118470 989 232687007 769 449183779 880 774137904 988 910068865 499 326268736 891 197951328 500 902083740 394 946134393 412 931384891 680 770225629 127 13268444 805 733217533 244 113475874 212 28794481 436 965995308 935 674451599 42 942543412 4 458553923 677 413733972 255 657302756 484 11982099 209 846229484 60 375660587 378 155209736 348 727725202 272 918951814 155 808931727 300 504082148 511 826616352 690 734501656 173 266293653 857 922302620 827 258879211 329 761259868 990 519858218 700 89015288 159 161836516 466 193854535 931 761920976 420 349396293 143 813738976 702 205764138 81 554340308 229 417718522 555 439071400 784 249566014 646 681174221 88 235817689 160 471524547 177 222004622 332 372461997 485 214095467 293 623233249 624 656545099 279 267180111 789 380834625 376 836984862 823 98401698 809 538239374 687 205664327 154 564584788 772 362703237 477 38055446 64 195672611 723 448647072 26 814977051 99 772350411 398 207784357 166 906825215 456 273317184 0 535656476 776 620595523 524 386009822 814 312833684 198 578803112 781 545534507 852 376480951 939 267007050 22 638629127 500 772561357 512 815154088 88 260513947 792 613438511 13 214376934 771 312718250 172 738554366 704 814484531 800 5225301 402 899814884 172 117599196 21 150702062 149 710165557 615 281908664 282 27555512 622 910548754 991 959286717 545 674519605 797 672913420 611 691007129 843 560788000 715 743994662 74 131024785 799 545475682 358 132479794 138 816071261 668 676167620 712 546620879 340 706200606 649 173538582 855 324647378 976 595556916 365 461479585 436 881673447 105 484395441 121 726187133 590 342080920 508 436789888 627 511368243 304 765916605 820 65231631 972 947464124 229 804496982 226 103185470 939 109115799 686 494355787 293 552984321 790 140012584 120 965128385 360 711469510 99 923508857 858 663611717 676 544173588 867 133874193 700 734331844 681 850984663 973 77651114 797 607495642 53 824673461 791 300699056 269 329518245 422 315060739 88 232533149 689 816575909 725 579751513 310 37238509 984 205032969 603 354988835 767 346154055 520 441668313 102 263945100 715 739604491 622 332144064 380 298310022 31 133993534 809 643772630 68 448596543 86 368279107 901 442658639 226 374452024 559 352401751 4 374785410 153 497619441 975 724055394 887 927266390 648 25016437 195 962149572 955 676738637 969 441486991 856 515346426 427 837900260 767 755895422 8 552348626 606 429606804 461 355019684 202 22950717 748 901169107 530 861556727 202 743654689 952 291967657 839 234108823 380 38079102 916 564105534 121 245592133 858 433434263 849 512919319 233 944258354 552 238834083 600 244155004 154 941555779 753 854721746 131 539379279 758 311511666 820 526153057 446 349475108 198 841492389 385 154535573 866 158138542 418 766462975 556 631208490 189 467804899 175 583385043 127 549501086 561 130566296 418 600450077 376 745451125 454 978829919 228 262701126 92 880478726 883 600745133 850 23780081 953 166447981 317 672690652 479 273489422 682 583341474 201 652635717 417 978295389 340 787796337 986 976178690 404 845751689 19 123033078 309 151688325 646 99595210 306 431203377 233 283197653 400 636153707 743 681610384 77 442058806 115 859587594 423 649693409 692 431417996 395 574269730 604 260310408 662 484470700 710 914689144 817 811929838 193 331029086 227 611004506 787 122637700 291 61276683 750 377489638 998 676296904 255 295741845 841 24122660 2 174558175 485 472013026 297 483422901 986 882068518 596 561113811 887 650411873 464 889526735 314 585319596 592 846687618 65 279590904 1 329470066 995 267076969 81 518416467 638 488750643 312 201050648 314 120690923 696 48209170 479 76891026 467 871133501 596 449757596 41 227317278 34 501943178 447 310868512 236 780940424 705 901341829 672 60034264 350 963197454 508 282780753 754 488328379 10 359014805 44 718598650 713 940139821 603 795317325 671 380931025 568 394182599 550 485219208 211 791723725 509 830168217 691 24755556 139 276908659 582 697142406 697 276901420 661 801369434 549 68259124 387 335643862 637 47563052 648 438909232 534 504882875 706 840319906 362 19229827 174 738461586 288 877947855 654 317190187 924 542031059 467 82559964 758 440921737 699 890219564 685 850870900 415 169123862 988 201112069 67 986831300 183 503458313 321 857580761 995 86838560 578 871158519 80 989423397 572 276113445 502 825994227 35 671652613 938 694333179 397 401525722 642 139510285 342 340052168 663 811475572 90 465810816 497 170669252 19 97471403 532 776768655 107 750207653 38 126420806 400 191512460 953 842001814 851 405328475 883 295926234 801 405399892 347 690205029 433 801114856 705 57695510 71 216385572 526 418851401 391 804990379 808 792229481 499 710246777 259 63007037 175 491050502 797 645348330 689 178560631 56 830616461 479 131615554 940 68110376 904 331514283 372 494621739 470 61807488 961 74660973 98 336359334 842 578789401 974 807766258 655 412168505 777 338568046 565 773743762 682 959015358 715 728157729 655 655051101 355 568006663 136 361750263 318 156482738 11 531928326 583 234514080 978 681056799 601 667734236 590 752472926 86 12441815 378 616773050 955 817967684 558 779908803 243 976203459 362 883487034 51 799283914 719 965360905 646 789164213 452 755530160 774 711986503 759 827616690 50 881877259 481 825968618 133 518932769 847 682076015 755 806012651 216 856195509 14 910739819 603 52794796 339 591615144 252 363056755 388 739842242 280 61140124 684 92421164 276 274845092 780 65210558 159 28491811 778 618706212 252 511659535 984 119044264 247 278741016 318 311472223 206 379173980 456 4509222 787 580967789 773 98797268 46 154216965 171 338800292 820 300526757 997 724092088 938 821038822 1000 335419810 752 421517625 976 48857560 260 47545018 451 565458490 131 321304093 949 534408239 997 902601693 738 233078139 412 863054122 764 222496727 427 350629490 727 891445870 36 987028270 129 608295260 674 398883478 688 823631430 120 103869908 124 983905292 435 706008770 350 22126181 206 878883550 427 256910052 791 493797206 185 633273699 452 932725956 870 709595579 53 318453567 482 220277973 616 669523954 356 327646248 990 342991861 996 116268323 74 746454946 12 336306672 371 494885396 510 608941447 386 517244473 189 884871391 110 803899066 454 651332440 382 127704965 500 263280491 248 658247372 148 696340224 566 995149598 348 748316976 155 116012324 557 662869430 337 278076321 135 461752710 863 673878869 795 886201294 872 231589172 689 968744906 574 95025850 388 434965877 390 397822964 685 132523516 492 873263661 135 955150101 597 464281859 427 990543449 333 433358338 382 802691059 656 177906603 829 634340610 130 885041930 953 859692472 689 240203452 942 806316813 93 720766378 765 811327589 551 726409772 799 643332003 387 539817260 565 429120093 430 970187348 818 191874315 894 617335960 181 249297243 162 561633673 739 225185109 793 241280299 763 667306184 112 933516042 843 631540523 580 34798111 149 62721709 76 934892362 223 32539120 968 366531636 324 519582749 51 992871053 374 782423221 714 41400228 594 87528381 660 674629436 887 691475251 110 128262262 677 254673197 905 534256794 298 495828752 295 539124043 611 486203169 800 994571146 339 715695547 195 660592203 857 641733494 814 417046888 344 33324370 325 788786958 269 976614590 695 982791700 792 71764905 502 230812685 222 174961620 230 974739878 211 784872800 179 901732695 243 743596497 22 440429544 46 651629459 453 540234232 729 514394135 449 814075696 680 705077887 681 191356094 38 650490588 110 702943554 835 618621710 897 42514261 818 142006415 823 625365821 724 370771202 870 747276257 441 424941065 802 903453829 644 925303914 260 11788431 296 234860572 257 989425635 582 831048187 641 764729552 972 800207846 475 926962158 608 104650577 675 484812930 906 472494363 441 329451340 666 951582846 911 619863291 507 215302051 772 253009409 643 276791320 563 185648057 862 754337518 687 786833289 340 302909570 343 351627853 986 357825025 897 116275004 372 158983485 464 742935559 297 419372167 531 205715894 616 929214060 148 30953994 913 226900767 505 208261784 491 543027712 906 367393443 663 233010960 444 365393115 474 177799723 327 284609427 61 443709190 640 103546972 749 706858625 368 102935200 96 428638284 287 392743455 771 310818179 368 387923757 383 821876919 442 460795163 272 729977740 446 781776028 483 376706644 394 352951433 814 36050931 873 815218820 105 419918617 296 806801351 698 735464476 271 651559497 32 49998582 744 370470077 836 549491650 584 464124792 84 550350036 120 967330321 724 826074544 470 694028946 364 862215657 503 239105035 943 88528762 484 339718718 884 518072621 27 671814122 908 14703529 216 770922799 90 478252367 393 43777137 944 216732670 220 382005388 346 911868614 676 922370512 809 841816696 944 55616423 312 845099986 666 298152093 45 795294375 204 991814940 758 607243497 253 811751651 123 476978943 834 622415711 835 341818464 0 366075192 208 620178002 236 959226734 237 712795851 683 715772324 801 954679713 64 214546267 956 719441426 779 491556428 813 651243426 119 43115996 671 783218800 603 966780452 877 684639645 53 334136416 338 672549474 5 352710963 778 457059311 657 271920999 106 655312491 548 734135040 854 926349292 220 195645689 648 450501197 451 803874415 859 695820484 698 930361170 969 955664157 272 533902927 871 374218396 854 302302731 199 556841886 968 254571804 811 566883391 486 417705557 714 641078172 152 42458115 332 339373227 644 709633653 91 700215060 394 695738632 273 918918379 866 139798278 396 742222204 769 530161734 857 666359056 551 721117283 957 720607551 77 776823102 633 391259786 491 168293448 961 807723892 513 511945156 665 367466670 390 749768468 252 767658916 132 909656020 11 162076094 614 119437971 165 849277638 652 686603694 188 564401533 245 162266076 779 252272311 510 394302244 987 955404355 662 282199724 69 318771227 342 357421410 208 550165628 412 595060406 581 913560701 92 479273311 337 381293936 862 462963360 959 203936279 256 449860426 659 505955278 631 603774314 441 663559371 1 746398643 916 932800227 55 324217699 786 984070031 113 673748309 830 775056603 247 255726123 180 186166049 478 489963952 480 127466511 215 155929144 702 342997332 943 551154811 89 998844502 29 16718463 213 498052813 909 847253606 559 173736638 408 923362771 683 169015736 760 775485158 641 937173739 833 962709289 335 458819588 722 543649672 898 446094966 764 3332904 743 840820921 697 871974305 898 105385862 907 892365758 237 111244335 80 466315430 957 754343546 846 998255975 215 963697209 539 559809495 847 693573219 203 953575783 442 391391483 669 672292401 859 473022899 396 762676544 511 156825032 788 745381003 563 696121731 517 465207216 772 476160749 995 440696830 172 655893722 62 406180865 387 541043536 23 644181855 558 705288249 543 465718054 296 326778059 103 176514510 833 703052521 759 885245393 419 210461027 263 88896745 929 285838732 314 939885702 384 560298044 646 615739319 913 227966213 894 350617581 922 834958780 769 41471106 913 37367505 497 670745270 771 128867179 538 889143881 404 898368636 280 36828994 100 631926363 284 807151544 227 437598598 365 20979342 729 161115298 376 20921015 400 96030761 506 268399846 631 385934007 368 453693809 29 391540475 460 311409243 779 913289462 915 231151033 615 591434597 654 861297368 435 736115814 494 424743731 28 872881672 784 691819496 400 934372018 317 337719396 972 790129030 388 976322043 651 856372449 399 796456783 970 622575793 387 857684251 556 232322157 907 13774056 637 283147628 809 389912941 178 267422015 999 23354632 449 195365816 494 694247992 385 761160643 523 276751437 668 830203953 572 961842027 582 607626211 745 724363686 897 260314703 863 304160679 945 784508983 53 262580394 946 119086078 503 945385685 480 908644267 788 739113571 490 131786866 327 396689158 71 629114098 142 614127482 36 24875198 512 360574254 356 223866138 850 494128357 994 692839104 603 206800146 38 566824692 246 792915505 549 54626300 865 79263481 789 397472212 613 122166584 979 865369001 792 915221794 410 633155673 37 233263495 397 919047707 662 81570548 945 134034509 323 298932407 547 961725512 582 619093680 98 410483852 718 445667109 13 592570843 427 39476577 219 617444363 848 905713508 812 8068896 625 849500742 369 48195596 674 925043359 465 825102396 817 324136158 281 179361503 152 850078458 516 243646597 515 403379394 677 256051896 663 556225933 802 384259557 182 706086160 510 835735439 551 964282691 766 539875825 590 998809614 741 511861405 525 355878436 69 679151032 774 123056162 287 399388566 964 932413380 190 366852082 421 544832656 611 833781585 468 394397011 112 406809219 721 571180951 427 5992102 26 512407665 584 563766995 1000 708292129 116 48783441 117 377392567 646 295138073 465 529277995 369 879473492 677 436749238 649 236468019 291 104249468 999 843791608 332 126422390 332 373465805 772 917945722 461 900524314 513 742776826 617 129976958 294 58249499 553 140065283 679 673738746 537 420258909 12 810443751 391 385307809 559 280910580 437 944278577 571 744654653 399 2432898 369 304513607 726 99919540 940 784652412 453 409861795 944 962815316 472 581954961 258 951299993 923 23557096 719 447456000 151 209546054 464 984138805 438 207485320 955 124125637 637 845777319 816 400702044 966 870001883 133 541682596 454 232963087 341 963929011 126 954036150 208 646850649 586 225296783 543 66130177 198 421965723 288 617508406 956 152115969 167 94133842 611 417775918 931 287981100 521 848263742 527 980394660 201 668212461 636 954699900 156 428112065 617 609680488 840 349028086 981 713272501 366 864318249 371 710248315 786 558448258 834 779163619 612 129887097 390 487212553 647 787206993 20 64467019 367 177569432 888 195785339 68 640243663 762 409059243 31 295064210 655 423139338 338 579321977 372 621371506 302 165358555 738 531214283 702 914625551 397 830345133 409 399582482 581 551520306 95 945492655 417 754036030 598 863305645 850 87457126 456 446308287 339 254295167 606 270226763 854 457951287 152 817379431 925 380134109 362 206061305 509 585239085 436 576959219 259 698591355 202 510546485 424 380089684 845 593923538 850 704223527 206 647946565 985 102538234 104 515371649 499 172855953 917 113240803 575 734876732 503 919789707 686 253299788 601 128675245 31 252247460 977 393377659 194 840848545 6 670546562 193 350045679 415 138096970 468 319862904 542 55022270 147 748394489 721 332260342 558 816807472 195 150865726 306 502981738 148 120857901 282 668903856 41 584411829 937 758692352 623 160602695 239 323199244 901 511970919 13 368637007 806 976673894 241 127629166 848 973459119 785 642379768 240 719486886 133 671411737 998 775038904 830 112043882 928 610565594 206 330824306 867 396746884 91 629916015 888 734533623 950 996190949 483 493059197 153 661916762 941 15839953 740 686544424 214 850935244 274 35159902 487 591857559 855 802368078 84 311484499 846 666280758 813 27201850 615 816908682 916 121116970 452 817759447 879 337974502 525 191830281 281 674125559 946 783839470 91 674061627 230 983777887 167 607520438 277 51485644 247 680729716 466 350129386 155 714657030 244 693249557 513 441312260 870 247338052 112 900185765 557 481146504 280 575222322 38 325495933 429 663465635 285 781839998 247 45381492 409 826600881 57 417003113 903 942178102 925 712057784 974 808136785 174 778377925 536 59207767 812 755362076 651 897505126 838 461478812 168 355196252 51 727927186 665 833371514 163 770076678 709 62276388 261 918254331 330 60866417 193 729823344 208 541431603 988 33177038 625 735018270 34 468858964 614 687706086 837 701532735 539 513370845 39 392146627 725 362297692 506 698363057 507 964818588 538 376109121 973 267937943 522 991357641 538 369250190 650 426284172 191 664064961 960 340375167 649 935621982 93 538088460 207 89193306 827 708382273 512 545344903 970 252139749 114 918959003 225 915494695 857 129521271 547 363849766 61 568270780 240 380540827 497 824003042 245 650333079 674 106688851 922 942031283 301 636370655 714 786402792 875 650968138 188 58938785 223 325015956 546 740194264 447 226142747 108 622079545 875 368218395 530 994653442 574 642642579 215 143828007 17 598594374 565 863418236 951 607825315 503 591228800 503 296779005 423 136170336 577 395145409 271 1050898 653 192968424 226 459931901 389 498963408 611 461093127 746 798243246 931 896430611 112 456893636 573 519571451 135 866793690 91 431091365 47 626903570 906 809265357 118 561312633 496 443255654 851 447613826 232 441588546 859 355785545 842 868635659 969 370619173 958 551920022 948 617473637 154 307374983 571 979443543 276 727885856 817 709261368 707 317052873 690 595876094 723 176783565 244 169830278 432 122329038 28 180291741 471 27524112 889 441618184 97 508309536 638 947036808 712 405145995 774 674892725 527 258812451 405 152405813 71 40116688 911 444017045 468 534669121 353 403035611 173 635835475 972 592290272 63 808389309 20 982554738 578 128843398 618 921134490 915 453228836 35 362615702 192 537403199 867 779671349 204 689803048 708 982578905 674 309093746 774 331356706 996 368432101 205 512879902 463 861295313 203 373075098 725 516117104 30 822609193 610 49385027 543 927709156 430 156939722 783 48243754 38 231623145 786 316717252 273 686689613 543 330659018 893 877493543 581 498181431 407 19228338 536 999159498 758 19537309 849 43106367 444 975963882 86 62605845 1000 738394175 374 460731830 172 401097293 658 35453012 472 124633202 261 357940402 457 486777330 563 869884031 440 987971396 796 950354368 162 133780619 78 805298345 596 483178179 833 302279132 710 99210768 836 178447311 702 135813301 222 172509396 740 267688922 126 477971426 373 948900331 673 903461815 787 669116776 542 190534447 798 136719098 575 13995155 309 799251290 521 372018291 379 451229469 796 629776218 325 696143019 734 683970834 690 629143138 629 190195189 873 955167748 420 527690718 954 711221331 886 494567814 700 766986796 940 378353064 420 127311482 355 969480077 378 243893133 603 166983341 827 188586511 159 212772132 614 595585474 873 378928552 503 75726016 319 954097469 961 783418542 567 20348811 716 948042834 584 297130414 16 831036861 271 478872412 232 578076445 55 747976810 562 763338748 517 896056257 585 439262991 721 589230176 681 268463559 241 400029061 923 212889485 80 152756777 79 903191472 778 57314428 125 6415144 28 783346942 136 575484319 644 346546182 842 134901128 561 626855140 873 750885551 552 666891793 312 429660654 78 457703801 3 466953486 809 682290782 307 78479963 912 399814293 148 78848933 777 209093702 320 472080322 56 633232956 154 734791761 521 862186035 237 877166682 458 648512787 590 975949254 987 64355932 494 180003531 303 590495382 275 980309942 348 182509931 369 92891966 98 314075731 207 997333425 57 716119598 392 822655642 508 488630271 810 83446081 602 527277034 334 330623249 428 621020363 894 746813970 636 189289308 614 119876474 883 444629049 987 53352738 562 190199765 850 110122132 630 474812409 192 789400330 222 365521501 613 8941078 253 608517309 525 118469418 480 652714689 43 730168465 822 656248253 856 924574092 251 707714109 317 333427812 722 758058561 480 696788786 206 351254663 443 121471116 945 807856083 1000 796038975 460 779961662 379 242709715 340 482277920 706 368166397 528 73440398 561 413108349 235 428017363 975 519112624 649 449031059 722 346342137 356 639632702 316 483886143 722 654795155 604 777222462 69 256648963 817 110576850 713 278915683 561 731941721 10 586928351 220 19085687 834 503564328 895 955152285 661 143941119 756 504083347 597 482030833 183 148707207 99 450178633 270 505374328 371 823039466 355 393005230 534 523349106 344 224636922 58 176964546 307 180844548 304 85612234 638 159986377 458 9683071 127 654772607 394 77006948 437 917128393 321 814920974 655 280356754 106 15583972 42 455382202 75 27118288 187 122021471 468 263220461 739 883551023 610 675013746 553 150215648 77 119134776 694 244273142 637 490006979 275 948031802 368 646691936 682 444563836 218 994606622 934 50273351 977 875255938 723 558700115 471 376002165 144 9312358 549 586034659 893 235197641 394 536934288 842 278412546 142 455784894 270 119464739 313 801886583 296 56891613 451 655554972 677 155674386 220 196274560 905 4957075 33 801786865 909 116190923 298 882802967 745 439505879 33 134778107 235 255469673 212 592393920 494 588065544 740 254231515 210 427735594 105 361970952 594 752754430 433 488955894 559 592814253 436 185236500 741 121934425 433 182611612 595 772265824 883 249048701 427 296297334 615 89376782 698 859839296 712 804913143 176 199377083 399 911117979 608 480456580 313 401498515 861 954938359 595 747129410 871 298070446 439 619607242 875 147747965 235 631187821 926 246571847 139 56471117 239 793883932 763 334823988 945 16519842 214 480240233 822 241667371 685 106741239 450 152517723 548 854035427 921 280358926 257 407319757 688 354899004 317 778883772 456 872544291 770 389823864 224 889754870 521 668562697 311 252857070 305 20040725 520 597199060 74 794078485 81 590461524 416 834648078 292 906056489 676 373128464 481 193976130 305 151062154 857 909143196 171 787839908 60 122204085 154 929156748 228 189882440 795 620832754 393 300097512 71 38336955 671 303531547 111 899748606 80 590644019 33 424195951 955 13278480 18 738981646 21 72674327 844 90111936 354 844067662 888 986387426 132 113466774 764 961431501 410 741559761 977 154986867 368 104909127 611 482834570 511 437585194 525 744935151 897 132692831 974 939085311 42 109222795 501 873320986 919 418365771 391 127668808 396 429268464 205 927716441 356 340546228 539 97348088 653 662483099 326 169467952 205 172861175 204 87891746 137 958647804 898 481497689 533 71956884 448 399986152 1 255305035 233 312744431 81 915761802 332 212888055 720 725741195 669 226752602 217 312768334 854 834648588 70 216180728 151 56853106 521 334195383 819 428513155 408 435457047 204 320146406 435 118766881 644 54394799 364 828033080 859 975532508 274 324644453 451 316305510 382 480075921 561 299680485 574 381734858 579 113081618 135 278952305 448 91571795 105 984435566 553 762329096 257 17056854 410 261721898 802 628517846 517 539510697 237 222795523 840 229432089 255 825012112 114 637504338 581 831037610 318 807684389 828 993323663 321 410422947 944 705344855 812 540320704 685 122787982 639 558951604 919 143331587 510 127612341 367 649756111 693 388897476 924 702490969 83 850355839 685 437666090 584 719843844 871 461805287 32 592194689 917 665802190 255 189824167 727 608210585 229 130785749 396 798357700 924 628350333 875 315764126 598 659932905 357 419333980 110 367168814 220 298686757 840 730099830 957 610623604 450 256686644 461 847567832 461 596805779 859 78376067 248 954241850 612 685722165 590 555943641 289 663197366 446 192074629 80 443315628 368 581354570 523 894189249 140 899772986 74 190797711 368 152385951 455 676098800 768 65320697 241 890673004 412 502066337 635 3900455 854 665562065 205 714256615 354 570817926 129 530852551 683 836979928 227 610462844 283 873463186 559 492666216 1000 654681794 662 943968784 124 15516092 397 160625319 950 568383939 466 738003284 346 787578539 8 173149314 431 585751436 344 422138916 64 696252036 636 253278561 533 103506303 651 272375560 461 656004580 330 682915237 349 937659244 163 687149534 564 733405632 736 348284395 250 262425054 261 887077977 144 558441377 471 458960930 177 193571755 694 70426302 163 701373290 227 453562777 170 754539479 519 37878119 470 995545789 660 190361716 399 450882706 291 149307907 926 244767966 268 481867386 402 561339007 449 506731710 86 379721093 893 708819298 390 439278102 890 333237366 674 194377268 311 759664341 201 635913906 879 419101923 78 655523523 814 123883760 3 477200690 380 200405503 664 688464030 974 985181207 454 984928041 713 454556767 501 242087339 547 451206325 32 208079721 896 903108413 938 282580370 293 899482509 371 888782745 130 905729612 994 151952831 575 627357707 717 171628996 827 397838954 765 381208142 190 509723820 987 618038449 386 395695814 526 181782840 125 564725931 730 817548010 865 684797288 502 213540255 912 72325738 163 605975660 394 260161992 501 52355839 949 120250235 817 973988904 733 417529825 156 260776581 62 337173653 280 106212224 601 117074065 159 610145350 531 293609712 55 106374852 900 113608170 226 734527318 241 350687669 620 546515337 555 737169071 287 785831622 434 6102625 670 836654799 620 150600530 149 10407616 237 234924476 5 162531502 370 397746802 653 726993715 79 744661586 214 326407630 563 566515874 872 395579485 960 920433473 897 584700052 601 584810443 889 571109707 549 914355416 184 621834829 935 431196496 155 84346751 143 673465423 835 35117750 33 180584500 137 600907130 793 959973241 891 334163371 98 221418982 56 790489805 905 490848554 721 197183075 162 507715917 51 838283757 102 660581855 617 498832114 228 102751396 735 435590989 85 130600165 768 430811092 955 748408937 82 552321784 871 564464583 621 902807923 111 714630891 512 927842440 186 481334076 443 169107495 394 121804373 144 343608958 283 220140829 544 563546357 754 4942785 50 932795815 225 910889709 657 400975435 930 776146184 908 162689554 61 366466010 611 743513043 156 702078981 543 869846178 52 273568335 37 377379670 829 565002142 354 988955689 49 348096037 71 89639052 627 875437859 291 189426129 227 88918928 945 275788384 870 461212972 471 56073149 754 630794304 435 984991270 318 404285541 754 317157792 247 148395855 423 789935428 384 743530142 72 915837067 276 450417794 606 640422969 321 353973620 893 115319898 715 11523283 284 873543446 727 898723432 262 549243278 815 730169062 171 846311149 346 541855102 404 134427468 654 144980820 989 519543583 824 164522547 611 346308310 144 725933267 682 801512779 20 361044330 567 387344612 910 510737066 139 587364861 836 647740424 845 243260273 802 348738479 5 955097233 796 132253664 306 354133718 316 676170714 429 47999706 958 562596999 871 230980857 923 796029694 227 760314716 334 769991888 398 907566134 578 738328299 161 29167693 897 972528226 814 277655692 500 172292519 52 527560751 58 946896026 699 755550623 428 714746159 576 870517344 201 798887823 205 582462595 961 125639377 780 400223434 649 894081563 835 830196554 453 943265425 861 293681506 173 43588030 504 790798333 406 25378410 178 602074415 926 573018050 328 700093391 312 174134881 926 71245766 205 382949142 716 568623252 505 834122003 756 252241621 603 804136815 123 634521768 194 232773607 912 21004675 219 981154409 323 132104969 254 286179674 799 917502572 32 443565966 822 738768552 473 265820719 613 288210204 382 29811369 472 821997553 93 858976657 879 303510079 597 569280119 541 861121292 489 393340939 992 403724211 10 120948444 728 215061516 709 310838747 908 741790722 836 863491136 154 758596325 241 889331917 132 121272115 18 150119787 487 564055082 344 482443007 259 112906005 519 685577872 858 245633445 304 567190006 366 118973830 596 109282476 778 695607338 500 269693496 585 358527964 821 535951182 244 304891885 480 285143161 618 38593920 455 734891563 947 858111801 369 473665523 798 640301396 266 941616456 856 374550556 797 391898939 782 406064697 559 467828724 17 353656215 93 1304824 40 576707261 144 498967981 194 474034496 345 452214999 867 849193220 149 848874870 524 364576431 631 533880601 329 430263798 931 312764104 393 134229399 854 491867955 679 785793001 505 946264331 407 478335354 810 314799115 371 367937956 932 624304147 171 8096381 485 343654889 118 41057864 119 870783650 522 153576155 794 42883911 724 848861666 698 721465058 783 233921976 165 852431913 243 315918730 464 128641192 189 216797704 727 350590778 648 857995648 203 414807105 524 680889632 36 684840638 160 337941435 739 365467210 580 605153563 944 823476998 566 7339581 989 403039848 417 579731340 935 299987321 310 470161380 218 16010591 200 186341659 489 374085123 895 437489568 154 945944603 542 471817995 22 483903670 532 867272986 838 93530237 609 330195710 904 205688465 326 225850836 120 454381671 102 834928772 763 182216189 492 150791258 796 772023973 586 131987918 292 102114285 235 840705220 251 798900416 686 95760750 113 780818374 20 50075722 911 34427371 614 659034704 980 328272824 363 255037248 116 730958291 491 518024729 754 172370102 963 966786101 343 160132564 82 898422566 792 334978298 281 266748859 349 574873863 37 697863774 132 412432266 954 776502072 799 786224169 186 214447138 135 422719979 174 648550268 855 968560636 12 782642122 856 186712364 876 511148603 145 642831689 480 864016443 660 927787734 521 633693626 285 865581727 121 768935113 723 168032919 387 850523903 416 359443623 293 63915377 432 954067306 524 165838647 912 820234894 703 52558353 570 198250218 36 760485470 774 198312862 524 837554433 200 412056899 170 348059233 565 362750363 59 370414348 257 332125034 493 89043752 428 462548276 484 142483478 745 125517546 862 499634941 630 188614881 529 578911074 498 619948232 202 212682063 978 486349081 113 466809538 378 635525154 314 838291855 101 575191183 744 407294126 678 680996208 411 726241934 505 402173147 50 767144219 546 850364979 576 491527078 911 45140157 91 660263787 395 796003405 902 833471611 163 698766690 79 247357818 819 574536831 857 488022455 748 125920831 966 360107395 878 211810381 888 181790190 325 762237284 353 43173774 91 301871331 900 486917651 610 940668576 675 233598537 72 278682330 475 976405308 121 634875561 938 840224634 591 252075741 106 817444711 541 870102366 249 656976004 984 92803122 57 772677997 350 450980055 551 824576792 977 670600938 937 161947901 668 401059423 363 570918912 932 704832872 839 750128463 639 986222984 505 92071914 770 96065873 325 579000789 301 48997205 819 940226583 115 120189884 804 235384312 152 106636061 185 47978332 330 712092103 831 953862826 868 903859270 808 276786563 869 126624709 890 183406120 288 392842142 255 653273173 449 411723886 961 13460849 317 67932044 173 75641975 890 287934538 264 8105357 390 578252121 737 72796418 544 755288443 689 228257465 958 857418391 130 663247973 857 729910321 462 472403534 768 734454818 344 735403339 823 71240615 721 523529027 16 775884409 63 588319763 291 712100937 77 795043500 395 531740126 395 891595032 812 522514546 922 469578696 69 585816657 781 843490310 373 867754986 445 185927254 380 146539489 287 709443179 892 36527429 124 248958714 685 998328757 837 371565526 968 414370021 278 385348620 500 531200153 127 379343913 432 281540164 515 929888100 832 468668408 490 935099061 40 295323908 425 945371755 848 520270853 993 44198810 425 745888992 795 25466979 984 998339955 167 293552689 511 443221447 362 522767261 900 746765018 205 736820042 459 809564908 414 740110981 741 166003262 597 659724095 509 12897790 115 214876836 329 452800220 535 16984131 398 732479993 150 468106889 765 874805671 479 944178960 272 289526392 447 449626289 755 806879090 282 976688979 575 806547836 652 957435051 589 199753100 574 683997527 754 781292251 13 296352583 941 719823958 274 683063271 517 802869743 81 790056574 473 880720569 465 874391332 412 312707331 775 97850469 799 478566078 225 152337974 212 313536658 287 339977295 831 628614082 549 803703429 184 62089768 609 791903841 506 351048997 430 485422750 456 273065832 759 264406995 91 351021346 22 824173782 2 842242011 830 750553611 338 44286235 777 568803868 419 69096316 204 572890040 188 454467726 237 615759275 237 359270992 87 786113119 217 684954785 903 492170403 55 429944287 762 139443700 351 243268163 270 401815676 221 448853029 774 221038623 897 337117018 262 620009890 134 452024914 383 808288708 892 237743455 641 893474654 871 879522796 627 300058418 617 813643819 987 410920638 203 321918427 623 456653512 493 419745405 624 393845683 329 563964724 313 522377662 755 132858057 294 61559580 138 918492118 55 782938807 335 65328849 74 395996919 903 863827641 459 852427235 798 677467420 590 574907788 642 88329045 849 907744653 660 198362051 519 494838798 528 933541926 634 175303415 763 33065204 418 137654228 524 676164962 285 773422052 652 7540126 389 834788960 536 725005489 275 491297268 849 814666692 448 181744568 192 748812370 198 386131771 31 375096911 485 546190571 812 230188324 301 448836361 97 730654217 517 21114137 987 993279736 330 818129587 702 517342319 546 702324584 108 662347878 842 712780383 332 235234820 722 505130356 702 250634615 51 45076651 661 622126377 495 732189176 193 640114911 493 189787821 263 150630249 785 38036224 786 274428185 925 292120869 890 898685966 469 665400197 398 759442431 468 296793057 918 749207068 54 403108702 519 536395186 464 394411609 81 625225612 708 745004386 54 413828210 23 306108841 530 875411170 289 544728542 634 744507854 830 733695479 8 920583678 358 123203494 602 770393907 424 451946561 327 554171206 160 681317737 246 842672531 396 174538225 733 18187444 804 643406495 461 353128630 694 786017720 371 679373570 449 835414991 589 981605587 319 791042278 129 431542119 864 790143180 944 816764456 7 804454258 832 441473235 899 119061742 373 809728834 587 508434242 877 170439181 727 472473598 616 602836254 135 301534555 256 29290394 605 778754280 516 382009309 119 247673359 151 846946184 103 486292381 204 68523778 42 282760352 338 696286012 715 861321691 797 729657857 629 693332780 548 639778713 237 106110555 543 555298696 145 559096530 618 375934623 91 982816359 345 784964867 116 194640422 872 978824330 279 425887614 369 91650680 550 369156473 909 234093922 553 130807613 713 951980479 175 336893557 88 335222890 995 107664724 247 621432718 972 82119279 525 759530691 687 704125024 605 200754926 791 849918299 832 340519018 326 597797213 683 768805162 621 448423348 23 368032491 939 704066412 578 840907945 281 650091197 891 767671596 831 43806082 600 204633077 595 742456135 335 375481056 751 973976022 600 679291316 417 323632991 765 732093033 888 984269102 697 712031842 973 590009175 566 464949846 652 949467013 920 192905541 869 746866542 402 524960142 138 503909530 393 713810587 726 185226052 461 358836045 328 779478953 119 774496487 340 962235234 845 736941454 539 747275481 830 915574462 261 596701622 103 709324819 333 70250879 410 323882202 516 113379397 752 890546855 700 166504643 607 393701829 233 721416578 479 123160835 810 150594910 52 368142928 459 426650524 493 289412145 240 967309370 345 65462102 414 606366563 976 701970516 324 916643460 787 415907655 823 523091315 332 652960461 223 918465241 167 557046644 729 692133159 621 383399705 952 129466735 692 781642912 967 439154610 981 297073004 260 128574057 359 377230670 653 571636258 828 509617032 740 262367856 623 605849953 99 563000490 636 846192544 755 45347269 891 13117898 476 564677404 268 684970036 790 2894222 495 664796464 422 916550557 683 834727564 97 464692474 98 817078901 328 90513102 454 246570474 686 990186168 396 531931228 434 279849158 360 646152921 254 756674687 576 653036878 326 416382112 375 33375780 354 682416105 736 695329296 23 935098985 276 305910135 673 958512290 448 823662871 15 559292943 766 936126347 989 761509432 314 405786875 87 154539713 467 864480483 174 314708074 851 868153612 808 176241307 730 548115604 250 667775593 656 441587023 183 850549792 680 74559082 85 215459340 494 872758966 863 744197211 760 759589343 397 903722682 138 619039769 84 82635767 494 166094359 733 88624909 422 515352412 9 422237811 773 910178165 720 754510451 777 800381360 336 940058278 244 287220385 134 429347340 71 392966087 128 792801783 773 357959912 796 27281624 176 483340039 279 584360695 806 790497871 329 894853878 415 186470827 148 947357287 98 134231874 649 900141833 652 353680593 763 451278228 751 172078893 58 330176633 281 963387570 45 334323463 544 787136389 996 429134371 807 888412737 558 769005160 26 997731175 258 964202052 442 376375655 494 364757969 784 206460967 804 351503025 272 496464718 120 920122370 506 950384124 867 681852686 672 653710121 66 939783214 167 570971170 104 65278232 832 115423574 610 605813684 722 899625553 398 637460903 841 563389955 844 582159320 636 68139128 832 288073244 711 217419330 664 271242644 376 435278636 795 876302710 807 33189595 698 427785970 962 741764592 406 967990400 910 738924293 54 89729142 186 114589824 62 335921843 240 810852429 60 189226263 791 671905735 104 937576801 823 815734620 523 101313420 745 855038506 763 945022263 382 760735801 932 378778437 953 570032240 358 185414543 640 266223878 673 489480867 967 728359137 411 748789389 858 237289696 756 116202269 469 297807993 411 102771554 737 225198581 123 184706434 410 590304328 106 506279952 702 795665403 223 666404455 516 23698618 624 813579760 740 625198308 789 140659855 598 534218689 678 329861705 545 381291061 538 927080245 53 419736460 304 964015662 152 375609751 407 26107896 246 71809926 798 743438965 522 242066552 383 928586633 761 501384604 847 852598086 770 411332488 688 432171797 293 883109406 574 79064776 859 821477828 428 854806124 814 800709178 814 240423394 670 442400565 867 128234281 255 481903354 214 73884883 715 520223741 573 826041907 457 22742603 884 443098944 9 964705352 875 278514784 595 553822116 921 573318818 333 338168827 946 323289201 661 311544671 446 975341527 383 752888202 262 111843347 777 986052082 268 26646471 896 636846679 194 326190562 233 503181540 55 6609932 243 105727856 232 167213068 149 173481507 88 865850706 617 820017599 296 156308629 491 981855087 659 221591053 796 503878397 816 985313110 752 874333489 333 205947117 558 591541269 980 923456992 323 329679783 961 233614572 673 585674470 807 426402960 268 996616347 792 414647352 327 916242642 219 224872166 262 699869746 154 153455206 226 942191325 517 170347619 675 722901976 861 242055722 405 118878077 321 560194417 934 491084940 959 201651059 123 350217117 75 960298838 275 120652299 853 321730892 477 735557284 81 628969243 884 282835497 956 105838436 213 225014839 144 691131665 442 810596078 673 684962511 984 725490326 787 817320950 390 11281791 898 640012004 49 298827386 112 701431918 580 418251926 367 668647139 275 616127033 90 32371911 478 875437949 847 247582998 602 499491806 792 478677235 122 872815604 37 654741747 623 53238455 139 226417151 361 737658110 208 857408767 643 744192496 822 477360099 306 170323823 42 670614942 607 243828528 959 687834144 394 764563288 409 201583276 917 148913118 891 261884673 954 476324669 467 850130781 56 858309400 5 196569237 579 913621330 507 873828517 706 440351108 421 241045964 328 888267569 377 423343863 650 589665090 680 657112301 200 941123202 828 164754146 795 674569200 669 460135651 743 459477328 438 285492811 712 326449764 568 573864004 773 474981497 316 823164804 753 911976089 648 998523154 405 547263782 150 945129841 174 828162503 149 168730505 755 124889937 403 686276824 617 999647453 52 872374988 633 479492903 746 177399468 996 744424730 805 962675474 780 858345376 802 764561135 286 80147542 299 932735308 413 890338550 819 915030792 737 507930128 744 329418545 261 630049729 728 598283736 816 894665091 114 444551229 729 235194884 737 784277310 424 852888321 182 787427030 701 503559134 640 39104110 966 795148636 837 538673418 107 568779862 471 485990363 555 336635772 799 747429243 929 394470459 255 424703380 241 62304995 95 199405089 990 365127892 675 698005832 788 226128778 858 144524884 36 130463601 127 691326820 341 398664201 848 786229281 668 686643525 719 392209395 902 573151952 8 716223998 635 986017788 955 197798271 790 743046096 300 235665881 175 502812540 36 964622536 474 258450491 744 375314796 70 298841793 229 953650966 801 272899691 700 62327176 810 716881525 653 294435132 581 486310932 771 446147040 793 919424987 283 578938247 212 336510661 314 339274926 92 292737813 616 924918017 32 998558379 158 23197046 80 163856972 158 848622217 189 102346369 141 449471490 97 2679187 294 163667152 756 280179946 691 658162066 540 571146709 476 256202965 875 734562227 835 82749246 776 804949885 268 830871458 210 330646390 823 15123185 731 457228527 646 754278062 290 371865457 662 22937130 156 522908459 541 603368748 788 73199960 708 456901416 381 703581418 178 389341015 474 688766016 871 188646134 728 127555283 951 972728592 799 601534865 630 888115924 531 810839559 147 971799779 622 530309999 432 320219203 737 662394519 187 190037747 952 606381316 684 668265399 728 737242849 115 547668734 966 891135193 119 307272829 530 233287016 97 426596320 132 717391311 647 657557331 796 906434087 673 967732655 658 284413939 470 602373871 121 2613060 135 218988652 360 396861882 991 583863384 782 47799912 651 547647840 937 249345151 368 895519686 714 794320960 171 359232836 118 659172784 647 498821940 917 396371621 754 394154263 443 525041773 249 490576621 131 111383173 305 501293658 423 511726488 449 417982235 145 921346117 941 307803074 289 150375184 982 410821859 764 534872823 503 486244847 123 839559824 134 207989982 204 280187118 813 238241303 581 372034169 403 810173375 673 681207115 979 927724065 430 105686 948 724236181 667 71456059 704 742705965 727 60770879 224 265788514 38 512789971 398 267058754 818 605090411 194 174681698 51 14066610 524 153811249 591 936005766 57 107123993 666 273248117 407 36363016 704 735659107 15 762877671 169 396168409 977 313977669 114 139359011 236 727563616 862 150226811 736 681918574 968 514440357 882 555205965 873 218444697 263 625412912 830 690063421 671 153763714 945 355406854 896 42875250 926 220403159 173 32005394 591 882024793 504 981823864 934 83983644 603 904620013 148 410107054 160 277796361 710 103075097 220 235946471 41 636133286 812 696555279 578 82318264 327 772535187 36 401001989 64 894014413 60 250902616 102 686742101 874 855909131 774 998041685 168 308777259 656 87143331 55 140335884 21 753781922 227 262086909 864 2661096 117 732090974 186 620990266 413 854642780 611 830488336 928 68975154 943 827197124 634 447887525 495 50888581 498 936062438 215 90104149 850 734503676 85 794063796 626 668320318 674 995152258 887 603080451 343 420641489 353 728861210 402 225064046 334 470547420 871 537618756 881 408809043 305 554279596 68 226246628 853 896751022 203 994281039 837 309432855 955 75211039 982 947885257 777 872812465 656 983114629 987 31877179 936 787082276 562 942323197 266 503292992 334 301719954 984 795199944 402 672847421 535 128125550 891 329655854 897 192262472 450 669052963 754 888057954 624 577536195 751 305539170 236 690156992 871 881070115 594 109706417 690 199683855 773 350176140 911 413296388 443 41202998 425 113197475 463 568974639 490 841911833 984 858803282 77 100345315 369 32489948 172 3384794 955 731518784 224 321068924 573 846111400 106 926354367 699 856465647 856 31229934 497 156736785 960 130630987 553 998578149 773 933986005 733 200964374 16 59842401 990 971928867 221 525281502 113 898207418 577 304414758 674 739096067 749 752660693 36 10310484 657 326438521 553 85013723 436 719099576 905 839115888 213 429105366 471 975020613 411 812053595 213 397191975 564 539753036 335 714590599 876 931349996 242 871947018 403 61588274 731 885390691 176 606821511 148 576221269 344 73792317 491 678289727 998 890389951 407 146845280 329 276682485 454 581260761 364 233315185 823 203774089 219 16010854 164 474318702 10 706887443 941 432644432 296 340774877 606 883650817 754 860315623 988 923731303 452 354891935 622 51922480 144 932729465 813 304900288 591 6613136 732 586472951 728 945634173 190 558746856 632 714745249 577 590549955 160 27374899 295 906058399 813 155832141 986 19617814 200 672791195 240 205824271 481 149389920 886 702388162 31 779220741 414 723376095 172 400473364 615 110683169 1000 232681681 416 520289748 16 613102732 144 535556951 682 852718145 993 466482681 223 227055157 168 960403103 935 766063981 962 598100472 517 354427354 385 988246723 336 890503924 246 562053398 195 27137697 636 644032717 508 633420485 415 604312841 503 297277045 513 972469820 310 229036677 456 299657949 375 808971090 755 365274325 656 832682748 610 935038476 352 633785385 221 960050134 14 941650893 776 276221577 923 975320331 670 102022383 164 337399117 347 761548792 858 323566302 955 751418851 32 109252937 427 168236964 511 389470889 227 864369658 585 971782708 916 712927719 997 471178525 678 48665302 156 6708246 537 247502205 138 247145240 107 896035971 292 545615126 690 166182907 579 461568059 166 752789704 240 18899362 862 435095935 641 204793195 820 433698401 740 562861115 466 275803899 551 550063357 679 15483887 833 61041662 137 451200165 593 295413480 121 764157217 743 513931200 718 657442622 168 348281492 686 295471494 754 21336892 903 381706842 462 250839769 490 873508188 251 190851582 418 718744561 459 128109815 91 826228610 403 754458915 638 900884864 431 763904547 262 944497037 839 724439248 584 191709917 557 933114974 447 837506379 98 123655700 812 443467574 631 611812292 842 438639349 780 271174751 118 243226038 221 938125734 42 90659846 392 305419946 805 512008843 283 177294713 291 65355157 54 578465781 689 31482589 895 407525955 688 797513243 776 830508120 717 18731654 704 848300368 203 767259672 192 274593417 589 545374373 306 861480357 390 140481584 87 388162167 776 321219309 632 859072194 255 425762955 174 744902911 271 911904555 768 144993652 2 961327189 22 346050783 248 969769276 890 746382326 259 40939754 776 469708770 459 326585195 700 845459757 520 964693322 375 739837102 823 969588950 931 821667464 899 741717532 842 278901436 229 895947431 796 37178617 761 851002426 561 20040740 386 247759928 858 707731549 528 410142833 471 713990149 356 763005083 259 310244119 639 550065400 489 190858411 989 274344443 76 436810152 876 890594909 205 306242103 606 29000850 965 980084497 856 755934141 711 137944540 782 851592578 894 470283045 650 369703935 196 957486375 759 437867287 699 40123541 520 849380182 442 545521529 352 160932521 590 52284970 589 464199584 910 800940850 767 4970972 850 899569185 833 451782300 743 786906869 515 999414427 701 705642389 457 104661381 915 511375415 18 131218097 807 109920395 32 954229334 44 587229940 139 75273617 645 496512169 156 388003287 295 337206222 797 75151282 300 199439644 422 670912635 747 133619125 686 878834479 328 934259634 771 116580362 293 735052086 60 241775623 996 140215861 481 199353203 524 582160658 238 174690411 194 552309361 610 503565068 8 286504748 423 617058269 6 64472650 188 554046891 586 862266431 966 185237092 465 970097535 836 111935094 233 129339848 507 149209309 590 304300840 661 891055721 954 790153122 909 220441286 900 66294600 441 783552942 618 951527365 279 532245568 94 19554681 18 110473639 233 103475015 863 33612361 786 273149430 98 726812193 204 708778253 656 213489339 557 136435278 596 180570819 252 41787849 545 502619969 610 592080348 276 907240127 655 15788967 94 667088847 54 989710372 427 631461516 766 162949403 876 4286080 555 595959319 81 442257017 566 116522285 783 692965532 277 387358845 582 197202672 782 82334889 185 416433327 21 836422169 328 795165182 309 849693273 394 801193346 205 451333749 771 770759847 180 398789312 579 956388965 284 161743868 988 863383458 952 512264010 896 856809045 462 752012560 160 611989856 868 620576412 972 108430526 384 238869968 861 810213869 760 160944546 511 677966221 681 811269855 739 363400692 335 991027807 403 522681459 178 280979268 715 318550888 247 143521874 107 82691617 485 758828329 487 244082225 508 523864259 858 893003427 951 784804269 288 354981086 900 498773254 882 45459692 4 661007010 924 741589156 284 876772056 625 578293349 336 275441674 813 524586817 151 615752931 787 256299153 841 71396952 702 432017544 615 845909018 823 63164843 570 850917825 600 385771857 680 96447213 18 348871035 128 519981714 655 848382255 930 142126608 178 176287044 27 160151936 620 241204775 170 197410507 218 886496883 580 679439333 104 536741615 913 171341868 183 175452639 23 245220319 115 847271098 67 439013744 670 823025675 480 896564839 174 644729728 125 118238072 938 941431891 815 692266588 456 640368604 987 520152172 62 549841510 326 937146444 659 756043753 496 850081456 858 558337701 163 559335267 884 675427374 125 722814606 162 77787214 92 571391033 763 360931786 650 441724783 783 654390503 675 709855509 781 93149245 850 864788785 195 718749264 885 17389590 899 749284635 994 169304222 913 990616607 10 13835170 793 542497921 510 248214083 508 902331101 582 652701956 176 116465171 282 639510480 968 440626792 136 135298449 222 508926110 239 996617557 266 219580770 367 683672948 432 603415390 533 860623845 52 817254195 166 778861345 397 176154798 497 66944773 830 543917668 806 398735614 858 940711873 847 3458807 175 589331122 478 775492485 890 73638163 494 918560592 420 824565987 281 952038294 239 892311617 658 798262152 283 856102673 774 54886575 815 877435782 456 870995797 831 705744039 971 759236565 205 42473821 998 473548832 764 504317950 384 309619446 136 175515218 622 404329145 56 125882538 612 386787841 708 604868128 444 842377783 625 896202954 710 332668545 709 734155918 280 711149801 690 530411736 271 141557485 610 102853950 632 416256831 554 46790882 838 983267999 364 339781963 147 487984627 128 319130195 533 592333638 644 880323348 804 169828527 582 231019948 427 903148121 354 122601132 537 980201664 162 521264117 233 459931323 355 697444480 50 889987309 278 233767934 265 241804619 610 175418765 434 328294150 22 840298736 218 348069673 287 987928489 131 850284127 823 196453375 48 429530414 398 751648324 904 703144369 887 626794662 879 873924900 391 736730427 779 937521545 344 136222996 449 362896016 928 655836675 426 703702710 122 727831140 862 609857372 397 391371813 931 569419192 684 746042156 286 910324410 159 537614665 610 612297955 141 910706771 53 972718137 921 243730173 773 60691903 927 827988478 999 801818037 936 224299103 804 130246811 470 422345641 460 892441422 892 162567138 126 943724542 911 386694810 128 558879098 249 175372542 47 47101793 611 118512638 869 814967724 411 623927024 100 961857076 945 305929834 82 608600380 35 280121379 880 513547553 287 234251846 466 810532388 520 973295048 645 146942379 582 267565435 750 435475207 981 806195195 742 597994555 589 536992113 770 483019721 17 201634501 661 714257010 383 523611335 838 944390406 633 907954847 467 609561740 329 977120784 835 695946197 770 299423768 47 83692143 659 844944775 417 779567231 615 70344925 282 874276085 105 54590000 546 443972575 471 535974923 571 411048890 517 163896570 86 397548637 801 504216763 601 432860939 173 941709444 498 846409585 674 359641617 129 782451437 796 517139860 601 627312228 330 144089362 24 814053964 47 304548571 118 708556888 980 63968324 481 892907155 628 448713771 218 243112376 562 897153323 955 261182047 531 168200751 445 260826043 127 934416123 837 545394491 427 681547870 943 856589038 139 386426727 893 810379582 699 123972577 137 747884082 402 700117853 735 660542097 93 106951131 605 734892874 328 511637935 829 420238255 784 843911387 879 432379743 909 392375851 802 427442909 652 282763567 189 563340295 529 979011925 12 249392546 707 880444664 693 263366101 779 547184651 285 954947977 804 78700780 564 944289036 757 74065456 830 693769836 980 519373402 101 38145710 22 605574771 21 452349787 486 748845470 518 474880572 406 526631671 571 207668699 331 984156900 802 602181464 96 474245214 858 435969875 255 794433572 681 916232618 268 584233362 878 921437162 345 712581520 916 502437024 642 30591229 983 362391540 30 116229660 707 431257395 877 611494134 16 381366655 189 274262396 631 50541716 316 335894290 598 813338082 766 315950219 907 243135422 347 709149330 503 831685967 320 169448085 947 275857565 707 780575074 458 699805920 55 112149676 463 447498760 386 546140539 749 943584059 816 545965567 349 264068738 351 267237314 802 5639867 180 778428152 316 888594443 469 348237968 743 326643889 622 815130805 39 331276415 428 123772638 413 867083357 986 19937989 919 457946056 372 496618893 250 576508773 674 579554968 977 776349022 12 984839983 949 921412782 987 798981067 787 946933917 384 340269827 632 486818627 200 687800186 140 537975664 704 477870271 488 926656460 385 524069747 260 575581542 248 458530343 67 922244075 311 67405531 810 474660777 249 976141387 522 503063211 308 498691131 342 780033487 577 640832414 145 851612641 259 595235028 204 229702357 813 919584505 770 988440252 672 416090498 705 947521447 66 954429069 817 685298697 589 87038126 288 114349198 324 166756585 759 824609299 341 84197665 886 97957614 6 919205187 148 823901022 342 640070040 451 604803481 581 288079959 847 268490282 632 186299397 26 584083932 428 783365587 794 971820887 610 741224035 853 767240716 371 958236764 480 121084787 718 954047622 878 565785312 819 887220255 162 771042276 632 4435442 814 821445868 284 924532768 79 832684761 228 890891820 390 434935236 831 900736422 335 209774011 900 865770377 312 155591216 93 328102395 396 159199616 514 801430730 376 681150494 294 783470988 199 304936540 162 248749495 436 897845477 804 215152079 364 338590165 286 659477599 871 180664599 253 357140984 973 745248568 65 445778196 164 270481514 711 356931352 892 788983735 607 794622882 5 856308346 418 321565695 858 306378045 838 656691916 339 603924486 323 825134264 20 391082330 502 581020225 480 297626441 854 392875335 535 109209082 769 306464245 613 597726075 434 655153972 381 891301437 737 452598748 342 830768472 164 210355646 892 934588961 38 75500074 210 471835963 311 5025799 36 829942542 609 217020469 193 77866602 601 63736691 299 940623171 898 507121454 236 85051289 390 12808949 168 177050600 891 380277707 412 961403264 616 801243775 452 240530435 851 154985968 36 470296540 199 625802293 345 713663750 500 136139814 199 938225519 510 821161453 123 97882316 914 407628210 256 605075311 712 423747174 297 229033107 879 438758492 177 646841326 45 753538011 781 219892246 76 494336603 689 700986536 45 921853256 627 216259755 447 741667724 425 459527975 79 486984503 885 789839745 690 609099973 71 3450595 817 897547955 34 309672743 125 185809554 366 371889526 250 781705230 979 308077171 544 350882016 113 898048004 804 477129001 95 945314860 45 725159715 816 241065268 354 44169811 237 158899133 17 873602526 200 444829941 696 452537072 859 18372714 240 75486091 690 95202736 299 940062071 149 868446031 893 811901405 965 665244602 191 398396498 434 327227177 924 651457098 661 456145237 689 126015199 147 333722331 406 400844263 225 734534357 923 789513888 665 156274612 600 246296784 971 451496421 451 34169946 993 310383951 693 368527063 824 534238896 706 55424979 64 166888848 284 264695947 169 262068904 283 748124509 756 412063938 578 981836343 732 361012435 396 905874483 579 724029534 890 947737579 158 143631904 521 958747971 142 410147308 635 71036102 701 563840217 242 983116809 505 625807158 505 566774820 390 70956738 302 179398344 281 36587985 375 243400982 902 49385459 906 407515645 668 295542143 996 427667956 565 912808583 409 510508678 184 298059148 697 343696875 208 776719221 386 775175278 162 190036733 139 836466138 915 714872525 502 211298875 444 661634165 697 932076398 189 135641113 540 929440353 230 739438997 80 743424151 156 371150368 751 716875935 91 911244786 788 247278530 601 229440140 903 703727057 608 337883364 677 462050106 419 68886286 561 784580920 227 456022791 982 594199592 670 373583850 492 871449047 540 572550836 641 457952892 466 329429054 830 977498351 816 940005194 914 943358004 622 135084975 876 616326030 910 259645283 475 677096046 665 368824400 557 790274069 119 801062242 104 199662552 907 162848529 529 758927492 664 537071773 997 227320336 728 639057171 881 379282857 197 683219527 792 689464461 34 321477757 534 431394743 363 10178076 942 748128135 855 83029608 347 385190692 814 782541779 0 355863954 180 233872295 178 18812711 457 186499141 189 625564850 601 765729843 111 872635010 508 820388869 37 831812028 836 300290221 376 337427351 516 32038005 681 764913503 140 736257509 863 184273756 585 952444895 190 446398789 701 353591044 479 433390584 882 52994594 49 498478077 914 653705153 710 242443461 145 834081439 729 500519146 828 247166530 342 973573418 83 893150380 447 496121336 382 709554696 148 50517837 821 931361542 898 139593045 585 35513043 826 37612258 256 626520135 538 525854637 998 692177344 839 148267738 964 169699483 235 113510827 190 117864485 870 144423474 581 264650711 987 674524630 393 870715630 264 414459794 303 950448775 670 854106839 584 529289240 372 734222884 793 392395965 454 471655569 156 64148509 572 322386087 670 322305059 868 597152460 356 45734272 642 871095052 102 181633120 782 378688087 572 570288998 48 971289817 332 607288906 547 566625581 542 366679897 949 714073689 490 823145365 356 478109943 947 535394948 920 372988643 304 709533608 731 571260058 270 970131378 871 756909977 855 273912426 234 747464131 39 143349730 729 366953294 847 995743985 772 185236329 937 777145777 142 775353992 956 693317496 431 29896023 967 280277829 591 817002453 579 411572727 691 450653073 778 528953261 485 814603801 674 656349737 381 967848718 503 960599848 518 354150034 516 98018230 128 378149468 896 359667899 183 944633229 146 167599052 676 171616972 658 355608021 612 306739087 560 385679833 617 877934738 368 131568408 943 940879498 32 651549496 734 442934992 200 56846531 878 593736525 545 508947814 580 265506965 394 73032961 442 735023398 560 237143029 322 433955765 579 45507681 630 193277506 686 537834395 342 303437822 571 824849501 989 699736556 668 737510537 284 549844873 447 596819657 259 48178036 102 111223856 336 61823529 43 188632568 641 727693369 282 928436171 79 347047350 417 89157722 739 34966621 151 462397926 898 286753054 850 870060513 503 469425741 352 882780976 325 788591146 812 408250728 686 186662105 456 766563217 484 503976188 719 664605229 127 417407660 282 538485994 256 873346526 88 284755955 391 570112830 757 726336278 280 811217140 257 149202370 315 495272659 579 112622369 215 609909581 0 718604644 643 31797167 443 179056690 728 365132926 152 833454130 176 978104869 738 160687407 1000 946861954 433 733273702 573 924849303 297 562134104 501 113787690 105 775670763 38 614399394 151 56708632 840 223933580 318 372935144 9 632082623 14 213260582 543 621965785 717 843281911 474 773386633 362 379606106 575 556161939 519 672255417 613 256961532 142 194710902 618 584330262 385 13519406 626 453834664 756 50609107 968 573494633 153 237714757 809 412562105 851 641870912 629 69816030 873 565680339 569 771318883 674 468386917 181 317963119 769 899828563 884 633177162 69 884862416 77 19060465 798 569496204 431 239682011 225 589183218 901 602622219 594 105509395 133 48864502 283 657544949 206 671013327 268 826621498 174 283498912 483 434568560 307 317892713 555 175380678 558 703790277 0 204926966 745 946308088 249 842332349 444 86407289 985 569767891 130 26083606 448 663440552 304 94376951 204 628019994 974 53189603 651 950332842 758 110831659 787 122918703 254 155036753 536 515720160 65 182086245 440 801538235 138 402264572 45 709813262 454 989094015 450 381780631 948 891150876 817 861867170 489 15737575 839 459900165 209 297885548 395 381798586 439 292763159 568 403114816 820 917024857 116 261302281 742 189654795 387 598162870 812 369702509 706 318864397 133 16880171 716 367068566 369 37794353 878 179191652 981 115052018 527 838125092 524 855812294 136 304242502 537 127323736 554 689368408 550 715260909 512 838069298 553 529223245 113 743625188 396 820297241 767 961284395 700 819844992 578 905969731 978 580493573 537 735169446 6 305440686 648 840413255 59 76081662 40 629844369 808 22174899 930 744395802 47 528354591 811 557873592 274 25641725 700 153198804 163 14764163 787 603010268 962 165200444 782 879541357 705 826242060 474 917825910 717 53792181 70 442414141 951 179717914 924 196978697 969 132936971 577 720297789 102 298359814 240 721820469 140 689144142 557 309914787 267 57265996 888 849081442 658 705995917 592 706256818 998 763566350 265 218226589 342 575579215 190 288355680 753 55975531 735 702210522 869 72633020 151 50405290 970 902538572 69 77309046 60 565936843 366 423758554 226 676659433 677 820559523 880 172239595 203 574911006 578 923970585 832 423215865 432 522814443 489 220581246 958 159393108 811 911796716 108 931253989 217 926936687 206 148171327 31 151145195 473 229783508 519 590881368 833 402970328 604 425966700 936 858866403 257 256351828 308 256858370 782 312806343 541 822368045 93 931390590 194 458561149 323 896707150 163 977769915 602 100418855 543 330987391 378 849156836 5 245692448 984 910192391 511 339384423 722 72808081 622 910661978 956 685233093 129 711933173 623 864154560 590 500330727 361 837404653 42 974635056 216 697637515 306 638663991 613 224832643 437 779761545 82 612547497 581 164691279 876 536965691 879 234642771 508 567430518 10 462350809 167 165708284 978 195094968 810 530829140 856 337542139 746 508858425 310 730369008 628 334285252 750 958483844 128 461383340 938 619414061 58 933969470 352 11599819 655 325640990 802 690274070 964 277314992 741 535221686 347 422756882 250 216088701 257 744968618 589 479682844 512 785674522 485 530109247 498 308316161 141 246725899 547 182349916 200 342048239 478 39812538 650 150262522 11 879741336 629 534404812 450 319466672 753 537226461 538 825577245 197 3121638 805 653089700 277 927649526 61 491828460 105 989932167 406 905608234 875 358487606 460 65441708 594 463639733 833 894321009 122 760762911 204 405844869 932 640673322 829 320555155 515 445669178 898 746422938 134 512961190 365 106184737 717 17900706 723 592748152 902 780123090 275 319267362 404 563350302 937 15419386 544 402355933 5 20115591 615 386667963 494 961007430 365 550533391 822 342672143 622 450243685 876 377338957 298 62395018 829 947370726 770 208593400 684 607165633 812 248538412 492 388893744 969 458415411 307 259279659 644 841481097 167 962617322 903 609517901 46 860663171 232 289219559 809 301031442 615 895856345 156 890503908 11 594175747 828 547751037 91 739613306 202 100909544 62 796541867 184 126326113 642 452679754 229 880477153 561 40205430 832 619180645 606 580757991 724 3047080 826 97042403 469 809447359 634 787389059 622 529692265 442 600958663 332 623720365 511 472015107 424 581301774 231 516412299 225 625652223 601 655524743 637 756804767 961 34701394 585 752681527 356 811293439 61 115210853 964 572039871 972 29715034 857 276654084 338 464558078 34 722025812 767 559255460 532 64546901 447 575775413 623 648737217 921 867317943 566 887609659 186 751976042 21 735597971 764 429363053 824 749332971 686 966816088 117 74753786 973 846618002 927 303435100 109 981720575 302 398344504 278 589094618 784 939135635 6 271375061 791 954163697 638 912612353 462 45956216 242 113816644 970 923316296 330 425628185 681 482751668 406 196373650 214 663234773 252 362083181 268 109403002 239 297451174 367 160081935 755 717582662 12 794957829 520 388891599 930 3389655 627 561472896 195 486600391 196 714425841 41 41123785 526 243293193 891 480412563 800 718839247 739 937788573 666 36900961 198 910697024 904 726874499 5 499488959 939 243547325 292 360935276 817 204671504 316 351288384 589 371643288 186 490892632 571 521995664 639 545526406 869 508399797 660 361489540 472 637253431 818 239499137 644 910791497 135 164376494 82 455708933 323 57683516 180 355167242 341 650807362 854 939877317 816 58211706 884 667987512 933 526293031 814 548307137 974 645185099 460 849273462 343 358391494 266 332148380 977 156608370 690 28806817 345 241960931 337 262049127 539 117410834 325 904749020 470 56120360 227 952221134 447 875011929 867 927922582 734 624406307 678 348562263 920 764682041 70 362173668 301 850800149 401 176253626 764 707237295 381 728494931 287 768382695 468 973021831 683 766566151 481 334149166 220 745575135 555 557537126 592 346312326 827 369574207 515 192609490 638 433678031 292 664946972 965 711788074 202 262311778 786 710931841 92 724016200 462 800264268 994 453105703 956 144974641 584 10551990 420 963503598 590 522441123 862 229507256 322 30303735 151 402512003 213 691886724 98 977589746 886 656535497 829 684451713 760 517858894 450 196871781 204 626172532 901 154726531 232 648410821 660 234294849 704 146494201 418 515224255 785 856387823 659 498474110 88 726320184 643 637654635 975 30680897 448 209450919 946 989302232 404 766231397 538 545575534 714 854671639 779 947097384 556 618366382 925 941842724 902 874426893 403 983442602 271 228407886 384 955748965 33 308296998 828 958895991 200 640638770 18 891530109 695 50167254 353 383692272 67 412270154 432 681556903 877 598999681 710 650700771 585 355260376 444 597899221 490 375142481 333 203404488 743 432622650 910 32955138 316 114649082 535 417706304 661 604696570 760 714127958 908 907115034 688 668653529 660 419398446 816 826622185 855 1218743 462 695487172 131 426505640 605 927620206 996 151704109 819 109570888 915 611250227 671 664237536 573 455031201 154 305319256 64 926053938 249 464439130 462 688400254 207 261389500 445 543266182 697 173042774 471 934775306 811 777388196 35 847016988 705 869776211 837 321905812 877 937319604 464 548630632 980 347467275 704 858335098 977 491889803 285 898258762 444 918477027 825 443604921 401 191104310 254 449878644 940 631628493 750 992488070 352 912248285 677 957207095 14 559708562 850 603737690 58 765487446 383 231264298 233 887014471 517 610938249 83 458984904 400 850024765 840 12838232 901 974309593 903 11039578 478 544127009 220 925082125 196 524712064 891 483042120 351 827233210 364 809233817 997 932209667 922 963223784 542 115746874 110 449614960 481 79973605 759 938426791 676 313325037 818 601513979 47 198679932 785 60693217 706 402985805 699 915698603 17 532419988 589 465308320 467 240754330 467 322791007 389 466136092 433 110590422 684 277515451 328 274552738 715 354700332 550 888836008 853 502937509 672 371788 459 186920254 362 125451974 828 909742124 544 236239249 378 823637330 572 791868573 364 995731772 961 713121529 153 527676058 698 395750019 427 443441939 494 509611879 823 823899819 517 398608570 459 96600254 418 993435133 486 641125748 420 738830026 693 246800210 574 870330900 256 983812914 117 471687969 739 947301530 325 9752401 555 401373166 453 668636476 118 90714211 369 43774461 312 598865917 140 674303544 912 167432028 764 496589440 714 415373736 759 766709107 588 64089144 987 88985886 528 609462209 518 126517297 508 402959476 622 662434533 661 553830019 245 974318974 568 520436036 221 948012385 991 347255251 474 199926124 735 379549225 50 196255220 992 798156802 780 19356644 60 240682426 846 919652511 293 379753099 89 948170270 617 565107711 911 553182929 8 327174565 640 348498007 507 139299510 452 817436819 260 986089873 201 880603619 81 370618700 103 773172275 949 560001802 371 597863004 7 183507653 519 169409684 659 354724945 532 220302217 140 769007255 378 33630422 544 713733707 450 195658787 901 421466178 635 822528795 551 459644361 855 170775348 580 633454064 975 931182084 440 459293003 912 868273272 562 162351638 368 563037534 773 249115746 162 749653879 369 700341264 428 720430842 813 649220580 126 499617670 532 488942438 399 603701843 601 311603583 243 801501406 875 880465595 848 59745396 500 59845063 500 390973977 40 649154091 426 939990058 815 971044095 836 955607082 745 619065768 594 967268767 891 682701313 946 990338255 769 946029882 309 73110796 174 581153568 554 133225785 836 381045949 871 836980714 118 722526401 631 30549610 777 546023648 469 719504058 594 55899917 688 881821457 564 439326815 479 297585157 633 19452017 586 308753481 591 513050667 455 721556046 859 922737150 788 153191906 995 539274644 980 826189905 385 176316568 59 555553468 302 625722388 408 734262117 989 771225377 288 824279005 460 508880977 625 520186118 322 141980799 862 170813048 145 512800670 301 142522882 895 776578206 295 338401986 668 211209153 788 27547732 584 729287551 467 748183642 15 115713365 574 239002971 378 979219719 437 11343023 905 990057277 276 539029461 513 644495802 409 95046691 304 335802484 371 864707781 349 188949019 641 317478342 281 962200327 751 2883666 528 380092820 184 395639575 712 823836053 445 773305943 385 792712533 522 383667346 478 800951977 178 769457874 154 101399544 677 728864316 862 352455814 485 867371599 262 831665507 19 674597438 949 770308533 580 257308012 591 376255050 99 133185589 308 757565328 862 203049647 862 837920371 478 753275225 557 517829312 936 266875778 83 725018145 798 833037766 116 715193837 334 873041717 895 295790658 695 2422299 111 610879753 953 254595972 148 787169810 825 650601760 97 29139530 229 543013583 465 205812122 910 70208676 513 271700608 961 586339891 498 156629011 579 999712516 524 282039374 73 187941568 975 135980266 852 692094391 970 839546561 558 454349463 185 67915630 416 743112834 8 31117266 242 23721193 456 909076698 49 831653667 146 783238541 838 951121342 130 150513706 559 27754560 291 351489030 200 894159163 516 231243448 834 597846068 434 331639686 81 834318174 368 9086569 189 822049120 319 57160825 808 770941465 834 700802553 13 756326161 134 726419267 968 253522937 32 86162941 124 797590440 608 793704250 653 688346269 470 587090788 239 936537252 187 683087749 976 5000536 211 472573167 731 895424534 119 604517203 329 52208387 909 526611199 518 708432499 626 912894141 988 528892640 983 594973847 773 624180659 740 428435085 785 282271034 182 322390826 628 474269597 243 538735205 643 938258956 64 531851866 426 176397500 486 660300633 965 473637882 470 435529706 711 45104024 807 432790564 943 645872096 412 819640394 228 353050342 738 425483959 170 515401155 749 656480949 78 817540798 635 192761247 894 397963783 514 565621632 817 466294770 499 11366926 92 525683748 850 886416430 589 713990179 339 888274535 849 397600947 432 694730889 991 539369379 747 794161430 22 361660148 878 659343475 431 707848473 179 21551946 876 681615607 377 201660580 145 260530888 411 384724176 227 108499802 80 735886761 311 787427297 777 174380995 998 604825991 132 286203707 107 927338131 76 667264229 661 835021458 83 995651201 199 24029883 558 983038838 24 659060960 640 767293969 252 688310660 241 126721754 102 741279452 336 873040048 290 590623889 277 186918453 670 431208017 123 342748714 962 888027433 380 143970435 849 405456215 449 364448820 224 200094378 570 819352914 200 660450412 433 854616047 266 842613523 549 220284707 160 405921407 743 42436067 822 5581946 749 887358255 600 430425622 152 253445868 245 61315141 323 654675491 913 555126888 281 157699087 704 224583967 358 627131206 903 214573512 394 522009678 589 599674727 572 937926265 538 380613280 608 962577943 93 461694900 694 412724197 345 39547517 416 315269698 312 36848603 691 258880065 980 17313862 468 953929327 290 984856498 101 613067869 724 372644803 326 787070367 35 748305816 423 461898655 257 732517790 947 117038632 671 481561956 310 758789406 852 752882638 440 878978280 364 70899972 322 788729742 281 490153817 722 283736784 859 642623542 635 682050237 250 380791676 308 73364260 906 700111766 101 304067167 547 786794672 610 880664265 53 650670299 864 774000010 400 371300406 593 810483732 758 597929052 506 379956618 190 901171030 475 353988015 999 374095077 762 252423667 366 821651484 174 501411308 994 611727242 724 841688982 120 232687031 407 722576648 185 842245201 308 896479198 833 33930454 129 701335836 807 785015948 924 102075764 224 152659072 186 648248160 610 126719868 944 881531728 31 582548141 909 305689483 626 150656305 325 235500672 341 25524316 551 57632860 381 41738322 601 60307131 672 859830469 161 298777926 595 86247779 47 811704860 629 976450409 799 269739249 41 87717432 446 550134997 426 333558284 211 581744699 454 606508236 50 90084348 386 739636526 565 430066387 623 337403044 476 535338770 925 257713810 642 682480937 238 509627027 120 693666848 572 865735361 328 420389155 436 30204383 773 903298265 217 857923768 902 87130844 586 903917762 537 47572732 342 164627312 489 406466044 430 3639684 856 216571100 704 977300240 772 790528056 489 176154477 69 11544344 141 105459843 939 549994782 334 856409720 901 958979394 405 978543950 483 701114417 840 348069079 824 405458238 397 156283609 825 363747760 387 742283533 946 565218329 187 142721541 65 243650330 359 882592274 951 65553459 98 534351511 672 158385176 856 914049788 97 42054780 779 400489146 214 83673669 971 936615311 747 662014951 775 310069484 564 279251405 102 920206178 877 58298323 62 676583206 892 401259845 78 470721165 386 983316221 466 379321194 895 788393542 423 481739007 201 603974394 19 314660016 209 56143032 85 777695282 389 374082327 878 291993865 823 53889247 205 486814507 728 527836474 492 147143908 948 46174109 251 524791066 65 540947687 477 104273005 69 494847960 24 542317662 215 149754683 379 476843354 395 16202007 308 310070180 469 835155861 460 111930903 30 894552086 712 207296589 391 926233555 36 919416763 856 969289244 635 863107452 956 964068948 873 635711378 837 839128879 181 989641851 51 787652457 733 161645489 524 993363357 56 56476315 497 290823989 568 209844055 381 222749756 799 173185820 636 751507395 46 987439214 429 322337318 187 457704150 586 20614408 223 938280195 63 414246620 352 375244422 724 548215374 581 460736067 590 914195431 62 516518756 14 458988312 738 477215286 508 256714104 768 855979912 970 33888273 843 133577980 315 355235581 460 815392194 67 649138047 698 397645965 154 552130441 68 811985758 961 876087773 221 596827514 434 51360676 876 323216548 92 710568743 996 971756644 218 485861214 993 808531972 848 957246443 507 22610821 557 436041791 967 294488190 744 461277494 984 61954691 963 941086852 584 24332625 601 382543766 252 313643190 774 878079263 463 466986212 294 709710368 47 100315127 430 495227271 706 590334277 282 393788746 241 500889726 395 892549028 130 934624384 180 487519860 795 540968502 988 721334859 790 400823233 770 140252225 739 901796058 679 109249422 490 334009067 182 101805745 705 920983487 13 521336161 924 513632555 427 997681607 344 98207228 589 431727644 690 960573494 351 709395551 989 122280699 939 466070405 731 720563740 541 850553151 435 994000247 223 435724906 829 630011265 221 637263832 634 254635287 133 521812810 383 486567781 515 352713549 190 725755832 336 770804714 968 60683060 28 681210610 180 67068726 872 178134782 211 285270139 571 740586376 986 279158891 601 338013941 39 457267194 609 198342533 310 764649607 893 263287260 201 261426874 781 187614935 574 319980420 925 996399741 882 733828319 133 969008930 103 592449413 381 263107617 309 236620831 308 393429164 462 829414657 179 928990443 143 199159843 8 222843143 676 675007090 964 834152619 235 787662604 748 453953640 433 402843705 1 636977373 869 453715866 522 451791824 483 421673119 854 40297027 795 185493134 405 765337376 234 707053434 142 727859215 967 256036334 698 78770779 931 734460432 362 111272782 342 42161846 850 563218178 66 526469763 604 753236467 875 90972428 207 680881261 442 243900837 732 919549752 187 598514432 836 412879082 4 379884714 333 109523474 541 240741939 817 473864932 731 254408302 615 53950448 699 137087375 706 670601465 968 236779928 61 504077027 649 481963831 251 915808726 710 769296843 86 434475657 921 188540886 727 310438631 448 620442850 617 231219803 282 715223028 507 956240039 516 654496058 602 48956151 530 254773723 980 878314295 264 76121604 941 494590598 748 984367349 514 658932478 10 456634070 708 796991820 417 148022271 822 201507046 794 723990580 930 29849008 763 57326014 49 997565703 230 650385311 345 384299352 464 598519718 21 744287158 714 314444485 261 651501505 866 220303552 649 81146777 43 671207669 821 12183983 293 531015037 327 332973207 2 749157699 718 917977310 940 786519372 929 997425326 824 458934794 244 279442520 248 152122916 649 909038027 848 973865728 335 29670355 854 744435913 130 647352088 552 182984936 557 166422216 301 883645959 437 312823945 413 939628540 294 962564996 924 551418537 562 727529204 596 318788437 53 518244056 346 663103075 242 334115524 852 323268429 55 327869028 38 926084055 849 191827188 984 239433971 695 880732770 496 159707053 119 376783473 901 41077252 904 134981027 83 828675274 815 572357962 266 717887391 514 497471494 175 15092630 191 791168860 0 44938865 767 355699002 416 207294150 707 527523496 404 918105754 491 854641502 436 484313328 994 376082097 809 807045027 611 16586486 310 761665484 347 806033996 126 758874167 694 205209490 498 332191847 121 541375345 351 396938873 394 786129538 233 341357184 476 919581046 437 616425326 976 611325373 646 489486090 584 172269312 471 679667076 772 105478108 455 970310017 738 659624304 535 978645850 915 910328838 316 897071166 261 367496042 865 949224875 488 318877248 604 484493986 695 93276033 907 233814560 756 601619311 747 394503394 801 616218428 310 986052793 330 464558929 3 793229460 86 639132348 346 224579705 121 538625875 266 906858312 686 636154406 526 989333228 393 62595778 294 251941317 219 159021121 917 218594333 652 845559845 759 111959345 327 685721540 969 210542508 651 10770229 178 494396436 17 948404823 39 305120900 317 950320904 554 239827250 14 935811895 630 957538449 251 576731275 279 40216391 422 651606067 196 182180263 957 162751655 523 179399866 982 563566473 278 344477180 882 493834376 336 329455953 555 286045101 122 726617817 763 209403038 456 485839346 698 794419408 191 953245475 943 126016313 550 624124750 533 395459007 961 213062576 527 220668976 292 806218590 89 144221276 136 994118625 302 268017058 989 161656164 7 330928399 525 955127037 424 555697770 588 570053218 766 423973077 449 692199601 694 958076491 990 951596276 749 674325719 708 340349106 162 286720650 117 69912989 709 547158293 856 97714482 296 328826743 591 795735712 386 748039336 328 413165731 249 815852192 915 89201401 526 806547374 427 209372842 172 342548301 370 295163486 155 25941378 591 969214828 453 130834735 86 667014504 528 86011260 110 378008765 967 456293109 602 130116991 162 94336329 763 67421602 117 36040490 55 145645241 739 211241300 31 702795999 296 999939645 170 108178981 330 241538601 775 271225433 906 304903831 487 322975236 947 413056614 631 809991591 353 641601573 369 122953131 132 316764031 966 407975141 755 445670568 597 147489470 931 933190144 552 750020839 81 448007605 922 11312289 556 763183601 38 12799104 124 565632860 248 798155213 616 714793582 37 826435401 827 270003162 482 322123146 520 509704601 992 828235208 12 842176642 925 713954764 261 522873408 937 237226357 965 847408434 868 989537992 264 647961550 702 88853084 359 826175844 516 487927748 582 79535837 77 496574820 882 52351937 291 546658323 252 618253682 434 312930626 597 62850814 365 585987385 589 60852358 324 987284896 671 821188787 952 801338400 676 54239340 532 984079345 611 752036291 60 62810549 46 771852080 181 876056064 695 517366531 278 190611191 651 756873879 804 163573983 459 318065764 521 84391729 129 88872083 428 842551762 151 789243534 97 828088125 707 291605238 837 605219208 156 306812136 811 865873759 935 190046090 253 648310078 863 692790885 948 755775300 940 900625582 835 904133809 89 688771358 689 822520703 137 104872249 252 834018401 910 81960892 128 524485203 347 300484767 189 158741222 115 300413837 98 353371124 957 832675612 167 736440972 228 326416862 60 409916649 688 542911612 582 946140585 543 292607142 103 504839819 572 80096878 17 819350818 568 979137847 490 957615400 218 84186016 793 466922372 899 892720576 368 116334370 512 768884527 350 572912177 934 106279790 131 925173289 451 554201445 148 516556353 481 223161083 677 734620347 54 14776117 393 200102637 308 905748003 718 633875231 870 82073207 710 255677154 704 72349376 976 167639869 666 944479552 357 526641740 85 679309724 92 792346359 831 424887691 46 311362689 6 382128220 565 738870334 393 475158013 316 128935386 927 237965768 205 857336848 338 165170202 128 379658117 602 133129517 302 905933227 276 699309282 357 336441144 756 948651419 720 557321913 217 467923505 38 771794622 199 888578573 487 688124079 983 935213861 471 200343214 738 771466694 293 231111047 493 166207569 309 800213715 611 439914823 521 254048647 943 680304326 28 487253503 901 789802106 108 571116384 928 63037213 989 32533252 95 390231451 337 391085352 23 983709960 618 940290819 547 537909207 567 68741282 400 924194268 109 942722074 196 355357529 412 424450960 149 161233715 965 170131334 890 511752947 787 942380375 926 173261805 420 31920963 690 796024008 979 710639513 288 901836096 2 97720901 838 532936369 573 788377708 157 940855540 332 705778753 618 276346678 157 408528927 830 892750878 529 649710297 600 497284480 259 862621112 516 353482400 490 365331983 335 929842427 990 587464813 853 427337795 997 560951871 519 481101156 146 984941181 85 94514003 361 915239378 275 156978232 319 955395428 515 70958165 819 842682586 868 773710854 912 580291522 185 734722453 573 474259598 640 914240319 503 466379444 339 557227094 876 487499851 931 590189999 176 159265499 367 274174832 113 605151153 191 148687413 855 216161292 170 972870280 0 450999126 96 295857474 785 828264986 984 814800488 190 382499222 29 739163962 666 576991566 887 329743250 585 695217707 566 461074171 768 912177674 934 778995599 553 129721336 725 692317406 672 874947884 728 747483488 412 197190018 113 206234301 714 38252782 400 502949182 495 319455166 554 126638564 734 934343625 319 970540412 281 264212669 816 114681666 186 165134599 567 178784023 979 988643345 747 746606756 732 367531068 114 691779469 101 651143785 298 914495061 887 149732810 781 878173021 616 702696835 305 473263098 955 335407188 249 478142073 572 154521364 770 397417106 940 633876691 447 680979982 458 284509362 197 371701771 509 992611078 639 50372063 955 930126240 442 631585481 179 470092707 853 286507163 575 37163801 398 985692201 911 16336272 257 146985725 26 699952730 627 345366250 277 738878388 514 933793204 962 322646854 405 166250271 719 875286778 955 917548763 749 999713235 2 286666 533 652477122 856 970569333 343 511290311 842 842327168 520 495073263 28 424557939 376 797197047 493 981227916 224 208912947 709 859669244 847 629757552 249 644106475 783 885652644 765 640125280 705 953697427 14 162973115 65 13589719 753 750199048 687 684369620 301 282314026 956 300029529 255 710632438 153 981247540 116 274016489 466 614998532 248 687263602 49 317642104 456 331279144 371 911921358 95 998788102 199 301769055 703 726076563 829 538174403 641 134217345 509 280049979 212 846685920 239 316070355 294 86123935 546 271304881 638 621356861 915 224695927 800 480535859 956 631791523 544 117028994 58 410394734 474 527705555 904 363482293 553 896563123 617 40311843 634 833333008 675 969739075 442 509068578 432 650264996 388 576323809 264 999458644 98 45862506 777 608350958 953 792524986 250 253023713 578 807866685 1000 726517328 123 169553853 826 730424274 220 467592074 79 70344720 212 7112079 821 755449742 312 357761366 355 953449086 462 730241107 607 563512037 171 483267675 869 35137724 990 104298217 586 163638019 139 942521087 94 602012223 920 498234938 650 240692785 189 873365466 55 432348123 445 449262759 948 222125054 21 729529521 202 679065020 680 912511687 342 591873648 24 725503338 721 723489742 49 9184635 144 85460128 949 434975714 325 602521410 690 256312386 31 630078559 290 654023839 930 342066793 951 607149072 901 658490136 975 955646896 8 946223015 160 440176109 812 267645524 984 952831015 280 634412408 66 864129384 27 600002053 832 691214187 676 479908778 332 543285591 231 422714159 422 286397556 73 421635539 293 4318968 284 774998271 623 445170947 801 357153565 31 79571579 338 61616724 301 28496170 600 653234884 988 932947538 358 406224868 667 864966416 471 571500570 606 304024298 435 241873253 386 459529593 372 945918512 124 431343709 519 840753259 698 993771125 285 204432901 693 463179613 895 181215770 818 276550354 928 526007352 380 116100794 81 349977431 172 292475015 608 206384155 841 957212882 296 943900305 924 659019401 242 863650200 846 876488303 952 981979238 430 42001552 696 280279097 578 386513746 122 489934652 650 104426757 88 254343997 47 649325683 276 989648717 919 731905008 461 528595499 611 59440913 1000 271392182 563 715711746 716 352141335 894 248403188 116 558435310 486 434288927 711 214589086 755 726806261 344 166478071 138 266019387 201 3577429 307 650804658 874 992295126 550 823669088 837 899229668 440 893701001 328 527695373 256 168224545 25 791726498 502 208441871 621 14098897 346 123082579 51 385829535 873 748882704 718 460289407 832 805024705 672 696955817 395 743737542 415 123894166 890 257962697 229 940173557 616 736178866 352 672257083 434 201409694 706 778558956 900 610137797 907 487835740 199 285063002 348 970893059 360 233811451 23 805265448 678 110351840 963 779660407 377 572910498 266 281882629 499 641453340 557 655320941 613 789401484 597 70512346 913 766916303 943 193640855 544 964660537 839 661557000 15 618789171 169 933468448 355 33250281 528 958123594 665 797471105 940 635500020 911 24979778 314 516107206 271 303720471 191 34135923 219 549002645 510 757207062 252 222329335 68 924583965 787 788155727 994 107768760 378 982525500 41 300985534 812 729269836 639 391336765 87 28460698 241 164285807 808 932200988 213 657686977 78 859493767 598 528261653 976 433538729 458 388074009 567 388240758 497 769102242 268 606592755 807 815123134 759 17401373 619 724466966 312 401943557 952 766544132 206 67816976 591 290414851 770 72011671 182 436743951 350 725909279 72 782939976 542 350093046 808 644267234 349 966952235 317 158808981 240 368474809 478 720103036 679 719799844 92 91515970 593 827379479 309 491466564 811 463998413 662 997702131 680 161092833 95 229304202 498 785378397 157 835955349 697 276856011 330 835657629 574 650697611 4 320036916 108 865503706 435 54066187 121 591765262 597 199292899 266 867422863 184 813159269 361 459175347 290 624853704 208 196947913 340 807023688 551 790360487 322 87195757 542 335038481 481 913078457 597 487281755 556 982154912 305 509097823 755 157085674 604 461946558 410 75443058 430 462785021 423 283901389 373 477874991 417 782979798 557 868834738 132 841848939 221 29555191 33 356225187 634 171070611 220 656933819 805 704090629 449 370999247 656 559350225 190 75883845 895 518589428 557 396244895 139 190320158 375 334501558 597 59213263 345 445875274 874 722990373 388 861721638 886 312521026 310 651699420 791 695095524 149 237671988 485 255873531 82 417858257 590 557350396 459 908986047 473 883612548 921 259083827 423 708381694 704 956205059 108 778614618 946 310707767 451 353354927 325 941098069 343 865010138 994 215675161 862 747187281 186 37117434 686 408065124 656 501183516 632 110996634 828 543934660 449 219149791 662 716545384 1 135866015 387 284013456 817 564721553 693 863439954 310 593396552 114 199716486 947 895133297 730 184749985 896 598987280 231 130620647 532 872535602 44 273046707 111 403998957 828 763750558 433 959938431 462 666925466 724 693264064 908 540529765 282 303113141 600 903275985 510 898584106 556 464528028 421 519634070 613 23610178 467 129546962 111 98966537 779 461615523 893 201243052 813 133700078 831 631362027 301 352396134 562 476710437 374 589598688 328 542985104 952 376638731 525 688964471 813 802574443 940 490205463 709 859837502 408 823217179 9 718878109 51 594794679 602 306032645 825 306329607 765 542897909 816 22533765 919 110716761 85 196134424 9 408922360 305 5764841 480 251170730 841 784334565 76 241920455 338 879424781 756 949170602 622 40442217 51 269047635 620 199637036 118 506538399 844 288188480 743 121120545 810 425940669 40 83405750 5 399821487 476 163131452 671 689283120 35 371982400 49 533374409 758 858705462 431 406082043 409 207737129 670 788012692 149 288681353 727 57851117 129 843900276 631 357752842 935 971870864 720 893402107 121 317984244 671 345804895 204 533223958 323 300088891 52 818685886 640 468492173 318 836874443 254 552143439 322 706342762 168 747093300 643 8344878 243 610767846 714 328790541 834 440902994 548 415767406 4 547953969 82 951710149 885 781475974 976 158767159 117 812021946 243 463602492 896 66979498 505 4249757 247 580579950 67 527210006 478 646381639 335 222240627 216 833078610 294 136275138 449 864874615 608 684514066 363 274327470 352 721417914 687 379320074 639 110435600 800 954540841 957 43811062 956 909717310 4 856393843 211 944034145 244 735779503 390 448782525 5 88554278 497 585729211 659 53716451 571 161258283 301 733967597 783 607249669 160 609961376 612 758348508 463 794736162 703 665164524 283 935293783 994 380427483 189 766936989 336 584668935 620 134388461 40 566860371 455 883643155 936 629531754 664 534918713 130 975916269 976 488700267 184 409542824 761 293864530 654 572058252 742 241895829 635 966963042 85 624524990 199 558642150 996 347833646 643 270381608 665 591134141 965 922909482 49 326121949 914 155686399 360 389220800 871 217509881 411 964027125 743 991937976 29 305186570 636 364553146 413 178047689 776 443843030 718 682182865 207 403718488 109 439033111 555 113417908 452 567770625 431 804155307 375 659923646 575 683759361 622 831225719 72 388395426 522 291178911 48 955639272 361 249511270 575 530913198 109 193869451 177 269821162 627 501332646 835 188451675 970 26680658 637 559194251 283 558783366 597 724476023 315 520348316 266 696608490 224 197310482 863 585276488 668 164110338 506 683694066 679 855172981 846 420346086 720 885163218 698 136096910 259 599644553 705 62279568 661 357503669 757 345942847 531 593311317 561 901846342 131 658275984 933 25663254 886 176404251 852 904838620 216 175369632 233 12447214 704 287245111 206 309503893 509 555422350 326 659762774 915 976850723 986 816429718 788 583535504 588 940208972 648 408523610 102 601912748 709 53560683 386 790355284 164 365906937 528 235280623 613 952968377 911 30717339 274 239466781 976 204261771 28 575029635 390 47237759 302 544569785 402 759895224 939 134651758 598 570820321 742 84823676 712 509182527 175 944684171 783 776358402 813 310117613 132 339775219 771 996599171 629 242693742 156 174188712 860 990851996 272 279734731 363 682283995 502 292668763 965 946404741 602 325913908 256 912916781 57 465975887 918 73996192 627 503160933 90 447893721 669 258406102 691 60710399 648 320291019 153 831042564 302 821945373 707 563353099 125 253650738 643 79715548 219 210555490 6 678129373 514 213778997 94 283167472 642 80081954 870 999468524 212 696263273 34 490948773 546 818032192 584 926829646 494 380383738 904 933913242 701 876713797 262 707089922 455 449026754 24 220638576 681 519635480 618 26766367 277 486219598 108 581890940 553 904110717 943 24009394 919 519912158 280 171504867 92 740917112 957 387048186 4 530421630 843 573287160 824 403661224 901 428510459 506 255141743 187 940347081 709 736330909 69 861022691 40 46403323 38 747253760 354 633770432 882 967313588 342 799350055 187 916207109 430 749497866 787 167455261 406 546265478 920 806225336 28 272330795 484 574076838 753 371021681 651 307782961 620 31218103 708 794366583 85 339704678 856 259176678 125 531182070 615 489635525 56 104573687 285 877987824 265 562087190 517 900384802 289 240017287 610 434783158 918 460007530 463 937994045 441 994211924 179 966923460 988 168284311 313 959653075 813 147663416 768 750116619 927 135843531 460 110606536 124 445875035 956 800350533 36 367452926 767 654957804 57 701297516 26 571071912 948 907583934 56 68297642 994 684143600 248 316204659 836 776261614 756 522453421 588 726109182 111 542628061 884 894979451 157 709839922 901 784268229 844 707129532 453 905164638 562 277006192 86 575753369 924 581407184 200 421741685 930 844803567 394 442215070 30 359680046 598 886815702 49 366456723 721 896029368 777 854149075 59 643523869 207 207243163 259 302218249 505 747365910 64 226308888 776 202064036 904 839996185 305 385699312 353 978936459 702 242029204 886 160243467 749 509492764 266 254562385 52 325670586 515 892231948 30 818533957 334 782273211 135 321513215 170 839677107 236 971656568 396 162630433 787 729703198 416 892342921 11 139908584 68 682751123 74 274504703 539 584755694 613 393304035 599 624706471 420 327758855 187 228808316 623 321625055 672 446183397 198 451233265 457 59987192 851 733814405 410 250679524 198 84019157 700 220190425 372 301744650 862 409549954 594 332831005 259 856440019 663 655948364 549 423372952 803 952678123 831 868090426 657 863766677 729 398663485 511 979890229 601 686950590 932 856392558 822 550003822 684 508501296 630 466424096 18 110953217 551 886064769 695 44774488 767 263668565 553 278589361 136 195710324 868 835406633 814 351848718 659 39047739 503 47987717 61 542712038 885 495746000 410 320666886 514 215124027 382 559544270 629 864367669 169 429853670 665 415544694 839 426182468 855 776368603 698 633420064 870 118265984 160 796555049 363 34452276 375 937002730 574 305770510 919 599603800 580 319461166 755 40067674 20 879659376 446 398155320 468 875094021 819 930979153 570 458772344 988 584984831 927 714226916 909 418110174 960 725875362 445 507304742 937 91864168 211 825756519 402 307344025 574 523620851 99 51325704 999 227594944 865 117143450 396 445154033 765 85701147 207 898663262 215 295615862 998 697233140 624 269906962 70 855080782 724 825475703 325 541253030 165 15090350 746 671446075 973 219523305 151 339220860 91 78269842 813 744149209 714 576893563 782 736256804 331 7433059 113 157889118 515 545321846 665 961957423 721 847357748 325 726696262 500 16605463 285 708780228 551 764418938 561 854527232 313 476174380 53 921028213 731 649027828 82 314136013 689 712758291 227 672899601 246 294111111 541 367371471 475 527550113 82 194515355 579 409239039 719 294052665 402 91604431 382 227601158 517 875379574 985 704519811 121 392694408 255 188674811 116 368888583 381 955072463 66 978540058 510 746402793 163 390444257 63 108191011 625 458035043 701 523421566 467 157255616 375 656178525 752 847022103 912 333954684 255 561763020 824 998197069 302 63873577 545 571889469 521 556232294 268 58128794 119 564176945 166 833563140 338 425817725 379 778665227 701 323011863 718 98535674 326 285045484 705 773851234 400 106279674 870 687505080 751 675442762 441 564801889 113 86248256 48 551111840 996 112140809 14 494130831 346 252997198 248 964120033 262 436555653 340 404403482 443 212372891 626 646892664 712 394100814 636 881532269 310 204403455 180 80270251 567 701037597 74 581922718 990 694230625 833 139365554 616 483169190 224 538342521 512 826865787 964 744252688 242 427852584 23 755758263 972 16922381 889 941553007 599 564519405 395 788584751 265 146852153 450 173369641 342 58016296 599 594429841 498 933609536 816 899392202 886 725896847 202 170552580 166 541168556 143 65581161 44 361002775 386 660511276 991 927198649 883 102116373 35 169126013 480 783031744 527 398546980 130 506191270 724 290622740 324 418945116 187 172034930 713 913433995 107 793122457 897 225474840 950 142406627 493 614149560 842 514007397 143 174630463 770 72288601 769 400325881 477 7704540 508 426392974 258 187166690 223 669434948 404 161843165 923 331681015 839 951097432 947 43263812 817 314068074 67 90016633 87 875063139 584 269305240 718 641496368 647 695594494 405 800432951 742 410051722 523 982132729 17 265220708 546 519452746 160 507860355 754 792507328 253 855384305 53 991178059 448 695350704 83 999062223 772 555139570 768 447706962 773 294020578 253 915464309 618 465430977 695 911814880 919 724091966 935 74365531 646 836851048 76 606415400 500 27632588 969 273193419 854 664407794 935 768376529 898 442242044 573 757457507 265 528389218 965 440487635 508 230492611 799 516624948 281 628479000 701 640194674 793 73839152 774 108920384 399 181487619 382 577657925 714 629038623 612 332068349 494 257008391 178 491776075 643 994479960 831 898588694 963 105624549 146 993586147 558 720842208 233 138633271 301 732723585 771 850711648 163 812099558 263 837558999 208 21080790 495 56613417 48 76096256 869 647929031 974 375752122 895 991012171 547 581655710 789 768889455 317 773607050 486 423424842 75 196383382 575 157268983 52 266423102 805 783091670 52 514752066 170 257941010 203 608823372 490 906661765 686 337728672 198 319277116 13 573095062 17 862609684 800 223573583 578 544242940 802 2034408 280 88260676 444 257683320 328 409571116 65 610349632 81 406284949 654 316344821 723 84137887 946 299905615 626 474468142 314 429408775 651 677730478 900 367342668 82 620747986 921 650969531 161 377384436 558 169779846 197 444891259 171 704767628 109 552072940 376 443406955 804 545150231 240 431069087 407 351454289 756 506384525 868 939549757 610 386904624 264 416373662 189 991305064 855 362894795 517 260895806 413 593586934 904 450063318 976 829071311 39 352930706 130 949230766 73 315399861 759 677954911 327 64229334 26 168558733 997 324465777 593 894943390 710 512068571 123 732331823 788 237467633 951 353166434 524 801481758 475 576133066 481 660827350 929 958138879 496 511348739 247 101769842 214 922385160 93 425838548 700 693103129 557 488436435 407 81793168 955 613380670 60 407635304 843 204365109 248 464265083 660 242219100 470 847745636 5 33456158 811 451169863 827 136683096 308 782906973 3 934175465 311 828836233 799 983516157 964 886752271 411 794675893 107 955692828 973 87706682 323 127910542 780 501204072 223 212421351 430 88869084 993 60353983 833 421913381 579 83534756 513 219182537 544 956222495 692 558174297 779 66273240 230 596008175 793 376581521 775 897053090 170 473905469 893 908465136 76 392428725 209 629908708 526 374210329 814 405198914 378 849007287 64 835074069 127 262174385 980 464522385 767 129696883 256 532509135 508 515913760 3 616076653 395 86625317 175 460136670 310 400715596 654 111742235 972 644003398 953 136585458 27 4050162 873 565364304 560 682243845 680 136227315 109 379587970 784 96118624 244 272300722 940 897047954 408 959731783 116 146818347 947 85967838 797 242084804 95 773629839 850 298951664 0 912844442 95 999040103 334 122092553 239 784154959 461 402808436 813 58527554 748 95740215 826 660397403 222 70427894 978 87198391 116 576620160 52 66369619 82 76604179 176 104034238 378 712635813 283 506961398 300 170060981 286 294968383 481 538264659 444 381964077 461 221224585 697 834882624 775 534210148 651 534154835 621 566525312 398 94518287 826 898233672 881 929518799 49 523938385 963 830940796 785 321859057 555 563653450 933 923595574 249 66344698 0 253462383 92 470623990 929 745742105 703 210898848 494 537606093 319 719236163 426 263559798 812 849332163 220 449867809 495 609302191 78 961686266 851 98875053 311 864048048 608 396850278 804 731958216 228 779528253 225 101591250 119 957570168 648 331133889 419 488920920 633 576385648 794 936470993 859 824712398 548 297706794 798 819749842 372 2371113 21 499887064 932 340090488 816 331705041 831 265197285 697 985692469 947 967150164 663 477445290 447 262105325 472 707997995 39 987528090 386 465463919 144 78369877 19 61867072 562 253237959 804 994316241 511 86558339 972 402508426 390 607702379 327 646359216 145 980893884 451 295644810 853 466562708 220 173903701 774 993125993 537 643604697 30 539014617 902 951253869 887 697083933 471 584723968 703 929027211 285 816622089 581 496689457 248 90947571 52 118837199 948 828304694 832 251686631 809 351399970 271 345848477 208 606893874 418 23623524 864 486500000 130 971877496 97 788051990 455 7529646 999 129134745 193 546483409 639 915499762 776 908810198 742 541344732 291 333653078 785 679250912 350 29689427 990 210242509 155 858752370 143 21157963 671 783409893 459 122408182 840 864791263 963 273967178 806 529322746 583 458877438 0 267636561 150 994437134 614 358999869 457 448361181 738 434185385 173 168429384 799 407207344 557 88620398 759 69374958 143 232827076 452 471775395 250 565662260 436 580641746 297 357889634 229 365748204 987 377631335 454 147410943 707 938690429 17 821595505 908 566252445 506 408995137 779 66820357 895 424185670 257 724071906 312 654885544 836 168475805 105 784530822 417 489951487 419 749474918 742 621391042 916 698109378 963 707766304 845 400187790 924 207417843 484 616724326 500 914597460 221 528184911 212 156478509 694 775892011 299 32482657 453 823218947 334 937006397 847 584185538 181 687230047 77 408370207 403 375114148 343 836538626 761 544807643 281 758544791 753 852077922 915 377236715 963 310828589 622 423320698 20 624288742 406 224413769 197 643565372 119 291296569 57 84718729 607 855272330 996 956384968 512 770272951 827 83221272 206 584754819 915 601587906 125 779004203 518 140107084 687 157367625 452 719395823 723 793582867 292 460944577 643 616636111 364 142404123 774 227967145 164 749481192 391 651654671 957 226914524 1000 564374708 138 478761480 524 103898294 809 574648198 68 321442639 549 390848218 776 540905318 625 622309385 137 281323593 24 457904693 234 148034572 216 49769152 205 481566388 142 312010093 804 906213610 624 301050913 806 229491117 616 765211202 210 809455931 984 246555119 403 309829559 908 340921689 860 702968458 198 198022231 674 257565790 534 745400969 470 759373364 417 458677741 10 923638377 392 166824194 363 15601440 636 115986083 324 586316016 809 688176092 266 978283388 268 472474402 440 591924723 231 16594988 337 550718189 575 471219858 660 649781212 855 76061386 60 44581248 614 181616469 486 9101482 224 673787747 288 433293238 16 706000123 12 132806995 279 741413098 805 717357514 628 44987519 71 259527949 312 982142168 966 894759849 200 86078598 122 153407250 183 809796938 811 817493965 913 85418341 39 343709095 564 831416722 494 879718118 92 874051431 303 536151556 110 292889829 674 791362702 374 202750515 171 592425444 364 255693336 819 694599773 54 854711081 49 300839608 887 477966488 386 956175376 61 80538033 410 207012099 349 382582203 748 570924865 180 757990481 958 557465079 164 938132273 941 419890167 770 520498431 783 161884132 449 719352741 366 765307693 6 639890527 486 189422480 21 28177900 310 321832792 28 454420327 506 959287861 280 593431438 946 420865557 978 901200597 941 410752642 202 904296366 321 30372741 948 449173782 90 264146265 408 595655724 2 492386297 338 524537779 570 535947388 878 827180938 938 725813360 841 748750982 200 223760872 230 36668611 615 854520271 430 82991352 190 959610540 451 522646141 623 280741532 622 450212775 277 653864982 784 260975267 666 221453798 646 119902139 495 881699747 972 936391339 93 662712555 319 400897756 274 991139056 961 707094198 376 591039704 617 149209929 765 549327139 82 885480913 116 864840506 785 597660645 333 344039532 901 662644690 420 875975361 325 188314736 674 267718361 480 887665735 316 911590842 368 21123348 319 688608608 224 138560426 178 283825716 601 191032742 779 317432364 745 874296280 44 305016113 143 3394291 704 502779180 268 146404254 258 542131248 432 997940065 557 822228529 984 499984706 962 428935384 435 175536087 227 979962284 998 325370448 754 351146522 952 422609304 974 836231662 823 795996973 56 1992670 91 663632766 252 327581892 511 483966165 725 425776546 690 341833297 666 565377182 134 662053324 114 746581540 75 904367683 406 665225277 798 721269346 396 808701042 557 388290951 961 429436606 255 597986878 247 763039873 38 246664124 740 709008710 104 950695489 462 767076344 482 205930420 196 547073332 769 84022812 483 932874124 708 479759386 186 840035714 818 624857349 800 291511963 854 566285426 923 827580572 252 901052524 800 733676239 116 979051219 763 442988286 229 360089095 911 985279066 870 35234854 607 40755171 194 75350586 67 880398934 270 267207954 991 357521939 139 821299414 92 870605061 8 686846966 713 442302772 96 666688990 177 647176739 174 492382873 998 605990840 267 414558086 654 124574636 970 995175155 20 740367870 99 198560997 454 744678219 183 874504929 59 370100297 355 323736116 972 594965568 416 253474010 462 956597345 776 376200769 989 762910667 481 321736075 541 865383058 225 16769512 673 383986125 54 882913589 897 281106895 193 435455875 942 417903877 750 395128381 839 669044465 736 920432819 426 431372988 120 101434804 779 766282405 688 126746472 243 313937190 677 256196414 911 651323982 83 695539346 745 508262678 808 962169243 68 664812782 481 642329431 141 87711736 85 585088173 655 62579545 965 474519926 825 337647289 957 947961932 667 862467670 686 895329312 764 954524769 514 938969112 341 806930669 515 545620284 722 563281785 317 736354083 489 538022350 30 979814124 632 66003463 723 77824223 1 52135217 871 290381729 128 908269021 2 479126349 4 516525865 482 635427942 485 608989279 744 915546025 421 136022545 974 424063111 835 171552583 533 768361577 648 549812544 8 777815157 344 131302972 851 293547867 195 832920913 118 287766824 386 852366703 715 712081185 777 898066015 124 777727030 660 535270081 603 964106987 859 324373789 524 207380243 701 37469534 709 691237644 897 262073387 600 276161001 710 260839085 38 737543985 978 256274443 122 144217638 687 202942471 255 708784210 344 148536485 827 639832459 372 232205549 543 298804451 605 6490662 533 166671669 235 565271159 495 215939796 361 881984985 675 723959829 680 614456302 606 356538957 216 328183000 983 130920481 188 928816942 663 655583374 764 253968920 834 227128469 510 633004949 705 816473215 786 180887165 172 928587451 346 310156388 353 692847878 747 675716725 789 539521896 470 128138454 649 322820523 884 599150889 842 392072503 444 519524024 683 339199871 406 50472567 171 247300101 952 407513868 924 755851859 534 366774926 460 852079820 166 747281075 451 378950983 136 120496738 54 844113160 400 952024728 652 435300242 812 890174690 640 20569230 572 181759962 549 151998293 764 264121385 54 906056700 716 728216444 120 147634780 288 190566349 754 338717171 486 864148882 496 541828356 473 172979672 68 212021114 588 280059742 109 195858535 538 470607875 402 691246355 844 149238442 922 436299739 825 71477905 839 299851744 729 477479161 101 844465373 281 652654648 603 94114368 10 832696701 627 916896100 908 812810390 423 608082111 693 710983297 465 91462057 26 561453337 234 87860383 823 100452836 773 358198758 749 82338415 242 527912680 539 320762189 778 25356354 504 209364902 464 199885710 337 593169072 652 273971846 865 806443263 11 648987978 473 132964528 795 231575040 698 559078904 900 44265835 870 905307143 249 566570319 89 578522142 356 449302111 190 463983010 575 773926585 101 784928940 890 955673837 93 317648087 281 523310048 203 520939795 748 695118797 880 146826491 866 752186102 737 431030796 160 490740261 709 991995279 183 431617130 545 171799733 407 792612306 146 355591841 876 673910231 371 561139360 599 76270052 606 854577217 638 698836349 464 263979053 732 684363744 152 51069283 190 659303080 303 374901407 654 184473257 88 205844179 544 13985916 139 622600920 679 55459486 384 853105548 968 508410914 870 946815619 733 255084581 429 595410941 897 93493622 767 538183628 979 698188739 318 717131828 588 866044026 91 468124277 230 713360415 679 472860996 731 6945553 584 571605803 935 928659294 508 469885079 704 355530276 410 129784352 667 372119746 148 15133672 789 823562371 668 105767717 940 43828302 224 193800959 968 807091876 892 527142680 82 445767339 856 794535614 439 46519331 669 912182359 682 166732560 13 908679238 178 40457305 585 573296691 81 28363210 380 398206451 966 778322907 646 793701341 333 289654706 675 740689706 1000 669269813 580 507765458 16 806785392 744 128438760 130 599992839 196 653439648 59 319601441 956 561933260 766 494180535 609 853098622 189 441392646 360 757781703 988 688095555 114 974327486 356 312735273 420 542882585 466 405051837 375 116787296 473 766809138 564 467023208 507 569962375 749 966611031 327 943193330 846 316718331 497 491230268 821 563896485 799 747316682 588 778635385 324 99990886 949 428157630 777 462378887 214 339799797 81 946581695 172 509990131 653 863720911 98 72731331 657 831102143 783 793359306 969 598885174 675 986129126 941 877640679 83 280005985 932 991070583 925 997994985 66 10672330 822 573980120 560 407920826 519 230428110 837 266350418 222 523878753 697 241835561 76 809974803 853 414665340 388 501048668 791 97029908 676 345651193 602 580968012 216 965659674 721 333476155 32 905334837 160 328359985 561 647635054 43 932589528 855 425447882 158 233425786 478 502659340 531 185783756 672 708807366 776 933846351 128 89877402 824 986936470 415 282600243 514 142227846 916 616254152 943 271178111 161 377593691 378 767733090 419 857516957 341 366929663 555 245878464 860 26353570 827 992892664 157 811219581 731 532429144 982 289308763 684 169340598 690 849316001 273 139829494 300 254513903 608 751823690 522 861442939 219 359045464 885 246366365 438 308845683 766 387824750 878 362402678 698 293529664 11 492519548 635 289590960 550 166762259 177 530583761 811 880192946 479 78003780 750 899230034 245 746927756 632 562910364 82 616336974 987 792521583 444 219901555 111 83155281 141 264428111 24 654074933 227 474519075 74 158605211 438 691012008 501 870994661 782 942530484 779 345257786 571 619636434 202 161932468 107 394369774 714 486658293 827 154558912 551 598112368 589 642169988 617 186067342 987 206824496 921 567328345 436 390842381 965 734982917 703 95010594 724 869012438 4 333179470 775 519298221 477 654847353 705 781549850 679 85550033 525 355862917 823 607185691 475 765110318 872 444437153 465 423369935 927 956798778 756 348311704 678 639510541 316 923494192 758 224089181 980 492218531 168 256054413 212 300931546 724 7904558 853 692734628 286 653168655 227 283125281 318 403072578 28 770227651 382 407221084 67 949211905 987 194016991 44 552145333 836 369948418 383 492429706 490 655376648 157 370054367 89 834667373 837 969824744 231 370129368 542 541280910 696 603645135 502 547023272 484 738506823 729 23420426 776 541899951 860 31313742 903 722478070 553 133677414 221 983366161 191 699710503 500 470279261 279 597376189 960 349739365 978 706586789 250 65610407 324 318137047 186 748213934 845 274608615 516 791037405 613 310638378 686 54539347 963 361219023 378 827700736 315 277525211 495 533635343 736 420868826 491 429485904 502 469071971 608 743169883 243 876840860 135 904870363 805 852128873 139 784172056 203 527513384 436 762172240 570 55733304 966 445841387 93 475038874 206 769006117 843 180078391 968 801250495 797 956689222 931 129070635 704 196468748 931 374703548 402 390605779 296 319066650 354 935994344 32 113748269 856 926483156 140 881421984 343 160735126 205 515912150 807 203158064 240 437312841 932 715366052 491 419979906 454 400741883 126 120783110 437 807685253 260 998459535 752 914735491 228 158849278 843 913790124 104 59971498 706 461105849 19 737221439 404 726960521 736 827439241 359 284110357 136 12157311 943 520537169 724 195915773 338 155735283 989 614614491 490 257679621 359 541606816 26 603357374 401 332036591 310 755325103 739 972588898 613 513086245 400 568387501 998 618880302 691 499250544 949 751703477 688 367151394 414 4670241 579 817374672 594 337517454 37 836136287 97 283800672 232 82949512 753 445779243 350 577361405 394 661123246 56 150098482 198 311105917 946 55751211 718 407014114 277 974595815 737 740649048 531 532025157 418 174835561 583 646846659 272 75913034 464 806747797 310 265455395 956 318013415 10 153382241 920 332984223 679 253139983 495 139672890 651 686049430 3 520908623 319 258351281 851 940239002 958 817167464 990 459674493 19 811525526 673 673460896 685 466316443 514 77307908 167 841555899 301 744732456 164 552311838 717 925659032 647 112670197 765 371116163 103 370334285 592 151701556 809 13488877 304 822614798 864 276908788 942 753550256 882 287097450 479 868552071 422 927218736 676 963476132 323 274805317 723 421040527 114 896121970 421 786114694 847 296232230 838 769194590 935 845354582 360 666988774 999 781033426 460 248546187 67 135729157 341 519314388 826 756823128 434 146779702 403 4755659 626 368950392 610 688379062 521 888306197 441 788701617 772 196951926 125 915719408 692 942571484 367 947841061 218 980557859 232 279248645 187 111953597 354 567609997 20 153836001 862 752527711 271 614731055 361 851717514 906 398595932 908 398963739 779 14222540 153 224149309 68 361327675 918 220675729 511 661354557 402 145304069 478 615405139 507 709918912 856 459468578 176 754574227 186 612665314 789 59141609 309 315609821 803 929943156 616 207945679 911 382314615 898 800184278 732 104709045 308 5483961 518 904537523 68 727628220 871 158308416 632 130340867 106 732493138 34 887934044 319 947841316 527 263122111 40 135207253 917 978217581 490 443760204 382 511393710 386 733160569 298 53476655 897 464118610 555 925910376 719 324946582 831 42293255 113 834841499 823 298070730 298 147244835 77 640152918 592 693860156 656 483214125 797 482844588 369 112480056 947 92597153 883 518878361 32 72646867 169 251087434 471 373397456 968 129649114 901 994095125 11 340787997 978 662314418 718 887353631 533 268521051 141 399775843 584 876907069 911 682031541 888 565994778 404 531026932 743 805970127 733 571857830 2 122685628 712 480540459 165 790034980 115 123779165 354 177069563 762 454045641 232 427728566 528 649399595 809 315374758 167 958726011 783 108127279 476 13527191 566 449060442 388 525989283 144 684518083 827 469540589 26 849464836 238 809083959 980 126816146 222 832203218 346 490952019 723 182955775 999 353092749 97 760550196 316 68109428 863 106885345 756 866299154 488 149160469 214 634680781 124 594287503 879 937914115 956 814317440 956 649505369 108 290019117 540 408799117 587 410603768 683 831713858 792 481651228 989 509996671 868 464168365 874 818007835 904 355275844 21 35500563 177 69613238 181 961876239 456 381275222 676 48923233 592 515880539 873 929193357 355 708226326 247 827005287 671 451010045 122 193866338 766 659450896 696 209356928 978 542294211 772 295035172 644 137213271 852 303822344 888 783070305 870 268251890 285 369105596 33 550295976 857 824504867 606 614161181 287 52140522 567 514494536 803 259011027 544 941076367 406 916744288 501 935257459 392 986329025 396 643115318 808 516737664 72 603923542 623 7913394 497 870573634 316 198411565 264 820361434 598 905251836 109 154998061 21 235736156 687 94226142 660 671727011 788 322117542 457 234130256 203 85499742 774 389402170 759 995088788 12 886487519 729 503753105 250 472093036 670 101710453 603 177363533 864 587938744 302 100820778 243 998000184 822 952290720 989 369201093 740 618686204 340 306541258 923 799487390 260 932719512 877 298472692 207 411433643 57 458886537 907 277305139 971 310322566 4 431367644 466 211435266 226 336383434 160 696914105 476 148283740 318 327026367 17 986384432 444 242721579 462 414614798 181 490339342 693 129728760 103 400013551 434 384031479 564 843769463 915 590703370 695 546186156 187 924189233 648 22506144 34 731107081 611 930917668 834 684733384 231 680254962 536 565972705 602 338191668 589 644558965 568 844947671 142 758959821 385 180611864 469 727990150 185 688287508 216 837961406 388 579851579 468 652989883 262 856887158 942 462188831 535 812206682 319 604013804 479 401785664 166 648301985 21 982497072 510 52863019 257 641131952 814 795506058 285 938504078 288 114421717 514 426591618 543 831474926 228 887777090 457 376757647 492 759126822 972 72809900 949 194543327 660 337217100 699 406161594 980 39480581 231 850313313 780 718948765 534 327961587 98 559227599 720 522181362 894 335672681 847 685871653 49 880594530 6 320071510 391 204352853 258 870691483 286 765376201 780 919091482 891 283543864 439 412404615 338 533926768 910 873388914 341 526698869 164 385277294 637 119722102 274 978095062 97 736937566 560 786251071 970 344805032 197 641000697 122 207564290 831 122488247 519 443784537 744 342662914 370 949482274 976 959372638 625 571038823 310 545885197 100 993687657 495 228085498 82 409840559 452 464370535 81 911747945 252 127951758 566 915178940 529 373268527 334 262088442 995 155811580 465 623654902 612 444669355 144 937127084 180 775221768 206 612963583 124 364550799 205 287511871 520 429571839 847 830149293 326 259002529 487 929945282 341 877989811 733 169078964 495 684658829 524 591655474 378 303042371 250 141574335 559 426732102 178 722617357 384 277948030 510 357887419 290 921076183 803 737932006 25 637513850 669 707804878 961 676860535 879 786022508 949 281515560 577 137478573 483 47791494 99 812039966 290 80178052 412 517809804 816 334669954 837 589864030 214 11378281 708 915013818 106 650993573 921 62816635 183 450099573 372 33992096 747 740959580 417 587994069 439 933170933 615 664052326 67 881085189 688 959335089 301 880319112 185 292758876 752 45463723 874 105321340 207 631210583 95 703426269 256 988780171 912 353573520 662 989371761 398 292649258 134 637415446 896 200222674 224 63866702 474 941021824 350 995717162 398 518427269 235 834301800 940 892364343 58 359341596 732 884032027 255 805335394 663 335136002 87 275535176 121 484450931 392 340177927 762 99953547 940 374856673 293 926241760 818 172610985 150 867252246 22 587952561 845 557687020 760 570815210 207 754794794 337 770843634 537 11071962 604 832744682 493 414396286 40 648225903 155 974043948 127 240768756 91 681251309 30 414411011 297 590470856 650 618891390 679 24978051 332 940699769 750 36149153 779 106606301 822 226704668 318 679244728 623 381652013 252 538816644 631 356855981 547 599300874 867 95650743 195 944140963 191 560427678 29 25572404 732 179758431 570 262280102 473 319775278 846 487348407 532 381831625 392 624592245 838 277395387 370 826490430 654 618336858 547 731754368 640 570501049 705 571830480 730 608140548 141 273555235 233 127490030 416 24317478 318 266211591 987 441109567 191 93706911 128 25505803 676 406261992 190 612246596 719 718179031 770 760702924 61 370665683 260 212706823 84 484066698 663 481841639 426 953556138 391 561983872 551 51057650 461 945120185 378 425328731 238 334856018 172 291038428 0 422444610 363 407920400 256 293254602 474 242814944 136 502284249 950 257110610 144 811160713 259 422097690 576 961221964 180 170146640 407 253659045 575 610230649 754 352757885 94 669694337 205 607615395 353 411007114 296 329169702 393 668297604 760 62443933 944 337094429 994 469877123 801 433284924 806 216034723 745 133486857 85 205509649 117 33261354 760 200069985 649 840499581 889 362590552 415 755841857 627 85594878 92 535049668 398 28301905 288 955377326 353 130066298 45 390881247 6 368747848 60 749818990 302 689530160 685 551947388 371 150100253 801 735361740 93 918018342 880 205330626 784 161778446 372 714822867 267 861786855 117 213498972 557 479639371 960 134963700 148 388952575 79 768171815 359 311297346 287 563130719 679 491419723 17 821801538 718 89938021 291 409418968 216 387450429 501 618552933 301 888166368 327 755977812 43 517149466 927 854741176 476 12035565 102 599941399 247 764332651 591 37545845 604 516405626 661 116999977 963 271214458 430 702884041 132 370111649 178 634638863 841 738327620 414 93266535 167 483158426 622 364606105 736 114903435 365 934924519 499 594922620 285 93019679 116 76234560 301 524093473 340 186303229 900 754196015 131 922987558 370 90283057 978 989784492 191 955894049 145 428101248 561 10145382 272 675270727 864 126696138 946 49698941 481 185269875 105 770953164 493 739688632 963 389623319 791 388657140 996 332851015 601 937486781 327 285282239 697 269270150 966 165423255 706 434369296 11 918062370 90 185890459 572 562825326 456 36602991 151 201513331 240 940910625 760 64532485 302 731730216 440 437752866 305 721152874 82 647920790 328 164122970 218 418717991 583 360007987 146 161233558 92 40119337 15 768646821 469 750821926 115 344419666 156 625614587 464 661108504 181 815493776 853 452089938 911 803489673 0 719326408 416 499541060 928 427987220 242 787724347 151 483230946 703 778253863 231 982120475 750 261388267 315 188251530 552 973917431 11 320191938 919 265851085 707 980021847 242 172897573 550 676080133 500 542866959 52 748013511 749 224661553 827 90953901 652 567814821 334 762360623 609 851731050 699 128211833 467 298867506 82 902336702 556 274301112 5 526490186 71 960992539 492 19415895 645 777334969 359 727196560 907 453185933 399 721680223 106 334600492 339 369382902 400 98992242 99 453621264 961 793960097 484 385180052 978 930740862 248 209135313 3 195532240 876 643081370 438 508977755 11 806136845 568 607414177 987 444599992 589 899344347 589 369225095 738 407071966 857 653294529 862 54469584 593 996446559 583 579567306 467 95995193 985 54724635 6 909044911 518 207795507 473 537014692 675 865651724 809 413378646 122 492750564 225 958361299 792 703047705 996 812828403 71 487955003 53 193615435 111 26835842 575 454082211 181 311906182 184 49144460 477 785821672 962 643334112 721 767022903 886 896167779 152 833760324 794 244554039 569 267218077 443 124657093 331 415235629 60 164578933 422 134327154 554 802477872 280 158430131 669 920684174 857 327981009 36 930516321 679 692338093 468 249756194 932 598161628 982 983137601 556 429864341 470 904705275 644 724890347 864 818454293 291 711164288 531 299796424 266 439973510 180 673613326 209 107292986 71 567059305 585 122633007 841 338492355 618 138421775 796 333069304 805 674596751 350 656541264 437 339119888 890 349785763 59 482276576 926 188797412 351 910089868 310 2192222 99 134584022 222 412687187 222 385003484 521 742912503 495 193970567 117 724982920 666 256990661 123 692305461 965 869904752 293 967986187 620 704460456 370 978897466 321 464216160 76 977719731 785 856897015 864 247853556 413 190898661 969 664735867 936 201542962 529 428157930 244 209188649 614 307636450 205 666111188 933 741776418 301 246057950 18 202450693 967 992763377 578 710191943 234 206228559 742 546319795 748 771670381 508 122155687 333 945557240 185 582293349 717 122206953 939 741596245 327 694143674 369 518312137 125 359596368 363 343183417 825 120074823 298 106666034 490 734394829 781 210510236 16 288505082 468 833470016 251 596564545 796 74157228 861 597310004 175 391199653 372 650417433 486 986425880 361 320890830 521 911829635 623 570772342 786 712640722 846 128441679 70 97236757 578 122281573 495 434317646 551 149790836 706 229114128 625 267502621 446 286645425 810 602890179 978 56579277 805 612503061 199 47956755 616 399444748 589 248078049 943 922216362 227 153027510 718 220858408 321 643311349 53 791513371 134 620173400 688 748726743 921 167643046 294 665743587 487 399522485 315 524788556 893 10283160 83 100657970 843 62950091 452 993234064 277 155819120 185 840718629 565 520058530 400 480988414 356 496894256 173 491172925 525 918708776 254 563570640 263 251361097 547 423038708 758 459769349 577 531487411 724 800477711 250 311760826 206 430635970 647 134819327 986 512127941 349 224531259 780 771240719 993 407312521 362 810668438 718 467652150 111 231016860 362 652969362 283 818100661 329 870565724 727 931819093 631 445048767 58 75337866 824 18767484 823 637795627 866 896436559 756 886980006 412 286925893 603 275385329 361 743465512 297 941158256 108 390091415 337 385741247 495 609784870 639 268367991 904 873257611 141 739822885 297 900240603 46 934305388 526 838999311 407 131990259 386 929096271 716 177079487 369 701571138 618 67460907 787 26309795 130 383618929 496 85734585 189 413229024 735 576701905 991 466268309 465 908779022 25 257121246 426 930143577 463 525419303 384 406000028 942 387890094 8 222916117 895 322196058 88 301655940 917 815578755 754 83065455 333 937673295 901 373289621 105 920507341 379 13970955 211 682677953 994 240652462 517 75142456 716 878004589 394 455584862 564 530392056 383 511482830 632 535426219 452 635970979 879 166514043 295 451169056 280 927909316 527 337886142 940 175405255 911 354073378 724 880569807 792 246296020 446 986110675 244 405196017 80 441201690 854 382579675 705 673657671 262 199520554 742 3816328 542 552979533 131 581607092 702 767718037 124 339991023 3 895646557 12 372104182 895 248467578 762 13042051 425 252301926 993 697264528 249 824724306 902 775568822 961 19559978 155 357173290 505 956008275 890 644989320 91 401289472 382 898998625 155 822197530 397 985011927 17 861226414 829 721423113 861 538522878 109 691948702 387 882890111 210 659017832 619 133830609 107 229189585 6 506797870 208 176124687 539 176587708 801 326691088 130 251126125 363 582127168 870 694527844 894 738224571 116 189907236 952 219957940 85 804439138 299 724989455 820 292442427 660 213135023 306 748772109 806 673644049 407 132387465 695 163372861 769 701161157 307 11482132 422 790376952 719 263030863 933 256157960 90 73549828 852 532505070 339 979506865 319 432157376 22 320764114 413 191403198 939 799086581 122 285615044 900 69813335 683 781219044 680 108337495 393 41966796 391 486524677 97 289849492 427 753273824 382 202295942 668 252796764 823 192349287 87 474783714 201 369793519 912 306682682 11 853130062 897 862447098 413 356924799 985 438516491 807 933526377 808 293014517 777 47349994 305 934726014 811 464044359 96 248402081 559 994627799 818 973026501 197 933227536 221 237380341 408 508855547 747 20715697 816 416352121 595 888686539 121 469108698 234 197863597 92 55799940 485 83527168 157 523277691 67 919121524 671 287455024 892 853049552 970 800781682 185 610151683 402 982898577 834 496014962 670 717315234 561 521331753 699 83046755 487 161356476 617 118405754 338 928748392 693 839584068 318 974162999 623 574516668 817 847409099 727 308646109 100 345664776 20 986727202 788 831322318 406 703741834 711 466361057 551 250587413 878 429794117 440 650447711 970 619890532 102 247349914 76 417163219 467 965552947 692 7148812 963 530642960 920 595715986 794 220611864 803 384848607 451 122453698 431 109611428 85 258807959 882 390809760 703 55644426 847 751315008 328 140297410 709 399903615 549 538723367 93 274361413 519 39992003 570 824621747 484 816079116 536 25522638 515 746785000 48 697828922 134 145084120 468 615257232 831 259478756 409 305664422 798 921591924 309 94335862 488 250282721 120 413015514 760 288793800 147 97518451 216 570701401 559 480920853 353 223760694 969 568411181 437 912483284 985 792905618 423 715026114 749 585940185 528 984116204 240 275397617 459 139289237 76 594902242 128 552163936 780 806615781 734 972514983 689 567607194 404 760219568 654 669738429 885 789881311 108 436934886 922 648095843 923 340290363 758 468869816 816 832795150 720 368641333 950 60391574 207 20020366 946 262488744 457 701092539 981 643560757 759 611697288 710 364366627 464 99190150 729 728917147 425 859597617 142 852074816 728 309472760 139 406946966 365 426192316 75 917897558 293 834337494 70 195418436 14 332649801 796 332805671 134 811140503 502 760743665 698 567018035 473 52677644 995 935108866 401 699545889 61 964667802 973 831840723 410 551616884 409 336916845 499 331938140 652 902016940 950 645814153 913 897318742 701 370429072 402 809599989 782 150393567 982 361882713 218 88446533 94 828395928 443 76359759 617 660953498 38 980246393 543 662383408 116 881192889 126 530388518 212 210122374 529 655499344 35 263809574 843 744394326 188 250894242 125 643956060 626 615813120 711 265872749 632 189361108 317 68222273 749 333773219 582 876949296 239 257914646 573 356871383 373 941733347 911 220424437 751 892626549 651 498910326 190 552013553 520 80399818 689 709570032 643 341437803 29 602659600 734 27021025 905 930014706 566 532740204 970 122414508 946 130749082 591 901743942 428 795858317 404 99796531 188 70977287 650 516620185 718 773485178 699 950167454 530 502209152 792 9763364 994 800548270 141 721274368 871 453568685 371 264451416 261 140227395 151 185070396 347 460750531 683 248860386 42 294025453 267 135935953 37 85503725 526 206789291 76 447536693 360 210581841 647 110107309 840 963504243 92 866531120 729 532655264 591 573063760 605 19500162 7 890709007 523 789961220 35 105575341 548 358463589 545 665338004 624 407003752 269 990062135 324 315664268 31 435301218 682 65780 221 290888492 155 951823968 215 930189013 226 567916560 182 739986305 787 699102266 155 434005083 623 78278428 785 381432299 871 850515452 37 668655274 672 921015371 701 441260150 747 66383024 605 61457438 68 868589763 549 132808424 386 857974547 283 756230375 793 520627330 474 284275748 198 497282612 50 523332543 559 950529462 682 629051677 838 717273285 466 780315317 81 596442108 80 183697486 533 231450758 830 229015680 868 695040262 521 706649945 315 540160712 198 904708953 699 454698528 708 926873642 777 851071631 939 181605040 78 482479003 369 101229876 383 896936456 771 144756030 396 556228222 951 459409011 309 258233465 52 109115817 698 310756510 786 686997401 76 713827592 766 169373906 897 549494574 114 888415962 451 45563576 196 750262534 658 399413913 340 209663084 824 315559764 558 759404354 907 655924113 374 818141394 502 874210624 819 706796538 681 793639418 651 955300745 588 812851527 198 739975646 990 931900916 398 370137521 121 138921098 472 536124309 225 875538016 71 961343179 337 292642259 428 364217658 942 48012053 950 439712412 851 340441482 456 311079866 488 204919688 14 139564556 625 264355949 809 749484129 636 658649797 428 295656051 642 452923957 389 862276677 312 229991046 747 771594189 75 797295452 954 405733851 560 986960896 490 811456240 977 385255998 273 807324728 265 757507266 750 97473310 77 3958403 897 829503200 243 240849946 942 755324465 681 3926088 186 538199318 846 49850779 899 252235178 171 145871106 405 361657403 668 364097393 30 381460402 852 679054217 441 377440553 421 534917469 744 580551319 689 47162647 89 482290667 336 856179554 573 36855508 630 750121520 62 13223556 70 808705654 802 294389555 841 380927599 294 174528437 329 724289994 857 262361312 901 255969019 790 830984352 490 310817822 443 569103415 352 627861717 417 419337752 231 741557468 448 916073753 903 578749195 581 433434182 444 922249927 428 407185602 402 265638701 696 170193165 916 718566435 486 562781244 871 967528778 602 442501530 228 805739565 127 812598889 971 943512105 430 956835186 136 977525735 724 750804572 720 984676892 41 45642325 616 260929109 541 7272031 831 864178129 313 212558204 716 101651885 45 288555018 988 87422333 411 436775160 914 609992786 258 821747091 45 946692740 259 52277968 358 395482421 547 764340458 98 43157598 236 671300565 157 785125616 530 980775216 166 157696119 282 695336859 101 244255174 714 710046706 411 425954812 300 413366935 761 37239648 42 474699001 963 774971094 268 288229738 394 427800771 697 21249089 740 825471099 343 190766698 526 704991223 327 354694693 727 824457635 826 715143886 70 898285477 791 112439284 936 476841928 607 45936767 331 19163698 498 875216188 692 839743464 123 577964443 314 51804293 121 132582958 540 545391683 758 644049222 80 447483632 888 939873319 487 730724484 75 980471521 385 844692983 588 497440192 120 748073530 859 856414432 943 659971343 892 299201446 876 888973655 940 81504674 267 680417621 668 972233733 471 928854665 396 318273907 821 325934250 743 366585468 972 424699412 591 813304709 145 693731579 275 154731642 338 619899482 541 844416620 339 84822422 264 327047666 229 578178695 697 794675068 471 123855937 267 369617280 790 474739727 769 656781873 570 468842223 543 323839867 227 959529748 11 143215433 127 391315082 931 214647000 597 809658716 661 369023743 974 942013586 415 937945645 378 672496807 156 542440420 169 955132004 752 963774704 447 998515491 150 443737911 767 106146148 970 272925300 577 955279646 877 948739685 312 759440785 711 120741377 748 636158002 362 750871050 861 51033910 101 253522124 977 392946444 232 982727711 376 368040806 230 26271591 698 767123646 504 189309171 184 136571287 154 6081152 292 799616924 386 883457964 542 324233370 788 239003370 454 323827352 249 751644227 226 297313283 666 341752486 758 768295165 332 164203215 35 296485618 784 161635983 643 442817552 671 54610132 28 879828014 240 262449945 623 803743874 42 956227667 547 522748025 819 914525150 842 384720643 355 126661255 922 265695182 637 312630254 821 663363154 367 374821592 389 454982222 544 201924545 229 237505407 938 104523849 684 775079515 311 767980757 778 891237506 585 383544231 168 581807754 993 719098399 828 746903279 68 724546437 700 105837954 986 274854874 459 203710522 164 388756640 241 609578691 490 180877728 349 882358915 739 599111559 816 573715385 378 595796702 258 176806637 298 775664949 259 55106639 959 906214796 939 900028524 280 175769897 990 259944893 517 18889423 552 358442284 543 259880228 252 100784286 176 622063321 254 623069413 947 208597102 905 273873846 216 242050830 804 825946350 164 418902100 707 396623442 285 826754281 368 18074294 554 619239804 485 134020904 970 760193198 191 952087362 585 645571658 683 283989201 142 709900481 444 530473570 856 121412895 542 997426436 564 400022985 705 704979342 781 888062547 129 993966179 800 74796315 296 389289449 937 572229331 126 283918281 381 66847995 532 483846196 305 736079356 275 894580570 148 321949036 763 189599794 980 804631694 415 771911164 864 374234098 571 317534548 151 510780391 647 922022080 555 921909356 518 571155070 160 340938633 514 300766158 400 642775076 978 293120924 168 692206219 704 404921806 62 742856790 723 257097550 192 501057224 468 970416020 810 298680506 301 270643745 316 703869781 510 107921465 615 639834501 779 385360488 163 808880461 486 16591787 979 724902321 458 775433154 712 743220660 855 54260210 882 749670047 685 240863785 591 198442691 642 144291800 21 363139261 6 354620580 711 868518274 688 286933671 589 742291687 754 829401399 368 103229148 495 839908494 293 742651756 742 248115985 204 451883105 770 180145093 345 55292151 58 519373498 952 848412892 189 492602771 513 115619979 724 960088952 718 997550535 368 78029886 236 540742118 676 847295044 285 173785530 643 431173705 276 540303434 862 426246391 365 631081275 675 45932750 106 212953954 37 896706530 25 33971591 740 364204519 354 762101696 519 312709274 200 95331818 598 174594411 835 120054368 56 145000732 692 126211447 551 155926115 991 599315418 830 318581539 67 839426311 589 53248990 114 111897405 443 578130702 305 249400379 615 593733929 267 394254393 439 950422825 646 669781558 947 354919493 487 236383802 726 480992775 270 953286282 270 999219365 543 104228576 90 945738161 465 18007125 550 523008835 669 155018220 275 680386832 55 144374694 274 408442417 327 898948874 877 240223635 654 795271281 705 487042543 470 529315898 150 330940785 424 274726676 414 737148761 758 636746718 43 635918676 713 206006880 921 721134145 128 570045656 677 189184159 317 61355864 587 412697962 939 122336685 996 690267642 861 333952886 773 380205350 9 517686949 389 992075837 377 85427014 626 881640999 737 8323521 303 508248155 99 765954029 570 914658648 382 658554991 601 825184451 287 895917990 839 165972768 265 437114628 45 3108863 525 333555625 878 683361617 539 334323509 543 482648702 626 562893251 108 84466959 307 185904828 114 285463459 711 266291563 840 276853973 487 574629099 630 777602464 984 544614644 159 681919991 118 901321819 396 171121247 941 278918254 738 13395169 144 309020738 323 625440005 557 986298611 638 298740968 850 479824888 574 633879644 343 289825724 165 918471040 541 52033048 848 555655973 235 479862144 726 619168863 384 423393324 560 918450332 261 106303735 559 76239289 437 171418369 412 732849327 276 543420526 980 42810797 763 864902112 770 498397024 779 328536542 151 913097236 796 97959102 443 781345312 366 330779826 545 266500291 682 322379220 626 849362751 37 92978869 997 356268821 924 496882612 433 469043521 860 949264458 873 149713369 962 265784809 830 340071264 856 712626341 714 36790072 886 692567517 342 306989827 449 864295193 879 280080578 723 276396868 867 425648397 808 683397632 899 642849634 13 790985446 18 261467479 414 709656892 470 297703982 919 957924153 280 787776459 238 231531874 503 904885753 467 413422147 145 911978217 29 744240929 292 750311175 21 340934985 648 369605105 983 568963450 492 678643714 303 129368184 784 745232149 276 715204397 241 653143039 194 385505594 807 173262612 346 993850823 454 134856378 524 163926482 543 306248124 442 670487505 543 487768695 676 80546840 643 283298122 45 705355052 908 118886147 936 908728067 23 967413931 942 878979718 988 989462935 839 553674628 795 796164738 281 2673254 746 555637095 247 112948518 410 294553379 566 304698210 144 181767258 156 511383602 130 216521899 22 675451333 418 6282356 718 912779459 366 285448143 897 705806037 378 16060375 996 769403269 895 150593408 742 700734730 238 814999411 302 726139771 418 260346764 134 163359499 645 477308956 168 620071948 541 844428152 278 823898435 197 589674613 541 856972694 152 688019318 708 914738741 82 765387284 400 667236183 872 307765851 329 573199590 279 963167660 913 294511066 519 674063587 108 59917649 636 674402483 194 620489306 252 226244185 377 664848473 860 730911388 128 29144732 985 626041878 959 411665058 305 888583667 572 364294671 46 205270808 958 128455252 678 801911270 590 842746565 839 898849021 375 683079753 437 30512090 739 147134186 947 809233137 888 227304016 59 129419705 137 773153630 284 991736723 972 387973398 131 910900121 802 530327919 775 3373701 483 400686185 538 910487022 129 165846747 489 544142619 259 892271178 156 354106863 613 512228992 823 252591658 430 715085576 8 322051040 893 344153677 657 925861277 915 416973940 407 325613417 569 589512409 291 126858763 929 161174962 975 281751139 65 551407128 0 602061266 139 874463811 233 280008230 897 51114511 498 238381929 656 320520034 313 449148981 996 540092031 630 528988323 970 357630457 214 864702936 723 440804122 708 192493198 954 477774328 81 209718593 152 345168912 609 53223096 557 512072613 661 399479065 18 909516315 834 392935795 274 337553301 254 687935720 740 311540391 105 731489984 341 290044094 248 92166894 169 964940395 707 568639155 169 593592070 195 803193017 679 221409919 650 913381038 123 429168016 596 916641739 648 817779492 590 869406736 143 498231046 741 462305494 404 262020463 1000 263907908 127 535535673 490 614304287 515 719837851 753 256302547 115 682162660 673 575257918 920 883515589 693 710183913 122 340848979 340 685079343 925 382310159 96 501080148 644 780646648 425 648112951 371 255140408 542 115604627 211 228393824 87 153852425 839 524409948 716 738018983 907 32852297 330 57922631 69 989195597 517 70495766 858 525264168 923 769551754 66 448048817 202 960455047 326 902741668 807 296471047 35 511586166 160 734808995 739 422338946 350 57289253 331 945225137 191 614391724 191 625297388 425 380818279 841 501673631 35 674813563 600 790189807 650 444740561 448 436850185 790 679505894 280 333516392 150 8941183 640 465896635 30 126423765 963 941046732 977 565769463 916 216993849 256 876491032 754 481966133 461 774576920 148 718452423 640 683565188 448 730524871 630 486007504 142 544996798 290 645973162 427 528837302 790 976217001 5 556042549 627 222595232 709 162257697 596 902435070 258 964215604 928 227639486 962 281662352 480 191172060 713 467327692 147 889265807 498 503842912 354 927297371 964 406426561 282 968359580 822 964261909 972 221522114 271 957778054 185 24678807 570 86790768 735 554434188 114 238988404 913 848815764 384 741338530 770 274118566 935 722064633 278 687269307 920 4460328 654 505827858 429 70695349 319 954243304 841 70799194 464 64265939 190 283928501 746 570078975 779 754588393 378 441003806 566 247964224 656 154242035 741 31023649 252 629357278 284 86570693 783 592028357 236 297708600 800 984718932 492 95786505 25 103219239 697 908984582 521 447831178 927 370272945 631 704364741 219 543394604 295 202955828 509 254321415 27 363951611 449 300781430 188 457020093 779 807510888 188 392741326 967 963606794 722 567738498 599 775384315 178 786196248 721 703518657 313 456266211 550 125800937 986 27381591 677 224887746 718 166519034 682 105856201 478 477864583 40 527170739 7 586764884 607 798921054 940 199559517 109 770649646 168 498883903 402 353838116 525 999412940 721 181647921 993 649924068 676 705336919 405 94887409 307 597914783 653 783850902 705 679703752 680 931342679 350 622164090 117 797648269 329 971736502 952 395080552 119 47230712 808 399777499 350 789301346 787 835701074 657 900565402 839 76753980 650 6707619 949 926293992 487 80360085 915 844797946 585 415371216 641 480662537 7 115074093 976 41556819 344 722149539 51 984847036 764 355164304 634 651573417 614 478388127 890 405132380 923 527319962 1 70812559 549 483464221 681 702859027 236 561329352 902 264453278 591 611969043 334 749924855 126 232737095 833 116524705 215 406445955 357 878809491 69 258533124 306 926678497 240 790088250 316 872609199 516 939778254 290 101962713 613 631530409 129 756692964 397 105533042 547 728000354 843 628541171 608 912320124 8 946434244 446 270154435 66 722552161 169 976299069 913 997872607 977 905422778 703 956730611 57 292011035 944 91971227 49 433715354 540 384614629 902 997793454 492 939147037 755 437351266 84 275016344 618 843616845 762 431219816 404 558144798 436 775873033 432 608392655 931 244468354 693 645182549 249 306694259 370 934534769 404 123059571 935 187193914 909 952285890 685 501790114 542 484530811 217 713523242 273 58092899 687 413344983 512 104037040 941 350088717 701 111996335 627 700909511 32 258021550 542 226269974 196 883856384 478 415984551 992 669494311 459 814903611 612 241743108 593 34862079 387 296545885 242 830598730 209 261851178 148 200774152 957 195560787 832 715692110 376 92383876 165 279452255 84 623829384 79 642256830 34 294634814 815 70812824 724 140082526 935 141674161 323 993086154 302 44174867 362 790507235 936 848899065 510 115242301 717 87977685 435 502469525 423 887162354 862 622703912 377 69776298 76 168417713 601 313607718 621 219983199 841 356776157 588 687519987 79 328493492 52 929868639 642 431960072 649 418671676 273 592734042 492 747252204 283 32676155 918 823247736 136 127566714 592 476372362 408 149614227 637 229093013 569 169522596 689 659843292 710 261909138 299 547844454 523 405410677 51 217335114 224 89735909 882 619528215 669 272568157 887 679430534 641 252409577 793 213103518 549 700759503 164 895273277 500 56518189 78 594502378 409 230059248 937 424573390 239 336990490 709 152061924 624 294063504 278 845701276 16 107088141 341 230105623 259 166562563 858 165233192 742 861203220 832 469915013 899 970058719 216 759028209 945 677632790 202 786914799 380 381314026 638 885544769 61 128273119 825 142930819 4 508650852 377 749540551 129 986764244 653 34876972 850 346374925 496 234774550 758 342198884 429 454022914 647 61513686 86 596189448 727 997832508 465 778737780 657 325209638 307 501783537 524 288014327 947 92157350 193 777767703 143 853279608 61 26492253 276 688351693 337 454506879 567 492159728 26 913400717 721 852968083 520 441594295 84 254104972 953 727181096 195 523739795 354 978955753 628 574374601 691 914056806 54 315081229 297 615544010 611 113290901 433 630956330 52 210000388 211 720732612 569 593233438 676 708931616 295 299049723 939 862708507 458 299817678 977 209190749 722 798778450 295 257040430 822 139951665 623 73521756 930 494010541 457 475297341 432 658235665 250 6275174 457 285264875 425 562773322 432 269647888 674 591721720 174 448032323 207 936557872 996 324082752 159 664094682 114 799311293 734 591865449 864 874087746 643 474518050 978 115108894 170 1028747 674 964758595 899 496648997 540 84735985 82 317062536 60 749014285 410 449587028 25 643901591 328 741107358 96 283010361 454 665669024 36 982327819 725 872841600 521 67075364 887 919369523 375 737692134 82 656859873 296 946354669 131 61382362 773 514683632 763 828951996 554 105467926 197 910055125 991 556578406 776 507831599 489 498644615 497 773401035 574 782383859 620 809627353 164 400774475 819 121467965 54 631300298 270 702581629 862 304375771 606 643432261 163 537725601 499 341931118 103 869635821 786 334365068 40 797280402 437 107205658 583 379271782 243 759635146 40 916097316 579 245668370 433 941948480 114 531681578 573 909038068 368 557618875 877 809835052 531 432515992 47 544072037 43 354343244 650 555627110 513 306885950 291 875621764 120 843883044 294 2493909 50 355633295 23 479757482 317 617740786 535 105144347 957 417564465 982 157506123 952 660930736 563 987136617 207 302707239 341 304034299 134 40297765 454 11246738 219 216264672 9 656940650 474 234619047 997 950335208 2 979379481 566 620382001 524 271875248 647 869453185 559 414514905 70 693964868 922 773219580 487 509040189 902 741260688 604 333639323 84 971551788 640 694186249 50 480629079 941 149070466 664 602610751 382 270848923 757 440206259 953 611520730 209 863819568 985 591577270 181 903859341 748 618198945 613 637108126 74 557514979 876 369488823 532 527865052 944 215067906 94 900251265 991 942167713 883 607268035 790 581778914 905 145322449 32 591855223 925 448138023 138 964548961 354 914441262 71 938015856 949 827896279 368 615238930 488 338343762 141 666440948 714 164140113 814 357943821 897 79387794 255 348490246 973 681760022 658 725477997 176 787415857 35 396374576 726 363623054 203 938650170 807 780141945 468 734666966 449 531556311 27 345276139 526 556968197 129 98837942 866 273683889 719 558720155 153 240596637 132 386004293 57 982226867 701 940260246 133 296807262 399 450985109 701 129576408 326 263362918 237 837461923 704 276571079 949 578336634 635 332632450 860 313099772 192 518638836 178 277048282 648 406698102 578 129189938 367 184053095 961 42547316 653 948472835 504 870422868 165 615558859 286 210837105 420 663085971 207 467754249 166 972392694 323 683324776 590 640570667 276 922724020 722 636616686 657 967887859 907 789059817 70 134912344 589 285697283 286 628567254 113 178357277 969 712220557 4 316673756 168 621760897 520 680735048 830 426625461 42 680583150 730 752020389 946 109749787 995 27970505 272 817790815 659 156560019 572 191298900 222 504004584 21 417746572 845 345268194 821 550544868 756 189422174 932 118796087 209 168904029 845 229499587 936 171128629 606 746017794 404 157263257 137 417515010 681 621091873 252 336217530 398 942274570 292 159870615 673 243238833 704 680730665 920 515459682 395 725041028 911 721950126 270 50953808 99 196633417 578 790730857 903 180835445 191 474156874 478 801990042 438 96539381 542 272448695 50 290342797 441 501274813 5 293603937 852 143406025 167 353063409 381 196650427 765 755297529 321 261356505 228 848677965 438 945464763 845 10889542 40 431156548 369 831596781 753 840020912 300 16576424 710 160196520 739 592928960 680 97598455 526 904539965 171 21746256 129 909212171 825 552311148 850 189145177 642 557911787 404 482931043 47 352674143 353 297189291 369 921668444 268 986829059 440 972344209 835 521627513 268 46227044 719 409388824 65 630589133 317 982289942 707 771599800 19 299609831 3 587410965 324 903301792 510 602145929 881 958599448 115 345498404 241 991526113 39 618976386 450 438189892 374 450960194 977 314764225 244 9094253 617 376763414 6 45102923 143 165526777 12 789061517 87 645223156 283 27691534 374 432250710 434 86324677 339 47757177 593 535073552 894 172470512 610 34666589 170 871960669 416 399373699 318 136681981 789 562283676 997 202666758 163 687648993 137 905898186 351 678863740 415 197564287 115 979760207 930 609890924 994 239808587 170 557226524 241 809729522 39 328989471 442 807427116 720 935541759 449 664999368 230 885450941 509 763274903 398 477554531 320 932601587 347 417952751 348 638896182 744 43286611 568 499246785 381 94367733 481 974852582 700 599234405 425 219185769 61 871799593 192 534162320 675 232844257 855 529546030 953 463734697 2 166873151 817 984918317 845 673224938 130 945442728 20 500565578 33 192026068 215 812993033 625 634868973 280 50152692 721 219903290 396 165613346 138 201185958 487 733236505 865 481996627 482 464036229 641 560031472 417 304791944 880 937954005 566 256970543 672 467315183 92 52870608 896 889402053 151 679244295 969 408994190 431 831640718 49 716228070 509 769147145 161 67207659 847 996149374 805 187478205 313 37834790 357 611925928 430 174694694 649 838545677 362 736414531 654 5555201 533 258269760 364 975229160 712 951818798 202 708246820 930 30760281 969 752191497 772 441426342 231 448003222 348 964197019 927 493158452 953 688025313 34 989907346 282 298896809 331 514040928 376 23473678 980 285547997 506 623475790 317 185987598 877 793410686 128 754404679 39 802973666 703 188763500 562 268725476 884 278075297 986 38454067 374 399052380 942 660893022 947 764732604 928 913033127 651 968304093 344 767486037 384 799698340 813 991838861 265 350954550 130 359852857 989 116044326 334 866585899 24 110738805 154 495467775 583 706064315 343 953056523 657 342492645 362 620097186 404 798622305 582 814309761 77 742871791 20 305487349 813 576873716 889 861478894 665 598720650 263 750227391 579 592561927 978 860071508 834 123729260 892 91073278 210 83997832 520 672669697 649 608591585 769 717156838 103 280791217 913 321690496 815 309900455 35 569009441 892 384633027 246 181177191 719 134263242 139 568616272 699 434960831 992 465279481 800 131637924 540 249491843 961 536412323 0 407676731 115 790631582 504 687310870 35 760147493 542 906841407 46 362004788 171 603629591 728 461176966 24 861654999 949 279839085 493 720879374 335 519889915 342 475709198 974 200547604 763 447005994 872 498410372 344 850027652 970 320224672 955 443178487 726 115834366 675 784120371 138 663631502 447 737507299 305 23482245 805 484531605 936 735058403 149 317345806 888 189199108 99 421649242 410 327859080 888 477730746 565 283763848 243 293874025 439 182855680 554 277875588 657 50782691 137 884870361 985 839450450 573 327084038 739 386925729 7 15470907 5 699334225 665 512854626 775 956017625 10 883026523 158 8730175 775 909386029 326 939488466 309 635248533 500 501431269 197 466281411 459 227338535 926 835029340 243 168683402 414 136622417 522 219503657 433 103441916 624 220338222 785 374987564 283 595567569 195 529994483 805 492087816 27 138574175 186 469193982 849 283540875 582 587658404 407 716784183 623 298946783 614 394363839 965 397232332 84 679850778 290 52394796 356 585456115 9 685318169 311 567735300 990 567183147 397 497732460 38 667851430 976 284334258 484 450501938 529 526171307 55 403358691 977 253239240 193 631386136 318 641356178 464 484735662 648 267998318 306 459395493 907 385503936 681 723083974 625 915002908 588 202651809 458 147038971 106 990212202 0 458067784 565 15785392 552 551470750 743 383868713 8 932022066 536 268774220 452 160272552 240 620359062 81 815048451 749 125699678 897 319795104 513 10153365 18 975489789 526 191952281 824 46165441 773 119317610 486 731728140 51 539706234 116 491046136 275 38816193 769 830262837 129 424975093 999 1072979 77 300665567 519 688683183 771 788755319 356 426201869 419 976630785 224 11494562 557 414691102 731 630363255 338 75958642 538 370943794 767 185312982 229 343378427 882 270602637 359 965462520 84 819064435 577 393747652 14 560307460 636 822293836 859 885195194 222 289007319 928 284263788 690 22391025 81 280004626 795 35589918 610 853070720 474 806258161 947 344785274 4 836168338 256 784939670 816 283644274 599 438050308 111 721715437 845 432161689 794 741687969 245 886778709 367 773545427 590 28281575 833 469640205 686 850978248 122 103222835 410 895583235 63 500596815 831 459325672 38 978325024 675 468384978 2 42434475 574 755974228 661 668707045 425 156599646 861 361901815 538 127904304 632 872238405 214 535947486 217 324925953 153 472019279 558 185190444 109 856873319 798 14611439 401 609637220 377 192734214 151 300284331 531 970668407 706 804931230 387 971301771 855 465391126 709 359249079 692 212117593 479 940730878 216 334863571 877 405763150 24 302066728 497 392707211 128 463573460 328 28817900 621 444670391 270 620477216 696 209717962 344 204512964 251 860252658 540 356127730 135 611451287 576 101797588 303 217261417 224 922311798 494 529652416 957 986840132 393 659480346 69 442085547 785 673673890 0 859283865 103 428317661 873 382762684 114 728259054 254 198938001 597 305728998 698 965829422 425 248342227 560 286139248 8 509159256 729 43865737 897 603475258 249 147936680 210 196125933 915 512081029 558 783332958 665 840934187 889 865459920 505 97142287 456 784304283 729 928820696 730 319352851 7 924099527 939 319797294 686 913447755 900 24710186 434 69112442 344 57067721 918 611112036 710 754961207 73 92340380 780 195756497 673 221087221 638 633556235 316 316638926 77 26674527 435 435702848 277 272917073 445 680647112 783 570585217 781 913007762 437 622980175 290 299802002 384 195796451 551 772888342 332 327482805 437 627718578 284 256565174 382 159440655 766 790877257 246 878694362 342 733316848 391 972194454 315 474017104 974 103172620 805 740492035 874 9744300 340 363542050 70 960799127 700 160685877 502 514810523 46 535047373 195 864449577 210 696905239 951 717411301 734 778837954 972 973784288 541 342446920 86 314019834 188 486066282 979 952247979 260 748205408 634 628114635 169 533488948 405 39498934 338 325761765 178 517824242 955 499202432 394 992470097 818 421232990 135 18763984 784 318857192 378 519985462 49 4865967 255 21857161 260 695642555 586 1200353 499 48498257 139 929687980 937 914375812 636 36456028 251 814313606 513 619200692 287 740573267 871 708592568 754 663390437 125 477421743 862 707855647 802 328296797 686 256992982 777 174809147 770 835254571 220 890623315 645 552623240 424 476613265 833 855852350 286 812003139 905 564275716 56 644703235 558 758880763 951 915141859 2 464167425 994 890632445 702 526800703 781 570278821 304 293286897 222 311145990 535 416015948 314 69805632 280 255875912 684 949299295 248 843621886 461 232814792 191 972672264 12 490647694 951 94817986 746 661237074 130 888621855 822 867624269 736 551482103 963 513304516 778 96228777 375 282327684 892 725069079 13 979460194 67 844227586 883 946049828 782 551459230 867 927412917 700 783140757 491 29098408 499 706092505 597 288927144 453 100487340 603 146104957 670 195120972 833 690729825 517 720852630 918 470328559 384 693775562 180 190636558 639 18561733 533 442053966 334 853532360 449 33581762 498 916988871 322 648075093 294 655693177 332 540781289 746 640100469 368 182338346 51 546195570 287 913174656 434 358938914 486 299785236 351 405262191 344 903652894 637 705899972 383 520626450 949 929523955 558 802913270 332 241179653 457 491232720 724 75603752 27 617180852 473 533023846 795 527782923 959 155824723 987 753785569 651 447687826 971 986067981 790 757086245 759 484503210 852 311411955 363 227001383 579 651360015 488 755984476 31 534491673 920 950379166 383 968214663 105 284630761 887 806338508 925 989627454 70 577910063 344 647069777 211 431678015 255 2079693 802 235117401 237 749130945 12 916033029 363 816494183 677 226518490 526 238393524 21 259456793 283 919345757 580 519583203 389 564065252 463 562444327 153 268802389 896 59729261 481 410304520 741 577511112 958 770841943 787 390506611 51 757657273 759 296881189 698 503327491 975 280682688 85 560962358 432 666891453 114 508685370 246 981013239 557 196925897 570 976808333 867 751502306 554 984355138 546 51228529 928 774442571 807 287964469 301 347547926 126 191679337 394 635999066 71 838212401 454 198248530 260 9952991 500 963318662 58 70356777 536 316898774 380 612023505 667 706176512 776 294409719 386 72984246 938 779981422 951 104732319 573 711822447 899 904634957 100 234188769 228 244144240 248 595498978 447 871597607 865 693643417 240 126894014 647 445173717 980 996329930 52 737424247 828 601963722 68 280979091 722 98771412 133 351292897 365 84205754 559 900111542 164 39497750 736 29802916 3 800925062 808 998928790 348 508143237 484 843540807 483 404660488 175 89865747 28 119419031 562 154991609 552 37890573 28 72868944 132 882705810 135 476419650 538 123546730 610 848518599 366 949057554 148 532828827 957 36645605 972 197271244 391 977363213 188 238466957 484 205797485 425 296375802 160 168380562 928 998947104 470 920698948 934 383093553 323 715294714 651 52728078 293 154075621 479 820160105 81 663433601 878 221625593 924 856639436 179 662250166 426 648823897 40 380060870 921 428399975 754 896233489 131 855625016 798 752469093 135 972591026 37 361983625 561 364824768 743 50107908 387 966052133 585 275063652 870 421815700 112 526498143 512 173831129 766 233308866 998 482071520 417 704510230 731 952795260 773 879690742 350 770935726 568 514115145 506 826936458 989 58834527 87 216244724 664 803361169 680 69738827 655 623219655 128 264377340 790 383409686 802 218228699 45 617331055 561 513725455 347 63140903 535 942493901 802 320859837 843 48506654 241 420523020 888 518791241 336 527169322 76 373071844 534 574598964 216 377302336 190 598832965 679 451819665 813 700551796 768 7080086 23 972243246 754 957825185 301 47053126 715 717572054 520 867380757 568 868006080 900 738574116 748 541142445 782 514894729 792 463058634 482 536196144 789 533632589 687 769828772 881 132778175 847 141554437 846 781815223 169 621654077 837 182008267 488 121928337 372 762922691 77 548781124 60 761789446 484 175668650 892 570964207 246 521928002 51 973860243 835 826993290 456 935894432 113 919804344 1 741600999 86 49094372 983 534435030 463 972894909 67 846556272 880 750347935 755 939705657 338 100749994 944 335171225 708 366579951 12 934794102 98 279971182 982 366169832 376 200564641 508 320362429 114 724287525 303 161066667 518 456711336 533 571768943 444 264852267 583 229780827 517 854014100 698 868086999 153 341992760 804 389615360 942 302979400 451 23966101 746 460572097 65 295835546 271 736218164 308 739140997 661 253176952 42 241432781 34 46703564 749 474370904 886 137682717 558 32985700 173 730947185 925 235427149 704 24080329 775 841916591 434 467831711 383 897019639 776 750714264 755 887539930 532 547931428 774 987582501 957 434645672 147 36598880 729 842760436 293 234824775 299 213043667 528 922564529 40 763102214 76 382803668 375 646138303 424 234166642 803 38014777 40 221372483 41 90406155 390 313033374 988 90647314 715 237202581 914 631550690 157 876827153 572 636950655 548 673386902 150 653351992 192 44855152 115 203160522 123 26800903 967 552540552 139 215704483 726 313471221 913 639724182 412 463884697 111 865360548 929 763569756 905 392827683 72 591400663 83 842453531 439 454849697 702 413016577 50 558281849 424 469929543 258 60063173 322 708561377 503 793751104 810 916159591 511 50523708 285 88794933 489 535563901 484 70202620 765 334413281 559 104173054 893 713660347 663 281434150 601 4562477 862 616180947 819 240738392 772 649807541 697 173969372 828 621265710 303 142107922 104 62089703 716 515070489 201 990437697 956 683728309 987 687439547 135 833332721 175 687292845 122 701087429 139 463996378 592 108721310 302 175973681 80 465358020 301 873147857 315 527204649 363 132161875 165 265753690 919 202971958 46 196354169 173 263510457 436 779940883 389 177152803 786 34710588 861 483316252 372 112296885 525 239700723 901 316308790 160 903632484 792 119491311 997 274423833 945 145291432 438 452734240 600 31396326 437 213561538 282 435541837 113 606644492 129 152892020 151 495886723 471 585986957 956 508580039 521 211965740 936 521288916 708 994349650 584 160968668 880 574799041 117 627326836 685 41816222 374 946135011 901 285300591 774 989399586 110 975545056 283 349364147 794 690389751 927 408482263 927 397899463 810 901773601 658 840306694 881 509668865 875 776696270 31 921220181 135 250036866 630 220170337 135 275468308 122 430884894 162 707297027 638 77682018 792 315565807 81 323358215 363 409607837 981 243256227 217 169449461 289 423335808 119 367134206 932 188660439 535 867406363 873 103435170 56 416362988 832 980714466 194 962139295 273 903797345 304 79299813 777 493349732 969 246699445 484 820154603 217 525481441 62 912097240 879 181856090 131 598066269 505 223757726 897 742819822 543 721898258 208 445642938 425 799174519 103 761058515 200 458131218 344 351396795 304 18887411 853 454494138 991 472043042 75 147999262 788 656929961 77 355766149 716 235236844 439 629211117 897 270771126 151 536828414 109 163919077 979 62878260 968 912573147 352 751336599 425 708943343 354 525711065 267 565740948 191 596032481 889 209801986 821 650347506 146 362949126 221 812877922 359 577707172 331 627865593 203 988693509 37 599116951 447 247262456 330 924817635 545 236483191 993 162136557 671 97362230 464 921994802 724 383712911 499 767732571 798 413206087 479 508343128 355 614404389 72 85858653 495 105132163 221 147610194 231 271616818 325 388762089 157 83121366 467 765111517 817 958292901 880 185756293 574 276228596 297 321955077 497 178347666 465 419348015 995 926067249 222 528626786 784 522376596 120 184532869 141 170559917 889 155282401 880 63653481 352 305464609 658 94178630 666 362588086 306 826854807 446 263045871 940 523994547 376 348885778 640 131006827 226 721205379 747 300066279 60 64964041 770 791377600 776 829428138 348 247541717 537 180547532 82 452073047 687 347390979 939 129848996 680 242490683 689 595661664 324 32819930 114 460130083 901 61879983 678 685617964 694 429858469 295 844794434 789 776471315 314 875376006 289 192891969 811 681858364 317 213485445 431 560643963 503 142128127 246 282976620 158 680714396 417 417809577 201 148049458 792 849958421 489 553947065 947 224953924 972 343992544 514 799950008 449 351689980 827 741578403 611 901045801 133 458291706 521 25898251 289 535991269 663 455088789 606 127275915 37 750251529 837 391848902 718 301192292 470 379922534 367 488341444 916 83141020 923 483464139 314 663325069 684 485295556 216 74687549 650 694545472 97 977799992 138 962304481 691 949015017 84 244598405 786 30011898 69 544805244 23 169324773 453 678838030 265 796505537 516 622651136 871 214650889 195 866864281 245 804094975 612 999339553 628 190209915 827 155200381 61 277152226 185 355784847 509 320093987 309 910518024 880 807500806 982 221213310 886 170302053 977 388596004 14 773822774 594 39338639 765 420227283 270 958535140 489 468784594 216 500825101 483 109851400 227 742495738 293 871490425 841 406013271 411 878277519 199 43154015 907 637022795 162 389549257 543 763107604 127 531390561 189 11670712 156 847570608 898 179300726 982 254871531 134 842508807 950 107038623 621 614941447 867 38893681 670 391410273 442 508824841 51 265196189 202 763084973 527 474624813 869 139276593 849 492124453 703 163788044 885 226727057 752 27728051 599 976887756 471 300932314 761 601306578 14 824081907 840 437035672 904 130324335 743 281670685 585 47913073 504 294689819 153 207586110 262 583311202 170 387962628 964 229408035 952 640221132 147 181670271 930 242831149 276 81684076 789 846152265 522 165565808 868 766258477 450 492407248 176 733174247 287 488427806 631 506564236 959 552969979 555 488313665 981 85347803 960 260834146 873 311495033 896 9503926 896 228921717 576 874743730 906 277844338 497 813774647 867 856257191 180 417993695 976 4851553 570 607798749 81 644027759 374 486191906 579 332157864 826 24178987 566 787998220 497 455962673 630 178210110 278 184716358 942 795030364 914 455434543 664 696907763 359 971963654 996 607026230 544 948691971 488 859723653 256 826794749 924 648983558 947 889586789 473 729780817 756 804578432 638 116295414 455 440449930 606 107102759 299 894108796 889 932982386 881 869367594 804 609028507 816 125040935 507 207133784 653 257433575 918 198407452 245 727007084 864 592053584 749 844093441 220 452687887 958 150009611 624 383666176 344 906414302 821 126070078 166 981899453 551 380676867 191 138021871 394 509272511 501 964703401 572 568353271 599 216465562 484 875860793 33 645447668 379 17108439 416 415255671 349 223531309 448 706412144 782 151841989 565 172180662 722 779359923 573 220307924 686 433981484 450 169196499 617 403172181 378 266291087 851 651148086 812 700270421 912 790582623 957 362451871 777 722744030 545 726133907 300 431369695 972 470670778 919 249721369 545 737001315 311 53765740 76 944280219 17 250153361 939 754192899 383 873836579 478 579084119 981 199947646 818 867669389 877 638662952 245 518739931 96 91747703 720 223555276 356 596214058 938 371155591 869 474413614 695 388322767 965 365737548 328 231792577 775 935003587 772 322597766 433 922616080 885 510887669 459 43980517 605 166815741 86 607995698 795 415587268 225 95373705 403 767600423 337 345312449 68 91139914 351 588349256 19 676016709 4 218482192 17 144174661 521 221736620 978 34136578 441 330792241 196 598175292 631 574368614 951 103494838 283 842171210 904 102985794 891 558810961 664 682076078 458 747324348 400 809852238 935 45564524 862 634640804 602 53044102 153 351121020 31 682489011 504 179413403 923 553658816 209 505391637 637 483671146 377 8344005 754 188325127 269 115998679 248 629683044 991 879391084 266 714550264 774 388108709 365 321963887 432 479595794 468 449706936 45 109310897 247 470387183 259 8229293 967 804192580 763 253708958 844 147997719 340 149608668 524 995617983 223 593750029 466 927520984 322 739316020 63 683790667 220 805171331 806 157120418 424 551957622 225 489727897 924 517187843 956 680785319 625 779610881 841 528760111 312 837850165 297 146803000 890 288099214 451 282209739 476 895722443 18 896681731 590 186674735 199 436153746 594 503112026 652 899937657 580 235435885 229 590224303 796 682064652 379 352419091 985 414409821 317 93642570 77 565192897 326 790135172 65 581162414 462 987975115 924 364735521 675 833490288 874 618812988 86 288044871 446 105008956 326 620727396 178 9173543 113 215399798 902 653881787 281 999990578 758 485863496 927 348640014 657 53205606 43 287213406 336 594790055 480 60833678 7 507918389 878 634613678 578 102864429 281 826815184 604 439267701 962 60444386 898 894303207 501 916518010 405 198391241 618 68600843 65 60100546 486 802961874 720 391499462 478 865378485 363 491797639 733 699727573 212 318235827 236 333640450 449 420020904 717 947576921 622 556174650 822 609113524 971 873523861 872 482506201 930 403393766 912 804807860 164 158887038 279 544971586 161 731510080 480 736863630 351 531009305 302 732335563 960 94360581 780 573832688 249 735146677 468 170744829 215 931833151 413 115591868 483 560115720 574 494893829 942 209449553 973 203264923 208 696507848 916 461973948 584 25683730 279 233269520 451 642085161 564 917599884 454 781212109 897 934987129 580 894075711 115 507667314 215 880008228 450 840761439 52 348405419 674 946650009 34 153949497 737 164326353 65 216317045 176 861345231 98 735221673 244 196675052 588 70688839 976 678053584 785 182356080 89 718700806 831 240575434 771 691735559 915 101983915 692 860884664 90 613160795 82 260226127 135 865977949 469 940231487 935 473436973 93 553124252 99 498485 484 255096744 520 79588816 890 543906011 696 581558858 390 721723709 773 899448481 420 703274597 792 472130227 887 859256492 258 309747135 596 887313540 167 322114785 51 902564809 545 627834614 334 472003231 617 816270051 191 874304417 794 525358719 927 138450672 758 238178526 948 559594623 42 960352250 453 878730275 862 683102730 52 966514549 725 146847570 735 266090030 337 597506690 574 194584029 835 507094686 156 632297015 527 397806211 107 90691171 931 37487990 607 972795482 419 783939987 563 282565817 649 744303861 15 51975146 686 652346793 729 571616716 502 40168151 447 248440233 917 494552230 269 874490275 65 293243508 336 908122213 737 426265779 428 718561937 932 859033453 199 844179808 708 690226434 396 140112717 522 840391879 772 664627446 21 764837481 41 602137103 188 371747026 32 205759051 594 870871899 390 179774133 959 38653512 533 751357021 517 329774668 579 930344190 261 437984956 837 670628826 261 753890154 133 978336270 325 771256562 438 453404165 613 546617893 738 833976669 39 284087290 34 82084384 394 305345149 839 59917162 743 196576477 51 581283504 561 772953519 474 689725322 444 611059548 478 939731329 350 209338825 687 74148013 13 469577736 38 832149030 900 350309527 578 640465861 348 228741479 246 820968951 855 644000483 503 659758177 595 136908803 739 444542664 860 621477538 563 246595866 435 141492783 769 517615662 923 342613111 31 274078774 139 149113533 111 496714914 644 338346825 958 856952884 272 461452309 699 928969335 857 171146517 612 707379392 954 116092496 982 475175677 560 83976399 768 855593211 938 163058667 842 172072829 809 173324362 215 450607562 400 445176201 532 494933673 231 980732377 561 192142251 395 719943419 753 848122016 197 895189388 23 470495113 963 27686546 637 717347429 181 304238465 362 634976217 543 766351024 56 458782634 493 209550234 537 629941182 97 914926374 328 908817964 39 579531901 383 213696417 969 338672377 184 330080909 454 804885931 250 535414213 889 288915939 237 946893415 80 602088973 637 945553925 961 486823003 175 956168061 35 670264540 697 625311867 156 848654875 566 968164189 629 964496774 230 509186208 168 966629811 931 906027181 33 667346135 195 513796280 235 260267502 995 66701643 288 117424123 753 447038186 261 450599884 5 790484875 631 620565250 469 665962899 772 724958285 398 346081767 706 998440063 182 679088579 339 722351587 197 302814151 333 999741816 227 106294704 964 532198646 762 650532073 330 271543652 159 377810842 820 487605860 480 798990825 82 908812542 905 913231726 593 667656281 74 70314906 331 633632701 559 426261224 245 172582690 59 587346108 403 101254050 320 784449295 443 878301723 434 896415367 263 87065266 510 970234653 743 564803937 162 796169195 878 646005125 674 259163399 266 160988890 814 381485623 829 170498388 537 832356431 46 712432241 623 253123580 59 728336208 455 344843212 867 333232563 777 796609660 415 403031452 828 808783535 87 611922153 675 188806144 519 765057904 463 299817734 842 240905311 374 174228345 737 853666214 571 331954806 62 217424011 843 750667382 301 33742740 636 126172849 87 52561858 838 482946965 404 461222539 693 54412457 235 227565806 549 468252 784 428106725 620 797180291 125 422898283 541 984346107 785 802285697 139 486791213 899 867960378 786 380441742 97 578846604 758 929773006 726 789978450 760 94237158 218 804139234 288 474910241 405 622619977 877 491864211 839 938858153 715 81422470 658 50771084 236 610385955 978 204830756 312 407063537 825 358964029 775 190318599 471 290201311 351 173429725 822 65756120 466 699003586 141 407408466 78 526074815 994 152747715 716 317030931 877 924937576 348 104368580 401 488567533 40 780894646 479 756637512 360 680825227 12 248897838 909 452259870 595 503937250 865 903841312 778 780728163 708 992433188 582 439623632 950 501558505 561 852595605 206 215700193 82 121129205 34 154661842 208 631337171 391 65426818 778 335266312 768 458145641 96 862315488 307 4726600 478 708986386 215 151115939 312 517320650 382 582672510 655 176001630 408 273332793 891 681543123 407 199069524 387 571335269 387 474783220 955 842759294 383 866244994 524 327578705 175 310846371 881 468014676 50 872921175 382 634826381 612 296899636 357 330334207 146 798758706 409 600022708 683 988191061 201 324403610 35 965378171 441 619385184 505 619062408 359 868818924 677 732167256 582 57199478 703 136630977 306 588632501 924 794094309 336 270986075 595 582997261 702 799398833 491 908203478 272 800039261 516 124761218 168 442340600 617 23032591 69 180225334 549 485817395 862 155713412 468 421120514 708 974438530 208 415614472 178 540404639 83 899897917 743 154947473 218 640556684 259 288169693 414 98578052 711 31727004 531 205723360 481 983382525 891 239295407 879 215426677 732 415550197 460 65988075 352 191945948 557 501292460 729 283554577 670 62525569 95 155579512 33 517048276 706 240005287 870 454152782 651 972865207 35 447646059 101 401664001 416 652839402 1 623165936 931 784485258 76 423437362 583 348124812 738 461161669 224 458024393 262 159080597 479 767829091 99 576934459 680 803545404 326 49567111 365 954032277 994 555394891 715 708759488 275 558886980 401 273985435 777 530661531 138 39102885 988 224370531 73 495052071 882 525509700 434 711499996 213 864779765 295 197203254 266 203258632 420 876192942 879 575138395 322 277757267 806 956597637 710 982207879 291 94583062 921 227919338 578 733688701 988 225468519 80 410524243 963 827076936 759 708354308 39 250290041 946 455071655 128 178990337 393 923767378 131 114888593 853 967053119 469 973490672 734 697957570 269 419622848 400 606798892 416 464027500 726 408665834 11 78694696 646 370987101 452 734809278 837 163745335 601 703761446 3 905829708 522 367581082 554 685920634 797 745904762 115 550934819 468 604474944 318 586345055 65 650419233 324 123856629 421 267263437 778 971465208 454 345786697 193 679104472 400 447162069 373 160786318 270 148746112 371 973597016 58 269326931 272 859884202 21 941209123 348 711541131 956 389441578 68 6043669 877 954631378 503 390868987 492 271824719 800 282219118 903 296072327 692 406460274 246 724917403 258 761687960 323 123852076 968 699820417 523 317240118 969 804982746 47 696284793 55 91524872 891 947216023 639 327082848 772 88722770 718 239000652 655 433669633 99 199889152 144 338564470 219 99754161 763 513473801 351 385138631 712 610320456 268 942470836 171 354150298 437 600749127 362 108441619 336 377777869 923 317395513 787 454475745 247 753782091 762 860516393 820 143349236 253 864311592 667 874784113 193 248273356 604 425569912 366 280545505 174 935906519 965 765785435 266 776226531 466 260239486 649 635791038 974 907615027 207 67964268 580 303309382 585 291172462 740 642055887 607 78474567 246 660900870 822 108980278 503 263376547 332 353760992 768 968867894 909 381202806 954 834703762 674 418283494 602 640176957 399 924146728 541 77346457 387 298690296 661 15116035 143 163282817 610 217878180 683 755155152 199 186515334 213 492636445 733 67995465 916 406651540 51 509647438 808 173416481 248 472780304 331 423455016 558 241521999 728 525714882 33 169916795 944 817379163 195 410622842 185 59483014 572 562810493 85 534274761 798 457284885 941 987911524 833 240739170 175 94691349 972 790017876 724 171222379 792 483085327 433 415891776 11 321524033 617 494928124 855 78732417 734 512405587 991 293487442 74 960691437 711 887557232 567 673419862 558 255100267 45 54679759 446 860751616 508 729692965 522 829559981 220 716998931 114 973565852 4 994482804 764 602948753 132 329377737 15 840107694 534 459670752 203 415490974 221 479919828 822 289754239 626 649209919 36 862583885 152 365487405 846 867463754 561 23551044 412 498609396 717 785386751 349 166171822 462 693670316 67 888358704 584 425005898 670 220827701 834 956727429 252 859651173 745 484628155 835 332862490 958 272851700 846 991906378 768 606212759 492 726410106 854 572210849 611 21345833 608 532476310 147 407197772 397 148360518 180 894021665 630 519806866 115 659530742 118 611104288 117 373753148 129 824107050 510 492881425 47 701320212 622 861878095 216 171363068 629 251137507 942 632771746 968 69165169 794 245473241 209 676749316 63 87640389 879 979039576 195 778038395 948 385007760 177 988844551 449 72831859 816 881999773 790 235875036 251 243428127 279 79764144 950 708088735 644 66122607 280 740620572 413 836678368 241 159322023 835 386184633 27 491907300 978 537794955 733 50589009 509 350962776 399 921694720 440 439979194 189 169036326 279 916093783 405 957192555 435 954329583 870 536761506 458 897303932 271 55474051 245 594721753 614 501534195 294 384231323 488 545423552 738 591198801 512 960068927 290 83281197 308 515055801 490 283481162 645 143792827 920 843986192 895 913876048 145 797483591 772 337119921 350 879557049 794 209370094 800 992556404 723 358647755 297 354695146 179 384202469 107 25765660 659 125099918 610 268531705 481 114911075 454 969362408 33 303441895 605 403192841 607 575632193 164 837572062 632 394919807 160 756237373 855 515155150 278 263532349 827 734235909 613 791299024 596 166745336 660 846761092 728 889295925 876 612245226 973 491842529 794 145703210 339 375219126 784 165514874 882 620804858 482 430891577 30 565695060 729 221500950 123 563163308 758 39668063 862 970018239 606 257860980 847 903086900 671 668368352 55 446329471 890 294447272 309 788709079 473 598901048 496 605034602 979 162045904 296 910750969 638 420579046 697 839293543 224 793820308 642 716451510 156 847793286 821 721220964 246 22139985 338 560888785 232 441106309 832 958084416 892 488212852 611 443243240 824 5493451 250 625352981 188 761181509 338 739212663 287 403387110 304 745667508 779 58951300 241 7778524 986 365102886 514 873751154 177 724783023 498 250157651 635 798069956 706 899128041 49 908178632 456 35236835 603 20005597 67 396454822 907 69893415 135 239202757 30 11321322 236 267442591 483 363635368 613 78100873 109 619875739 41 680027669 45 998291096 245 247500518 867 895883156 363 270891104 36 153278620 679 24499583 725 149872773 498 297763336 185 629914366 655 482878313 455 908441742 89 262364702 333 395259920 429 732656238 604 979550930 983 460083041 67 955555048 954 588364817 704 247351772 716 712104593 283 284963380 307 158320555 815 944936705 844 802907754 822 463304197 92 542936665 680 502605642 692 929416155 47 335916814 573 872528329 495 339801876 727 872750340 405 707576920 551 817875478 867 415404951 638 830067346 777 146517136 462 923435796 972 878060573 814 102536592 901 559443809 332 951139662 573 84260329 514 30244929 210 574664447 617 555985766 253 895413205 122 424703882 685 249690014 181 200290748 570 952631408 529 769755426 515 216213715 48 694355030 170 201393087 773 889973517 556 194079854 701 715895955 977 464038831 690 685535250 149 167627573 138 290647900 560 106606774 863 952243757 443 658336205 901 485048269 605 137619996 191 527381185 395 58067528 387 626833819 19 679054297 595 337903222 684 997824065 598 776539909 541 868504580 576 377492226 149 498685362 554 570241308 547 645209470 572 200060071 54 552867206 787 746834622 587 35753012 600 55352373 649 159480209 942 20958572 857 124037965 92 576375242 697 903320834 574 273155058 643 350243596 745 932081137 723 26761668 924 512766384 441 605527739 30 438334438 691 551016770 61 3237585 671 669611954 377 848144822 591 157481472 463 526869958 970 706840352 656 93194121 263 477570151 733 437800117 237 844580546 173 4019718 683 110346426 337 146298553 808 777775758 933 780459196 481 263874376 751 371306106 124 389586638 404 18637791 660 273838383 627 737136316 723 936971000 771 235617355 690 974093332 978 498675561 237 659943168 741 193832289 402 722000094 975 689983930 531 94133489 498 1278446 150 224515476 725 338821619 441 331434550 420 378570830 715 636750514 265 961251946 994 200050086 758 42750964 290 704911710 354 359131295 219 100877865 878 323558880 821 396755730 570 575499648 211 416819584 427 152195885 342 250080392 916 746754398 556 412060797 365 898264238 304 679334708 57 489543009 145 635279052 96 565547639 477 924013660 988 960851245 737 766119303 103 194125871 36 328294613 114 403364035 16 286777182 881 932522501 765 595780844 814 342142549 622 279416053 243 522300628 673 303029989 881 458690127 536 375453991 235 499121355 519 792573186 177 905156443 492 669212456 857 740203788 398 572972130 240 801769126 420 402954349 145 753082669 409 358768003 763 350671641 609 448568096 785 452832650 312 37310150 576 911281426 553 227202088 408 260076061 407 635980745 150 405927053 506 395845775 843 828579364 245 170811423 465 516372569 826 287544117 608 289042375 77 287137826 720 595402651 702 396452640 156 784384892 264 707303858 601 786327285 262 690677941 703 139770210 977 986139934 965 204179816 746 952358987 597 928006322 812 115254471 490 766731225 555 899207931 186 102655090 158 658494628 942 255279339 11 246629876 775 505904743 190 935230375 349 52183704 979 183818282 158 593760065 690 85996855 696 748681745 712 875890116 78 717484585 682 194413128 166 9716590 158 925412035 978 786625990 593 216588275 769 532047709 345 472117652 301 199244031 337 962419601 43 927154782 665 139533575 898 247832758 761 642140321 209 518415545 218 127139373 155 210238130 784 927036048 968 74655772 202 487743848 866 8313679 686 240910172 760 295664759 873 932972756 608 330694789 504 631913532 350 143399009 701 534857279 964 79563705 477 180313162 314 246064665 486 801503250 671 440312250 530 333200451 505 819660690 705 23485045 988 737043316 136 577820236 862 639573749 833 837067729 158 721710597 777 15910885 257 941171218 688 386015189 509 391269212 513 657448869 171 994361747 213 851678170 661 225621129 315 935864403 307 485222209 446 796550339 981 685466843 696 518456289 421 752590704 265 696938240 273 219348915 56 476809853 825 125012938 470 11706680 510 742606512 599 530598500 853 326140099 871 290346365 215 577082573 582 196606328 287 918148741 133 225393416 350 259433146 669 766386622 68 550340554 162 364356977 297 118621650 767 447380623 187 593320750 122 974140789 71 993227416 226 576304680 519 302098454 610 639672298 511 167339026 473 780218204 442 203227860 879 497189467 444 971956807 670 17802114 832 54035481 330 482645071 480 994589768 841 163263758 691 161135367 953 333729663 585 9955157 707 324363117 742 491171952 104 996878826 604 645448355 254 907081529 324 154960799 653 89149530 794 112197908 362 771868730 699 840566115 698 279367375 477 20540212 870 332245555 999 81300578 606 675776022 904 916105359 430 397446763 78 238077028 126 367857617 66 960213747 138 888882169 881 370064740 734 318679935 986 752946587 709 194355313 742 893495809 658 484447242 266 300891845 108 785718867 382 665776216 462 58253269 443 71311517 963 53305516 982 127536559 202 320411170 676 380623981 345 929585699 882 904373899 787 392102207 897 916969246 429 840539650 782 669447168 379 757422457 956 312363535 540 520362209 646 756611588 786 993952473 74 829757901 908 718216818 224 746141273 217 352171068 209 986922208 815 334727939 417 229146074 885 425531262 756 641268358 539 444834384 921 42221160 221 279536111 940 903311787 420 558593255 124 873737232 569 30559319 800 642731971 809 28316524 91 876960722 330 831041069 584 370666433 388 449101805 254 594238419 538 464000439 559 902331989 663 505317818 468 434730935 646 499558646 48 970147415 912 597866183 283 288569509 874 464350220 675 106725824 497 354635865 665 465681594 334 431020191 182 194391883 369 652777503 696 356440490 788 447998149 739 212411142 699 285226110 775 515784980 109 653821382 929 776859722 772 114489083 436 599941911 383 631503450 626 93414495 0 204148128 680 850871438 672 167272194 463 340057684 125 602724423 654 967507667 381 959027795 447 945254043 732 410410073 255 994879656 190 865154729 28 758327311 153 608004501 164 455394156 270 957153754 423 579116106 318 461218161 836 460848282 941 690211895 245 799411440 711 523403003 207 818713544 696 260822677 156 584616938 993 964503085 141 135734357 218 15534391 30 181651679 446 875539540 524 759823562 252 325088222 101 831793895 218 447472888 712 184214787 836 616277948 741 769581140 843 34886260 38 429142317 193 847895068 909 775842458 91 294556085 807 242091124 350 631198875 544 122102887 69 159720296 997 410310961 378 251894423 878 907294321 679 163844864 44 631402116 719 711602263 721 390485562 944 278889988 666 665648436 2 718802415 934 698382197 300 827987675 789 244613295 114 102704867 543 669316960 498 881102434 346 724512590 209 155706362 401 325848882 877 753562673 883 717061505 158 511609533 830 942453207 889 270312191 100 804660119 627 482293055 193 875379999 636 394142176 947 304708889 294 456601830 531 412175847 853 775577814 568 860030128 474 832993639 376 581194468 163 483988093 553 412091076 164 734826869 769 108563464 672 175225580 242 413638813 129 990040013 280 280777553 727 798069569 563 392019252 929 219652676 884 145526009 263 917034821 463 235460977 948 756169558 409 44485945 420 172226751 859 985654857 928 217176443 388 271006561 592 35200470 362 65790167 662 835874237 574 484484606 283 101682045 282 762972386 951 91712447 363 126647956 994 441130655 109 986738162 383 599812322 167 647805101 263 440572601 988 232236366 295 968065744 72 924644502 718 823261614 893 604530863 657 401064346 983 377129327 470 279992193 619 15514700 846 576342069 307 638007961 925 552043498 328 46445167 58 233360592 824 308234293 401 140289378 946 193468231 734 460990961 205 973618109 482 573509581 184 379672596 669 911598806 69 692661543 40 271444199 330 845709652 497 69990972 584 960903661 497 299122414 666 373835726 452 165491662 316 453216187 474 645130410 201 919692341 614 686782615 336 955187960 703 291486731 742 804417379 932 970507477 979 320780863 455 499351914 568 282675975 470 472233768 418 224738469 945 392403124 337 422418880 697 881934525 50 751283280 992 877559891 609 355021926 308 50578559 544 617834562 412 630944971 863 195632204 175 991435161 562 783311069 95 208508202 789 19726596 98 693620669 385 296532370 392 431049961 5 922698836 601 586041031 15 778455322 586 127426206 448 793064920 594 955319724 417 264538271 245 210051122 500 798182506 787 672876861 638 263595676 697 147828871 55 831134119 92 724546035 781 269932269 128 217182988 436 428178283 556 635096484 250 473222066 47 750696425 285 906695906 543 1398915 969 439504608 503 591709468 70 805039606 620 765525363 955 121137847 777 248698239 934 464116061 274 535817403 514 242184640 516 629612965 186 572674197 983 836398544 523 534732987 318 32537583 846 431656495 517 480610233 440 380250199 693 944819549 650 160415546 674 250256352 767 549513786 873 82801697 170 232068909 416 7704529 270 414218402 985 665724184 611 736441812 773 511984181 976 130870300 263 691334975 513 904738053 283 452214662 973 621072418 650 855851958 630 792169888 798 443415573 820 604884139 869 58095846 579 359781187 733 691246740 578 313056600 894 467741277 567 404488491 685 264488290 793 549287129 9 993842731 424 602713804 325 705647778 222 65336405 212 34927433 975 400460932 634 783762719 717 695324810 67 706718714 76 204776134 154 114327904 986 73827751 160 414882224 487 373083638 247 629876728 407 711022693 520 711253399 382 981481724 869 351850721 709 685532157 967 546960057 728 748863228 117 573076507 440 588492100 309 311419403 994 899363717 619 291923462 978 448056414 925 231383312 527 833307590 231 254829114 101 648809270 717 246789360 787 84682507 561 76116377 261 347861317 93 905160756 570 189015310 106 859485212 906 740268732 647 397012403 415 374616746 456 238005015 143 93779045 24 598177430 130 66578488 703 737932299 523 282499000 637 490040877 621 351174295 687 366826950 668 727760871 180 246292537 53 736794412 568 669456348 678 831509335 196 591443761 259 320817952 450 863045667 843 455866165 811 585462262 605 164978710 713 553625816 552 70382117 670 8212881 512 425541550 693 12744446 417 949988763 491 415376604 534 239028907 874 524623783 221 76845003 826 471807305 299 944128021 422 980391801 840 604816633 935 192884011 21 321275109 371 105401946 705 603144678 399 810650921 246 652733083 690 762649088 100 870059076 948 522561003 676 920388774 569 588947501 900 621988420 465 747103000 500 365864143 979 366044443 806 895249646 471 187429937 595 695355186 740 639598956 461 233395578 230 66871140 270 276370146 181 242190685 70 555083720 505 837584043 935 170646825 164 994019148 9 177548577 780 208460305 877 28559962 833 862811233 749 661181052 638 220785348 411 212981767 476 48786024 412 837320283 718 798650414 513 407848356 852 683856217 228 839152445 577 41428276 687 617956246 292 647627821 544 221149257 34 406081863 670 814673657 836 866918322 609 718407519 793 172422883 544 524838434 500 905127447 784 694957245 262 306420830 10 186708469 350 554349002 135 139908589 322 87891861 362 791654504 187 234600741 842 649573952 847 254609951 913 989007622 775 285899101 782 163143299 751 256833713 713 170353350 854 202663646 309 34737678 346 565270623 824 498335306 371 400018958 918 106627161 507 312252093 768 516779694 488 152538810 598 492863320 239 645521811 200 116282441 78 651220716 549 957096717 593 588693977 431 532505126 652 368559758 904 906307760 722 454033056 161 125459059 609 735899857 264 513759327 365 237019264 623 237761533 113 266942125 74 705612433 930 32656526 58 752470086 478 695864332 417 345148376 865 152065940 52 972467319 65 259649573 33 618262167 633 89435796 43 191612953 339 665775466 557 598036901 465 945434493 399 979996248 589 757708352 514 488638299 541 982487293 713 989886101 906 140359972 416 207398791 437 597172051 80 849126619 659 845317952 990 549925143 904 120991246 104 574153613 323 743172892 283 257514649 982 341508611 808 999066838 100 964668100 989 652141318 3 574000171 209 750638993 701 548094229 328 243273780 377 592271274 24 865622358 480 845379449 776 60962587 717 779104997 893 165363996 672 38659253 747 680280059 757 416357518 191 217291184 529 860725617 839 196538677 860 161137927 790 350706218 381 999832394 170 245201248 850 544318957 155 400165782 881 738508633 81 6593399 917 653796991 339 227544158 909 389313465 164 423973055 234 903867493 272 792930034 423 208124997 994 627943473 885 709236429 847 757297264 425 150644262 436 64368299 124 647607232 116 383395935 275 502593874 267 207677663 712 772628059 840 110912479 545 651224309 173 168800310 4 318502434 133 715212301 369 655782867 425 551340334 551 467292301 797 723247479 238 736984611 291 266700414 63 378369695 790 761382999 633 377491623 806 386330073 885 431648783 707 319001749 618 43046590 110 981083271 2 977063658 689 526424139 277 206158850 90 513643912 452 356876247 497 446935161 708 389376200 603 149717739 102 568775572 262 723545099 445 937297861 47 38779089 487 118698536 198 826816137 500 732546889 19 497605464 314 25711170 978 69886001 288 774967013 0 860913297 105 75837509 21 185704039 523 726826713 265 751229346 792 607552342 972 225210124 331 485023526 31 291613744 689 277965649 995 304805083 974 937776076 186 650529062 561 898606622 241 439419332 404 185900355 849 502417298 414 655030395 398 625002587 457 332430743 641 298634071 196 971446599 389 755316358 949 377351313 273 291401122 378 269874471 146 247658084 509 749002224 891 343113350 287 479910461 93 317166726 807 296265280 604 853583982 501 999805850 128 585119772 201 258217594 737 82537233 982 224835800 418 282635521 779 576337367 12 491917449 31 75290353 88 937747399 259 308627150 363 203402716 852 970686708 166 316613994 809 113237599 487 524344940 967 509100203 543 167529124 169 876718593 496 430151936 860 419265959 546 458513908 479 464843399 884 52711698 477 286689585 25 829410246 777 21820583 311 108136094 959 921247606 341 268945265 245 888120410 929 723455951 620 415800472 253 285037023 453 29716847 614 177404777 79 871186346 574 251836673 834 152187160 67 153638234 58 87069967 671 243728187 511 221724343 455 296465258 49 536903862 787 617362488 393 415273866 460 158039879 84 626754130 265 268527710 994 917727136 94 250561834 120 810816716 318 668362012 717 6514322 595 402886599 972 465193029 298 634654344 323 702976871 338 918780033 512 361791927 693 748744833 947 108235503 59 373840049 526 375458779 928 828439576 825 873230753 372 313300023 28 676370420 727 996819423 349 118749912 603 201277941 478 747301710 934 987927807 947 602259337 619 777658236 200 323927431 29 893212881 899 441488803 37 95310905 608 88534428 459 281358673 250 889760971 873 379420519 320 845632085 116 652310645 117 161619144 141 833729209 273 993507088 580 794999363 132 444456049 893 625150178 730 524413766 243 830939646 171 819364254 227 239302507 522 980432200 902 521151084 670 502198224 74 215979291 948 523554754 838 361740234 868 369950622 893 497519674 271 608224117 243 359338481 699 956402547 976 559428454 214 101228506 108 21992834 271 238549140 498 692988907 482 793889902 408 157846601 555 137176077 24 532127403 495 10874285 108 86214077 496 473707869 649 964285292 871 538715468 85 481431263 513 526087101 724 633594229 142 166689199 213 924966811 352 38659310 505 449474013 139 282798259 405 318051868 999 528982648 577 283084977 465 404074229 931 25566312 554 85007546 461 769299569 834 962075040 314 222615081 512 19847347 380 290227709 639 76055702 331 561524176 35 831961791 800 36233670 999 218367625 83 972042225 813 421506594 403 652087798 73 913162898 385 333292451 242 66729769 150 651791052 174 669767432 894 549872392 980 824309560 101 225404709 986 723111569 713 918433867 916 534801845 53 970196357 725 643792780 16 870223329 334 438033167 237 142495818 527 680741678 320 898925082 349 516800599 169 310321023 601 761312847 870 59062905 636 300891554 611 69747978 112 803619123 424 22105414 646 800027755 765 454359276 829 120038386 715 709220708 496 730268402 838 247549591 434 505869379 681 861918734 632 108833062 818 728035000 120 171735180 253 242918603 692 911964521 764 79049720 395 413455000 347 218736462 9 914197192 977 9926609 689 852377907 577 899395270 682 368860026 175 770877166 683 724762198 817 327022913 168 839153996 829 466084257 271 808926372 491 518053216 270 447961917 599 201423114 488 889181166 38 260058500 527 461671765 155 160118642 379 237287452 269 294501334 93 721173319 544 363951578 669 952555989 284 121666337 402 294449526 78 13660081 496 158514490 277 798307984 915 858066303 186 144170999 152 899726054 193 45644605 89 407080630 265 301832576 373 619043246 161 490018636 922 657709884 514 985322221 956 448330278 923 21701299 25 424003498 681 125056457 953 465589208 286 406287225 758 392771134 99 113640805 775 909858228 455 207707276 144 103232990 573 244014850 604 489299741 611 552612171 789 605524889 889 823993186 882 896652256 27 482197878 65 683662562 201 286752480 656 364749855 69 483459888 832 785965950 108 519523675 362 915377057 615 676893626 945 406393665 134 381914386 137 490925928 612 71773074 272 78267915 346 656818751 78 895420292 740 733854389 409 361083523 369 960783264 303 58095629 422 426514690 488 634708186 299 579420724 238 926905731 851 181128900 724 347193256 874 539528113 729 41770516 972 654286069 976 346290045 427 376942713 691 638726031 45 160886661 567 684978814 884 481919288 746 797896451 977 86511642 843 16098235 535 139128466 950 751491269 913 502734578 846 379406013 359 860570432 290 901980503 238 844520445 317 925628967 641 296769303 10 349413489 775 660079965 374 528150776 32 846613755 705 962445635 541 787302944 519 71960000 484 141501244 339 945363575 450 647741956 716 542083601 278 309501851 763 851997286 918 815431581 66 862871408 109 688586745 626 339428718 419 260777957 304 804388551 368 949318644 778 249207768 274 943172177 390 802273338 92 176436263 199 130806468 898 865383788 498 269052555 952 35376520 60 56864598 145 510835889 800 383459221 38 26254561 968 534381246 874 788754126 884 68665915 477 903669045 648 235225971 420 110998237 905 802072844 775 296535234 723 194583742 499 180681179 393 359536942 350 44132055 279 564225407 301 207662460 394 585234996 355 89852309 939 721269296 61 652714428 166 823005865 160 261459205 331 221026517 462 295985521 620 468184582 34 760309835 92 646645874 706 984697564 610 267602702 693 230432404 752 870989811 309 101980996 813 767961289 781 581242711 127 997557339 665 692666378 85 570890082 699 41728461 20 90460923 902 76855443 288 672225814 740 169775761 772 331356173 600 679582296 944 202699548 75 254083361 54 807466642 143 427360154 652 795566902 101 151593198 699 602057290 374 316996969 697 554648117 724 123156164 555 185013219 931 926807717 16 144526549 118 736605823 204 609362553 103 804632430 534 651009544 998 707180615 320 166489808 371 531383694 473 244302797 639 685520310 508 471527188 355 8376308 392 10506220 426 183342174 266 280925787 766 485309361 202 32886646 127 946951811 434 508846471 267 278383471 160 614038451 544 627695278 948 916883814 953 336239082 326 343581361 81 896481327 220 835765310 600 63180645 793 306231137 802 540960512 989 222747459 950 256195604 624 303034093 246 72144630 18 286427810 838 456947018 159 5668890 794 310333094 835 172987165 354 622759543 23 124012531 787 396278492 706 395433384 875 769777848 822 273862228 944 153855411 61 453000738 807 394797733 125 768106808 903 309330848 133 859523777 378 169809368 127 118150888 16 432252944 432 881924299 226 619378662 196 96972374 885 351073872 51 570163529 310 549179885 117 331473427 700 619512987 398 75249616 82 15141161 427 749776790 409 998912751 405 88085200 149 556651768 374 393529008 933 988141377 637 360606787 950 570146421 862 25683801 692 579432387 282 704583191 113 429384254 244 268747734 553 266234036 32 2104806 880 870002268 298 635273745 66 966246387 969 638077846 651 529779343 749 236644141 727 699256476 389 803171637 117 877667222 848 77955926 340 781259914 827 622892927 953 565365987 317 386286118 40 345675267 81 951957873 620 122910785 153 976718495 283 70916660 125 896664954 339 859633002 84 825829442 384 158218630 608 762302530 169 764665000 57 755975843 581 136658048 960 351290155 969 769678230 771 254253766 337 729651697 928 281370674 104 611070617 656 156252191 138 733270064 512 862988497 299 270707574 477 32856442 598 761287406 757 928306378 503 939451799 231 44918443 894 507506924 932 401320381 613 476417855 435 503394805 518 370574952 128 136700435 940 96224691 463 7653313 703 905921975 444 452083902 766 182099331 702 586905909 60 302497829 970 248869511 890 852940350 894 769535901 599 264815216 453 630172048 146 421794159 488 671513759 748 738665943 301 995053508 48 313501512 347 192900254 553 611667168 881 166709343 581 636270104 830 246525206 822 259338639 484 979722512 610 283946087 97 621729462 940 29136264 594 405632916 190 488992903 759 470087028 68 370732618 239 957583513 582 543004411 94 639285615 262 476192420 415 368564902 59 736310944 618 885847864 268 362017639 517 40218257 860 504287620 894 69870611 452 802212268 903 377916087 46 680866251 423 634612851 766 234891047 379 883593107 742 259750895 793 654692541 236 994749340 44 245454899 129 797314274 918 633171448 833 526984501 145 591413587 380 838966989 3 727742911 464 168267379 328 183694358 924 450099225 468 990197056 804 30851443 341 834416355 960 71593087 791 668924697 224 731388194 687 220237702 189 262626533 321 43903751 943 473800371 753 382024688 488 368912000 867 139774778 720 84975753 716 833232060 669 613475542 91 625738485 897 436768779 818 857065717 31 994166632 836 423296835 844 779411987 130 70950302 208 463365616 558 76792196 146 660863717 836 538028393 500 693892244 738 243871663 424 857931914 389 196394559 572 850238298 335 37572819 688 327870205 278 921920842 297 905235742 721 373524911 706 28149343 847 129881221 283 105481762 372 773302588 461 907985084 195 998286076 106 147795025 455 207771102 626 851804189 278 501016414 819 56717780 920 31673683 343 752045599 731 746682626 417 170608801 235 654905456 417 773951861 271 37122438 335 15162136 860 333509014 154 694726897 591 150905057 592 616103552 406 780688787 717 245986062 190 724437148 411 703674743 540 960380171 500 952396200 227 620880370 427 86313897 551 176482815 642 150510401 203 551803637 996 810214290 470 702725481 833 540948139 901 30251102 744 393531055 350 692149860 718 231835380 622 202518439 113 135701768 35 538216728 668 255278106 313 489805616 711 632261883 474 230950587 978 212895334 682 864562099 275 901142138 23 773730037 721 236940007 530 641929129 383 271947614 505 306534933 575 951679050 248 574916714 681 232200572 228 155307864 918 123056769 747 443629881 509 274166082 948 254802841 255 177381132 307 751303389 507 44412296 519 877432292 829 425744841 472 489023760 762 568195248 946 600054052 489 99007920 45 917365879 939 641061962 467 464061558 856 854626156 215 838099500 373 277935919 112 29406928 733 228945061 48 227414074 586 757863192 563 426526583 700 925782951 312 428226370 913 162516303 318 427562117 186 95787680 3 960604489 317 148883445 878 957983477 683 240091338 483 184708810 975 738372876 40 561512140 250 463616380 24 182748001 925 549052089 755 659452181 302 788575697 218 10708640 800 971621696 712 165308426 108 881863489 688 127182651 883 870019450 940 351401184 659 522917614 64 281453190 926 489488500 915 683989241 186 230118027 312 859092646 450 269927346 557 959560057 384 850660101 933 7205582 110 915565569 747 755278060 92 379297587 782 391908078 436 842796947 500 454795141 242 621671451 474 938030965 171 479406652 594 310528068 460 467094441 558 865557327 383 731167693 60 775315244 135 326171919 71 235934925 64 653091347 468 551245361 990 538167685 48 631730767 650 881831784 464 253868103 449 481978986 885 94472112 609 78163956 79 858373119 715 420003975 966 158597245 469 958808705 427 13733235 115 695875400 785 461832123 321 836591947 679 814653774 348 127904711 782 723774068 397 316941529 500 699438442 987 532675747 414 788610887 472 467412114 415 745006213 588 754321217 331 796403558 3 888271773 82 149043465 982 767144195 984 461624083 573 2463610 427 664744776 889 212309434 718 497226732 90 267996308 56 506361764 315 613098232 619 177685008 799 476475371 952 818846423 925 580420847 85 243475634 494 86226260 862 885545438 295 121861859 502 101397865 620 315794558 155 720184546 150 114483035 744 641816912 565 730283176 58 162732503 494 30431465 383 498592346 457 990962278 572 263709431 713 502021775 27 557889479 576 301471418 196 310536656 43 91800130 529 65400375 461 242867137 218 834207655 434 793971608 508 200308515 46 246071589 958 687481964 34 222743613 840 833724557 788 784992065 664 613815900 621 233540302 274 400246520 719 785876436 470 758875596 977 155986464 465 828192200 528 16386542 840 620070148 5 555793320 844 248862643 971 840275329 821 991705619 633 131855945 422 973659838 913 703446893 199 162421046 918 352891864 929 157180804 922 577457213 773 522713743 799 889025205 575 454250868 356 274519549 71 282865470 349 452424229 906 118053582 322 167529751 644 207531696 800 726816844 360 90601285 915 845217454 700 242610334 934 558249255 577 612928468 515 168881250 222 10685838 918 694388409 610 134024635 468 901781015 334 289973486 17 86754162 735 371887697 664 110911894 573 110289753 377 406178495 661 169338899 90 340387462 202 232629428 23 500021580 303 432004185 432 702545184 677 719645657 52 607210417 647 292832040 307 319863124 653 620929214 678 356850646 355 792336440 939 680743049 840 334351207 944 723359140 924 748301369 583 383956438 412 83980718 775 839501436 275 293304335 246 846876557 614 58833307 478 211519911 759 524452728 263 655339077 529 374784177 933 6697824 3 299861380 568 949672632 388 642518871 722 553340286 764 88588177 224 596087707 245 751464713 212 366031747 486 46505050 531 437359661 522 383015789 48 737756319 792 963716479 571 741401901 473 540579801 535 412114636 379 10853547 533 488183550 932 621700973 494 310888103 480 43812140 189 148520341 679 791224503 790 112464068 187 19671970 276 276830778 776 197402546 285 264242204 42 426759891 902 139513135 431 750862219 325 476745549 841 291627502 541 890091205 934 177509954 326 563647085 0 95173668 231 896580864 703 189399097 742 239004054 751 165458623 111 296486306 442 794276721 777 44892826 529 641388472 229 484866726 49 97170314 311 554561755 258 840717166 741 643907260 298 744660133 202 44484835 343 203668469 580 76487217 39 542137020 410 649605176 478 566172048 375 541794189 456 325334260 283 473506396 959 466056125 569 777352780 748 29193727 14 554329626 40 402155549 996 636608917 261 93772615 559 461376792 121 135034410 430 298624213 152 171521835 554 65126096 537 476317532 124 831480117 306 557864268 921 781845131 79 620017372 924 453134440 863 753037903 53 752797877 556 90105415 779 745766369 359 903602625 497 107776306 949 294585118 844 373878425 650 14776636 182 127781081 600 48449221 490 294911347 128 915478292 582 480417120 544 694406144 71 302603116 430 481631941 98 143489082 34 868944852 83 784530408 421 739110564 863 936886879 285 199443286 202 668014966 548 441273800 672 75471525 889 537938395 194 180666830 73 493374787 473 408263722 59 346201576 557 981415048 150 990999078 919 604222204 87 509337527 622 564804492 802 145751669 44 307613113 68 796144526 901 878393098 589 403863527 84 472556471 461 69230382 209 764610760 202 550242035 351 333905996 760 566759950 239 694971123 501 851735623 632 211726580 948 829517980 267 431119075 319 478583164 688 226247062 56 170034839 577 162167680 291 553240125 699 150551126 72 697999287 353 650839140 350 938301598 690 777113596 772 516752683 248 396970533 685 895107456 746 235338504 764 732493732 188 661350822 4 975699576 392 242137507 889 959997004 644 42884022 293 32276715 466 952547311 270 435100440 803 601312615 294 935098398 287 153009832 67 310911731 634 761661638 927 167489736 57 366042530 389 769996119 951 274077228 465 645849668 375 573103786 688 893954905 972 300785954 570 310799619 994 113997907 179 483013807 621 696519140 687 489130697 285 652525796 763 838351516 208 474527198 336 881548709 881 858674557 618 101819966 892 912581478 104 709962926 411 719240071 520 597710587 179 175829325 706 992439764 280 443218241 753 710232361 825 967743440 756 937856984 2 694663021 386 995925579 169 736284636 891 19594362 782 263011234 973 872105884 987 872785182 185 146059071 393 75704248 521 855221107 592 615221547 116 177704557 695 487938245 114 406599976 594 483932789 615 991719304 122 966936027 79 940777680 510 882090075 407 748596970 551 735610773 433 275914414 801 817115450 104 67450128 208 302677086 756 415069272 55 488930810 318 806782105 213 363725813 313 299228062 669 234438364 347 607307640 84 242958203 169 613535450 427 661739642 103 369567681 7 199912389 86 563954560 830 572890822 326 974842727 779 92912246 470 517616361 794 427861186 25 514512573 201 161682821 226 875706565 471 616456639 378 207423195 361 693395484 344 657576066 276 685556952 402 294076139 120 766945844 736 740117832 414 288791201 785 23946816 77 694058683 750 222599277 226 828276272 831 205490454 209 483083244 824 214901606 22 343162465 353 68948399 872 926197448 807 507887995 536 322210220 382 31908991 447 243186686 927 273510018 102 298776417 945 698028336 758 889887712 41 871804298 832 698495526 932 143715168 742 702688861 636 88758210 408 700967920 118 831272117 963 394359013 129 826181941 331 117202794 988 548627357 417 51250542 719 898849439 690 797872869 839 894632211 1000 546437954 335 512467180 505 954312421 727 348650266 526 731462643 142 103848331 145 892781211 413 414730187 630 278015174 244 39237405 967 202110895 162 905916243 864 597701337 996 521769004 992 750194944 56 60792198 859 632685221 502 286546056 78 205408483 513 411953126 28 953949377 728 503994075 972 753372088 805 81912680 920 45963196 139 311997369 710 468735440 901 191829730 657 106611360 517 528625685 125 80491856 993 168771716 787 631289165 758 849748906 372 375115817 161 613396841 37 705591010 192 410407055 796 525415639 993 476009094 757 116974381 279 770785787 708 221805105 147 426277562 119 965187870 621 432972615 463 278957991 980 637445597 664 888903328 316 329254993 764 84310030 752 316100343 629 182439345 55 958190684 549 641697041 346 430208436 957 180224488 618 669766066 186 77357374 523 22101701 444 233352523 745 968650037 994 243743063 705 539894699 343 504252069 167 432742601 676 351822057 682 195563881 93 93251616 471 802711702 656 53613178 337 50965264 422 764235512 762 393705612 535 962018240 144 458605971 311 194044039 167 359873571 951 490129623 647 27816820 130 189077112 512 889410832 793 913641008 124 395201647 867 105220428 937 556863920 733 118727278 91 374665130 491 5808018 725 815672953 832 59210499 566 797208976 66 942533852 658 897411693 598 240793542 457 512991804 816 383857817 680 705366862 818 365665191 371 726108103 576 13902487 181 666009703 285 247752465 558 2780233 962 516145148 517 549712801 322 895711102 673 225099689 748 998139790 244 199310128 761 712365440 47 683032212 669 805287850 188 923194558 490 543412981 55 34871254 107 979109197 220 31979729 652 63863854 836 197091534 525 704214970 312 112269765 584 849283363 102 889183501 990 505620167 87 336448550 213 614709535 242 324236481 807 466201609 117 685246193 655 849420987 287 160625100 814 907823311 751 200352903 178 468320315 959 52228720 818 891715881 317 162700637 254 883900736 765 850984042 244 560533427 137 613613211 377 858323672 292 687947606 979 421914164 16 217668764 4 907223291 863 841584130 378 547838110 632 621440551 941 758146894 362 523884219 366 750384819 509 925705384 683 163196965 196 508821654 316 177798831 645 19762105 483 120147679 773 245363893 580 400348690 841 211996770 643 694187247 552 449648312 142 165706101 25 947663091 945 613916030 388 922766781 945 106364883 567 681126894 642 403675688 916 88126496 800 600981849 89 993700522 330 320944840 259 666086415 620 65833252 844 515240889 191 109427135 494 809919836 299 522660394 108 660411060 662 344467757 351 702072759 249 421826879 690 644684845 228 515734852 404 941561514 667 102408402 510 597144196 819 699623587 574 837910804 940 61567390 914 741334762 489 937217762 380 295105917 147 969246907 139 590449123 933 442226142 900 88052975 81 187467935 516 753671564 619 387565843 755 705304471 71 648050807 404 628916758 409 778896250 666 488164843 393 551673153 564 474673043 700 460903387 829 672544657 789 995573121 10 906031496 139 943325975 260 484588141 899 159920137 730 435579011 31 446982965 989 142678599 92 895119675 454 188931227 894 195912234 805 270445580 91 778566386 310 877793964 412 62529251 99 556668721 111 154189323 473 16303552 584 698680390 395 605409832 864 100829321 572 117169366 272 380777509 204 936632361 999 820148908 93 387685036 292 627091894 342 420564200 402 874191472 203 380572453 155 667458887 332 559590981 238 197422042 233 714424786 710 683809454 494 686784114 563 768315275 193 2555903 973 843659313 34 126351095 786 967700792 171 826920118 243 863532720 931 161565265 933 792805290 412 726450509 934 832639797 336 976750004 518 107397339 898 799266480 347 377221764 755 86334233 263 585650823 528 262780011 780 948693428 53 381837245 504 852645698 709 50666609 500 231426252 9 653131801 245 194331850 306 198630959 120 818778663 312 912203568 802 593259432 724 247003272 828 449034077 549 938144311 728 774751880 327 496529279 526 34845556 58 507656329 163 932279105 477 954867364 36 982467002 830 319392618 796 336096955 213 806743988 573 933390091 611 757681556 529 948955193 430 910792205 441 247379815 441 746462814 878 548448547 857 231375775 251 59400003 161 415874430 362 180853663 547 549671950 779 6506721 496 789613579 304 678951834 279 839086444 18 287271443 298 184153545 924 304547044 289 761930541 176 396067684 63 323325108 372 421846205 951 719607049 837 579732086 482 155252455 122 606335672 718 15556783 813 928395607 883 889636926 465 599138011 535 148747252 751 489608645 856 218993371 127 563424098 13 583734266 844 411624086 277 482768045 82 239778558 570 234693355 75 548584656 100 488086658 728 287208816 571 240233144 59 568025697 462 790371867 590 66062707 96 250035012 561 364708747 647 584872524 348 651865628 592 825083409 186 148454163 579 444243377 597 715952520 216 359787350 500 576366794 418 161102068 381 603461956 57 818833804 805 850845629 762 386193301 224 672907060 208 762603997 997 570531680 352 182029110 754 466694792 35 356649452 749 201138121 108 471647015 53 299293634 914 38510280 794 752625354 151 214310702 497 864595861 990 458877426 187 504665457 259 899889600 620 995717221 128 4580557 624 521187039 76 87520769 585 149852622 758 919732953 775 789969653 701 726091313 816 181040955 898 926872642 435 608559427 906 963721596 383 452310662 867 740662675 181 719646745 68 47940030 99 84792683 585 888370117 541 513861540 445 467311596 163 715069845 225 751070237 621 484017003 776 97026845 982 384982516 186 308768242 169 193046604 770 778735070 693 791756794 309 428848482 691 919187946 110 724567231 842 94318151 201 117439933 756 322767409 202 872456788 522 365203838 344 7221519 711 47996596 308 234158799 197 918179443 662 208060427 479 424990210 494 236646560 471 273177054 972 11055016 618 945778230 943 524901897 609 687630707 179 246126853 417 564650932 290 981480450 282 476471454 39 716334556 941 650164111 277 605147898 471 681018394 836 568249366 754 141678176 440 821193516 748 779147649 870 579871153 628 208436300 282 458574112 636 403500732 459 597294269 134 142765692 967 675740464 570 818509824 467 924049250 758 131809438 556 546059397 555 759427460 146 55733654 567 217582066 987 613366060 391 188204165 661 359147980 924 304946847 514 307724063 182 884110061 105 374177089 889 357982668 542 499102852 942 182042816 715 620060867 497 206196285 329 244184020 69 752245204 180 248987126 62 78240884 164 245386641 765 978364023 260 529307754 312 546026736 448 404779066 383 362644861 116 182637823 140 420890897 457 63280835 498 339352908 973 892773826 822 672535952 733 283926253 814 333617199 249 16757713 801 980895977 461 619848149 616 344128742 632 772372885 306 815425559 945 924725654 835 390759073 319 38741764 168 226238281 55 881027682 299 946323825 743 468804947 558 124369271 557 585474271 492 938050430 587 952488109 329 150293051 50 311837294 733 267131171 37 138331945 695 709329631 836 416454411 22 889057031 655 547306649 279 594365147 655 905193607 7 767438306 1000 649147666 71 959542209 373 490445879 226 262506622 713 983652604 661 41966266 759 717731409 83 664775067 904 211606256 894 832102650 118 449120921 721 237582808 272 109992901 82 17112304 213 99229343 799 990801371 83 754198074 579 768781551 494 528728842 816 768476882 893 487298307 393 791284783 951 301898853 313 350937096 447 449591790 447 327944075 712 435775229 810 68754413 824 414096008 919 79492308 692 287540757 957 81034264 93 880417376 712 616755383 763 733274014 206 246281555 241 405086930 949 682624716 662 371888880 863 193906818 192 64490210 795 153016372 809 304958420 564 910378143 863 677683217 919 500655117 967 884373599 830 680946411 518 362632088 917 912139938 906 381264039 19 420870448 913 644221804 20 989886727 5 959549171 539 615895222 483 630862489 374 241944393 0 366254192 604 46556206 829 753390968 378 631211011 442 902070027 832 696255632 526 186374251 933 619185954 705 620855382 705 338580390 257 222440290 775 700751007 896 86077177 243 76641903 53 765145598 451 240083516 439 743614351 932 358769152 877 493881254 876 174531897 199 957553631 410 814448750 96 491366969 373 519441524 564 363319271 185 408838495 661 44755414 541 318243885 714 766407328 376 821178727 150 528305425 332 186545287 845 485047244 907 12448056 751 394797168 956 484518531 881 632132346 211 187301496 621 919021289 35 285874709 752 448696290 989 371385446 488 349401556 731 21142258 263 92669702 487 555529457 675 427636942 609 279183344 531 395324895 339 14787085 687 937330341 38 165194615 701 102425597 652 858895808 96 702212912 570 591649648 999 556381003 731 891751537 318 230804861 161 187133581 117 338348541 94 564446975 807 350888908 545 930999464 64 222479102 5 440489030 513 517914190 589 458602014 170 515641726 867 849789470 56 97726712 952 404529695 472 984629381 885 775532579 247 251193821 195 733288782 842 688410055 941 360617243 83 71830435 991 476198840 939 59780634 381 530791687 680 927610552 30 323314624 354 442507497 954 543671204 721 18954808 876 300402164 775 893905389 373 935845534 430 326342761 67 115268936 114 584051769 881 394748275 501 251246036 294 882869427 332 425044624 800 329933354 91 874546321 412 945199172 247 18760200 480 2864668 665 419003030 513 972080595 883 234431307 190 67684705 175 407935911 250 946038913 724 104497242 978 683763467 737 549514893 701 147148554 281 201176177 725 739878959 51 299959851 394 99763764 787 475485827 527 305696065 24 781767265 573 942483537 955 121427168 893 281487516 683 619588789 539 471661171 97 877669921 747 308005218 281 255444256 816 724113064 916 84941048 111 961306197 61 272552098 596 861346075 572 938467069 878 394765985 272 217894996 76 196735908 378 694755796 567 756851730 744 67399990 109 628916373 579 24699819 990 676495484 498 612601350 283 50623117 193 326368287 531 916892848 411 883338178 46 947233854 632 399649475 361 274605892 3 219953008 900 914847920 957 833639256 623 483395578 560 789159252 569 713751000 914 727226338 589 771269611 865 103883930 320 858503708 249 340123478 813 519920683 211 124498514 163 30468212 984 240047419 238 112655337 655 465911819 64 626368523 237 320530637 233 788246608 392 251710700 576 951766113 657 669825890 11 154919622 354 984833759 340 256095194 869 541846264 201 802512170 761 576144439 658 776366378 966 191181997 887 213114556 472 325721370 28 620810647 215 164230345 247 293792452 390 479815095 210 368919053 681 892628638 744 48361361 384 420500247 810 667394977 913 455261633 228 221608267 185 669254438 1000 308879054 563 215234284 652 372571019 370 198921045 837 34747807 591 175891400 944 110863483 434 984118512 678 382425363 75 31975321 928 795923368 131 603586083 231 242783709 168 190991354 780 25917206 286 365387375 411 860773762 990 384824801 745 789756590 905 701224048 519 50146649 684 317042955 68 267343455 238 973299791 760 212292588 817 96561824 382 248831324 131 62605296 301 601041829 966 11704290 645 875938250 162 679706709 294 804035219 868 498781480 583 495666870 728 4933502 826 158171228 114 578401609 995 770129164 456 553937753 411 781558486 584 21295846 257 423249948 209 846309862 22 352588096 705 881923957 401 666418589 366 357617834 857 618443860 573 91833101 378 734166766 52 141757585 259 126889450 48 187693386 513 193429599 641 985421777 747 215233414 137 404976238 918 123009296 536 384975225 252 790581918 979 53891670 116 893333789 751 977097448 379 440948776 506 934697888 624 546626618 136 159590616 578 729883013 22 161116349 236 593258812 111 193419164 476 428802824 789 447124139 31 984080686 929 723243204 668 410136382 712 420437168 981 420279209 158 923779964 842 975928866 480 594910274 874 889359087 615 434963229 985 446541561 152 835038714 233 733573178 390 372454835 715 191380653 69 231170763 892 352085354 311 127741632 165 719191366 702 224340259 782 61460016 343 140325750 625 576135232 409 122254499 43 209376062 870 940084718 955 940020864 407 191954079 503 389696615 428 50543237 33 198164025 335 957499543 120 402978121 55 669965286 742 819643672 345 692746109 181 439477678 604 60083653 312 145054667 660 741356116 928 634905974 509 637205701 112 475400666 79 637386724 13 24243271 310 124029961 691 646839727 136 391178215 329 641192968 702 133201873 937 55525561 652 393683718 533 949419656 979 521011475 560 580710549 28 554971427 690 775736283 540 345795992 461 116373162 855 116687101 269 659982542 56 264964245 197 861530781 833 686095599 387 653520643 161 758645903 881 982274281 714 843189076 322 965883942 654 606854375 95 871401751 122 41916770 134 555850694 495 534327657 752 34090861 866 629501605 262 154497190 495 772547799 349 273806318 982 123918450 444 781437122 822 815063322 960 887277135 229 507034100 79 18026285 308 256629134 418 48479724 789 214475277 481 913390055 807 427265358 121 82535092 577 484943077 903 986555950 399 462657326 732 541299362 77 688524557 870 714405559 894 398795514 516 782151587 290 554321959 599 816690888 651 775738754 974 636587114 386 44664236 776 687983211 813 387293183 54 249770600 714 466686995 892 135457434 930 655089841 623 579638416 676 10569109 629 769835996 893 690497506 54 102932623 635 41163249 224 628140083 220 133783364 885 412460628 488 72984263 581 148701769 711 48049990 675 972931551 591 925848085 894 845870386 278 473216586 565 373410022 874 627480917 857 600104390 45 575418085 474 387672721 786 195880163 586 103950737 705 793060065 391 99648787 841 513488613 354 674228131 228 87205039 962 527452600 110 962525405 563 605122547 858 178996914 232 16779843 576 44063883 761 787253483 645 603309545 391 117761170 902 118644980 388 444848891 241 276515597 970 633130347 614 583112213 363 190804277 267 797253929 995 788902678 141 713468224 666 619611718 469 602826382 673 830666217 559 686257367 622 587472480 262 786804266 429 300479580 967 575899093 966 180471561 625 60891220 773 899350694 859 474378309 990 759975553 128 904647784 40 175923987 800 797692127 710 448339939 79 265583289 940 935931198 580 265720680 467 652389294 923 90515860 261 271270667 692 812021124 18 87087452 887 15598560 662 836160026 962 962816412 744 281936262 448 168391697 594 781492115 706 259398246 208 33830788 559 709237524 622 615112912 217 632148357 735 383109661 977 762155822 369 192458077 226 76524868 608 307410003 524 397218661 395 147721039 452 717949464 755 979241669 676 242839210 162 750619182 242 83154195 277 743290671 916 329990640 538 761191240 348 964230038 135 171875307 978 1449248 401 709235519 608 72221451 382 984855410 556 689554554 991 805900641 201 526646232 934 762675545 56 689707259 72 631780087 351 267111088 606 87208063 576 920485195 653 163299043 657 448198193 661 884514142 294 63601393 133 16014417 762 491650251 833 241437900 61 81939283 853 463822298 607 111788162 74 28919156 380 280262135 761 694499990 748 387802297 425 185420022 362 651189729 963 627547188 190 483849625 308 917899698 172 211180412 869 454183148 644 368815198 573 131233712 919 203809268 882 837116053 165 902672322 305 509430294 598 514834106 741 366504755 906 963360704 121 910270087 999 284487814 337 436699047 241 368634682 779 835915225 265 136755926 278 444145988 23 705082453 319 337303136 559 838350395 677 149264342 518 582182079 940 307398191 626 493120734 640 72388021 525 823903517 833 664237599 576 139868080 846 868973517 139 799954044 5 148460482 410 763532444 583 256458269 591 38262124 964 688222658 654 254276932 417 299371915 802 177574293 323 113305238 730 733413270 5 585766889 630 42550269 977 718823185 901 534920313 423 146232967 78 58187854 942 313489895 270 571481038 625 922473438 837 728349854 748 933679178 697 263811344 817 704584831 361 936417809 289 259449138 851 982051510 700 879258908 136 394792723 959 82788024 852 78526279 318 504678589 741 677015004 845 293790 41 827044353 303 655172848 475 565283610 251 871721631 494 706675201 170 64370134 35 891050237 480 358239764 459 342444858 311 26848397 887 425648515 32 747666824 102 661382538 609 971441837 869 81217066 964 774329475 35 789353794 718 606060547 632 31417879 418 420962666 652 808253071 946 527047797 138 429050453 481 361689477 590 105355574 307 680005711 702 664869528 974 610020578 378 440236307 474 760152369 84 782875363 101 348258114 292 236269902 621 811901579 161 667510932 47 206827939 992 165558291 985 956307399 964 35915639 727 632601882 235 938361415 352 80835250 185 433068763 67 735001032 854 818411961 607 168603794 870 691124194 424 427503410 830 144433937 174 61416431 267 578284078 312 843541277 202 347283193 539 912858231 594 241301911 768 987208574 305 691188575 994 577449985 569 154318046 573 865604217 301 6720060 752 409018900 976 677937793 919 944960197 64 767433445 895 750992629 565 169792007 911 459882368 642 949093337 742 553945764 623 292574900 503 512859732 394 499116534 394 817405083 745 529511317 175 961139542 890 375430475 786 230828770 625 543147928 717 90363372 683 282648142 16 823098945 560 265781694 195 155981881 260 531851707 670 830710509 215 168405266 487 500246145 415 342756848 575 750995395 601 961856685 965 218965210 677 876858927 977 232048830 314 21032861 75 170071573 27 204762608 777 32630091 505 547860154 222 597577053 496 455391027 788 100713028 908 740591097 245 715626805 811 252466384 196 700213023 240 490749458 641 118074413 158 576924064 14 21717544 47 648361631 111 270736243 705 380254756 871 326624048 710 336418624 369 63437653 149 846257763 467 750353021 477 240862276 761 123993487 866 346923439 0 348267204 619 960542863 817 515593377 688 838124909 295 45379088 526 7036437 231 24381532 270 554298893 828 904097041 829 983633048 37 826708721 615 43949752 974 859353066 860 264085114 935 732781152 759 907584054 420 225480911 559 346552761 291 959691178 39 277779 362 639290167 359 5889287 436 259693533 25 520217566 200 505549927 188 362179569 179 786123967 150 479714933 931 305826574 253 961028710 165 104830796 695 465467705 953 307125431 811 638337570 29 740418196 843 189280073 245 194783744 577 502926794 34 34660552 679 975747865 9 445449712 226 571376442 796 503625312 429 350103605 768 454659510 271 38511296 396 521229379 867 817000078 663 577097022 672 802129723 192 742997356 243 380380773 967 378866371 244 853070248 219 767035855 130 104282540 284 652726860 250 440729512 280 909763564 677 392089086 468 529518006 187 670416300 813 259597284 154 221365864 679 727253510 980 655556673 648 697616417 406 85910649 478 713593508 129 703567646 624 864043020 499 725853271 596 988042090 379 976681156 120 933909887 905 487557022 733 252950533 927 56446871 11 759128718 777 265611684 763 914305835 306 549342899 902 990370734 939 884213306 605 489844188 528 635411203 849 282861645 647 479369276 903 618835931 219 148063106 834 781502344 155 978222325 872 49091956 287 978742232 877 613426180 558 541757066 684 641950093 946 280309566 704 201548828 198 513079946 598 112089411 391 894581663 679 925141886 206 670451794 835 437682638 652 990291361 386 63172559 341 79926525 272 247189029 703 379909292 770 409640774 133 59625471 386 468504041 145 549571565 554 41840602 995 945011189 312 62225857 328 591050321 921 946089081 829 737904155 992 980874590 189 951618896 944 429461776 877 705203302 860 194456637 680 216217149 312 127312259 962 732356141 323 71399130 917 110110731 445 410985291 389 889247517 33 649112048 625 190700292 590 660788193 986 424418086 710 553337279 220 821895905 652 243196985 403 954326854 622 698815045 742 427643867 490 14199347 16 28301898 247 289636737 254 462692078 282 988723699 134 628626887 841 643264161 665 335155760 662 902340553 853 778738531 646 534970328 948 229747017 25 907207257 821 939334922 284 417800187 32 365911099 729 246765284 418 468299704 521 945696037 632 246798516 200 200488897 775 837227660 278 20079705 700 109399812 186 113487062 397 798610492 993 100202203 909 809169266 717 700603022 1 431190529 412 473225935 722 996161362 954 698461018 516 326948790 111 275559089 787 70871593 913 758591157 338 798964059 184 963926932 815 671266967 836 168472213 831 17383243 290 699939825 694 329392606 232 213083225 238 534213979 396 411081623 659 141459750 236 612869861 494 313472426 184 62006399 867 817309733 426 188074498 15 960486758 766 513362771 845 970400759 339 14559845 787 439194892 271 724549679 497 655119682 607 638531082 573 770921174 645 569271362 188 773997347 81 748213392 155 893800752 724 860332951 642 471061650 513 169338719 820 323005804 972 659617412 35 957187429 140 744871826 989 342601760 671 819053006 428 75603706 64 984798322 628 352143930 743 940933777 400 332514053 665 603293490 108 328024469 796 349053334 71 344500393 795 118916638 53 338253129 965 380079320 548 743439386 411 349936899 730 794104046 754 601635422 356 573334179 949 420974824 482 847076870 535 811878578 4 85658203 365 686825936 896 4283171 182 197933084 505 314069127 46 850743994 155 260604287 350 785466962 250 69725501 888 246784403 395 849278865 764 163003028 336 44848349 81 144729147 247 320456520 932 443150255 704 116663718 883 207169224 392 435120092 950 962925332 292 113332253 566 753811320 803 228267706 142 742737718 124 76946553 702 332371166 453 275293924 391 288500401 61 44438426 862 114168982 789 623077047 209 960795482 841 707458119 945 761176876 102 729869534 946 558669495 46 293754098 162 655517253 394 960186554 571 516365956 352 737797048 235 575564339 367 92665406 687 738770395 452 131562048 122 709915708 444 776411473 421 446082570 912 46084959 418 128349330 24 360980512 425 505215471 515 530874256 93 318700670 867 856338242 176 221151582 758 753107815 520 686424283 243 317633604 114 968158023 292 236042404 522 409387716 258 964417904 531 205093311 792 661858189 802 125184007 256 118659273 646 345150709 351 386447962 929 179711029 903 465081139 622 290165221 2 573944950 336 230725625 168 438505608 853 24956722 134 549252192 917 293388734 415 671530927 882 825044446 629 520123252 684 480456150 28 447861822 894 728924276 475 784166874 331 656138296 30 382928642 62 286155144 491 227440159 518 813197222 675 986885280 322 295765053 585 346607024 81 461375370 785 855511763 611 900272676 388 834002993 137 582772225 374 131456011 786 108978562 687 968499671 716 911265112 940 291413208 752 661167298 374 373539087 143 995718275 424 478614525 314 856896326 998 502189785 270 712185837 429 733033908 799 248601105 349 783114263 675 497550233 137 221631023 228 622790781 593 752620718 186 488867153 761 789138090 42 440638024 968 659038228 295 840974271 794 12323669 141 905278484 652 402758575 291 997780372 576 517372796 357 401718477 221 508738257 224 168735650 470 292928892 395 991651947 755 444593855 440 340441667 680 647798832 456 265662249 850 534344308 358 548158044 632 348704195 867 406811261 608 967289382 652 931751183 468 156222586 841 906322526 579 72841896 955 414372801 914 837248787 425 410528749 964 432824489 90 615890706 68 48314576 422 731067793 450 539852440 124 291728701 182 768793833 583 794910663 553 560849740 579 653065946 815 289688636 774 212317772 947 397468550 5 453711822 931 84919142 256 597507072 448 287290712 414 996578537 362 874777704 150 664379173 468 627740871 791 237980402 345 461574528 769 669649312 621 897056248 674 738754787 468 977222251 99 446340638 982 235808625 298 939271504 975 496946269 727 623695826 148 597418133 960 176422108 312 936220436 9 23609496 88 388192796 776 810910711 260 198298064 518 361097624 768 653778609 551 97206892 174 350234347 428 821595116 604 765757163 432 921022030 378 108601790 677 479389004 310 549241524 191 253323471 998 129371103 524 807047937 921 973125330 860 228441419 870 454359543 698 544837064 424 67423634 261 402053558 439 299990609 174 107139930 734 504294947 983 104019376 814 359135445 14 605553957 194 882201384 485 947648195 847 487572616 156 194207899 147 48584057 491 203650122 836 504443137 709 733223507 844 766957123 669 360082741 787 199644087 697 252053436 613 660777998 889 879114182 151 59409421 841 246010201 764 724268564 520 263917607 629 381040233 507 405866414 344 378929777 630 698866057 948 298287325 990 936177658 332 408881188 206 691568580 369 886643308 101 817789468 926 983640476 154 372875036 676 640348339 343 956123269 99 182824536 737 743806717 304 310723259 950 153572305 784 285548453 254 118050934 516 867633659 178 103997972 186 929877873 14 988848205 196 877327788 824 431588682 341 88626715 856 657275108 42 429379137 299 334234450 22 956536766 482 103663259 647 125286406 694 712565268 736 901069195 309 328790539 96 55081750 560 380688393 677 515990866 129 576523356 588 461534005 279 736618288 646 47403377 109 934589399 640 584654800 73 924485067 805 949936878 584 135154261 516 38308081 811 245196097 37 771084640 815 971751223 753 762741076 721 807122236 548 169141258 11 41931651 386 990795756 358 463982161 523 581357122 265 891253834 998 696119085 126 434438960 520 509399257 610 958169897 578 563156617 209 881227682 685 340982371 755 254388463 589 562621327 551 575021009 358 621388256 478 750579209 262 872695134 868 997925407 975 939238064 489 916304317 291 676014797 109 760802729 71 114143866 222 112737321 363 305496780 641 252687301 633 60563962 492 838031066 265 490405278 905 464061591 141 580583118 595 325243577 28 270434085 649 98329619 954 144470766 636 830709709 353 348738973 165 38483148 257 325084976 695 521569723 201 541424898 542 767396570 830 410741144 419 359198115 901 605659644 654 669261967 117 680641777 440 196147218 987 193237802 641 255643148 50 555310397 191 72286133 83 48847561 384 315022548 134 79144608 144 936384033 463 450642245 852 487751109 925 690008332 547 716968896 675 853888643 650 474064763 680 543195551 152 491623231 299 818621571 113 170153253 794 813966174 514 648554091 546 495164424 768 756155248 652 378899220 720 374741032 830 14506099 116 203786981 227 811349126 727 501234505 947 485024102 755 327618196 859 931635131 504 641984028 452 39198302 34 981503191 286 525625088 456 562401011 978 686186957 199 65275010 595 929337 64 925211066 362 724914493 116 518759843 259 876912353 481 768572533 184 26977904 118 616764804 3 570156798 236 334112110 553 867714003 567 971429908 804 624241564 123 60809450 146 840543059 370 778850928 524 568357759 149 852581246 861 913142138 74 478292742 384 2462270 66 364068863 121 362617268 988 874590256 755 257034901 732 559068916 518 247819902 589 924208654 661 256581703 953 829503151 540 168225543 304 792496176 635 859008574 329 735481953 608 163466261 836 976910047 890 630572130 296 611123126 670 52980781 62 109767704 778 776773856 891 80349234 650 951618964 352 74543816 892 291880543 644 755623840 141 70760342 988 289917157 1000 801367858 828 76763471 423 193935260 687 848953559 379 952397659 180 126466031 244 384604173 630 243892583 679 581414074 722 624729281 819 502370874 76 433950632 769 858927745 48 882480097 339 776906295 566 370375680 445 572119908 141 244343933 256 630027990 481 628827686 146 267403725 919 581032336 4 178486492 820 108337123 88 999572763 338 271701713 702 518032778 777 528465281 293 160159913 425 932561159 367 480845846 19 464295408 641 169903558 100 34157130 865 743356912 865 806747503 685 198062643 550 420153925 281 639483098 48 533650153 720 744383622 582 40690244 676 855956474 262 196787837 947 217186734 908 764811776 853 604842614 685 995612633 334 216376666 184 172430749 306 778259204 870 326255963 814 561799175 712 188981393 64 813908437 285 608141922 619 408194862 569 296630531 64 735654653 883 276367393 904 754215150 874 405920423 587 324259035 162 152864467 73 380027155 171 431997812 835 17434542 16 600618863 49 639788872 922 787558873 641 101004273 219 938288089 432 429993243 261 85193032 831 662796152 392 634228632 93 868368638 769 436171229 505 99429057 647 59978894 94 516418371 495 969161089 205 438334548 101 211958259 99 569141044 750 860535049 135 707647328 289 456055546 578 166102918 860 815562997 904 809409325 158 630590765 155 345242014 971 175982977 614 820896835 193 398848977 910 684254012 868 947988894 609 627727460 589 84847485 437 714463606 981 405742150 651 918055244 94 340852099 858 51645892 760 856221773 701 769994847 849 263677690 475 156194777 53 248359665 27 993140331 130 765946590 88 398107243 814 74249650 647 816992090 17 939725678 495 634607022 262 648089107 507 600863369 855 53152324 685 132317487 924 768269344 810 191589823 640 121888397 816 581823131 4 94355291 962 964999722 973 675321049 172 634104573 893 32781312 498 556074842 562 283705050 896 366379099 862 510504270 601 632111315 876 180411999 493 982040628 523 72577770 939 119652609 136 255667225 99 989202409 272 975601099 996 465595593 648 12141322 190 535440732 11 660428268 89 345486468 283 254256504 808 390922719 72 475787651 60 434550949 723 930936965 803 105307332 22 81466391 211 843422119 74 408576060 839 948137099 956 783913689 327 781485261 899 941304276 253 450515800 829 575104877 515 226262818 757 895625856 182 138562451 799 557407411 468 377174541 40 740691731 7 276513868 775 529880132 943 439343051 428 885667303 203 209960069 127 989842365 417 327239162 823 735759962 119 65952267 984 961378931 637 506292150 605 432276350 421 18056453 931 901296518 1000 856343579 935 8065245 696 170966239 386 708911999 66 595536123 79 522116551 66 376831115 376 929833267 188 868654310 506 159221775 754 933661282 850 700572405 31 189029473 137 881935404 571 654848414 695 200812291 712 522365809 552 133140132 731 929375761 956 120720218 844 67337336 656 160876487 10 875798104 789 481881721 61 552372928 701 744713592 890 29847968 821 972672662 6 100386247 877 494044068 332 436536896 494 12509081 299 658890756 242 754718209 775 731690779 45 420384832 329 311570270 99 869840691 111 136110703 50 987783394 967 177427236 788 475095838 120 431469918 821 841939354 654 269984419 279 31321806 184 295549352 647 158924728 706 179101770 637 892057542 12 841111824 504 168216714 835 59572460 142 379764046 514 317682341 686 852805625 754 796553447 279 318535662 646 355614836 592 613632668 799 979081723 614 726957976 3 156477005 76 638539687 351 961356005 837 143902610 305 118361464 945 667661845 165 7282437 274 991630481 729 332131332 495 256299235 984 479798947 452 188757899 117 691563005 588 960614741 400 737648452 335 474586485 215 869271996 345 652393833 73 563424845 51 190184641 116 362467941 223 619957823 553 148110839 617 236992904 950 837961619 276 794605877 929 788317527 766 723669183 706 702051964 833 576849465 30 785012925 657 126561170 873 346149530 584 514329358 872 717791307 633 397622469 202 736458531 488 656714106 492 278360767 141 825448800 733 415327009 244 409796646 478 381485556 838 222130430 970 312746870 497 747792108 57 543569573 834 949656917 155 304575138 998 34314103 31 53104546 904 461022004 194 894100510 115 302810579 469 128293705 714 195592885 964 857700474 495 432315655 599 36835889 574 787988959 937 234697785 391 840251984 344 210331893 423 36366786 685 952395269 940 674801668 439 141141829 641 128303398 289 974025916 614 356690294 239 697202965 794 315518807 910 295128669 735 992338867 771 376833911 293 232542155 799 381757630 898 108138868 976 272509016 367 578715015 530 21118976 34 635088390 834 383764274 167 707766288 102 552637854 974 893990280 26 134569077 602 626625414 134 790162004 107 618937651 182 244014371 64 511914827 540 35347054 994 931190665 768 792650270 1 81401248 935 169418629 385 386014153 931 519511766 30 421725959 925 2923448 754 25426271 255 283854670 636 590207052 944 431394500 449 908019311 730 92135460 18 810324518 227 323387359 925 944516492 254 603194617 823 760335056 531 190807026 234 623658663 104 128910580 844 564971740 813 535268368 880 822012353 491 188021764 759 325633822 528 690367912 510 971274478 577 186159869 498 576055958 632 970777860 336 272774265 100 340420982 141 141458980 843 695981200 352 286848357 442 16301742 679 847665735 231 677890281 950 602332531 75 335495552 711 513246138 984 784035086 992 510590274 745 216787967 524 487676252 243 556480182 733 505332294 873 627100276 407 848821929 921 223105490 748 631771033 716 978592805 54 203549928 993 78175095 518 47283209 328 23463567 847 113324074 384 807303261 272 355550006 329 284688214 280 467378773 466 423103841 905 912041045 616 800897688 267 610169401 110 470471717 830 603714465 782 669697677 270 422988065 729 905102420 558 697114946 807 40122571 199 638177627 512 614441596 394 895917887 488 225861545 918 746322299 942 548236907 604 236741575 773 897629389 311 828343424 182 844214037 297 451282062 396 627067003 97 170544706 267 850726803 342 537095858 127 836989966 789 911776715 194 529559905 340 253678507 408 611195121 982 722453824 124 329399464 375 688690986 392 748311268 735 315232519 496 292729385 255 951682232 606 719646294 590 904548373 802 495968053 884 970990593 389 976672751 306 911335553 353 550194376 870 110717358 479 280933148 383 471890239 551 563421143 592 169624331 142 826412236 437 934410118 927 901336590 29 10935290 144 957877179 181 185502165 633 730657283 862 93533529 992 775713674 330 573088306 315 220535944 121 524675796 299 453236206 673 626407947 57 224595013 543 916959359 919 498037611 0 532969562 943 935047635 521 361017998 945 190790507 388 330828552 199 645749948 309 894749394 173 837041982 777 108670495 74 615197407 607 28250259 942 830571303 90 815222351 727 313511775 656 590376112 508 787145061 651 259802223 539 565309559 739 472478684 478 101044117 426 214240095 717 787714523 739 41667865 775 687076130 158 599557347 302 194171534 53 600131112 870 161408092 372 903462250 858 473663419 44 537900971 529 701142750 80 437750262 518 525299310 451 800303567 356 7413077 718 663306014 450 10092755 786 238017054 708 797462334 827 919205559 422 170921310 404 46404074 645 813016988 112 5324041 715 910350701 186 898542887 353 4465740 255 784014764 531 190690930 914 726240363 325 859289353 417 21449625 376 565378283 954 584677479 89 89694813 859 487988526 302 911890226 419 684211626 728 273189616 773 72187705 500 745483145 57 688556989 109 87552463 1000 770292150 336 341062996 557 114849885 1 774323485 902 266607818 975 549249555 673 525600373 885 423819054 341 784861226 763 201712643 9 444713 250 623780014 389 175356825 309 357411892 405 713845170 808 346518928 951 29417701 498 670513949 925 133119227 218 624179730 41 405735954 125 670771649 701 899830330 39 735709048 432 641231282 577 76609850 428 386677593 128 682534138 437 105577932 978 921179218 86 715009240 583 828471654 637 82462730 263 846725315 306 152200145 128 206886896 719 379459367 392 130257388 787 483817364 502 839727281 406 387676205 226 336279703 701 788610428 141 123912949 105 634459777 568 547048579 442 197958626 174 217611771 116 23153950 700 551333099 405 631605909 424 64821822 224 955861604 569 543831309 792 377768133 579 345937265 0 699874460 192 319011450 561 573425602 889 359767097 864 187132103 925 262814772 763 260752433 841 308149507 693 839967514 437 856834892 737 663064550 238 651093109 29 620533290 650 511324267 890 882598208 73 256020315 947 883835841 642 42222193 978 342546009 3 985516631 354 839165943 512 256739761 166 527950453 890 746987883 491 91715730 573 777924539 636 841784463 90 46721388 19 146552084 87 916868589 320 744500274 209 679872710 730 658601073 268 952544812 2 191582619 540 542221095 497 960074494 272 604963709 842 922014327 762 875948009 535 209014545 683 650274920 885 380996388 954 930441273 519 753536264 852 944253735 572 572187826 549 271543875 897 379167580 553 265542124 915 922529711 895 785378458 719 135426954 384 996672840 209 676980749 311 291921105 885 501889361 491 25596513 483 236042023 152 293959274 679 643333978 265 468997678 287 890067827 562 665188664 81 730540242 340 611283025 888 742064146 420 521092318 617 9611231 290 197207907 793 242558697 639 381730188 188 450026073 159 744108740 685 404686786 387 284699475 847 461601420 18 825657212 39 315993665 167 715812813 36 193517980 27 540418653 465 812171578 190 323249517 906 232240327 42 148728813 137 495489146 601 98306663 615 732198596 842 5950935 581 64014944 365 120159975 680 214535632 802 491656831 745 820845543 258 343105367 713 539850844 567 57609208 72 382149730 954 872898833 544 244193956 591 783343343 642 321481133 3 321274645 696 914047131 14 151800469 114 517457540 408 907982642 32 648252700 797 928550114 829 83707054 403 287255777 586 79833457 775 780992083 765 738308414 893 159595915 803 604061822 706 677072113 211 462078822 583 126665261 677 872792643 0 572717370 776 420339038 380 561680091 624 489417678 194 92887009 598 879249224 430 299807409 914 349272428 984 817774117 791 178415153 878 152874758 459 501775098 233 650709366 979 255350259 958 729655904 876 698128467 178 311261731 468 354152744 787 430867386 786 341784740 508 797332898 378 576092145 231 46151778 753 583689368 218 211283743 767 636825452 530 850636250 184 413763733 890 30300624 250 867706570 122 690051547 980 70536727 522 25585189 560 656545501 729 789770550 320 570320001 741 727766486 196 346811447 74 281879429 397 301531576 178 646245188 104 148591399 960 544406293 27 842605761 170 543533923 608 995411382 985 884096219 697 394541402 904 232050681 190 73809121 509 38967119 267 346985886 830 278575026 97 477300436 76 137726422 414 744451488 650 925309305 836 3277564 649 74487139 721 21571948 249 967337415 975 729251303 974 149444260 620 241619532 669 25266571 329 318612798 964 146345846 592 868594927 518 457706641 800 967564764 698 537037578 419 448421228 184 379199211 137 33850389 455 165230994 74 792521837 210 496224799 681 751620793 310 703524098 860 713689911 78 2882253 482 620335234 922 973272245 231 540921279 992 382585268 307 413402708 429 680701498 812 529858971 649 26829620 255 248586962 10 814499923 63 972448513 385 85284795 218 445768488 314 5394867 676 743200497 239 909725462 303 211707862 105 130718809 553 516584763 197 675724788 518 82836221 597 403889139 828 98333097 188 37611816 480 486402463 167 318020242 655 593699720 702 535852255 235 148310088 600 102936007 825 502948089 279 654839642 343 360032833 432 249738567 331 521856269 460 812736390 460 186325007 159 374259254 34 545330990 880 900836548 668 983043418 3 237604740 5 452972798 970 979384459 312 197215425 621 702977312 614 625312443 488 247071552 105 270760448 978 233237294 727 908249883 899 319356907 810 400564331 652 972493740 79 681207050 816 682082439 501 642942111 396 218310303 69 482126381 417 667000098 985 562687967 756 590383798 771 150765458 671 371043701 777 665299210 494 404096088 928 164805824 724 891817376 149 447560023 390 787220864 777 718163342 384 294529373 388 348298100 178 56969611 352 792226616 792 87206737 230 282505016 215 603482428 930 202966679 85 511916620 234 704677537 952 511564463 826 399918282 869 185308193 584 284321910 576 785918588 9 308331881 853 132331215 221 136880032 563 163077829 644 206963830 737 484358791 219 727135150 742 528348713 286 740745723 916 528478781 785 498071854 369 415541414 684 938183994 68 938672490 202 728123264 197 849976534 721 731473273 411 525760911 167 736246620 553 238549577 668 455604382 238 533200408 7 44745039 402 905275093 57 726954596 625 619882276 870 282396402 110 462841123 401 374986260 159 802208469 829 207924164 992 98752710 864 437743634 520 40692975 211 58528728 568 966988138 126 877982294 638 741693259 859 595326763 178 977764031 420 469096106 692 999333119 583 78844510 632 839898592 125 510500950 979 308944206 697 632648580 986 539009666 546 227722917 106 851967920 510 868757120 654 439027577 892 554829744 101 399020571 53 805565138 657 77022466 883 896842896 382 84474725 295 213482447 543 587539435 70 74558522 346 682280544 575 473794175 298 387806804 407 102756509 240 73976970 811 741099604 813 869563095 40 267925731 785 42275075 897 761613204 287 282934731 51 840124678 692 315643379 851 734283746 780 87094588 324 117469838 849 826462911 81 497956296 520 384857572 325 107689298 907 472648607 630 243547396 756 735008546 650 184843185 684 975054374 534 906321412 338 697408724 385 974623281 26 381004830 169 997977092 989 854999799 208 382170402 140 111667017 941 328879674 306 633737337 488 816894137 931 494216188 266 9172864 481 795816861 797 111425703 425 286264489 944 272553284 722 169699149 614 426519822 527 752278402 477 26599409 7 619776620 756 302956035 774 913372578 932 659357770 457 595335778 982 138386061 602 296222540 81 637762248 343 881930692 957 682801287 387 423766242 847 833908858 920 845028718 661 873313806 513 659656898 448 892590555 955 295194016 948 423048948 599 886564645 756 790313499 163 255370672 584 867736826 150 931870339 139 818665455 798 544695154 23 182951792 697 375870806 500 434964132 89 199100728 749 97502897 769 996895977 194 713765275 578 899496650 269 495043108 669 224863208 774 790299227 406 763830438 6 495820026 139 563503076 844 778869135 819 963175066 865 656878334 331 817764708 865 114591504 102 876400037 641 481245313 10 848627953 454 976521205 645 893217576 408 255053964 197 5070958 978 587249294 168 822857983 871 981077384 304 774703406 769 314021988 822 400074039 892 317650845 477 808391689 275 780124756 247 709019590 259 183594145 705 644618019 691 823235221 449 82232929 196 866822995 533 947063428 475 343557715 412 734446161 521 764004949 326 166230279 464 154746536 337 44166586 287 838523066 829 526638313 102 290217763 474 866567155 82 671927553 543 561863434 1 677437622 284 943837427 875 67800391 332 912114296 534 168235825 656 49615314 113 387429265 919 945193386 778 471394249 456 695291001 486 114440043 245 633263201 474 597249623 412 166058517 159 735454489 44 950994260 389 628763823 767 853543140 797 28299285 197 858267805 564 457580308 306 472580381 373 168717454 45 611582553 367 486741097 304 995405997 390 204870004 479 944765162 722 599054781 440 143540473 992 661362050 43 869590533 41 448469889 825 69296430 731 646365856 710 22998638 474 295811130 309 237490068 110 471958762 588 155425721 386 76419507 967 428433707 452 248555934 603 717569921 370 349279130 774 588022062 754 760282948 824 308383547 167 478168340 610 550575599 379 957899258 551 824401774 368 389518638 804 534764323 804 287055732 644 183018893 681 310332167 552 359857476 305 982058340 572 152200739 729 564936212 104 571727725 274 625912056 544 625083149 291 90874814 903 507552794 913 318744159 513 136076963 663 227528666 651 201362550 771 291213082 765 745471512 488 302716784 583 780430091 686 268581266 366 720492641 100 489756038 19 740267220 441 689605195 858 794867084 873 75836924 840 361670455 491 383140134 187 314236159 978 230789918 356 358873234 511 133434755 309 389761053 511 40315041 400 748641415 140 71247568 449 457146231 987 940897086 25 925255929 384 896158821 447 231142154 705 38528750 400 170818646 222 750520384 968 402232896 849 580123830 317 130434554 772 724414694 911 301294167 291 190831698 735 765826882 782 545177114 325 597649302 749 220839491 995 991993042 701 860939207 374 738764480 159 888994612 784 920247208 601 114235600 953 235903768 680 243233577 319 241662060 767 175063828 788 399637326 466 218750983 578 516271931 194 282461299 666 348825232 153 132567255 194 412653488 471 478878316 249 215155288 407 957416001 7 198302751 71 817336773 821 382234116 495 41210550 230 722431325 973 178637567 139 430240433 66 564548653 576 546602635 340 570943311 918 594638041 717 400625753 234 786010399 757 318904894 253 940550039 446 849814727 546 251205639 778 339211850 159 558766281 692 847557897 252 370599687 431 870112508 157 268308190 260 179553929 760 184832839 931 464363927 442 635552885 830 660248929 599 443532844 904 735572163 680 166501843 841 57745125 242 741693228 285 115760600 296 601174271 149 120650599 434 716346261 701 82845601 728 653568654 407 106488722 555 119627093 508 511993784 367 690291090 639 543246461 573 240232424 545 32611546 152 370393094 227 231988708 64 728366739 904 344215229 895 386502272 27 670913678 920 369144420 754 946502138 237 69259072 702 720301778 689 30665559 219 59477398 445 595972626 256 205995358 301 537591825 284 64816375 591 515196000 404 411265941 566 284423225 715 783121639 882 853864988 279 247835064 986 297407564 57 925516174 162 393085943 474 333229430 404 655527253 821 834711553 14 518841262 274 411083667 554 68320389 168 213985068 390 50898442 662 579528344 153 910811676 373 332178072 173 139672669 840 895995085 346 579169079 973 581075637 795 117982167 21 235112188 475 357201797 424 775682834 77 411963682 763 478917661 202 409329780 901 994329404 124 350513417 850 810702743 996 955495584 733 212950002 462 836689419 8 536782931 491 627079635 394 358663823 28 887432198 961 199295030 357 775701269 221 280093001 399 977287861 627 257243394 994 410324219 536 480923025 414 120439021 527 707244469 740 70301019 119 16422933 688 289569224 171 664682219 632 545729712 409 484624681 698 6833416 833 751983847 800 269865399 713 318538763 76 897535668 121 723829211 791 806491405 185 392279039 644 337332063 957 605455034 800 712096732 260 743831808 799 956264072 188 237734454 784 832931686 543 382317522 182 269268626 77 522462389 531 955369323 738 181078451 58 353962923 598 610796123 395 342853414 927 527949894 230 930366359 505 377826733 737 295634321 890 527771921 378 707005279 483 784696927 227 753936933 212 912211609 500 752347471 300 597764945 518 68580242 545 973632826 295 661564341 862 247584664 786 696614604 893 62317650 466 995254486 791 901051315 177 594161535 769 202934633 34 315059833 936 661477365 45 156171314 249 262843563 800 298427939 335 851483660 984 446098800 896 566346742 908 647945029 878 471832876 380 431343713 677 740096217 798 686261242 811 798786112 87 293225833 665 670309719 579 279998406 144 36411749 578 635661571 896 709328607 101 814576066 188 461126179 89 632162292 805 986186582 843 39463729 980 907374008 795 908265609 278 667071784 444 241296440 297 542014091 806 355843511 87 563393572 591 141179482 8 18482443 925 710671216 251 846600550 84 802777319 827 713460764 35 812461379 210 368389947 932 991701488 836 641770124 866 231450476 232 585898455 698 344039468 441 71837868 644 561854271 409 32387598 969 292003102 812 755507842 372 642147313 907 799706036 51 192226541 977 965106493 726 782140253 66 556007148 680 726629260 649 893545861 759 345155265 108 783411542 117 354954873 814 48974911 59 155254613 635 106266511 736 459830460 934 279717750 786 636170384 855 406188766 906 367544204 668 875432016 800 263068098 281 643795903 830 495404833 640 753540294 830 270270296 742 417251489 340 696490089 476 390218516 787 345162439 661 173272536 55 31345706 997 392688667 854 126740453 731 462757736 938 160500888 815 589834670 552 69980560 772 238412017 409 688081288 410 23343034 722 336783512 108 679115303 724 932369318 750 749212908 90 421325387 791 352951752 825 965009099 933 806876536 603 936497453 350 146665235 982 75189720 289 695877765 703 30508504 441 211598311 664 647490351 235 132645929 972 808593911 493 358157160 52 658383284 749 984714372 323 799080668 905 43082956 51 41277126 803 621854685 470 460548363 618 116945535 753 195994332 947 805694191 649 652088568 65 956561446 700 303397731 196 400256312 40 260980663 684 61855356 56 437285458 342 322249914 87 613696567 556 613450221 198 254899909 883 274028065 587 308391716 359 762675507 176 921859930 626 394169510 863 525311433 534 744330214 790 783476523 166 316160795 655 443993055 507 577736313 7 637239912 880 58279939 18 526562268 139 84667330 564 69822394 724 188385859 206 295205991 691 281796877 979 595119092 396 356294622 666 110078595 884 198517423 16 944020249 785 614860517 69 812628001 858 212703992 980 69302805 376 152129300 710 109274399 399 52960362 21 500200327 485 593896056 891 829495696 856 57151183 582 811636038 48 932537158 229 927241335 475 779715175 792 932042759 576 376965292 650 122470296 151 492186279 908 734647599 230 722452410 353 830503657 972 956923341 120 635018314 7 18627691 816 247229548 13 902435617 504 131123873 453 424527331 61 619847708 44 185533703 846 254939265 656 870436355 989 224393925 688 442115792 108 619030755 771 719294462 919 296760510 995 230719112 727 268507669 517 648963669 350 788414004 490 56280204 855 159350275 659 287294618 425 619443821 89 35998755 518 346768605 673 62762029 536 811287301 779 526637052 437 584141635 961 400281109 170 464419403 660 535716206 579 539329991 412 926309115 594 415351623 589 543155896 667 794341091 41 625716810 162 316122086 387 698409194 39 564551466 591 835303897 119 167073229 401 811673844 482 379799066 921 398577651 880 400184115 310 364085646 558 431741539 910 529245896 168 203087849 192 188673232 639 82868646 783 780764336 362 293058218 872 240279731 666 476712783 622 417523810 844 512900621 234 441430965 241 402611835 11 811671606 265 926635695 734 662372402 628 18166940 519 457612819 636 524363410 85 64358803 218 315419480 746 357559409 556 827391995 967 282986209 940 474801196 230 361603778 80 405403467 994 757363897 786 284182307 436 734454635 57 215635689 538 586440187 723 428766046 687 596851431 525 91946179 868 228702864 17 632099237 96 803581747 495 120705083 199 167600101 562 266008428 491 234933955 399 470349300 410 204016483 366 438807187 815 927519438 49 440147261 992 230941763 966 779286177 265 328646733 56 198723992 622 515805887 947 193251675 227 78174108 220 748908664 155 27234308 261 174348896 910 763919501 224 704877186 503 547728580 467 8714002 460 653866506 700 769973597 890 832039620 120 838327126 50 436672909 981 589288900 157 101794771 349 955411805 139 58482686 705 383204504 498 299888533 548 806896589 62 130996814 159 707461037 181 620476912 659 198109975 779 626283213 893 581431127 729 648218149 386 745270477 888 45411081 600 382859612 986 547786620 296 516802144 817 696286564 780 898881570 565 537968188 820 83131108 22 256653250 437 964772318 563 214534145 153 463222668 597 441077582 151 780601492 678 564777799 923 146808704 706 469513506 763 393951500 884 20384791 483 137857840 188 140318020 293 253540149 160 939326258 60 813442956 510 673440658 799 930539875 892 629081726 370 692426686 31 606338884 867 439520930 209 275676797 942 487237954 764 764966475 939 926629077 148 234061741 509 920755335 391 417083437 255 785086254 294 13323102 771 216414876 827 740085239 43 270363386 368 596936539 108 69175256 20 288886460 201 965204432 310 615562291 313 265983360 822 107772139 980 289953837 336 27456749 441 732820244 530 131081010 617 880170743 414 667932057 749 689790122 129 911287278 23 767928257 362 962820015 15 363694733 833 938316789 158 962991749 420 714389514 185 826562988 656 1774326 712 333205052 689 602294102 383 277716440 116 639641909 643 827153091 749 303469211 897 894370626 378 100132311 460 274857673 609 593167686 827 126599729 247 58179370 8 475783743 280 154463073 305 531123829 793 396517673 978 933796323 599 534396282 18 288928808 145 656304931 1 260316393 935 910185383 612 504985874 69 63292321 94 668794660 172 621539596 463 227201504 38 863505644 680 290641597 813 299615939 891 541769957 612 107584717 78 814134705 535 583494018 93 744714278 579 527019876 420 526255329 199 859149540 415 614524645 587 551032796 602 896676706 130 337018004 197 786067324 826 747779518 959 207835552 25 266583584 223 843693319 590 723945055 172 119757643 16 295456134 924 778933195 36 256116817 160 40096549 614 471843677 681 425423202 127 206482209 671 331294001 54 219709183 82 857520049 859 933490134 666 411761678 628 463688483 530 508963369 108 667426755 532 337698194 234 433437596 35 225970314 804 769239068 446 138728938 462 717141176 119 599997791 947 507645967 261 345282033 846 349552981 19 611646191 455 101454258 893 593022178 792 237027945 367 470415925 827 858854989 88 863801305 849 99107345 842 516181182 771 653266382 892 211644519 975 71627395 718 867601077 446 320626405 782 293016309 876 144340611 983 312692532 138 824308613 761 150319369 41 506366776 153 952580829 801 961580688 798 251427869 319 851856767 348 9593543 670 205314674 768 374786638 331 431631057 652 638299817 615 70381732 979 281310516 381 590870092 726 940541207 185 383209379 278 534189647 75 390223749 675 264019555 584 415363462 620 826630787 553 23988866 394 795317937 226 433677478 511 231621100 186 173326688 584 298284944 110 855845962 373 106625731 287 202733548 749 713824314 447 109231495 471 10078779 959 724550957 384 243979424 963 558657953 169 377107807 576 252478057 954 812344469 45 484091447 803 347360417 73 302463504 978 526663753 497 518941075 736 147835516 776 63182659 157 95179241 647 331656121 757 363723279 481 730385914 289 176273681 502 13916550 269 127423042 679 651913387 624 656190526 5 934392916 738 376425374 88 551656835 151 383706133 923 712720978 924 610280935 633 611978784 501 7761342 426 748341845 592 369301006 78 208537833 730 735320317 936 647601235 854 360887593 343 358990674 379 78477919 546 223405555 68 184771803 91 841597272 888 465678534 958 204199178 753 515645705 485 389432621 992 873169728 411 372202246 264 410559805 463 856088140 861 950704430 746 629767591 478 797087371 652 302382496 795 498436725 495 456783196 226 140521665 446 739441027 212 515547748 730 707418231 546 539324369 38 830426232 20 849740730 568 399603240 744 660298327 522 307056571 140 854186820 418 54501529 387 421077695 866 515216949 714 790650168 48 654267001 241 307027994 287 82833875 688 840784714 353 603952852 728 845901977 690 120138725 365 279467248 439 269296791 307 376648636 688 668815846 10 289033608 914 69521519 538 83596631 756 83547829 405 38959306 287 750495020 92 577491651 401 156980773 278 323569424 776 861968529 754 727399876 659 853581602 710 39430746 198 914783663 421 131229666 653 22634016 536 295362721 508 659186425 90 989335004 455 664587285 798 227756735 357 149368200 182 889822500 64 237685532 247 101640352 243 910360581 845 379963188 716 603915271 670 97322855 185 361615085 858 950284681 976 324102844 359 501423707 472 707936453 364 582163131 321 845277178 187 622760365 748 847863831 836 927677613 453 442258668 527 400820925 709 374871332 76 380464993 872 122387081 676 296210098 567 891413790 593 452954818 771 937514869 159 808125992 367 379113836 336 107420982 340 631746242 462 572545843 112 258912045 231 192131167 285 503089756 553 635506635 927 387518914 933 802917521 630 904482856 806 275275411 592 64653361 72 626498195 517 950496857 471 500999315 729 207771425 122 82774477 748 264232653 544 212312148 389 634187893 72 893130782 971 782587013 220 252078320 684 668254287 169 615406042 2 774879472 85 210157321 244 723073636 73 188192063 11 555932852 214 199770407 478 453128730 734 49210698 54 805390134 279 814648797 665 113932378 558 646461743 159 468569943 28 608637067 390 839664027 540 17672401 978 198124171 146 310481330 270 965243468 252 760691270 942 879755807 171 432500820 384 235464397 439 618270635 700 223040087 113 11679071 940 452271775 362 853065309 19 727138992 358 840912816 988 562618565 941 634904608 173 974117262 90 629095366 436 773584551 318 686800627 965 15215924 290 762007135 287 953305411 818 189249538 371 638960228 941 204221654 948 896208357 140 93977650 897 607682382 144 186658588 20 893826329 432 748519327 831 753492970 781 295012424 665 194413304 550 646838953 642 308439931 311 171337494 666 596021292 163 682377846 796 324711284 549 101015400 367 485998648 377 283977621 751 300100691 360 10584268 962 426884914 276 833889211 282 884751648 650 165048840 702 254453532 342 260571997 303 869068252 806 573729440 280 724408578 638 376889687 331 172283043 421 319661919 520 940328315 670 633978593 273 456580581 776 605925547 660 805842144 968 771634570 545 664869315 812 733631278 861 495211569 283 184271840 238 396452851 270 162585291 359 740440576 295 328702954 101 131149165 889 21474407 439 852582034 916 919504391 592 443836284 325 254142702 478 506481506 435 228363960 728 23696159 538 548100964 752 115169685 746 819465197 365 309018113 119 246736017 854 248955549 471 563399712 158 60911236 398 947267032 236 843488777 376 98971051 981 610104852 276 431891167 293 209388718 930 530705862 542 38069908 239 834038249 413 561706907 384 789220538 635 134447271 574 858831590 30 255509036 831 496361154 456 519848615 419 711759939 270 393896819 657 715784555 810 991882189 335 707664267 629 98620421 209 353324641 734 930595865 675 918775893 883 852888710 828 201659348 664 122495774 532 426831903 86 168132847 124 554295062 101 74577737 468 840627292 189 976805561 77 850221711 361 196503867 443 930538268 228 664304215 920 396627102 177 85876641 21 672464986 114 955330843 684 707579543 355 827963615 279 475009425 929 154411040 916 8255077 210 908424809 762 629398908 457 205453905 3 297809817 954 634803817 601 221252535 728 913788396 304 621928005 889 195259735 847 639489645 909 999344149 105 298386490 303 164375505 652 433178432 716 355277678 717 384506210 498 636259473 28 296116046 758 394537106 958 267352636 595 192904132 174 942111079 486 164755482 923 517413840 892 541576624 971 939901293 583 787426703 930 209476187 544 146376850 135 501564734 187 864484465 127 366198391 571 36833982 644 337548105 307 375068494 306 368224382 490 567288738 940 460809854 403 565921248 583 683816700 306 831083872 123 360837078 104 650801080 56 209226360 137 218990803 444 184467980 872 561501465 697 380023891 441 288019596 908 972510232 5 376205709 191 419295869 380 93463134 362 754043504 807 873058325 800 594523539 778 124685857 133 755857072 54 668033428 994 8359047 653 225544537 117 881893962 149 41843344 760 806477502 405 803308834 257 957839646 657 510514066 195 906188306 147 122280329 420 6991383 327 497833866 912 466108019 447 568894449 676 834003634 267 871880836 48 876906266 495 272162348 495 328931785 825 220337654 3 170647433 965 245441596 121 550971328 278 788816550 545 975414645 103 618237817 341 139539552 502 830865443 213 326534120 269 286101474 428 882796523 508 780905074 407 159171497 544 505546578 107 128284144 599 491350162 100 369249136 706 815517656 387 523641432 140 231827145 840 226264302 612 405942939 806 261558740 216 195357144 512 378534328 596 804396061 416 281874197 251 131322427 498 292812568 96 42988757 772 271387799 939 756327003 17 718602826 199 366316105 303 861469616 532 700625847 181 928754744 885 842288036 319 591706682 708 463478614 63 658447111 532 421475416 281 896818364 342 844205002 832 171206436 867 819524540 536 430241926 122 75236322 188 905765924 922 715239359 555 89504533 652 346073207 368 247969980 180 651897693 553 882464427 187 497888198 1 965014685 568 675217166 198 294918945 348 460050455 950 331139091 538 317294639 701 205966038 350 48698781 935 219463148 396 162551138 141 658394013 859 674819684 952 868034462 726 704507072 921 729894368 694 752985097 823 565564894 942 410948173 416 82611247 244 608849641 92 647679854 955 48657802 801 219156796 84 715425551 751 823830717 732 458942320 660 832988677 781 650052788 29 979246575 771 480000346 532 725847177 421 617235580 150 280812495 418 477585289 145 612451480 309 720548076 695 707924074 583 909871237 995 363641620 441 804921398 673 128866182 275 448786788 541 428749788 958 734026980 178 161796555 961 928053706 508 764461102 544 63772020 879 78843784 430 979428497 717 513746127 164 44416770 946 884787076 238 747253580 265 10660206 659 459104973 729 871338860 391 467477636 602 931688834 631 274437658 775 112780414 485 281177950 485 172280207 907 532981815 472 187000122 697 20863044 840 416586853 408 290677658 773 804656551 603 870397458 344 98170772 82 818547686 293 334157579 485 991229335 788 852805300 442 9831585 340 744912243 361 484666930 333 598078362 520 658203990 931 790218709 248 335683951 658 796196777 473 308853346 19 616187973 608 607687907 125 247505198 410 696815762 701 240120890 502 66167468 277 369539036 950 794490126 203 928029241 254 839944296 905 961326108 944 53462806 855 460560794 915 900488586 86 669893206 308 716439672 101 881251298 405 770655292 21 109172347 700 82215318 948 687268631 305 774858129 867 52631563 790 14865872 975 324777527 666 63349814 301 155189516 188 225962227 152 765021768 447 669953858 877 774517060 980 166763768 735 338613995 412 874000553 743 179733522 686 658511831 661 941672307 535 597232661 540 498841398 616 501921949 256 57132979 47 842142125 562 229754313 265 436518319 179 605650220 327 120594327 77 723455290 164 863265832 456 874053729 319 308597633 9 573412629 296 998768130 940 64529770 250 925790834 501 64453996 427 803276951 668 211258752 583 984644869 836 435267962 806 864177642 303 854561639 40 676453143 403 117346256 287 940853310 978 919246093 378 214078476 728 129638032 747 213548887 936 687959916 562 520171175 348 169407312 383 566235414 373 499008584 230 297987303 94 996776435 883 763767003 68 89599991 398 435116444 891 236299355 25 838503680 22 607378699 820 305949845 794 700245653 421 959359110 605 52156976 809 384158063 218 239167128 214 58317027 347 199105390 2 352813916 218 634535781 393 447528092 637 858674130 280 692117859 34 567012343 344 426538106 445 995309511 706 196393018 701 482994210 708 92367399 380 351990746 538 307864737 697 622452347 885 998424213 602 827230618 351 986317382 264 768534083 61 653462608 333 983337839 198 26029727 250 43848435 991 575331863 956 393964633 179 227354032 327 638195950 442 575888203 981 461615823 287 941289866 546 431682204 3 74850980 829 544403283 516 304831040 338 234438599 985 87042009 173 788790323 269 17118189 405 732241010 425 215853362 492 63537948 349 914297712 325 466435678 906 891376941 705 396902469 14 95546888 116 156700569 772 805810914 5 681089886 743 721064920 838 940861400 966 964563360 429 716734855 969 988648891 33 50996481 431 686702952 936 133710069 108 638455344 801 335182273 534 57484214 377 771286206 205 531699937 696 67463767 634 904746502 90 897384527 788 379761954 587 840053031 540 374464876 753 920956166 344 751347317 731 243611961 972 474423503 545 698282981 148 445466006 412 398604039 194 467812162 281 131616216 110 826208084 793 817704860 428 620637597 383 38192353 25 856231244 877 114352119 159 441983460 280 136280860 76 764183175 738 819149754 330 458120021 113 417736459 865 990150854 965 20417653 454 532871033 414 569518108 522 521070067 739 368350721 745 734056464 936 892902651 200 539454484 376 539673462 874 664736931 887 494896316 957 937730749 801 758748945 85 712826220 944 336913230 530 164254927 259 188509677 56 470419207 35 255531902 579 226588267 320 184480535 566 347493569 646 27113235 277 567301027 215 616169837 742 985898299 666 585404365 638 334722295 82 997971768 711 405018385 521 276918748 610 975951443 846 466968215 474 33878831 554 786262267 249 439218068 159 470932358 366 574648069 277 589430531 214 522377307 800 79049518 822 489191681 479 42909627 712 665431207 729 321156992 908 213122092 403 409236469 931 666055865 571 339302993 233 720289597 733 525059486 465 875600161 577 779869096 520 335204400 456 385256614 998 794586314 733 964938243 280 274953548 517 958823530 565 894748285 506 546521373 223 201514642 434 945878641 698 452931386 263 201630698 907 741623117 901 86403975 993 331989816 434 489788026 510 17828847 997 903864727 452 277721152 277 350574435 155 956629290 236 690041521 983 707621655 69 110794261 384 56347933 892 888077061 164 664620501 648 243887806 876 677319397 756 228095776 906 884395017 726 580638618 903 223162107 779 585239851 334 795029376 471 720152535 971 276787709 211 144249567 871 990832721 577 42741340 601 660240476 890 884215637 970 142671085 623 83237577 550 72578997 702 654314363 409 540254609 657 543642313 921 762212717 604 534325749 272 623304134 866 345104509 699 679997333 553 307290126 394 922576997 9 787075258 772 410558738 602 822389606 215 375986697 817 950186035 294 830597200 993 899431104 882 250377295 297 496937062 532 946626190 261 572579234 403 712106238 53 993168323 722 445570761 704 136693011 17 846040626 683 542103758 976 385616455 477 766251035 78 176449892 101 23451968 770 345941263 155 349583544 144 963787186 769 350062478 677 948775202 434 658046192 642 300099128 524 187752203 680 396962976 572 596072014 545 808253835 39 869673934 80 1680789 15 218046004 897 108075020 693 558462218 269 818281127 133 226447769 378 293327908 425 71006547 647 120891342 952 540226707 451 264053453 479 343398263 110 828218766 948 115890423 315 784116279 228 351082167 909 799913739 568 338697647 411 17715610 983 756663168 151 957487839 212 125018177 855 346347827 26 502751522 78 103472820 521 893301665 503 166788397 50 783480347 811 447512116 419 194226994 783 366044613 235 892297616 818 708007342 143 83368143 395 143514263 945 601013223 120 327927908 948 272730002 251 155114648 814 693642450 188 845202537 928 871695958 755 228888084 79 225488456 318 448134976 494 401349894 538 883096523 421 949688213 267 553429181 639 320837015 200 872520957 990 393667637 205 200346758 133 439789038 751 683051615 684 187945631 794 813862304 352 23300953 639 125886791 878 736608456 922 783086228 206 898475799 8 189182841 705 122102142 205 679053581 551 520422896 964 367978290 281 605719020 285 529400599 9 488800886 713 977539945 939 189453448 733 651927796 456 374124560 214 111041217 271 147976020 458 602266208 226 560366292 545 974528713 413 603889315 669 52703531 397 268387118 378 702502427 825 284731154 615 224475676 906 227303309 831 468051921 209 341142504 498 674241520 307 198643745 419 870117804 604 365979330 931 729964582 281 368130823 442 371798278 845 425349475 186 278909034 4 299690783 904 433350016 56 636760775 258 505912328 288 410303200 60 447110750 200 654562000 176 415110742 26 954747432 795 963072545 45 802430767 958 211333776 633 592435469 825 783773317 177 22635364 435 71353231 230 266961939 241 57035376 853 154317895 907 721877818 118 475101183 460 559625662 464 925415574 466 403719 202 907960906 624 278801550 30 955074267 647 672855735 65 154147143 365 792048957 867 318533861 288 737969746 913 783308503 623 697950673 567 893934611 460 653981628 50 222056616 546 521536895 82 761370023 6 391799423 789 878306785 583 433666951 222 181425528 274 492392060 767 962825094 480 867138678 157 740734962 552 387350030 389 875960742 463 245773838 964 762361682 146 787743799 348 319837476 958 521412135 176 951198696 122 878458500 33 939011713 950 868721112 298 627788256 135 981465777 382 936096483 728 945092788 251 12462621 580 468955481 318 188166806 246 184867901 674 65622261 690 238005014 708 422007793 150 780931209 195 385087112 889 636162164 497 920139942 588 951068447 538 705598669 263 628986373 288 311614873 470 267537517 217 232975206 907 733204494 789 573510600 404 231541505 86 47502244 970 432507059 848 183458720 747 256651313 138 754337502 591 8748970 950 114782008 257 536932524 487 413314319 100 744600392 765 440610096 194 130206176 139 89407799 137 684495475 16 629969136 797 605877095 213 931326169 389 14988581 678 59755443 185 187989156 296 635558903 436 743949829 8 198953206 797 308012535 134 630251398 309 688147151 881 18969307 344 111392738 975 230728248 432 793877265 799 315509615 876 968056229 107 320887699 155 407933801 226 942215119 735 144971080 299 657909755 163 86497826 184 707231147 31 768590448 144 157080758 732 332877786 874 486577752 106 649635130 92 18621821 833 932596221 574 547227216 734 405576047 413 253342790 551 430527021 262 738797475 635 309123329 747 183060456 127 576506853 500 756719145 578 951225830 873 326454496 428 419438448 194 138650472 855 753235577 149 652120548 401 836696361 466 540423592 530 185591933 682 413436963 988 608752062 929 205087853 707 96778403 229 854060638 566 355289329 21 913835612 916 388952126 859 758686948 575 418499750 306 319705836 408 510858755 966 836897941 697 16055529 217 732816467 774 806470011 178 650601658 644 388038965 149 229822605 211 19266684 643 448113161 613 498236833 177 150551452 376 90772958 616 734010108 313 398194543 546 238904431 254 772960459 278 497977568 66 995197889 561 390843189 708 287672436 472 115783070 235 465288506 919 907100053 11 81696225 673 434862133 801 304457195 198 898445590 530 776410040 859 252863091 68 536055109 601 310064208 604 333738755 856 775077470 103 851421640 162 154850777 804 561391998 369 335467451 757 595656964 288 461619056 607 468045931 666 341600845 382 925024031 511 224983181 283 405550803 237 586621946 235 764468716 191 398427326 476 48723731 816 177377999 352 485392033 967 245558515 752 246687257 965 342449757 935 261025980 131 598873435 31 503157708 929 397411041 26 241635481 315 175975429 419 525989594 200 85342130 764 646428503 375 876145573 145 340009188 847 540743456 880 856625238 668 931633939 445 767882435 317 999798205 854 679800697 702 854062558 881 81997879 587 253722874 232 867367073 886 734407862 23 1961661 798 867511484 486 53436490 478 453011775 296 551762438 785 941452517 659 516974861 789 10385431 337 112672589 851 992216348 316 319843264 75 734909605 286 482939216 487 343470497 99 113121647 213 383358991 555 561021676 956 435233724 513 634456985 319 660265586 718 409255863 579 834994622 89 224352861 988 866517348 37 132912362 199 522915095 988 743239702 606 208343656 735 883050095 169 870679927 104 446428765 234 552105153 57 980514377 960 172423833 317 153319542 879 242546590 548 908566523 7 991180499 868 478846558 274 11295438 855 658545993 998 837198412 951 299793094 663 982234946 743 529315250 23 760731623 318 643582840 527 369662667 441 330896540 621 344580583 66 88051978 87 158129621 405 726027038 271 11520048 656 248891039 968 755801382 700 773195547 32 121612535 745 875078794 474 591973781 566 627155780 142 473889825 703 480281449 801 965740943 335 421207116 806 993485727 255 957087953 63 164711890 458 738190954 843 836657680 966 606178112 105 78162059 798 948604099 977 229352540 574 469886421 964 798029181 902 400917397 651 98720456 216 624634835 858 289542793 814 344694555 144 719391005 363 597162518 740 836787148 648 541952806 87 215109650 853 259459535 527 777943811 305 922022042 835 493577531 248 822101909 713 159394216 487 788303187 442 104528675 769 271447015 690 874946062 189 869874042 697 145582942 268 139710281 888 30021015 667 499633763 250 938887921 944 816108753 713 461572085 599 718683809 840 445703096 88 810038725 540 747452115 636 784228263 549 854033574 782 617241076 134 371523422 504 429631365 857 949785021 902 859396200 808 254539312 10 703759348 27 999344981 128 988490811 845 159598573 350 333232007 597 499753474 307 741593948 286 334421905 458 827094538 242 535098873 266 270393657 625 714845796 321 533224632 119 694966420 82 233154205 582 190755850 384 794004462 784 128014344 399 692660253 334 733075149 742 548244134 540 77319111 975 521730715 236 794579939 859 870890187 671 762424617 804 76115375 600 426575461 529 926834300 707 75366875 24 476171813 782 83718132 685 150700608 372 200236845 745 932492496 707 120119619 825 299066947 646 328194752 395 45582456 602 379853125 143 730345399 671 134130940 124 769139132 540 863024710 499 435705398 486 124987291 215 818343448 495 296355815 347 565313018 929 969975298 117 466598842 498 760235030 569 46067369 605 671205923 554 363610167 960 589442455 245 338188912 855 978581042 223 429057076 115 93947395 252 851863766 910 353958342 313 720055124 366 487087165 989 606100472 786 921653436 366 569292609 243 814981585 270 593516940 650 505399724 131 434743117 883 504280332 925 895838648 862 60322335 952 191913537 330 527450006 443 982214881 703 886108775 954 155583465 354 981256581 605 544607524 668 253966221 848 380092192 465 868082616 494 452443509 292 66154545 430 327726563 731 70990878 832 857282348 905 346227993 273 893736131 521 808585752 623 310319503 232 372248398 550 276260724 272 392851147 640 474008422 578 597424793 244 33610119 294 757016894 303 221464245 812 175880419 696 857187603 177 867783515 488 667072145 933 656258631 553 592231873 547 353382631 931 799252833 215 534075919 894 331550815 58 212524808 584 600631936 120 712197651 527 584063419 573 540570447 200 403996280 241 211987962 581 20746233 984 276386562 357 507155358 417 526871389 92 855002204 518 730169436 958 304204910 36 920004489 428 132938910 777 1461589 703 618523137 717 333111168 349 827160375 384 213233692 513 743973559 812 128336473 986 530557217 618 398782259 772 113458092 622 881068926 71 192749674 659 243331197 59 23067040 728 539707800 313 803947628 289 553578378 306 297338436 399 150364030 42 730533218 952 252327035 654 176199453 10 896951268 104 536577822 613 302546598 516 225569076 199 21436984 230 411169106 26 435573207 388 417484616 171 367026888 291 516930316 948 436613198 474 879730278 125 825897992 237 592259336 97 54932076 859 430936187 189 106063055 529 98445022 97 204961697 197 343212888 983 630252016 176 91570867 770 843498942 707 739033601 195 852154706 368 859687352 755 363136222 689 773664829 88 416338232 449 928001344 385 496602591 523 437505670 268 398467515 442 927293959 918 385887874 985 235559108 170 339773303 965 878426633 409 987824510 997 468936762 403 282145839 163 829203951 76 661577636 982 625621406 503 458092037 54 244276829 838 875606112 465 826437613 442 563208797 792 136597739 612 574895252 746 768969863 188 969876422 633 474703250 288 139510884 183 314030449 41 752546366 395 632328141 240 966137893 483 335619402 625 442993914 469 772838458 930 541728465 813 705786847 229 185805162 226 938986859 363 110781257 598 202725159 51 586035882 130 390494897 140 916629671 505 401753733 301 414201454 403 6761348 189 472470242 320 641861942 184 663456076 674 577949959 350 30583753 300 281440962 680 584404297 570 755875349 561 963058554 292 393650940 292 380320890 376 400577866 466 713275233 365 30429075 937 250543398 760 932787314 619 462626258 953 527551968 722 687929597 481 574362659 298 26272395 381 485961719 359 299955673 75 773010184 33 417398985 305 648945011 656 796119265 54 33865405 14 15963614 368 163670546 599 259306660 15 835848922 108 990725718 194 631396383 712 648122065 873 362964227 391 985148119 425 475971615 497 738260698 644 400150409 209 145140460 636 725646537 919 671498110 869 945835624 151 109927668 681 417653626 414 237267486 247 1347111 749 545584782 167 859530299 626 687007440 142 277938551 968 642675193 702 329602816 51 919947597 461 205511111 478 379068522 543 454185013 295 38902403 512 916970899 522 932530960 13 295539337 516 690084624 369 557054374 363 220592983 557 726223328 332 688735444 724 884993580 538 917051293 173 550087676 599 744903672 22 711276610 183 770602031 783 389284127 863 202534083 691 655952260 651 869573857 738 56858528 7 874197130 940 203138600 696 133477671 281 564969700 37 20840508 879 351523803 69 472426758 434 697726050 554 442227068 582 665428605 837 765504041 377 705640956 981 650964843 238 453042822 517 98120222 538 4094724 90 466444942 774 184551426 528 516855393 294 157319064 649 490308798 973 1382209 588 378252074 732 805111511 980 214172723 547 628641189 747 916014322 530 785750432 946 439457457 141 473924854 104 129222266 859 137127490 262 923777263 597 825085510 911 707572585 372 740865895 575 923128444 445 855000477 747 98974655 665 685213269 764 5363344 428 586980883 828 401409771 955 245152378 661 824011854 861 355701703 127 562962475 7 13453077 915 861679019 20 248155266 580 128878201 229 378223095 146 502255299 976 280921545 450 477483022 961 101365444 921 121416845 994 138954070 705 811740729 101 690659922 90 763358558 998 625534089 327 682390548 955 970095304 693 579656346 2 419723654 932 295925857 628 374655470 639 654590206 328 836883878 806 791616333 913 666569618 859 729439882 645 115168790 385 826878027 677 209592776 70 970641691 174 256553316 959 34443548 332 101626478 396 827226567 644 596388253 82 659327335 725 901933296 0 1155701 193 953891055 296 614627005 119 277095282 801 161458345 535 380078885 182 888895353 678 524991165 661 267080014 125 17261967 835 975100624 681 661925772 811 200685279 194 769870822 887 292508558 880 535825472 974 739366271 964 524931360 925 470528731 340 491714712 509 822781684 366 580795615 644 190977087 75 290528361 133 98471699 664 362723105 270 544077018 15 494472746 872 885030352 450 647026877 397 188968371 576 476299610 358 657093787 405 916643272 614 666820342 767 311597416 289 302622332 165 956673913 625 165017037 580 742045496 439 320848009 927 760074431 993 741037878 570 418761222 941 438076035 969 93503691 436 448006025 228 858079911 976 126933548 921 676830442 357 411111920 804 889085408 494 395472405 991 84764688 998 430847496 697 515246962 580 73934170 11 756800683 855 759462414 114 421177791 509 939986956 212 817013954 323 775403354 543 99964993 297 782649671 826 617190267 41 917481392 532 827291445 564 252614760 545 467724081 172 684965217 754 198176304 726 772523287 634 690698456 78 181951650 893 220662668 589 752679485 151 754925431 485 252717047 776 825645690 471 132767899 230 497668186 346 137459162 487 793599616 472 48459624 238 514798458 549 832188937 351 61516211 784 563938181 445 184355065 509 271850197 229 901161548 299 689955886 86 697333584 705 683628970 190 276384877 608 953188505 63 541225390 188 78459346 981 981575020 685 663014205 667 454117998 682 629001191 913 906560287 992 54981573 85 569064342 608 171931595 621 799394286 398 633573838 375 174481949 671 432341294 859 990008179 200 240880180 68 947410001 521 294845030 762 834776488 919 850276532 416 593533827 452 863957914 551 713517487 545 813329590 212 709008383 76 534887379 932 772119462 862 671001225 76 724738822 235 523056905 825 213611035 342 698315815 495 199088129 178 49798318 775 874957319 652 970040700 331 601994127 67 339253602 169 703290769 166 633844927 266 324863260 160 350067995 314 783197456 510 269150624 2 825105671 915 103159925 710 488987823 947 351780011 405 402714348 884 235005315 614 314999634 487 110460180 793 642072829 449 296413336 935 675968165 827 615207346 366 955808316 61 130893000 43 393581095 30 446240097 288 224568821 702 648239180 32 100712825 45 570922993 94 861593127 831 240424794 507 22888498 723 37424342 715 30485946 790 801007940 627 416961438 604 747347115 564 478419432 871 789690926 687 739887848 719 787327032 868 275149738 291 790357207 254 610603704 920 93625727 451 965710134 558 232933969 495 199292793 191 56338973 261 598977398 325 77025551 59 549542951 466 161511585 732 808992154 554 571242000 840 259031147 834 179027206 684 390931915 354 900729560 871 980011008 126 210704303 86 856933591 236 703017650 754 720247155 779 871206060 95 895865872 488 601890951 660 535344223 434 11097630 871 139411912 410 412500488 484 352788994 87 694297319 593 578786888 895 619926696 686 644021319 922 772317816 912 965351920 786 13165220 820 743525313 771 114671633 860 715816272 690 657086165 828 995743821 212 764135979 55 393203405 804 872852170 260 677107637 384 394521288 185 462136003 890 34656176 494 292408840 359 747892668 54 786185932 624 459855754 416 972456546 459 446074245 957 894322096 260 306417633 310 440542949 831 334123274 376 667121082 805 407191738 450 589505426 487 736646777 605 93599149 262 869311747 364 990077439 626 154044532 13 627819521 343 301629089 823 455591485 71 822331275 278 521283257 892 147818186 749 966457594 603 291801073 701 192824477 509 879717122 24 55960298 81 315411438 815 700345350 895 124743622 543 706093104 667 483297960 94 682085150 22 167561808 647 478781917 608 374507486 45 850203976 79 716722090 393 202935538 60 776667255 591 955934076 228 86462357 552 722885900 429 175802001 669 721103979 433 7247897 420 742708899 124 118338400 551 73759932 472 614970403 775 159497041 847 565896651 179 62530676 158 868566077 332 127522804 370 850656818 850 525554717 196 160847322 847 370335506 822 230926372 737 380673760 621 961170990 373 388590116 801 43778039 637 585518154 978 719337334 44 527400006 225 476523361 630 65293391 85 891623663 868 150350616 458 904429957 346 68513481 593 606561737 566 584981965 168 344660991 251 592784268 45 705492031 277 178287249 742 357795244 983 961817698 957 601924009 661 313678325 561 770954600 739 511772923 425 45606325 831 34939788 72 960012789 856 135994233 477 873749411 715 437444117 509 65366422 40 680958407 998 979896999 97 879158891 395 796814299 733 242335262 128 622716517 701 186060086 157 397210259 500 19488223 276 553393757 737 828956530 175 49868992 132 905069410 723 851737920 863 482725854 449 835331991 606 51780073 197 716656811 784 797879806 589 759562599 7 155913660 904 643962359 164 742276363 259 914940851 228 236498544 596 183732938 740 526370494 528 552744661 197 88269413 884 987847847 183 361832985 55 552031208 538 607523809 880 958588808 340 134875283 86 711204705 991 775373795 657 941206654 470 438963975 378 432589384 27 690209082 224 620472952 461 914743470 303 519328153 201 238697291 695 738168747 708 511011672 595 818443082 748 259904350 541 79729803 865 797945139 988 421223316 563 991744363 557 826107065 632 496418796 733 133219421 119 275634372 835 2821885 928 190779234 953 575495195 667 100868756 976 505185085 147 925989559 255 959155152 654 533088844 403 396697593 650 604439709 84 778779485 929 4863115 69 339782291 780 890232399 683 54958655 600 87835091 352 512100884 54 589066554 28 142260582 410 55540434 223 993397564 356 405180911 762 334699855 26 660157168 776 124734534 139 82146313 647 607632555 826 311105564 127 568315614 644 776340979 717 334570128 630 382615412 19 772269091 668 502502961 116 870822209 705 418341277 487 349977777 12 751244459 252 604717610 973 483456391 436 283130902 36 428279591 217 415430722 206 342502401 634 476684762 791 570345792 253 382917080 478 525134849 205 798067121 873 715578025 75 801494477 635 907841716 113 734744737 336 5642461 609 719223306 497 163632584 936 405048220 495 256202434 89 981202931 985 729684662 303 75632483 376 590979820 44 781086092 26 433983414 719 399220262 895 481709291 279 41387814 816 31496405 836 761484688 347 184329712 979 772792113 875 45042569 689 787255021 331 69462995 75 870309571 875 216819646 317 764911804 759 586174582 569 150459657 654 570591576 849 937804350 580 325417298 245 243654183 108 676295235 588 510871564 376 267506203 470 40475975 363 830096067 717 891953955 595 790824998 637 143918566 758 149283140 648 528367482 587 921425846 465 978472574 898 724600405 31 870241549 812 811432536 17 169012175 68 921961310 774 755584135 655 380784384 956 607603049 503 141327589 888 779804687 818 544054620 861 846931118 587 948814953 763 537611150 544 451442529 67 987126923 66 62287895 627 562778265 684 346458678 232 859470900 271 158165049 498 719423606 233 131731341 498 661848725 59 804165001 148 693857658 925 578082220 525 647800243 370 689557850 526 691838715 164 930377471 18 349285463 165 599500790 303 811775099 745 898088741 998 678680624 958 304464564 296 121619286 977 487459844 655 889154885 381 684751074 831 467642501 269 340830389 157 747782954 496 765573463 578 486507475 693 569615041 963 354993315 552 6505862 889 513482337 292 571332119 466 373743572 635 58907609 941 730202059 839 610940666 952 718429499 258 7730200 624 169889942 900 341414158 686 431787320 64 350637984 161 639478446 96 752948261 186 281543170 167 807085065 949 953291541 166 986109789 487 393345596 244 419271381 889 190556389 634 348529656 53 424487627 86 331155887 82 163590519 897 959299988 717 406030151 550 871863221 445 233429734 9 613213069 735 599537971 899 839482187 505 93367648 300 299653608 394 431580280 617 29079309 470 32778463 80 436256044 683 774431023 893 714777049 435 702261854 947 660084595 575 10680308 839 221232351 902 358171020 187 235204745 497 990239624 548 226897310 211 535986184 699 504609610 353 427758798 287 245305361 999 746336829 256 290484831 734 746790395 671 566201217 462 59458722 809 196880811 81 703865699 330 392374571 175 383806886 411 699325640 462 916630406 610 504958965 940 536002649 787 839609951 701 451276740 326 770857232 825 283703452 946 258561489 14 253855447 726 833581993 925 953823622 427 212650355 8 410449123 462 312335920 229 33752622 113 267324729 519 91837757 761 643795964 222 947375257 512 671007160 432 205906659 255 882320947 459 16229597 464 326802241 24 187714404 582 874239447 445 718340263 670 330620059 465 540769437 82 620797933 240 825408665 287 887303337 196 790892469 178 765110713 920 568791027 120 291554031 821 423935474 219 833498185 466 469625082 800 919485400 744 204435060 294 27967273 702 36052959 391 575852055 837 421268537 797 520894965 477 468395478 297 516670406 569 130544060 433 407824771 895 962989603 321 45544921 127 801046493 909 699400198 634 351065292 763 595581559 9 5104579 231 111824712 722 319725804 361 148531623 818 157989201 887 708846058 608 80076359 859 694834506 244 266541397 412 938904220 31 303991164 613 973916735 512 880900411 444 47490102 779 523323737 585 368743341 392 333840392 269 954530795 869 166926552 601 202200631 616 496708270 865 99432195 539 873483411 186 369146533 318 865773661 451 341754094 319 69395465 969 365895887 581 956942962 433 492431558 233 441662215 858 47567932 465 874663734 412 287365660 416 920411447 884 784655134 285 138367916 321 950729851 735 230663950 894 454503359 99 618684188 878 680669655 366 849477443 916 965700222 753 743285594 466 923563569 886 227771569 182 942794283 23 431306679 622 403391147 383 994671505 280 263941861 670 875572494 573 716394692 0 670974936 437 674870955 205 285843820 50 790528741 58 525884080 712 628392368 801 467093651 396 133299047 881 469151403 617 530797165 871 671422403 874 352285100 295 789830468 144 907067081 182 443577429 160 294150219 978 361661345 939 90209708 393 846035222 535 301696989 781 144853268 681 139471001 485 833101079 914 127986419 941 715407787 359 215769052 337 971200917 895 477907874 889 426350772 216 504639009 915 860947203 578 115379824 720 861617609 807 982770343 362 276628674 760 185270096 723 872820058 245 283219553 479 224641444 4 164655731 632 918764880 415 291195852 762 987585829 597 878527826 329 784929247 837 37711194 121 607326984 12 761740223 295 661216374 481 738152366 791 330093975 715 845398435 980 381810562 355 432522483 374 224864714 30 658495583 520 308158786 776 393668020 371 30347880 618 609092683 655 833208276 319 885584982 783 283015396 633 589810140 167 767583884 855 285201905 419 726330099 545 539969668 736 297086795 97 417701203 386 370875247 12 386754530 283 69473148 246 282382953 133 215946300 150 97519955 970 189050895 501 795298371 912 36036091 446 823427317 150 283889690 919 546839715 285 866973836 247 74210544 875 954705240 60 249215732 411 558421612 896 363275101 200 706211223 112 374573254 603 307788203 817 546346312 245 105796920 263 98931079 778 520976586 586 296045130 804 114757384 614 432825679 305 278858344 829 274332556 265 647342164 734 681800707 92 829413960 194 413755451 80 224801202 982 837910486 840 988922985 502 928008827 431 492572423 931 557770503 457 776942555 404 240999112 395 986425724 775 225747071 885 542444685 963 811802893 7 307819810 504 340166934 367 441480618 543 148529046 724 916984952 291 696387980 430 39163966 715 180719246 857 519727808 643 782237190 344 519600692 199 740634397 441 535644543 494 608687630 322 953181211 888 12329947 765 832037437 787 56102422 857 5990313 253 968129541 358 137911980 58 936531832 950 413066280 557 944703949 138 906461874 261 407892734 191 68705089 193 625363926 155 23203468 262 869810885 804 743094021 121 740276106 774 751901166 299 256354368 396 218681639 235 702757695 119 721525838 735 220119293 262 612907724 285 501878718 106 541272888 324 265496198 570 702082878 562 102850762 384 955772808 864 151120304 562 115129382 798 854053126 316 333411743 187 473288772 974 64452930 640 195602000 271 316621708 505 442113376 409 717387990 810 170926038 583 274136334 564 849776980 931 376427898 151 401800879 880 346514369 741 110953635 555 206158742 770 952069280 390 708479268 719 780395732 285 707784603 755 397592767 376 539034617 339 135275698 538 11281816 897 931986948 750 462578431 853 879165798 510 637176740 33 564089158 100 119577084 836 189093535 928 848984499 9 699885235 685 553871268 154 44472794 589 304648409 374 11810487 150 721542549 719 799266487 31 916094615 26 277446384 714 229348970 841 431290271 182 854359165 872 863619731 269 219542701 370 391078771 485 402409822 287 325221941 910 844522358 354 149632100 949 229176450 959 118262233 878 603584702 791 844576227 81 902199099 199 838934650 239 308746951 628 48575545 183 746173679 206 208690295 602 260050907 107 170252019 157 459866278 390 706500764 454 871396630 543 2538128 666 849388734 801 847461265 657 126526231 789 370936933 446 600959830 990 733160422 504 391777120 224 662778872 245 57415755 297 143000607 201 171037824 219 229013887 452 25278782 969 310527803 50 342504479 287 60495133 4 197510520 507 443007566 912 499546065 777 914941953 955 968175858 233 656679379 523 143605104 271 974865186 568 746666997 460 448945726 554 402125606 837 437124643 594 254230242 702 80666494 66 34825508 408 198319096 934 798044811 892 384375010 883 600685848 983 400084234 183 996617302 134 564543999 558 83507230 690 418538795 704 150925109 347 724623926 875 591025156 134 603814062 943 562034277 776 430738754 834 935841273 111 572082442 259 760017874 317 563003025 401 253244128 457 214285636 336 982836220 689 830455084 614 678846073 832 355630337 505 558309971 402 53395901 896 711236319 490 597881262 993 423532312 8 78983596 761 780745547 525 745592892 658 479762012 966 658616314 734 569357370 61 155962097 358 630983088 729 976903209 575 641520368 779 629366864 228 81501212 857 153767360 332 107833677 572 255603662 827 808809187 443 622399437 772 36360597 77 781740439 213 643162153 931 607020610 793 200747909 742 457234520 597 726922142 104 99434985 680 151254375 840 750465060 341 394182343 367 434364904 18 125191466 289 619089441 948 252698489 144 311480368 780 749956 897 276826517 192 835762316 588 775944841 958 436057868 748 509342673 753 134886256 355 940613159 37 504341404 627 953707387 909 932740605 711 248219076 29 509696540 532 831967404 987 226598795 478 737013737 843 97268154 724 192410581 203 844179896 621 771724572 206 668965952 200 520803363 909 36721396 364 318960953 907 857522284 156 116478281 470 440089814 175 752744583 42 424117917 574 76790414 991 880275976 724 569917709 896 495123689 450 136688754 912 818416472 451 909010018 488 700588281 877 741117896 461 67020013 582 389367929 594 487046724 355 791388245 810 875093936 333 37565070 90 473344431 908 253709751 214 483259519 489 864836565 96 851619821 913 48886406 359 98718140 701 456302663 608 357936092 327 438913388 329 969661897 328 258326162 685 969403732 715 791255104 630 863292235 449 502006809 601 714564270 867 852060134 31 585987930 195 438468752 415 202713414 330 133500736 447 334226219 647 161934328 454 514195584 918 529885139 90 540829998 405 633148662 574 871216380 239 753926470 434 206531531 990 591753788 282 250168534 273 353550216 650 506440289 538 754803989 831 931487581 288 962600722 904 156767059 185 354495034 254 360029306 225 551843252 539 181455967 591 750556085 490 154674663 516 468528455 210 395667562 470 532450677 466 888997910 785 679222039 419 767162576 420 161684503 405 292157866 270 341266089 707 470809252 10 296284537 645 354591276 237 865480212 272 609474902 17 829036452 549 922919121 251 889118814 61 22305769 636 391332024 284 505473951 86 185457362 539 335975608 505 325029918 390 549714064 40 407777723 963 769770507 549 323999517 96 763744837 725 229983517 451 921706847 485 727608144 832 512070589 332 332996069 308 638710902 364 177614666 200 88150760 733 290653449 307 937705433 57 260724612 691 215504653 632 672399943 69 8275410 332 301519553 909 517210396 625 440025655 33 585598753 535 844989680 22 506138720 213 945552128 510 272935247 239 314933769 884 939733671 145 649604288 128 470519695 689 528442353 206 653017132 228 847774020 130 261933454 331 81163687 691 57457595 921 237347811 955 887464018 779 783087727 398 444238231 875 387931814 632 967301052 684 41323823 930 381319359 780 703405285 465 290711654 722 445638528 660 94649145 92 430710564 644 627161880 571 583154227 200 792030721 42 138056460 798 383163984 111 392213415 191 129990262 852 409861902 343 437444275 939 336526062 448 857057602 98 646525362 904 523592215 919 544970176 906 165829362 337 686020291 566 355270427 200 421312471 715 275325183 112 926879090 116 508932311 380 779431549 15 342489097 546 898023041 759 814901639 451 284496159 263 867743270 99 911757700 142 927400825 871 18345286 444 805386009 345 267229819 589 546964496 631 17488714 262 696208299 986 484914857 10 33026426 266 617164049 323 462392642 199 244993542 261 213300568 924 592945436 846 279104526 739 307380223 541 724552038 852 148792894 340 814317265 236 748306470 976 361439427 317 349025584 871 100303166 439 595457827 683 725137880 99 948177780 543 626071358 366 137503657 499 458376875 173 569726485 99 888199704 219 584046702 928 559084472 766 140497781 50 467274842 760 485744687 189 875322063 538 129881664 197 429936201 573 258763412 37 574744161 691 400970844 931 911534309 509 553012150 574 782482378 810 562383870 748 638109986 413 886007692 747 549997420 518 177124404 489 375263408 557 862573949 128 691542917 0 105051257 873 179609599 669 637896282 70 764848106 63 419496023 68 927369864 293 248577312 446 126558685 212 801574297 75 369497161 165 98251942 763 29234075 746 479696570 129 301168826 368 579361113 839 343398813 274 931587367 167 890823574 856 304228849 727 511583382 260 126314344 365 773575007 152 907896235 22 787582322 710 391860745 938 237258356 735 275439678 345 178078831 630 915436875 810 819928050 316 851009356 409 943571756 562 385228986 587 456444910 855 541416060 503 204281700 105 915161248 535 206659612 1000 869927249 704 166616246 716 714771126 789 547367439 371 784090316 944 403364115 185 170897780 946 403645381 396 597842085 981 975336490 336 360100050 509 418470670 631 80404789 873 965828300 377 276694847 555 150954745 870 919848431 107 446594507 165 4154006 174 93261486 168 286785959 443 147591051 361 641248713 897 575249063 744 48981867 649 294089528 279 620309795 34 454182992 229 871712367 920 297531477 720 282475577 463 676843571 936 637138466 186 915023889 825 111779109 589 261335499 34 286949223 411 765922041 519 720535978 565 879205317 780 475197523 641 607165772 504 753225953 213 881874824 97 940855028 886 554068696 117 491962358 698 852046590 330 430392541 648 360930546 875 56871272 488 198952125 312 980189750 132 640569936 129 239787086 116 972566771 100 783179504 105 197487307 527 486449854 214 923515812 825 322488764 507 924920885 454 438991858 376 328353240 637 941567478 59 912376676 103 311516214 878 202613359 931 852288013 474 197597699 608 90861201 619 165159974 665 24057769 623 861567297 254 576570233 793 646011385 444 146541721 420 208723678 798 709083549 672 637508141 115 787275117 774 295366340 356 824263081 978 105405709 459 891605636 386 88357331 483 652877393 492 570033870 447 603507268 686 451848089 96 214995774 815 33225970 801 905609297 880 837492868 889 924310984 684 183015316 449 596678976 954 307745253 540 329419456 912 749266470 241 388476272 355 506881889 281 45872492 359 894223421 302 62777052 132 358659309 420 263525778 668 304074168 667 677753126 159 685555721 330 349217818 982 965143002 480 317529470 747 66593747 952 274080500 818 578413092 404 533609764 725 920361328 788 323009110 272 524157742 890 391124859 30 179647841 682 657416520 843 58318080 846 442505303 440 87847162 38 303722486 74 53278678 649 324419013 842 349857450 522 357664506 155 513975635 995 352012106 879 760196148 459 848710643 512 617254012 235 135858933 864 556716872 62 622580223 274 985647782 530 682975609 213 897037896 329 680352195 736 38445089 551 397423222 217 974746059 404 727060418 278 43129483 668 226689525 447 731916824 281 122869753 405 509286921 312 373918209 497 49372263 920 200928365 951 702073060 322 505609962 801 15535618 21 292734933 654 167154575 768 811950331 24 402900816 534 794124504 517 69476639 947 374202107 999 733967681 593 822921454 117 390285638 568 691451715 910 491792093 854 929822920 321 33652431 48 874450675 262 198499066 185 57762875 755 553408797 950 320374470 525 23843576 456 137260168 759 828630912 995 421647563 851 850565817 814 435824531 53 507119300 180 571906390 483 759674252 396 125558069 232 665636429 584 446514789 742 837940017 691 366941654 782 205915598 836 621392899 432 920459672 831 868251645 749 35920266 423 106376254 668 297611047 319 147997351 523 725719806 858 141369663 291 968875637 377 180889629 998 91389299 13 78478574 740 922505538 164 572846341 127 638602274 423 537284047 54 935279617 96 559779531 815 904096617 369 44542883 926 670915836 406 425088867 53 256449736 424 44194291 863 96207432 342 351839839 520 675161609 620 765787039 217 672987339 532 88879918 96 457196051 212 696527347 892 708849355 327 408936893 574 960174777 772 21020581 666 26607444 355 714159964 111 230172711 997 901393016 436 364036766 759 532692524 413 519376322 896 447196354 180 575897882 549 773613376 695 118641679 523 583487486 322 983383585 227 46471040 516 211671575 34 777749471 49 250367935 371 971131396 476 109950458 843 714164380 979 235573259 743 571807277 217 383842410 646 111880710 32 260728398 945 155623897 522 962468932 292 659212351 153 688231060 760 230362367 426 82329207 662 677609564 569 54089742 394 738363145 197 941984887 232 789795633 947 938961756 12 237068225 889 61342707 367 250818993 296 13169287 695 800066101 209 858580087 268 460050733 177 882278977 91 305657224 224 875153443 701 343269551 773 222580485 637 525809125 213 842213919 435 581294069 677 921397353 50 679932565 211 560332556 277 925235754 202 195587780 599 538822582 78 156619996 535 731289038 36 395440914 202 557485920 312 182860362 598 81536564 183 794320551 391 450671140 948 61097756 932 145115641 445 102696293 31 320646975 359 733158788 502 409891604 887 591168110 788 52969946 391 665282388 487 279166732 225 610785387 859 454270531 644 199720365 112 396343547 53 771060313 207 179969706 110 487838080 531 692345407 687 193019357 366 708316006 576 779725374 258 771753525 485 515672194 297 278547366 274 145504574 274 615818763 646 895686781 38 329016518 113 845862664 864 975508290 268 762314727 145 312133865 761 13505962 52 158387204 853 113567859 653 440851966 361 213771014 546 608032878 377 661288224 48 1361647 115 862165508 669 919177287 886 912452657 809 100226244 916 185620211 416 138108313 288 915597933 844 859072959 83 312080343 11 847974491 927 752597207 884 649679143 455 294674315 209 219203699 689 557614388 643 938178383 544 427623335 158 222072350 404 239703425 962 549327669 506 163639993 624 16939159 867 157139794 16 489751992 159 918236080 912 338459725 113 163190940 37 643353569 724 829760856 326 636426715 367 704710177 347 204000630 834 531917809 722 587683252 524 896171312 438 391182472 689 192667969 147 26481279 608 264184967 234 306533558 43 669504563 585 45774339 372 382583240 461 711769513 226 615017238 248 789978443 544 755924102 332 113998203 120 986275000 700 424052624 577 573179755 453 724971890 393 775082462 277 65015736 542 783383089 48 632984124 858 802037898 410 248276899 368 777582870 829 272822668 944 493704247 836 222979133 658 321348888 750 631321935 786 334350298 87 779880342 3 175791781 285 394105282 490 649566891 695 568422141 80 363665563 893 925257620 809 867564079 370 867083255 588 937185757 423 516653759 996 941042401 397 384791769 167 686719831 360 705252609 748 612720880 792 90619054 219 723795074 317 886886298 30 914390807 772 778291845 450 680111004 938 288072823 343 511300969 557 220544880 733 367872759 619 736694791 165 868120090 242 138954742 308 742114062 438 731040095 423 400961391 955 900519984 622 947387290 644 57047423 591 637951021 696 113630106 35 257838701 851 905989156 192 834660670 340 215042678 231 577368185 39 984326011 453 464735240 86 258671165 427 379127016 191 994506104 771 277080897 36 383761325 920 67740376 890 677951211 955 757496102 477 880606379 973 16484069 493 446898810 699 884894454 728 775025667 450 803729943 31 732412455 908 298913880 526 575699921 102 137225011 297 239117707 599 733134228 578 162915593 183 654657382 173 265059431 254 284967584 206 183082787 479 865396206 736 813990604 142 721376989 161 147592872 755 319089331 325 902403971 749 251132190 409 521706432 318 980014860 758 141950551 266 281588184 361 302814453 589 631960459 705 816698881 539 452124021 782 77765571 508 529557676 341 997941539 197 391038498 521 634413881 147 710165204 208 449934197 981 549246554 437 48690089 262 643501593 345 263791826 819 459221344 505 903783751 460 508742630 365 997048464 358 173804926 260 844316466 852 300570578 314 24297331 295 718389922 132 384244898 610 511255427 191 710498066 125 840709193 821 553293305 789 744462546 219 151899852 547 699038660 416 314020864 671 519962909 873 731465704 450 389137822 540 36701803 126 390448350 235 466583439 285 358641428 562 934539639 96 202968334 39 716408332 284 296348581 790 483193658 463 634716813 998 273875000 960 40901645 1 596079994 966 718879840 926 823913259 19 753749511 200 955308184 716 937559191 363 594059342 436 848062507 750 531629316 163 881072584 68 979039986 716 816283801 13 382422121 708 736623178 630 150247109 784 221788344 261 41617972 415 765408838 24 250995712 260 987961707 215 665200124 629 194827178 988 973212748 473 858018041 27 518507308 657 777497766 930 255156935 375 4323997 987 787823416 271 919754044 373 33539045 211 279164580 930 253462554 359 769922372 771 326267034 407 452427165 229 947152064 21 816345495 378 13872744 863 359256739 125 322993350 707 88537977 214 415971921 927 561983483 7 130250970 798 664173231 127 351507893 609 306758632 150 538335184 774 809565088 684 442513798 452 260792796 38 191247383 51 880962272 848 678918464 472 468131961 956 673476146 281 221428166 154 895819101 2 625906702 575 779771423 700 726862468 732 460511906 938 216850386 497 500322056 596 312677743 279 61719438 369 308460860 334 618653593 674 550436813 628 815209165 10 11062977 947 750210994 815 8268126 151 143996743 604 197858043 82 632475356 811 851848434 469 505901502 403 914999436 288 406231377 355 515777061 995 157797065 436 182532677 472 670884504 210 412610825 730 821342003 176 78397070 136 520349691 60 430703115 372 262219616 759 963491256 605 754651152 826 277050287 827 99329820 452 819295735 362 992220485 788 963455700 444 399848806 143 416468284 821 527992807 736 552731037 815 109950212 461 129539814 343 101412617 114 461863920 355 852468363 76 422349964 356 827500072 126 82046174 794 980071117 737 974860602 970 155341222 258 96524892 815 106264984 280 254284507 817 565677057 628 418713065 77 475063570 347 472087609 700 39486083 773 920474244 44 464839383 991 474218129 883 905135161 360 395247017 803 296123044 658 955121055 943 169182548 994 619611400 704 280406718 466 850068479 669 67816085 93 994741956 674 685120874 106 326933380 479 391885088 881 929005825 608 496472854 358 874628600 520 973356097 477 679762639 869 908483898 498 500025972 612 987702051 718 204690624 864 576140504 93 222860100 969 349159147 205 431869074 668 790221682 610 320087968 189 555627714 350 806012118 617 960927220 400 255083845 823 905253711 317 238568864 50 915486023 269 910565718 352 804571121 767 625445128 579 498609819 196 448543028 727 975111103 668 31875687 769 559448892 924 781334183 293 980284784 607 491721640 77 384725462 856 927085662 330 12157005 622 487613590 82 55666037 752 819781552 978 596435612 895 159852477 772 525177124 382 760054899 776 103487810 469 162673630 408 737380332 816 462382711 185 209431132 170 594928103 242 580130601 551 7559027 229 834629628 175 533681837 972 744936686 396 810182810 525 254976528 772 853708865 827 600359919 809 353974860 535 739362258 302 29172667 659 80178690 229 901914750 73 624894150 196 909656761 759 441826873 165 501938179 693 612866269 703 278115648 168 160391533 582 541754667 572 544843117 430 152572984 38 963975751 838 464453058 771 145248301 92 191168541 63 927143038 742 539030588 940 940563831 428 303780623 799 688023349 978 699814607 313 28541848 999 151174887 191 715321019 525 309691136 7 804826696 417 243941511 6 786853344 707 66744754 1000 224700921 869 31291927 908 684994245 625 921385554 800 876545495 329 792813393 912 224691882 650 189579765 867 399041629 145 245711530 502 966412871 631 678439831 526 895535519 227 103130074 212 230655920 684 915561198 89 399859149 487 377185367 887 229609090 174 569202278 568 421763124 979 261068810 434 77653821 855 131000779 623 674455794 3 73747922 656 605960081 205 669104098 471 239152388 687 651355649 868 315092462 675 553220221 503 277244453 688 277012779 932 746761966 136 406693430 454 1771373 964 279470455 181 366103606 602 549282442 960 839467535 233 470323380 80 824318368 145 568813235 440 891033009 87 79552314 582 97631335 188 94284957 311 225226201 198 784030002 68 537718967 57 950866121 31 398681955 128 813924740 161 765524646 412 78756308 44 303994797 40 871720607 166 820678326 794 818239009 906 421507785 788 810222285 869 196079598 695 994826345 762 796825079 998 401318832 213 934391487 182 367254174 714 653248338 150 164439133 950 358830682 42 629844412 416 813082708 97 224840287 496 355725233 379 822138060 58 773323240 206 681820113 501 167470871 646 510939191 616 391449822 667 106858859 845 570605590 147 127170677 307 365451023 118 816731530 388 402035398 967 718294807 153 67181788 117 734140410 823 615403511 220 776918118 51 506813207 556 147500916 217 384148197 972 661759692 185 477923166 242 525290543 415 852946446 92 380027371 896 726270526 517 461601600 400 77244318 314 208026155 543 119957009 752 705831839 959 213311561 862 683198499 868 621905957 274 15814906 351 316806752 584 645524639 34 675019831 947 320412961 56 720240212 80 200726895 898 117384496 75 753665598 966 832156201 640 188082909 902 440477449 76 775335677 637 389910018 412 635739118 328 784512276 423 361038440 634 539138430 188 390602624 891 844678146 725 547373591 682 997989772 425 392288689 154 672476820 536 243511787 923 802107147 405 953977629 469 722552828 890 729545494 904 641383755 635 170234661 23 435187041 615 636307659 588 203215048 949 636015322 966 944877239 919 486477453 528 737746438 959 109919746 349 405859003 730 535828983 548 160409344 837 563837928 117 419610461 518 314823218 782 773569201 209 899684579 837 726792523 403 72336455 771 554755398 705 104514133 489 856307725 946 891471858 258 89342480 721 637977550 73 349717832 226 610623091 384 937466994 392 419763373 250 888416114 402 265130274 770 901846245 693 206119312 669 336362623 693 984571827 764 224836552 737 555016268 398 869067704 765 643367752 82 492735492 924 343185015 969 199357876 552 931539856 502 31750216 648 857413112 257 183156855 484 606967259 732 294137494 750 892308142 418 517240285 40 864473820 133 486723394 961 613749116 953 637456133 134 531115208 595 821473078 231 526472929 24 963884170 51 963723690 683 984652702 676 283732076 853 846771936 87 920999180 39 919799629 812 317759142 105 548240665 853 643438163 804 172144662 534 450056519 78 581652692 447 512397723 160 935260629 410 810166851 688 123205608 451 516675918 568 550015069 792 587946007 329 470376630 156 362923343 63 654576146 661 410994568 258 504594526 106 335400823 350 558988867 225 729653979 909 96594485 901 261908763 364 216445902 164 960558577 97 536410879 880 926511562 801 623122590 781 62819481 715 891719667 472 498343415 180 423413526 139 526915427 38 7765557 872 510918843 220 556479542 682 518389987 38 661647302 391 145152548 865 595527901 116 193424550 13 467510324 702 356655009 944 556827964 738 216498271 308 811074678 379 529172351 84 226417762 664 696520431 171 613713729 96 895469170 947 286470561 111 451666656 902 700211145 432 688004388 858 293864571 374 646317902 927 178683124 746 423339001 480 888445998 239 790231868 438 298211676 84 454419683 421 726747452 631 179978000 632 414272159 459 601704631 367 78727946 21 456941132 242 756327353 616 356780571 95 291056111 933 472220247 606 243906252 563 262154301 416 416792451 363 669749265 376 706267105 704 662464593 66 887292543 190 327578776 118 445074204 756 669015532 302 568827646 156 622281679 252 981078943 302 166906895 482 110788593 913 47227009 603 350908683 929 82384866 210 503052578 970 713623588 998 26254648 943 526005976 862 100360165 144 128012510 875 713334516 630 743066462 427 110964852 50 210450135 143 373843990 664 891644116 208 936102889 100 560303926 600 308137638 904 717959163 343 949363283 959 914940650 309 961637085 694 861812856 509 54183842 662 605041013 72 774490432 184 741403717 10 959043784 353 174649922 568 305975722 877 878056892 792 55293345 16 992376729 509 861301867 882 866687231 831 580888653 848 319561079 587 551582237 765 359785472 1 250113818 252 309393078 816 389692783 716 538869373 599 628720055 352 819400995 995 817747817 229 594828521 204 961677157 81 270702882 826 825850201 275 980076722 296 460993329 349 471047032 531 611788360 893 629052378 40 575016253 697 11124606 159 111735933 310 730802160 191 974427707 912 185440240 137 411174658 332 285351379 333 581068450 423 931743695 264 177907553 592 738057027 107 323010077 271 14130921 789 611152656 510 701442107 184 247564470 869 515874596 28 712396694 382 453028448 755 317905508 786 980199367 637 186274341 988 573426349 264 347298630 627 484995768 516 241029104 256 406858785 273 892733575 229 117632585 402 487335334 349 673891572 78 130336139 908 296147214 64 978127050 975 965164253 846 536588534 52 857289666 425 647379405 166 106496176 745 114616017 449 50473858 158 214556057 974 420712489 866 358436050 231 963892376 833 143397464 550 582006509 872 360528882 700 572304721 0 658636256 805 906305628 985 828810027 888 348147930 67 47152997 956 483513807 232 129507296 423 127763577 496 981623509 185 877098682 5 772318354 26 522191507 546 797793687 574 788233432 22 32504939 785 12371511 444 698885532 636 871881082 835 629179355 818 304351566 452 416149471 182 52650130 167 985297564 205 93095853 766 300441027 301 885914249 609 835511668 777 440151192 352 810834452 294 5526383 191 886770583 915 962239465 776 81098110 705 41750473 24 268124004 251 342607001 409 646898700 406 860860102 977 148481801 537 605723837 422 203756860 725 32453137 876 463588965 223 969165405 304 262902929 53 952310806 483 768424772 918 194683536 6 115519452 68 251419388 385 289648226 791 372799151 347 854275062 45 228160387 175 88036164 922 719206587 840 424432634 60 266691243 479 420948767 447 863361436 196 104667525 313 95110486 527 216400052 271 753692952 814 420191088 963 207271372 512 222460856 635 609132126 361 652069513 581 50961423 733 655430724 969 82017179 421 248231619 439 783539280 55 743194173 631 361201759 664 139745333 161 370561513 361 360101051 392 737998311 960 265702262 664 514081258 679 150228067 414 535581170 711 429118675 927 607209005 380 673734336 471 462625144 807 642261814 413 933179131 670 547203591 640 29556059 236 106530531 147 233625879 490 231806561 3 492358806 991 40781473 147 508793058 650 878316375 674 855160891 138 528782686 313 823077234 616 312460668 960 525741608 917 929870015 626 503118958 992 869409405 779 858585087 951 917291550 269 869601359 326 67974353 132 304415554 40 159998171 365 351864471 880 512060043 86 805939551 23 687625162 909 529883784 161 634370434 564 184231181 163 882754941 233 864804418 7 336274986 622 229776389 283 363157534 243 718180328 480 275079989 145 320133380 996 36645612 953 929538382 508 629928948 120 317352268 950 904231483 169 149545174 371 475076924 351 170153786 241 874371683 365 378841963 577 375495254 449 977036526 440 309673394 249 565136232 948 241698923 796 702394237 902 76570356 847 943565185 584 495267428 739 124904871 551 53889467 68 757147757 272 815331105 189 354759384 293 499352043 898 197833581 985 812733438 365 289789431 896 121161096 848 867825798 432 353757508 152 412926742 827 973235764 771 264970888 353 230549430 607 679493267 499 161715784 38 81113741 980 971540635 720 976504767 740 300091954 428 204283495 236 75183850 883 219804292 416 50590407 265 468836209 354 891461065 594 694054839 986 947630543 474 346597169 413 586120443 736 348966781 974 427597468 699 119615 402 89593417 62 257651960 695 216972092 302 759659799 796 773457557 924 633007253 929 917086481 992 186094693 922 691368741 754 963429442 835 822370547 519 490277579 554 20378073 583 389385056 232 273583730 222 620370302 875 87421785 47 209366050 515 23407897 575 725235667 641 303924823 403 286780206 754 66930718 500 674896475 786 212018012 134 452659883 853 359054627 959 930272372 63 96278831 784 309664348 591 445325194 732 118490237 47 690886718 214 320373345 45 542371159 165 646662254 260 37664010 342 477957725 310 16689828 948 916622102 655 254121383 232 642384728 732 335257068 919 48799490 210 393365638 657 676104399 233 518853162 719 969391645 248 149783680 646 180796090 961 445276599 811 957090545 189 983151732 81 706405496 326 71174382 805 844570408 761 321327951 630 53201260 388 670485268 741 918071975 159 483043506 666 43407845 860 208513292 36 528275346 159 945519576 315 712990282 844 916618528 971 680660816 852 370498033 279 752041496 492 544550173 900 384075948 342 133990369 498 802260065 10 826698795 753 785887828 886 860432562 217 698073796 582 776636692 265 830994854 784 860752898 195 485106482 771 218355984 223 551702784 284 32484933 786 968036715 512 376234481 153 315511244 273 547227660 747 414735335 728 186953662 288 709003419 747 763045089 89 320623139 398 48929018 524 68144680 605 367264400 761 611476974 428 186916025 997 714714974 428 45511468 93 577144923 209 199383640 612 380703406 742 178363345 913 330257961 257 556091322 540 108141084 348 88891899 783 459151615 193 866307101 398 988143004 759 480338498 625 571526532 188 935278260 862 276535649 740 977905792 265 288896457 648 789507491 621 89980527 774 422880211 624 481400674 992 339689349 659 460022117 52 186521592 971 414647749 375 34561881 532 686017936 888 946667488 585 864146900 129 232617708 281 25368605 606 459197489 84 331037198 913 206294817 137 643463614 500 671070604 451 190617012 76 232265978 512 581109996 744 272591401 819 826484529 92 38300863 716 532580052 240 470313681 685 787100637 427 617353464 852 155984892 533 473624052 685 241554809 674 218757208 103 753666530 26 145938234 606 475989956 104 334735183 294 221458466 352 800284260 366 817942981 739 198013298 983 707187109 514 464513732 999 272110045 659 11997595 146 409828345 849 792177501 416 621168683 148 837348441 45 632511570 553 971673712 481 522941061 84 789661243 831 499299997 257 911055814 226 463945162 105 506666656 495 138779960 278 914651170 700 321723744 80 927406621 867 135828867 240 145757446 430 784467938 892 135223600 723 296295057 478 956916263 181 536811303 916 100800480 78 924889881 198 910092294 965 471544012 839 583233532 634 413117916 155 341153709 748 413238186 856 83963905 345 660088804 363 84625352 994 244203083 486 501729557 893 806693497 840 835155480 608 349228392 430 418385002 705 973485084 584 587920620 91 300277963 214 374495732 158 410263957 623 872202150 687 323603596 35 692088996 805 690130101 822 668428967 912 544021509 451 110340877 240 232225302 373 202480877 860 897193671 624 44601253 93 746758145 878 472655113 360 199074317 210 445409257 113 839441790 238 527787170 212 918459098 986 573873863 861 101654563 72 387740732 564 89817091 674 345671400 239 376137106 170 615672850 470 35740944 309 664763465 126 313628641 385 501705831 131 819994171 305 99724202 705 511469145 512 832199368 954 11164558 306 393502564 537 621643218 308 213882411 982 883325129 405 308836746 149 49292373 405 647166208 861 57232578 241 659073503 517 177279393 810 607164204 47 903693957 772 446143566 233 432841065 821 718640890 938 66571510 354 751971232 773 101363374 62 878974692 858 889626519 634 479729628 694 238360958 526 243084729 331 313301590 200 168361146 650 914925883 229 471668772 260 587213774 688 945151808 913 462093835 934 216622339 160 196975546 965 64755547 998 633463436 591 545222626 844 356524755 307 659138285 999 934224302 861 72343479 596 841229986 642 162142964 515 295758411 114 188939397 722 776203864 670 382766782 822 625259335 422 147679912 693 547033836 161 917207828 269 939379089 696 50214931 799 172402354 53 361274424 729 550399881 861 375522322 863 862884166 920 267153535 324 751177847 244 684874891 960 342448695 595 498190542 118 19632778 223 251112298 459 130012117 915 208528954 155 921887178 572 218468725 524 818219216 932 171362092 83 598349875 683 518818561 249 208581853 109 866825320 726 946612942 362 490975222 610 803555821 179 703258363 547 894952796 806 624897366 343 228659218 657 461210823 481 216057977 239 229759445 464 565646268 994 468655907 863 42327875 612 376621116 363 989789884 272 275176787 230 49649505 374 123028368 290 357541364 743 161734083 765 339401823 198 405723964 355 47349626 756 327799860 164 246771894 638 845228292 345 563705931 176 26621066 362 870344501 299 472849452 877 776927484 783 93377838 170 965045984 975 360406050 812 969294709 874 235559529 694 871153225 765 916717206 824 368600363 870 765806017 753 894276123 976 546348017 627 551382523 217 644998713 803 608575847 857 173701776 460 946794745 756 682210565 573 573156469 639 18436259 536 50934149 390 385592491 971 378550023 942 941627819 851 294269514 130 223093322 284 874231229 319 524621965 534 597011483 612 336866308 646 757447727 362 686844183 760 360752004 603 411551673 471 297565483 470 879111900 138 720555635 115 124178509 675 25364842 866 444611421 482 434331701 83 617898201 41 630377149 93 279227674 295 306386903 292 22193868 973 807607234 244 230302280 711 822342308 721 106726782 86 102957496 104 451562931 2 174740849 223 259891442 850 691718118 801 976387618 805 114874450 203 181724738 571 234381535 907 470562934 761 675525808 882 585104904 542 166075720 18 917841743 274 730881541 286 841677712 36 605912723 216 229138108 22 317860150 927 617266392 86 208944050 971 118942939 992 405090276 488 593663191 986 67868856 388 896027911 204 16384569 929 879050582 595 613975386 306 430012463 132 203624522 299 782344423 932 13073360 479 124601872 577 911797379 286 895315987 307 502701826 256 282815833 729 697196394 261 615516888 909 194953884 973 539546528 863 801868235 532 58651143 961 944730775 33 398436989 551 128296603 291 627173838 903 816702681 415 299697557 613 527903015 563 459112850 674 726149865 115 535203889 907 453142762 190 39941355 146 202334410 650 137763814 451 439709483 14 757064288 753 689338600 330 581212349 118 527317750 833 788952831 143 477672000 119 857948698 265 977800566 927 571025678 311 548818044 652 596338045 738 412667836 296 869144782 426 340268587 915 670197620 55 525529221 270 386197307 241 677101115 67 436372251 484 207243201 564 528040074 475 616271119 830 51321677 777 808384848 659 925960872 413 526719531 415 203718214 777 568657888 937 938502018 261 516551725 687 167159030 106 625336516 343 6186203 787 54759910 753 990844335 743 615669691 627 106257433 467 585246459 973 2854620 572 530282431 100 889866475 944 714292808 954 595679835 830 389059895 340 640483557 715 530048433 319 74868017 331 653886162 587 266843061 109 873606878 633 627312834 687 454838161 175 343779825 192 87789350 624 632344426 811 306533190 76 745674202 770 489645787 306 896308852 885 34380548 218 258016249 373 357954578 502 29484738 462 87656184 674 94206346 555 29983742 258 806843177 253 677943185 260 432184978 207 979492971 811 96638093 784 532894730 83 787808764 328 201715542 599 810852360 557 327257512 160 821470978 231 801367609 520 414072761 409 469516508 171 844762044 928 900667470 602 548256529 205 863387241 632 968511222 73 204262934 854 368726217 407 677867938 704 178745882 446 820428486 990 478245061 925 342013446 765 395515434 739 949277897 379 488782673 728 606406384 691 843935295 998 896796394 124 863619070 592 100249521 527 49597043 710 482070481 285 871999046 155 981507543 297 302128006 884 53176163 738 189676742 943 201393613 111 346437891 235 146370223 316 241249895 783 945491316 104 844399204 487 992648665 216 979670919 530 278509188 497 842061971 939 4333354 139 139453646 400 974547469 615 575672668 942 826951072 536 764624992 673 507256504 772 566950324 255 923363487 48 668791785 681 59033492 497 351273876 607 826431499 117 75131394 172 527329851 92 675115304 584 479008639 113 102971071 506 518154240 253 418179149 119 123242222 936 666172318 262 547553383 546 565484213 757 128040728 359 908242784 479 813826612 731 841171119 480 93419986 185 804317938 552 582124683 4 66232248 151 304485628 875 22965628 414 385086629 721 810728812 972 184417166 277 25862601 918 454537830 267 400245356 169 237065257 595 78660970 676 334901000 314 139199999 621 153396403 198 296821963 984 83334672 764 248637763 839 155671472 920 769757647 378 920278769 853 986372248 117 672704658 829 627109249 115 509242416 476 415118907 620 947642652 359 212398015 764 721747733 281 108754159 431 621264066 706 215840566 742 206260488 766 193677132 283 315953170 181 372992664 344 516761165 43 912151342 198 157407346 820 6119902 455 940795407 442 934770398 512 624757068 69 57019051 674 968075731 554 503991041 279 175293217 145 423889970 499 925077529 560 256313567 370 401191638 304 92517903 100 473157743 385 696144576 814 907465191 229 558209488 489 186392074 139 685057697 342 989053195 782 19010675 609 174650729 631 646677177 921 959796505 549 592868918 347 500799416 151 892630311 721 991027464 328 779847218 984 357372097 195 633355306 826 173220931 622 353713286 22 192838204 134 408137622 911 811374289 426 620742846 788 683301890 500 647134730 487 829932253 63 677539132 907 942414735 742 301291947 648 196129688 330 629114430 107 303918496 702 671600928 698 106348383 230 357275190 702 320852724 886 262232964 685 383620749 899 573742234 234 129865670 580 484495997 299 125695924 319 713310654 153 668208918 477 354526335 42 621675864 728 88192438 742 782135179 656 327289150 424 493964362 395 940053983 807 247569792 610 564226899 386 770635625 29 20224878 328 914579406 122 695465797 262 765881350 567 384336804 464 102914742 678 173907230 85 587612923 281 308783435 704 738262051 521 4287144 345 912490008 73 325045531 268 764377899 446 976351693 860 613726482 664 420552806 223 429640359 511 174943552 112 901093490 124 746145593 867 180779951 246 751377563 640 867109369 822 558309829 189 238489464 896 948054946 843 48970067 637 666279006 271 537476715 29 681608731 956 878325325 464 467162106 815 837246651 90 143063161 764 52759294 794 404717194 469 961588997 900 687516705 816 361114114 225 900797694 173 385858778 823 415533403 63 235312875 693 133365320 875 563484107 153 797431819 973 464181262 989 425202269 277 757186170 104 708758426 288 520743484 942 285509266 979 253109504 826 425891536 34 970076880 656 128367161 421 3263173 605 334175749 446 6292624 608 915967762 17 988743641 117 349446449 27 498694668 843 659281207 594 698128883 270 861007378 179 411778634 922 30634430 531 385366121 160 44535824 999 486600624 942 23673292 237 97391565 652 871125563 681 505554816 808 371878606 880 20128829 51 194207224 283 367904654 596 415888606 223 607010049 395 788507658 493 965119869 738 701837299 65 741896760 831 989746217 265 763361509 288 124491004 537 319987757 788 192265035 764 848654484 216 548563081 159 737078718 468 417474771 190 182198881 807 407081050 985 255207553 15 884658683 957 782616317 934 396365428 683 708317361 10 706118957 482 227709732 305 639074340 605 129339566 163 745962513 310 562710428 101 128610740 997 968334350 990 957418707 694 740071661 511 204708794 635 575335698 8 334295380 235 588616484 939 157679626 600 532585816 983 834800681 864 26566323 74 916764816 704 766122423 85 489229208 748 930618829 351 470542501 204 625095748 451 327050656 604 597232814 890 4671396 329 712251534 621 738932334 246 912722559 983 710353390 546 492318115 326 986976123 499 303259166 397 766070672 871 477113545 928 695860927 769 429752204 277 464894948 702 942811183 341 834259189 172 323547928 498 204720821 407 14152728 561 262124156 191 579499655 526 322672442 471 166652089 248 143762571 582 769660332 780 661313983 203 574987557 604 648278296 470 643123375 173 571351893 763 479964444 596 862202716 117 815941348 375 611141540 60 421050415 293 37411582 660 549436750 599 257808445 668 54112313 718 548145311 63 821669468 953 999052418 851 436575333 603 418784063 59 399333969 287 996554233 274 177193615 246 294668234 113 828090605 6 276644234 648 264011529 852 883071825 430 409990711 934 911249562 337 415664598 311 783478580 105 479893518 563 935511335 474 947731626 237 667550859 177 790387110 133 309483817 827 571532325 3 360066769 620 281924326 716 154584379 718 379123956 82 436644413 221 797358914 822 455927467 543 212445789 854 699414827 953 305592933 97 537249851 156 350513552 115 464277993 553 866269109 14 313095586 214 454372364 76 72693429 153 137741623 965 248104692 119 419403213 851 268973067 356 964318912 733 907091114 315 960426169 580 426371501 404 161202600 82 982438663 910 588203126 292 742890302 293 254108237 139 122910851 223 326212566 655 713981465 462 590553339 357 825957244 490 94790864 679 513949123 867 209722043 149 773338550 856 631763430 58 886698805 752 521523634 588 207991542 952 991518015 26 944366570 571 797499666 705 429487382 550 162774744 818 583530780 716 153211100 199 729725644 398 924442754 24 618690672 225 60819103 322 966265555 812 483554618 411 314839528 235 446733652 320 897144759 551 846342438 712 151352123 50 657820920 35 564056916 753 165533878 527 254901208 508 96914636 229 9365664 881 649165317 730 109602236 345 621389800 190 930339248 40 254296869 968 270163797 611 931210741 83 151984054 11 218385337 551 279009860 839 565244807 565 30575791 953 670923835 67 239622794 169 22106709 429 393150656 640 769822983 411 84714140 45 389224214 232 392584 328 244485045 872 782584658 673 515640881 586 37167445 718 236546877 502 346285900 395 773585791 12 122834975 101 205750914 687 468541590 545 801913532 971 203836894 425 600549594 672 667133888 271 419625961 45 337454598 874 677501156 480 302571770 726 773918933 932 682013619 708 676900130 683 204636763 502 548490606 106 849033055 863 317895525 834 133988451 318 286882173 24 24450745 212 728897545 623 360594301 673 142434805 329 986446962 45 59375369 273 613529778 563 846542259 519 348171127 208 448133850 740 678185799 515 911612708 639 833341768 676 558627640 221 774435266 360 318804408 901 978841094 633 866157591 795 659251335 145 766247710 414 607957685 391 314725187 217 238054677 865 394099258 61 905285383 609 382792945 296 78590639 203 197145047 683 984394694 931 471205753 275 412323878 113 255220239 99 934022097 177 248062204 335 148469044 929 435528486 200 730404596 142 743455890 44 352920862 403 159833663 909 989151161 983 537367918 946 692761430 99 295587996 852 367242037 856 199103754 190 574511235 930 297165713 114 561374727 486 851169059 576 938563003 212 994801827 369 96446868 986 147127106 851 230649027 18 478177561 865 10004701 828 170294562 569 811757897 554 597138394 147 147754990 250 836809175 444 727589520 152 616826727 5 68447422 808 141501546 437 418259210 989 142671553 996 686716815 654 347753879 822 523500705 361 123443360 41 408462915 278 747956881 798 140241669 177 718975681 583 701173386 330 798946176 720 203338093 91 866429975 920 97921082 523 470164922 81 463257855 572 761868062 542 250503819 441 366405809 785 330382926 855 296067847 561 190219411 843 874681751 99 222716804 916 595428526 202 523429195 691 728300968 926 601022214 504 380364518 800 78926252 680 656381987 164 508291659 759 784880394 745 507417375 42 487260496 978 5527881 740 291490163 403 186807187 684 354821337 571 179594017 832 943503870 544 532334619 408 532960206 640 828786759 474 774676195 867 90791754 602 753197662 353 565127678 238 909266133 264 950515532 829 365384373 681 100673472 38 624533075 383 354629069 403 757583682 943 629984235 476 302328157 713 943190520 753 861516627 338 857491463 651 308194348 674 970710162 684 863404227 627 543617118 262 910915392 169 343835323 556 608526809 473 655937060 610 140633204 964 765609418 81 659373028 806 835816252 585 985637356 137 493790815 604 245454571 262 323883345 608 234534554 923 140695549 584 592747957 182 408957187 950 631813430 331 986984426 514 373375163 108 792332730 795 649259095 129 25300574 144 128730194 149 295411657 193 756866079 116 73706511 68 796312168 772 828233230 422 983834001 136 595761993 935 211820022 25 367153159 854 417383374 6 885112854 805 650818725 63 541829162 333 265306433 892 724903008 743 470983643 320 579655883 533 327238740 785 877898361 79 267743124 760 224259836 206 89415390 372 361460773 869 289004282 871 363274805 825 706835284 891 474610733 445 386933585 987 803431435 389 127336642 542 755887774 151 228642682 796 30830692 550 222782846 801 123832141 878 29718306 667 160222564 691 831157927 587 854175956 469 457671240 412 515163766 804 255037601 7 903597212 512 880806264 288 797135304 498 761381504 899 24090716 656 578553406 213 645186460 872 347466690 536 150265529 632 452576479 572 992668051 52 13894350 380 884959535 571 291112288 72 744356092 715 226715166 67 985869870 741 223902373 11 153855735 359 948433491 640 483538717 63 764762503 585 290524749 407 515980612 705 733134817 862 145991558 357 832320190 807 447520161 427 341557723 308 440424198 585 478801656 385 710112681 191 299529164 822 510950075 286 531443432 10 740129240 383 990715092 312 424509863 96 556981080 785 668427828 527 342926070 993 767036080 822 422375943 158 565517059 626 494041883 573 424842081 189 715169135 286 254187407 313 123996816 41 838336283 70 740269495 890 827001130 579 505775429 867 212290886 102 21315050 526 285978397 490 833917872 537 73066847 608 219291552 597 547976063 294 157791149 606 140517286 541 81572828 43 796915678 477 892724968 633 623322277 855 467818916 971 510368553 434 861974579 315 936286867 56 245919216 314 476335230 446 574368308 395 451473577 273 273843362 82 442971234 48 199676848 227 244508956 121 632747594 835 62320345 712 626645026 733 618483533 302 215280841 414 874708089 212 450916681 802 660419452 55 860294276 645 111403133 783 558509811 968 267269952 996 718675345 392 107354730 889 669931647 927 490037489 136 791694279 418 334364170 20 977093761 977 540957672 848 623589498 890 733890602 837 923151912 279 775844292 882 154825690 780 261197779 278 969973077 454 980948728 721 940071759 618 984172069 306 261324698 906 791969752 7 406336478 757 956310495 621 932905576 612 914212370 695 547465309 796 577292093 168 880315884 222 639595553 963 661723623 707 802997470 263 634466827 410 178997470 572 628275859 6 299216709 144 506157523 849 87334318 181 736297099 661 959115467 234 422814106 49 967219859 711 373248166 342 356682030 291 113771733 697 306824972 185 921084047 645 201958434 286 437266531 928 515257998 465 422747604 915 31725779 551 140314785 754 10181635 591 466624425 662 553566473 2 381752519 956 684320966 587 395965769 777 578632307 299 272377208 961 11797200 801 786871904 839 556026734 954 323040305 489 319646608 813 485768513 512 167615046 259 152567823 457 912563373 309 55838610 146 521068254 384 236300179 207 88775107 878 276262561 316 823026491 200 814446994 496 89641214 680 708883144 632 20944940 851 755017507 615 17916808 99 793199160 48 244942060 149 434371456 412 83215872 948 262193989 777 865207074 657 473719563 240 47807911 422 624052821 70 950375471 740 173921294 620 49901299 373 223786203 409 811529962 408 593639465 671 741627142 328 120645633 485 913999247 904 667672459 302 226614152 595 201833840 78 817122145 798 920448939 700 710638088 254 658867948 636 802221365 617 317526338 239 566787900 367 501729089 155 347055438 294 679710267 910 882848478 530 367560013 273 981963248 891 424271467 538 441059869 720 89891169 862 404560945 427 257552009 174 118921858 133 436588268 758 981841949 915 788703410 555 185302867 201 596734339 970 49273962 979 908678006 623 375132505 868 705109270 16 830814771 855 376107785 946 867539287 649 285779057 265 977238069 546 460387629 578 703207700 208 952846087 614 373700235 65 617179963 893 588686771 640 526383876 633 459640138 560 453748671 390 350061720 23 522949343 64 102617626 260 247257654 635 946090845 513 303250722 548 503709385 484 666471100 397 636536934 238 598712138 238 886566247 136 812260471 979 697567856 606 716170065 671 788236150 688 301078117 849 848917301 918 260529090 374 70417131 536 555876678 434 272199719 796 251732084 506 627248697 805 971212328 198 240698868 356 220446866 504 200862777 337 232435822 137 988326729 163 566820619 756 543069520 570 146008473 987 147011328 141 288568884 494 541507461 3 197170445 932 531614911 565 903535061 81 222536686 905 409450772 102 900768360 117 802560062 599 529448444 631 275980217 677 67537808 743 578130240 386 611479443 625 102721120 877 281325073 595 115305972 132 383273754 805 559077428 812 214748717 703 915226426 965 390251026 710 931172534 459 925324198 720 766966173 175 104208325 304 827584413 306 139549981 153 213712857 482 126187338 781 927346703 402 115015547 22 817453918 862 554698705 54 596783164 989 589012793 728 600490735 862 612340518 274 223807532 184 296812292 202 551245898 877 269361505 200 804668177 203 819795165 231 165833977 718 357574428 717 466962902 767 434466680 17 627417515 330 488979311 432 231764718 171 986607421 833 918922569 661 68778639 525 565587787 567 388005150 325 369913908 435 93758239 279 578533366 907 837440138 111 182078995 354 324541017 855 333499925 387 384490942 521 901374244 400 634313613 665 704310449 241 894725955 729 209232333 75 482061559 718 140531253 577 355031549 790 495085173 23 679719204 837 347221763 713 827386293 922 968172562 406 406909300 114 707541207 464 779040641 756 285071158 419 405366085 548 32975243 253 462302331 919 327622981 988 731659698 838 405229871 289 150878150 959 58376903 63 247293960 67 251610736 911 779631376 253 250129756 806 812677603 431 140362256 870 594290658 57 372118635 322 852885843 161 470616851 687 540598453 267 493054017 247 247090759 818 685421038 530 74396421 607 996730805 654 934206870 47 347018613 635 885776031 371 280660520 808 389374328 213 406017551 342 328409131 306 490220125 164 268088705 503 592805474 833 777966323 248 875152538 734 475566513 780 781550196 712 240526738 588 731737458 19 461803391 874 454517395 897 520144587 355 784643042 869 322816619 862 102139506 509 432667063 109 561623948 231 301444915 496 261138624 687 797060852 181 220640210 642 675982325 903 524382823 334 868670880 31 468507081 81 457414174 678 71930646 217 822748347 855 516678359 215 544106659 428 808742574 13 295081179 382 427971286 436 469759194 773 635910140 892 988787754 939 660429534 649 348968561 652 284806896 350 550654046 595 839819782 857 6599165 485 829445746 914 969330473 887 652979876 510 894090209 663 483331197 98 891956575 462 645836290 559 540466521 64 858801010 258 981356986 834 290032551 18 128485675 325 142138242 799 499814676 290 675110375 933 641028838 844 99625751 265 233454218 401 786999202 837 179842574 529 375570284 627 888363301 531 599448712 99 709166123 681 941178113 583 458070403 628 713147447 546 833487026 988 89895813 642 722882842 480 873656157 208 591368833 448 780791445 221 765551185 149 124349173 665 10611086 305 284881344 767 457760475 859 756614422 830 334661593 32 174278804 809 153168271 764 236364965 224 376201628 198 692760748 308 5366136 310 808538280 969 426545459 876 904070099 838 311917142 327 887051822 160 572306463 236 584974796 704 137601866 421 569854556 339 781578381 855 761109744 285 340775669 635 916468883 984 295516897 206 187865127 228 7157543 273 324660585 29 719625688 51 82769670 707 913409028 327 638389606 639 115875185 906 857867429 586 864231189 683 871412311 51 199479564 247 821578241 159 917167036 447 823525534 778 726839835 699 575943482 216 900207842 572 928285291 222 497694580 982 506605973 929 69725678 565 644582469 756 190110186 45 289733358 90 12306231 81 822242714 187 326465002 707 347565737 93 658472140 131 695480849 981 70896332 597 562517939 338 936533914 629 508264529 747 643150300 472 700342555 384 78421672 441 971381604 566 303180533 243 488104523 889 568831947 678 193412236 147 297317684 537 961991222 543 536285134 25 23890793 287 67040995 585 957051759 38 84988555 144 472182522 510 250742675 541 903563819 950 314947507 259 976789593 955 566926298 272 246148063 468 768081033 894 388268224 660 600654852 435 132733184 973 631344860 973 32324580 983 355509610 523 595898481 342 635161177 316 534614206 181 881111760 6 690761249 867 557259321 45 520740306 998 600010740 7 622094744 289 133421176 535 597805023 412 656774015 328 491014302 372 636906344 215 223469694 231 656854156 720 826447709 329 923041400 599 143036450 285 321927894 853 505558020 481 702332805 503 181000495 72 346325280 252 271339195 839 209752103 295 520061531 247 146932801 998 6433883 788 515752695 915 156271078 314 461110992 928 58743066 518 343127679 409 697948290 397 450242883 433 656909402 342 86489270 930 315868133 192 256760210 386 752235416 826 104689601 602 186409337 787 206655849 617 866894787 457 643913763 862 862958973 806 444494671 694 671177086 236 650393750 329 305621668 781 221909967 965 436921451 544 537238263 166 899114382 902 885173644 137 801588792 947 986706644 962 639223001 297 686873162 4 894951347 205 232200592 487 957102331 84 301535033 39 745635276 715 994869492 805 98300026 24 823705876 48 305638741 127 321002812 867 177249352 657 679985730 78 858981730 957 469915258 376 630182131 261 47035562 977 856539091 496 86594106 402 6809022 984 490256690 432 931989770 815 759448616 180 949299505 743 946120898 354 295237919 541 835599022 591 738639492 132 661099920 586 547796123 793 238754732 286 339382383 915 118748693 388 774618253 436 220699111 89 729438579 828 716378484 321 432215589 598 345121667 990 61972861 178 788692653 703 604946 568 267535834 979 347269707 90 664017248 209 195305041 665 654874952 515 58410690 137 174852641 251 9676844 613 137818649 573 454694854 922 761668846 136 941738522 389 734098125 251 724625760 122 517694888 843 675315619 319 402930620 154 229133744 719 165722442 676 856112318 134 578327983 354 83834014 401 598757457 831 493608374 848 213853913 884 57288830 544 161789199 339 393674195 612 295112470 586 163584433 863 694030363 136 382166752 541 69355426 870 777480877 644 1926914 515 440855668 751 152817140 936 943385769 286 634366861 851 396551884 103 266571274 770 631269864 149 959608358 644 867615999 946 924527810 648 286769142 378 419915891 677 824217009 737 36550553 320 529264180 737 948096059 407 590331800 114 85928461 611 790150269 61 260116249 411 670782247 308 82219355 99 411583638 844 870149537 9 364726747 916 162134762 800 317142578 745 393683095 633 737042585 179 670976950 498 392632673 919 923070582 120 428614854 49 397931149 134 80738426 287 69167985 499 455989461 410 493614500 588 110746864 530 904986102 681 129156340 644 577004322 189 184449926 997 418491031 986 474440356 532 535180428 486 241980957 426 855116735 850 141293752 852 86533991 546 506335369 695 764136250 535 5551707 648 931115854 190 885299189 469 812321434 717 159713605 128 714060757 905 259438946 329 713716024 154 341546909 640 700963595 620 116350578 161 10147793 909 602299969 654 534064670 977 80909344 804 614548496 970 615315442 192 824355922 997 680787112 438 947064779 615 259555614 606 96811436 481 763217790 186 407777774 941 122342307 454 465491024 52 168230270 256 155813978 799 770279829 824 410945262 424 71339026 24 178593892 525 563628923 918 288450212 804 764250079 809 164558980 385 852032011 342 321998756 368 460915432 403 874225979 384 511512187 876 186025134 927 532510744 371 147244429 573 567093587 708 429400938 255 18333215 700 922462573 241 160621735 766 463240052 333 240236482 600 255551694 917 961982190 348 220488255 769 337805054 970 418236425 301 951036792 39 343932073 32 387580278 525 508093952 493 261623103 662 29332799 211 170311948 462 992527487 701 884195220 565 322209112 995 925961745 883 832304746 740 566215306 253 771043539 695 817706039 688 846243084 321 767844412 169 802002690 538 724857930 812 777060069 210 718813513 185 625525296 581 222201691 607 766413402 307 159218573 127 238064086 284 902523198 180 640439486 838 835116303 137 668961878 256 816316651 539 521310200 478 877886668 301 217345487 829 722487680 895 39235938 565 722394827 160 687704055 80 531269178 842 665342348 885 748156098 808 848982691 902 376271918 850 210720620 15 100057189 368 608481288 651 686278679 255 548853468 929 29886253 965 595904195 739 603828617 573 803340322 726 1029115 852 32458793 684 657605348 267 666314003 639 448943571 259 822509820 183 579611803 639 225385429 309 982220557 817 565356487 501 692376599 462 236632765 800 466363671 739 637846332 140 653815915 329 831077410 723 706415835 641 535299373 392 353964278 688 859189022 542 505988004 261 401303983 267 322156762 991 404503590 58 191544270 454 583372095 682 651456033 258 545082717 618 817637628 709 452527538 366 735686659 989 158079811 974 728205686 985 765603488 570 316341964 938 15140280 217 880275573 67 174149594 692 702315302 306 148365812 66 329423266 23 361049275 522 162880648 930 466776357 475 515509604 169 389185553 691 494170713 947 788574231 536 228962652 624 224843172 838 173703287 504 536409406 223 135244800 698 516212003 717 475441829 897 637507537 991 874557658 508 934492235 576 350342561 429 46026988 238 636609089 6 326567791 596 281795708 178 905513398 846 737267126 103 432940335 997 137078175 220 30761869 559 587288176 511 841910939 987 807963462 676 871074579 447 974260286 984 905341914 346 689163313 797 735066366 176 21136935 57 627090739 35 94462994 64 651739461 713 132905393 299 873723827 522 498742103 70 878723569 917 864620402 902 189607231 518 388099842 186 46651132 578 447556190 162 891164229 729 84116461 148 399624412 656 958127028 782 974644348 110 778569000 924 130475547 730 955628332 929 615567042 801 918782212 629 871110486 868 220309641 541 704327124 29 139207769 399 294853911 423 912253606 520 544487653 575 734304988 701 413466892 961 394776661 700 199062088 573 654196177 246 534095166 747 914946562 944 493518657 695 479888792 81 178054378 502 327386529 636 544841022 283 530657832 398 991790936 156 405728759 345 266459457 394 582707930 550 445049892 285 866317539 77 213841515 318 147476215 234 272245888 964 991944058 638 507832772 521 358639506 213 64956316 650 217149327 573 240522194 342 892647905 679 489795107 642 796355549 270 712685076 410 205915019 755 763794412 709 269878033 692 954139533 376 833751438 752 399667929 464 971243622 590 434116971 862 612699859 478 278278621 131 171953392 824 844442259 896 941188109 205 432651453 45 151420835 920 244635528 705 888505493 265 52449235 761 541823589 451 653311763 526 82654398 663 616840221 794 647038892 932 572188243 295 158449760 398 391292043 575 542475945 64 505382101 67 10025627 832 920465601 83 222201182 884 899128507 509 79429884 584 399260106 704 356664581 728 897859046 841 600074585 123 610326808 973 522989143 759 570314459 37 42361612 963 476069327 764 760699693 101 435500198 714 855726134 818 557509354 640 52997608 201 986056246 807 874302515 69 22044017 186 321721704 534 660583045 926 931796456 385 649256107 154 479306271 864 804493489 918 638628182 0 423021195 476 242661485 790 543445374 318 164862619 51 116688896 277 363266674 163 233145718 421 701297462 872 406283159 871 510555429 637 144572260 272 83424061 799 66112324 531 702282574 709 470359486 425 340777129 531 319613647 523 777391480 706 738302466 306 745334891 81 656398951 546 671069912 580 952018537 727 849782082 736 230257865 833 476983021 816 607794218 363 275789382 952 775316555 361 687780773 790 525413690 922 537182343 561 796540328 757 531507132 320 826075611 724 670480726 862 335233442 910 358145117 940 878367148 3 452599843 727 283851616 269 425058575 798 888066906 90 649390975 567 953472514 429 62531824 91 35014573 616 593216911 41 260296104 808 154989743 171 487568410 208 59009154 854 689200511 246 357974015 878 355256964 860 664397650 853 810548829 719 475921062 473 269239923 907 583457368 745 563182097 183 146885496 830 390607884 905 398578345 251 682164735 935 129953771 849 421354810 128 472958124 913 518952294 757 750930528 534 417497504 939 473480406 601 585154450 850 711275938 613 523951637 843 4502733 131 509316019 110 496511712 878 79244172 255 910245431 386 555025133 624 873758410 702 655103796 297 322588532 404 537103636 90 411052200 773 572532562 394 591897058 602 679051187 106 462321251 246 181929824 706 334615741 139 524188689 235 378154448 711 768182590 512 874310206 82 955964682 118 652633721 851 44238352 929 713447878 374 584280971 291 576610678 550 446018797 926 248601509 449 842657004 182 965816975 376 571284894 200 268107808 840 25411291 752 427786220 978 919440118 785 358054840 516 184598657 373 11294945 106 483505876 124 387657827 249 28198546 479 352129825 517 787587546 591 774972050 970 1291844 3 515434839 249 451204618 828 642676624 353 798013733 85 570849370 390 508792098 6 419596608 5 913803555 740 663627985 515 809449561 167 999418126 708 573791569 823 127338394 805 845823642 442 260949775 344 994277429 963 373766830 478 236061547 301 998834916 227 581502732 737 442095143 172 739549870 163 895862631 749 57266156 928 543891650 120 544998760 995 656659076 836 46284537 365 73042061 615 623860449 661 438051955 915 801306809 368 716031068 761 538212300 859 656174453 4 544265044 244 669842114 940 748905619 651 683331911 713 967280669 655 126679071 453 790609473 525 511418516 1000 324483467 972 64911494 760 332051528 834 2907668 883 66847705 265 920939795 502 800713097 505 875085183 77 683076655 242 420035804 454 833855577 786 238575491 27 471916156 162 764743716 908 519264596 74 73132293 877 530115179 331 922486030 817 627729463 439 759624816 482 433105838 829 835306714 837 185622031 723 748809261 398 735049289 197 429744517 588 909262554 834 315818548 350 421808119 681 242666572 634 645716632 147 697629711 734 624589553 487 902884018 1000 640376830 495 195619467 460 610683339 359 393156955 760 768581290 595 48055084 8 16960917 131 607899579 57 199647014 699 68668887 505 185551012 347 562116486 355 514615168 40 765247755 5 419991176 396 61508400 84 936164193 498 887110959 674 50544769 738 522541844 10 748559590 626 396445024 559 191022243 483 350736332 609 992121778 755 347743894 741 153845371 530 755335434 103 144057240 565 575750304 458 128385982 641 765302107 407 3542556 980 417517879 693 360421055 858 405386045 974 830045401 391 393812500 814 339128997 314 163213604 618 843360121 912 996929303 876 483372393 831 442755359 443 144248013 341 136752635 475 121048701 555 827437833 443 832006973 453 718090374 338 596578936 244 55011094 826 609878154 652 388173169 184 548965128 239 110625600 885 571754988 416 846464047 269 117164210 711 160862086 851 520622389 563 907377993 218 78422296 368 610251513 529 298888452 446 908572951 326 409628020 484 980039516 552 53876689 489 806348057 334 174268825 955 181794422 975 926417521 778 236790472 957 525980813 105 838955077 283 194934249 357 196859518 246 107667781 847 37396046 524 963060944 587 287589762 360 986019324 453 865708824 515 102966963 359 209318384 778 448230156 55 567122560 413 918614945 731 640203658 226 917161025 35 786446501 390 584355789 834 255668000 813 649846132 56 664616468 1000 859714886 483 690427619 84 885568817 806 791722347 298 790487737 517 957828694 911 668584471 722 961288931 616 431423270 958 547062642 545 820021335 310 720491167 613 382925431 872 153862983 261 892949255 535 350897071 623 869252860 489 273466211 508 467283155 540 170014098 927 841055813 984 645795576 77 299397783 506 329823551 936 397262329 233 644911373 461 67670677 429 95519162 515 938849438 936 767784767 235 714448342 704 89407313 235 469610971 657 212210792 845 614803097 638 607635440 520 740516168 983 481009503 630 613798350 53 889942917 322 796990997 653 109394307 386 471958940 944 82852448 355 439352857 652 689440798 352 808599361 127 613143343 161 616341000 141 491803485 190 559988301 767 168658452 202 700869633 214 235381895 152 63983058 273 273745462 63 924243859 348 403894423 376 602727849 786 846820671 18 444410936 760 207825970 0 474130476 827 6851094 671 43998481 378 386730442 979 48283982 33 960569785 409 784732593 703 171065836 366 74118498 456 404851215 822 431405689 48 111325819 265 976893222 141 837627778 61 388299320 873 125193334 265 394709755 693 606727494 288 91857298 505 919235523 298 790302477 88 574408308 219 578194783 324 375020007 674 434234361 690 485034157 577 512858628 854 656038549 628 75512554 194 106921821 23 666398657 234 519930352 952 297728279 795 438315943 409 205951157 650 18892479 677 366386384 65 943324735 598 819615947 167 137994116 719 476979296 152 74564354 830 827497810 514 112567739 457 251360818 581 226807424 488 183040928 908 689795653 286 65355522 463 734338074 41 613485132 870 667353284 881 555551217 28 266286974 656 568162362 602 85219549 393 848611234 548 856643758 956 119160770 986 906217261 55 438093944 766 513876562 193 153175086 357 958663284 871 49373164 295 53496595 20 235323145 40 448134762 289 842844122 167 63024412 330 546792442 546 230239163 893 29513312 3 290838186 494 425165603 346 539445039 466 103777988 373 30476783 673 292910025 242 379070264 205 137338468 722 11527200 370 446700764 751 842312361 824 471871515 215 875550468 885 884558961 719 163658174 794 166096618 345 672248937 699 13703390 136 935983300 636 67910575 850 913349946 312 340964308 113 682484133 302 963583876 291 638322282 351 624415624 310 329090588 387 470072780 845 260281397 2 409892906 579 617046062 356 627826235 734 491853541 413 409945017 657 164599627 717 322411978 801 625336400 629 686186036 677 695244939 928 381105195 726 55013804 31 391757575 539 625198759 975 638731179 404 616899497 931 372224710 620 711580041 771 649765320 837 25690032 954 192862215 509 721952916 35 443640454 736 455358564 411 352743438 66 964315201 473 871250672 216 302251821 929 148378130 715 259945302 510 570907147 130 242562171 180 224413576 404 613851853 365 977938059 697 706900208 267 870819121 502 680802371 388 533576982 206 130461252 603 209061066 823 211910399 468 331427550 96 814722804 472 985675896 385 788533015 229 980392033 283 243837046 440 670615100 539 586253825 237 422102035 529 930141350 56 995308573 250 236305512 982 568505055 354 391656861 690 334589397 83 290828051 894 985782762 554 140502751 744 867376106 746 763756781 346 282350723 762 451274967 264 891284137 67 117788083 578 804761562 220 305561183 644 76140941 688 298504402 34 992417793 462 208106619 798 327898501 475 246267313 646 398911850 916 181426483 13 713816665 877 717667610 584 520501031 493 159823458 425 796893377 794 631288720 552 756034254 737 29914505 482 86014290 325 400949495 268 119656396 336 676223780 46 167530776 755 872080252 709 852740335 558 329535504 747 329623874 933 349783073 334 352368032 827 494301792 235 288207741 348 164908960 266 777265214 361 252858175 7 812811183 427 722492762 969 345432781 569 309327614 602 861394137 803 137860027 853 517377295 693 594936528 743 602293770 769 534877211 918 614888334 636 227552470 398 756345876 911 637463835 400 928382388 585 965102399 254 82374486 328 393627692 422 835219466 697 852623937 322 343261224 789 677891774 829 847565288 718 5944082 605 448337078 888 787669560 945 526884493 799 486616928 923 534518142 830 56372362 677 525019560 125 865296955 662 832380340 57 588022268 674 855827585 164 170814507 136 674250151 708 286126226 191 830733217 796 211040375 394 115825082 537 882767068 991 215780916 432 710909580 209 643795542 791 526323713 860 293643254 373 346810875 770 932366587 919 944434397 368 665236961 68 43114877 755 68013404 935 653609698 462 353701090 635 584937706 922 377750798 380 875260158 412 104355796 482 590979590 434 230035122 767 703944207 644 994687304 128 887252898 582 857732845 257 35811500 26 202849522 192 957329875 971 171076670 448 256383728 954 630534367 245 781828699 895 358696047 325 685125993 92 153274430 776 750918493 578 945704665 377 451485742 882 910460737 164 518208844 884 22618107 239 430573948 806 903527622 700 666073034 216 600678501 573 253593849 16 356287583 437 697480072 59 987389864 902 738465697 466 535849879 67 642215411 716 478917535 213 431383396 564 426613183 784 501334397 953 737250733 845 891298420 393 9853223 793 554689535 382 533095818 462 290576376 477 60925710 447 606632483 110 502813671 534 788398697 94 553125669 8 814008504 271 476419054 638 389363727 189 648153241 638 72713681 101 148793050 687 255434439 827 964198312 178 239087249 150 197467697 482 833991078 596 870399817 261 252566456 502 809417061 761 38420358 189 467874593 872 760306527 783 846637743 98 490605905 268 636415770 316 132182314 223 309464289 222 187902493 174 463839436 611 80573734 958 460571094 819 233684689 353 321246136 247 226200711 482 875030815 496 667993602 328 357142418 219 673594117 905 373740716 395 376341780 861 37182698 804 478500648 759 690112639 140 160815718 759 531769462 359 581273100 948 67678279 568 262387787 530 231048078 76 873973580 13 177861814 502 868118208 227 588840438 579 714700979 55 87729452 13 334746383 162 570845258 33 483878603 533 174407264 622 677245977 936 966549393 312 318010549 768 816690008 856 260177241 191 801164329 9 214793198 712 37834635 658 891070128 311 866081468 968 926410714 567 766625978 458 716837993 869 523782817 54 149735216 304 769264360 634 116992836 516 735625681 213 784861967 860 15036058 624 419938833 313 279959961 432 988626695 503 133104676 157 722151563 70 160229822 783 584443614 811 227583923 933 50155989 463 6411234 218 270778747 246 390560562 713 61063957 125 829081484 851 249603503 754 90708731 162 809221548 828 285053189 222 629658753 320 562041013 500 179453394 146 762657496 535 454514260 892 922426744 705 610000452 452 830567678 973 572030686 550 698567242 29 53797847 701 388131255 448 438570599 614 382922668 476 283419472 972 770971855 48 309152821 535 957885340 842 291035628 845 463442762 700 627909245 550 353399848 198 242697884 398 660785263 855 914952355 762 533541753 215 862446104 433 410804545 16 280452497 341 992967621 10 336410265 630 350103767 239 238071286 792 968410013 799 414154569 791 556857185 952 488007880 440 652814721 295 631534857 101 611480662 112 140180009 246 894916495 787 2513818 353 961944398 933 737681081 23 631336493 625 482293963 511 874594911 698 926472425 867 599812969 439 604589313 333 860253307 553 402542743 133 719040725 507 778356873 908 13491950 406 137003828 728 668678377 341 621232154 752 737568402 218 843022163 534 252498759 172 890037025 127 184318724 75 586914866 268 643363469 283 314022860 784 855839916 328 491601482 954 442426897 736 289321085 399 360598858 200 336548372 176 628432898 474 627068250 828 977276513 427 88859776 858 139587884 980 54477037 744 585760196 845 211710705 809 256207488 229 586131578 830 998169953 371 725188932 611 571196004 810 326102632 431 905034313 512 984747447 827 914131265 651 616110543 17 824976514 260 900014093 207 827424617 950 273737592 177 52160957 913 28056542 5 949240796 260 296446971 748 206186129 701 147902041 114 334627398 968 215207428 955 253473759 451 275451753 440 437812101 238 312878800 61 624952362 931 385903502 605 588381889 636 495527071 527 528054696 98 313504137 750 841484856 125 921261595 48 3857205 737 767540054 828 871296244 726 84080401 428 290233998 627 376185856 281 779931673 170 948372909 204 618919052 435 774606317 919 279507273 379 845370449 846 530021760 868 635337813 928 704584188 358 473793904 711 91459315 548 747221529 169 293024578 807 788832409 976 435541322 763 86840058 993 634157373 282 652590963 155 282852694 342 53458938 986 465260245 776 749035552 876 90073876 725 167706161 567 207546296 878 473702455 267 199133487 190 905724239 743 710733784 160 701915850 975 201091853 511 39841283 179 962471816 162 817158401 111 843653982 983 843748086 79 5941503 65 997339902 663 572592942 407 216327594 385 988451739 749 597825692 304 912068998 393 711591551 480 940735289 832 70614803 603 450752004 767 934914887 354 922608196 337 188815889 473 805096010 460 968299316 43 638516983 282 750814435 622 593948375 605 483891522 858 97222450 84 884407389 581 300408408 887 193737293 370 923744384 529 831549635 970 743504556 571 73820957 89 795426345 627 989660014 425 288828093 119 532836371 203 610525971 557 341948910 966 374696514 546 476566669 241 658580298 132 951984145 902 901934078 147 635958339 847 190233223 323 51325064 876 346598875 638 266479350 266 609788063 957 966874837 655 833200690 134 213747076 779 299288934 410 420315019 497 954936857 600 616867123 576 288815559 285 793932001 205 369530797 391 995222104 340 721116223 846 321347792 595 983720422 791 512318505 767 66654293 636 190252127 56 221040815 988 416132372 154 78755461 858 143751623 640 910424716 621 955892470 111 173412027 48 812719796 670 71791082 769 840198028 615 949320351 295 555029911 128 968839274 536 960450713 592 407328466 437 630366709 809 249002980 22 234025819 569 110974047 582 995385667 502 932140996 918 483575893 201 228280420 178 433786427 121 44361983 138 319752578 456 255807403 543 234894739 244 381791409 5 710470915 18 321076498 885 843802786 731 925028671 224 892015628 491 798537548 179 559017139 403 922440344 229 964836013 138 222293147 468 663330104 668 887775216 737 545451270 494 243152882 236 829175212 727 115621774 343 282917205 120 339622121 505 950185827 311 599894101 629 163868012 952 914635821 652 914574998 317 844672927 49 357919873 541 70053191 49 53534703 361 925223926 31 731435477 130 25364956 196 983737005 448 347618374 476 50494731 991 981411271 974 69074319 816 872095879 626 211533767 572 350662040 465 175456756 149 267301948 441 502247688 771 544002296 926 524113254 475 158715546 734 130962692 538 513508553 381 267833289 188 388605795 637 351782322 396 149752750 778 627532880 342 913305459 427 933578813 203 970967260 953 745809859 664 425960564 103 748068248 458 165707274 291 519591487 431 417190319 481 104438089 185 487701432 994 596842070 824 539971527 194 747012566 550 466941295 283 628640499 721 830872624 967 754875835 821 682852416 382 975791071 772 772518365 915 370972676 313 27840932 608 626063125 672 888090965 64 974891936 637 357034308 580 753634249 922 839921582 916 327894589 399 30030913 992 605409863 647 974278211 890 970037093 724 654355592 968 190085093 751 934406880 143 995987303 147 530572880 668 652949131 430 559907092 880 932770896 246 494730905 669 764924851 376 203407099 74 867763366 813 172017305 731 286042078 848 814386997 410 760197920 61 771178160 940 249833843 370 852449161 321 863767030 855 450627207 476 112338461 248 458800311 896 609497724 199 384259271 70 488456063 420 853574815 904 240921603 158 824433542 176 741628898 669 561057339 877 365499153 594 703148656 271 992748445 115 476176340 46 913073909 90 33913760 742 748231634 729 755073817 82 215272177 535 999263140 676 632438927 62 357160031 129 139363423 180 625619728 218 959021479 910 327954890 180 858623610 126 297945474 354 493090404 558 114630371 838 574580299 632 185320192 261 876313505 50 827610195 517 571846029 452 605233740 814 332259446 296 787095148 802 478062963 508 306191994 96 335935965 265 37526364 633 790753640 583 592562851 104 245826574 60 54235844 106 735220395 148 42130908 712 366217208 693 554619630 512 786436864 677 97756804 362 434362373 471 556442678 866 932622839 526 142369876 605 778856590 102 342620089 280 37167581 417 889218111 64 395802683 18 707021960 936 885094441 616 181919313 353 119525197 779 87713903 541 570514136 177 637405669 9 391428035 723 391681591 688 940850778 947 894542085 582 715140731 172 38509219 904 323475436 33 442917995 784 458546450 907 901030108 316 987284746 114 122307152 689 542390858 819 435032265 760 600204339 776 61867774 839 610481434 415 652339430 603 421429913 440 780261156 456 859523174 268 900442387 654 761917235 709 668383796 8 389311725 249 548269005 546 496632542 742 842216325 956 231674027 616 839294125 717 588312696 559 174453029 493 648415025 236 558302218 972 741746294 577 178975573 478 188653360 695 419321527 183 148106955 347 578200126 146 281066594 16 9543719 688 243456595 428 505595778 768 167995588 438 25577692 423 324051627 382 414363306 551 70768436 635 238739136 477 536656086 92 106663598 718 764088926 191 440868941 129 39124971 698 292159258 663 48333692 670 193425137 224 985092828 446 371868707 921 210420292 955 717233755 677 179209443 229 845027517 293 329728473 982 205762799 703 391682231 877 104589002 107 616923982 229 677926525 317 560137902 382 496791343 364 488633284 610 324289088 775 88109843 169 752338531 968 675497470 606 556580149 617 297816114 987 662541007 343 516008692 257 718581766 515 123765072 755 694270871 443 920057846 108 900452944 295 49414147 28 99248742 637 556619702 828 579974330 154 375536424 307 48190368 177 452474462 106 525307387 724 345796798 904 734558858 73 605756881 266 932604629 687 192744123 451 232476539 232 445010877 157 142905637 149 826174028 492 380718896 382 671966562 434 644215096 227 243173454 738 191050327 964 452495602 931 290571254 856 490121576 350 137371062 417 195100737 167 119425571 149 657198134 306 690487309 728 716061112 925 925321247 953 866488822 78 998051830 551 920064984 1000 242816671 282 702521296 968 444161488 739 902585899 848 949011687 997 176036226 514 41631877 380 368570899 65 3719031 642 980124541 333 638190167 349 312132564 971 475967310 963 977020916 487 412122285 599 958074574 254 87672497 549 751867886 867 107831485 551 489288705 301 911313063 687 911110290 726 383239712 987 302495747 208 509763419 364 33503106 903 291458417 475 124795997 264 894210371 168 752948325 936 306598590 177 87963178 921 194754825 452 992896477 705 147168991 188 857114896 421 979428639 335 251732096 226 610494698 31 969363414 743 78430845 246 295366028 402 974746519 181 56502418 569 866403073 86 777018099 909 159083223 960 918273297 123 830280528 3 470460451 745 499741302 735 169579354 816 506562130 740 8574650 711 947550312 592 659227706 36 715994424 743 490422993 459 273560974 544 705331692 637 143632983 691 970214485 3 811859003 501 132715372 266 972060764 281 830721476 213 183237688 113 750574017 362 263762567 901 778503676 943 595684890 318 323842861 10 493032866 972 419888136 567 690427552 335 438539359 543 177921346 358 370422169 466 340770180 150 958234888 469 60044395 628 953124206 22 201799138 589 597053799 715 269695575 900 442301562 233 296965854 30 853493097 428 667551418 996 638885461 41 969016652 959 687394552 472 427538199 182 14842873 784 698035949 553 514319414 159 797625217 323 40176179 219 189982970 927 508698809 101 573309224 774 329015943 322 431612764 692 903519273 443 456085472 915 614720047 747 160661089 8 124098056 166 225012579 874 907136674 589 432211600 221 691551928 106 478703610 33 21356408 315 943737889 57 582257871 631 932439106 832 568580529 259 549355268 280 714473732 268 379919590 436 323734170 279 530139643 962 743677622 864 878145537 295 427168793 978 666644396 501 421090931 870 974728787 550 221151701 451 599248214 808 89468038 266 510888791 623 661943870 243 556046296 132 873700237 121 527848043 265 865908910 904 761514250 290 936424800 713 790604481 349 4219655 152 436593302 348 143038904 154 516785788 621 221400046 138 255845208 410 339688710 303 103521873 365 877726104 347 969150519 606 875563692 120 281290770 310 902265737 403 642661385 965 707756403 395 336631701 528 113151650 791 41852992 303 586600548 152 635434836 330 253602764 583 216681297 688 2143453 884 905235314 371 441085599 946 666705955 6 848101205 754 492783566 180 321309259 423 187362994 446 182612770 187 748859687 772 372563321 559 346681349 538 57178457 152 116003584 554 556044673 135 568408565 490 145239651 436 793980859 239 992495992 643 336501850 802 324158769 955 348643310 630 423474200 295 323733743 122 9970293 400 437591486 788 841371314 472 909414824 803 763200333 429 31368883 24 347805079 341 127614890 45 476547365 124 664914583 971 326361932 682 983704200 984 97776301 225 715465214 396 616271451 451 26366388 372 384944747 946 748401506 400 636019711 595 212843153 6 440967645 111 372741191 87 616122815 856 648919747 747 199551442 858 989286851 159 70990435 495 392127964 419 230636098 919 33751832 406 610423517 556 251062026 455 452909511 158 344308040 240 412583237 874 754000010 514 84756784 30 492578446 614 58783275 672 302811480 742 962641875 853 725883299 668 921088560 427 332449087 455 137438544 679 134909785 639 852456121 472 982611177 706 103098004 738 940692703 718 691880999 309 463781500 63 154310321 617 733778332 367 620548409 590 533203452 902 132862505 410 99953199 81 399118508 805 435915710 271 653919824 381 722194246 944 29207387 603 480532333 536 701519901 27 691070367 162 704861218 119 848030833 568 624273817 254 80706962 133 299381236 630 9095608 806 222550307 870 466942851 34 610466049 523 979361836 761 572485909 762 72607240 194 519046453 412 308433091 396 449594794 260 996357539 540 546754913 477 636723225 231 926328237 697 412143238 819 425271550 567 123883748 294 395193254 567 25766111 149 513275123 960 158775596 220 578387358 613 959239532 15 362246977 263 207299821 899 831036145 248 696850980 65 61128954 41 532672111 518 365255565 930 524524561 307 678460647 859 81149747 586 895196928 621 342979161 373 844733479 427 987138301 493 864972636 44 374676603 106 562895925 47 384710001 419 132077948 778 894886597 139 407825968 574 939280065 380 114282988 69 223924868 165 295925400 735 533223752 322 536907752 487 477729116 612 421990085 396 206519113 577 431802131 303 401265789 12 458533572 975 72388732 625 803147429 562 479076144 473 600366927 89 585742657 978 189394571 413 491678063 749 158144396 345 272440118 658 708758815 479 415801117 253 542895248 312 356356981 960 42086675 406 288777288 973 643915800 916 204604047 817 498173432 648 341908696 357 344147434 903 155660457 307 449933638 1000 929048920 260 977772422 874 883136736 598 837690957 818 155650020 376 228403108 323 156019253 999 51228149 666 165587913 116 194280664 261 918669209 539 142243524 319 409198829 622 886870737 555 569425306 943 797427515 89 602139434 754 252855752 681 93914096 844 77796742 654 397172298 541 237584873 187 636976209 369 163893413 568 609541052 885 198006359 984 374945267 496 694442975 641 12812861 402 52260959 610 97650830 816 995761749 351 344901422 672 551873339 244 105184749 821 301543363 60 629531465 428 501142587 869 265780538 376 964037629 605 151000488 849 694707058 282 116191934 167 414067245 917 909820791 169 789992875 292 80959236 125 17800397 835 242922419 117 804731211 773 184237696 439 912167761 475 11956962 10 879853765 90 811570841 940 456706978 926 572361536 73 539537965 817 575279306 856 469601505 386 87613022 676 84545250 380 450577783 952 10117490 705 642821317 287 809338262 717 399242997 503 184988716 799 396715648 992 337697349 33 126918784 632 943102525 350 934848966 963 416081270 628 988250215 15 412243366 821 875164797 241 339973046 629 715331344 3 687422318 384 175534194 673 193863664 189 404289342 707 666169352 773 777816790 665 826510760 291 600292386 523 46094449 539 601807554 908 11596277 180 281550484 522 97037384 671 815416196 263 389294788 977 997848191 126 3844354 951 280916073 253 83471361 773 198763280 773 805742587 405 695716843 148 956531214 159 842912210 318 15902311 345 801918177 274 382180395 298 34755274 372 358439117 91 481681348 938 23284964 724 708972974 345 918207333 831 86967345 236 206474955 512 601865323 166 381513013 480 115324192 266 512823373 99 139679477 988 899817119 272 5436673 59 698087272 882 942204813 482 223415572 18 118822914 115 394213954 36 780855632 655 65998844 763 164788058 616 951625837 216 345964975 95 661312129 8 129143373 666 213845243 417 120310696 840 460520116 138 890708960 137 181921880 878 461524480 940 716446640 397 665648006 248 567830770 325 233551024 166 842345004 402 41829488 516 714021276 24 735284495 63 821710588 697 687552726 638 610542642 0 425325349 870 757746016 842 309034350 18 92131024 879 856067326 497 269277211 687 111494913 580 754295160 349 520951522 429 416280728 524 380991397 607 223701377 903 771768344 831 266157814 360 113665051 557 229591589 874 160456810 891 477038574 173 472618101 578 47168848 210 861561659 458 441495030 911 328291325 989 564922017 955 95325340 698 450389856 889 450459962 517 891496534 189 85840962 848 996411199 43 762830562 459 442458399 879 983551739 328 820943595 601 33253715 315 210080668 401 704185345 986 350747404 212 290546926 219 17554597 405 210462794 663 542857335 430 937971099 911 381858073 72 466965458 959 340039132 732 55542565 858 373142658 707 995774434 84 926896356 306 596343037 480 671056878 59 224874717 434 937249401 745 483189479 187 449276457 734 489095789 945 502259092 551 430767850 148 472587007 350 500549519 400 773562799 116 384679856 423 321192671 991 64601991 47 918184989 425 958648959 584 748009724 111 147627094 983 142977271 281 13843488 7 36307971 36 886790701 763 900877440 884 749126166 814 301750598 979 263357904 909 617633264 804 88506921 525 634594268 877 338944548 953 701138894 386 186269362 327 170904223 530 266355351 798 11507754 733 513880144 860 664763784 839 261965009 174 591057927 583 145469902 18 262402988 9 321088173 138 189649308 21 614489045 114 664048095 359 911623488 747 207601768 563 74362064 561 814261200 74 913030509 732 656355779 244 747222023 286 739634134 550 981869703 953 559058921 848 67216069 731 127134158 388 385299608 614 677723516 341 343227098 858 682222099 938 317830736 3 88861607 645 160713691 687 830141068 708 686754711 475 583410367 768 319665412 693 26778559 20 648762548 887 425207506 295 638744279 421 725882468 828 748651327 941 804245200 406 288752974 431 185413996 41 805678885 61 217235185 174 222261424 346 625216623 653 222067714 323 936773393 447 812104365 150 315284052 320 47893428 681 809000955 663 332593619 79 779509211 808 229458713 385 681397836 654 990763429 819 269277003 182 857128523 751 720570026 955 867236659 492 746304950 514 527214435 988 484276568 744 338295403 812 927052318 128 851993376 203 857954356 829 451139684 649 771673081 603 674171310 405 773009665 416 903811861 122 863079549 241 147091998 944 702964004 863 46614891 536 328937683 483 731982896 120 650776821 728 378241532 608 982891527 748 75625186 627 892706231 511 248897101 328 800438616 601 282562074 109 809103109 901 343899098 763 640092380 340 819873146 463 753540591 961 314735475 127 338917106 670 864985689 28 494944240 966 509311348 173 970216560 844 249178400 940 589514348 840 470992839 289 672200871 490 659967469 699 189513627 775 442559439 801 218560377 727 336829 987 184302572 340 790878240 623 535690007 61 110977623 739 38523737 18 144038611 530 574701843 218 38598295 744 481690634 133 773987233 546 498533009 67 507573230 572 895299831 801 711830441 789 618052088 571 517811863 371 210852103 751 562819490 597 361602824 327 918896153 422 113839415 811 284430783 127 913638036 596 950809442 157 403947253 465 154888482 21 717783230 979 723092977 781 604384414 610 839185510 620 543295901 463 536260982 878 387851884 63 640372680 32 672529126 702 61114347 280 72139375 670 24119318 644 997997857 7 4534962 531 570638736 54 65822157 119 74220365 694 933925186 479 823554522 352 416400685 758 330036891 243 209668050 938 848926948 376 203288535 201 633821753 421 492392362 6 455969144 816 278919201 649 751128266 411 379279893 172 253713080 623 611900604 978 29828026 556 95087506 125 932943460 153 806946997 411 488478892 255 156441726 513 32072397 759 623878583 300 351122679 543 845863304 571 994913856 546 901039120 186 933563751 948 907926994 106 576119200 564 603284879 81 61624260 387 431753865 44 853536886 888 64896543 255 731824688 529 287254758 292 57343172 467 834083697 209 90476019 271 204219858 171 596644271 943 136713410 709 935043977 722 437371094 965 28723437 227 214121717 232 225594378 205 460444352 979 209014572 869 124890934 740 825312903 619 440925254 756 1331662 557 155207148 982 121447703 445 686624467 655 996440154 768 419305163 685 710494107 75 42378666 550 322939407 143 564484379 349 697590455 874 257026573 211 907028748 788 819242719 341 744539356 82 495302877 848 154626634 175 235322521 587 874149051 8 327444702 124 214624449 256 910131031 192 657374357 876 686769224 966 87927671 611 791023543 187 668075644 781 740238397 162 242617947 574 340185442 550 831543194 93 769261024 300 8455460 843 868201189 617 339383770 935 719753035 275 291010204 130 67794721 1000 267542937 868 811979989 944 157094733 750 16023404 447 390575566 920 821646374 255 930079507 782 264381820 997 612573319 286 867318845 223 344946235 676 95605147 384 164143676 653 943675067 203 410422264 721 19047461 34 296433348 436 166243604 212 837391744 361 431698575 229 683152655 568 960027000 621 47616496 80 577552862 835 882487326 80 247866648 692 39247870 828 439731928 890 151609270 830 495146493 193 23559612 168 985901996 396 500562821 928 286935324 914 638763583 32 284726437 1000 622485633 59 255438196 317 694779781 848 709273346 928 972416251 27 813194308 269 893983502 800 921425207 266 982416221 660 50876329 672 292692372 435 275388916 263 654530400 755 284873938 806 987779284 357 285539457 485 955911100 194 747444754 568 357209737 478 40155746 214 284133459 981 935417436 502 296962021 827 605067587 701 854960752 956 448868403 139 233755560 418 438181739 693 226520543 37 114614821 154 645886481 127 848328841 825 759622447 127 518155603 824 590409395 852 749686562 83 532595379 941 43575656 547 511959967 594 970524717 652 539407084 297 331040783 589 144572777 538 333749355 87 362205233 127 24092148 274 737426797 850 84000072 648 300187168 369 287691639 854 744146588 601 646071487 498 813335644 189 811874878 273 702270509 506 889309097 408 684745768 804 230145827 274 4246655 216 231944142 185 849330186 404 725388703 798 846421559 481 509645597 666 783325508 107 510416162 137 359333609 809 177785246 163 268012801 83 308102845 262 22504923 642 488433062 992 718757935 507 190908745 805 283935456 914 589391771 989 239290790 906 906142528 268 952876822 330 87880737 97 708596566 483 104108129 788 255205312 120 332718871 895 350215088 82 77899442 431 757526410 260 540075650 535 101993311 658 812187067 867 464336406 915 751685851 555 954897872 32 739684983 18 555939430 960 851509130 540 315736790 89 865544885 929 771912871 984 755398932 968 350038290 774 332765821 271 547799024 175 813455718 924 669896673 704 179538949 100 224574080 746 585800094 408 416662766 935 642314105 438 345989454 555 224579490 538 599792498 730 57765294 826 995189307 172 670315837 246 209016986 3 306023869 471 254824953 754 279250344 55 865608385 742 744856325 252 16298752 219 892476063 40 715427579 781 709822428 426 635114197 918 877556089 109 905546460 901 883442840 124 84244497 512 87507891 913 555125338 963 643255447 68 687479371 617 442466288 460 814232805 566 973981428 86 342471535 524 172647907 472 774185299 183 969894604 167 842194891 609 280859076 194 335901223 821 852447839 731 631515838 859 779262402 688 680718582 79 501035198 874 121978208 155 296770923 62 128849972 505 997305009 799 318192212 223 263379411 373 983794908 536 202291003 697 394388003 896 125201392 667 813641035 421 468866923 256 913587657 950 175675274 183 197359862 750 595706826 52 125619872 80 500769693 953 994235661 248 238900863 772 478765372 37 293813174 851 893529786 897 518168881 435 674268858 654 68491812 783 986705168 309 755054050 386 535611305 877 554249936 425 167840213 405 536640133 187 549459331 566 229424816 521 721016141 184 754706714 565 323975873 452 344621767 537 457912977 412 926139382 458 890855248 947 564275450 866 272129491 105 116153241 657 41431423 241 64019141 107 540447337 889 507841409 713 362394101 744 730848594 390 854832091 767 210173385 491 485580996 726 936150610 837 722066370 437 140734161 113 862469998 174 673640918 391 336473835 734 567677832 120 287891119 836 645760992 123 186727925 519 112855047 799 610778193 191 974703744 316 637689000 236 983167765 421 552332198 1000 471958340 744 871489121 567 787298703 925 667017423 214 192368118 356 115728583 788 959539741 873 876684482 906 228252355 944 507822353 633 975579517 408 543198223 980 633783996 379 860115019 3 334257555 865 857211002 861 145496905 669 174098709 546 424345946 853 219133711 95 428178939 15 370369694 144 192425481 748 143101423 146 470157696 592 856045358 696 515349520 692 33493288 282 943396629 931 361744253 799 700359180 134 550583760 302 595010508 682 250421453 261 182061485 604 856068971 782 715265617 648 127846000 665 92305862 157 507200187 251 482629815 460 834244502 786 890782776 966 232278021 245 352582340 313 918359662 122 349804918 498 255196808 170 108510242 195 909721720 113 199517122 503 960238034 179 880198192 445 184060849 860 393165886 389 665001407 33 845172252 589 769085658 744 749040949 3 487806538 818 939611566 6 40699834 60 67762302 433 563987615 823 660462931 583 512240369 881 816216830 576 139956117 77 249462981 553 216096065 501 831118230 170 42496274 962 328448221 419 488115244 482 802890335 974 402602962 530 773046574 346 799391676 645 485807309 948 732040604 469 514358736 396 860954598 132 211808713 413 169320599 300 98839876 711 912627777 815 951379624 218 208121488 909 16219252 576 434543444 955 256920839 763 607152719 747 588682822 61 615414100 476 599856303 833 602298443 608 827662602 943 152748061 516 2720604 364 702268723 519 691641990 477 362834317 853 534573399 19 200169805 169 761784899 613 508545929 370 101076419 615 295788771 134 814299231 481 330166648 476 566286000 326 645331656 361 685496975 232 345948598 811 951648707 140 522587870 540 854408561 949 256277624 554 424003621 38 679007449 551 343842596 981 887548864 659 113731113 627 52802131 385 844148609 308 645849199 928 973728288 792 331245004 191 328876372 876 127177271 711 658851412 533 248170022 310 904143976 86 93302337 908 302417152 814 743235233 408 949785196 268 378479972 56 535470147 904 148979002 91 403758662 572 5213129 112 747430314 96 774023625 867 257508123 879 804472041 431 306195028 465 65233810 704 91689901 764 892569847 363 94779753 768 304742290 928 946038015 389 70219459 543 184280607 895 83299204 565 296184116 780 552485215 548 862400769 570 725308848 421 898305496 888 611527933 867 214367364 421 368506949 506 527952090 686 68976041 93 479382943 703 28741860 491 557891577 579 758742605 306 667193645 245 322805495 338 228212292 173 715376928 843 549092383 192 809660296 277 148220896 427 38838654 798 325504456 898 888191775 165 717453937 662 302725696 873 626512158 833 522515216 252 24279746 990 666743716 279 284830296 40 133151476 68 741032626 357 899738498 631 910087080 500 330436788 531 382817515 708 250897315 194 914952862 505 105133497 151 190262955 465 953995105 529 829662485 335 986425157 712 233326945 275 719488529 251 12757685 612 431053872 706 7577453 275 499540709 193 15143937 542 668573741 485 260567650 809 298984446 335 169026720 964 706926015 302 439107259 266 802171206 845 873894169 906 724956794 657 672781996 147 806244011 412 4323050 574 229446468 893 764363367 134 906049546 511 459939595 343 657155383 844 484826604 506 967323293 237 651015432 933 543692253 976 576703207 847 449386019 552 780929097 843 360711308 499 106642588 343 327814436 172 815348936 826 399484934 978 33262637 920 587317153 560 396143091 267 242586804 221 955748065 145 643828560 505 556828035 114 584118069 135 877083209 388 295119225 963 63421775 367 30916064 182 887731529 557 954781791 933 614223644 950 816435703 133 357882189 992 621133786 39 512306600 592 188777912 729 489717421 441 369739533 550 285707384 551 339896237 558 874912396 287 632143962 56 54109500 409 704800018 251 581066043 538 241117238 911 647763994 614 453069675 89 846598661 565 952236721 277 65374211 31 228340684 308 765637290 744 535025095 929 506777849 886 703009497 646 801048325 72 57776367 638 289491170 620 212150538 700 356360548 618 56920963 769 622193400 286 908258772 591 560191254 48 326200770 756 943497988 668 270745041 880 557772385 971 589503821 489 277723798 550 349664394 789 783130257 946 509715265 548 4209321 323 992585781 283 385592174 534 398914484 813 366020803 961 945662467 237 999092636 640 707812361 293 907480823 900 197728961 456 594474784 950 588314155 56 665583870 558 161435860 203 850472579 519 835692870 522 822261740 844 441770391 110 795861124 833 907602494 119 323110876 955 130852030 653 267604952 82 804018056 172 530849408 215 597552864 50 764367896 88 560031578 325 334691476 911 725368513 648 939327712 623 454330397 625 56489344 183 678591566 428 719618684 491 771453652 807 775200876 625 613587168 137 877368276 348 977517172 477 845347056 545 401962804 535 265846948 49 140532805 629 80855014 122 766480661 788 872625846 910 867814351 628 193302049 293 275508101 987 345767879 463 68399306 68 878298430 596 507384626 343 490661296 920 808875484 773 887096857 226 656120074 805 682724276 901 139965445 124 753936218 833 459950856 187 789634748 463 978805817 515 622013391 485 230132811 770 366545637 323 187012414 410 207245292 402 763846936 680 454871742 176 557821399 475 697666541 310 31395870 169 467703487 366 847989335 111 245681123 227 143338414 726 494576241 706 201043900 847 858410197 117 33864779 244 232830663 552 115738801 229 354759059 759 865952609 327 222507667 34 83061558 551 969260425 816 178902196 723 74776252 502 968719127 324 651355286 707 728907962 767 362762343 950 719482065 156 750081738 593 558896328 60 205459031 80 78901023 811 642549356 810 770482328 752 541873616 500 47242070 595 106270272 326 460920459 668 220612837 730 706364455 763 901297261 313 680329510 607 136923805 47 208819490 629 434707352 221 312661867 751 986374057 939 228460736 29 844181598 32 418682018 936 775890139 262 587296613 445 842462767 346 81717125 746 926249502 436 956779835 404 856761460 55 632132449 0 593394104 901 407868424 711 767647880 195 758249938 100 768059917 974 162192458 85 215166548 648 111627483 966 183218837 353 115063590 736 176995974 217 852169087 947 97659312 686 945928533 860 396676684 779 231282813 778 323084754 846 549449730 375 207145043 309 632553651 30 211364160 217 887745488 956 934406681 849 954426142 280 679786876 229 204749922 162 125591959 70 982853072 897 308622728 530 49981503 146 300058720 925 375411833 893 375750659 798 620860171 208 781689838 598 290881168 331 858776513 418 66372037 832 13466466 368 835066412 227 225651132 64 70135429 343 403285415 50 136978299 70 260308718 185 647610709 535 888563024 193 39991181 618 474253835 159 687189921 750 214837791 207 38298878 236 635355343 147 740072382 494 781292362 460 902029124 654 489761420 407 108489091 726 953306237 446 840526086 296 172472141 172 366147698 143 188186110 25 807344524 345 425240589 309 328306385 780 24799268 471 540968630 197 163942242 671 59422194 489 134722442 624 590973912 868 348324665 863 265759607 735 934474244 165 746700406 472 521918594 575 55986587 2 611842275 49 426617665 452 47432871 103 337729487 208 311429907 484 756085828 51 683160371 15 73120175 866 230565577 713 388116598 992 316297030 689 86116465 227 95982291 914 798686673 812 256152422 577 171790453 182 383474853 462 504604700 515 731032151 448 930415327 490 642708325 724 925749909 775 359410834 891 510568766 737 82822107 80 275928006 318 507337100 917 408507093 515 299919169 32 616508915 736 199543625 694 737845557 347 921647965 318 852526205 529 658496477 291 387445128 744 519951207 18 898187862 899 157180329 901 720910701 99 277621227 733 251422552 239 946739194 762 803938531 47 549902622 51 249447327 373 269665993 38 954471545 70 593736522 35 676029648 710 231862041 260 554203923 628 943172249 283 480839784 313 231488776 791 670952548 674 495547930 480 259593721 394 344871322 454 839070190 74 145274477 810 2171443 195 871787638 924 447699480 798 200720057 213 491344675 128 70026067 765 966004318 547 135454822 933 714001419 116 869150811 676 170201219 394 79927694 878 150192233 141 960439189 739 75663089 96 129659941 457 331289773 727 970828531 553 35331884 704 253174910 902 399668980 874 909453016 431 460605411 913 328379025 449 585494251 694 86242726 793 752146321 927 403586945 840 502861057 373 611459167 346 347479941 148 620218321 856 244138571 773 271170724 20 884388877 812 734720932 393 786406552 363 545796073 336 262086439 181 142177775 335 879377592 344 196145926 606 856503143 718 611349785 253 675674523 367 531447908 599 750031436 642 838740737 914 303064889 88 175040432 807 618928251 983 761043761 34 838633503 596 939655914 359 977969983 181 112415329 105 995106273 470 782888808 253 603084127 178 149600935 107 222915069 26 155033331 799 564572431 730 902797489 859 884491398 783 310220600 776 16368700 753 728844722 34 312923615 264 276428444 743 460901504 873 631185298 49 960181353 518 61058232 216 932281772 712 752700072 272 907159563 227 486887245 45 472408791 336 923254684 301 974049643 384 59658424 918 71976694 423 229002393 285 811867464 114 679683008 891 349931430 281 810500442 794 898368444 879 500739925 951 164911231 562 947063433 318 768614353 571 150962477 688 212422611 725 488021149 361 342527215 399 48428194 901 967798239 246 100018441 21 205103256 192 788350749 50 144803517 347 670037240 407 162369085 592 451559956 364 377742563 788 943818209 565 128273350 23 222145680 540 314165411 931 3719645 240 949944378 601 726143649 972 530056166 185 974700314 124 664944621 783 118577398 987 416969603 634 329883910 954 594592639 220 122806927 942 9598831 311 111938921 588 139260819 255 429335547 249 751563171 890 179496043 620 561912987 391 890531526 940 498893695 975 572203707 406 218879462 996 771398228 835 917251585 101 487947668 29 622706259 388 858368254 153 133808367 796 663166469 326 174678746 497 581353788 742 948314452 662 789640984 287 54132428 732 604352316 647 971127504 307 240114551 457 934133395 446 375993277 148 555858649 643 584537141 637 168315307 9 667667830 404 436798715 732 73936225 1 51889023 50 806324592 945 560178459 335 512331157 858 701250257 726 989339678 877 469537500 490 701764217 12 783518268 562 316666707 109 238154542 404 933327878 948 703270075 686 6147702 310 773835057 56 250439645 164 575729220 318 340357685 672 486928851 519 635383449 37 252325412 443 955793241 65 406988478 541 297541367 668 11069990 425 261485584 496 649903246 197 507317228 876 890291639 894 772008030 170 615996655 611 862325951 201 507954478 121 414666826 222 577803084 942 254101347 363 966665449 178 339897221 147 237186948 801 825479600 326 224412309 975 398976365 399 487103803 683 184203865 679 250367292 163 892559209 553 25955301 98 351478697 3 312555942 815 555371124 726 759922888 613 920323769 316 419356504 41 298490508 861 831398581 90 629349618 267 7619775 650 279651017 946 355987296 846 783967798 878 923516225 588 603033849 224 102770301 117 958742601 868 852212717 669 979131891 869 702493549 358 910924164 423 188538930 588 420585314 438 621095445 611 760199837 501 885484484 644 108936469 758 818416325 163 135405757 558 411939419 843 314682994 560 855052091 399 843592958 709 563050503 764 232807765 141 167402595 870 470768780 343 519979201 881 52735898 442 570315829 979 41159084 982 172220926 240 381074109 162 864187148 308 639448350 653 397241577 290 950877982 884 360376513 887 23852979 244 809974075 746 454507591 556 13530469 576 89599784 600 834032129 309 358762136 160 335674034 786 817783773 494 507175267 115 802929330 78 340727249 546 15408385 969 825536234 147 544035209 522 482119847 262 299566327 505 245381597 239 601038425 687 797324119 852 517302606 731 218524715 96 441616714 530 981266379 568 463978109 453 793316674 324 775965632 722 721580318 605 446040800 251 473039773 768 388294994 152 622281685 172 958566928 654 25616445 976 97956267 731 958293734 297 838652398 55 425814468 811 122422998 767 72462186 100 656523722 770 353933960 106 224175056 419 671969807 767 794848877 840 368770072 190 77000392 307 936767259 482 175671669 434 544881053 806 849893954 167 216521286 595 94137535 410 441341487 775 75286905 125 427312727 529 573516620 507 608522972 211 228018178 822 52292108 555 289854571 263 154180003 359 601164265 724 567274170 339 970987624 130 636329984 530 619378725 385 473883340 208 139603195 598 944632273 940 482060458 443 50174198 481 749336857 827 335920023 972 318733215 836 251490378 591 232659708 193 81561716 687 785522569 961 22598781 18 766421092 108 151808255 406 974252485 414 981416215 615 806302183 821 994206746 370 882639793 893 473317636 428 234799369 361 674599216 810 288443346 912 254390808 659 864450584 889 212028524 29 218743892 410 629540324 377 757727392 466 341667861 524 692464337 217 698786458 228 799179306 809 271149816 45 966269109 701 984935463 681 638486007 452 18989878 42 273846272 860 999015129 135 386278319 500 290329888 832 151737602 57 712874056 410 535503707 592 338525741 354 330625698 405 825472205 410 978161654 917 15091540 765 991987119 803 352031629 368 329685489 525 779698705 890 528298615 289 347413112 22 592875421 559 222191376 235 562629462 566 161574417 529 413099489 760 283601091 796 448731865 306 350619192 657 284333024 561 977443739 939 649289642 119 805741649 507 490195916 510 858319421 714 423800248 261 523266065 206 194036414 261 510949842 344 513388654 919 291898873 188 185016571 553 854663752 770 69800348 681 156151899 31 939914146 753 710272955 48 207251618 799 255496949 89 827543553 656 177782260 174 311124335 406 745692841 340 921520081 603 509931381 634 275036616 442 568031122 397 443262869 570 700084036 850 739328815 49 142074235 973 520369799 469 722448013 88 565502703 810 911031520 994 71989235 697 989471558 778 541083265 42 239451727 766 681338938 889 685778922 147 251907781 175 162477059 286 623713493 162 718818578 646 670949705 908 804617657 349 416844994 926 840379975 518 545263696 10 973994491 547 633105890 902 35859852 604 185946144 483 713756108 116 475148774 181 934211473 911 240793054 620 361549201 285 781552054 547 111520733 794 749010931 409 138743486 466 384850120 813 268025994 402 938478952 93 378729571 569 537218388 91 416587544 846 110018558 639 129859664 433 10524992 805 319854105 183 802871419 35 99721659 605 882982285 863 435738629 83 341381742 323 954762061 679 909161754 791 495295029 505 814001608 926 407783356 975 324174799 808 152207384 886 747666851 602 775449129 765 855623715 558 684614271 121 203837329 191 354975763 51 368498604 133 722293934 597 335784279 880 152579293 80 329605241 460 739277916 133 727545264 410 484767834 951 168656303 16 65638212 366 342276903 902 859974762 547 49745045 326 741120010 608 723441488 251 257352885 829 793657932 339 457560380 970 143759637 866 350350673 456 546439800 358 882568196 655 192245690 639 445138832 830 262928712 674 113116067 80 25866401 299 752867962 391 184459218 180 113181451 745 549204350 999 920723848 304 474127299 785 207520837 663 862687271 968 77000013 692 560033998 217 308040283 3 742788670 617 30971164 569 883810377 40 741228314 665 964282630 148 825079988 892 507653885 293 245325037 983 271756762 458 321627838 257 952307901 445 493089886 981 241240882 286 214109250 850 317501527 270 281652410 985 209786217 982 756686912 454 535385339 902 642997437 871 305439953 208 876727253 565 46801386 507 373094468 612 352341478 17 396118774 460 863662911 563 161477951 502 863759872 390 970967227 828 616229803 698 463494036 943 113863122 518 378838252 731 463309575 852 622865826 52 759202243 612 904509379 316 145187626 384 401918599 192 571198356 204 423875801 890 83870665 215 127608815 35 628562821 663 249825061 461 572453064 201 2981267 541 327255610 407 513529970 517 433640361 562 122560826 511 299525908 520 652045634 865 749062226 557 261954156 385 597188332 920 736139991 384 485578959 920 977679766 49 683040399 145 527395215 646 906318038 123 530636731 401 84691523 573 365919088 884 686687555 61 476435649 506 305104566 293 354580488 682 808923151 445 171380786 240 11654973 542 487204989 94 465302771 154 804719370 355 248768655 412 859577399 181 560779069 274 604040505 461 499605111 165 603778050 960 526670780 39 483138547 669 774334265 944 452516637 287 811718115 164 621150421 523 125071202 334 113466709 574 571306536 721 809756690 419 604384569 566 829229944 270 332467135 726 832971370 117 38821377 10 95319554 363 837522856 490 179581789 545 105571338 252 409184823 433 522211742 829 79519125 821 714797791 796 469078543 282 605329902 768 314008731 823 169363569 616 774134007 16 493371456 155 929087556 675 359562166 791 405284069 801 702454354 966 517438059 677 500953182 658 959232785 431 262923238 298 660708643 247 992196010 425 562845248 640 430552115 812 218920599 519 888837882 640 278330399 478 188913758 769 985268986 479 784979155 919 342937395 140 158396487 223 636283409 966 314502989 760 678728692 615 562148802 250 74369463 948 608162113 555 287360833 899 801266795 248 365548882 700 842726072 97 631680447 344 840743282 340 203396637 22 458319748 193 915073179 649 792629449 180 422012891 489 458197703 903 390677093 312 172455113 732 819778179 824 692770786 547 881756231 449 358297534 326 181807459 336 352361171 615 675116545 147 349937334 306 617240925 623 503794082 718 463800237 205 358060943 858 277627527 41 605432886 381 581258142 627 111662902 655 647862150 198 839728021 323 932263599 343 353198532 568 976396607 705 682334120 314 797714857 873 774129299 770 65717117 572 417774367 712 129399309 885 92673762 519 215183775 697 726595581 431 414536048 971 53745071 459 906375678 328 266015933 672 151315588 901 359781570 850 509263124 344 117718547 893 691062397 799 424787529 849 520851341 830 785423251 799 947403347 316 508980465 484 584464518 399 120562460 90 618648512 184 119061670 359 342169881 184 299666914 320 43303810 972 768823817 447 436261972 802 36205190 611 818839888 264 158116200 345 954595849 20 310349588 212 75750634 820 605960772 884 181885998 777 961807613 467 224954216 79 645050007 734 680114258 16 997465855 355 176301166 986 422943070 300 83991306 122 360252023 621 219337085 864 314634084 150 836681710 83 465804726 329 146325415 496 644850803 990 460680167 970 690333107 627 889421700 919 857379918 284 6754463 208 298334735 754 387455926 372 560411732 603 525043833 292 574629859 443 90459414 630 384744648 509 426358487 963 656308447 36 353544087 372 738398410 204 932722722 825 183263711 891 708634094 292 806865271 877 231868668 471 633329971 525 147932110 888 750399148 228 4632527 365 339912918 840 748404535 880 222224208 846 720426359 199 941286939 190 272520038 908 544788258 932 762706138 165 339816475 411 661894206 343 795031716 105 235549119 313 651513242 631 449918097 11 222616698 658 769508569 950 968483277 412 746359644 308 92783213 149 429460779 772 437688434 664 226807963 299 797714312 507 873942208 491 969164604 760 497785095 77 263571532 974 167468996 533 289540184 26 220301097 454 649455490 603 968094691 127 609235214 934 338144837 911 702839113 865 489500251 501 736469616 846 815984725 796 282994517 892 847655312 170 714741291 902 365035520 780 244853915 691 809682527 293 54352763 683 588026776 187 753072144 214 726643079 163 60242033 571 65026760 865 744584386 121 315322874 920 313410479 105 165856311 613 782481712 333 941474747 629 817688465 317 862986164 871 951756173 181 212818345 261 7387384 327 3450952 300 310500637 603 990352051 490 144239791 31 399969301 821 622590469 648 746395443 406 967710483 879 457395084 576 829668458 147 149901415 212 455592460 920 624752675 22 333897711 612 901238905 641 126446586 974 455159712 856 600500205 236 687709908 245 479785307 662 417941936 183 896667189 116 67817475 391 487539020 86 85855095 524 40308484 177 207552003 988 143140763 876 343257919 798 665713899 344 290347526 494 430920102 848 777125741 178 541531244 334 394484174 732 328929817 9 293016173 967 405704068 537 12637982 641 903661630 150 684037921 32 407246728 67 787585569 61 839028689 41 203205856 961 884626114 888 276141392 358 716067562 851 426366185 417 376864517 203 276400077 957 549742090 628 23706489 879 23172243 361 467773921 460 803707219 517 850096333 311 263468990 434 318338317 953 195829373 438 689521248 314 245476456 424 618770803 241 672201591 183 730368236 914 237150474 856 975044954 312 538811085 40 720790762 290 492905100 500 920474956 247 240191102 458 687323275 11 372201236 557 281305919 852 103920051 706 618728222 238 444523997 128 729668513 445 922951091 207 712343686 751 743421739 769 350286999 824 34795866 388 787337812 561 927165069 591 341839549 416 605349424 660 512966172 725 402549656 619 721145014 862 56414061 590 302763808 847 733856644 207 296272674 173 294281167 269 438046949 99 62145298 690 732509576 164 26367160 312 741775121 599 90881463 976 28048213 724 445146142 135 25970172 447 785042741 757 473588246 674 967439960 201 202377154 325 4380356 187 817340850 587 273038686 178 948319715 362 892459341 573 841037998 32 780452963 594 46965222 966 311958740 92 835634354 796 971961843 198 904816459 926 405308298 430 432431475 265 323960231 381 604589161 601 314665502 458 483927660 126 240123900 995 458032935 878 515349451 993 601558365 485 86268046 699 540476198 794 683477982 861 88971748 839 389131855 832 376886598 100 82233283 515 917187226 83 900423887 538 969460642 680 938028124 273 272487216 366 998053352 635 106380552 295 557298231 988 113412518 790 523187613 555 310998464 580 709504816 789 640015034 707 945841390 580 643994864 197 949695855 140 651230595 816 19968488 793 967484679 671 447573017 375 535350395 127 5865519 554 661931570 378 356608043 256 653168298 288 375519908 920 13229600 381 162090866 810 498809607 205 303197087 362 631145279 292 730074743 551 103107153 361 381936752 417 6975814 141 591242660 483 164116539 617 626435310 111 848705350 925 280177300 196 627245383 526 541274576 980 935921721 956 105980252 412 741501473 916 640708934 726 108350852 581 101869255 589 751269198 758 171172729 749 374125567 761 91380915 664 62478915 649 962065174 456 409945040 189 312567281 371 397773680 659 476327210 379 641464107 141 781354548 952 841440638 110 649394528 178 986707382 727 600488245 215 502357640 858 977613516 818 982869144 126 859679959 441 175068619 431 377523530 561 580856040 497 889132834 96 819821711 784 406676944 50 312179112 100 665031394 644 95307338 671 492496910 686 496248066 173 326485178 653 959263331 100 696264452 631 985117858 723 491716202 373 389441273 929 313547624 272 294586372 858 199496454 485 72962911 165 997219903 136 252275671 256 274275402 969 971142059 565 121027710 506 92303247 918 546100159 807 535705569 552 427598647 677 873543320 945 263958296 710 624897549 518 171337138 27 597357760 145 390247173 698 126882788 235 504515774 145 852475344 100 339488655 594 817002411 76 625792698 178 68761109 632 150288106 945 999900352 782 407945150 217 610275983 849 132254699 728 27778494 889 24782666 918 953702172 963 530953259 251 124880738 261 140443544 221 131108132 735 444560773 887 802822310 640 683030857 128 69978423 170 606429797 875 518684985 82 81343902 200 405644136 775 748996794 507 95469568 473 917847966 987 763255468 224 77022694 250 478879921 954 983688838 976 128134974 952 206195642 177 161787586 487 684506674 577 78308190 863 45067801 479 132647793 999 169506048 492 338583962 86 749766600 604 842045361 621 627144963 544 712074393 702 916798680 353 38493662 476 181610688 692 292513540 265 659093681 464 662350518 810 10499522 101 231135068 25 693129572 890 888311404 30 529620553 937 356107375 192 936586972 468 822422611 802 434952136 881 888988215 379 118880239 532 561022109 3 884849036 562 799296049 409 441109635 814 550825042 735 928216099 501 801241326 80 281689355 519 254673011 748 257366390 808 29989041 57 791835190 795 592489123 471 463852566 923 156260313 373 650927304 12 260336308 751 748032118 449 648021894 947 759555029 325 963404345 305 702602257 167 659662956 25 437355088 533 849658195 509 327158846 194 806365686 638 817672409 60 460974363 887 722601220 897 457457611 507 236398142 570 116642138 96 934682640 999 916031061 862 37741762 44 437825610 216 630558578 278 399232762 933 537287085 191 535204881 26 788043463 945 49239480 49 29762432 15 680507046 593 408924892 107 601703105 20 310950215 664 155562330 738 788639917 418 922282399 757 670003861 105 954726557 813 489811878 36 380404365 454 896777499 472 815891445 482 224430277 183 523760429 59 206430083 440 702696909 551 696808363 62 1923318 484 465411799 195 557112626 471 896436375 331 593533012 280 799073081 870 188980889 763 563793556 734 350747703 785 580196866 989 609821373 760 185533888 747 690310953 464 892794813 249 797680394 267 648221979 418 483176027 573 957169745 531 286960103 436 744580482 209 212906384 173 859613872 888 12297537 372 860821306 100 413609252 970 836339190 797 6427832 321 719520732 470 586147684 134 761394612 218 807758507 255 146676378 479 130851463 445 321838544 574 731438793 330 915602310 194 989768072 241 539628728 35 97787423 964 982714909 157 430969350 820 951345839 169 997690925 871 854651894 196 770623967 865 404283554 666 609589006 442 656435505 656 918751071 258 522561377 877 557747543 299 549723477 859 124377931 440 332310767 960 72957557 940 528259105 328 614049395 721 650537194 744 925622515 196 799429069 637 333691906 52 547596364 806 141640193 637 572160767 98 95593021 297 329224617 516 67438841 318 515060009 982 386104632 588 662853875 483 312904407 19 281229620 483 698946907 389 512087488 894 263667033 632 555183065 800 674847009 498 551637214 849 68663994 589 977197452 716 675421038 839 855614323 725 949709548 921 480174676 88 388127410 318 705658460 965 26177284 540 941875133 854 75685493 96 401820790 328 627907894 392 39377584 542 753218754 864 505318970 882 88248654 697 356806672 744 958730792 333 313174200 140 912768405 399 859460305 696 813458204 352 593715436 632 103047705 775 737245841 756 552510712 15 142235990 282 796573308 560 310530692 300 292530784 553 897797225 900 583720583 724 343283444 224 825079496 83 457629462 665 675702968 549 264630088 591 285670297 660 548515293 882 148614879 801 490179737 89 207095989 567 226121756 40 286796603 817 885063866 740 809757234 290 330051132 777 130738029 0 755709424 54 664677592 871 444514750 90 10774325 466 541629117 77 396059166 205 333106920 841 687724199 771 470025445 819 770110984 597 168176232 296 111840408 123 732732784 818 244913515 337 482192933 53 970855570 91 679889659 430 987011411 596 639820683 134 167683428 133 769292301 877 556986120 636 692497329 48 701709429 81 199568489 879 968406628 660 429035505 834 5514550 900 310788407 257 688908855 4 113846789 49 138015340 139 553295630 545 764874755 784 435057160 421 585584617 19 511262260 326 631967003 383 334418324 124 60909190 720 760187032 55 466790345 230 127450665 898 117142874 24 490981671 569 60228184 402 684130767 791 731176589 779 575321698 997 725853573 150 613136516 14 765784997 34 849117527 962 890680680 191 307645498 993 996482367 121 757578453 335 517238611 163 638239090 945 657721889 425 16604405 526 917344821 407 9831668 56 981008104 789 374073821 822 721359175 550 167806944 788 377808353 124 15838392 429 103663045 397 676171661 282 576467129 282 386960836 560 140320321 3 295200986 11 498826418 624 381341448 136 59971040 645 790429916 431 663723197 40 185277272 265 503893126 341 930002522 287 443850064 620 264180383 574 266884011 965 101172574 677 193548473 424 214016797 150 531588213 339 147729284 354 710346508 516 907326611 696 227323308 560 440342496 194 69553049 957 737481866 433 335033845 561 798061746 267 986296705 871 199053085 864 744704316 840 190650610 122 913260162 1000 137815254 513 997026051 708 579119109 585 451154920 42 230204215 108 3289131 580 150823532 615 310308222 352 159409842 337 935532442 40 748549824 93 273542616 21 1470032 905 828967836 508 741087860 503 625649152 785 611097553 687 742764280 544 197197954 724 594792769 10 136283425 212 660463553 38 475190108 287 958867335 730 225281335 397 760893378 155 75102939 103 829347379 803 671641785 50 711720263 192 597333286 87 371085878 629 59599766 671 243528901 551 44038018 15 433842094 466 502274182 919 908086360 874 607955544 724 550284528 333 99947230 352 321345099 859 845217007 172 880039384 974 134233324 537 634426087 400 954446273 934 617126970 461 53377417 847 993186009 368 800479902 325 7095452 368 600422384 503 817766002 134 877233458 197 76344647 789 471306878 762 85378290 370 371726860 76 837912358 421 926985937 756 380034101 347 483256350 147 86594130 219 952311574 507 128017898 359 928078099 905 962595411 187 622421155 722 939977491 787 615672583 928 621091955 810 308738744 461 35714773 261 944569975 157 66807370 730 816613600 756 582435343 346 257161802 629 579836657 351 403980423 969 283777840 822 946318636 638 876924101 604 455498647 858 395297144 300 355643779 893 58692457 949 921731169 584 784949763 760 630114923 313 163269170 834 391151766 462 66952175 773 84533033 299 36359748 138 29467939 121 111624241 120 993483241 940 515138257 887 495346744 263 953973428 268 478428776 842 682264962 355 103396523 645 596126251 432 151517311 179 313292036 436 783471818 240 964336497 70 242884702 652 48496613 880 169079510 690 573526810 299 412744740 325 872115325 673 208816427 160 232909184 909 534754697 969 556238434 192 42810598 447 302925574 194 891146496 558 3877968 346 643997841 284 927627863 466 931720912 590 541806328 688 543541443 709 786726944 802 91661256 361 727445175 29 946140678 391 346328085 101 270645748 0 541097313 456 330578820 314 207380030 646 177370458 335 508039369 830 523155949 110 94820253 856 554219405 171 658510725 124 322782784 702 911148607 989 21960211 367 903436886 561 532784654 710 192405911 353 472905240 843 243720908 384 72897266 736 757532210 106 411114901 996 60629183 176 597004233 229 128291472 117 53466262 651 16448468 129 985526058 820 639002326 278 431470291 661 21451957 42 187150433 85 239971899 385 308387930 680 19596544 783 44667766 155 430864431 528 80626990 340 890739198 241 883496441 54 128264111 202 656025461 49 178601265 248 206151590 793 503957802 93 29766456 410 547070820 556 269776967 24 571314557 564 319559147 967 954921483 925 97376992 860 539270602 716 565121405 279 752116427 247 544464871 535 619513585 565 487324464 500 888342723 704 362268464 641 794155800 486 476467523 865 769725989 378 530960578 568 350918732 36 314828188 627 563199464 454 23108863 623 529150965 377 722724196 835 116032888 933 939408627 151 453916642 658 797946498 204 312770407 634 489306106 38 919720205 227 856429986 649 899142901 364 201818117 315 816654035 825 282160308 891 471476239 333 998083609 909 146467867 492 74705831 164 963468626 553 881324231 739 355998659 502 490027921 191 427990337 568 663032591 207 954865620 512 568148916 46 758522075 501 203932884 883 134367822 278 190108622 259 368470799 295 88735951 508 895323873 713 931495571 117 159824803 248 665195956 60 366645260 19 187120420 600 891587524 607 773334395 517 654100315 116 501368084 478 39508017 16 479526476 827 648082704 760 952805140 922 958994586 251 183071386 31 860101386 412 832220843 965 397526385 400 447517098 487 805758618 769 198962682 143 943438474 235 22678453 855 64960229 520 339432156 783 6673796 481 252821399 242 645213945 493 405808072 469 504681529 112 90130627 721 491499037 562 321860041 460 549339155 957 256780403 248 325156762 607 290040696 91 247224035 956 408084154 805 542479826 676 341523555 367 253079801 323 538715666 535 67455254 64 899081113 828 430754248 909 653596276 616 514227565 293 38156119 540 447674231 375 738264192 411 447752568 836 610660381 493 981176907 828 292552910 578 582279911 535 818401786 639 358843038 218 299579198 314 273831379 206 530964150 542 260735262 25 87729722 379 458236835 76 711524083 812 308968843 263 841515803 604 970141374 810 529128443 365 980174137 34 617843882 718 483468620 860 196319000 768 915308121 86 401348981 315 542037488 620 703384164 946 667782734 656 928386362 481 909122954 603 97950612 510 686583025 942 703542869 420 957316352 938 702553446 511 869645756 670 684164582 130 916722688 985 742169768 866 244844834 622 960227189 99 859977511 858 368677092 832 937442277 402 42257340 395 586288716 507 407777078 686 368398687 490 481786696 436 936899598 621 116529796 416 279951102 918 661392487 839 192365608 185 146841151 904 208979200 722 152029788 327 861487124 501 925086433 809 242718865 415 994831969 695 241398200 232 302492672 565 609557848 400 932322804 354 505794318 230 572734605 302 444446139 111 925239294 614 439538634 861 733222843 530 228826389 305 648730682 240 342623267 487 467485955 904 229455284 491 697575699 147 794342860 476 640314917 514 961490199 854 142545426 441 842490837 608 14808403 105 881758490 288 455054747 222 126824969 324 851686443 435 670041384 861 137751746 874 639019542 822 116394261 644 444163529 224 74520049 439 116335144 908 554244894 753 944660475 245 993840004 45 453543841 18 574509696 449 340586078 267 998530363 12 230849786 252 554055761 105 615503217 883 208483130 37 502350012 917 224537230 378 111735995 960 990653515 944 163111609 296 544923405 180 195877367 528 726022032 340 392481198 719 434245335 638 251931891 366 442485559 442 966039307 488 898457368 663 207642942 798 799221290 30 178554254 118 45233268 546 342726986 355 940247561 309 505511578 305 394249229 310 432566282 144 553971642 192 363186597 811 576714252 915 573673299 877 487087296 713 598721419 9 25399643 349 587152490 11 890692865 466 168976921 985 884296713 980 858476446 725 523044896 186 685004207 245 698196515 75 918173031 283 326172457 111 234448559 896 740833550 94 345771135 552 16310998 556 98554205 285 257911249 596 147631695 816 236746960 987 846365014 457 894850135 787 672325219 520 787953142 524 714202453 646 632121720 927 927625270 92 864153616 660 919072016 723 916535367 279 795645824 294 479022745 15 318257889 717 64910973 979 409384984 892 503633097 969 347089997 711 409587344 232 254218219 395 342355011 33 110658222 180 565103507 814 78956164 14 963488067 483 271820783 129 200250144 591 188594909 91 547857326 261 227225726 452 381090288 2 109837663 831 958869728 731 126571753 645 709114543 674 913680661 442 758955196 965 55265934 898 680089043 246 723657147 557 724586764 764 742491838 253 683957534 452 273318934 384 721378376 452 167296602 615 702272914 114 447540363 220 567844547 244 15780051 973 261280685 243 566040918 699 283743972 557 181338276 120 156753987 173 432360951 337 120494190 890 367678674 727 62812231 439 215726503 404 149161786 704 44647293 70 558571295 829 463941512 218 982158926 616 670560368 776 994846793 70 582021672 379 343032703 865 479580032 663 229159511 725 265470230 168 822059401 414 766084570 488 109797948 251 993137732 732 876551844 433 880567089 281 688019994 696 209887493 172 458299489 607 73368388 444 403259498 40 954415711 65 849159114 65 576466540 494 219715429 258 572601052 357 638903639 523 621775593 530 853513199 814 290624435 103 752594170 899 253193088 348 175308104 960 461550085 129 620881419 99 755240795 392 601514374 235 150658210 927 169555118 165 84216970 124 669346179 30 28840466 973 895217836 928 932253642 394 891524878 746 567744321 550 59507013 658 950469416 15 110542263 287 21460931 245 263368551 106 355335313 65 627846761 883 692472950 895 344633927 933 820076077 641 644639381 398 619408379 385 633794153 0 871354059 939 751025681 162 607855034 185 918499598 744 225799837 139 232863705 116 444788929 690 223270307 555 670148693 595 553123201 622 289281895 771 508364349 654 587661836 362 52340882 547 377407645 810 494373766 389 245740619 937 323875873 580 928144891 739 481699459 881 950876311 890 238864014 256 965030184 128 867862797 145 745335095 838 622243481 749 555843956 482 645789718 518 619094071 163 802348213 965 938774361 208 351279729 797 465113205 588 929385166 235 258938027 21 240310397 955 10563779 124 840967528 660 66654100 818 285003096 76 875870694 19 611004190 693 819414702 723 838672607 170 820532250 718 528180808 595 148597161 358 273186174 824 843519483 157 772062938 501 485443038 941 92509229 271 190965281 941 982906599 161 581389419 128 255375296 703 27452488 497 336241794 99 907998160 851 379578473 779 168569507 580 846455410 889 724961687 285 507384600 974 704666836 672 738253185 461 247900722 56 623329620 69 920682792 44 845799232 540 430755662 693 425836225 425 598459448 281 97453506 544 385905149 384 838152162 989 523587638 470 734988164 775 731573495 306 138025078 977 897113461 127 589037751 951 674643555 926 94045313 641 974109730 853 756814419 755 292843539 413 999893712 169 771250665 839 526331201 748 623483957 723 934794957 962 234126918 742 9929275 219 842844147 791 266671432 417 227736735 359 638688485 683 902472159 576 34173159 32 163704822 413 864753911 733 885284117 242 369372245 417 398458306 284 45077260 70 902263343 541 604396145 670 239665680 849 2713822 831 83592806 624 278759579 918 85995073 22 32028644 271 478560532 544 757631372 782 34356356 581 565747308 233 342501580 737 964593690 269 517786688 445 190158930 37 88012534 12 884936053 392 509617140 562 310377089 39 82400075 387 809454272 681 67086910 724 171652209 385 150032898 107 620001150 427 29196480 479 913800695 94 400009876 661 826585345 535 436830812 39 570098678 806 534611008 407 546890954 616 641639175 852 430484455 454 294135316 956 241318368 65 342618098 245 488817598 964 172618743 618 746652411 840 664552788 133 888462013 900 216730101 889 278025556 424 580832556 373 369294501 525 482571814 952 711526464 622 565880963 964 245074190 67 860513033 970 825209255 218 930897515 994 3321448 440 940819633 628 995316704 988 572493464 733 389213623 453 937838144 239 169156048 958 96937631 911 471925493 708 556959567 833 181852077 412 340544319 759 637092263 414 773304860 472 667619198 57 723921316 458 836101942 235 27008343 401 727091555 684 402502871 297 104786864 735 498614360 777 97303439 19 223604279 20 962846491 194 744420820 269 161128308 360 383510754 702 20553724 309 676997927 390 258619370 958 909617406 765 856416635 258 942751362 450 154732227 707 524142411 294 384502565 485 327189837 976 471986904 110 244415913 816 568044300 959 397397868 944 60400753 324 381424327 127 182558634 274 32934590 86 856861285 317 416215519 621 107448989 539 548772307 0 101881447 953 815569231 804 50220134 582 802686873 434 615278655 3 482868159 703 40050596 673 761229669 146 99429836 158 252402203 645 949007817 48 518353074 253 959241225 630 696859146 371 335059241 518 633455974 77 117850279 37 29968333 223 217173979 282 873790657 672 997580709 618 106121436 769 149037736 750 511507764 272 884151385 139 398947803 404 222700578 34 289427195 778 470819286 213 963130126 820 279800733 155 77190939 626 603003791 550 115366765 300 18188386 978 188609101 22 154204678 455 282700385 309 748993963 668 61770238 821 458148817 678 503388243 470 431769621 680 637825452 630 985353849 953 891369429 267 244133478 236 892214910 347 879857306 643 980296034 392 47255664 631 442178288 866 538416196 997 40789704 143 705354587 705 469563334 834 25558900 813 683057819 675 221635058 92 696366827 182 662934398 781 795936010 347 477764633 854 292399764 777 802095096 491 479028003 933 547773067 874 587925459 626 162078759 3 500497749 218 159157984 37 238098872 785 513806600 281 254171318 783 624603403 803 867352757 384 675114946 609 832704687 91 111696367 628 137882701 706 511887274 747 525215689 820 187041303 783 679209419 544 296524225 208 187082792 362 35986168 522 149973040 189 674552774 135 235790644 484 642086578 138 142087393 83 992493041 426 757919751 913 467677550 71 414671589 262 19823179 70 833951633 530 604266179 187 396099908 804 107874799 287 771559296 323 285034092 32 58450390 198 371425557 822 956853631 46 474076412 314 485190336 800 678718814 574 810462939 971 786282959 951 77114566 851 116728323 79 287837391 953 390738172 857 37006942 743 935165650 313 534516216 590 50722123 515 593073450 803 154084057 96 502545961 277 545298615 345 191863975 185 603080494 13 462818332 989 802279168 935 669792002 684 455399814 716 447409993 525 324713248 982 653322279 27 890291036 710 574054530 392 654891937 811 731604539 304 568002143 161 893215969 536 260287548 357 501326113 518 671686970 352 606819859 916 349693075 1000 763055787 948 125258377 795 315084411 259 851099387 979 881420120 243 733130121 571 616196403 91 625537618 371 194912097 291 806168996 355 514587230 457 784871453 516 878863093 592 684328616 6 648255564 775 915568030 639 226938408 239 866487908 943 139837978 46 491075367 622 639994492 612 750902458 20 75995416 894 118028057 588 49811166 48 959121538 503 216104915 186 610040802 350 921146904 223 127508604 422 447186151 448 584293498 158 671890194 397 391295551 185 730920588 33 64438355 757 506644336 913 934940619 43 35606565 741 853311788 821 841160689 584 611603891 711 254177205 431 119696612 264 41530274 854 597818258 711 364823964 94 578044602 72 73044526 854 793960888 299 916591691 167 614666308 510 85252148 848 367230531 221 358037196 564 386442762 914 771306976 103 928676799 485 174148165 669 160857003 956 556663722 153 453245952 103 837516571 214 651396339 950 394801118 573 973020576 985 560083064 675 866160687 386 332687529 919 397676053 445 638571521 626 705488811 666 995544440 59 594062078 789 105312560 152 737334434 842 654082528 849 467042956 177 665661892 297 1507373 860 642920762 970 205107869 412 16358839 527 727841018 687 847320756 521 186807728 800 844041933 594 218835128 905 642154771 468 968498531 408 924848227 550 123395983 301 10481610 642 968222485 438 808659762 444 598889867 586 696300620 4 342292859 771 518175073 555 428961372 66 419947255 302 910332451 319 609368176 863 523927472 434 55867398 511 667349007 303 791436784 659 564576649 587 509222173 266 750042743 552 845893616 923 731326656 646 95845531 6 892378661 392 655515713 85 900812352 205 112918005 911 732912079 644 490725402 267 320617397 219 38020791 818 558819789 243 330066647 279 459543634 381 140614627 781 279033057 589 429691195 938 85390589 793 570651935 604 404075447 14 395664602 250 232998500 182 710631690 543 384087971 15 942659944 867 687616658 601 809492473 734 35361719 981 772717534 821 289197662 732 656667814 120 506255499 638 540350730 594 519763475 927 463666541 935 564241357 900 238279928 332 195638439 770 911485934 172 103968670 169 6930468 968 796041371 391 478131134 882 263253871 540 136126787 191 116476997 930 277176391 302 803045552 560 757094516 571 794334066 152 476254266 513 958193041 667 58507269 956 673071015 297 870066512 981 188227188 649 556845024 283 297055048 861 981425177 707 259588854 208 569593029 102 301914005 417 238564966 152 553477030 848 767462040 262 670510859 215 841841874 129 983706696 720 249027380 121 842231857 132 755104845 595 32717392 86 120214908 385 813468846 251 425100315 447 922963365 482 419579448 136 889649142 825 912578687 999 940680554 324 242862961 259 731439867 328 214405689 151 988780244 563 504703724 974 268814586 285 411426761 910 68409582 244 596479875 894 396207141 659 864610248 929 811067252 147 213540 440 82428976 195 320884339 671 928409301 224 789575620 801 774967942 360 48861836 397 619878855 8 336203950 394 655024514 86 868170899 904 549100544 510 928859304 595 240695993 802 829363154 558 766463144 593 193823789 565 284631725 734 44568921 908 532913248 77 871337040 759 580001909 459 201269316 822 403823126 597 555318014 459 757685760 623 947482279 206 858723902 927 996077771 815 619224210 112 235707475 459 414539227 86 676298527 317 161525581 773 176057308 777 377354892 241 556259950 279 287295592 16 178310418 746 603073268 74 305636 376 960924737 887 836352627 794 891775496 765 849652533 471 610082747 91 676884621 744 745362584 687 269356892 258 246622091 899 767879117 238 627949129 81 244385882 933 100144405 849 996812336 860 474707032 510 691412762 502 967261496 674 289195960 617 608441403 123 530080838 450 959232412 533 469970910 473 579854307 965 417816701 162 261941729 539 290187684 228 801515798 433 388187269 420 538332858 89 626111113 103 95490484 427 248395010 418 838395046 878 127810426 919 252715334 187 861290778 256 343097454 65 885459031 368 320298236 411 288593967 80 819579249 251 802894175 873 158240399 838 90581075 950 100413665 343 717625167 135 321006464 958 543061181 86 915503284 573 284527047 902 246725279 452 596575174 995 265417456 61 766202492 852 666009993 656 255618441 863 969319658 616 520247037 313 992241424 554 593805045 773 94874888 407 764141507 567 73482791 154 415317989 44 454785193 983 300907865 209 664303904 146 868412167 51 728755014 497 787402610 70 748214248 969 461525576 527 591921142 81 769164893 462 901729338 192 476374399 414 175082898 166 983914998 193 369416872 428 678020194 627 391586161 834 807801511 759 762389271 92 575082669 60 414260527 443 162707995 759 19241994 894 517342472 319 272694801 257 939667674 310 379718145 160 196615719 239 419484010 593 178173479 350 459852570 336 35043354 903 743657281 195 410895430 678 74256934 485 139637864 235 327501577 856 711640533 906 314298758 365 652272494 196 252500139 15 909657443 282 833614247 237 176041380 179 578535645 131 901835275 804 970165611 352 590165923 347 200235591 299 606335323 376 262183437 131 970203783 640 846927191 505 682842808 790 708987327 476 988547927 112 899784061 389 968818890 230 127553911 412 866513913 152 955525914 200 913188980 587 456293441 509 897962254 602 974664288 840 922376174 567 909856340 286 847387637 363 206626456 842 850609044 146 433170679 768 320653165 288 113158183 965 12775344 732 832504922 865 861751085 473 428719174 789 916139533 848 219697195 557 413821752 661 603981992 803 391684278 606 707910656 323 741872425 792 493208999 240 432977166 861 227715196 687 711744366 169 47258406 373 171492960 295 949424038 754 239738773 631 55026904 474 603284601 936 612855536 156 183586055 464 320415106 368 315737720 717 978355912 817 680490625 596 574155941 596 394210454 137 509342842 818 849368529 530 269434147 186 857401050 840 129310723 239 243522022 23 539025400 89 749004882 826 285994677 726 281363791 141 259025240 515 37348724 17 50228829 450 864169160 657 649404502 331 354109432 511 831924569 41 495428643 530 542579190 473 307345208 869 932287897 659 923282914 994 98144253 800 663615433 436 734970093 323 425736876 597 385080973 830 919325395 942 901557315 24 264231860 665 113497998 832 978662268 465 319890740 838 601030852 835 994566282 913 414226345 507 870873839 38 909484946 998 992439537 640 371801324 66 755841224 586 442898094 564 991329861 477 645715467 257 590795517 376 358641382 744 326972780 946 500777921 915 289883459 406 963005104 544 429518109 173 927596643 812 316575370 737 659578834 494 45084308 126 665866311 799 184099888 770 715381740 942 882846414 401 268279484 847 283905503 539 335456330 322 883545787 188 319668522 351 847950071 747 813404078 15 57078070 876 777476473 758 874133067 887 311112261 198 845626139 343 642360429 706 251950290 794 400136126 7 642576105 108 229330018 298 430812865 806 946699980 474 903985102 303 283093232 618 105817692 742 458290585 875 873857839 509 420996850 472 274656437 446 356014605 571 80869041 331 593555602 376 226585884 433 873766945 520 893653323 808 577669361 882 343118650 815 121010688 322 994664429 721 718970719 552 321770195 433 618265466 981 143876506 905 825465977 564 586658528 167 888183162 571 431794623 968 315149448 340 258878883 141 350827743 532 299416055 466 450128614 186 249894418 124 897529347 749 278763188 967 700857124 571 493192336 591 892276447 703 426095824 629 872344439 62 477778052 767 61071629 573 38915122 713 475552523 939 34379436 546 833009184 886 489232870 107 826769856 940 455885783 443 813239628 274 131831018 276 134582764 392 737937344 545 212720735 876 180467553 334 745590596 831 482378263 757 529632041 209 698325218 756 835354459 619 643497930 448 438752626 952 307173867 859 180770489 577 235012217 223 230513725 922 985535879 821 166961738 361 556912154 216 159712455 859 137135548 881 683960728 856 603811930 623 550582915 262 904558243 990 298105037 112 602429155 603 326255912 544 500375390 911 173596895 961 277328222 232 575803186 307 153886529 57 714014258 319 767317776 944 742450297 308 550902596 996 148472847 887 614800605 645 53527774 374 152165142 494 143217921 389 984741994 399 419096647 547 342808651 295 82463750 740 772617208 884 260966088 164 378635429 502 556945044 771 84751043 513 381327783 570 515788238 933 627627594 975 674050117 652 686644995 410 448440733 32 38223129 96 320624204 400 241250820 108 78235578 451 285591440 431 399602629 11 234104446 779 687948577 969 429030771 890 744136035 564 615032230 208 663178929 98 380667100 436 601466272 600 657669962 47 477682221 634 85322782 341 388731765 185 433456381 141 197887118 279 272270553 176 459961976 428 943302297 451 920669744 251 770471581 529 576606553 713 200907841 310 832800111 378 558200212 725 839809092 309 398393246 556 639376191 200 484127503 593 865630988 95 767517670 451 874584789 263 161766469 511 797200414 467 654616147 781 389914923 322 183181070 271 315399518 424 885257416 442 944172252 786 452561053 56 539496810 333 34258684 263 66103712 969 889945306 783 336617824 688 356093989 88 838320549 327 26946991 528 227914788 827 343817630 343 661699195 768 489068471 228 268356300 938 400479225 647 926809507 360 977339995 42 911917422 986 147593379 645 602767683 798 218095153 393 665233480 411 570894218 582 119220783 534 84305421 600 21558839 581 792688077 974 59654358 870 567326486 746 928671159 427 364870575 608 458619164 975 714871933 825 441798398 602 110281100 3 819569472 995 913084364 739 225584919 134 685937415 272 128460113 880 24102245 424 541752437 611 927202777 422 436742152 981 847771043 26 619143887 641 1170181 683 551154255 470 543071808 382 507779864 375 656129811 241 63493346 271 748421213 652 522720090 275 908092406 613 171075055 420 619873502 89 620410655 159 986146229 610 603289365 735 791917920 232 420914541 668 429896442 217 57260740 847 799211669 179 430977777 78 967052008 858 585140409 140 721875468 852 619423548 981 650447876 625 811492251 958 957074587 343 773308578 221 556558727 816 924381468 841 859666144 689 148439835 474 932619660 180 588370992 81 527462077 581 128843222 400 281855721 197 51231223 897 865074890 916 389937772 313 181407868 901 823869142 857 845919810 665 246887722 803 567925674 714 444141089 159 115312167 417 257102367 88 614194683 591 633634619 816 426075997 587 238631191 514 82024023 528 77825243 410 821488329 514 988282009 278 814995982 306 984537346 15 947905597 774 204614067 929 422112372 49 218302932 655 895513185 670 541623747 463 141750403 267 644268469 733 359934246 45 399278300 969 424947380 238 956479684 324 631816574 991 932663124 476 817494638 504 245638562 640 837196219 457 38734018 728 82991823 480 293570341 539 825034755 260 734239932 14 661248508 927 467077053 213 84373374 549 271991103 50 948278064 892 556437580 354 769164797 799 38328666 175 999944465 477 829500418 590 92217869 970 673602418 610 52471205 634 476218949 312 715164771 14 157129128 59 154509921 985 391982121 715 343054115 499 228207098 657 136977180 792 109838755 283 222144330 986 184211259 546 137352267 340 283325135 349 613741996 706 142260898 253 299832300 943 941732505 217 354582806 14 371209246 232 826854071 543 172750842 40 787611194 886 415854004 234 332051702 208 947772958 211 390136127 31 57564806 464 290842756 294 122498085 281 750530370 838 684751282 994 659991872 646 803875976 189 347934090 82 636738003 417 291414719 65 782920728 800 918783639 530 797694995 99 485443960 644 340386072 916 351051304 60 995608152 298 89578966 382 312540283 82 880810117 438 246117677 938 322406991 698 661739799 40 922375565 157 507878276 632 835420430 33 925285845 88 864434025 340 192579751 135 652259285 757 387545002 730 786342974 228 989006117 676 746732364 684 441433437 978 100856687 309 817074342 814 514267879 555 605222524 769 754245473 744 638431652 753 372297706 902 345701888 196 432341088 974 460616689 842 548709221 381 30252482 922 673967451 989 408173020 807 179180901 928 355420212 680 770103287 478 470506336 438 24584351 374 31002843 873 453087993 478 431624730 796 86838453 343 949960203 655 408845033 955 345439455 705 914885114 536 240404940 306 266544976 553 983729152 831 779645548 376 742090063 436 78391304 985 747952811 462 281942757 895 175718539 231 240831448 97 519470463 918 5477915 948 886471964 873 773574183 206 94126764 442 767631596 663 809411421 161 623121722 130 151069202 663 538962664 912 218714495 482 792493122 84 770526123 229 412534504 281 420685565 464 282327469 380 29439138 905 122191413 205 233567898 94 222384037 144 144931649 947 279577020 108 247209723 56 868644919 994 501872480 963 190610648 331 210352003 598 653365706 916 958331340 106 233220617 896 711774376 604 649503820 734 340168524 349 6702501 273 349383611 497 274794051 531 527174458 923 21571754 814 412115577 578 605172569 524 586526019 558 156726382 844 627336554 103 79479856 293 631253456 108 896014132 378 872107534 429 830912375 308 869086817 788 315634457 238 875103189 430 345858137 876 58223053 354 561811430 837 489389738 224 913894328 303 884039172 526 497589651 69 306296616 540 888325986 232 10410903 73 111724500 422 328104152 204 874006878 495 740480365 323 121352733 529 62999075 987 464960158 988 61580004 627 869072624 430 67851004 225 364838954 159 280198204 390 339356060 857 433858968 873 620878590 79 782329137 302 37608894 662 183842479 438 631860237 714 681808679 786 553694541 490 772511161 741 627039090 213 14738967 1000 433276676 403 473957789 60 599357596 57 413511700 73 875812366 939 465085492 498 95106887 645 535385670 242 338661240 684 38461840 466 58201118 899 546946068 730 749222041 562 149133506 189 324966328 932 399722701 644 397967313 376 778763631 669 35378831 694 837567537 709 60170518 939 617773337 413 386986010 53 633218722 923 526943532 417 237644728 304 754593343 333 312827608 955 359401593 699 197379932 737 201640532 113 571843193 667 760342720 76 242025714 771 715891233 809 369336318 554 322211248 608 572962092 277 187775368 826 194341819 858 509030952 939 52182368 357 790075152 800 216252814 824 683228611 189 846618586 253 333852796 148 19692388 475 381985583 419 624472077 772 320836738 273 10057325 550 140745780 430 853208343 243 340087209 541 492801163 17 403831728 351 257320527 23 858717023 447 44144126 887 729320853 41 240525817 34 848610727 34 675026468 758 355301661 214 33423195 983 83761764 763 167072704 115 155255278 766 962962392 310 412559704 811 304827682 891 521267096 554 552757536 773 659674737 896 67333435 742 113961703 602 304816323 756 281926260 711 507966079 976 276997774 81 293254699 328 926570561 132 896039582 896 634160969 219 831003749 194 121961035 81 151913824 720 203296120 597 607930563 699 855456127 204 863451565 842 844848776 865 123485695 870 336698252 438 306135570 202 630982555 768 77615061 391 570752355 602 681953530 942 307994663 735 459412963 820 588955536 191 735571485 373 322824460 470 409443926 113 464488871 453 45294659 958 692329537 360 957520969 425 589924400 310 869867256 331 872120543 680 685045111 546 788548991 898 51964757 423 450691111 456 573893246 771 332174525 398 862369179 807 341615244 994 251593236 536 413516779 145 805036360 294 182481625 485 481374730 611 463490540 574 295608740 904 16083271 917 797261657 400 141504170 150 501383049 357 638996812 68 54349092 328 944378052 272 114209418 689 807534114 183 934286388 589 532951908 645 293739559 244 192042090 541 127559127 570 336857891 122 762396219 275 189217544 373 394175856 315 64345969 417 983466176 545 191626635 51 873226043 612 955168075 243 285981306 70 508403138 167 651364813 826 217358070 47 244590980 189 119300739 282 89395426 531 291794844 643 419434957 406 851485590 136 628501051 446 686941825 273 735063026 692 109809080 587 533058069 692 895457219 153 480963941 330 994130203 567 942346080 623 372155589 841 60092489 853 731772200 633 239814925 777 735796592 303 144298972 113 227467588 17 335643887 958 351693234 456 727611017 529 253813278 536 660965931 878 287904845 504 54317625 229 630922343 294 491423376 139 413702961 553 372049673 180 757364134 894 773798091 140 998163362 424 456132554 501 736989268 129 152222674 534 824543943 885 811452045 256 842876353 338 30603682 621 219742338 964 66596660 255 26758050 224 137370736 448 681863296 445 940716590 992 654442659 909 135031712 549 37150560 77 871362829 196 681884178 20 699467636 756 747976269 408 409319841 761 209136777 239 38046284 560 355922993 941 241470569 854 369561389 421 253075276 126 28344227 639 662924438 861 998954109 648 65453074 457 377200722 800 803037901 585 32934567 953 725267255 468 950263413 334 291899303 870 313831722 759 238167369 405 551655711 313 15331595 354 404416582 51 812017679 275 774011745 951 665025556 23 162725337 373 396032326 893 591737617 838 872821568 836 135341178 915 757729061 918 855598275 737 166381125 835 529094303 930 595250265 171 571828360 103 723931150 735 194165291 884 272288018 261 601887021 622 595563919 682 65315490 315 111048672 450 19131715 157 371881830 122 73518913 127 613615001 567 532354532 51 741978395 511 432652715 933 386618580 263 429415307 331 483514570 583 60234926 532 308558545 677 298388749 194 50739197 104 25750456 159 760594702 938 854968508 783 778620508 729 27208594 58 370366075 758 944727297 758 624151970 260 956863303 430 376393348 91 707642929 520 553735550 717 538212153 106 382717364 409 563497898 965 669356409 905 438185364 576 591354872 706 647560131 795 86967236 615 235212460 98 229257106 550 539246330 391 3225657 306 262870933 138 85994355 785 923706067 180 14034832 139 185083859 514 853732977 314 983755620 44 229462824 783 248130647 731 58776315 710 946370993 375 852257991 714 741253891 611 188489511 103 117738078 105 27708420 727 996859032 891 849767027 371 103743634 627 340033928 731 794387590 26 625455668 586 540472674 163 954936889 444 989942842 588 191621609 731 846816602 765 982783938 691 243371466 186 492506515 78 450416561 79 527042683 498 323171351 190 583203604 83 342069316 610 941496010 648 710620128 63 273553272 483 74268088 528 746129577 192 256346069 779 959370819 676 945687198 628 963127960 534 300125788 916 43628714 667 500866654 454 907086145 106 648797672 483 86276865 153 332185500 424 872652131 863 503162615 736 27668710 192 411902290 83 437179598 684 382903514 225 142534675 592 934188073 567 473015504 81 138431084 570 653103308 893 409425392 751 59832449 9 615448932 268 209947808 470 647119084 281 493066533 226 88729610 841 51822273 537 611272013 481 776087340 609 154217022 153 972043587 479 62572673 140 298650100 585 230517036 589 421469556 639 325028192 169 732109960 332 913828705 849 348241281 417 369480653 218 764790249 721 487115380 750 176003421 247 981428759 221 911954161 3 201900260 316 439789658 567 260340951 73 213813678 499 453512444 222 884984191 745 616350940 815 93042990 15 837696538 615 861439919 433 703624500 783 238901847 49 372161191 178 449823785 459 206786372 838 11832938 167 793980505 980 414375604 301 197816839 87 365392185 443 122677562 941 636086347 777 65294390 976 672905419 99 920901233 884 136591971 779 265309513 447 947563820 524 613781626 884 272282211 637 359761051 346 LRRRLLLRRRLLLRLLLLRLLRLRRLLRLLRRRRLRLLRLRRLLLRLRRRRRLRLLRLLRLLLLRLRRLRRLRRRRLRLLRRRRLRRRRLRLRLRRRRRRLLRRRRRRRLRRRLLRRRRRLRLRLLRRRLRRRRRLRLLRRRLRRLRRLRLLRLRLLRRLLRLLLRLRLRRLRLRRRRLRLLRRLLRLRRLLLRRRLRRLLLRRRRLLLRRLRLRLLRRLLLRRRRLLRRRRLRLRLLRLLLRLLRRLRRRLLLLRLLRRLRRLLRRRLLLRRLRRLRLLLLLRRRLRLLRRRRLLRLLLRLLLLRLLLRLRRLLRLLLLLLLLRRRLRLLLRLLLLRLRRLRRLLRLRRRLLLRLLLLRRLRRRRLRLLLRLRLLLRLLLLLLRRRLLRRRLLLRRRLRRRLLLLLRRRRLRRLRLRLRLLLRRRLRRRRLLLLRRLRLRLRRRLLLRRLRLRRRRLLLRRLLRLRRLRRLRLRLRLLRRLLRLLLRRLLLLRLRLLLRLRLLLLLLLRRLRRRRLLLLRLLRRLRRRLRLRLRRLLLLLLRRLRRRRRRRRLLRLLRRRRRLLLRRRRLLLRLLLLLRLRRLLRLLLRLRRRLRRLLRLRRRRRRLLRLLRRLLLLLLLLLLRRRRRLLLLLLRLRLRLRRRLRRRRRRLLRLLRRLRRRLRLLLRLRLRRRRRRLRLLLRRRRRRLRLRLLRLRRRRRLRLRLLRLRLRRRRLLRRRRLRLRLRRRLLLLLRLRRLLRLLLLLLRRRLLRRRLRRRLRLLRLLRLLRRLRRRLLRLRLRRRRRLRLRLRLLLRRRLRRRLLLLLRLRRRRRRRLRLRLLRRLRLLRLRRRRRRLLRLLRLLRRLRLLLRRRLLLLRRLLLRRRLRRRRRRRRLLLLRLLLRLRRRLRRRRLRLLRLRRRRRRRRRLRLRRLLLLLRLLRRLLRLLLLLRRLLRLRLRLLLRLRRLLLRRRLLLLLLRRRLRLRRLLLRLLLLRRRRLLLRLLLRLRRRRRRLRLLLRLLLRRLLRLLLLLRRLRLLRLRRRRRRRRLLRLRRLLLRRRLRLRRLLRLRRRRRRLLLLRLRRLLRRLLLRLLLLRLLLRLRRLRRLRLRRRRRRLLRRLRLLLLLRLRLRRLRRRRRRRLRRRRRLLLRLLLRLRRRLRRRLLRLRLLRRLLRRLLLLLLRRRRLRRLRLLRRLLRLLLRRLRRRLLRLLRLLLLLLRRLLLLLRLLLRLRRRLLRLRLRLLRLRLLRLLRLLLLLRLLLRLRLRLRRLRRRLLRRLRLLLRRRLRLRRRLRLLLLLRLRRRRLLRRRLLLLLRLLRLLLRLRRLRLLLRLRLLRRLLRRRLRRLRLLRRLLRRLRRRLLRRLLLRLLRRRRRRRRRLLRRRRLRLRRRLLRLRRRRRLRLRRRLLLLRLRRRRLLLLRRLLLLLRLLRLRLLLRLLRRRLLRLLRLRLLRLLLRLLLLLRRLLLLRLRLLRLLRLRLLRRLRRRRLRRRLRLLLLLRRRLLRRLLLRRLRLLLLRLLRLLRRLRRLLLLLLRRLLLLRLRRLLRRLLRRRLLLLLRLLLRLRLLRLLLLRLRRLRLRLRLRLLRLRRLLRLRRRLLLRLRRRRRLLRLRLRRRLRRRLLRLLLLLRRRRRLLLRLLRRRRRRLRRLLRRLRLRLLLLLLRRLRLRLRRLLRLLRRLRRRLRLLRRLRRLLLLRRRLLRLRLRLRLLLRRLLRRLLRLLLLRRLRLLLRRLLLLRRLLLLLRRLRRLRRRLLRLRRRLLRRRRLLLLLRLRLRRLLLLLLLLRRLRRRLLLLLLLLRLLLRLLRRLLRLLLRRLLLRRRRRRRRLRRLLLRRRRRRLLLRLLLLRRRLLLRRRRRLRLRLRLRLRRRRRRLLRRLRRRLRLLRRLLRRLLLLLRLLLLRRLRRRRRRLLLRLLRLLRRRLRRRLRLRLLRLLRLLLRRRLLLLLRLLRRLRLRLLLLRLLRLRRLRLRLLRRLLLLLRLRLRLRLRRRLRLLLRLLLLRRRLLRRRRRLRLRLRLLRLLRLLLLRLRRLRLRRRLLLRLLLLLRLRLRRLLLLRLLRLRRLRLLLLRLRLLLRLLLRRLRRLLRRRRRRLRRRLLRLLRLRLRRLLLLRRRLLRLLRRLLRRRRRLLRLLRLRLRRRRLLRLLLRLRLRRRRLLLRRRLRRLLLLRLLRLRLLRRRRLLRRLRRLRRLRLLRLLRRLLLLRRRRLRRLLLLRLRRRRRRLLRRRLLRLLLRLRRRLLLLRLRRLLRRRLRLLLRRRRLRRLRRRRLLRLLRRLRRRRLLLLLLRRLLLLLLLRRLLLLLLRLRRLRRRRLRRRLRLRLRRLRLRRLLRRRRRRLLRRLLRRRLLRLLRRLLLLLRRLLRRRRRRRLLLLRLRLLRRLRLRRRLLRLLLLRRLLRLRRLRRRRRLLLRLRLRLRRRLRLRLLRRRRLLRLRLLLRLLLLLLLLLLLLRLRRLLRLLRRLRLLRRLLRLRRLRRLRRLRRLLLRRRLLRRRRRRLRLRLRLLLLRLLLLLLRRLRLLLLLRLLLRRLRLLLLLLRLLLRRLLLLRLLLLLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRLLLLRRRRLLLLRRRRLRLRLLRLLRRRRLRLRRLRLLRRRLLLLRLRRRLLLLRRRRRLRLRRLRRLRRLLRLRRLLLRRRRRRRLLRRLLRRRRRRLLLLLRRRLRRRRRRRLRRLRRLLRLRLRLRRRLLLLLRLLRRRRLRRLLLRLRLRLLLRLRLLRLLLLLRRRLRLLLLRLLLRRLLRRRLLLRRRRRLRRRRLRRRLLLLRRRRLRLRLRRLLLRRLLLLRLRLRRLLRLLLRRRLRRLLLRLLRLLRRLRLLRLRRLLRLLLRRRRLRRRRRRRRLLLRLLLLLRLRLRLLLRRRRLLLLLRRRRLLLLLRLRLLLLLRRLRLRLRLLLLRLRRRRRLRRLRRRLRLRLLRRRRLLRRRRLLLLRLLRRLLRRRRLLRLLRRRRRRRLRRLRLRRRLRLLLLLLLRLLRLRLRLLLLLRLRRLRRLLRLLRRRRRLLRLRRRLLRLLRLLLLRLLLRLRRRLRRRLRLLLRRRLLLRLLRRLLRLRRRLLRRLLLRLLLLRRRLLRRLRRRRRLLRLLRRRLLRLRRLLRLRLLRRRLLRRRRLRRRRLLLLLRLLLRLRLLRLLRRRRLRLRRLLRRRRRRLLLLLRRRRRRRRLRLLRRRRLRLRLRRLRLRLLRLRLRRRLLLRLRRLRRRRRLLRRLRLRRLRLLLLLLRLRRLRLLRRLRLRRRLLLLRRLLRRRRRLLLLRRRRRRLLRRRLLLLRRLRRLRLRLLLLRLRLLRRLRLRRRLLRLRLRLLLLRLLLRRLLLRRRRLLRRLRRLLLLLLLRLLRLLLRLRRRRRRLRLLRRRRLRLRLLLLRLRLLRLRLLLLLRRLRLLRRLLRLRLLLLLRRLRLLLRLRLLLRRLRLLRRLRLRLRRLRLLLRRRRLRRRLRRLLLRLLLRLLRRLLRRRRLRRRLRRLLRLLLRRLLLRRLLRLLLLRRLRLRRLLLLLLRLRLRLLLLRRLLLLRLRLLLRLLRLLRLLLLLLRLLRRRRLRRLRRLLRLLLRRLRRRRRRLLRLRLRRRRRRLRLRRRRRRRLRLLLRRRLLLRLLLLRLRLRRRLLRRLLLRLLRLRRLLRRRRRRRLLRRRRLLLRRLRRLLLRLLLRRRRLLRRLLRLLRLLRLRLRLRRRRLRRRLLLLLLLLLLLLLLRRLRRRLRRLRLLRLRRRRLLRLLLLRRRRRRLLRRRRLLRRLRLRLRLLRLRLLRLLLLRRLRLLRLLLRLRRLLRLLLRRRLRRRRRLRRLLRRRRRRLRLRRLLRRLRRRRRLRLLLRLLRRLRLLRLRLRLRRLRRLRRRRRLLRLLLLLLLLRLRRLLRLLLLLRLLLLLRRRLRLRLRLRRLLLRRRLLLLLLRLRRLLRLLLLLLLLRRLRRRLRLRLRRRLRLLRLLRLLRLRLLRRRLLRLRRLLRLRRRLRRLLRLLLRRLLLRLLRLLRRRRLRLLLLLLLRLLLRLLLLLLRRLLRRRLLRLRRRRLRLRLLRLRLRRLLRLRRLRRRLLRRLRLRRLLLRRLRLLLRRRRLLLLRLRRLRRLRRRRLLRLLRRRLRLRLRLLRRLLLLRRRLLRLLRRLRLRRRLLLLRRRLLLRRLRRRLLLLLRLRLRLRRLLLLRLLLLLLRLLLLRLRLRRRLLLRRLRLLRLRLLRRLLLLLRRRLRRRRRLRRRRRLLLRRLRLRLLLRLLLRLLRLRLLRRRLLRLRRRLRRLLRLRRRLLRRLLRRRLRLLLLRRRRLLLRLRLLRLRLRLRLRLRLRLLRRRLLLRLLRLRLRLRRLLLRRRRLLRLLLRRLRLLLLLRLRLLLLRRLRRLRLRRRLLLLRRLLRLRLRLRRRLLLRLRLLRRLRLLLRLLLLLRLRRLRLLLLLRRLRLRRLRLRRRRRLRRLRRRRRLLLLLRRRLRRRRRRRLRRLRRLLRLLLLLRLLRRRRLLLLLLRRLLLRLLRRRLLLRLRRLLLLRRRLRRRRLLRRLLRRLRLRRRRLRRRLRRLRRLRRRLLLLLRRLLRRRLLLLRRLRLLRRRRLLLLRLRLLRRRLRLRLRRLRLRLRLLRRLRRRLRRRRRLRLRLLLLRLLRRRLRLRRLRLRLRLRLRRLRLLLLLLLLRLLRRRRRRLLRLRLLLLRRRLLRLLRLLLRLRLLLLRRLLRLRRRLLRRRLRLRRLLLRLLLRLRRLLLRLRRLRLLLLRLLRRRLRRLRLLLRLRRRLRLLLRLLLRRLLLRLRRLLRRLRLRLLRRLRRLRRRLLLLRLRLRRLRLLLRLRLRRLLRRRLRLLRLLLLLLLRRRLLRLLRRLLLLRLLLLRLRRRLLRRRLRLRLRRLLLLLLLRRRLRRLRRLLLLLLLRLLRLLRRLLRRRLRLLRRLRRLRLLLRLLRLLLLLRRLRRLLLLLRLLLRLLRLRRLLLLRLRRRRRRRRRLLRLRLRLRRRRLLRRRRRLLLLRRLRRRLLLRRLRLLRRLLLLLLLLRRLLLLLRLLRRRLRLLRRLLLLRRLLLRRRLLLLRLLRRRLLLRRRLLLRRRRLLLRRRRLLLLLLLLLRLLRRRRRLLRLLLLRRLLRRLRRLRRRLRRLLLLRLLRLLLLLRRRLLLLRRRLRLRLRLLLLRLRLRLLLRLLLRLRRRRRLRRLLLLLLRLLLRRRRLRRRRRLRLLRLRRLRLLLRRLLRRRLLRRLLRLLLLRRLLLLLRRRLLRLRLRLLLLLLLLLRLLLLRLRLRLLRLLLLLRLLLRRRLLRRRLLLLRRRRRRRRLRRRRLLRRRLRLLLLRRRLRLRRRRLLLLLRLLLLRRLRLLRLLLRLLLRLLRRRLLRRLLLRLLRLLRRLLLRLLRRLRLRLRLRRRRRRLLLLRRLLRLLLLLLLLLLRLRLRLRLRLRLLRLRLLRLRRRLLLLLRRRLRLRLRLRRLRLRRLLRLRLRLLRLLLLLRLRLLLLRRRLRRRRRRRRLRRLLLRLLLLRRRLLRLLLRRLLLRLRLRRLRLLLLLLLLRRLLLLRRRLRRLLRRRLRLLLLLLLRRLLRLRRLLRLLLRRLLRRLRLLRRLLLRRRRRRRRRLLLLRRRRRRLRRRRLLLLLRRRLRRRLRRLLLLRRRRLLLRRRLLLRLLRRLRRLRLRRLRLLLRRLLRLLLRRRRRLRRRRLRLRLRLRRLLRRRRLLLRRLRLRRRRRLRRLLLLRLRRRRLLLRLRRRRLRRLLRLRLRLRRLRLLRLLLLLRRRLLLLLRRRLLLLLLRRLLRRLRRLLLLRRRRLRLLRLLRRLRRLRLLRLRLRRLLRRLRRRLRLLLLRRRLLLRLRLLRRLRRLLLRRRRRRLRRRRRLLRRLRLLLLRLLRRRRRRRLLRRLRRLRLLRRRRRRRRRLLLLRRRRLRRRRRLLRRRLRLLLLRRLRRRRLLLRLLRLRRLRRLLRLRRLLLLLRLLRLLRRRLLRRRRRLRLLRRRLLRLRLLLLRLLRLRRRRLRLLRLLRLRRLLLRRRLLRRLLLLLRRRRRRLLLLRLRRLLLLLRLLLLRRLRRLLRRRRRLRRRRRRRRRRRLRLLRLLRLRRLRLLLLLLRRRLRRRLLLRRRLRRLRLRRLLLLRLRLRLLLRLLRLRLRRLLRRRRLLLRLLRLRRLLRLRRRLLRRLLLRLLLLLLRLRLLLLRLRRRLRLRRLRRRRLRRRRLRLLRLLLRRRLLRRRRRRRLLLLRLRRRLLLLRRLLLRLLRLLLRRRRRRLLLRLLLRRRLRRLLRLRLLLLRRRLRLLLLLRRLRRLLRRLRRRRRLRRLLLLRLLRLRLLRRRLRRLRLRRRRRLRRRLLRLLRLRRLRRLRRRRRLLRRRRLRRLLLLRRLLLLLRRRRRLLRLRLLLRLLRLLRRRLLLLRLRRLRRRRLRRLRLLRLRRLLLRLRLRRRLRRRLLRRRRRLLLRRRRLLLLRLLLLRLLRLLLRRRLRLRRLRRLLRLLLLLLRRLRLRRLRRRLLRRLRLRLLRRRRRLRLRLLLLRRRLLLLLLRRRRLLRRRRLLRLLLRLRRLLRLRLRLRRRLRLLLRLLRLRLRRRRLLLRLLRRLLRLLRLRRLLRRRRLRLRRLRRRRLLLRLLLLLLLRRRRLLRLLRLLLRRLLLLLLLRRLLLRRLRRRLRLLRRRRLLRLRLRRRRLLLRLRRLLLRRLLLLRLLLRRLLRRLLRRLRRRRLLLRRRLRRRLRRLRRLLLRLLLLRLLRLRRRLRRLLRRLRRRRLLLRLRRRLRRRRRLRLLLLLRRRRLRRRRLRRLRLRLRRLLRLRLLLRRRRLRLLLLLLRRLLLLLRRRRLLRLRRLLRLRRLLRRRLLRLRRLRLLLLRRRLRLLLLRLRLRRLLRLLLRRLRRLLRRRRLLLLLLLLRRRRLLLLRLLRRLLLLRLLRLRLLLLRRLLLLRRRLLRRRRRLRRRLLLRRRRLLRRRRRRLRRLLRRRRRRRLRLLRRLRRLRLLRLLRLRRRRLRLLLRRLLLLRLLRRLRRLLRLLLRLRRRLRRLRLRLRRLRLLLLLLRRRLRLRLRRRRLLLRRLLLLRLRRLLLLRRLLLRRRLLRRLLLRRLRLRRRRLLLRRLLLLLRRLRLLLLLLRRRLRLRRRRLLRRRRLRLRRLRRLLLLLLRLRRLRLLLLRRLRRLRLRRLLRLLRLRLRLLLRRLRRRLRLLLLLRLLLLLLRRRLLRRRLRRLRRRLRLLRLLRLLRLLLLLLRLRLLRRLLLRRRLRRRLRLLLLLLRLRLLRRRLLRRLRRLRRLRRRLRRRRLRLLLRRRRRLLLRLLLRRRRRRRRRRLLRLLLRLLLLLLLLLLLRLLLLRRRLRLRRLLRRRLLLRRRRRLLLRLRLLRLRLLRRRRRLLRLLLRRLRRLLRLLRLLRLLLLLRLLLRRLLRRRRRRRLLLRLLLLLRRLRRLRLRRLRRLLRRLRRLRRLRLLLRLLLRRRRLRRRRRLRLLLLLRRRRRLLRLLRRRLLLLRRLRRLLLRLLLLRRLRLRRLRRLRRLRLLLRLRRLLRLLRLLLRRLLRLLRRLLRLLRLLLLLRLRLLRLLLRLRRLLRLLLRRRRLRRRRRLLRRLRLRRRRLRRLLLLRRLLLLRLRLRLLLLRLRLLLRRRLLRLRLRLLLLRLRLLLRRRRRRLLRRLLRLRLRRLLLRRRRRRLLRLLRRRLRRLRRRLRRRRRLRLRLLRLRLLLLLRRLLLLLLLLRRRLLRLLRLLLRRRLRRLLLLRRLLRLRRLLRLRRLRLRRLLRLRRRLRLRRLRRRLRLRRRRRLRRLRRRRRRLRLRRRLLRLLRLLLLRRRLRRLLLRRLRLRRRRLLLRLLRLLLRLRRLLLLLRRLRLRRRRRRLRLRRRLLRLRLLRLLRRRLRRRLRRLLLLLRLRRRLRLRRRLLLRLLLLRLRRRLLLLLLRRRRLRRLLRLLRLRLRLLLLLRLLLLLLLLRRLLRLLLRRRLRRRRLLLLRLRLLLLLLLRRLLRLLRRRRRLLRLRLRLRRLRRLRRLRRLRLRLRRLRRLRLLLRRLRLLRRRRLLRRLLRRLLRRRLLRRRLRLLRRRLRRLRLLLLRRLLLRRRLRRLRRLLRLRRLLLRLRRLLLLRRLRLRRLLRLLLLRLLLRRRRRRRRRLRRLRRLRRRRRLRLRRLRLRRRLRLRLLLRRLRRLLRRRLLRRRRRRLRRRRRLLRRLRRLLLLRRRRLLRRLLLRRRLLLRRRLLLLRLRRRRLRRLRRLRLRLLLRRRRLLLRLRLLLRRRRLLRRRRLRLRLRLRRLLLRRLLLRLLRRRLRRRLLLLRLRRRLLLLRRRRLLRRRLRRLLLLLRRRRRLRLLRRRRRLLRLRRLLRRRRRRRLLLRRLLLRRLLLLRRLLRRRRRLRRRLRLRLRLLLRLRLLLRRLRLLLRRRRLLRRRRLRRRRLLLLRLLLRLRRLRRRRRRLLRRRRLRRRRLRLRLLRRLRLLLRLRRLLRLLLRRRRRLRLLLLRLLRLLLRRLRLRRRRLRRLRRRLLLLRLRRLRLLRRLRLRRLLRRLRLRLRRRLLLLRRLLLLRRLLLRRRLRRRRLLRRLLLRRLRRLLRLRLLLLRLLRRRLRLLRLLLRRRLRLLRRRRRRRLRLRRRLLLRRRLLLRLRLRLRLRLLLLRRLRRLRLRRRRLLLRLRRRRRRRRRRLRLRRRRLLRLRLRRLRRLRRRRRLLRLRRRLLRLRLLLRRRLLLLLRLLRLRRLRRLRRRLLRRLLLLLRLRRRRLRRLLRRLLRLLRRLRRLLRLLRRRLLRLRRRRRLLLRRRRLRRLRRRLLRLLLLRLRRRLLRLRLLRLLRLRLLRLRRRLLRRLLRRLLLLRRRRRLRRRLLLLRLRRLRLLRLRRRRRRLLRLLLLRRLRLLLRRRLLLRRRLRRLRLLLRRLRRRRLRRLRLRRLLRRRLRRLLLRRRRLLLRLRRRRLLRLRRLLRLRRRRLLRRRLRRLRLLLLLRRLRLLRRLLLLLRLRLLRRLRRLRLRLLRLRLRLRRRLRRLLLRLRLLLRLLLLRRRLRRRRLLRRLLLLLLRLLRLRLLRLRLLRLRLLLRLRRRLLRLRRRLLLRLLRRLRRRRLRRRRLLRRLLRLLLLLRLLLLLLRLRRRRLRRRLLLRLRLLRLLRLLLRLRLLRLRRLLLRRRRLRLRLLLRRRRRRLLLRRLLLRLLLRRLRRRRRLRLRLRLLRLRRLLLRRRLLLRLLRRLLLRLRLLRLLLLLRLLRLLLRRRLLRLLRRRLLLRLRLRRRRLRRLLLRLLLLLLLRRLRLLRRLRRRRLRRLLRLLRRRLLLRLLRRLLLRLRLLLRRRRLRLRLLLLRLRLLLLLLLRLLLRRRLRRRLRLRRRRLLLRLLLRRRRLLRRRLRLLLLLRLRRRLLRRRLLLRRLLRRRLLLLRRRLLLRRRLRRLRLLLRLLRRLRRLRRRLLRLRLRRRRLLRLRRLLLRRRRLRLRRRRRRLLLLLLLRLRLLLLLRRLRRRRRLRRRRLRRRLLRLRRLRLLRLLLRLRLRLRLLRRRRRLRLRLRLLRLLRRRLRRRRRLLRRLRRLRLLLRLRRLLLRLLRLLLRLRLRLLRRRLLRRRRRLRLRLLRRRRLLRRRLLLLLLRRRLRLRLRRRRLLLRLRRLLRRRLRLRRLLRLRRRLLRLRLLRRLLRRRLLRLRLLRRRRRRRRLLLLRLRRLLLLLRRRRRLRLRLLRLRRRRLLLRLLLRLLRLRRLRRRRRRRRLLRLRLLLRLLRLRLRLRLLRLRRLRLRRLRRRRRLLLLRLRRRRRRLRRRLLRLRLLLLLRLRRRRRLRLRRLLRRLLRRLRLRLLLRLRLRRLLRLLRRLLRRLRLLLRRRLLLLLRLLRRRRLLRRLLLLRLLLLLLLRLRRRLRRRRRRLLRRLLRRLLLRRLRRLRLRRLLRRLLRRLRRRLRRRLRRLLRRLLLLRLLRLRRRLRLLLLRRRRLRLLLRRLRLRRRRRLLLLRRLRRLRLLRRRRLRRRLLRLRLRRRRLLLRRLLRRLLLLLRLRLLRRRRRRRRLRLLLLLRRLLLLLLRLRLLLRLRRLRLRRLRRRRLLRRRLLRLRRLLRLLRRLLLRRLRRRRLLLRLRRLRRRRRRLLRLLLRLRRRLRRLRRRRRLRLRRRLRLLLLRLRRRRRRRLRRLRLRRLLLLRRLLLRRRLRLRRLRLLLRLLLRRLRRLLLLRLRLLRLLLRLRRLLLRRRLRRRLLRRLRRRRLLRLRRRLLLRRRRLLRRRRRRRLRLRLLLRRLRRRLRRLLRLRRRRRRLLLRRRRRLRLRRLLLLRRRLLRRLRRLRRLRLRRRLLLLRRRRLLRLRLRLLRLLLLRLRRLLRLLRRLLRLRRLLLRLRRLRLRLLRLLLLLLLLLLLRRRLRLLLLLLRLLRRRRRRLLLRRRRLRRLRRRLLRRRRRLRRLRLLRLRLLRLRRRLLLRLLLRLRRLRLLRLRLLRLRRLRLLRRLLRLLLRRRLRRRLRLLLRRLRLLRLLRRLRLLLRRLRLRLRRLRLRLLRRRLRLRLLRRLRRRLRRRRRRRLRRRRLLRLLLLRLLLLLRRRLLLRLRLLLLLRRLRLRLLLLLRRRRRLLLRRRRRRRLLRLRRLLRRLLRLLRLRRLLRLRRRRRRLLLRRLLLLLLLRLLLRLRLLLLLRLRLRLRRLRRLRLRRLLRRLLLRRRRRLRRLRLLLLLLLLLLLLLRRRLLLRRRRLRLLRRRLLRLLRLLLRLLRRRRLRLLRRRRLLLLRLLRRRRRRRLRLRRLRLRLRLRLLLRRLLLRRRRLLRLRRRRLLRRLRLLLLRLRRLRRLLRLLLRRLLLRRRLLLRRLRLRLLRLRRRLLLLRLLRRLLRLLRLRLLRLRLRLRLRRLLRLLRLLRLLRLLRRLRLRLLRLRLRLRLLRLRLRRRRLRRLLLLRRLLLRRLLRRRLRLLLRRLRLLRRRRRRRRLLRLLRLLLRRRLLRRLRLLLRLRRLRRRRLLRLLRRLRLRLLRRLLLLRRRLLLLLRRLRLRRLRLLLLRRLRRLLLRRLRLLRLRRRLLLRLRRLRLRLRRRLRLLLLLRRRRLLLLLRLRRLRLLRRLRLLLRLRRLLLRLRRLRLRLLLLLLRLRRLRLLRLLLRLLLRLRRLRLRLLLRLLLLRRLRRRRLRLRRRRLLRLLLRRLRLLLRLRLLRLRLLLLLRLLRLLRLRRLLLRLLLRRLLRRLLRRRLRLLRRRRLLLRLLRRLLRLRRRLRRLRRLRLRLRLLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRLLLRLLRRRLLLLRRRLRRRLLRRRRRLRRRLRRRLLRRLLLRLRLRRLLLLRRRLLRRLRRRRLLRLRRRLRRRRLLRLLLRRRLRLRLLRRRRRLLLLLRRLRLRRLRLLRLLLRRLLRRLLLRLLRRLLRLLRRRLLLLRLRRRLRLLLLLLRRLLLRLRRRRRLRLLLLRRRLRRRRRRRLRLLLLLLLLRLLLRRLRRLLLRRRLLLRLLLRLLLRRRRLLRLRLRLRLRLLRLRLLLLRLLRRRLLRLLLRRLRLLRLRLLLLRLRLLRRRRLRRLLLLRLLLLLRRLRRRRRRRLRLLLLRRLLRRRLLRLRRRRRRRLLRLLLLRLLRLRLRLRLLRLRRLLRRRLRLRLRLRRLRLRRRLRRRLLRLRRRRRRRLLRRLRLLLLLRLLRRRRLRRLRRRLRRLRRRRLLLLLRRLRLLLLLLRLRLRRRLLRLRLLRLRRRRRRRRLLLRRLRLLRRRLRRRLRRRRLLRRRLLRRRRRLRRLRRRLRLRRRRRRRLRLLRLRRLLLLLRLLLRLRLLLRRRLRLLLRRLLRRLRLRLLRRRLRLLLLLRLRRLLRLLLLLRRRRRRLLRLRRRRRLLRLLRRRRRLLLLRLLRRLRLRRLLLRLRRRRLLLRRLLLRRRRRRLLRLLLRRRLRRRLLRRLRRLRRRLRLRLRLRLLRLRRRLLLLRRRRLRLLLLLRLRLLLRLRRRRLLLLLRLRRRRLRLRRLRLLRLLLRLRRLLLRRRLLRRRLLRLLLLRRRLLLRLLRLLLRLLRRLRRLRLRRRRLLRLRRLLRRLRLLLLRRLRRLRRLLRLRLLLRRLLLRRRLRRRLLRLLLRRLRRLRRRRRLRRRLRRLLLLRRRLRLLRLRRRLLRRLLRRLRRLLRRRRRLRLRLLRRRLRRRRRRLLLRLRLLLLLLRLLRLRRLLLRRLRRRRRLRRRRLLLLLRLLRLRRLRLLRRLLLLRRRLRLRLLLRLRLRLLRRRLRLRRLLLRRLLLLLLLLLLRLLRLRLLRRLLRLRLLLLRRRLRRLLLRLLRRLRLLLRLRLLLLLLRLLRLRLRLLRLRLLLRLLLLRRLRRLRRRLRRRRRLLRRRRRLLLRRLRRRLLLLLLRRRLRRRLRRLLRLLLLLRLLRRLRRLLLRLLLLRLLRRLLRLLLLLLRLLLRLLLLRRRRRRRLLLLLRRRLRLRRRRRRLLLRRLRLLLRRLRLRLLLLLRLLRLRLLRRRRLLRRRLLRRLRRRLLRRRLRRRLLLLRLRLLLRLLLRLRRLRLLRRRRLLRLLRRRRLRRRLRLRRLRLLLRRRRLRRRLLRRRLLRLLLLLLRLLRRLLRRRLLRLRLLLLRRLRRRRLRRLRRRLRLLRRRRRRLLLRLRRLLRLLLRRRRRRRLLLRLRLLLRLRLRLRLRLLLLLRLLLLRLLLRLLRRRRRLRLLLLLRRLLLRLLRLRRLLLRRRLRRRLLRRRLLRLRLRRLRRLLRRRLRLLRLLRLRRRLLLRRRLLLRRRRLRRRRLLRLRRLRLRRLRRRLRRRLRLRRLRRLRLLLLLLRLRRRLRRLRRRLLLLRRLLLRRLLRLLRRRRRRLRLLRRRLLRRLLLRLRLRLRLLRRLLLRLLLRLRLRLRLRRRLLRLRRRLRRRRRRLLLLLRLRLRLRRLRRLLLLRLLLRRRLRRRRRLLLRRRLRRLLRRRLRRLRRRLRRRLLLRLRLLLLLLLRLLLLRLLRLLLLLLLLLLLLLLLRRRRLRLLRLLLRLLRLRRLRLLLLRRRRLRLLRRRRLLLLRRLLLLRLLLLLLRRRLLLRLRLRRRRRRLRRRRRRRLLRRRRRRLRRLLRLRLLLLLLRRLRLLLLLLLRLRRRRLRRRLRLLRLLRRLRLRLRRLRRLRLRLLRLLLRLRLLLLRRRLRLRLLRLRRLRLLLLRLLRRRRRLLLLRRLRRRRLRLLRLLRLRRLRRLLLRRLRRRRRLLRRLRLLLLRRRRRRRLRLRLRRRLLLRLRRRLRRLLLRRRRRRLLLRRLRRRLRLLLRLRLLRLLLLLLLLLLRRRRLLLRRRRLRRLLLRLLRLLRRLRLLRLLRRLRRRLRLRLLRRRRLLRLLLRLLLLRLLRLRLLLLLRRLLRRLRLLRRRLRLRRRLLLLLLRLRRLLLLRLRRLLLLRRLRLRRLLRLLLLRRLRRRLLLLRLRLLLLLLLLRLRRRLLLLRLLLRRLRLRLRLLRLRLRLRRLRRLRRRRLRLLRLLLRLLRLLLLLRLLRRLRLRRLLLLLLLLLRRRLLLLLLLLRLRLLLRLLLRRLRRLRLLRRLLRLLLRLRLRLLLLLRRRRLRLRLRLRLLRRRRLLLLLLRLLLLLRRRRLRRLLRLRRRLRLLRRRLRLLRRRLRRRRLLLRRRRLLRRRLRLRRRRLLRLLLLRLLRLLRRRRLLLRLLRLRRRRRLRRRRLRLLLRRRLLRLRLLLRRRRRLLLRRRRRRLLRLLLRLRRRRLRLRRLLLLRRRRRRRLLLRLRRLLLRLLRLLRLLLLLRRRRRLLRLLRRLLRRLRLLRRRRLRLLRRRRRRRLRLRLRLLLRRRRRRRLLRRLLLRRRRLRLLRLLRLRRLRRRRRLRRLLLLLLLRLRRLRRLRRLRRLLRRRLLLRRRLRRLLRRLRLRRLLRRRRLRRRRLRRLLLRRRRLLLRRLLRLLRRLRLRLLRLLLLRLLLRLLLLLRRRRRLRLLRRLRRLLRLRLLRRRLLRRLRRLRRRRRLRLRLLRRLLRLLRLLRLLLRLRRLLRRLLRLRRRRRLLLRRLRLRRRRRRRRRLRRRLLLLLLLLLLRRRRLRLLLRRLRRRRRLLLRLLRLRRLLLRRRRRRRRRRRLRRRRRLRRLLRRRLLRLLRLRLLLRLLLRRRLLLRRLLLLLLRLRRRLLLLRRRLRRRLLRRLLLRRLLLRRRRLRRRRLRRLRLRLLLRRLLLLRRLLLLRRRLLRLRRLLLLRLLLLLLLLLLRRRLRRLRRLRRLRRLRRRRRRLLRLRRLLLLRRLLRRRLRRLRRLLLRRRRLLLLRLLLLLRRLLLLLRRLLRRLLLRRRLRLLLLRRLLRLRLLLLLLRLRLRLLRRRRRRLRRLLRLRLRRLLLRLLLRLRLLRRRRLRLLRLLRRLRLRLRLLRRLLRLLRLLLRLLRRLLLRLRLRRLLLLLRRLRRLRRLRLLLRLLLLRRLRRLRLRLLLRRLLLLLLLRRLLLLLRRRRLRRRRRRLLLRLLLLRRLLLRRLRLRRLLRRLRLLRLRLLLLLRLLLRLLLRRRLRLRLLRRRLRLRLLRRLLLLRLLRRLRLRRLRRLRLLLRLRRLRLLRLLRRLRLLLRLLLLRLRRRLRLRRLLRLLLRLLLLLRRLLLRLRRRLRLLLRLLLRLLLRRLRRRRRRLLLRRRLLRLRRRRRRLRRLRLLLRLLRLLRRRRRRRRRLLLLRLLLLLRLRRRLRLLRLLLLLRRRLLRRLLRLRRRRLLLRLLRLRRRLLRRLLRLLLLRLRRLRLLRRRRLLLRRRRRRLRLRLRLLLLRLRRLRRRLLLLRRLLRRRRRRLRLLRLRRRLLRLRLRRRLRRLLRLLRRLRRLLRRRRRRLRRLLLRRRLRRRLLRRLLRLRLLRLRLRLRLLLRLRLRLLLRRRLLLLRRLRLLRLLLRRLLLLLRRLLLRLLRRRRRRRLLLRLLLRLLLRLLRLLLRRRLLLRRLRRLLRRLRLRRLLRLLLRLRLRLLRRRRRLLRRRRRLLLRLLLLRRLLRRLLLLLLLRRLRRLRRRLLLRLLRRLRLRRRRLRRRLLLRRLLRRRRLRLLLRRLRLRRLLRRLLLLRLRRLLRRRRLLRRRRRRLRLLRLRRRRRLLRLRRRLLLLLRRRLRLLLRLRLLLLRRRLRRLRRLLLRRLRLRLRRLLLRRRLLLRRRRLRLRLRLRLLLLRRRLLLLLLRRLLLRLRRLLRLLLRLLRLRRRLRLRRLRRRLLRLLRRLLRLRLLLRLRLLRLRLLLLRLRRLRRLLLRRRLLRLLLLLLRLLRLRLLLLRRLRRLRLRRRRRLRLRRLLLLLRRRLLLLLLLRRLLRLRLRRLLRRLLRRRRRRRRRRRRLRLLRRRLLLRRRRRLLRLLRRRLRLRLRLLRRRLLRLLLRRLRLRLLRLRLLRLRLRLLLLLLLLRRRRRRLRRRLRLLRLLRRRLLLLLLRRLLRRLLLRLRRRLRRLRRLLRRRLLRLRLRRLLLLRLRRRLRLLRLRRRRLLLRRRRRLLRLLRLLLRLLLRLLLLRLRRLLRLLLRRLLLRLRRLLRRRRLLRLRRRRRLLLRRRRLRRLRRLRLRLLLLRLRRRRRLLRLRLLRRLLRLLLLLLLLRRLLRLRLLLRLRRLLRRRRLLRRRLLRRLRRRRLRLRLLLLLLLRRLRLLRRLRRRLLRRRLRLRRLRRRLLRLLLRRRRRRLLLLLRRRRLRRRLRLLLLRLRLRRRLRLLRLRLLRLRRLLRRRRRRRRLLRRRLLRLRLRLLRLLLLRRRRRRRRRRRLRLLLRLRLRRRRLLRLRLRLRLLRLRLRLRRLRLRLRRLLRRRLLRLLLLRRLLLRLLLLRLRRLRLLLRRRRLLLLRRRLLRRLRLRRLLRRRRRLLRLRRLRLLRLRLRLLRRRLRLRLLLRRLLLLRRLRLRLLRLRLLRRLLLLRRLRLRLLLRRLRLLLLLRRLLLLLLLLRLLLLRRLRRRLRRRRLRLLRRLRRLRLLRRLRRLRRRRRLRRRRLLRRLRLLRLLRLLLLRRLLRLRLRLRLLRRLLRRRLLRRRLLLLLRRRLRLLLRRLRRLLLRRLLRLRLRRLRRLLLRLLRLRLRLLRRLLRRLRRLLLLLLRLRLLLRRLRRLRRRLRLLRLLRLLLLRLLLLRRRLRRRRRRRRLLRRRRLLRRLLRLLLLLRRRLRLLRLLRLLRRRLRLRRLLLRLRRLLLLLRLRLRLLRRRRLLLLRLRLRRRLRRLRLRRRLLRLRRRRLRRRLRRLRLLRLLRLLLLRRRRLLLRLRLLLRRRRLLLRRLRLRLRLRRLRLRRLLLLLRLRRLRRRLLRLLLRRRRRLLRRLRLLRRLLLLRRRLRLLLLRLRLLLLLRRRLLLRLRRLRLRLRLLRLRRRRRLRRRLLLRLLLRRLRRRLLLRLLLRRLRRRLRRRRLRRRLLRRRLRRRLRLLRLRRLRLRLRLRLRRRLLRRLRRLRRRRRLLLRLLLRRRLRRRLLLLLLLLLRLLLLRRRLLRLRLLRRLRRRRLLLRLLRLRRLLLLRRLRRLLLLLRLRLLRLRRLRRLLRRRLRLLLLLLRLLLLRRRLLLLLRLLLRLLLRRLRLRRLLLLRRLRRRLRLRLRLLRLLRLRRRRLLRLRLLRRLRLRRRLLLRLLLRRLRRRLRLRLRLRLLRRRLLRRLRRRRRLLRRLRLLLLRRRRLLLRLLLLRLRRLRRLLRRRLLLRRLLRLRRLLRLRRRRRLLRRRRLRRLRRRLRLLLLLRLLRLLLLLRRLLRRRLRLLRLRRLLRLLLLLRLLLLRRRLRLLLRRLLRLRRLLLLLRLRRRLRLLRLRRLRRLLRRRLRLLLRLRRLRLLLLLRRLLRLLLRLLLLLLLLRLRLRLRRRRLLLLLRRRLLLRRRLRRRLRLLLLRLRLRRLLRLRRRLRLLRLLRLRLRLRLLLRRLRRRLLLRLRRLRRRLLRLRRLRRRRRLRLLRRLRRRRLLRLLLRLRLRRLRLLLLRRLLRLLLLLRLLLLRLRLLLRLLLRLLRLLLRRLRLLRLRRLRLLRLRRLRLLLRRLLLLLRLRRLRRRRRRLRLLRLRLLLLRRRLLRLRRLRRLLRRLRRLLRLRLLRLRRRRLLLLLRRLRLRRRRLLRRRRRLRRRLRRLRRRLRRRRRLRRLRLLLRLRRRRLLRRRRRRLLRRRRRLLLLLLLLRRLLLRRLRRLLRLRRRLRLRLLLLRLLLRLRRLLRRLLLLRLLLRRRRRLRLRLLLRLLRRRRRRLLRRLLRRLRRLLRLRLRRRLRRRRLRRLLRRRRLRLLLLRLLLRLRLLRLLRLLRLLRLRLRRLLLLLLLRRLLRRRLRLRLRRRRRRLLLLRLLLLLLLRLRLRLLLRRRRRRLLLRRRRRLRLLLRRRRLLRLRRRRLLRRLLRLRLRLRRLLRLRLLRLLRRRLLRLRRLRRLLRRRLRLLRRLLLLRRLRRLRLLLRLRRLRRRLRLLRRLRLLRRLRLRLLLRLRLLRLLRRLRLRRLLLRLRLRRRRRRLLRRLLLRRRLLLLLRRLLLLLRLLRRRLRRRLRRLLRRLRLLRLLRRLLRRLRLRRRRRRLLRRRLLLRRRLLLRLLRRRRRRRLLLLLLRRLLLLLLRRRRLRLRLLRLRLRRLLRLLRLLRLRLLLRLRRLRLRLLRLRRLLRRLRLRLLRRRLLLLRRRLLRRRLRLLLLLLRRRLLLRRLLRRRRLRRLRLRRRLLLRRLRRLRLRRRLLRLRRRLLLRRRRRLRRLLLLRLLRLRLRRRRRRRLRLLRRRLRLRRRLRLLLLLRLLLLRRRLLRRLLLLLRRLRLLLRLLLLLRLRRLLLLLRRLRRRRLLLLLRRRRLRRLRRLLLLLRRRRRLLLLRLLLRRRLRRRLRLRRRRLRLLLLLLLLLRRLLLRLLLLLRRRRLLLRRLRRLRLLRLRLLLRRLLLRRLRRRRLLLLLLRRLLLLRLRRLRRRLRRLRRRLLLRRRLRRRRLRLRRLRRRLRRRLRLRLLRLLRLRLLRLLRLRLLLRRRLRRRRRRLRLRLRLLLLRLLRRRLRLRRRRRRLRRLLLLLRLRRLRLLRRRLRRRRLLRRRLLRLRLRLLRLLRRRRLRLRLLRLRLRRLRLLRLLRRLLLLLLLRRLRLRLRLRRRLRLRRLLLRRLLRRLRLLRLLLLRRLRLRLRLRRRLLRRRRLRRLLRLRLLLLLLLRLRLLRLRRLRRLLRRRRLRLLLLRLLLLRRLRRLRLLLLLLRLLRRLRRRLRLRLRRLLRRLRLRLLRLRLLLLRRRLRLRLLLRLLRLRRLRRLRLLLRRRRRRLRRLRLRLLLLLRLRLLRRLRLLRRRRRRLRLRLRRRRRLLLRRRRRLRRLRLRRRRLRLRRRLLLRLLRRRRLLRRRLLLRLLLRRLRRLRRLRRLLLRLLLLLRRRLLRLRRLRLLRRLLLRRRRLLRRRRLLRLRLRRLRRRRLRRLLRRRRRLLRRRLLLLRLRRRRRRLLLLRLLRLRRRLRLLRLRLRRRRLRRLRRRRRLLLLRRLRRLLRLLLLLLLRRRRLRRLRLLLLRRRLLRRRLLRLLRRRLRLLLRRRLLLRLLLRLLRLLRLRRLRLLLRLRLRRLLRRRLRLLLRLRLLLLLLLLRRRRRLRLRRLRRRLRRRLLRLRRLLLLLLRRLLLRRRRRRRLRRRLLLLLRLLLLRRRRRLLLLRRLRLRLLRLRRRLRRRRLRLRRRLRLRRLRRRRRRLLLRLRRLLRRLRRRRLRLRRLRLRLRLLLRRLRRRRRRRRLLLLRRRRRLRRLRRLRLLRRLRLRLLRRRLLRLRRLLRLLLLRRRRLLRLRRRRLLLLLLRRLRRRRLLLRLRRRRLRLLRLRLRRLLRLRRLRRLLLRRRLRLRLLRRRRRLRRRRRLRRRRRRRLRRLRLRRLLRRLRLRRRRRLRRLLRLLLLRLLLRRRLRLRLLRRLLRLLRRLRRLRRRLLRRLRRRRRLLLLLRLRLLRRLLRLRRRLRRRRLLLLLRLRLRLRRLRLLRRRLLLRLLLLLLRRLRLLLLLLRRLLLRRLRLLLLLRLLLLRLRLLLRLRRRRLRRLRLLRRRLRLRRRRRLRLRLRRLLLRLRRLRLLLRLRLRLRRRRLRRLLLRLRRRLLLLRRRRRRRRLRLLRRLRLRRLRLLRRRRLRLRRLLLLLLLLRRLRRRRRLRLLRRLLRRRLRRRRLRRRRLRLLLLLLRRLRRLLLRLRRLRRRRRRLRLLRRLLLLRRLLRRLLRLLRRRRRLRLRRLLLLLRLLLLRRLRLLRRLRRRRRRRRRLLRLLLRRRLLLLLRLLRLLRLRRRRRRRRRRLLLLRLLLLLRRLRRRRLRLLLLRRLLRRLLLRRRLRRLRRLRRRLLLLLRRRRRRRLRLLLRRRLRLRRRRLLRLRRRLLRLRRLRRLRRLLRRRLLRLRLRLRLRLLRRLRRLRLLLLRLLLLLLRLRRRLLRLLLRRLLRLRLRLRLRLLLLRLRLLRRLRRLRRRLRLRRRRLLLRRLLLLRRLRRLRRRLLLRLRLRLRRRRRRRLLRRLRRLRLRLRLLLRRRRRRLLLLRLRRLRRLLLRRLLLRLLLRLRLLLLRLLRLRRRRLRRLLLLRLRRRRRRLLRLRLRLRLLRRRLLRLRRLLRLRRLRRRLRLRRRLRRRRLLLLLLRLRRRRRRRLLRLLLLLRRRRLLLLRRRLRRRRRRRRLRLRLLRLLLLLLLRLLRLRLLLRLRRRLLRRLLRRRRRLRRLRLRRLLLRLLLRRLRLLRLRRLLLRLLLRLLRRLLRRRRRRLRRLLRLLRLLRRRLLRLRLRLRRLLRRLLRRRRRRRRLLLLRRLRLLLRLLLRLLLRLLLLLRRRLLRRRRLLRRRLRLRLRLLRRRRLRLLRLLRRRRRRLRRRLLRLRLRRRRLLLLRLLLLRRRRLLLLLRRRRRRRLLLRLRLRLRLLRLLLRRLLLRRRRLRLRRRLLLRLRLRRRRLLLRLLLLRLLLRLRLLLLLRLLLLLRLRLRLLRLLLRLLRLRLRRRLLLLRRRRLRRLLLRRLLLRLLLRLRLRLRRRRRRLLLLRLLRRRLLLLRLRRLLRLLRRRRRLLRRRLLRRRRLLRRRLRRLLRLLLRLRLRRLLRLRRRRRLLRLLRRRLLLLLRLLLRRLRRRLLRRLLLLLRLRRLRLLRRLRLRLLRRRRLRRLLLLRLRLLRLRRRLRRRLRLLLRLRLLRLLRLRRRRLRRRRLLLRRRRRLRLRLLRLLRLLLRLRRLRLLRRRRLRLLLRLRRRLLLRLRLRLRLRLLLLRLRRRLLRRRRLRRLLRRLLLRLLRRLLLLLLRRRRRLLRLRLLRRLRLRLRLLRLLLRLLLLRRRRRRLLLLRRRRLRRRLRRRRRLRLLRLRRRRRRRRRRLRLLLLLRRRRLRRRLLLRRLRRRRLRLRLRLRLRLRRRRRLRLLRRLRLLRLRLRLRLLLRRLRLLLRLRRRRRRRLRRLRLLLRRLRLRRLLLLLLLRLRRRLRLLRRLLRLRRLRLLRRLLRRRLLRRRRLLLRLRRRLLLLLRLRRLLLLLRRRLLLLRLLRRLLRLRLLRLRRRLRRRRLRLLRLLRRRRLLRLLLLRLLLLRRLLRLRRRLRLRRLLLRLLLLLLRRLRRLRRLRLRRRRLRRLLRLRRLLRLLRRLLLLRLRLRRLLLLRRLRRRRLLLRRLLRRRLLRLRLRLRRRLLLLLRRRLLLLLLLRRRLLRRLLLLLRRLRRRRRLRLRRRLLLRRLRRRRRRLRRLLLRLRRLLLLRLRLRLRLLLLRLRLRLLLLRRLLLRRRLLRRLRLLLRRLLLLLLRLRRRLLLLLLLLLLRLLRRRRLRLLRRRRLRLRLLRLRLLLLLRRLLLRRLRRLLRRLLRLRRRLLLLLRRRLRLRRRLLRLLLRRRLRLRRLLRLLLLRLLRLLLLLLLRLLLLRLLLLRRRRRLRLRRLLLLRLRRRLLLLRLLRLRLRRLRRLRLLLRRLRLRRLRRRLRLRRLLRLLLRLRLLRLRLRLLLLRLRLLRRLLRRLLRLRRRRRRRRRLRLLLLRLLRLRRRLRLLLLRLLLRRRRLRLRRRLRRRRLLRLLRLRLRLRLRLRRRRRLRLLRLLLRLRLRLLLRLLLRLLRLLRLLLRRRLLLRRRRRLRRLRRLRRRRLRLLRRRRLRRLRRLLRRLRLRLLRLLRLRRLLRRRRLRLLRLRLRRLLRRRRRLLRRRLRLLRRLRRRLRLRLRRRLRLRRRRRLLLLLRRRRLRRRRRLLLLLLRRRRLRLLLLLLRRRLRRRRRLLLRLRLRLLLLRLLRRRLLLRRRLLLLRLRLLLRLRRLLLRRRRRLRLLRRLLRLLRLLLLLLRLLLRRLLRLLLLLLRLLRRRRRLLLLRRRLRRLRLLLLRLRLRRLRRRLRLLLRRLLRRRLLRRRLLRLRRRLRRRRRRLLRLRLLRLLLLRLLLLRRRRLLLRRLRRRRRRLRLRRLLRRLLLRRLLLLLRLRLLLLLRRLLRRRRLRRRRRRLRRRRLLLRLRLLRRLLRRRRLRRRRLRLLRLRLLRLLRRLLLLRLRLLLLLRRLLRLLRRRRRLLRLRLLRRLRRRRRRLLLRRLRLLRRRLRRRLLRRLRRLRRLRRLRRRRRRLRRRRRRRLLLRLLRRRRLLLLRLRRLLLLLLLRLRRLRLRRLRLLLLLLLLLRRLRRRLRLRLRRLRLRRRRRRRRRLRLLRLLLRLRRRLLLRRRLLRRRLLLRLRLLLRLRLLRRLLLLLLRRLLLRRLRRRRLLLRRRLRRLRLLRRRRLLLLRRLRRLLRLRLRLRRLRRRRLLLLLLLRRRLLRLLLLRLRRLLLLLRLRRLLRLLLRLRLRRLRLLRLRLRLLLLRLLRRLLRRRLRLRRLRLRRLRLLRRLLLRLRRLRRLRLRLLLLRLRLRRRRRLLRRRRRLRRLLLRRRLRLLLLLLLLLLRLLLRRRLLRLRRRRLRRRLRLRRRLLLRRRLLLLLRLRRLRLLRRRRRLLRRRRLLLLRRLLLLLRLRRRLRRRLLRLLLLRRLLLRRRLLLRLLLRRLLLRRLLRLLLRLRRRLLRRRLRRLRLRRLLLRRLLLRLRRLRRLLRLRRLLRLLRLLRRRRRRRRRLRLLLRRLRRRLLLLRLRRRLRLRRLLRLLLLRLRRLLLRLRLLLRRLRLLRLRRRLRRRLRRLRLLLRRLRRLRLRRLLRRRRLRRLRLLRRLLRRLRRLRLRLRRLRLRRRRLRLLLLLLRRLLLLLRRLLRLRRLLLRRRRRLLRRLRLRRLLLRLRRLLRRLLLLLLLLRRLLLRRLRRLLRLRRLLLLRRLRLRLRRLLLLRLRRRLLLLRRRRRRLRRRLLLRRLLLLRRRRRRLRRLLRRRLRRRRLLRLRRLRRRLLLRRRLRLLRRRRLRRRLRLRRLLRLRLRLRLLLLRRRRLLLRRLRRRRLRLLLRLRRRLLRRRLLLLLLRLRRLLRLRRLRLLLRRLRLLLRRRRLRLLLLLRRRLLLRLRLRRLLRRRRLLLLRRLRRRLRLRRRRRRRRRRLRRRRRRLLLRLRLRLRRLLLRLLRLRRRLLRLLLLLRRLRLRLRLRLRRLLRRRLLLLRRLRLLLRLRRRRLRRLRLRLRLRRRLRRRRLRRRLLLRRRLLRRRRLRRLLRRRLRLLLRRLLLRRRRLRRRLLLRRLRRLLLLRRRLLRRLRRLLLLRLLRLRLLRLRLRLLLLLLLLLLLRLLLLRRRLRRLLLRRLRRLLLLLLRRRRRRLLRLLRLLRLLLLRRLRLLLRLLLRLRLLLRLRLLRLRRLRLRLRLRRLRRLRLRLLLRRLRRRRRLRLRLLRLRLLLLLRLRRRRLLRLLRRRRLRRLLLLRLRRRLRRLLRRLRLRLLLLLRRRLRRRRRRLLLRLLLRRLRRLRRRLRRLLRRLLRRLRRLRLRLLRLLRRRRRLLRRLLLLRRRRRLLLRLRRLRRLRLLRRLLLRRLLLLLLRRRRLRRLLLRRRRLRLRLRLRRRLLRRLRRRRRRRRLRLLLLLRRLLLLRRLLRLLRRRRLRRRLRLRLLRLRLRRRRLRRRRRLLLRLRLRLLLRRLRRRLRLLRRLLLLRRLRLRLRRLRLRRLLRLRLRLLLLRRRLRLLRLRRRRLLRLRRLLRLLRRRLRRLLRLRLRRRRLRLLRRLLRRLLLLLRRLRRRLRRLRLLRLLLRLRRRLRLRLRLLLRRLLLRLLRLRRLRRRLRLLRLRRLLRRLRRRRLLRRLLRRLLRRLLLLRLRLLRLRRLLLRLLRRLRRRLLLLRRRLRRRLRRLLLLLLLRLRLLLRLLRLLLLLRRLLLLRRRLRLLRLRLRRLLRLLLRLLRRRRLRRLLLLRLLLRRRRLLRLLRRRLRLRLLRLLLRLRRLRRLRRRLLRLRLLRRLRRLLLRRRLLRRLRLLRLLLRLLRLLLLLLRRLRRLRRRRLRRLRLLLLRRLRRLLLRRLLLRRRLRLRRLLRLLRLLLLRRLRRRRRRRLRRLLLRRRLLRLLRRLRLLRLRLLRRLLRLLLRLLRLRLLLLRLRLLLLRLRLLRRRLRLRRRRRRLLRLLRRLLRLLLLLLLRRLLRLLLRLRLLLRLLLLRRRRLLRLLRLRLLLRLLLRLLLLRRRRRLRLLLLLLRLRLRLLLRLLRLRRLRRRRRRLLLRRRLRRRLRRRLRLRLLRLRLRLLRLRRLLRRLRRLRLLLRRLLRLLLLLRRRLRLLRLLRRRRRLLLRRRLLLRRLRRRLRLRLRRLRLRLRLRLRLLRRRLLRRLLLRLRLRRRLRRLRRLLRRLLLRLRLLRLLLRRRRRLLLRRRLRRRRRLLLLRRLRRLLRLLLRLRLRLLRRLLRLLLLLRRRLLRRLLLLLRRLRRLLLLLLLRLLLRRLLRRRLLRLLRRLRLRLRRRRLRRLLRLRLRLRLRLLLLLRRLRRRRLRRRRLRRRLLRRLRRRLLRRLLLLRRLRLRRRRLLRLRRRRLRLRLRLLRLRLLRLRRLRLRRLRLLRLLLRLLLLRRRRLLRRLLLRRLRRRLLRRRRRLLRLLRLLLRRRRLRLRLLLRLRLRRLLLLLLLRRRLRRLRRLLLLRRLRLRLRRRLRRLLLLRRLRLRLRRLLRLLRRLRRRRLLLLRRRLRRRLLLLRLLLRLLRRLLLLRRRLRLRRRRRRLRRLLRRLLRRLRRRRRRLLRRRLLRLRLLRRLRLLLLLRRLLLRLRRRRRLRLRLRRLLLLLRRLRLLLLRRLLLLRRLRLLLLLRLLLRLRRRLRRLRLLRLRRRRRLRRLLRLRLLRRRLLRLLLLRLLLLLRRRRRLRLRRRRLLLRRRRRLRLLRRRRRLRRLRRRLRLLLLLRLRRRRLLRLLRRRRLRLLLLRRLLRLLRRRRLLRRLRRRLLLRLLLLRRRRRRLRLLRRRLLRLLRLRRRLLLRRLLLLRLLRRLRRRRRLRRRRLLRLLRRLRLRRLLRLRRRRLRLLRRRLRRRLLLLRLRLRRRRRRLLLLLLLRLLRLLRRLRRRLRRLLLLRLLLLRRRRRRLRLLLLLLRLLLRLRLRRRLRLRLRRRRRRLLRRRLLLLLLLLLLLLRLLRRRLRRLRRRRRRLLRLRLRRRRLRLLRRLLLLRRLLRRRRRRRRRRRLLRLRLRRRRRRLRLRRRLLLRLRRRRRRLRRRRLRLRRRRRLRRRRRLLRLRRRLRLRRLLRRRLLRLRLLLLRRRRLLLLRLRRRLRLRRRRRRLLLLRRLLRRLRLLRRLRLLRLRRLLLLLLRRRLRRLLLLRLRLRRRRLRRRRLLRLRRLLRLLLRRLLRRRLRRRRLRRLRLLLLLRLLLLLLLLRRLLRLRRRLRRRLRRLRRRLLLLRRLRLRRRRLRLLLRLLLRRRRRRLLRLLRLRLLRLRLLLRRLRLLLLLRLLRLRRRLRLRRLRRLRRLRRRRLRRRLRRRLLLRLLRLLRLLRRRRRRRLLLRLRLRRLLRRLLRLLLRRRRRRLRRRRLLLLRLLLLLLRLLRLRLLLLRLRRRLLLRRLRRRLRRRLRLRLLRLLRRLLLRLLLRRRRLRLRLLLRLLLLLRLLRLRRLLRLLRRRRLRRLLLLRLRLRLLLLLLLRLLRRRLLLLLRRLLLLLRRLLRRRRLLLRLLRRRRLLRLLRLRRLLRLLLLLLLRRRLLRLRRLLRRRRRRLLLLRLRLRRLRRLLLLLRRRLLLLLRRLRRRLLLRRLRRLLLRLLLLLLRRRRLLRLLLLLRLRRRLRLRRRLLLLRLLRLRLRLRLRRRLLRRLLRLLRRRRLRRRRLLRRLRLRLRRLLRRRLRLLRRRRRRRRLLLRLRLRRLLLLLLRRLRLLRLLRLLRLRRRLRRRLLRRRLRRRLLRRRLRLLRRLRRLRLLLRRRLLLRLRRRLLLRRLRLLRLRRLLRLLRLLLRRLLRRRRRRLRRRLRLLLLLRLLLLLRRLRLLRLLRLLLLRRRRLRRRRLRRLLRRLLLRRLLLLLLRRLRLRLLRRLRLRRLRLLRRRLLRRRRRRRLLLRRLRLRRLLRRLLLLRLLRRRRRLLLLRRLLLLLRRRRRRRRLRLLLRLLLRRLLRLLLRRRLLLLLRLRLRRRRRLLRRRRRLRRRLRRRLRLRRRRLRRRRRLRRRLLRRRLRRLLRLLLRLRLLLLRRRRRLLRLLLLRRRRLLRLRLRLRLRRRLLLLLLLRRRRLRRLLRLRLRLLLRLLLRLRLLLLRRRLLLRRRLRLRLLRLRLRLLRLLLLLRLRLRRRLLRRRRRRRLRLLRLRRRLLLLRLRLRRLLRRRLLRLLLRLRRLLRRLRRLRRRLRRRLRRLRRLRRLLRLLRRRLRRRLRRLLLLRLRRRRLLLLRRLRRLLLRLRRLLLLLRLLRRRRRRRRRRRLLLRLLRLLRRLLLLRRRRLLRLRLRLLLRRLLLRRLLRRRLLRRRRRLLLRLRRLLLLRRRRLRLLLRLLRLRLLLRRRRLLRRLLLRLLLLRLLRRLLLRRLRRLLRRLLLRLRLRLRLLLLRLRLRLLLLRLLRLLLLLLRLLLLLRLRRRRRRRRLLRRLLLLRLRLRRLLLRLRRLLRRRLRRLRRLRLLLRRRLRLLRRRLRLRRLLRLRRLRLRLLRLLLRRLRLLLRRLRRLRRLLLLRRLLRLRRRLRRRLRLLRRRRLRLLRRLLRLRLRLRLLLLLLRLLRLRRLRRRLRLLLRRLRLLLLLRLRLLLLLRLLLRRRLRLLRRLLRRLRRLLLLLLRLLRLLRRRLLRLRLRRLLLLRLLLLLRRLRLLRRRLLRRLLRLRLLLRRLLLLLLLLLRRRRRRLRRLRRLLLRRLRRLRLLLLRLRRRLLRRRLLRRLLLLLRLLRLRRRLLLRRRLLRLRRLRRRLRRLLLLRRRLRLRLLRLRRLRRRLRLLRRRLRLRLLRRRLRLRLRRLLRLLRLRRRRLRLLLLLRRRRLRRRRRLRLLRLLLRLRRRLLLRRRLRRLRLRRLLRLRRRRRRRLLLLRRLLLLRRLRRLRRLRRRRRRLLRRRRLLRLLRLRLRRRLRRRRLLLLRLLLRRRRLLLRRLLLLLRLRRRRRRLLRRRRRLLLLLRLLRLLRLLRLLRLRRRLRRRRRLRLRLRLRRRRRLRLRLLRLRRRRLLLLRRLLLLLLLLLRLLRRLLRLRRLLLRRRRRRRRLRRLLLLLRRRRRLLLRRLLRRRRLLLRLLRLRRLRRLLLRLRRRLLRRRLLRLRRLRRLRLLLLLLLLLLLLLRRRLLLLRLRRLLRLLLRRRLRLRLRRRRLLLLLRLLLLRLLRLRRRLLLRLLRLRRLRLLLRLRLRLLRRRLRLLRLRRRRRLLLRRLLRRLLLLLRRRLRLRLLLRLRRLRRRLRRLLRLRRLRLRRRLRRLLRLLRLLLLRRLRLRLRRLLLLLRRLRRRLRLRRRRRRLRRRLLLRRRLLRRLLLLLLLRLLLRLRLRLLRRLLLLLRRLRRLLLRRRLRRRLLRLRLRRRRRRRRRRLRLLLLRRRRLLRLLLLLLRLRRRLRLRRLRLRRRLRRLLLLLRRRRLLLRLRLRRRRLLLLLLRLRRRLRRRRLRLLLRLRRRRRLRLRRLRLLRRRRLLLLRRLRLLLRRLRRLRRRLRLLLRRRRRLLLLLLLLLLRLRRLRRLLLLLRLLLRLRRRRRLLRRLLRRRLRLLLRRRRRRRLLRRLRRLRRRRLLRLRLLRRLLLRLRLLLLLRLRLRLRRRLLRRRRRLRLRRLRLRLRRRLLLLRLRRLLLLLRRRRRRRLRRRRRLRLLRLLRLRRRLRRRRRLLLRLLLLLLLLLLRLRRLRLLRLRRLRRRLRRLLRRLLRLLRLLLLRLRLRRLLRLRLRRRLLLLLLRRRLRLRLLLLLLLLRLRRLRRLLLLRLLRLLLLLLLRRLLLRRLRLLLRLLRLRRLLRLRLLLLLLLRRLRRRLLRRLRLLRLRLRRLRLLRLLRRLRRLRRLLLRLLLLLLLLRLLLLLLRLRRRLRLLLLLLLRRLLLRRRLLRLRRRRLRRLRLRRLRLLRRLLLRLRLLLRLLRRRLLLLLLRRLLLRRRRLRRLRRLLLLLRRLLRLRRRRLRLLRRLRRRRRRRLRRLLRLLLLLLRRLLRRLRRLRRLLLRRLLRLRLLLRRRLRRRLRLLRLLRRRLLRLLLLLLLLRLRRLRRRRLLRRRRLRLRLRRLLLLRLLRRLLLRLRLLLRRRRRRRRRRRLLLLLLLRRRRRRRLRLRRRLRLLRLLRRRRLRLRRLRRRRRRLRRRLLLLLLLLRRRRRRRLRLRLLRRRLLRRRRRRRLRLRRRLLLRRLRRLLRLLRRRLLLLRLLLLRRRRRLRRLRLRRLLLRLLRLLLLRRLRRLRRLRLRRRLLLRLRRRLRRRRRRRRRLRRLLLLRRRRLLLRRRLRLRLLRLRRLLRRRLRLRLRLRLLLRLLRRRLRLLLRRLRRLLLRLRRLRRLLLRRLRRRRLLLLRRRRLRLRLRLRRRLLLLRLLRRRLRLRRRLRLRLLLRRLRRLLRLRRLRLLLRRRRLLLLLRRLRLRLRLLLLLLRLRRLRRRRLLRRLLRRLLLLLRRLLRRRLRLLLRRLRRLLRLLRLLRRLRRRRLLLRLLLRLLLRLLLRLLRRLRRRLRRLRLLRRRLRRLLRLLLLLLRRRLRRLRLRLRRLLLRLLRLLRRRRRLRRRRRLLRLRLRLRLLLLRRRLLLLLLRRRLLRRLLLLLLRLLLRLLRRRRRRLLRRRLRLLLLLLRLLRRLRRRLLRRLRRLLLRRRLRRRRRRLRRRRRRRLLLLRLLLRRLLLRLRLLRLLLLRLRRLLLRRLLRLLRLLRRLRLLRLRLRLRRLLLRRRRLLLRLLRLRLLLRLLRLLLRRRLRLRLRRRRLLLLRLRLLLRRLRRLRLLLLLRLLLLLLRLRRRRRLLLRLLRLLLRRRLRRRRRLRLRLLLLLLLRLLRLLRRRRRRLRRRLLLLLLLLRLRLLRRLRRRRLLRLLLLRLRLRLRRLRRLRRLLRLRRLRLLLRLRLLRRRLRLLRRRLRLLLLRRLLLLLRLRLRLRLLRLLLLRLLRRRLRRLRRLRRLRLLRLRLRRLLRLRLLLRLRLLRLLLRLLLLRLRRRRLLLLRLLLLLRRRRLLLLLRRLRRLRRRRRLLRLLRRLRLRLLRRRRLRRRRLRRLRRLRRLRLRRLLRRLRLRRLLLLLLLRLLRRLLLRLLLRLRRLLLLRLRLLRLLLRRLLLLRLLRLLRLLRLLLLLLLLLRRRLRRLLLRRRLLRRLLLLLRLRRLRRLRLLRRLLRLLLRRLLRRLLRLLRRLRLLLRRLRRLRRRRRLRRRLLLLLRLRLRRRRRRLRLLRRRRRRLRRLRLLLLRLLLLRLLRRRRRRRRRLRLRLLRLLRRLLLRRRLLLLRLRLRRLLLRRLLRLLLRRLLLRLLLLRLRRLLRLLRLLRLRRLLRLRRLLRLLRRLRRLRLLLRRLLLLLRRLRRLLLLRRLLLLLLLLRRLRLLRRRRRLRRLLRLRRLRLLRRLRLRLRLLRRRLLLLRRLLLLLLRRRLRLRLRRLRRLRLLLRRRLRLLLLRRRLLLRRLLLLRRLRRRLLLLRRRLLRLRRLRRRLRRLLLRRLLLLLRLLLRRLLRRLLLRRRLRRRLRRLRLLRLRLRLLRRRLLRLRRRLRLLLRLRLRRRLLRRLLLRRLRLRRRRLRRRLRRRLLRLRRRRLLRLLRLLRLLLRLRLRLLLLLRLLLRRLRLLLLLLLLLRLLRLRLRLRRRLRLLRLLLLRLRRLLRRLRRRLRLLLLLRLLRLRLRRRLLLRRRRLLLRRRLLLLLRRRLRLRLRLRRRRLLLRRRRLRLRRRLRRLRLLRRRLLRLLRRLLRLLRRLLRLRRLRRLRRRRLLLLRRRLRLRLLRLRLLRLLLRLRLRRRRRRLRRRRRLRRRLRLLRRLLLLLRRLRRLLLLLLRLRLLRLLLRLRRRRLRRRRLRLLRLLRLRRRRLLLLLLLLRRRRLRLRLRRLRRRLRRLLRRRLRRLRLRRLRLRRLRRLRLLRLRRLLRLLLRRLLRRRLRRRRRRRLRRLRLLRLLRLRLRRRLRLRLRLRLRRLRLRLLRLRRRLRRLRRLLRRLRLLRRLLLRLRLRRRRLRRLLLRRLRRLLRLRLRLLLLRRRLRLLRRLRLRLLRLRRLLRRRLLRRLLLRLLRLRLLLRRRRRLLLLRRLRLLLRRLRRRLLRLRLRRLLLLRRLLLLRLLLRRRRRLLRLLLRLRLLLRRRRRLRLLLLRLLLRLRRLLRRLLRLLLLRLLRRLRLRLLRRRRRRLRRRLLLLRRLRRLLRLRRLRRLRLLLLRLLLLLLRRLRLLRRLLRLRRLLRLRRRLLRRLLRRLRRLLRLRRRRLRRRLLLLRLLRRLLRLLRRRLLLLRRLLLRLLRRLLLRRRLRRRRRLRLLRLRLLRLLRLRRRLLLLRRRRRLRLRRLRRLRLRLRRLLRRRRRLRLLLRLLRRLRRRRRLLLRRRLRLLLRRRLRLLRRRRLLRRLLRRLRRRLLRRRLRLLLLLLRRLRRRLRLLRRRRRLRLRLLLRRRLRRRLLRLRRRLRLRRLLLRRRRRLRRRRRRLLLLRLRLLLRRRRLLLLRLLRRLLRRLRRLLRLRRLRRRRRLLLLLLLLRRLLRLLLLRLLLLRRRLRLLRRLRLLLLRLLRRLRLLRRLRLRRRRRLLLRLLRRRRLRRRRLLLRRLRLLLRLLRRRLLLLLLRRRRLRRLLLRRRRRLLRRRLRRLLLLLLLLRRLLRLLRLRRLLLLLRLLRLRRRLLRRRLRLRLLLLLRLLLLLRRRRLLRRRRLRLRLLRLRLLLLRLLLRRRRLRRLLRLRRLRLRLRLLLRRRLLRRRLRLLLLLRLLRLRRLLLRLLLLRLRRRLRRLRRLRLLRRLRRLLRLLRLLLRLLRLRRRLLRRRRLRLLRLLRRLRRLLRRRRLLRRLRLLRRRLLRRRRRRRLRLRRLRRRLLLRLLLRRLRLRRLLRLLRRRRLRLLLLLLLLRLLRLLRLLRRRRLLRLLLLLLLRRRLLRRLLRRRRRLLLRRRLRRLLRRLRLLRRLRLRRRRLRLLRLLLLRLRRLRLRLLRRRLLLRLLRLRLRRLLRRRRLLLLLLRLLLLRLLRRRRRLRRLRRRLLLLRLLLLRRLRRRLLRLLRLRLRRRLRLRLLRRRRRLRRRLRLRRLRLLLLRLLLLRLLLLRRRLRLRLRLLLRLLRRRLLRLRRRRLRLLRLLRLLLLLLRRRRRRRRRLLLRRRRRRLLRRLRRLRRLRLLRRLRRRLLLLRLRRLLLRRRRRRLRLLLRLRRRRLRRRRRRLLLLRRLLLRLLRLRRRRLRRRLLRRLRLRLLRRLRLRRLLRRRLRLRRLLRLLRRRRLLLRRLLRLRLRRLRLLRLLLLRRRLRRLRLRLLLLRRRRLLLRLLLLLRRLRRLLRLRLRLLRRRLRLRRRRRRLLRRRLLLLRRRRRLRRLRRRLLRRRRRLLRLRRLRRLLLLLLLLRLRLLRLRRRRLRLLLLLLRLRRRLRRLLRRLRRLLLRLRRRLRRRRLRLLRLRRLLRLRRLLLRLLRLLLRLLRRRRRRLRLRLLRLRLLRLLRRRRLLLLRRLRRLRRRLLLRRRRRRRRRRLLRRRLLLRLRLLLRRLLRRLLRRRLLLRLLLRRLRLLLRLRLRLRRRLLRRLRLRLRLLLLRRRRRLRRRLLRLLLRRRRLRRLRLLLLLRRLRLLLRRLRLRLLLRRLLLRLRRLLRRRLRLRRLLLRLLLRRLRLRLLLRLRRRRRLLRLLLRLRLRRRLLLLRRLLLRRLRLLLRLRLRRRRLLRLRRLLRLRLRRLRLRLLLLRLLLRLLLLRLRLLRRRLRRRLLLRRRLLLRLRRLRRLLLLRRLRRRLLRLLLRRLRLLLLLLRRLRLRLRLLLRRRLRRRLLRLRLRLLRRRLRRRRRLLLLLRRRRLLLLRRLRLRRLRLRLRRRRRRLLRLRLRLLRRRRRRRLLLRLRRLRRLLLRLLRRLRRLRLRLLRRLRLRLLLLLRRLRRRLRLLRRLRRLLRLLRRRLRRLRLRRLLRLLRRLRRLRRLRRRRLLLLRLLRLLLLRRLLLLLLLLLLLLLRLLLLLRRLLLRRRRRLRRRLLLLLLLRRLLLLRLLLLLRLRLRLLRRLRRRLRLLRRLLLRRRLLLLRLLRLLLLRLRRRLLRLLRRLLLLRRRLLRLRRRRRLRRLLLLRLRLLRRLRRLRRRRLRLLRLRLLRRLRRLLLLLLRLRLRRRLLLLRLLLLRLRRLRRRLLLRLRRLLLLLLLLLRRRRRLLLLLRLRLRLLLLRLLRRRLRLRLRRLRRLLLRRLRRRRRLRRLLLRLRLLRLRLRRLRRRLLLLLRRLLLRLLRRLRRLRRLRLLRLLRRRLRLRRLRRRRLLLLRRLRLRRRLRRRRRRRRLRLRLLRLLRRLLRRRLRRRLLRRRRRRRLRLLLLLLLRLLRLRRRRRLLRLRRLRRLLLLRLRRRLLRLRRLLRRRRLRLLRRLRRRRRRRLLLRLRLLRLLRRRLLRRRRLRLRRRRRLRLRLRLLLRRRLRLRRRRRLLRRRRLRLRLRLLRLLRLRRLRRLRLLLRLLRRRRLRLRLRLRRLLRRRRRRLLRLRRLRLLRLRRRRLLRRRLLRRLRLRRRRLLLLLLLLRRRRLRLRRLLLRLLRRRRLRLRLRLRLRLLRLLRLRLRLLLLRRRLRLRLRLRLRLLRLLLLRLRRRLRRRRLLLRRLLLLRLRRLLLLRLRLLRLLLRLRRRLLRLRLLRRLLLLLLLRLLRLLLRRLRRLLRLRLLRLLRLRLRRLLRRRLLLRLRRRLLRRRLRRRRLRLLLLRRRRLRLLRLRLRRLLRRLLRRRRRRLRRLRLLLRRRLLRLRLRLRRLLLLRRRRRLLLRRRLRRLLRLLLLLRLLLRLLRRRRLRRRRRLLRRLRLRRRRRRLLLLRRLLLLRLRRLRLLRLLRRLRRLRLRRRLRRRLLRRLRRLLLRRRRRLRLRLLRLLRRLLRLLRLRLRLRLRLLLLLLRLRRRLRRRLRRRLRRRRLLRRRRLRLLLRRLLRRRRLRRRLRLLRLLLRLLLRLRLRLLRLLRRLLRLRLLLRRLLLRRRRRRRLLLRLRRLLRRRRRLLRLRLLRRLRRLLRRRRLRRRLLLLLRLRRRLRRLLLLLLLRRRRRLLLRRLLRRRLLRLRLLRRLRLLRRRRLRRRLRRLLLRLRRLRRLLLLRRRRLRRRLRLRRLLRLRRLRLRRRRLRLRLRRLRLLLRLLRRLLRRLLRLRRLRRLRLRRRRRLLRLRLLLRLLRLRRRRRLLRLRLRLRLRLLLRRLRRRLLRRLRRLLLRRRLLLLLRLLRRRLLRRLRLRLRRRLLRRRLLRRRLRLLRLRLLLRLLRRRLLLLRRRLRRLLRLLRRLLRLLLRLRRLRLLLRRLRRLRLLRLLLLRLLLRRLLLRRLRLRLLRLLRRLRLRRRLLLRLLLLRRRRRLLRRLRLLLLRLRRRRRLRRRLRLLLLLRRLLRRRLLLLRLRLRRLRRRLLRRRRRLLLRRLRLRRRLRRRLLRRLRLRRRLLRLRRLRLRLRRRRRLLLLLRRRRRLRLRRRLRRLLLRRRLRRRLRRLRLRRRLLLLRRRRRLLRLLLRLRRRLLLLLLRLLRLLLLLLRLRRLLRLRLRRLRRRRRRRRLRRLLLRRRRLRLRRLRLRLLRLLRRLRLLLRRLRRRLRRRRRRRLLRLLLLLLRRRRLLLRLLRLRRRRLRLRLRLLLLLRLLLLLRLLLRRLRRRRRLLRRLLRLLLRRRRRLRRLLLLRLLLRLLLRLRRLLRRRRRLLRRRRRLRRLLLRLLLRLLRRLRRLLRRRRLRRLLRRRRRLLLLLLLLLLLLRLRLLRRRLRRRRLRRRRLRLRRRLRLLLLLLLLRLRLRLRRLLLLRRLLRLLRLLRRLLLLRRRLRLRRLLRLRRRLRLLRRRLLLLLLRLRRLLLRLLLRRRRLLLLRLLRLLRRRRLLRLLLRLLLLRLRLLLRRRLRRRRRRLRLLLRLRRLLRLLRLLLRLLRLRLLRRRRRRRRLRLLRRRRLRLRLLLRRRLRRLLLRRLLLLRRRRLRLLRRRRLRLLRRRLLLRLRRLRRLLLRLRLRLLLLLLLRLRRRRRRLLLRLRLRRLRLLRRLRRLRLRLRLLLLRRRLLLLRLLRRLLRLLLRLLLLLRRLRLRRLLRLRLLLLLLRRRLLLRLLLRRRRLLRRRLRLRLLLLRLLLRLRRLLLRRRRRRRRLRRLLLRRLRLRLRRRLLLLRLLRRLLLRRRLLRRRLLLRRRLRLLRRRRRLRRRLRRLRRRLRRLRLRRLRRRRLRRRLRRRRLRLRRRLRLRRLRRLRLLLLLLRRLRLLLLLLRRLRLRLLRRRLRLLLLLLLRLLLLRRLLLRLRRRRLLRLRRRLLRLRRRLRLLRRRLLLRLRLLLLLLLLRRLLLLRRLRRRLRRLRRLRRLLLRLLRLRLLRRRRRLLLLLLRRRLRRLLLLLRLLLRLRRLRRLRLRLRRLRRRRRLLLRRLRLRLLLLRRLRLRRRLLLRRRRRLLRRRLLRLLRRRLLLRLRRRLLRLRLRLRRLRLRRRLRRRRRLRRRLRLRLRLLRLLLRRLRRRRLLRLRLRLLRRRRLRLRLRLLRRRLRLLLLLRLLLRLRRRLRRLRRLRRLLRLLLLRLLLLLRLLLRRRLRRRRLRLRLLLRRRLLLLLLLRLRLLLLLRLLLLLRRRRLRLRLLRRRLRLRLLLRRLLRRRRLRRRRRLRRRLRRRLLRLLRRLRLLLLLRLLRRRLRRRRLRRLRRRLRLLLRRLRRLRLRRRRRLRLRRLRLLLLRRLLLRRLLRLLRLLRRRRRLLRRLLRRRLRRRRLLRLRLRRLRRLRLRLRLRRRLRRLLRRRLLLRLLLRLRLLLLRRLLRLLLRLLLRRRLRLRRRRRRLLLRRRRLLLLRLLLRRLRLLLRLLLLLRLLRLRLRRRLRRRRRLRRRLRLRRRRRRRLLRRRRLRRLRLLLLRLRLRRRRLRLRRLLRRRRLLLLLLLLLLRRRRRRLLLRLLRLRRRRRLRLLLRRLRLRRRRLLRRRLLRLRRRRLRRRLLRRRLLLLLRRLRLLRLLLRRLRLLRLRLRLLRLRRLRRRLRLRLRLLLRLLLLRRLRLLLRRRLRRLRLLLRRRRLRRRRLRRRLLLRLRRRLLLRLLLLLRLLLRLLLLLLRLLLLRRRLLLRRLLLLLLLRLRLLLLRRLLLLLRLRRLLLLRRRLRLRLRRLLLRRLRRLRRRRRRRRRLRRLLRLRLLRRRLLRLLLRRRRLRRLRLLRRLRRLRLLRLRLRLRRLRRLRLLRRRLRLRLRRRRLLRLLRRLRRRRLLRRRLRLLLLLLLLLRLLRLLRLLLLLLLLLLRRRLLLRRRRLLRRRLLLRLLRRRLLRLRLLLRLRRLLRRLRLRRRRLLLLLRRRRRRRLRRRRLRRRRLLRRRLRRRLRRLLLLLRRRRRRLLLLLRRRRLLLLRRRLRRRLLRRLRLRRRLLRRLRRLLRLLLRRRRLLLRLRLRRRRLLLLLLRRLRRLLRRRLRRRLLLLLRLRLLLRLLRLRLLLRRLLLLLRRRRLRLRLLLRLLRRLLLRLLRLRLRRRLRRRLRRRRRRRRRLRRLLRRRLLRLRRRRRLRLRRRLRRLLLLLRLRRRRRLLRRLLLLLLRLLRLRRLRRLLRRLRLLRLRLRRRRLLRLLRRLLRRRLLRRRRLLRLLRRLLLLRLLLLRLRRLRRRRRRRLLRLRLRLRRRLRRRRLLRLLRRLRRRRLLLLRRRRRLLLLLRLLRLRLRRRLRLLLLLRLRLRLRRLRRLRRLRRRRRRRRLRRRLRLRLRRRLLLLRLLLRLLLRLRRRRRLLLRLLLLLRRRRLRLLLRLRRRLRLLRRLRLRRRRRLLLLLRRLLLRRLRLLLRRRLLLRRRRLRLRRLLLLLLLLLRLLRRLLLLLRLRRLLLLRLLRLLLRRLLRRRLLLRLLRRRLLLRRLRRRLRRRLLRLLRRLRRRLRRLLRRLRRRLRLLLRRRRRLRLLLRLRRRRLRLLRLRRLRLLRRRLRRRLRLLRRRLRRLRLLRLRLRRRRLLLRLLLLRLLLLRRLRRRLRLRRRLRLRRRRRRRRLRLRLLLLRLLLRLLLRLLRRLRLRLLLRRLLLRRLLLRRLRRRRRRRLRLRLLRLLLRLRLRRLLRLRRLRLLLRRLRRRLRLLRLRLRLRRLLRLLRRLLRRRRRRRRRRLLLRLRRRRLRLLLLRRRLLLLLLLLRRLLLLLRLLLRLLLLLLLLLLLLLLLRLRLRLRRRRRLRLRLRLLRRRLRRLRRRLLLLLRRLRLRRRLRLRLLRRLLRLLRLRRLRRRRLLLRLRRRLLLLRRLLRLLRLRLLLRRLLLLRRLLLLLRRLLRLRLRLLRLRLLRRRLLRLRRLRRRRRLRRLRLRRLLLRLLLLRLLRRRRLRLLRLRRRLRRRLLLRLLRLRLLLLLLLRLRLRRRRLRRLLLRLRRRRRLRLLLLRRLLLRRLLLLRLLRRLLRRRRLRRLLRLRLRLLLLRLLRRLRRRRLLLLRRRRRRLLRLRRLLLRRRLRLLLLLLLLLLLLLLLLLLLLLLRRLRRRRLLRRRLLLRRRLRRRRRLRLLLRRRRLRLLRRRLLRLRLLLLRRLLLRLRRRRRRLLLRRLRLLRLRLLRLRLRRRLLLRRRLLRRLLLRLLLLRLLLRRRLRRRLRRLRLLLRLRLLRRLRLLRLRLLLRRRRLRRRRRLLLLRRLRLRRRRRLRLRLRRLRLRRRRLRRRLRRRLRRRRLLRRLRLLRLLLLLRRLLLRLRLRRLLLRLRLRRRLLLLRLRRLLLRLRRRLLLRLRRLRLRRRLRRRLRRLLRRRLRLLLRLRRRLLLLRLLLRRRRRRRLLLRRRRRRRLRLLLLRRLLLRLRRLLLRRLRRLRLRRRRRLLLLRLRRRRRLLRRLLRLRRRRLLRRRRLRRRRLRRRRRLLLLRLLLRRRLLRLLRLLLLLRLLRLLRRLRLLRLLRRRLRLRRRRLLRRLLRRLLRLLRLLRLRLRLLRLRRLRLLLRRRRRRRRRRRRLLRRLLRLLLLRRLRLRLRRLLLLRRRRRRRLRLRRRRRRRLRLRRLLRLLLRRLLRRRRRRRRRLLLRLLRLLRLRLLRLRRRLLRRRLLRLRRLLRRLRRLRLLLLRLRRLRRLRRLLLRLRRLLLRLRRLRLLLLLRLLLRRRLLLLLRRLRRLLLLRLRLLLLLLLRLLLRLLRRRLRLRRRRLRLLLLLRLLRRRRRLRRRLRLLLRRRLLLRLRLRRRRRLRLLLRRLLRLRLRRRRRRLRLLRRRLLRLRRLRRLLLLLRLRRRRRRLLLRLLLLRLLLLLRLLRLRRLRRLRRLRLRLRLLRLRLRRRRRRRRRRLLRLLLLLLRRLLLRLRLRLRLRRLRLRLLRLLLRLRRLRRRLLLRRRLRLLLLRLLLLRRLLLRRRLRRRLRRLLRRRLLLRRLLLLRRRLLRRRRRRLRRLLRLRLLRRRLRLLLLRLRRRRRRRLLRRLLRRRLRRLLRRLRLRLRRLLRRLRRRRRRRLRRLLLRLRRLRRRRLLLLRRLLLLRLLLLLRRLRLRRLLLRRLRLRLLLRRRLRLLRRLRLRRRLLRLLRLRLLRRRRRRRLRLLRLRRLLRRRLRLLLRRRRRRRLRRRRRRRLLRRRLRRLRLLRLRRRRLRRLRLLLRLRRLRLLLLRLRLRLLRLRLRLLLRRRLLRRLRLRLRRLRLLLLLRLRLLLLRLLRRLRRRRRLRRRRRLRLRRLRRRLLRLLRLRLLRLLRLLLLLLLLRRLLLRRLRRRRLRRRLRRLRLLRRLLLRRLRLLLLRRRRRLLLRLLLRLRLRLRLLRRLLRLRRRRLRRLRRRLRLRLRRRRLRLRRLLRRLRLLLRLRLRRLRRRLLRLLRRLLLRRLRLRLRRLLLRRRRLRLLRLRRRLLRLRLRRRRLRRLLRRLLLRLRLLRLRRRLLRLRRRRLRLLLRLRLRRRLRLLLLRLRLRLLRLRLRLRLLRRRLLRRLRRRRRRLLLLRRRRLRRRLRLLRRLLRLLLLLRLLLRLLLLRRLLRRLLRRLLRLLLLLLLLRRRLLLRLLRRLRLRLLLRRRLLLLRRLRRLRRRLLRRLRLLLRRRLLRLRLLRRLRLRRLLRLLRLRRRLRLLRLRRRRLRLRLRLRLLRLRRLLLRRRLLLRLLRRRLLLRRRRLRRRLLRRLRRLLRRRRLLRLLRLLLLLLLLLRLLRRRRRLLLLLLLRLRLLLRRRLRLRLLRLRLRLLLRLRRLLLRLLRRRLLLRRRLLRLLRRRRRRLRRRRRRLLLRLRRLLLLLLLRRLLLLLLRLRLRLLRLLRLRRRLLRLRRLRRRLRLRRLLRRLRRLLLRRRRLLLRRLRLRLLRLLLRLLLLLRRLRRRLLLLLLRLRLRRLRLLLRRLRLRRRLRLRLLLRRRRRRRRRLRRRRLLLLRRRLLLRLRRLLLLLRLRLLLRRRRRLLLLRLRLLLRRLRRLLLLLLRRRRRLLRLLLLLRLRLRLLLLLRRRRLLRRRLLRLLRRLLRRLRRLRRRRRRLLLLRRRRLRRLLLRRLRRRRRLLLRLRRLRRLRRLRLRRLLRLRLLRLRRRLLRLRLLRLLRLLLRLLRRRLRLLLLRRRLRLRRLLRLLLLLRLRRRRRRRRRRRRLLRLLRRRLLLRLRLRLLLRLRLLRRLRLLRLRLRRLLLRLRRLLRRRLRRLLLLLLLRLLRLRRLLLRRRRRLLRLLRLLLRRRRRLRRLLLRRLLRRLLRRRLLRRRRLRRLLLRLRRRLRRLRRRLLLLRRLRLLLLRRLRLLLRRRLRLLRRRRRLRRLRLLLLLLLRLRLRLLRRRRLRLLLLLRLLLLRLLRRLRLLRLRLLRRRLRRRLRRLRLRLLLLRRLRRLLRLRRRRLLLLRLLRLRRLLLLLLRLRLRRRLRRLRLLLRLLLLLRLLLLRRLRRRLLRRLRLLRLLRLLRLRRLRLLLRLLRRRRRLRRRRRLLLLRRRLLLRLRRLRRRRLLLRLLRLRLRLLRRLLRLRLRLLRRRLLLRRLRRRRLRRRLRLLLRLRLRLRRLRLLLRLRRRLLRLRLRRRRRRLRRRRLRLRRRLLLRRRRRLLLLLLLLLLLLRLLLRLRRRLRRLLLLRLLRLRRLRRLLRRRRLLLRRRLLLRLLLRLLLLRLRRRRRLLLLLRRLLLLRLLLLLLRLLLLRLLRRRRRRLRLRLLRRLRRLRRLLRLLRRRRLRRLLLLRRRRRRRRRRLLLRRRLLRLLLRRRRLLRLRRLLLRRLLRLRLRRRRRRLLLLRLRLLLRLRRLLLRLRRLRLLRLRRLLLLLRRRLRLRRLRRLRLLLRLRLLRLLRLRLRLRLRRRRLRLLRRRRLLRRRRRRRLRLRLLLRRLRLRRRLRRLLLRLRLRRRLRRRRRLLLRLRLLRLRRRLRRLLLLLRLLRRLLLRLLRLLRRLRLLRRLLRLRRLLLRLLLLRLRLRRLRRLLLRLLLRLRLRLRLRLLRLRRLRLRLLRLRRLLRRRLLLRRRLRRLRRRLLLLRLRRLRRRLRLRRRRLRLLRLLLLLRLRRRLLLLLLRRLLLLLRRRRLLLLRRRRLRLRRLLLLRRLRLLLRRLRLLLLRRRRRLRLLRLLRLLLLRLRLRRLRRLLLRRRRLLRLRRRRLLRLLRLLRRLRLLLRRLRLRRLLLRRRRLLLLLRRLLRRRLLRLRLRRRLLLRLLLLLLRLRRRLRRLLLRRRLLRLRRLLLLRRRLRRRRLLLRLRLRLLRRRRLLRLLLRRRRLRRRLLRRLLRRLLLRRRRLLRLLRLLRLRLLLRLLLLRRRRLLRRRLLRLRLLRRRLLRRRLRRRLRLLRLRLRRRLLLRRLRLRLRRLLRRRRRLRRLRLRRRLLLRRRLRRRRRRLLRLLRRLLLLLRLLRLRLLRLLLLRRLRRRLRLLRLRRRRRRRRRRLRRRRLRRLRRRRRRLRLLLRRRRLLLRRRRRRLLRRLRRLLLLRLRLRRLRRLLRLLRRLLLRRLLRLRRLLLRLLRRLLRLLLLLLRLLRRRLLLLRRLRLLRRRRRLLLRLLLRRLLRRRLLLLRLLRRRRLLLLLLLLRLLRRLLRLLRLRLLRRRRRRLRLLLRRLRLRLLRLLLRRRLLLLRLLLLRRRLRLLLLRRLRRLRRLLRRLRLLRRRRLLRRLLLRRRLLRRRLLRRRRRRLLRLRRRRRRRLRRRRLRLLRRLLRLLRLRRRLRRRLRLLRLRLLRRLRRRRLLRLRRLLRRRLRRRLLRLRLRRLRLLLRLRRRRLLRRRLRLRRRLRRLLLRRRLLLRLRRRLLRLRLRRRLLRLLLRLLRLRRRRLLRRLLLLRLLLRLRLLRLRLRRLLRLLRRLLLRRRLRRLRLLRLLRLRLLLRLRLRLRLRRRLLRRRRLLLLRLLLRLLRLLLLRRRRLLLLRRLLRLLRRLLLLLLLRRLRLLLRRLLRRRLRRLRLLLRLRLRLLRRRLLLRLLLLRRLLRRRLRRLRRRLRLRLLLRRRRLLLRLRRLRRLRLLLLRRLRRRRLLLLRLRLLRRLRLRLRRRLLRRLRLRRRRLLLLLLRRLRLLRLRLRRLLLLRRLLRRRRLLRRLRRLLRLLLLLRRRLLLLRLRRLLRRRLLRLLLLLRRRLLLLRLLLLLLRRRLRRLRRLLLRRRLLRLRRRRRLRLLRRLRRLRLLLRRRRRRRRRRRLLLRRLLLLRRLLLLLRRLLRLLLRLRLLLRLRRLRLLRRLRRLLRLRLRRLRLLRRLLLRLRLRRRRLLLLRRLLLLLRLLRLRLRRLLRLRRLLLLLLLRRRRRRLLRLRLRRLLRRRLLRRLLLRRRLLLRLLLRLRRRRLLLRLLLRRLRRLRRRRLRRLLLRLLRRRLRRRLLRRLLLRLLRLRRRLRLRRLRRRRLRLLLLRLLRRRLRRLLRLLLLLLLLLLRRRRRRRRLLRRLLLLLRRRRRRRLLLRLRLRRRLLRLLRRLLRRLLLLLRRLLLLLRRLLLLRRRLLLLRLRRRRRLLRRLRLRRLLLRLRRRLLLRRLLRRRLRLLRRLRRLRLLLRLRLRLLRLLLLLRRRLRLRRRRRLRLLRLLRRRLRRLLLLRRRLLLLLLLRRLRLRRLRRLRLLLRRLRLLRLLLRLLLLLLLLRLLLRLRLRLLRLLLLLRRRLLRLLLLLRRRRLLRLLRRLLLRRLLLRLRRRRLRLRLRRLRRLLRRLRRRRRLLRLLLLRLRRRLRLRLLLRRRRLLLLLRRLRLLRLLRRLRLLRRRRRLRLLRLRRRRLRRLRRLLLRRLRLRRLRLLLLLRLRRLRLRRLRRRRRRLLLLLLRLRLLLLLLLRLRRRLRRLLRRRRRRLLLLRLLLLRLRLLRLLRRLLLRLRRLLRRLRRLLRRRLRRLRRLRLRRLRLRLLRRLLRLLRLRLRRRRLRLLLLLLLRRRLLLLLRLLLRLLRRLLLLLRLLLRRRLLLLLLLRLLLRLLRRLLRRRRRRLRLLRRRRRLLLLLLLRRRRRLRRLRLRLLLLRLRRLLLRLLRRLRLRLRRRRLLRRRLLRRRRRRRLRLRLLLRLRRRLRLRLRLLRRRLLLLLRLRLLLLLLRRRRRRLRRRLLLRRRRRLLRLLRLRLLLRLLLRLLLLLRLLLLLRRRLLLRRRLLLLRLLRLLLLRRLRRRLLLRRLLRRLLRRLRLLLRRLRLRRLLRRRLLRLRLRRRRLRLLRLRLRRRLRRLLLLLRLRLRLRLRLRRRRLRLRRLLLLLLLLLLRLLRLRRRLLRRRLLRRLRRRLLLLLRRRLRRRRLLRRRRLLRRLLLLRLLRLLLRLLRLRLRRRLLRRLRLLRRLLLRRLLLRRRRRLLLLLLRRLLRLLLRRRLRLLLLRRRLRLLRRRLRLRRRRRRLLRLRLLRLLRLRLLLLLLRRLRLRLRLRLRRRLRRRLRLLRRLLLRRRLRLRLRLLRLRLRRLRLLLLRRRRRLLRLLLRRLLLLLLRLRLRLRRRLLLLRLLLRRRRRRLRRLRLLRRRRRRLRRLLRRLRLLLLRLRRLRRRLLLLRRRLLLLRRLLLRLRLLLLRLRRLLRLRRRRRLLRLLRLRLLRRRLRRLLRLRLRLLRLRLLRRLRLRRLLLLLRLLRRRLLLLRLRRRRLRRRRRLRLLRLLLRLLLRRLRRLLLLRLRLLLLRLRLRRRLRLRLRLLLRRRRLRLLLLLRRRRRLLLLRRLLRRLLRRRRLRLRLRRRRRRRLRLRRRRLRRLLLLRLRRLRRRRLRLLRLLLRRLLLRLLRLLRRRRRLLLRRRLLRLLLRRLRRRRLRRRRLLLLRRLRRRRLRLRLRLRRRRRRLLRRRRRLRRRLRRLLLLLRLLLLLRLLRRRLLLLRRRLRRRLLRRRRLRLRRLLRRLRLLRLLRLLRRRLLLRLRLLRRRLRRRRLRLLLLRRRRRLLLRRRRRRRRRLLRRLLRRLLRLRRLLLRRLLRLLRRLLLLLRRRRRLLLRLRRLRLLLLRRRRLLLLRRLRLRLLLRLLRRRLLLLRLRLLLLRLLLLRRRLLRRLRLRLRLRLLRLRRRLLRRLLRLLRLLRRRLRRLRLLLLRRRRLLLLRRLRRRLLRRLRRRRLRRLRRRRLRLLLLRRLLRLRRRRRLRLRRRRLLLLLRRRRLRLLLRLLLLLRRLRRRLRRLRLRRLLRRLLLLRLLRRLLRRRLRRLLRLRRLRLLLRLLLLLRLLLLLLRLRRRRRLRRRLRLLRLLRLLRRLRLLRLRLRLRLLRRLRRRRRRRLLLRLLRLLLLLLRRLRRRLLRLRLLLRLLLRLLRLRLLLRRLLRLRRLRLRRLLRLRRRLLRLRLLLRRLRRLRRLLRRRRLRLRRRRRRRRLLLRLLLRRRLRLLLLLRRLRLLRLLLRLLLLRLRRRLRRRRRLLLLRRRLLRLRLRLLRLLLRRRLRRRLRLRRRLLLLRLRRLLLLRLRLLLRLLLRLLRRLLLRRRRRLRRRRLRRLLRLRRRLRRRRRLRLLRLLLLRLLRRRRLRRLRRRRLRRLRLLRRRLLLLLRRLLLRLLLLRLLRRRRLLLRRRLRLRLLLLRRLLRRLRLRLRLRRRLRLRLLLLRLRRRLLLLLLLRRLLRRLLLRRRLLRLLRRRRRRLLRLRRRRLLRLRRRRRRRLRRLRLLLRRRRRRRRLRLRRRLRRLRLRLLRRRLLLRRLRLLRLLLRRLRLRLLLLRRLRRLRLRRRRLLLLRLRRRRLRRRRLLRRLLRLRLLLRRLRLLRLLLRRRLLLLLRLRRRLRLRRLLRLRRRRLRLLRLRRRLLLLLLLRRLLLRLRRLRRRRRLLRLLRRRLLRLRRLLLRLRLLLLLLLLLRLRLRLLRRRRLLLRLRRRLLLRLLRRRRRLRLLLRLLRRRLRRRRRLLRRRRRRRLLRRRRRLLLLRRLLLRRRLLRRRRRRRRLLLLRRLLLRLLRRLLRLRRRRLRLLLLRLLRRLLRLLRLLRLLLRRLLRRLRRRRLRRRLLLRLLRLLLLRRRLRLRLLLLRLRLRRRRRLRLLLLLRLLLLLLRRRRRRLLLLRLRLLRRLLLLLRLLLRRLLRRLRRRLLRLLRRRRRLRLRRLLRLRRLLLRLLLLLLRRRRRLLLRLLLLRLRLRLLRRRLRLLRRRRRLRLLLRRRLRLRRLRRRLLRLLLRLLRLRRRRRLLRLRLLRRLLRLRRRLRRLRLLRRRLLLRLLRRRLRRLRLRLLRRLLRRRLLLLRLRLLLRLRRRRRLRRLLRRRLLRRRRLLLRRRRRRLLRLLLLRRLRRLRRRLLLRLRLRRLRRRLRRLRRLLRLRLLLRRRLLRLRLLLLLLRRRLLRRLRLRLRRRLLRLRRRRLLLRRLLRLRLLRLRLLLRRRLRLRRRLLLLRRLLRLLLRLLLRLRLLRLLLLLRRLRLRRLLRRLRRRRRLLLLRLRRLLRLLLLLLRLRLRLLRLRRRRLRLRRLRRLLLLLRLRRRRRRRLRRLLRLLLRLRLRLLLRRLRLLLLLRRRLRRRLLLRRLLLRLLRRLRLRLLRRRLLLRLRRRRLLLRLRLLLRLRLLLLLRRRRLRLLLRLRRRRRLLRRRRLRLRRLRRLRLRRLLRLLRLLLRLRLRLLRLLLRLRLRRLRRRRLLRLLRRLLRRLLLLRRLLRLRRLLRLLRLLRLRRRRLLLLRLLLRLLLRLRLRLRLRLLLRLRLLLLLLLLLLRRLLRLLRRLLLRRRLRLRLLLRRLLLLRLLLLRRLLLRRRLLRRLLLRRLLLLRLLLLRRLRLLRLRRRRRLLRRLRRRLRLRLLLRRLRRLLLRRRLRLLRLLRRLRLLRLLRLLRLLLRLLRRLLLRRLRRLLLLRRLLRLLRRRLLLRRLRLRRRRLRLLLRRRLLLLLRLLRRRLRRRLRLRLLLRLLLLLLRLLLRLRRRRRRRLLLLLRRRLLLLRLRRLLRRLLLRLLLRRRRRLRRLLRRRLRRRRLLRRRRRLLLRLRRLRLLLLLRRRLLLLLRLLLLLLRRRRLLRLLLLRRLLLLLRRRRRLLRLRRLRLRRRLRRLLLRLLLRRRLLLLLRRLRLRRRLRLRLLLRLRRLRRRLLLLLRRLLLLRRRLRLLRRRLRLLRLRRRRRLRLRRLLRRLRRRRRRLLLRLRRLRRRRLLLLRLLLLRRRRRLRRRLRRLLLRLRLRLLLRLLRLLLRRLRRRRRLLLLRRLRLRRRRRRLLLRRRLLRRLLLLLLRRLLRLLLRRRRRRLLLLLLRLRLRLLRRLRLRRRRRLLLLLLLRRLRLRLRRRRLRRRRLLLRLLRRRLRRLLLLLRLRRLRLRLLRRRLRRRLLLRLRRLRRRLLRLLRRLLRLLRRRLRLRRLLLRLRLLRRRRLLLLRLRLRRLRRLRRLRRRRRLRRRLRRRRRRRLLRRRRRRRRRRRLLLRLLLRLLRRRRRLLRLLLRLRLLLLLLRRRLLLRLRLLRLRRLLLRRLRRRRRRLRRRRLLRLLRRLRLRRRLRLLLRLRLLRRLLLLLLLRLLLLRLRLLRLRLRLLLLRLRLRRLLLLRRLRRRLRRLLRLRRLRLLLRRRLLRLLRRRRRLLRRRRRLRLLLLRRLRRRLLLLRRRLRRRLLRLLLLLLLRRRLRRRLRRLLLRRLRRRRLLRLRLLLRLLLRRRRLLLRLLLRRLLLRRLLLRLRLLLRRRLRRRRLRRRRRRRLLRRLLLLLRRLRLRRRRRRLLRLRRLLRRRRLLRRLRRLRRRLLRRRLRRLRRLLLLLRRRLRRRLLLLLRRRLRLRRRLLLLRLLRLRLRRRRRLRLRRLRRLRLLRRLLLLLLRLRRRRRLLRRLRRRRRLRLLLRLRRLLRRLRLRLRLRLLRLRLLLLLRLLRLRLLRRLLRLLLRLRLLLRRRRLLRLLRLRLLLLRLRRLRLRLLLLLLRLLRLLRRLLRRLLLLRRLRLRRLRLRRLLRLLLRRLLRLLRRLRLRRRLRLRLRLRLRRLRLRLLLRLLLRRLRRLLRRRLLLRRLRLLRRRLLRLLRRRLLRRRRRRRLRRLLLRRLLLLRRRRRRLLRLRLLLLLRRRLRLLLLLLLRLLLLLLRRLRLLRRLLRLRRLLLLLLLRRRRRRRRRRRLRRLRRRLLRRLLRLLRLLLLLRRRRRRLLLRRLRLLLRLLLLLRLLRRLLLRLLLLLLLRRRRLLLLRRLRRLRLRLLLLLLLLRRRRLRLRRLRRRRLRLLLRRRLLRRLLLRLLLRRRLRRRRLRLRLLLRRLLRLRRRLRRRLRLLLRRRLRLLLRRRLRLLLRRLLRLLRRRLRLLLLRLLLRRRLLLLRLRLLRLLRRLLLRRLRRLLLRRLRRLRRRRLLLLRRLRRLLLRRRRRRLLLLRLLLLLRLRRRLLRRLRLLLLRRRRRRLLLLRRRLRLLLRLLRRRRLRLRLLLLRRLRRLLLLLLRRLLLRLRRRRRRLLRLRLRRLLLRRLLRRRLRLLRRRLLLRLLLLRLLRLLRRLLRLRLLLRRLRLLRRLRLRLRRLRLRLRRRLLLRLLRRRRLRRRLRRRRRRRRLRLRLLRRLLLLLRLRLLRLRRRLLLLLRRLRRLLRLRLRLLLRRRLRLRLRLRRLLRLRLRLLLLRRLRRLRLLRRRRLLLLLLRLRRLRLLRLLLRLRRLLLRRLLLRRLRRLLLLLLLLLLLLLRRLRRRLRRLLRLLLRLRRRRLLLLRLLRRLRRLLLRLRRRRLLRRRLRRLLRLLLRRLRRLRRLRLRRRRLRLLRLLRLRRLLRLRLRRRRLLLLLLRLRLLRRRRLLLRLRLRRRLRLRRRRLRRRLRLRRLLLLRLRRRRRLLLLLLRLRLLRRRLRLLRRLLLLRRLRRRRRRRLRLLRRRLLLRLRLLLLRLLLLRLRLLLRLLRLLRRRRLLLLRRLRLRRLLLLLLLRLRLLRLRLLRLRLLLLLLLLLLRLRRRLRLRRRRLLRRRLLRRRRRRRLRLRRRRRRLLRRRLRLRLRRRRLLRLLLLLLLRLRLRLLLRRRLRLRRRRRRLRLRRLLRLRRLRLRRLLRLRRRRRRLLLLRLLLLLRLLLLLRRRLLLRRLRLLRRRRRLLRRLRRRRRLLLRRRLLRRRLLLLLLLLRRRRLRLLLLRLRRLRRLLLLLRRRLLRRRLLRRRRLLLLRRRRLRLRRRLRRLRLRLLLLLLLRRRLLLLLRLLRRLRLLLRLLLRLRLLRLLLLLRLLRRRRLRRRRLRRLRLRRRLRRRLLLRLRLLRLLRLLLLLLRRLLLLLRRRRLLLRRRRLRRLLLRRLRRRLRLRLLLLRLRRRLLLLLLRRRRLLLLLLLRLRRRRRLRRLLLLRLRLLRRRLRLLRRRLLRLLRLRLLLRRRLLLRRLRRLRRLRLLLRLLRLLRRRRRLRLRLLRLRRLRLRLLRRLLLLRLLLLRLRLRLLRRRLLLRRRRRLRLLRLRLRLLLLLLRRLLRLRRLRLRRRRRLLRRRLRLLLLLRRLRRRRRRLRRRRLLRLLLLRLRLLRRLRRLRRLRLLRLLRRRRLLRLRRRLRRLRLLRRLLLLLLLRRRLRLLRRLLLRRRLRLLLRLLLRLLRLRRLRLLLRLLRRLRRLLLLLLRLRRRLLLLLRRRRLLLRLLLRLLLRLRRRLRRRRRLRLRLLRRRRLRRLLLLRRRRLRRRLLLRRRLRLRRRLRLRRLRRLRRRLRLRLLRLLLRLRRLRLRRRRRLRRLLRRRLRLLRRRLLRRRLRRRRLRLLLRRRRRRRRRRRRLLRLRRLRLLRRLLRRLLLRRRRRRRLLRRRRLLLLLLLRLRRLRLLRLLRRLLRRLRLRRRRLRRLRRRLRRLLRLRRRLRRLRRLRLLRLRRRLRLLRRRRRRRLRLRRRLLRRRRRLLRLLRRLLRRRRRLRLLLRRLRRLLRLLRRRRLLRLRRRRLRRRRLRLLLRLLLLRRLRRLLLLRLRRLLRRLLRLRRLLRRRLRLRRRLLLRRRLRRLRLRLRRRRRRRRRLRRRRLLRRRLRLRRRRRLLLRRLLRRRRLLRLRRLRLLRLRRRLRLRLLLLLLRLRRRRLLRLRRLLLLRRLRLLLRLRRLRRLRLRRRLLLRRLRLLLRLRLRRRLLLRLRLRRRRLLRRRLRRLRRLRLLRLLLLRLLRRLRRRLLLLRLLLRRRLRLRLRRLRRRRLLRRRRRRRRRLRRRLLLLRLLRRLRLRLRRLRRRRLRRLRLRRRRRRRRRRRLLLRRRRRLLLRRLRLRLRRRLRRLRRRLLLRLLRLLLLRRLLLLRRLRLRLRLRRRRRLRRLRRRRLLLRRRLRLRLRLRLRRRRLLRLRLRLLLRRRLLLRRRRRRRLRRRLLRRLRLLLRRLRRLRLRRLLLLRRRLLRLLRRRLLRLLRRRLRRRRLRRRRRLLLRLLRRLLLLLRLRLRRLLLLLLLRRRRRLRLLRLRRLRLLLRLRLRRRRRLRRRRLRLRLRLRLRRRLRLRRRRLLRRLRLRLRRRLRLRLRRRRLRLRRRLRLLRRLRRRRRLRLRRLLLLRLRLLRLRLLRLLLLLLRRRRRRLRLRLRRRRRRLLLLRLLLRRLRLLRRRRLLLRRRLLRLLLLLRLLRRRLRLRLRRLLLLRRLLRRLRLLLRRLRRLLLRLRRRRRRRRRRLLRLRLLRLLLLRLRLRRLLRLLRLLRRRLRRRLRRRLRLRLLLLRLLLRLLRLRRRRRLRLLRRLLRLLLLLLRRLRLLRRLRLRLRRLLRLRLLRLRRLLRRLRLLLRRLLLRLLLRRRRLRRLRRRRRRLLRRRLRRLRLRLRRLRLLLRLLLRRLRRLRRRRRLLLLRRLRRLLRLRRRLRRLRLRLRLLLRLRRRLLLRRLRRLRLLRLRLLRRRRLRLLLLRRRRLRRRLLLRRRLRLLLRRRRRLLLRRLLRRLLRLRLLRLLLLRRLLLRRLRLRRLRRRLRRRLRRLLLRLLLRRRRLRLLLRLLLRRRRRRRLRRRLRRLLRRLRLRLLLLRLRLRLLLLRRRLLRRRRRRRLLLRLLLLRLRRRLRLRLLRLRRRRRRLRLLRRRLLRLRLRLLLLRRLRRRLLRLRLRLLRLRLLRRRLLLLLRRLRRLLLRRLLRRRLLLLRRRRLRLRRRLRLRLRLLRRRRLRLLRLRRLLRRLRRLRRLRLRRLLRLLLRRLRLLLLRRRLLLRRLLLLLRRLLRLLRRLRLLLRLRLRLLLRRRRRLRLLRLRRLLRRRLLLLRRLLLRLLRRRLLLRRLRRRLLRLLLRRLRRLRRLRLLLRLLRLLLLLLLRLLLLLLRRLRLLRLRLLRRRLRRRRLRLRRLRLRRRLLRLRRLRRLLLRLLRLLLRLRLLRRRRLRLRLRRRLRLLRRLLRRLRRRRRLLLRLRLRRRRRRLRRRRLRRRLRRRLRLLRLLRRRLRRLLRLRLRLRLLRLLRLLRRRRRRRRRRLRLRRRLRRRLLLLLRRLLRLLLLRRRRRLLRRRLRLRLRLLLRRRRLLLRLLLRRLLLLRLRLLRRLLRRLRRRLLRLLLLLLRRRLRRLLRRLRRLRRLLRLLRLRRRRLRRLLLRRRRLRRRLRRLRLLLRLRRRRRLRLLLRRLRLLLLLLLLLRLLRRRLLLRLRRRRLLLLRLRLRRRLRRRRLLLLLRRLRLRRLRRLRRRRLLRRRLRLLLRLRLLLRRLRLRLRRRLLLLLLRRLLLLRRLLRLRRRRLLLRLRLRLRLLLLRLLRLLLRLLLRRLRRRRLLRRLLRRRLRLRLRRRRRRLLLLRLRLLRRLLLRRLLRLLRLLRLRLLLLLRLRLLLLRRLRRRLRRRLLLRLLRRLRRLLLRLRRRLLRRRLLLLRLRLRLRLRLRLLLLRLLRRRLLLRLLRLRRLRLLRLLLLRLRLRLLRLRRLRRRRLRLRRRRRRRLRLRRRRRLRLRLRRLLLLRRLRLLRLLRLRRLLLLRRRLRLLLLLLLLLRLLRLLLRLRLLLRLLRLLRLRRRRRRRRRRRLRLLRRLLLLLLLRLLLLLLRLRLLLRLLLLRLLRRLLRRLLLLLRRLLLRRLRLRRLRLLLLLLRRRLRLRRLRRRRLRLLLRRRRLRRLRRRLRLRRLRLLRRLRLLLRRLLLRLRRLLLLLLLRLRLLRRLRLLRRLRLRLRRLRRRRLLRLLLRLRRRLRRLLLLRRRRLRLRLRRLRLRLRLLRLLLLLRLLRLLLRLRLRRLRRLLRLLRRRLLRLRLLRRRLLLLRRRRLRLRLRLRRRLRRRRRLRRLLRLRLRRRLLLRLLRLRRRLRRLRRRRLRRRRLRLLLRRRRLLRRLLLLRRLLLLRLRLLRLRRRLLLLLRRLRLLLRRRRLRLRRLRLLRLLRRLRLLLLRLLRLRRLRRLLLLRRLRLLLRLLRRRLLRRRRRRRRLLRLLRRRLRRRRRLLLLLLLLRLRRRLLLRLLRLRLLLRLLLLLRRLRRLLLRLRRRLRLRRRLLRRLRRRRRRRLLRRRLRRRLLRRLRRLLLRLRLLLLRLLRRLLLRRRRRLLLLLRLRRRLRLLLLRRLLRRRLRRLRRLRLLRRLRLLLLLRRRLRLLLLLLLLRLRRLRLRLLRRLLRLRRRRLRRRLLRRRLRLRLRLRLRRLRLRRRRLRLRLRLLLLRRRRRLRLLRLRRLLRLRRLRLRLRRRLRLLLLRLLRRLLRRRRLLLLRLRLRLRLRRRLLRLLRRLRRLLLRLRLLRLRLRLRLRRRRRLRLRRLLLLLRRLRRLLRLLLLRLRLRLLLLRRLRLRRRLLLLLLLLRRRLLLLLLRRRLRLLRLLRLLLRRLRRLRLRLRLLLRLLLRLLLLRRLLRLRRRRLLRRRRLRRLLRLRLRRRRLRRLRRLLLLLRRRRLRLLRLLLLRRRRRRLLRLLRRRLLLRLRLRRLRLRLLRLLLLLRRLLLLLRLLRLRLRLRLLRLLRLLLLRLLLRLLLRRRLLLRLRRRRRRRLLLRRLRRLLRRRLLLRLRRLLLLLLLRRRRLLRLLRRLLRLRRLRLLLRRLRRLLLLRLLRRLLLRLRLLLLRRRLRRLLLRLRLRRLLRLRLLLRLLLLLLLRLRRRLLRRRLRLRLLRLLRLLLLRLLRRRLLLRRLRLLLLRLRLRLRLLRRRRLLRRRRRLRRLRRLLRRRLLRRRRLRLRRLLLRRLLRLRLRRLLRLRLRLRLLRRRLRRLRRRLRRLRRLRLLLRRLLRLRLRLLLRLLLLLLLRRRLRLRLRLLLRLRRLLRLLLLRRRRLRLRLLLRRLRRLRRLLLLLRLRRLRRLLRLRLRLRRRRLLRRRRRRRRLLRRLRLRRRLRRRRLRRLLRRLLRRLLLLLRRRLLRRLRLLRLLLLRRLRRLRLLRRRLRLLLRLLRLRRRRLLRRLLRLLLLLLLRRLLLLRLLLRLRRLLRRLLLLLLLLLRLLLRRLRRLLRRRLRRRRRRRLLLLLLRRLLRRLRRRRRLRRLLLLLLRLRLLLLLRRLRLLLLRLLLRRLRLRRRRLLRLLRRLLRLRRLLRLLRRLRRRLRRRRRLLLLRLRRLLRLLLRLLRLRRRRLLLRRLRRRLLLLLLLRRRRRLRLRRRRLLRRLLRLRRLRRLRLRRLRLLRLLRLLLLLRLRLRRRRLRRRLLLLLLRRRRLLLRLRLRLLLRRLRRRRRLRRLRRRRLLLRRRLRLLRLRRLLRRLLLRLLLRRLRLLRRRRLRRRLLRLLLRRRRRLRRRRRLLLLLRLLLRRLRRRRRRLRRRLLLRRLLRRLRRRRRRLLLLRLLRRLRRRLLRRLLLLLRRLRLLLLLLRRLLLLLLRLRLRRLRLRLRLLRLLRRRLLRRRRLRLRRRRLLLLLLRLLRLLRRRLRLRLLRLRLRRRRRLLRRLRLLRRLLRLLRRRRRLLLRLRLRLRLLRLLLRLLRLRRLRLRLRLLLRLLLRRRLRRRRRLRRLLRLRRLLRRRRLRRRLLRLRLRRLLRLRRRLRRRLLLLLRRRRRLRRLLLRRRLRRLRRRLLLRRLLRLLRRLLLLLLRRLRRRRLRRRRRRRRRLRLLLRLRLLRLLLRRLRRRRLRRRRLRRRRLRRRLLRRRRLLRRLRLRRRLRLLLLRLLRRLLRRLLLLLRLLRLLRLRRLLRLRLLRRLLLRLRLRLLLRLLLRLRLLLLRRRRLLLRRLRLLRLRRLLLRRLLLLRRRRLRRRLLRRLLLLRRLRRLRLLLRRRLLLLRLRLLLRRLLLLLRLLLLRRRLLLRLLRRRRRLRRLLRLRRRLRRLRLRRLLRRLLLLLRLRLRLRLRRLLRLLLLRRRRRLRLLLLLRRLRLRLLRRRRLRRLLLRRLLRRRLLRLRLRLLLLLRLRLRRLLRRLRRLLRLLLRRRLRRRLRRLLLLLRLLLLLLRRLRLLLRRLRRRLLLLLRLLRLRRLLLRLRLLRLRLLLLRRLLLRLLLLRLLRRRRLLLLRRLLRLRLLRLLLRLRLLRRRRRRRRRRLRLRRLLRRLLLLRRRRRRRLRRRLLRLLRRRRRLRRRRRLLRLRLRRLLRLRRRRRLLRLLLRLLLRRRLRLRLRRLLRLLLLRRRLRLLRRRRLLRLLLRRLRRRLLLLLRLRRRLLRRRLRLRLLLLLLLRLRLLRLRRLLLLLLLRRRRLRRLRLRRRRRRLRLRLRRRLLLLRRLRRRLRLLLRLRLRLLLLLRLLLLLLRRLLLLRLRRRLRLLRRRRLRRLLRLRRRRLRLLRLLRLRRRLRRLRRLLRLRRLLRLLRRLLRRLRLLLLRRRRLLRLRLLRRRRLLLRRLLLLRLRLLLLLRLLRRLRRLLRLRRRLRLLRLLLLLRLRRRRRRLRLLLLRRLLRRLRRLLRRRLRRLRLRLRLLRLLRRLLRLLRLRLLLRRRLRRLRLRRRRRRRLRLLRLLLRLLLRRRLRRRRRRRRRLLRRRLRRRRLRRRLRRLLLRLLRLLLRRRRRLRLLRLRLLLLLLLRLLRRRRRRLRLLRRRLRRRLRLLLRRLLRRLLRRLLLRRRRRLRLRRRLRRLRRLLRRLLLLRLRRRRLLLLLLRRRLLLLRRLRRLRRRRLLLLLRRRLRRLRLLLLLRLLRRLLRRLLLRRRRLLRRRRLRLLLRRRLRRLLRRRRRRRLLLRRRRRRRRRLLLRRRRLRRLRRRRLRLRLLRLRRLLRRRLLRLRLRRLRRRRLRLLRLRLLRRLLLRRLRLLLRLLLRRLLLRRRRLLRRRRRRRRLLRRRRRRRLRLLRLRLRLLRRRLRLLRLLLRLLRLRRLLLRRLRLRRRLLRRRLLRRLLRLRLLLRRLLRRRRRRRLLLRRLLLLLRRLLLRRRLLLLLLRLRLLRLRLLRLLLRRLRRLRRRRRRLLRLLLRLRRRRRRLRRLRRRRRRRLLLLRLLLLLRRLRLLRRRLLRRLRLRRLRRRRRRRRRLRRRLRRLLLRRLLLLRLLLRLRLLRRLRLLRRRRRLLLLRRLLRLLRLRRLLLLLLLLRLLLRLLRLLRLLRRLLLRLLRRRLRLRLLLLRLLLRLLRRRRRLRRLLRLRRLRRRRLLRRLRLRRLLRRLLRLLRLLRRRRLLLRRLRRRLLRLRRLRLLLLRLLRLRLLLRRRLLLLRLLLLRLLRLLRRLLLLLRLLRLRRRRLLLRRRRRLLLRRRLRLRRLLRLLRLLLLLRLRLRRLLRLRRRRLLRRRRRRRLRLLRRRLLRLRLRRLRRLLRRRLLRRLRRRRRLRLLRLLLLLRRLLRLRLRLRRRRRRLLRRLLRLRRLRRRLRLRRRLLLRRRLRRLLRRRRRRRRLRRRLLLLLLLRRRRRLRLLRRLRRRLLLRRLLLRRLLLLRLRRRRRRLLRLLRLRRRLRRLLLRRRLLRLRLLLLRRRLLLLRRRLLRRRLLLRLRRLRLLRLRRLRLRRLLLLRRLLLLLLRRRRLLRRRLLLRLLRRRLRRRLRLRRLLRLRRRRLRRLLRLLRRLLRRRLLRRLLLLLRRLLLLRRRLRLRLRRRRLLRLRRRLLRLLRRLLRLRLRLRRLLLLRRLRRRRLRLRRLLLLRLLLRLLRRRLRRLLRLRRRRRLRRLLLRLRLRLRLLRLLLRLRLLLLRLLLRLLRLLRLRRLRRRRRLRRLLRLLRLRRLLLLRLRLLRLRLLRLLLLRLRRRRRLLRRRRLLLRLRLLRLLLRRLLLLLRRRLLLRLRLRRRLRRRRLLRRRRLLRRRRRLLLRLRLLLLLRRRLLLRLLLLLRRRRLLRLRLLLRRRLLRLRRRLRLLLLRLRRRRRRRLLLRLRRLRLRRRRLRLLLLLLLRRRLRRLLLLLLRRLLLRRLRRRLLRRLLRLLRLLLRLRLLRLLRLLLRRRLLRRRRLLLRRRRLLRRLLLRLRRRLRLRLRLLRLRRRLRLLLLRLRLRLLLLRRRLLLRRRLLLRLRLRLLRLRLRRLLRRLRRLLLRLRRLRLRRLLLLLLLRRRRRLLLLRLRLRRLLRLLLRLRRLRLRLRRRLRRLLLRLRRRLRLRRLRLLRLRLRRLRRLLRRLRRLLLRRLLRLLLLRLLLRLRLRRRRLLRRLLLRLRRRLLLRRLRRRLLLLRRRRRLLLLRRLRLRRLLLRLLRLLLRLLRRRLLLLLLRLLRLLRLRLLRRLRRRLLRRLRLLLLLRLRRLLLRRRRLRLLRRLLLLRLLRLRRLLRRLLRLLLLLRRLLLLRLRLLRLRRLRRLLLLLLLRRRLLLRLRLLLLLRRLRLLLLRRRLLLRLRRRRLLLLLRLRRRRLLLLRLRLRRRLRRRRLRRLRRRLRRRLLLRRRRLRLRRLRRLLLLRRLRRLLRRRRRRRLRRRLLLRLLRRLLLRLRRRLLLLLLRRLLLRRRLRRRRLLLLRLLRLLLLLLRRLLLRLLRLLRLLLRLLRLLLLRLLRRRLLRLRRLLLRLLRLRLRLLLRLRRRLLRRLRLLRLLRLRLRRLRRRLLRRRLLRLLLRLRLLLRLRLRLRLRLRLLLRRLLLLRRLRRRLLLLRLRRLLRLRRRLRRLLRRRLLLRRLLRLLLLRRLRRRRLRRRRRLLLLLRLLRRRLRRLLLLLRLRRLLLLRRRLLRLLRRRLRLLRRLRLLLRLRRRRRRLLLLLRRLRLRRRRLRLRRRLRRLLLRLLLRLRLRLLRRLRRLLLRRRRRRLLLLLRLRLLLRLRLRLLRRRLLLRLLRLLRLRRLRRRLRRLRLLRLRRRLRRLRLRLRRRLLLRRLLLLLRLRRRRLRLLRRLRLRRRLLLRRRLRLLLRLRLLRLRLRLLLRLRRLLLLLLRLRLLLLRRRRRLLRLLRRRLLRRRRLRRRRRRLRLLRLLRLLLRRLRLLLRRRRLLRRLRLLRRRRLRLLLRLLLLRRRRLLLLRLLLLRRLRLRLRRRLRLRRLRLLRLLLLRRLLLLRLRLRRLRRRRLRRLRRRLLRRLRLLRRRRLLLLRLRRLLLLRRLLLRLLRLRRRRLLLRLLRLLRLRLLRRRLLLRRRLLRLRLRRRRRRLLLLLRLLRRLRLLRLLRLLRLLRRLLLRRLRRRRLRRLRRLLRRRRRRLLRRRLRLRRRRLLRRRRLRLRRRLLLRRRLRRLRRLRLRLLRRLLRLLLLLLRLLLRLLRRRRRRRRLLLLLRRLRRLRLRLLLRRRRLRLRLLLLLLLLLRRLLLLLRRRLRRRRRRRRLLRRLLRRRLRRLRLLLRRRRRLLRRLLRRRLRLRLRRRRRRRLLLRLRRLRLLRRRLLLRRRRLRLLLRRLRRLLRRRLLRRLRRRLRLLLLLLRRLRLRRRRRLRRLRRRLLLLRRLLRLRLLRLRLLLLLRLRLLLRRLRRLRRLRRLLLRLLLRRRRRLRRLLLRLLRRLRRRLRLRLLRRLRRRRRRLLRLRLLRLLRLRRLRRLLLRRRLRLLRRRLLLLLRLRRLRLRRRRLRLRRLLRRRRRLLRLRRLRRRLLLLRLLLRLLRRRRRLRRLLRLRRLRRLLLRLRLRRLLRRRRLRLRRLRLRLRLRLLLRLRLLRLRRRLLRRRRRRLLLRLRRRLRRLRRLLRLRRRLLRRLLLRLRRLLLLLRRLRRLLLRRLLRLLRLLRLRLLRRLLRLRRLLRLRLLLLRLLLLLLRLRLLRLRRRRLLLLRRLLRLLRRRRRLLLLLLRLRLLLRRRLLRLLLRRLLLRRRRLLLLRRLLLLLLRLLLLRLRLRLRLLRRRRLRLRLLLLRLRRLRRLRRRLLRRRLRRLRRRLRLRRLLRLRLLRRRRLRLRLLLLRRLLRRLLLLLRLLRRRLLRLLRLLLLRLLLLRLRLRRRRLRRLLRRRRRLLRRRLRLLLLRRRLLLLLRRRRRRRRRLRLLRRRRLRRLRLRLLRLRLLRLLLRLLRLRRRRRRRLRLRLRRRRLRRLLLRRLLLLRLLLLRLRRLRLLLRRRLRRLRRLLRLRLLLLLRLRLLRLRRLRLRRLLRRLRRLRRLRRLLRRRRRLLRLLLLLRLLRLLLLRLLLRRRRLLLRLLRLRLLLRLRRRRLLLRLRLLLRLLLRLRLRRRLLLLLRLLRRLLRLLLRRLLLRLRLLRLRLRRLRRLLLLLRLRRLRLRRRLRRLRRRLLRLRLLRRRLLRLRRLLLLLRLLLLRLLRRRLLRLRRLLLLLRRLRLRRRLRLRLLRRRRRLRLRRRLRLLRRRRRLRRRLRLRRLLRRRRLRLLRRLRRLLLRRRRRLRLLLLRLLLLLRRRRRLLRLRLLRLRRLLRLLLLRLRRRRRRLRRLRLRRRRRLRRLRLLRRLLLLRLLRLLRRRLRLLLLRRLLLRRLLLLLLRRRLRLLRRLLLRLRRLLLRLLLLLRLRRRLLLLLLLRLLRLRRRLLRLRRRRRRLLRRLRRRLLRRLLRLLRRRLLRLRRLLLRRRRRRLLRLLLLRLRRLLRRRLRRLLLRRLRLRLLRRRLRRRLLRRLLLRLRRRRLLLRRLLLRLLLRRLLRRRLLRLLRLLLRLRRRLRLRRRRRLLRLRLRRLRLRLLLLRRLRRRRLRLLLLRLRLRLRRRLRRRRLRRRRRLLRLRLLRLLLRRRLRRRLRLRLRLLRLLRLLRLLLRLLRLRLRRLRLRLLLLLRRRRRLRLRLRLLLLLRRRLRRLRLLLLRLRLRRRLLLLLRLRRLRRRLLRLLRRRLLLRLLLLLRRRLLLLLLLRLRLRRLLRRLRLLLLRRLLRRLRRLLLLLLRRLRLLLRLRLRLLLLLLLRRRLRLLLRLLRLLRRLRRRLRLRLLRRRLRRRLRLLRRLLLLRLLRRLRRRRRRLRRLLLLRLLRLLLLLLRLLRLRLLRRLLRLRLLLRLLLRLRLRLLLLRRLRLLRRRRRRRLRRLRRLLRLLRRRRLRRLLLRLRLRLLLRLRLRRLLLLRLLRRRLRRRRRLLRRLRRRRRRRLRRLLLLLLRLLLRLRRRLLLRLRLLRRRLRRLLLLRLRRRRRRLRLRRLRRRLRLRLLLRLRRLRLLRLRLLRRRRRLRLLLLRRLLLRLLRLLLRRRRRRRRLRLLLRRRRLLRLRRLLRRLRLRRRRRRLRLLLRRLRRLRRRLRLRRLLRRRLLLRLLLLRLRLRLLRRLLRLLRLRLRLRRLRLLRLRRLRLRRRLRLRRLLLLLLLLRRLRRRLLRLLLLLRLRRLRLLLRRLRLRRRRLLLRRLLLRRLRLRLLLRLLLRRLRRRLLRRLRRLRLRRLRRRLLRRLRRLRLRLLLLRRLRLRRLLRLLLRRRLLRRRLRRRRLRLRLLLRRLLLLRRRLLRLRLRRRLRLRRRRRRRLRRLLLLRLRLLLLRRLLRLLLRRRRLRRLLRRRRLLLLLLLLRRLLRRLRRRLLRLLRRLLLLRLRLRLRLRRRLLRRRRRRRLRRLLRLLLRRRLRRRRRRRRLLRLLRRLRRLRLRLRRRRLLRLRLLLRRLLRLRRRLRRRRLLRLRLRLRLRRRRRLLLLLLRRRLRLRRLRRLRRLRLRRLRRRRLLLLRRLLRLLRRLRRRLRRLLLRRRLRRLRRRRRRRLRRRRLRRLLRLLLRRRRLLLLRLRLLLRRLLRLRRRLRLRLRRRRRLLRRRLRRRRLRLLRRLRRRRLLLLRLRRLLLLLRRRLLRRLLLLRRLRRLRRLLLLLLLLRRLRRRLLRLRLLLLRRRRLRLLRLRLLRRRRRLRLRLLRLRRLLRLRLRRRRRLLRRLRRRRRLLLLLRRLLRRLRRLRRRLLRLLLRRLRLLRRLLLRLLRLRRLRLLLLLLRLLRRLRRLLLLRLRLRRLRLLLLRRLLRRLLLRLLRLRRLLRLLRLRRLRLRRLLLRRLLRLRLLRRLRRLRRLRRLLLLRRRLRLLRRLRRRLLRRLRRLRRRRLLLLLRRRRRRRLRRLRLLLRRRLRLLLLRLRRLLLLRLLLLRLLRRLLLRLLRRLRRRLLRLRRRRLLLLLRLLLRLLLRLRRRLLLRLLLLLRRRRRRLRLLLLLLLLLRLRLRRLLRRRLLLRLRLLLLRLLRLRRLLLRLRRLLLLRLLLRRLLRLRLRLRRRRLRRRRLLRLRLRLLRLLRLLRLLRRRLLLRRLLRLLRRLRRLLRRLLRLLLLRRRRLLLLLRLLLRLRLRRLLLLLRLLRRRRLRRRRRRRRRLRRRLLRLLLRLRRLLRRRLRRRLLRRRRRLLRRLLRRRLRLRLRLLRLLLLRRRRLLLRLRLLLRRRLRRLLLRRRLRLLLRLRLRLLLRRRLLRRRRLRRRRRRRRRLRRRLLRLLLLRRLRRLLRRRRRLLLLLLRLRLRRRLLRLLRLLLRLRLRLRRRLRLLRLRRLRRRLRLRRRRLRRRRRLLLLRRRRRRLRLLRRRRLRLRRLRLRLLRRRRRLLLRRLRRRRLRRLRRLRLLRLRLRRLLRRLRLLLRRLRRLLLLRLRLRLLLRLRLRRLLRRLRRLLLLRRRLLRLRLLRRRLRLLLRRLLRRRLRLRRRRRLRLLRLRRRLRLLRLRRLLLRRRLLLRRRRLLLLLLRRRRRRLLRLRRLRLLLLLRLLLRLRLRRLLLRRRLRRRRRRRLLLLRRLLLLRRLLRLLRRLLRRLRRLRLLLLRLLRLRLRRLRLRLRRRLRLRLLLRLRRLLLLRRLRLLLLRLLRRRRRLRLLRLRRLLLLLLRLRLLLLRRRLRRLRRLRRLRRLRLRLRRRLLLRRRRLLRRLRLLLRRRRRLRRRRLRRRLRRRRRLLLRLLLRRRRLRRRLLRLRLLRRRLLLRLLLRLLRLLLLLLLLLLLLLLRRRRLLRLLRLLRLRLLLLLLRLRRRRRRLRRLLRRLLRRRLLLLRRLLRLLRRLLLRRRRLLRLLLLRLRLRLLRLRRRLRRLLRLRLLRRRRRRRLRRLLRRRLRRLLRLLLRRRLLRRRRRLRRLRRRLRLLRRRLLLRRLRRLLLRRLRRLRLRLRLLLLRRRLLRRLRRRLRLLLLLRLRRLLRRLRLLRLRLRLRLLLLLRRRRLLRRLRLRRRLLLRRLRLLLLRLRLLLLLRRLLLRLLLRRRRRRRLLLRLRRLLRRRLRRLRRRLLLLRRLRRRRRRRRLRRLRRLLLLRRRLRRLLRLLLLLLLLRRLLLLRLRLRLLRLLLLRRLRLLLLRRRLRLLRLRLRLRLRRRLLRRLRLRLRLLLRLLRRLLRLLLLRRLLLLLRRRRRLRLLLRRLRRLLRRLRLLLRRLLRLRRLLLLRRRRRRLRRRLLLRRRLLLLLLRRLLLLRLLLRRLRRLLRRRLLLRRLRLRLLRLLRRLLLLRRRLLRLRRRRRRRRRRRRLRLRLRLRRLRLRRRLRRRRRRRLLLLRLRRLRLLLLLLLLLRRLLRRLRRLLRRRLRRRRLLLRRLLRLRRRRRRRLLLRRLLLLLLRRRRRLRLLLLRRRLRLLLRLRRLLLLLRLLRRLLRLLRLLLLLLLRRRRRRLRLRRRLRLLRRRRRRLLLRLRRLRRRLLLLLLRLRLLRLLRLLRRRLLLRRLLRLLRLRLLRRRLLRLRLRLRLRRRLRRRLRLRRLLRRRRRLRLRRRRRLLLLRLLLRLLRRRRRRRLRLRRLLRRLLLLRLRLLLRRLLRRRRLLLLRRRLRLRLLRLRLRRLRLLRLRRRRLRRLLRLRLLRLRRRLRLLRLRRLRRLRRLRRRRLRLLLRRRRRRRRLRLRLRLRRRLLRRLLLRLRRLRRLRRLLLLRLRLRRRRRLRRRLLRLLRRRRRLLLRRLLLRRLRLRRLLRRRLRRLLLLRLLRLRRRRLRLRRRRRLRRLLRRRLRRLLRLRLLRLLRLLRRRRRLRRRRLLLLLLLRLRRLLLLLLRRLRLRRRLLRLRLLLRRLLLRLLLLLRLRRRLLRRLRLLRLRRLRRLRLRLLRRRLRRRLRRLLRLLRLLLLRRLLRLRRLRLLLRLRRRLRRLRLRLLLRLRRLRLLRRLRLRRLLLRLLRRLRLRRLLLRRLLLLLRRLLLRRRRLRLRRLRLLRRRLLLLRLLRRLRRRRLRLLRRRRLRRLRRRRRLRLLRRLLLRLLRLRRRRLLLRLRRRLRRLRRLLRRLRLLRLRLLRLLRLLLRRRLLLRRRLRRRRLLLLLLLLLLRLRLRLLRRLRRRLLLRLLRLRLLLRRLLRRRRRLRLLLLRRRLRRLLRLLLRRRLLLRRRLLLLRRRLRLRRRRLLRRLRRLLRLRRLLLRLRLLRRLLRLLLRLRRRLLLLLRLRLLLLLLLLLRLRRLLLLLRLRLRRRRLRLLLLRLRRLRLLRRLLLLLRRRRLRRLLLRLLLRRRLLRLLLLLRRLLLRRRRLRLLLLLLRLRLLRLRRLRRLRLLLLRRLLRLRLLRRRLLLRRRRLLRLLLRLRRRLRLRLLRLRRLRRRLLLLRLLRRLLRLRRLLLLLRRLRRLLLRRRLLRRLLRLRLRRLLRLLRLLLLLRRLLRRLLLLLRLRLLRRRLRLRRRLRRRRLLLLLRLRLRLRRLLLRRRLLRRLLRLLLLRRRLRRLRRLRRRRLLLLRRRLLLLRRLLRLLRLLRLLRLLRRLLRLRLLLLLRLRRLLRLRLRLRLLRRRLLLLRLRLRRRLRRLRLRRRLLRRLRRLRLLLLRRRLRLLLLLLLRLRLLRLRLLRRLLLRRLLLLLRLLLRRRLLRLLRRLRLRLLLRRLLRRRLLLRLRLLRLRRRRRLLLLLRLRLLRRLLRLLLRLLLRRLLLLLRRRLRRLRRRRLLRLLLLLRRRRRRRRLLLRLLRRRLLLLRRRRLLRRRLLRRLLRRRLRLLLRRLRLRLRLLLRRRRRLRLLLLLLLLRLRLRLLRLRLLLRRRRLRRRLLLRLRLLRRRRRRLLLLLRRRRRLRRLRLRLLRRRRLLRRLRLRRRLLRRLLRLRLLLRRRRLLLRRLRLLLRRLRLRLRRRLRRRRRRRRRRLLLLLLRRLRLRRRLRRLLLLLRLRRRRLRLRLRRRLLRLRRLLRRRLLLRLRLLLLLRRLRRRLRLLRRRRRLLRRLLLRLRRRRRLLRRLLRRLLLRLLRRRLLLLRRLRLRRRLRRRRLRLRLLLRLRRLLRRLRRRLLLRRRRLRRRLRLRLLRRLRLRLLLLLLLRLLLRRLRLLRLLLLLLRRRLLLRRLRRLLRRRRLRRLRLLLRLLLRRLLRLLRRLLLLLLRLRLRLRLRLLRLLLLLLRLLLRLLLLRRLLLLLLLRRRRLRRLRRLLRRLRLRLRLRRRRRRLRRRLRLLLRRLLLRLLRRLRRLLRLLRLRLRRRRLRLRLLLLLRLRRLLLLRLRLLRRLRLRRLLLRRRLLRRRLLLRLRLLRRLLRLLRRLRRRRLRLRLRRLLLLLRRRRRLLLRRLLRRLRRRLLLRRLLRLRLLRRRLLRLRLRRRLRLRRLLRLLLRLRRRRRRRRLLLRRLRRLRRLRLLLLRLRRRRLRRLRRLRRLRRLRLLLLLLLLRLLLLRLRRLRRLRLLLRLLRLRRLRRLLLLLLRRLLLLLRRLLLRRRLRLRLRLLRLRLRRLLRRRLLRLLRRLLRRRRRLRLLLRLLRRLRLLRLLLLLRRLRRLRLLLRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLLRRRLLRRLRLRLLRRLLLLRLLRRRLRLLLLLLLRRLLRLLRLLLRRLRLRRLRLLLLRLLRLRRRRRRLLLRRRRLLLLLLLRLRLLLLLLRRLRLRRLRRLLLLLRLRLRLRLLLRRRLLRLRLLRRRRRLLLLRLLLRRLLRLRLRRRLRLLRRRLLLRLLLLRLRLRRLRLRRRRRLLRLRRLLLRRRRLRLRRRLRLLLLLRRLRRLLLRLLRLRLRRLLRRLLLLRLLLLLLLRLRRRRRRRRRLLRLRRRRRRRRLRRRRRRRLRRLLLLRRRLLLLLLLLLLLRRRLLLLLRRLLLLLLRRLRLRRRRLRRLLLRRLLLLLLLRRLLRRLLLRRRLLRRRRRRLLLLRRLRLRLRLRRLLRLRRRLLLRLRRLRLLLLRLLLLLLRLLRLLLRRLLLLLRRLLLRLLLRLRRRLRLLLLLLRLRLLLLRLRLRRLRRLRRLRLRRLLRRLRRLLLRRRRLRLRRLLLLLLRLLRLRRLLLLLRRLRLLRRLRRRRLRLLRRRLRRLLLRRLLRLLRRLRLRRLRRRLRRRLLRLLLLRLRRRLRLRLRLLRLLRRLRLLRLRLRRRLRRLRRRLLRRRRRRLLLLRLLLRLRLLRLLRLLLLRRLRRRLRRRRLLLRLLLRLLLLRRLLLRRLRLRLLRRRLLRRRLRRRLLRLLLRLLRLLLRRRRRRLRRRRLRRRRRLLLRLRRLRLRLLLRLRLRLLRLLRRLLRRRRLLLLLRLLLLLLRRRRLRLRLRLLLRLLRRLRLRLLRRLRRLRRRRRRLLLRRLRLLLLLRRLLLRRLRRRRRRRRLLLLLRRRLLRRLRLLRRLLRLLLLRLRLLLRLRRRLLLRLLLLRLRLLRLLLRLRLLRRRRRRRLLRRRRRRRLRLRLRLRLRRRRLRRRRRLLLLLRRRRRRRRLLLLRLLLRRRLRRRRLLLRRRRRLRLRLRLRRRLLRRRLRLLRLRLRRRRRRRLLLLLRLLLRLRRRRLRLLLRRRRLLLLRRLRRRLRLRLRLRLRLLLLLLLRRLLLRRLRLLLRRLLLLRRLRLRLLLRLRLRLRRLRLRRLLLRLLRRRRRLRLRLLLRLRLLLRLRLLLLRRRLRLLLRLRLRRLLLLLLLRLRLLRRLLLRLLLRLLLLRRLRLLRLLLLLRLLLRRRLRLLLLRRRRRLLRRLRRLLLLLLRRLRLLRLLLLRRRRLRLLLRLLLLLLRRRLRRRLRLRLRRLRLLRRLRLLLRLLLRLRRRLLLRRLRRLLRLLRRLLLRRRLRRRRLRRRLRLLLRRLLRLLLLLLLRRLRRLRRRRLRLLRLLRRLRLRLLRRLRRRLRLRLLLRLRRLLLRRLRRLLLLLRLLLLLRLRRRLRLRLRLLRRRLLLRRRRRRLRLRLRRRLLRLRRRRRLRLLLRRRRLLRRLRRLLRLRLRRRRLLRLLRRRLRLLRRLLLLRLLLRLRRLRRLLLRRLRLLRRRLLRRRRLRLLLRRRRLLLRRLLRRRLLLLLRRLLLLRRRRRRLRLLLRRLLRRRRLRLRLLRLLLLRRLRRLLLRLRLRLRLLLRRRRRRRLLLLLRRRRRLLRRLRRLRLRLRLLRRLLRLRLLLRLRRRLRRRLLRRRRRRRLRLLRLLLRRLRRLRLLLLRRLLLLLLRLLLRLLLLLRRLRRLRRLLLRLRLRLRRRRRRLRRRLLLRLLLRLRRRLLRRRLRRRLRLLLRRLLLLRRRLRRLRRRRLLRLLRLLRLRLRLLLRRLLLRRLLLRRLLLLLLLRLLLLRLRRRRRLRRRLLLRLLRLLLRRRRRRLRRRRRRLRLRRRLRLLLRLLLLRLLRRRRLLLRRLLRRLLRRLLRRLLRLRLRRLLLRRRRRRLLRLRLLLRRRRLLLLRRRRRRRLLLRLLLLLRLLLLLRLLRRRLLLRLRRRRRRLRRRLRLLRLRLLRRRRLLRLRLRLRLRRLRRRLRLLRRRRLRRLRRLRLLLRLRLLRRRLLLLRRRRLLLLRLLLLLRRRRRRLRLRLRLLRRLLLRRRRLRLRRRLLLRRLRRLLLRLRRRLRRLRLLLLRLRLRLLLLLLLRRRLRRLLRRRLLLRLLLLRRRRRLLRLRRLRRLLRRLRRRRRLLLRLRLRLLRLRLLRLLLRLRLRRRLRLLRLRLLRRLLLLLRRLRLLLLLRLRLLRRLLRRRLLRLRLRLRLRLLRLRRRLRLRRRLRRRLRLRLLLRRRRRLLLLLLRRRLRLRRRRRLLLRRRLLLLLLRLRLLLRLLLLRLLLLLLRLLRRRLLLLLRRRLLLLLLLLLRLRRLRRRRRLLRRRLRLRLLLLLLLLRLLRLLRRRRLRLRRLLRLRLRRLRLLLLRRLRLLRRRLLRLRRRRRRLLLLLRLRRLRLLRLRRLRLLRLRRRLRRLLLRRLLLRRLLRLLLLRLLLRRLLLRRLRRLRLLRLRLLRRRRLLLLRRRRRLRRRRRRRLRRLLRRLLRRLRRRLLLLLLLLRRLRRLRRLLRRRLLRLRLRLLRRRLRLLRRLLLLRLLRRLLRRLRRLRRLRLLLRRRRLRLRLRLRLRLRLRRRLLRLRLLLLLRLRRRRLLRLLRRLLLLLLLLRRLRRLRRLLRLRRLRLRLLLRLRLLLLLRLRRLRLRLRRRRRRRLRLLRLRRLRLLLLRRLLLRRLRLLRLRRRLLLLRRRRRLRLLRRRRLRRLRLLRLRLLLRLLLLRRRLLRLRRRLLLRRLLLLLRRLLRLLLLRLLLLRRRRRRLLRRLRRLLLLRRRRLLLLLLRRRRRRRRLLLLLRLLLLRLRLRLLLLRRLLRRLLLRRRLLLLLLLLRLRRRRRLLRLRLRRLRLRLRRRLRRRRRRLRLLLLRRRLLRLLLRLRLLLLRRRRRRRLLLRRLRRLRRLLLLRLLLLRRRLRLLRRLRLRLLRRRLRRLRLRRLRLRRRLRLLRLRRRRLLLLRLRLRRLLLLLLLLRLRLLRRRLLRLRLRRRRLLLRLLRLRRRRLRRLRRRLLLRRLRLLRRRRRRRRLLRLRLRRRRRLLLLLRLLLRLRLLLLRRLLRRLRLLRRLLRLRRLLLLLLLLLLRLRLLRLLRLRLRRLLLLRLLRRLLRLRLRLRLRRLLRLLRRRLRRRLRRLRRRRRRLRRLLRLLRRRRLLLRLLRLLLRLLRLLRLLLRRLRLRRRRRRRLRLRLLRLRLRRLLLLLRRLRLRLLRRRLLLLRLRLRRLRRRLRRRRLLLRLRRLLRLLRRRLRLLLRLLLRLLRLLLRLLLRLLLLRRRRRRLRRLRLLLRRLLLLLRLLRRLRRRLLLLLLRLRRLLLRLLLRLLLLRRRRLLRLRLLLLRRRRLRLLLRLRLRLRLRRRLRRLLLRRLLRRRLLRLRLLRRRLLLLRLLLRRRLRRRRLRLLLRLLRRRLRLLRRRRRLRLRLLLRRRRLLRLLRRLRRRLLRLLLLRLLRLRLRRLRLRLRRLLRLRLLRRRRRLLLLRRRLLLRRRLLRRRLRRRRRLRRRLRRRRRLRRRRRRLLRRLLLRRRLLRLRRLLLLLRLLLLRLRRRLLLRLRLLRLLLLRRRRRLLLLRLRRLLRRRRLRLRRRRRRRLRRRRLLRRLRLLLLRLRRLRRLRLRRLLRLRRRLRLLLLRRLRRLRLRRRLRLLLLLLRLLLLRLLRLRLRLRRRLRRLRRRLLRLLLLRLRRRLLRLLLRLRLLLLLRLRRLRLRRRRRLLLRLLRRLLRRRRRLLRRRLRLLRLLRRRRRRRRLRRRLRLRRRRLLRLLRRLLRLRLLRLLRLLLRRRRRRLRLLRRRLRLLLRRLRRRLLLLLLLRLLRLLLRLLRLRRLRLLLRLRRRLLRRLLRLRLRRRRLLRLLLLRRRRRRLLRRLLLRLRRRRRLLLRLRLRRLRLRLRRLRLRLRRLRLRLRLLLLLRRRRRLRLLRRRLLLRLRLLLRLLRRLLRRRRLLLRRLRRRRLRLRRRLLLRLLRLRRRRLLRLRRLRRRLLLRLLLLRRRRLLLLRLLRLRLRRLRLRRRRRLLLLLRLLLLRRLLRLLLRRRLRLRLRRLRLLLLRLLLRLRLRRLRRRRLLLLRRLLLRRLLLRRLLRRRRLLLRLLRRLLRLLLRLLLRLLRRLLRRLRRLLRLLLLLRRRLLRLRLRRLRRRLLLLLRRLLRLLLLLLLRRRLRLRRLLRLRRLRRLRRRRLLRRRLRLLRLRLLLRRRLLLRLRRRRLLRLRRLRRLRLRRLLLLLLLLRRRRLRLRLRLRRLLRLRLLLLRLLRLRRRLRLLRLRRLRLLLRLRLLLLLLRRRRLRLLLLRRLLLRRLLRLRLLRLRLLLRLLRLRLRRRRRRLLLLRLLRRRLRRLLLLLRRRRRRLRRRRLLRRLRLRRRLLRRRLRLRRLLLRRLRLRLLLRLLRLRRLLLLRRLLLLLRRRLLRLRRRLLLLLRLLLLLRRLLLRRLLRRLLRLRRRRLRLLRLLLRRLRLRRLRLLRLLLLLLLRRLRRLLLLRLLRRRRLRLLLRRLLRRLRLRRRRRRRLLRRLRLLLLLLRRRRRRLLRRRRRLLRRLRRRRRLLRLRLRRRLRRLRLRLLRLLRRLRLLRLLLRLLLLRRLRLLLRRLLLLRLRRLRLRRRLLRLRRLRRRRLLLLRRLRRRRRLLLLLRRRRRLRLRRLRLRLLRLLRLRLRRRRLLLLRLLLLLLLLLLLRRRLRRLRLRRLRRRRLRRLLLRLLLRRLLRRLRRLLRLRRRRRRLLRRRRRRRRLRRRRRLLLRLRRRLRRLLLRLRRRRRRRRRRRRLRLRRLLLRLLRRRLLLRLLRLLRLRLLRLRLLRRLRRRRLRRLLLRLLRLLRLRRLLRRLRLRLLRLLLRLRLLLRLRLRLLRRLRLLLRRRRLLLLLLRLLLLLRLRRLRLLRRRLLRRRRLLRLLLLRLRLLLLRLRLRRLLRRLLLRRRLLLLRRRLRLLRRRLLRLRLRLLRRRLLLLRLRRLRRRLLLRRLLLLRRRLRRLLLLLLRLLRRLLRLLRRRRRLRLLLLLRLLRRLRLRRRLLLRLRLLRLRLRRLRLLRRRRRLLRRLLRRLRLRLRLLRLRRLRRLLRRLLRRLRLRRLRLLRLRLLLRRRLLLRRRLLRRRRLRLRRLLRLLRLRLRRLRRRRRLLLLRRLLRRLLRRRRLRLRRLRLRLRRLLLRRRRRLRLRRLRLLLLRRLLRRLLRRLLLRLRRRLRRLRLRLLRRLRLRLRRLLLRRRLRLLRLLRLLRRRLRRLLRLRLLLLRLLRRRRLLLRLLRLRRRRLRRRRLRRLLLLRLRLLLLLRRLLRRRLRLLRLRLRLLRLLRRLLRLRRRLLRRRRRLLRRRLRLLRLLLLLRRRRRRRRRLLLLRLLLLLLRLLRRLRLRRRLLRLLRRLRRRRRRLRLRLRLRLLRLLRLRRRLLRLLRLLLRRRRRRRLRLLLRLLRRLLLRRRRLLRRRLLLLRRRRRLLLRLRLRRRLLLRRLLLRRRRLLRRLRRLRRLLRLRLRLRRRRRRRLLRLRRLRLRLLRLLRLRRLLRRLRLLLLLRLRLLLLRLRRRRRLLLLLRLRRLLLRRLRRLRRLRRLRLLLRRRRRLRRLLRLRLLLRLLRLLRLLLRRRRLRRRRRRLLLRRRRLLRRRRRLLLRRLRLLLRLLLRRRLRRLRLLLLLRLRLRLRLRRLLLRRLLLLRRRLLLLLLRRRRRLLRLLRLLRLLRLLRRLRLRRRLRRRLLLRRRRLRRLRLLLRRLRRRRRRRRRLRRLLLRLLLRRLRRRRLLRRLLLLRLRLLLLLRLRRLRLRLLRLRRLRRLRRRLRRRRLLRLLLRRLLLLRRLLRRLRLLLLRRRLLLLLRLRRRRLRLLLLLRLRRRLLLRRLLRRLRRRLLLLLLRLLRLRLRRRLLRRLRRLRLLRRRRRRRRRLRRLRLRRRLLRLRLRLRLRLLRLLRRLLLLRRRRRLRRLRRLRLLRLLRRRLRLRRRLLRLRRLLLRRLLRLLLLLLLLLRLRRLLLLRLLRRRRRRLRRRLRRLRRRLRLLLRLRLRLRRLRLRRLLLRLLLLRLRLRRRLLLRRLRLLLRRLRLLLRRRLLLLRRLRLLRRLLLRLRRRLRRLLLRLLRRRLRRRRRLRRLRRRLLRLRLRLRRRRLLLLRRRRLRLLRRRLRLRRRRLLLRRLRLLLRRRLRLRLLRRLRLRRRLLLLLLLRRLLLRRRRRLLLRRLRRLRRLLLRLLRRLLLLLRRLLLLLLLRLRLLRLLLLRRRLRLLLLRLLLLRRLLLLRLLRLRRLRRRLRLRLLRLRRRRRLLLLRLLLRRRLRLRLRLRRLLRRRRRRLLRRLLLLLLRRRRRRLRLRRLLLRLLLRRRLRLLRRRRRRRLRRLLLLLLRRRLLLLLLRLRRRLLLLLRRRRRRRLLLRRLLLRRLLLRLLLLLLRLLLLRLLRRLRLRLRLLRRRLLLRRRLRRRRLRLRRLLLLLRRLRLLRRLRLLRRRRRLLLRLLLRLLLRRLRRLLRLLRRLRRRRRLRRLLLLRLRLLRRLLRRRRLLRRRRLLLRLRRLLRLLLLLLRLLRRRRRRLLRLRRRRRLRLLRRRRRRLRLLLLRLRRRLLRLLLLRRLLLLRLRLLLLLLRRLRRLLRRRRLRLLRRRRLLRRLLRLLLRRRLLRLRLRRLRLRLRLLRLLLLRRRLLRLLRLLRLLRLLLRRRLRLLLLRLLLRRLLLRLRLRRLLLLRLLLRRRLLLLRRLLRLLLLLLRLRRRRRRRRRRRRRLLRLRLLRLLLRLLRRLRRLLRLLLRRLLRLRRLLRLLLLRRRRRRRLRRLRRRLRLRLLRLLRRRRRRRRLLLLLRLLRLRRLLLRRLLLRLLLRLRRRLLLRRRRLRRLLRLRLLLRLLRLLRRRRRRRLRRLLRLRRRLRLLRLRRRRLLRRLRRLRLRRLRLRRLLRRLLRRRRLLRLLRRRRRRRRLLLRRLLLRLLRRLLRLLLLLRLLRRRLRLRLLLRRRLLLLLLRLLRLRLRLLRLRRLRRRLRLRLRLLRLRRRRLRRRLLLRRRLRRRLLLRRLRRLRLRLLLRLRRLLRLLRRRRRLRRRLRLRLLLRRRLRRRLLRRRLRRLRLRRRLRRRRRRRRLRRRLRLLLLLLLLLRRLRLLLLRLLRLLRLRRRRLRLLLRRLRLRLLLRRRRRRLLLRLRRRRRLLRRLRLRRRLRLRLRRLLLLRLLLRRRRLLLLLLRRLRLRRRRRRRLLRLLLRRRRRRLLLRRLRRRLRLRRRLRLRLLLRLLLLRRRRRRLRRRLRRRRRLLRRLLRLRLRRRRLRLLRLRLRLRLRLRRLLLRRRLRLLLRRLRLLRRLLLRRRLLRRRLLRRLRRLLRLLRRRLLLRRRRLRRRLLLLRLLLLRLRRRRRRRLLRRRRLLRLRLRRRLLRLLLLRRRRLRLLRLLLLLLLLLRRLLRLLRLLRRLLLLRLRRLLLLRRLRLLRRRLLLRRLLLRRLLLLRLRRRLLLLLRLLLRRRRLLRRLLLLLLLLRLLLRLRRRRRRLRRLRLRLLLLRRRLLRLRLLRRLLRRLLLLLLRLLRLLRLRRRLLRLLRLRRRLLRLLLLRLRRLLRRLRRLLRRRLRRLRLRRRRLRRLRLLLLRLLRLRRLRLRRLLLLRLRLRRLRLLLRRLRRRLLRRRLLRLRLLRRLRRRRLLRLLRLRLLLRLLRLLLLRLLLRRRRRRRRLRRLLRLRRRLLLRRLRLRLLRLRRLRLLRRLLRRLLLRLLLLLRLLLLRLRLLRRLRLRRRLLLRLRLRLRRRRLLRRLRRLRRLLRLLLRLRLLRLLLRLRLRLRLRRRRLRRLRRLRRLLLLRLLLLRLLRLRRRRLLRRRRLLLLRLRRRLLRRRRLLRLRLLLRRLLLRRLLLRRRRLRLRLLLRLRLLLRLRLRLRLLRRLLLLLLRRLLRRLRLLLRRLLLRLRLLRLRLLRLLLRLLRLRLRLLRLRRRRRRRLRRLRRLRLLRLRRRLRRRLLRRRRLLLLRRRLLLLRLLLRRRLRRLLRLRLRLLLLRRRLLRLRRLRRRRRLRLRRLLLRLLLRLLRLLRRRRRRLRLLRRLLLRRLRRRRRRLLRRLLRRLLRLLLRLRRRRLRLRLLLLRLRRLLRLRRLRRRLRRLRLLRLLRRRRRRRRRLLLLLLRLLRRLRRRRLRRLLLRRLLRRLLLRLRLRRRRLRRLLRLLRLLLLLRLLRRLRLLLRRRLLRLLLLRRRLRLLLRRRRRRLLLRLLLRRLRLRRRLRRLRLRRLLLRRLRLRRLLRRLLRRLRRRRRRLLRRRRLLLRLLLRLLRLLLRLLLLLLRLRRLLRRRRLLRLRLRRLRLRLLRLRLRLRLRLLRRRRRRRRLLLLLLLLRRLLLLLRLLLRRRLLLLRLRLLLRLRRLRLRRLRLLRRLRRRRLRLLLRRLRRRRRLRLRLLRLLLRRRLRRLRRLLRRLRLLRLLLLRRRLLLRRLRRLLLLLLRLRRLLRRLRLRRRRLRLLRLLLLRLLRRLRRRLRLRRLRLRRLRRRRLRLLRLLRLRLRRRLRLRRLLRRRRRRLLRRLLRLRRRLLLRRLRRRRRLLRLRRRLLRLLLRRRRLLLLRLLLRRRRLRRRRLRLLLRRLLRLRLRRRRRRRLLRRRRLLRLLRRLLLLRRRLLLRLRLRLRRLLLRLRRLLRLRRLLRRRRRRRRLRLLLRLLLRRRLRLLRLRRLRRLLRLRLRRRLRRRRRRRLLLRRLRRLLRLLLLLLLRLRLLLRLRLLRRLRRLLRLRRLRRLRLLLLLLRLLLRLRRRRRLLRRLLLLLLLLRRRLLLLRLRLLRLRRRLRLRLLLLRRLLRLLRRRLLRLRRLLLLRRLRLRLLRLLLRLRLRLRLRRLRLLRRLRRLRLRLLRLLLLLRRLLRRRLRRRRLRLRLRLLRLLRRRRLLLRRRRLLRLRRLLLLRRRLLRRRLRLRLLLRLLRLRLLLLRLRRLLRLLLRRLLLLRRLRLLRRRLLRLRRLRLRRLRRLRLLLLRLRRRLRLLRLLRRRRRRRRLRRLRLLRRRRRRRRLRRLLLLLLLRRLLRLLRLRLRRLRRRRLRLRLRLLRLRRLRLRLLLLLRRRLLLRLLRRRRRRLRLRRLLRLLLRRLRRLLLRLRLLLLLLLLLLRLRRLRRRLRLRLRRRLRRRRRLLRLLRRRRLRLLLLRLRRRLRLLLLRLRRRRRRRRRRLRRLRRLRLRLLLLRRRLLRLRLLLLLRRLRLRRRLLLRLLRRLRRRRRRRRLRLRLLLRLLRLLLRRLRRLLLLRRLLRRRRLRLRLLLLRLRRLRRRLLLRRLLLLRLRRLLLRRRLLLLRLLRLLLRRRRLLLRRLLLRLRLLLRRLLRLRRRRRRLLLLRRLRLRRLRLRLRRRLRLLRRLRLRLLRLLRRLRRRRRLLRLLLRLRRRRLLRLLRRRLLLRLRRLRLRLLRRLRRRLLLLRLLRRLLLLLRLRLLLLLRLRRLRLLRLLLRRLLRRRRLLRLLRRRRRRRRRRLLRRRLLRRRLRRRLLRLLLRLLRLRLLLRLLLRLRLRLRRLLLRRLRRRLRRLRLRLRRLLLLRRLRLLLRLRRLLLLRLRLRLRLRLLLLLRRLLLRRLRLRLRRRLRLLLRLLRLLLLLRRLLRLLRRLRRLLLLRRLRLLRLRLLLRRRRRLRLRLLRRRLRRRRLRRLLRLRRLLLRLLLLRLRLLRRRRLRRRRLLLLRRRLLRRRLLRRLLLRRRLRLRRLLLLLRRLRLRRLLRRLRLLRLRRLLLLRRRRLRLRRLLRLLLRRRRRRRLLRLRRRRLRRLLRRRLLRRRLLLLRRLRLRLLRLRLLRLLRLRLLLLLLRRLLRRLRLRRRLLLRRRLLLLLLRRLLLLLRLLLLRRRLRLRLLRRRLLRLRLLLLRRRRLRRLRLRLRLRRLRRRLLLLRLRLRLRRLLLRLRLRRLRRLLLRRLRLRLRRRLLLLRLRRRLRLLRLRLLLRRRRLLRLLRRRLLRRRLLLRLLRRRRLLRLLLRRRRLLLRRRLLLLLRLLLLRLLLLLLRLRLRRRRLLLRLRRRLLRLLRRLRLLRLRLLLRRLRRRLLLLLRLLLRLLRLLRRLLLLRLLLLRRLLRRRRRRRLLLLRLLLLLRRLLRLLRRRLLRLLRLRRLLRRLRLRLRLLLLLLLRLRRRRLRLLRLLRLRRRRRLLRRLLLLRLRLLRLRLRRLLRRLRLRLRLRLLLRLRLLLRRLLLLLLRRRRRLLLLLRRRLLRLLLRLRLRLRRLRRRLRRRRRLLRLLRLRLLRRRRRRRLLLRLRLRRLLLLRRLRRRRLLLRLLLLLRLRLLLRRLLLRLRRLRLRRLRLRLRLLRRRLRLRLLLLRRRLLRLLLLLRRRRLRRRLRRLLRRLRRRLRRRLLRRLRRLRRRRLRRRLRRRRRRLRLRRLRRLRRLLLLRLRLLRRRLLLRRRLLLLRLRRLLRRRLLRLLRLLLLLRRRRRRRLLLRLRRRRRLRRLRRLRLLRRLRRRLRLRLRLRLRLRRRLRLRLRRLLRLRRLRRRRRRRRRLLLLRLLLLRRRLRLLRRLRLLLLLRRLRRLLLRLRRRLLLLRRRLRRRRLRLLLRLRRLLRLLLRLLLLRRLRRLLRLRRLRRRLLLRRRRRRRLRLLLLRRLRRRRRLRLRRLRRLLLRLRLLLRRLLRRLLLRLRLLRLRRRRRLLRRLRLRLRRLLLRRLRRRRLRLRRRLLRRLLLLRRLLLRLLLLLRRRLLLRLLLLLRRLRRLLRRLLRLRLLRLLLRRRLLRRLLLLLRRRRRRLRLRLRRRRRRRRRLLLRLRLLRLRRRRLRRLRLLRLLRLRLRRRLRLRRRRLLRRLLLRLLLRRLLLRRLRLRRLRLRRRLRLLLRRRLRRLLRLRRRLLLLRLRRRRLLLLLRLRRLRRRRRRRLRRLRLLLRRLRLRRRLLLRRRRLLLLLLLLLRRLLRRRRLLLLLRLLLLRRRRLRLLRRRLLRLLRLRRLRRLRRLRLLLLRLLRRRRLRLRLRRRLRLRLLRLLLLRRRRLRLRLRLRLLLLRLRLLRLRLLRLRLRLRLRLRLLRRLLLLRRRLLLLLRRLLRRLLRRLRRRLRRRRLLLLRLRLLRLRLLLRLRRRLRRLLLRRRLRLLRLRRRRLRRLLLRLLRLLRRLRLRRRLLRLLLRRLLRRRRRLLLLRRLRLRLLRLLLRRLLRLLRLRRLLLLRLRLRRRLLLRLRRRLRRRRRLLRLRRRRRRLLLLLRRRRRRRRLLLRRRRLLRRRRRLRRRLRLRLRLRRLLLRRLRRRLLRRLLRLLLRRLRLLRLRRRLRLRRLLLLLLRRLRRLLLRRRLRLLRLLLLRLLRRRLLLLRRRRLLLRRRRRRLLRRRRLLRRLRRRRLLRRLLRLLRRLLRLLLRLRRLLLRRLRRRLRLRLRRRLLRLRRRRLRRRRLLLLLRLLRLRRRRLLRRLRLLLLLRRLLLLLRRRLRLRRLRRLRLRLRRLRLRRLLRRLRRRRLLRRLRLLRLLLRLLLRLLLRLLLRRRLLLRRRRLRLLRRRLLRLRLLRRRRRRRRLLLLLRRRRRRRRRLRLRLRLRRRRRLLRRLRRRRRRLRLRLRRRRLRRLRRRRLRRLRLRLRLLRLLLRRRLLRLRLLRLRLRLLRLRRRLRRRRLLLRRLLRRLRRRLRLLRRLRRLLRLLLRLRLRLRLRRRRRRRRLRLRRLLRLLLRRLRRLRRRLRLLLRRRRRLRRRRLLRRLLLLRLLRLRLRRLRRRLRRLRLLLRRRRRLLRRRLRLRRRLLLLRRRLLLLLRLRRRRLRLRLLRRRLRLRRRRLRRRRLLRLRLLRLLRLLLLLLLLRLRLLLLLLRLLRLLLLRLRRRLLRLLRRRLRRRRRLLLRLRLLLRRRLLLRLRRLRRRRLRLRRLLRRLRLLLLLRRLLLRRRRRRRRRRRRRLLRRRRLRLRLLRLRRRRRLLLRLLLRRRRLRLLLRLLLLRLLLLLLRRRLLRLLRLLRRLRRLRRLLRLLLRRRRLRRLLRRRLRLRRLRLRLRRLRRRRRLRRRLLRRRLLLRRRRLRRRRLRLRRLLLRLRRRRLRLLLLLRLRLLRLLRRLLRLRLRLRRRRRRLRLRRRRLLRLLRLLLRLLRLRLLRRLRRRLRLLRLRLLRRRRLRLLRRLRRLRRLRRRRLLRRLRLLLLRLLLRRRRLRLLLLRLRLLRRRLRRLLRRLRLRLLRLRRRRRRRLLLLRRRRRRRRLLRLRRLLLLRLRLRRLLLRLLRLLRLLLLRLLLLLRRLLRRLRLRLRLRLLLRLRRLRLLLRLRRLRLRRLRRLLLRRLLRLRRLRLLLRRRRRRLLRLRRRLRRRLRLLLRRRRLRLRRRRRLLLLRRLRLRLLRLLRLLRRRLLRLRLLRLRLLLRLRLLRRLLRLLRLLRRRLRRLRLRLLRRLLRLLRLLLRLLRLLLLRRRRRLLLRLLRRLRLLLLRLLLRRRLRLLRRLRLRLRLRLRLRRRRRRRLRRLLLLRLRRLRRLRLRRRLRLRRRLLRRLRRRLLLLRRRRRRRRLRLRLRLRLRRLLLRRLRLRRRRLLRRLLLRRLLLLLRRRLLRRRRRRRLLRLLRLRLLLRLLLRLRLLRRLLLLLLRRLLRLLLLRRRLLRLRRLRRLLLRLLLLLRLLRRRLLLRRRLRRLLRLRLRRRRRLRRLLRLLRLRRLRLRLLRRLLLLRRLLRRLLRRRRLRLLRLRLLLRLRRRLLLRRRRRLLLLRRLLLRRRLRLLLRLRLLRRRLRRRRLRRLLLLRRLLLRRRRRRRRLLLLLRRRRLRRRRLLLRLRRLRLRRRRLRRRLRLLLLRRLRLRLLRLLRRRRRLLLLRLLLLRRRLRLRLRLLRLRRLLLRLRRRLRRRLRRRLRLLRRLLLLRRLLRLLRLRLRRLRLLLLLRRRLLLRLRRLLLLLLRRLRLLLLLLRLLRRRLRLLLRRRLLRRRLRLLLRLLRLLLRLLRLRRRLRLLRRLLRRLLLLLLRLLRRLLRRRRRRRLLRLLRRRLLRRLRLRLLLLRLRLRRLRRRRLLLLLRRRRRRRRRLLRLRRRRRLLRLRRRLRRRRRLLLRLRLLRRRRLLRLLRLRRRRRLLLRLRRRRLLRRLLLRRLRRRRRRLRRLLLLLLRLLLLRLRRLRRRRLLLRLRRLRLLLRRLLLRLRLLRLLLLLLRLRLLLLRLLLLRRRRLLRRRLLRLRRRRRRLRLLLLRLRRRRLRLLLLLLLRRLRLRLLRRLLLLLRLRRRLLLRRRLRRRRRRRRRLLRLLRRRLRLRLRLLRRLRRRRLRRRRRLRRLRLRRRLRRRRRRRLRLRLRLLLLRRLRRLLLRRLLRRLLRRLLLLLRRRRLRRRLRRLLLRLRLRRRRRRRRRLLRLLRRRLRRRRLLRLLLLRRLRLRLRLRLRRRLLLRRRLRRLLRRLRRRLLRRRLRRRLLRLLRRLRLLLLRRRRRRRRRRLRRLLLRRRRRLLLLRLLLRRRLLRRLLLLRRRRLRRLRRRLLLLRLRRLLLRLRRLLLRRRRRRLLLRRRLLRLRRRRLRLRLRLLLRRRLRLLLRRLLLRLRLLLRLLRLLLLLRLLRLLLRRRRLLLRRRLLRRLLRRRLRRLLRLLLRLRLLRRRLRRLLRLRLRRLLRLLRLLRLRRRRRLRRLLLLRRRRLRLLLRRLRLRRLRRRRRRLLLLLRRLLRRLLLLRLLRRRLLLRLRRRRRLLRLRLLRRLRRLLRRRRLLRRRLRLLRLLLRLRRLLLLRLLLRRRRLRRRRLLRRLLRLRLLRLRLLRLRLLLRRLLLLLLRRRRLLRRRRRRRRRLRRLRLRLLRRLLRRLRLLRRLLRLRLRRRLRRRLRRLRRRRRLRLRRRRRLRRLRRRLRLRRLLLRLRRRRLRLLRRLRLRRLRRRLRLLLRRLRLLRLLLRRRLLLRRLLLLRRRLRLRLRLRRLLLLLRLLRRLLRRRRLLLLLLRLRLRRLRRRRRLRLRRLRRRLRRLRLLLRLRRRLLRRRRRRLRLRRLLRRRLLRLLRLRRRLRLLRLLLLRLRLRRLRRRLRRRLRLRRLRRLLLRLLRLRLRLLLRRLLRRLRRLLLRLRLLRRRRLRLLLLRLRRRLRLLRRLRRRLRLRRRLRLRLRRLRRRRRRRRRRRLLLRRLRLRLRRLLLLRRLRRRLRLRLLLLRRLRRLRLRLRRRRLLRRLRLRRRRRRLRRLLRLLRLRLRLRRLRRRLRRRRLRRRLLRRLLLRRRRRRLLRRLRLRLRLRLRRRLLRLLLLRLRLLRRRRRRRRRRRRRRRLLRLLLRRRRRRLLRLRRRRLLLLRRRRRRLLRLLRRRLLRLLRRRLRRRRLLRLRRRRLRLLRRLRRRLRRLRLRLLLRLLRLRLRRLLLLLLLRRRRRLRLRRRRRLLRLRRLLRLLRRLLRLLRLLLRLLLRRRLLRLRLLLLRRRLRRRRRLLLLLRLLLLRLRRLLRRRRLLRLRLLLLRLLRLLRLRRLRLRLRLRRRRLRLRRLLRRLLRLRLLLRLLLRLRRLLRLLRRLRLLRLLLLRRRLRLLRRLLLLLRLRRLRRLRLRRRRLRLLLRLLRRRRLRRLLLRLRRRLRLRRLRRLLRLLRRRRLRLRRLLLRRLRLRRLLRLLLRRRLRRLRRRRRRRLLLRRRRRRRLRLRLLRLRRLLRRRRRLLRLRRLRLLRRLLLLRRLRLRRLRRRRRRRRLRRRLRRRRRLLRRRLLLLRRRLLRRRRRRRRRRLLLRRRLLRRRLLRLRLRLRRLLLRRLRLRRLLLLRRRRLLLRLRLLLRRRRRLRRLRLRLLRLRRLLLLLRRLRRRRRRLLLRRLLLLLLLRRRRLRRLLLLRLLRRRRLRRRRLLRRLLRLLRRRLRRRLLLRRLRRLRLRRRRRLRRRLRRRLLLRLRRRLRLLLLRRLLRRRRLRLLLRLLLRRRRLRRLLLRRRRRRRRRRLRLRLRRLRRRLLRRLLRRRRLRLRLRLRRLRRRLLLLLRLLRRRRLRRRLLRLLRLRLLLLRRLLRLLLLLLRRRLRLLRLLRRRLRRLLLRRRRRLLRRLRLRLLRLRLRLLLLRLLRLLRLRRLLRRRRLLLRLLLRLRLRLRRRLLRRRRLLRLLRRRRRLRLLRRRRLRLRLRLRLRLRRRLRLLLLRRRRLLRLLRLRRLRLLRLLLLLRRRRLRLLRRRRRRLRLRRRRLRLLLLLRLLRLRRLRLRLLRLLRLLRRLRRRLLLLRLRLRRLLLLRLRRRLRRRRRLRRRLRLRLLLRLRRRRRRRLLLLLLLLRRRLRLRLLRLRLRLLRLLRRRRLLRLLLRRLLRRRRLLLLRLLRLRLLLLRRRLRRRLLRLRRLLRLRRLRRRLLLLLRRRLRRRLLLRRLRLLLLRLRRLLRLLRLRLRLRLRRLRRRRLLRRRLLRRRRRLLLLLLRRLRRLLLRRRRRRLRLRRLRRLRLRRLRRLRRLLRLRRRRRRLLRLRLLLLLRRRLLRRRRRLRLLLLRLRRLRRLRLRLRLLLLLLRLRRLLLRRLLRLRLLLRLLLRLRRLRRRLLLRRRLLRLLRLRRLLLLLRLRLRRLLRRRLRRLLRRLLLRRLLRRLRLRLRRRRRRRLRLRRLLLRLRRLRRLRLLLLRRLLRLRRLRRLRLLLLRLLRLLRRRLLRRLRLRLRLLRRLLRRLLLRRRRLLRRRLRLRLRRRLLLRLLRLLLLRLRLRLRRLRLRLRRRLLRLLLRLRRLRLLRLRLRRLRLRRLLRRLLRLRLRLRLLLLRLLRRLRRRLLLRLLRRLRRRRRLRLRLRRRRRRRLLLRLRRLRLLLRLRLRLRRLRRRRRLRRLRLRLLLRRRLLLLLLRRRRLRRRRLLLRRLLLRLLLRLLLLRLLLLRLLRLLRLRLLRRLRRRRLLLLLLLLRLLLLRRRRRRLLLLLRLRLLLLLLRRRLLLLLRRRRLLRRLRLRLRRRRLLLRRLRRRRLLRLLLRRRRRLLLRLLLRLLRRRLRRRLLLRRRLRLRLLLLLRRLLLRLRRRRRLRLRRLRRLLLRLLRRLLRRRRLRRLLRLRLLRRRLRLRRRRRLRRLLRLLRRLLLLRLLRLLLLLLLRLRRLLRLLRRLLRLRRRLRLRLLLLRRRLLLRLRLRRRRRRLLRLLLRRRRLRLRRLRRRRLRRRRRRLLLLRRLRRRLRRRLRRLRLLLRLRLRLLLRLRLRRLLLLRLLLRRRRLLRLRLRLRRLLRRRRLRLRRLRLLLRLRLRLLLLRLLRLRLLRRRRRRLLRLRRLRLRRRLRLRRRLLRLRLLLRRLLLRLRLLLRRRLLRRRRLRRLLLRRRLRRLRLLLRLLRLRLRRRLRLRRRLRLLLLLRRLRRLRLLRLRLRLRLRRLRRLLLRLRRRLLLRRRLLRRRRRRLLLRLLRLLRLLLRLLRRRLRLRRRRRRRLRLRLRLRLRRRRRRRLRRRLLRLRRRRRRLRRLRRRRLRLLLLRRRLLLLLLLRLRLRLRRLRLRRRRLLLLLLRRLRLLLRRRRLRRRRLRRRRRLLLRRRRRLLLLLRLLRRRLLRLLLLLLRRLRRLLLLRLLLRRLRRRRRLLLRRRRLLRRLLLRRRRRLRRLLRRRRLRLRRRLLLLRRRLRRRLLRLLLLLRLLLLRLRLLRLLLRRRRRLRRLRRRLRLLRLRLLRRLLLLRLLLLRRRRRLLRLRRLLLLRRRLLRLLRLLLLLRLRLLLLLLRRRRLRRLRLLLRLRLRLRLLRLRRLRRLLRRLRRRLRRRRRRRLRRRLRRRLLLRLLRLLRRLRLRLRRLLLRRLLLLRLRLLLRRLRLRLLLLLRRLLRRRLLRRLRRRRLLRRLRRLRLRRRLLRLRRRRRRLLLRLLLRLLRRRLLLRRLRLRLLLLRRRRRLRLLLRLRRRLLLRLRRRLLRLRRRLLRLRLLLLRRRLRLRLRRLRRRRRRRLLRLRRRRRLLLLRRLLRLLRLLRRRLLRRLLRLRRLLLLRLLRRRLLLRLRLRLRRLLLLLLLLLRRLRRLLRLRRLLRLRLRLLRRRRRRLLLRLRRLRRLLRRLLLLRRLLLLRLLRLRRRRLLLRRLRRLRLRRLRRLLLRRRLRLLLRRRLLLRLLRRRRRLLLLRRLRRLLLLLRLRRLRLLRLRRLLLRRRRRRLRRRRRRLRRLRLLRLRLLRLRLLLRLLRRRRRLRLRLLRLRLRRRLRLRRLLLLRLLRLRLLLRLRLLLRLLLLLLRLRRLLRLLRRRLRLLLLRRLLRRLLLLRLLLLRRRRLLLLRLLLRLLLLLRLLLRRLLRLRLLLRLRRRLRLRRLRLLRLLLRLRRRLLLLRLLLRRLLLRLRLLRLLLLRRLLRLLRLLRLRRLRLLRLLLRLRLLRRLLRRRRLRLLLLRLLLLLLRRLRRLLRLRRRRRLRLRLRRLLLRRLRLRLLLLRRLRLLLRLLLLRLRRRLLRLLRRRRRRRLRLLRRLRLLLLRRRLLRLRLRLRLLRLLRLLLLRRLRLRLRRRRLLRLLLLLLRRLLLLRRLRLLRLRLLLRLLLRRRLRRLLRLLRRLRRRRLRLRRLRRLLLLRRRRRLLLLLLRLRRLLLLRLRRRLLLRLRLRRRRRRLLRRLRLRRRRLLRLLLLLLLLLRLRRRLRLRLLLRLRLRLRRLRRRLLLRLLRLLRLLLRRRLLRRRLRLRRRLLLLRLLRRRRRLLLRLRRLRLLRRRLLRRLRRRLLRRRRLLRLLLLRLLRRRRRRLRRRLLLLLRLLLLLRRRLRLRLRLLLRLRLLLLRRLLRRLLRLLLLLRLRRLRRLLLLRLRLRLLRRLRRLRRLRLRRRLRRRRLLRLLLLLRLLRLRLLLRLRRLLLRRRLRRLRRRLLLLRLRRLRLLRLRRLLLLRRLRLRRRLRRRLLLRRLLRLLRLRLLLRRRRLLLLLLLRLRLLRLLRRRRRRLRRLLLLRLLRLRLRRLRLLRLRLRRRRRRLLLLRLLRRRRRRRRLLRRLRRLRLLLRRRLRLRLLRLLLLLRRRRRRRLLRRLRLRLRLLLLRRRRLLLLRRLRRLLLRRLLLLRRRRLRLLLLRLLLRLRRLLLLLLLRRRLLLLRRLLLLLLLLRLRLRRRRRLLRLLLRRLLLLLLLRRLLRLRLLLRRRLLRRRLRRRRRLLRLLRLLRLLRLRRLLLRLLLRRLLRLRRLLRLLLLLRLLLRRRLRLRLRRRLRRLRLLLRLLLRLLLRLLLLRRRLRRRLRRLRRRRRLRRRLRLRRRRLLLLRLLRRRLLLLLLLLRRRRLLLRLRRLLRRLRRLLRLRLLLLRLLLRRLLRRLLLLLLRRLLRRLLRRLRLRRLRRLLLLRLLRRRRRRRRRLLRLLLRLLRRRRRLRLRLRLLLLLLRRRLLLRRLLLLRRRLLLRLRRRRLLRLLRLRRRRRLRLRRRRLRRRRRLLRLRLRRRRRLRRLLLRRLRLLRRLLRRRRLLLLRLLRRRLRRLRRLRRRRLRLRLLRLLLLLRLLLRRLLLRLLLLRLLRLRRLRRRRLRRLLLLRLRRRLRLRRRRLLRRLRLLRLRLRLRRLRRLRRLRLRRLLLLLLRLLLRLLRRRLRRRRLRRLRRLRRRLLLLLRRLLRLLLRRRLRLRLRLRLRLLRLLRRLLLRLLLRRRLRRRRLRLLRLLRRLLLRLLLRLRRRLRLRLLLRLRLRRRLRRRRRRLLLRRLRLLLLLRRLLRLLLLLLRRLLRLRRLLLLRRLRRRLLRLLLRLLRLLRLLLLLRRRRRLLLLLRRRLLLRRLRLLLLRLLRLRLLRLRLRRLLRLLRRRRRLRRRRLRRLLRRRLRLLLLRRLLLLRLLLRRLLRRLRLRLLRLRLRLLRLLRLRLLLRLLRLLRLRRRRLLLRLLRRLLRRRLRRLLRRLLRLLLLRRLLRRRRLRLLLRLRLRRRRLRRLRRRRLLLLRLLLRRLLLRLLLRLLLLLLRRLLRLRLRRRRLRRLRLRLLRLRRLRRLRRRLRLLRRRRRRLRRLLLRRRRLRRRRRLLRRRRLLLLLRLRRRRRRLLLLRRLLRRRRRLLLLLRRLRRRLRRRLLLLLRLLRLLRLRLLLRLRLRRRLRRRLLRRLRLLLLRLRLLRLRRRRRLLLLRLLRLLLRLLLRRRLRLRRLLRLRRRLRLRLRRRLLLLLRLLRLLLLLLLLRRLLLLLLLLLRRRRLLLRRRRLRRRRLLLLLRRLRRRRRLLLLRLRLLLRLLRLLLLLRLLRLLLRRLRLLRLLLRRLLLRRLRRRLRLLLLRRRLRLRRRLLRLLRLLLRLLLLLLLLRLRLRLLLLRLLRRLLLLLLRRRLRLLRLRRLLLLLRLLRLLLRRRRLLLLRLRLLRLRLLLRLRRLRLLLLRLRLLLLLLLLRRLLLLLRLRLLLRLRRRRLLLLRLLLLRRLLRRRLLLLRRLLLLLRRLRRLRRLLLRLRRLLRLLLLRLLRLLRLLLLLLRRLRLRRLLLRLRLRRLRLLLLLRLRRLRLLLLLLRLLRRLRLRLRLRRRRRRRRLLRRRLRLLLLLLLRLLLLLRLRRRLLLRLRRRRLRLLRLLLRRLLLLLRRLRRLRLRRLLRLRLRLRRRRRRLRLLLLRRLRLRRRLLLRRLRRRRRLRRRRLRLRLLRRLRLRLLLRLLLRRRRRLRRRRLRRLLRRRLLLRRLLLLRRLLLLLRRRRLRLLLLLRLRLLRRLRLLRLLRRRLRLLLRRRLRRRRLRRRRRLLRRLLRLRLLRLRRRRRLLLLLLLLLRRLLRLRRRLRLRLRLLRRRRLRRLLLRLRLRRRRLLRLLLLLRRRLLLLLLRLRLRRLLRRLLRRLRRLLRLRRRLRLLLLLLLRRRRLLLLLRRRRLRLLRLLLLLRLLRLRRLLLLLRLLRRLLLLLRRRLLRLRRLRLLRLRRLLRLLRRLRLLRLLRRLRRLLLRLLRRRLRRRRRRLLLRLLLLLLRLLLRLLLRRRRRRLRRRLRLRLLRLLRLLLLLLLRLLRLLRRRRRLLRLLLRLRRLLLRRLRLRRLLLLLRRRRRRRLRRRRRRRRLRLLLRLLRLRLRRLRLRLRLLRRLLLRLRRRRLRRLLLLRLRRRRLRRRRLRLRLRLLLRLLLLRRLLRRRLRRRRLLLLLLLLLLLRLLLRLLLRRLLLLRLLLRRRRLLLLRRLLLRLLRRLRLLRLRLLLLLLLLLLRLRLLRLRRLRLLRLLLLLRLRLRRRRLLLRRRLLRLRLLLLLLLLLLRLRLLRRLRRLRRLRLRRRLRRLRRRRLLLRLRRRLRLRLRRRRRLLRRRRLLLRLLLRLLLRLRRLRRRRLRLLRRLRLLLLLRRLLLRRLRRRRRLRLLLLLRLRLLLLRLRLLLLLRLLRLLRRLRRLLLLRRRLRLLLLLLLRRLLLLRRRRRRRLLRRRRRLRLLRLRRRRLRRRLRRRRRRLRLLLLLRLRLRLRLLRRRRRLRRLLRRRRRRLRLRLLLRLRLRRLLRRLRLLRLRRLLLRLRLRLLLRLRRLLLLRRRLRRLLLRRLLLRRLLRRLLLLLRRLLRRLLRRRLRRLLLLLRLRLRRRRLLRRLRRLRRLLRLLLLRLLRRLRRLLRLRRRRRRRRLRRRLRLRLRRLLLRLRLLRLLLRLLRLRLLRLLLRLRLLLLRRRRRLLLLLRRRLLRLRLRRRRRRLLLRRLLRLRLRRLRRRRRRLRLLRLRLLRLLRRRRLLLRLLRRLLLLRLLRRLRLRLLLLLRLRRLRLRLLRLLRLRRLRRRLLRLLLRLRLLLRRRLLRRLRRLLRRLRRRLRRRLLRLLLRRLLRRLRRRLRLLRRLRLLRRRLLRRLLLRLLRLRRLLLLRLRLLLLLLRRLLRLLRLLRRRLLRRLLLRRLLLRLRRRLRLLLRRLLLRRLLRLRRRRLLRRRRLLLLRRRLLLLRLLLLRLLLRLRLLRLRRLRLRLLRLRRLRLLRLRRLRRLRLRRLRRRLLLLLRRRRLRRRLRLRLRLRRLLRRLLRLLRLLLLLRRRRLRLLRRLLRLRLLRLLLLLRLRLRRLRRLRRLLRLRLLLLLLLLLLRRLRLRLRRLRRRLLLLLLRLRRLRRRLLLLLLRRLRRLLRLRRRLLRRRRLRRLLLRLRLRRRLRRLRRRLRRRRLRLLLRRLRRRLRLRRLLRLLRRRRLLLRLRLLRRRLLLRLRLRLLRRRRLRRRLLLLRLRLRRRRRLLLLRRRRLLLLLLLLRRRLLRRRLLLRRLRRLLLRLLRRLLLRLLLRRRLRRLRRRLRLRLRRRRLLRLRLRLLLRLRRRLRLLLRRRRRLRLRLLRLLRLLRLLLRRRRLLLRLRLLLRRLRRLRLRLLRRRLRLLRLLRLRRRRLRLRLLRRLLRLLLRLLLLRLRRLLRRLRLLRRLLLLLRLRRLLRRRRLLLRLRLRRLRRLLLRRLLRRRRRLRRLRRLRLLRRRLRRRLLLLLRLLRRLLLLLRLRRRRLLLRRRLRLLRRLRLRLLRLRLLRRLLLLRLRLRRLLRLRRRRLLLRRRLLLRRLRLRLLLLLRLLRRRRRLLLRLRLLRRRRLLLRLLRRRLRLRLRRLRRRLLRLLRLRLRLLRLRRLRRLLLRLLLLLRLRRRRLRLRRLLLRLLLLLRRRLLRLLLLLLLLLLLLRRRRLLRRRLRLLRLLRLRLRLRRLLRLRRRRLLLLRLLLLLLRRLLLLRRRLRLLLLRLRRRLRLRRLLLRRRRLLLRRLLRLLLLLLRRLLRRLLRRRLRLRLLLLRLRLLRLRRLLRLRLRRRLLRLRLLLRLLLRRRRLLLLLRLRLRRLLRLLLRLLRLLLLRRLLRLLLRRLRLLLRLLRLRRLRRLRLRLLLRRLLRLLLRRRRLLLRLLLRLRLRLRRRRRLRLRRRRLRRLLLRRRLLLLRLRLLRLLLLRLRLLLLRRRLLRLRRRRLLRRLRLLLRRRRLRLRRRRLRRLRLRLLRRRLRRLLLLRRRRLRRLRRRLLRRLLRLRRRRRLLLRRRRRLLLLRLLRLRLLRLRRRRLLRRLRRRLLLRRLRLRLLLLLLLLRLLRLRRLRLLRRLRRLLRRLLLLLLLRRLRLLRLRRLRLLLRLRLRLLRRRRRLRRLRLRLRRRRLLLLRRRRRRLRRRLLRRLLRRRLRLRLLRRRLRLLRLRRLRLLLLLLRRLLRLLLLLLLRRRLLLLLRRRLLLRLLLRLRRLLRLLLLRRRRLLRRLLRLRLLLLLLLLLRRLLLRLLRRRLLLLLLLRLLRRLRRLLRLRRRLRRLRRRRLLLRRLLRRLRLLRRRLLLRLLRLLRRLRRRRRLRLLRRRRLRRRRLLLLLRRLLRRRRRRLLRRLRLRRLLRLLLRRRRLLRRLRLLRLRRRRLLLRLRLRLLLLLRLRLRRLLLLRLRLRLRLRRLRRRRLLLRLRLRLLRLLLLRLLRRRLLRLLRLRRRLLRRRLRLRRRLLLLRLLRLRLRLLLLLLLRRLRRRRRLLLLLRLRLLRLRRRLRLLRRLRLRLLRRRLLLRLLLLRRLRLLRLRRLLRRLLLLRLLLRRLLRLRRRLRRRLLLRLRLRLLRLLLRLRRLLRLRLLLLRLRRRRLRLLRRRRLLRRRRRRRRRLLRRLLLLRRLRLLRLLLRRRLLLLLLRLRLRRLRRLLRRRRLRLRRRRLLRLLLRRLRRRLRLLLLRLLLLLLLRRRLRLRRLLRLRRLLRRRLLLRRRLRRLLLLRRRLLRLLRLLLLLLLLRRLRLLLLLRRLRLRLLRLLRLRRRRLRRRLLLRLLLLLLRLLLRRRLLRLRLLRRLLLRLLLRLLRRRLRLLRLRLLLLLRLRRLLLRRRLLRRLLLRRRRLLRLRLLRLLRLRLRRRLLLRRLRRRRLLLRLLLRRLLRRRRLLRLRRLLLRRLRLRRLLRRRLLRLLLLRLRRRRLRLLLRRLRRLLLLRLLLLRLRRLRLRLLLRRRLLLLRLLLRRRRRLLLLLLRRRLRRLRLRRRLLRLLRLLRLRLLLLRRRRRLRLLRRLLRLLRLLLLLRLRLLRLRRLLLLLRRRRRLLRRRLRLRRRRLRRRLRRRLRLLRLLLRLLLLRLRRLRLRRRRRRLLRLRLRLRRRLLLLRLRLLRRLLRLLLRRLLLRRRRRLRLRRLRLRRLRLLRLRLRRLLRRLLLLLRLLLRRRLRLRLLLLRRRLRLLRLLRRRLRRLRRRLRRLRRRLRRLRRRRRLLRLLRRRRLRRRLLLLLRLRLLLLLRLLLLLRLLRRRLRLRRLRRRLLLRRLRRLLLRRRRRRRLLLRLRLLLLLLLLRRRRRLRRLLRRLLRRRRLRLRLRLLLRLRRLLRRLLRRRRRLRRRRRLLLRLRLRLLRLRLRLLRLRRRLRRRRRRLRRRRRLRLLLRLRRLRRRLRLRLLLRRRLRLRRRLLLLLLRRLRLLLRLLLRLRLRLLRLLLLRRLRRLRRLRLLLLRLLLLRLRRLLRRLRRLRRLLRRLRLRRRRRLLRRLRLLLRLLLRLRLRRLRLRLRRLLRLLLRRLRRLRLRRRLRLRRLLRRRRRLRRLLLRRLRRRRRRRRRRRRLLRRRRLLRRRRRLLLRLRLLRRRLLLLRRLRRLRRRLLRRLRLRLRLRLRLLRLLRRRRRRRRLRLRRRRRRLRRRLRLRRLLRRRLRLLLRLRRLLLRRLLLLRLRLLLLLLRRLLRRRRRRLRLLRRRLLRRLRRLRLLLRRRRLRLLLLLLLLRRLLRRLRRRLRLRRLRLRLRLRRLLRLLRRRRRRRLLRLLLLLRLLLLRRRLLLLRRLLRRLLRLLLRLLRRRLRRRRLRLLLRRLLLRLLLLLLLLLLLRLRLRRRLRRLLRLLLLLLLLLLRRLRRLRLLRLRLRLLRRLRRRLRRLLLRLLRLLRRLLLLRLRRLRLRRRLLLRLLLRRRLRRLRRRLLLLRLRRLRLRLRRLLRLRLRLLLRRRLRLLRLLRRLLLLRRLLRLRLLLLRRRLLRLRLLRLLLRRLRRLRRRRRRLLRLRLLRRLLRLRLLLLLLRLRLRRRRLRRRLRRLLLRRLLLLRRLRLRRLLLRLLRRRRRRRLRLRRRLRRRRLLLLRRLLLLRLLRLLLLLLRLRLRLRRRLRRRRRLRLRRRRRRLRLRLRRLRRRRRRLLLRLRLRRRLRLLRLLRLRRRRLLRLRLRRLLLRLLLLLRRRLRRLLLLRRRRLLLLRRLLRRLLLLLRRRRLLLRLLRLLRRLLLRLRLLRLRRRLLLRLRLLLRRRRRRRLLLRRRLRLLRLRRRLRLRLRRRRLRLLLLRLRRRLRRLLRRLLLLRLRLLRRRLRRLLRRLRRLLRRLRRRLRLLRRLRRLLLRRRLRRLLRLRRLLLLRLRRRRRLLLRLLRRLLLLLLLLRRLRRLRRRLLRRLLRLRLLLLRLLRLRLRRLLRLLLLRLLRRLRLRLLRLLLRLLRLLLRLRRRRLRLRLRLLLLRRLLRLRRLRRLLLRLLRLLLLLLRRLRRLLLRLRLLLRLRRRRLRLRRLLLRLRRLRLLLRLLRLLRLRLRRRRRLLRRRLLRLRLLRLRRLLLRRRRLLLRRRRRLLLRRRRLLRLLLRLLLRLLLLLRRRLRRRRLRLLLLLRRRRRLLRLRLRRLLLLRRLRRLLLRRLRLLRRLRRLLRRRRRLLRRRRRLLRRRLLLLRLLLRLLRRRRLLRLLRRLLRLLLRRLLRRRRLRLRRLLRRLRLRLRRLLLLRLRLRLRRRLRLRRLLLLLRRLLLRLRLRRLRLLRRLLLLLLRLLLRRLRRLRRLLLLRRRRRRRLLLLLRRRLLRRLLLLLLRLLLLRRLLLRLRLRRLLLLLLRRLRLLRRLRLRLRLLLLLLRLRLLLLLRRLLLLLLRRRRLRRRLLLLLLRRRLLLLLRLRLRLRRLRRRRRLRLLRRLRLRLRLRRRLLLLRRLRLLRRLRLRLLRLRRLLLRRLLRRRRRLRRLRRRRRLLLRRLRLRLRLLRLLRRLRRLLLLRRLLLLRRLRRLLRRRRRRRLRLRLRLLRLRLRRLRRLLLRRLRRLRRRRRRRLLLRLLRLLLLLLRLLRRLLRRRRLLRRRLLRLLRRRLLRRRRLRLRRRRLRLLRRLLRRRLRRRLRRLRRRRRRRLRRRLLRRLRLLRRLRLLRRRRLRLLLLLLLRRLLLLRLLLLLLLLRRLLLRRLRLLRRRLLRLRLRLRRRRLLLRRRLRRRLLRRRRLLRLRLRLLLRLLLRLRLLRRLRRRLRLRRLRLRLLRLLLRLLRLRRRLRRLRRRRRRLRRRLRLRRLLRLRRLLLLRLLLLRLRLLLLLLRLRLLRLRLRRLRLLRLLRRRLRRLLRRLLLRLRLRRRLRRLRRRLRRRLRRLLRRRLLLRLLLRRRLRLRRRLRLRLRLLLLLRRRLLLRLRLRLLRRLLLLLLRRLRRRRRLRRLRRLLRLLRLRRRLLLLRLRRRRLRRRLLRRLLRRLRLLRLRRRLRLRRLLRLRLRRLRLRRLLLLLRRRLRLRRLLLLRLRRRRRRLLRRRLLLLLLRLRRRLLLLLRRLRLLLLRLRRRRLLLRLLRRRRRLRLRLLLRRLRLLLRRRLRRRLRRRLRRLRLRLLLLLLLRRLLLLLLLLLRLLLRRLRLLLLRLLLRLLLRRRRRRLRRRLRRLRLLLRRRLRLLLLRRLLRLLLLRRRLLRLLRLRLLLRLLRLLLRLLLLRRRLRLLLRRLLRRRRRLLLLRRRRRRLLLRRLRLLLRLRRRRRRRRLLRLLRLLRLRLLRRRRRLRRRRRRRRRLRRRRRLRRRLRRRLRRLLRRLRRLRLRRLLLRLLLLRLLRRLLLRLLLLLRLLLRLLLRRLLLLRLRLLLRLRRLLRLRLRRRRLRRRRLRRLRRRRRRLRRRRLRRLLLRLRRRLLLLLLLRRLRRLRLRRLRLRLLLLLRLLRLRRRRRLLLLLRLLLLRRRRRLLRRLRRRRLRLLLRRLLLLRRRLRLLLLRRLLLLLRRRRLRRLRRLLLLRLLRLLRRRRLLRRLLRLLLLLRRRRRLRLLLRRRRRLLLRLRLLLLLLRLLLLLRLLRLRRRRRRRLRRRRLLLRRRLLRLRLRRRRRLLRLRRLLLRRLRRLLLLLRRLLLRLLRRRLRRRRLRLRRLRRRRLRRLLLRLLLLLRRLRLRLLRRRLRLLRLRRRRLRRLRLLLRLLRLLRLRRRLRLRLLLRRLRRRLRLRRLLLLRRRLLLLLRRRLRLRLLRLRRLRRRLLLRRRLRRLLLLRLRLRLLLRRLLLLRRLRLLLRRLRRRRLRRRRRRRLRLRRRRRLRRRLLRLLLRRLRLLRLRLRRRLRLLRLLLLRLLRLLRRRRRLRLLLRLRLLLRLLLLLRLRRRLRLRRRRRLLLRRRLLRLRRRLLLRRLRRRRLRRRRRRRLLLLRRLRLLLLRLRRLLLRRRRLLLRRRLRRRRLLLLRRLRLRRRLRRRRLLLRLLRLRLLRLRRRLRRLRRLRLLLLLRRLRLLLLLRLRLLRRLLRRRRRLLRLRRLRRLLLRLLLLRLLLRRLLRLLLRLLRLRRLLLRLLRLRRLRRLLRLLLLRRRRLLLLRRRLRLLRRLLRRLRRLRRLLLRLLRLRRRRRLRLLLLLRRRRRRLRLLLLRLRRLRLRLRLLRRRRRLRLRRLRRLLLLRLRLRLLLLLRLRRLRLRRLRRLRRRLLLLRLRLRLRLRRRRLRLRLLLLLRRRRRLLRLLLRRLLRLRRRLRRLLLRRRLLLRRLLRLLRLRRRRLLRRRLLLRLRLLLRLLRRLRLRRRRRRLRLLLRLLRRLLRRLRRLRLRLLLLLLLLRRRRLLRLRRLRRRLLLLRRRRLRRRLRRLRRRRRLRLLRRLLRLRRRLRRRLRRLLRLRRRLRLRLRLRRLLLRRRRLLRRLRLLLRRLLLRRRRRRLLRLRRLLRRRRRRRRRRLLRLRLLRLLRRRLLRRRRRLLRRRLRLLRRRLRLLLRRLLLRLLLRRLRLRRRLLRRRLLRRLLRLLLLRRLRRRRRLLLRRLLRLRRRLRLRRLLRLLLRRLRRLLRRRLRLLLLLRLRRLRLRRRLRLLLRLRRLLLLLLLLLLLRLLLRLLRRLLRLLLRLRLRLRRRLLRLRLRRLLLRLRLRRRRLRLRLLRRLLRLRRRRRRLRRLLRRRLRLLLRLLRRRRRRLLRLLRLLRLRRLRRLRRLLRLLLLRLRRRLLRRRLRLLRRRLLRLLRLLRRRLLRRRLLRLLLRLLRRRRLLLLRRRLLLRLRRLRRLLRRLLRRRRRLLRRLRLRLLRRLLLRRLLLRRLLRRRRRRLRLLLRRLRRLLRLRRLRLLLRRLRRLRRRRRLLLLRRLRRRLLRRRLRLRLLRLRLRRRRRLRRRRRRRLRRRRRLLLLLLLRLLLLLLRLRLRLRRLLLLRRRLLLRRLRRRRRRRLLRLLLLLLRRLRLRLRLLRLLRLLLLRRLLLRRRLRRLLLLLLLLRLLRRRLRLRRLLLLRRLLLRLLLRLRRLLRRRRLRRRRLLRLRLLRLRRRLLLLRRLRRRRLRLRRRRRLRLRLLLLRLLRRLRRLLLLLLLRLRRLLLRLLRLLRLLLLRRLLRLLRLRLLRLRRLLRRLRRRLLRLLRLLLRLRLRLLLRRRLRRRLRRLLRRLLLLRLLLLRRLLRRRRRRLLRLLRLLLLLLRLRLRRLRLLRRRLLRLLLLRRLRRRRRRLLLLLRLRRRRRLLLLRRRLLRRRLRLRRLLRLRRLLLRLLRRLLLLLLRRLRLRLRLRLLLLLLLRRLLLRRRLRRRLRLRRRRRLLRLRRRLRLRLLRLLLLLRRRLRLRRLRRLLLLLLLRRRLLRLLRLRRRRRLRRRLRLRLRRLLRLLLRLRRRRLRLLLLRLRLRRLRLRLRLRLLRLRRLLRLLRLLLRRLLRLLLLLRRRLRRLLLRRRRRRRRLRRLRRRLLLLRLLLLLRLLRLRRRLRRRLLLRRRRRLRRRRRRLLLRRLRRLLRLLRRRLLRLLRLRRRLLLLLRRLLRRRLLLLRRRRLLRLRLLLRLRLLLLRRRRRRLLLLLLLLLLRRLLLRLLLRRLLLRLLLRLLLLRRRRLRRLRLLRLLRLLLLLLRRRRRRLLLRLRRRLRLRLRRRRRLLRRRRLLRLLRLLLRRRRLLRRRLRRLLLLRLRRLLRLRLLRLRLRLLLRLLRLLRLRRRLRRLLLLLRRRRRLLLLLLRLLLLLRRLRLRRLLRLRRLLRRRRRRLRLRLRRLRLRLRLRRLRRRRLLLLLLRLRRLLLLLRLRLLRLRLRRRRRRLRLRLRLRLLRLLRLRLRRLRRRLRRRRLLRRRLLRRRLLLRLLRLLLLLRRRRRLRRRLRLRRLRRRRRRLRRRLLLLLRLRLLRLRLLRRLLRLLRRRRLLRLLLLLLRLRLLRRLLLRRRRLRLRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRRRLRRRRLRRRRRLLRLRLLLRLRRLLLLLLRRLRRRRRRLRLRRRRLRRRRRRRRLLLLLRLLRRRRLRRLLLRLRRRRRLLRLRRRLRLLLRLLLRRLLLLLLLRRLLLLRRRLLLLRRRLLLRLRRRLLRRRLRLRLLRLRLLRRLRRRRRLRRRLRLLRLLLLRRLRRRLLRLRLRRRRRRLLRRRLLLRLRLLLLRRRLRLRRLRLLRRLRLRLRRLRLRRLRRLLRLLLRLRRLRLLLLRRRLRLRRRLLRRRRRLLLLLLLLLRRLRLRRRRLRRRRRLRRLRLLRLLRRRRRLLRRLRLLRRLLLRRLRRLLLLRRLLLRLRLLLLLRRRRRRLLRRLRRLLLRRRLLLRRRRLLRLRLRLRRLRRRRRLLLRLRLRLRRRRRLRRLLLLRRRLLRRRLLRLRLLLLRRRLLRLLRRLLRRRLLRRRRLRLLRRRRRLLRLRRLLLRLLLRLRLLRLLRRLRRRLRLLLLRLLLRRLRRLLRRRLLRRRRRLRLRLRRLLLRLRRLRLLLLLRLRRLRLLRLRRLRLLLRRLRLLLRLLRRLRRLLRLRRLRRLLRLRLLLRRRRLLLLRRRLLLLLLLRRRLRRLLRLLRLRLLRRRLRRRRLRRRLLRRLLRLLLLLLRLRRLRRLLRLLRLLLLRLRRRLLLLRRLLRLRLLLLRRLLRRRRLLLLRRLLLLLRRLRRLRLLLLLLLRLRRRRRLRLLRRRRLRLLRLRRRRRRRRLLRLRLRLLRRLRLRLLRLLRLLLLRRRLLRRRLLRLRLLRRLLRLRRLRLRLLLLLLLLLRLLRLRRRLRLRLRRLLLRRLRRRLRRLLLRLRRRLLLRLLLLRLLRRLLLRRLLLLLRRLRRLLRRRRRLLRLLRLLLRRLRRRRRLLLLLLRRLLLLRRRRLLLRRLLLRRRLRRRRRLLRRRRRRRRLRRRRLLLLLRRRLLRLLRLLLRRRRRLRRLRRLRLLRRRRLRLRRRLLLRRLRLLRRRRLRLLLLLLRRRRRRRRRLRRRRLRRLRRLRLLRRRLRRLLLLLRLLLLRRRRLLLRRLRLLRLRRLRRRRRLRLLLLRLRRLRLRLLLLRRRLLLLLLLLLRLLLRLLRLLLLLLLRRLLLRRLRRLRRLLLRLLLRLLLLRLLRRRRLLLLRLLRLRLLRLLRRLLLLLRLLRRRRRRRLRLLRLLLLRRLLRRLRLLLLRRLLLLRLRLLLRLRLLRRLLRRLRRRRRLRRRLRRLRLRLLLLLLLRRLRLLLLLLRLRRRLRLRLRRRRRRLRLRLLRRLLLRRLLRRRRLRLRRRRRRLLLLLLLLLLRRLRLRRRLLLLLLLRLRRLLRRLLLLLRRRLRRLLLRLLRRLLRRLLLRRLLLLRLRRRRRRLRLLLLLRRLLLRRRLLLRRRLRLRRLRLRLRRLLLLLRLLRRLRLLRRRRLLLRLRLRLLLRRRRRRRLLRLLLLLLLRLLRRRLLRLLRRRLRRLRLLRLLRLRLLLLLRLRRRRRRLRRLRLRLLLLLLLLRLLLRLRRLLRRRLLLRLRRRLLRLRLLLRLRLLLLRRRLRRLRLLLRLRLLRRRLRLRRRLLLLRLLRRRRRLRRRLLRRLLRLRLLLLLLLRRLRRLLRRRRLRLLRLRLRLLLLRLLRRRLRRRRLLLRLLLRRRLRLRLRRLRRLLLLLRRLLLLRRRLLRRLLLRRLLLLLLLRRLRRLLRRRRLRLRLLLRLRLRLRRRRLRLRRRLRLLRLRRRLRRLRRRLLLLLRRRRRRLRRRLRLLRLLLLRLRLRLLRLRLLLLRRLRLLLRRRLLRLRLRRRLRRRRLRLLRRLLRRLRLLLRRLLLLLLLRLRRLRRRRRLRRRLRLRLLLRRRLLLLLRRRRRRRRLRRRRLRLRLLLRRLLRRRLRRLRRRRRLLLLRRLRLRRLLLLLLRRRLRRLLRLLRRLLLLLLRRRLLRRLRRLLRRRRRLLRLRLLLRRLLRRLRLRRLRLLRLLRRLLLLLLRLLLLLRLRRRRRRLRLRRRLLLRRRRRRRRLRLLLLRRRRRRLRLRRLRRLRRRRRRRRLRRRRRRLRRRLLRRRLRLLRRRLRLRRLLRLLLLLRLRRLLRRLLLLLLLLLRRRLLLLRRRRRRLLLLLLLRLLRLRRLRLRRLRRRRLLLRLRLRRRRRLRRLLLLLRLLLLLRRRRLRRLLRRRRLRRRLRLRLLLRLRLLRLRLRLRRRLRLLRRRLLRRRLRLRLRLRLLLRLLRLRLLRLLRLRLRLLRRLRLRLRLRLLLLRLLRRRLRLRLLLLLLRLRLLRRLRLRLRLRLLRRRRRRRRRRLLRLLLRRRRRRLLLRRRRLRRLLLRRLLLLRLLRLLRRRLLLLLRRRLRRLLLRRRRRLRRRRRRLLLRLLRRRLRRRRLRRRLLRLRLRRLLRRLLRRRRLLLLLRLLRLLRLRRLLLLLRLRLRLRRLRLRRRRRLRRLLRRLLLLLLRRLLRLRLLLLRLLRLLLLRLRRRRLRRRLLRLRLLRRLRRLLRLRLRLRLRRLRRRRLLRLLLRLLLRLLRRRLRRRRRRRLLLRLLLRLRRRRRLLRRRLLLRLLLLRRRLLRRRRLRRRLLRLRRLLRLRRLRLRRLLLLRLRRLRRRLLLLLRLRLLLLLRLRLLLLRLRRRRRLLRLLRRLLRRRLRLRLLRRLLLRLRRRRRLLRLLRLRLRLRLRLRRLRLLLRRLLLLLLLLLLLRRRRLRRRLLRRLRLRLLLLLRLRLLLLRRLRLLLRLRLLLLRLLLRRLLRRLLRRRLRRRLLLRRLLLRRLRRRRRLLRLRLRRRRLRLRLRLRRRLLLLLLLLRRRRRLLLLLLRLLRLLRLRLRLRLRLLRRLRLLLRRRLRLRRLLRLRRRLRLRRRRRLRLLLRRRLRLLRRRRLLRRLRRLRLLRLLLRRLLLLLLRLLRRLLLLRLLRLRLRLLRLLRLLRRLLRRLLRRLLRRRRRLRRLLRRLLRLLRLLRLLRRRLRLLRRRLLLRRRLLLRLRLRLLLLRRLLRLRLRRRLRRRRRRRRRRLLRLRRRLRRRLLRLRLLLLRRLRLLRRRRRLLLRRRRRRRRLLLRLLRLRLRRRLRRLLLRRRRLLLLRLLLLRLRRLLLLLLLLLRLLRLRRRRRRRRRRLLLRLRLLRLLLRLLLLLLLLRRRRRRLRLRLRLRLRRRLRRLLRRLLLLRRRLLLLRLRRLRLLRRLRRLRRRLRRLLRLRRLLLRLLLLRRLRRRRRLRRRRRRRLLRLLLLRLRRRLLRRRRRLRRLLLRLRRLLLRLLLLRRRLRLRLLRLLLLRRLRRRRRRRLLLLRRRRRRLRRLLRLRRRLLLRRLRRLLRLLLLLRRLLRRRRRRLLLRLRLRRRLRLRRLRRLRRLLLLLRRLLLRRRLLRRLLLLLLLLRRLRRLRLLRLRLRLRRRRRLLLLRLRLRRLRLLRLLRLRLRRRLLRRRRLRRRRLRLRRLRLRRLRLRLRLLRRLLLRRLRLRRRLRLLRLRRLRLLRLLRRLRRLLLRRRRRLRLRRRRRRRLLLRRRRRLLRLRLRLRLRRLRLLRLLRRRLRLLRRLLLRLRRLRRRLRLLRLRRLLLRRRRLLRLLRLRRRLLRLRRRLLLLRRLLLRLRLRLLRLRLRRRLRLRRRRLLLLLLRLRLRRRRRRRLRLLRLRRLLLRRLRLRLRLLLLRLLRRLRRLLLLRLLRRRLRLRLLRRLLLRRRRLLLLLLRLRRLLLLLLRRLRLRLRLRLRLRLRRRRLRRLLRLRLLRLRRLLRLLLLLLLLLRRRLRLLLLRLRLLRLLLRLLRRLLLLRRRLRLRRRLLLRLLRRRLLRRRRRRRRRLRRRRRLLRRRLRLRRLLRLLRLRRLRLRLLLRRRLLRRRRRRRRLRLLRRLLRLRLRRRRRLLRRLRRLLLRLRRRLRRRLRLRRRLRRLLRRLRLRLRRLRRLLLRLRRLLRLLLRRRRRLRLLRLLLRLLRRRRRRRLRLLLRRLLRLRLLLRRLLLRRRLRRLRRLLRRLRRRLRRRRLLRRLLRRRRRLLRRLLLLRRRRLLLLLRRRLLRLLLRLRRRLLRLRLRLLLLRRLLRLLRLLRRRLRLLRRRRRRRLRRLLRRLRRLRLRRRLRRRRRRLLRRLLLLRLLLRRLLRRRLLLLRRLLLLLLLRLRLLLRLLLLRLRLLRLLLRLRLRLRLLRRLLLLLRRLRLLLLLRLLRLLLRLRLLRLRRLLLLLLRLRRRRRLRLLRLRLRLRLRLRRLLRLRRRRRRRRLLLLRLRRLRLLRLRLRRRRLLLLLLLRRLLRRLLRRLLLLRLLLLLRLLLLLLLRLLLRRRRLRLRRRLLLLLLLRLLRRRLLRRRLRLLRLLLLLRLLRLLLLRLLLLLRRLLLRLRRLLLLRLRLLRRLLLLLLLLLLLRRRLLLRRRLRLLRLLLLLLRRLLLRLLLLRRLLRRRRRLLLLRLRRLLRLLRRLLLRRLRRLLRLRRLLRLLRLRRRRLRLRLRRLLRRRRLLLRLRLRRLRLLRLLRRRRRLRLRLLRRRRLRLLRRLLRRLRRLLLLLLRLRLLLRRRRLRRRLLRRRRLRLLRLLRLLLRRRRLRLLLLRLLRRLLRLLRRLRRLLLRRLLLLRRRRRLLLRRLLLRRRLRLRRRLRRRRRRRLRLRRRRLRRLLRRRRLRRRLLLLRLRLLLRLRLLLRLRLRLRLRLLLRLRRRLRLLLRRRLLLLRRRRLLLLRRRRRLLLLRRRLLLLLLRRLRRLLLRLRRRLLRRRLLLLLLRRRRLLRRLLLRRLLLRLLRRRRRLRRLLLLRRRLLRRLRRLLLRLLRRRRLLRLLRRRLLRLRRRRLLLRLLRLRLLRLRLRRLLLRRRLRRRLLRLLRRLLRRRLRRRRLLLLLRRLLLLLRRRRRLRLRLRRLRLRRRRRLRRLRLRRRLLRLRRRLRLRLRRRLLRLLRRRRRRLRLRRLRLRLLRRRLLLRRLLRLLRLLLRLLRRRRRRRRLLLLRRRLLLRLRLRRLRRLRRLLRLRRRRLRRRRRRRRRRRLLRLLRLRRLRLLLRRRRLRRLRRLLLRLRRRLLRLRRRRRRLLRLRLLRLLRRRRRRLLLLLLRRLLRLLLRLLLRLRRRRRLRRLLLLLLRLRRLLRRRLRLRLLLRLRLLLLRRRLLLRLRRRLLLRLRRLLLRRLRRLLRLRRRLRRRRLRLRLLLRLLRRLRLLLRRRLRLRLLLRRRRRRLLLLLLLRLRLLRLRRRRRLLRRLRLLLLRLLRRLRLRLRLRLRLRLRRLLRRLLLLLLLLLLLRRLLLRLRLLRRRRRRLLLLRRRLRRLRLRLRLRLRRRRRLLLLRRLRRRLLLLLRRRLRRLLRLLLRRLRLRRLLLRRLLRLRLRLRRRRRRRLRLRRRRRRRLRLRLLLRLRRLRRLRRRRLLRRRRRLLRLRRRLLLRLLLLRRRRLRLLLRRLLLRRLLLLRRRLRLRLLRRLLRLRLRRLRLRRLLLRLRRLLLRLLLRRLLRLLLRRRRLLRLRLLRLRLRRRLLLLLRRRRRRRRRLRLLRRRRRLRLRRRLRLLLLRRRLRLRRLLRRLRRLLLLRRRRRRRRLLRRLRRRLRRRLLRRRLRRRLRLLRRLRLRRRRLRLLLLLLLLRRRRLLLLRLRLRRLLRLRRRLRLLLRRRLLLLLLLRLLLLRLRRLRLLRLLRLRLLRRRRLLRRRRRLRLRLRRLLLRRRLRLRLRRLLRLLRLLRLRRLLRRLLRRRLRRLRRRRLRRRLLRRRRRRLRLLLRRLRRRRLRLRLLLLRLLLLLLLRLLLRLLRLLRLLRLLLRLRRRRLLRLLLRLRRRLLLRRLRLRRRLRRLRLLRLRLLRLLRRLLRRRRLLRRLRLRRLLRLRRLRRLLLRRLLRRRRRLLLLLLLRRLRRRRLLRLRLRLRLRRRLLRRRRLRLLLLRRRRRLLLRRRRRLLRLRRRRRLRRLLRRRRRLLRRRRLRLLLLRLLLRRRRRRRLLLLRLLLRLRLLLLLLLLRLLRLLRLLRLRRRRLRLRRRLRRLRRLRRRLRLRLLLLRLLRLRRRLRLLLRRRRLLLRRLRRRRRLLRRRLRRRLLRRRRRLLLRLRRRLLLLLLLRLLRLRRRLLRLLLLRLRRRRLRLLRRRRRLLLLRRLLRRLRLLLLRLRLLLRLLLRRRLRLLRRLRLLRLRRLLRLRLLRRRLLRLRLRRRRRRRLLLRLRLLLLRRLRRRLRRLRRLRRRLRRLLLRRLLRLRLRLLLLLRLRRRRLRLLLRLLLLRLRLRRRLRLLLLLRLRLLRRLLRLLRLRRLLRRRRRRRLRRRLRLLRRRRRRRLLRRLRRRLLRRRLRRLLLRRRRLRRRRLLLLRRRLLRLLLRLLRLRLLLLRRRLLLLLRRLLLRLRLRLLRRRLRRLRLLLRRRRLLRLRLRLLRLRLLLRRRLLLRLRRLLLLLRLRLLLLRLRLRRLLLLRLRRRLLRRRRRRRLLLRLLLLRRLLLRLRRRLRLLLRRRLRRRRRRRRLRLLLLLLRLRRLRRRRLRLLRLRRRLLRLLLLRLLLLRRRRLLRRRRLLRLLRLRLRLLRLRRLRLRLLRLLRLRLLRLRRRRRRRRLLRRLLRRRRRLLLLLRLRRLLLLLRLRLLLLLRRLRLLRRRRLLLLLLRRRRLLRLLRLRRRRRLLRLRLLRRRLLLRLLLRLRLRLLRRRRLLRRLRLLRRRLLRLRLLLLRLLRLLLRRLRRRRLRRLLRLLRRLLLRLLRRLRRLLRLRLLRLLLRRLRRRLLRRLRRRLLRRLRRRRRLLLLRRRRRLRLRRRRLRLRLRRLRLLLRRLRRRRRRRRRRLRLLLRLLLLRRLRLRLLRLRLRRRRRLRRRRRRRLRRLLRRRRRLRRRLLLRRRRRRLRLLLLRRLLRRLLLLLLRRLRRLLRLLLLLRRLLRLRRLRRRLLLLRLLRLRLRRLLLLLRLRLLLRRLLLLLRRRRLRRLLRRLRRRRRLRLRLRRLLRRRLLRRRLLRRLLLRLRLLRRRRLRRLLLRLLRRRRRLLLRRRLLRRRRRRLRRRRLLLRRRLLRRLRRLRRRLLLLLLLLLLRRRLLLLLLRRLLLRRRLRRRLLRLRRRRRRRRLLLRRRLRLLRRRRLRLRRLRLRRLRLLLRRRLLLLLRRRLRLRRLRRRLRLLLRLLLRRLLRLRRLLRLRLRRLRRRLLLRLLRRRRLRLRRLRLLRRRRLLRRRLRLRLRRLRRLLRLLLRLLRLLLLRRRLRLLLLLRLRLLRLRRLLRRLLRRRRLLRRLLRLLRLLRLLLLRLLLRLLRLLRRRLLLRRLLLRRLLLRRLLLRLLRLRRLLLRRRRRLLRLRLRLLRRRRRLLRLLLRLLRRLLRRLLLRLRLLLLLRRLLLRLLRLRLRLLLLRLLRRRRLRRRRLLRLRLLLLLRLRRLRLLRRRLLRLRLLLLLRLLRLLRLRRRLRRLRLRRLRLLRLLRRLRRRRRLLRLRLRRLLLRRLLRRLLLRLLLLRLLLRRLRRLLRLRLLLRRRRRRLRRLLLRLLLLLLRRRLRRLRRRRLRLRLLRLLRLRLRRRRRRLLRLRLLLRRRRLRLRRRRRRLRRRLLLLLLLRLLRRRRLLLLRLLRLRLLRLRLRRLRLRLLRRLRLRRRRRRRLRLRRLLRLLRRLLLLLRLRRRRRRLRLRLRLLRRRLRRRRRRLRLRRLRLRLRLRLRLLLRLRLLRLLLLRRLRLLLRRLLLLLRLRLRLRLRLLRRRLRLLLRRLRLRLLLRRRLLRLLLLLRRRRRLLRRLLRLRLRRRRLLRRRRRLLRLLLLLRRLRLRRRLLLRRRRRRLLRRRRLLLRRLRLLLLLRLRLRRRLLLRLRLRLLRRRLRRLRRRRLLLLLRLRLLLLLRLLLLRRRLRLLRLRRLLLLRRRLRRLLLLLRRRRLLLRRLRLLLRLLRRRLRRRLLLLLRRLLRRLLLRRLLRRRLRLLLLLRRLLLRLRLRRLLRRRRLRLLLLLRLRLLLRLRRLLLRRLLLRLRLLLRLLRLRLLLRLLLLLRLRRLLLLLLRLRRLLLRRLRRLLLLLRLLLLRRLLRLRRRLLLRRRLRLLRRLRLLLLRLRRLLRRLLLRLRLLLLRRRLLRLLLRLLRRRLRRRRRLRLLRLLLLLRLLLLLLLLRLLLRLRLRRRLLLLLRLLLLLLLRLRLRLRLLRRLLRRRRRRLLLLLLRRRLLLRRLLRRRLLLLRLLLRLLRRRLRLRLLRRLLLLRRRLLRLRRLRRRLLLRLRLRLLLRLLLRLLLRRLLLLRRLLRRLRRRLLRLRRRLRRLLRLLLLLLRLLLLRRRRLRLLRLRRLLRLLRRRRLRLRLRLLRLLRLLRLLLLLLLLLRLLRLRRRLRLLRRRLLRLLRRRLLRRLLLRLLLLRLRRLRRRLRLRLRRRLLLRRRRRLLLRLRRRRLRRLRRRLLRRRLRRLRLLRLRLRLRLLLRLLRLLRRLLLLLRRLRLLLRRRRLRLLLRRRLLLRRLRLLLRLRLLLRRRLRLLRRLRLRLLRLLLLRRRRRLRRLRLRLLRRLRLRRRLLRLRLLRRRRRRLRRLRRRLLLLLRLRLRRRRLLLLLRLLRRLLRLRLLRRLLRLLLRLRLLRLLLRLLRRRRLLLRRLRRLRLLLRRRLLRRLRLLLRRLRLRRRRRRLLLLLLLLLLLRLLLLLRRRLRRLRLRLLLLRLLLLRRLLLLRRRRRLLLLRLLLLRLLLRLLLRRRRRRLLRRRRRLRLRLRRRLLLRRLRLRLRRRRLLRRRLRRRLLRRRLLRLLLRLLLRLRLRRRRLRLRLRLLRRRRRRRRRLRLRRLLLRRLLRLLLLLRRLRRRLRLRRLRLLRLLLLRLRRLRLLRRRLRLRRLLLRLRLLRRLRLLRRRLRLRRLLLLRRLRRLRLLLLRRRRRRLRLRRLRRRLRRRLLLLLRRLRRRRLRRLRLLRRRRLRRLLLLRRRRLLLRLLLRRLLLRRLRRRRRLLLRLRRRRRRLLRRLRLLLLLRLLRLLRRLRLLLLLLLLLLLRLRLLRLRLLLLRLRLLLRRRLLLRLRLRRRLRLLLLRRLLRRRLLLRLRRRRRRLRLRLLLLRRRRLRLRLLLLLLLRLRLRRRRRRLLLRLLRLRRLRRLLRLRRRRRLLLRRLRLRRRLLRLRRRLRRRRRLLRLLLRLLRRLRLRRRRRLRRRRLLLRRRLLLRLLLRLLRLRRRLRLLRRRRLLLRRLLLLLLLRRRRLRLLLRRRLRLRRLLLRLLRRLLLLRRLRLRRRRRLRLLRRRRLRLLLLRRLLRLRLRRLRLRLLRLRRLLLLLRRRRLRRLLRLRRLLRLRLLRLRRLLLLLRRLLLLLLLLRRLRRRRRLRLRRLRLLRLLLLLRRRLRLRRLRLRRLRLRLRLRLRLLRLLLLRLRRRLLLRRLLRRLRRRLRLRRRLRRRLLRRRRLRRRRRRLLRRRRLLRRRLRLLRLRLRLLLRRRRRLLLRLRRRRRLRLRRRLRLLRRLLLLRRRLRRLRLRRLRLLRRLLRLRLLRLLLLLLLLLRRLLRLRRLRRLLLLLLLRLRLRRRLRLRLRRRRRRRRLLRLLLRRLLRLRRLRLRLRLLLLLRRRLRLLLRRRRLLRLLLLLRRLLLLLLLRRRRRLLLRRRRLRRRRLLLRRRLRLLRLLLLLRLLLRLLRRRLRRRRLLRLLRRLLRLLLRRRLRLLLLRLRRLLLLRLRLRLLRRLRRLLRLLLLLLLLLLRRRLLLRLLLLLRLLRRLLLRRRLRRLRRRRLRLLRLRLLLLRLLLLLLLRRRRRLRLLRLRLLLRLLLLLRLRLLRRRLLRLLLRLLRLLLLRRRLLLLRLLRRRRLLLLLRLLLRRLRRRRLLRRRLLLRRRRLRRRRRLLLLRRRLRLLLRLLRLLLLRRRLLLRLLLRLLLRRLLRLLRRLLLLLRRLRRLLRRLRLLRLRRRLRRLRLLLRLRLLRLLLRRRLRRRLRRRRRLRLRLLLRLLLRRLLLRRLLLRRRLRRRLRRRRLRLLLLRLRRRLLLLRLLLRRRRLRRRLLLRLLLRRLLLLRLLRRRRLLLRRLRRRLRRLRRLLRLLRRLLLRLRRLLLRLLRLLRRLLLLRLLRLRLLLLRRLLLRLLLLRLRRRLLRLLRRLRLLRRRLRRLRRLLRRRRLLRRLLLLRRLLRLLRLRLLRLRRRLRRLRLRLRLRLRLLLRLLLRRLLRLRRRRRLRRLRRLLLLRRRRRLLRRRLLLRLRRLLRRLRRLRRLRLRLLLLRRRRRRLLLLRLLLRLLLLRLRLLLRRRRLRLLRLRLRRLLLRRLRLLLRRRLRRRLLRRLLRLLRRLRRRLRRRRLLRLLLRLRLRRLLLRRLRRRRLLLRRRLRRRRLLLRRRLLLLRRLRLLLRLLRLLRRLRRRRLRRRRLLLRRRRRRRRRRRRLRLRRLRRLLRLRRRRRLRRRRLLRRLLRRLRRRLRRLRLLLLRRRLRLRRLRRLLLRLLLLLRLRLRRLLLLRLLRLRRLRRLLLRRLLLLLRLLRLRLLRLRLLLLRLRLRLRRRLLRRLRRRRRLLRLLLLRLRLRLRLLRLRRLLLRLLLRLRLLLRLRRRRRLRRLLLLRRRLRLRRRLRRLRLLLRRRRRRLRRRLRLRRRLLRRRRRRRLLLRLRRRRLLRLLLRLRRLRRLRRRLLRLRLLRLLLLLRLRLLLRRRRRRRRRRRLRRLRRRLLLRLLRRLLLRRRLRRLRLLLRLLLLRLLRLRLRLLLLRRLLLLRLLRLLLLLLRRLLRRRLLLLLLLLRLRRRRLRLLRLRLRLRRRLRRLRLRRLLLLLRLLLRLLLLLRRLLRLRRLLRRLLLLLRRLRLLLRLLRLLLRLRRRLLLLLRRRLRLLRRLLRLLRLLRLRLLLRLLRRRRRRRRLLRLRLRRLLLRRLLRRLLLLRRLLRRRLRLRLRLLRRRRLLRRRRRLRLLLRRRLLRLLLRRLRRLRRLLLLLLRLRRRRRRLLRRRLLRRRRRRLRLLRLLRLLRRLLLRLLLRLRLRLLLLRLRRRRRRRLRLRLRRRRRRRRLRRLLRRLRRLRRLLLRLLRLLLLRRRRRLLLLRRRRRLLRRRLLLRLLRRLLLLLRRLLLRLLRLRLRRRRRRRLRLLRRRRRLLRLRRRLRLLLRLRRLRLRRRLLRRLLRRLRLLLLRRRRLLRLLLRRRRRRLLRRRRRRRRRLLRLLLRRRLLLRLRLLRLLLLRLRRLLRRLRRLLLRLLRLRRLRRLLLLLLLLRLRRLLRRLRLLRRLLLRRRRRRRLLLRRRRLLLLRRLLLLRRLLRRLLRLLRRRRRRRLRLLLLLRLLRRRRLLRRRRRLLLLLLLLLLLRLRLRLLLLLRLLLLRLRLRLRLRRLRLLRRLLLRLLLLLRRLRLRRRRLLLLLRRLLRLLRRRLRRRLRLRLRRLRRLRRLLLRRRLLLRRLRLRLLRRRRLRRRRRLLRRLLLRLLRLLRRLLLLLLRRLRLLLRLRLRLLLRLLRRRRLLLLLRLLRRRLLLRRLLLLRRRLRLRLRRLLLLLRRLRRRLRLRLRRRRRLLRLLLRLRLRRLRLLRLLLRLRLLRRLLRRLLLLRRRLRLRRRLRLRLLRRRLLRLLLRRLRRRLRRLLRLRLLRRLRLRRRLRRLLRRRRRRLLRRLRRRRLRLRLRLRRRRLLRLLRLLRRRLRRRLLRRRRRRLRRRRLLRRLRRLRLLLLRRLLRLLRLRRLRRLLRRLRLLLRLLLRLLLRRLRRRRRRLRLRLRRLRRRLRLRLRLRRLRLLRLRRLRRRRRRLRRLRRLRRRRLLRRLRRRLRLLRLLLLRRRRRLRLRLRLRRRRRRRLRLRLRLLLRLLRLLLRRRRLLLRLRRRLLLLRRLLRLLLRRRRRLRLLLRLLLLLLLRLRLLRLLRRLRRRRLRRRLRRLRRLLLLRRRLLLRRLRRRRLLRLLRRLLLRRLLLRRLLLRLLLLRLRLLRLLRLRLRLRLRRRRRRLLRLRRRLRRRRRRLLLRLLRRLLRLLRLRLRRRLRRLLLRLLRRLRRRLRRLLRRLRLRLRRLRLLRLLRRLLLRRLRLRLRLLLRRLRLLRLLRLRRRRRRLLLLRLRLLRLLLRRRRRLLRRLRLLRLLLLLRRRRRRLRLLLLLLRRLLLRRLRRRLLLRRLRLLLLRLLLLRRLLLLLLLLRLLRRLLRLRLRLRRLRLLLRLRRLLLLRRLRLLRLLRRLLRRLRRRRRLRRRRLLRLLLRLLRLLLLRRRLLLLRLLLLLRRRLRLLLRLLRLLRLRRRLLRLLLLRRRRRLLLLLRRLLLRLLRRLLLRLRLLLLRLRRLRRRLLRLLLRRLLLLRRRRLRRLLRLRRRLRLRLLLRLRLRLRRLLLLRLRLLLLLLRLRRRRRRRRLRLLRRRLLRRRRRLRLLRLRRRLRRRRLLLLRRRRLRRRLLLRLLLLLLLLLRLRLLRLRRRLLRRLLLLRRLRLLLRRLLLRRRRLRRLLLLLRLRRRLLRLRLRRLRLRLLLLRRRLRLLLLLLLLLRLRRRLRLLRLRRLLRLRLRRRLRLRRRRLRRLLRLRRLRRRRRRRRLLRLRLRLRLLRLLRRLLRLLRLLRRRLLLLRLRLRRLLRLLRRRLRLRRRRRRLRLLLLLLRLLRRRRRLRLRLRRRLLLLRLRRRLLRLRRRRRLLRLLRLLLRRLRLRRRRRLRRRRRRRLRLLRLRLLRRLLRLLRRRRRRRLRLRRLRRRRRLRLLLRRRRLLLLRLLRLRRLLRLRRRLLRLRLLRLLLLLRLRLRLRRLRRLLLRLLLLLRRRRRLRLRLLLRLRLRLRRLRRLLRRRRLRLLLLRLRRRRRLLLRRRLRRRRLRRRRRLRLLLRLLRLLRLLRLLLLRRLLRLRRRLLRLLLRLRLLRLLLLRRRLRRRLLRRLRRLRRRLRLRRLLRRRLLLRLLLLLRRRLRLLRLLLLLLRRLRRRRLLRLRRLRRLRRLRLLLRLLRRLLRRRRRLLLRLLRRLLLRRRLRRRRRLRRLRLLLLLLLRLLLRRRLRRRRRRLRLLRLRRLLLRRLRLRLLRRRRLLLRRLRRLLLRLRLLRLRLLRLLRLRRLRRLLRRRLLLRLRLRRRRLLLRLLLRLRLLRLRRRLLRRLRLRRLLRRLLRLRLLRRRLRLLLRRLRLRLLLRRLLLLRLRLRLRLLRRRRLRRRRRRRRLLRLLRLRLRLLLLLRRLLRRRLLRLRRLRRRLRRLRLLLRLRLRLRRLRRLRLLRLLLRLLLRLLLRRRRLRLRRRRRRLRLRRRLLRLRRRLLLRRLRRLLRLLRLLRLRRRLRRRRRRRRLRRLRLRLLLLRLLRLRRLRLRRRRRRRLLLRRRLLRLLRRRLLLLLLRLLRLLLRRRRLLLRRRLRRLRLLRLRRLLRLRRLRRRLRRLLLRRRLRRLLLLLRLLRRRLRLRRRRRRLLRLRRRRRRLLRRRLLRRRRLLLLLRRRLRLRRLRRRLLLRLLRLRLLRRLRRLLLLRRRRLLRLRRLLLRRLRLLRLLRLRLLLRLRLRLRRRRLRRLLRLLRRRRRLLLLRLRLRRLRLLRLLRRRRLRRLRRLLLLRRLRLLLRLLRLRLLRLRRLRLLRRRRRRLRRLLRRLLRLRRLLRRLRRRRRRRRRLLLLLRRRLRRLLRRLRLRLRRLRRRLRRLLLRLLRLLLRLRLRRRLRRRRRLLRLRLLRRRRLLRRRRLLLLLLLRRRLRLLLRRRLLLRRLRRRRLLLLRLLLLRLLLRRLRRLLRLRLRRLRRRLRRRLLRRRLLRLRLRRLRLRLRLRRLRLLRLRRRLLLRRLRRLRRLRRLRLRRRLLLRRLRLLRRRLRLRRLLRLRLRLLRRRRRRRLRLRLLLLLRRLLLLLRRLLLLRRRRLLRLRRRLLRRLRRRRLLRLRRLLRLLLLRLLRLLLRLRLLRRLLRRLRRRLLRRLRLLRRRRLRRLLRLLLRRRRLRLLLRLRLLLRRLLRRRRLRLLLRRLLLLLLRLLLLLRLLLRLLLRLLLLRRLLRRLLRRLLLRRRRLRRRRLRRRRLRRRRRRRRLRLLLRLRRRRLRRLLLRRLRRRLRRLLRRLLRRLLRRRLRRLLLLRLRLRLRLRRRRRRLLRRLLRLRLLRRLLRRLLRRLRRRRLLRRLLLRLLLRLLRLRLLLLLRLLRLRLRRRLLRRRRLLLRRRLLLLRRRRRLLRRRRRLLLRRLLLRRLRLLLLLLRLRLRLLLLRRRLLRLRRLLLLRLRRRRLRRLLLLRRLLLLLRRRRLLRLRLRRRRLLRRLLLLLLLLRRLRRRRRRRRRRLLLRRRLRRRRRLRRLRRLLRRRLRLLRRRRLRRRLRRRRLRRLRRLRRLLLRLRRLLRRLLRRLRLRRRLLLLLRLLRRLRLRRRRRRLRRRRRRLRRLLLLLRRLLLLRLLRLLRRRLLRLRRRLLLLLLRRLRRLLRLLRLLLLRRRLLRLLLRLRLRRRRLRRRLRLLLRLLRLLLLRRRRLRRRLRLRRLRLLRRLLLLLLRRRLLLLRLLRLRLLRRLLLRLRRRRRLRLRRLLLRLLLRRRLLRRRLRRLRLRRLRRLRRRRRLRLLRRRRLLLLRRLRRRRRLRRRRRLRLLLRRRLRLRRRLLLLRRRRRRLLRRRRRRLRLRLRRLRRLLRRRLRLRLLLRRLLLLLRRRLLRLLRLRLLRLLLRLRLRLRLLLRLRRRRLLLRRRRRLRRLLRLRLLRLRLLRRLRLRLLLLLRLLLRRLRLLRLLLLLLLRLRLLRLLRLRRRRLLRLRLRRRLLLRRRLLRLLLLRLLLLRRLRLLLLLLLLLLLLLLRRLLRRLRRRLRLLLLLLRLLLLLRRLRLLLLLLLRRLRRLLLLLRRRLRLLLLRLRLLLLRRRRRRRRLRRRLLRLRLRRRLRRLLLLLRRRLRRLRLLLLRLLRLRRRLLLRLRLLRLLRLLLLLRLLLLLRLLRLRLLLRRLRRRRLRRRLRLLRRLLRRLLRRLLRRLLRRLLLRLLLRLLLRRRLLRLLLRRLLLLRRLLLLRRLRRLLRLRRLLRLRRRRLLRRRLLRLLLLRRLLLRLLLRLLRLRLRLRLRLLRLRRRLLRLRLRLRLLRLRRLRRRLLLLLLLRRRRRRRRLLRRLRRRLRRRLLLRRRRLRRLLRLLLRRRLRLRLRRRLLRRLRRRLLLRLRRLLLLRRRLLLLRRRRRRRLRLLRLLRRLRLRLRRLRRRLLRRRLRLLLRLRRRLLRRLLRRRRRLLRRLRLLRRLLRRRRRLRLRRLRRLRLLRRRRRRLRRLRLLLLRRRLLLRRLLLLRLLRRLLLLLLLRRLRRRLLRLLRLRLRRLLLLRRLRLLRLRRLLRRLLRLLRRRLRLLRLRLRLLRLRLLLRLRLRRRLLLLRRRRLRLLRLRLRRRRRRRLRLRLRRRRRLRLLLRLRRLRLLRLRRLRRRRLRRRLRRRRLLLRRRRLRRLRRRRRLRLLRLRRRRRLLRRLRRRRLLRRRRRRRRLRLLLLLLRLRLLRRLLLRLLRRLLLRLLRRRRLRLLLRRRLRRLLRRLRLLRLLLLRLRLLRLLRRRRLRRLLLLLRRRRRLLRLLLLRRRLRRRRLRRRRRRRLLRLLLRLLLLRRLRLLRRLLLRLRRLLRLRLRLLLLRRRLLRRRLLRLLLRRRRRRRLLLRLRLLLLLLLLRRLLLRLLRLRLRLRLLLRLRLLRLLRLRRLLLLLRRRLRRLRRRLRLRRLLLLRLLRRRRRRLRRRRLLLLLRLLLLRRRLRRLRRRRRLRLLLRRLRLRRLRRRRLLLLLRLLLRLLRLRLRLRRLRLLRLRRLRRLRLRLRRLLLRRRRLLLRRLRLLLRRRLLRRRRRLLRLLRRLLLRLLRLRRRRRRLRLLRRRLRRRLRRLRRRLLRRLLLLRLLLLRRLLLRLRLRRLLLRRLLLLLLLRRRLLRLLLLRRRLLRRLLLLRRRLRLRLLLRRRLLRLRRLLLRRRLLRLLRLLRRLRRRRLRRRRLRLLLRRLRLRLLLLRLRRLLRRLRLRRRRLRLLRRLRRLRRLRLRRLLLLLRRRRRRRRLRRRRRLLLLRLLLLLRLLRRLLLRLLRLLLLLRLLRLLLLRLLLRRLLRLLLRRRRLRLLLRLRRLLRLLRLRLRRRRLRRRRRLRRRRLRRRRLRLLRRLLLLRLRLLRRLLRRRRLLRRRLLRLRLLRRRRRRRRRRLRRLLLLRLLLRRLLLRLRRRRRRRRRRRLLRRLRLLLLLRRRLLRLLRLLLLLLLRRLLRRRRLLLRRRLRLLLRRRRLRLRLLRLLLLRRLLLRLLLLRLLRRLLLLRRLRLLLLRRRRLRRRRRLRLLRRRLRRLLRLLRLLRRRRLLLLRRRLRLLRLRRLLRRLLRRRLRRRLRLLLRLLLLLLLLRLLRRRRLRRLLRLRLLLRRRRRLRRLLLLLRLLRLLRRLLLRLLLLRRRRRRRRRRLRRRRLRLRRRLLLRRLRRLLLRRRRRRRLRRLRLLRRLLRRLLRRRLLLLRRLLLRLRLLLLRRLRRRRLRRLLRRRLRRLRLLRLLRRLLLRLRLLLRLRRRLLLLLLRRLLRRRRRLLRLLLRRRRRRLRRLRLRRRRLRRRLLRLRRRRLRLRLRRLLRLLRRLRRRRLLLLLLLRRLLRRRLLRLRRRRLLRRLLRLRRRLRLLLRRRLRRRLRRRRRRLLRRRLLRLLRLRRLRRRLLRLLRRRLRLRRLLRLRRRLLLRLRLRRLRLLLRLLRLLLLRLLLRRRLLRLLRLLLLLLLRRRLLLRLRRLRLLRLRRLLRLLLRLRLLRRRLRRRRLLLLRLLRLLRRRRLRRLLRLRRLLRRRRLLRLRRRLLLLRRLLLLLLRRRLRRRRLLLRRLRRRLLLLLLLLRRRLLLLLRLLLLRLLLRRLLLLLRRRRRRRRRLLLRRLRLLLRLRRRRRLLLRRLLRRRLLLLLLRLLLRRRRLRLRLRRRLLRRLRRRLRLLLRLRRLRRRRLRRLLRLRLRLLRLRLLLRRRRLLRLLRRLLRRRRRLRLLRRLRLLRRRLLLRLRLRRRLLRRRRLRRRLRLRLRRLLLRRRRLRLLLLRRRRLRLLRRLRLRLRLRRLRRRLLRRLLLLLRLRRRRRRLLRLRLRLLRRLLRLRLLLRLLLRLLLRRRLRLRLRLRLRRRLLRRLLLLRLLLRLRRRRLRLLLLLRRRLLRRLRLRLRLLRLLRLLLLLLRLRRLRLLLLRLLRRLLLRLLLLLRRLLRLLRLLRLLRRRLRRLRLRLLRLLLLRLLLRLRRRRRLRRRLLRRLRLRLRLLRLRLLRLLLLRRRLLRLRRRLLLLRRRLLRLLLLLRLLRRLLLRLRRRRLRRRRRLLRRRRRRRLLLLLLLLLLLLRRRRRRRRLLLLLLRLLRRLRRRLLRRRRLRRLRLRRRLRLRLLLRLRLLLLLRRLRLRLLRRRRLLRLLLRRRRLLRRLLRRRLRRLLRLRRRLRRLLLLRLRLRRLLRLRRRRRLLRLRRRLLRLLLRRRRLRLLRRLLRLRRRRLLLLLRRRRRRRLLLRLLRRRRRRLLRRLRLRLLRRRLRRRRRRRRRRRLRLRRLRRLLLRLRLRLLRLLLLRLRLRLRRRRRRRLLLRRLRRLLLRRLRRLRRLLRRLLLRLRLLRRRLRRRLRRRLRRRRRLRLRLRLLLRRRRLRRLLLRRLRRLLLLRLLRRLLRRRRRRRLRLLLLLLRRRLRLLLLRLRLLRLLLLLRRRLLRRLRLLRRRRRRLLLLLLLLRLRRLRRLRRLRRLLRRRRRLLRRLRLLLLRRRRRLLLRLLRLRRRRLRRRRRRRLLRRRRLLLLRRRRLRRRLLRLLLRRRLLRLLRLLLRLLLRLRRRLLRRLRLLRLLRLRRRRRLRRRRLLLRRRRLRLRLRRLLRRRRLRLRRRRRRRRRRRRRRLRRRLRLLRLRLRLLRRLRRLRLRLLLRRRLLLRRRRRLLRLLRRRRRLRLRRLLLLRRRLLRRRLRLRRLRLRLRLLRLRLLLRLLLRRLLRLLLRRLLRRLRLRRLRRRRRRLRRLLLRRLRLRRLRRLLLLLRRRRRRRLRLLLRRLRRLRLLLRRRLRRRRRRRRLRRLRRLLRLLRLRRLLRRRRLRLLRLRLRRRLRLLLRLRRRLLRLLLLLRLLLRLRRLRRLLRRRRLRRLRRLRLRLLRRLLLRLLRRRLLLRRRRRLRLRRRRRRLLLLRLRLLLLLRRLLRLRLLLLLRRRRLLRRRLRLLRRLLLRLRRRLLLRLRRRLRRRLLLLLRRLLLRLRLRLRRRLRLLLLLRLLRRLLLLRLLRRLRLRLLLRLLRLLRLLRRLRLLRRRRRRLRRRLRLRLLRRLLLRLLLRRRLLLLRRLRRLRRRRLLLLLLLRLRLLLLRRLRRRLLLRRRRLRRRRRRLLRRLLLRLRLRLLLLRLRLLLLLRRLLLLLRLLRRLRLLRLRLRLRLRRLLRLLLRRLLRRRRRLRLRRRRRRLRLRRRLRRLLRRLLRRLLRRRLRLLLRRRLRRRRRRLRLRLLRLRLLRRLRRLRLRLLLRRLLRRRLLLRRRLRLRRLLLRRLLRLRLLLLRRLLRLRRRRRLRLRRLLRRRRRRLRLLLRLRRLLRLRLRLLLRLLLRLRRRLLLLRLLRLRRRLRRLRRLRRLRRRRLRLRLLLRRLRRRRRRRRLRRRLLRLLLRLRRRRLRRLLLLRLLLRLRLRRLRRLLRRRRLLLLRRRRLRLLRRRRLLRLLRRLRRRLRRRLLLRRRLRLRLLLLRLRRLRLRRRLLLLLRLLRLRRLLLLRLRLLRLRLRRLLLRRLLLRRRRLRRRLRLLLLLLLRRLLRRLLRRRLRLLLLLRLRRRRLRLRLLLLRLRRRRLRRRLLRLLLLRRRLRRRRLLRRRRRRLRRLLRLLRRLLLLRRLLLLLLRLLLLLLRRLRRLRLLLLRLRRLLLLLRRLRLLRLRRLLRRRLLRLLRRRRRLLLRLLRLRLLLRRLLRLRLRRRLRRRLLLRRRLRRRLLRLRLLLLRLRRLLRLRRLRLRLLRRLRLRRRRRLLRRLRRRLLLRRRLLLRRLLRLLLRLLLRLRRRLLLRRRLLRLLLRRRLRRLLRLLRLLLLLRLLRLLRRLLLLRLLRLRRRRLRRRLLLLLRRLLRLLRLLLRRRRRLLLRLRRLRLLLRRLRRRLLLLRLLRRLLRLLRLRRRLRRLLLLRLRLRLLLLRRLRRLLRRRLLLLRLRRRLLLLLRRRLRRRRLRRRRRRLRRLLLLRLLRRLRRLLLRRLRRRRRRRRRRLLRRRLLLRRLLLRRRLRRLLRLLLLRLLRLRRRLLRRLLLRRRLRLRRLRRRLRRRLLLLRRRRLLLRLLLLRRLRRLRRRLRRRLRRLLRLRLRLRLLRRRRRLRLRRLLLRRLLRLLRRRLLLLLLRLRRLRLRLRRRRRRLLLRLRLRLRLLLLLLLRLRLRRLRLLRLRRRRRLLRLRLLRLLRLLRLRRRRLLLLLLLLRRRRRLLLLLRRRRRRLLRLRRRLLLLRLRRRLLLRRRLRLRLRRLLLLLLLLLLLLRLRLLRLLRRRLRLRLRRLRLRLLLRLRRRRLRRRLLLLLLLLRRLLLLLLRRRLLLRRRLRRLLLRRRRLLRRRLRRRLRLRLLRRLLLRLRLLLRRRLLRLLRRLRRRLRRRRRLRRRLRLLLLLRLRLLRRRLLRLLLLRLRLLLRRLLLLLLLLLRRRRLRRLLLLRLLLLRRRLLLLLRLRRRLLRLLLRRLLLLLRLLLLLRLRLLLRLLLRLRLLLLRRLRRRRRLLLLRLRRLRLRRRRRRLRLRRLLLLRLLRRRLLLLLRLRLRRRRLLRRLLRLLRRRRLRRLLLRLLRLLLRRRLLRLLLRRRLRRRLLRLLLRLLRLRLRLRRLRLLLLRRLRLRLRLLRLRRLLLRLRRLRRLLRRLRLRLRLRLRRRLLRRRRRRLLLRLRLLLRRLRRLRRRLRRRLRLLRRLRLLRLRRRRRLLRLRLLLLLRLLRRLLLLLRLLRLRRRLLLLLRRLRLLRLLRLLLRLRLRLLRLLRLRLRLLRLLLLRLLRLLRRLLRRLRRRRRLRLLLRLLRRRLRRLRRLLLRRRLRRRRRLLRLRRLRRLLRLRRRLLRLRRRLLRRLLLRLRLLRLLRLRRLRRLRLLRRRRLLRLLLLLLRRRRRRLLRRLRRLLRLLRRRLRRRLRRLLRLRRRRLRRLLLLLLRRRLRLRLRRRLRLRRRRLLLRRLLLLRLLRRRRRLRLRLLLRRLRRRRRRLRLLLRLLRRLLRRRLRLLLLRLRLRLRRRLRLRLRRRRRLLLRLLRLRRLLLRRLLRLRLLLRLLRLRLLLRRLLLLLRRLRRRRRRLRRRRLRRLLRRLLRRRRRRLLRRLLLLRRLRRLRLRRRRRLLRLLLRLLLLRRRRRRLLLLRRLLRRRRRLLLRLLLRRRRLLRLRLRLRLLRLRRLRLLRLRLRLLLRLRLLLRRLRLRLLRLRRRLRRLRLLLRLLLRRLLLLRRRRRLLLRLRLRRLRLRRLLRLRRLRRLRRRRRRRLLLLLRLRLRLRRRLRLLRRRRLRRRLLLRRRRRLRRRLRLLLRLRRLRLRRLLRLRRLLLLRRRRLRRRLLLLLRLRRRLLLRRLRLRLRRRRRLRRLRLLRLLRLLLRLLRRRRLLLRRRLRLLLRRLRLLLLRLRLRRLLLLLRRLLRRLRRRRRRRLLLLLRLLRLLRLLRRLRLLRLLLRRLRLLRRLRRLLRRRLLRLLRRRLLLLRRLRLRLRRLLRRRRRRLLRLRRLLRLLLRRLLRRRLLLRLRRLLLLRRLLLLRRLLRRRRRLLRLRLLLRLRLRLRRRRRRLRRRRLLLLLRRLLLLRRRRRLLRRRRRLRRRRLLRLLLLRRLLRLRLLRRRRLRRRRLRLRLLLLRLLRRRRLLLLRRLRLRLLLLLRRRRLRRLRRLLRRLRRLRLRRRLRRRRRLRLLLRRLLLRLRRLRLRLRLLLLRRLLLRRLRRRLRRLLLRLRRLLLLRRLRRLRRRRRLLRRLRRLRLLRRLLLRRRRRRRRLRLRRRLRRRRRLLLLRRLLLRRRRRLRLLLLLLLRLLRLRLRRLLRRLRRLRRLRRRRLLLRLRRRLLLRLRRLLLLRRRRRRRRRRRLLRLRRLRLRLRRLRLLLLRRRLLLLLLLRRLLRLLLRRRLRLRLRRLLRLLRLRLLRRLLRLLLLLLLLRRLLLRLRLRRLLRLRLLLLRLLLRRLLLLLLLRRLRRLRLRLRRRRRRLRRRLLRLLRLLRRRRRLLRRLLLLLLRLRRRRRLRLRRRLLLRRLRRLRLLLLLRRLRLLLLRRLLLRRRLRRRRRRRLLLLRRLLLLLLRRLLRRRRLLLRRLLRLRRRLLRRLLRRRLRLLLLRLRLRRLLRLRLRLRRRLLRLLLRRRRLLLRRLLRRRRLRRRRLLLLRLRLLLRRLRLRRRRRRLLLLLRLRRRLRLRLLLRLRLRLLLLLRLLRLRLRRLLLRLLRRLRLRRRLLLLRLLRLLRLLRLRLLRRRRLRRLRRLLRLRRLRLRLLRRLRLRLLLLLRRLRRRRRLRLRRRLLRLLLLRRRRLLRLRRLLRRLRRLRLRRLLRRLRLRRRLRLLLLRLRLLLLRRLLRRRRLLRLLLRRRRRLRLRRLLLLRRRRRLLLLLRLRRRLLRRLRRLLLRLLLRLRRRRLLRRRLRLRRRRLRLLLRLLRRRLLRLRLRRRRRLRLLRRRRRLRRLLLRLRLLLLRLRRLLLRLLRRRRRRRRRLRLRLLLRRLRRLLRRLRRRRLLLRRRLLRLRRRLRLRRRLLRRLLLLRLRRRRRLLRLLLRLLRRLLRRRLRRRRLLRLRRRLRLLRRRRLLRLLLLRRLRLRLRRRRRRRLRRLLLRRRLLLRRLRLLLRLLLRRRRLRLLRLLRRRRLRRLLLRLRRLRLRRRLRRRRLRRLLRRLLRRLRLRLLLLRRRRRRRRRRRRRLRLRRRLRLLLRLLRRLLRRLLRLRLRLLLLRLLLRRRLLRRRRRLRRRRLLRRLLLLLLRRLRLLRLRRRRRRRLRLLLLRLLRLRRRRLLRLRRRRRRLLRLRRLRLLLLLLLLLLLLRRLLRLRRLLRLRLLLRLLLRRLRRLRLLRLRRRLLLLRLRRRRRRRLRRLRRLRRRRLLLRRRLRLLLLLLLLRRRLRLRLLRRLLRLLRLRRLRRLLLRRLRRRRLRRLRLLLLLLLLRRRRLRLRLRRRLLLRRLLLRRLLRRLRLLLRRRLLLRRLLRLRRRLRLLLRRLRLLRRLRRLLLLLRRRRRLRLRLRRLRRRRLRLRLLRLLRRRLLLRRLRRLLRRRRRLLLLLRLRLRRLLRRLRRRRLRLLLLLRLLLLLLRLRLLRLRRRRLRRLRLRRRLRRLLRRLRLRLLLLRLLLRLLRRRLLRLRLLRRLRRRLLRRRRLRLRRLRRLRLRRLRRLLLLLRRRRRRLLLLRLRRRRRRRLRLLLLRLRLRRLLRRRLLLLRLRLLRLLRRRRLRRLRLRRRRLRLLRRLLRRRLLLLLLRRRRLLLRRRRLRLLLLRRLRRRRLLLLRRRLLRRLRRLRLRLLRRLRRLLLLRRLRRRRRRLLLRLLLLRRLLRRLLLRLLRLLRLLRLLRRLRRLRLLRRLRLLLRRRRRRRRLRLLRRRRRRLRLRRRLLRRRRLLRLRLRRRLLLRLLLLRLLLRLLRLLLLLRRRLRLLLRRRRLRLLLLLRLLLRLRRLLLLRLRLLRRLLLRRLLLRRLRLRLLRLLLRRLLRLRLRRRLLLLRRLLLLRRRLLLRRRLLLRRLRLLRLRLRLRRLRLLLRLRRLLRRLRLLLRRRRLRLLLRLRRLLLRRRLRRRLRRLLRLRLRLRLRLLLRRRLLRLRRLRLRRRLRRRRLLLLLLRRLLLLLLLLLLLRRRLLLLRRRRLLLRRRLLRRLLRRRRLLLLLLRLRLLRLRLLRRRRRRLRRLLLRLLLRLRLRLLLRRLLRRRLLRLLRRLLLLLRLLLLRRRLLLRRRLRRLLLRLRLLRRRRRLLRLLLRRLLRLRRRLRLLLLRLRRLLRRRRLLLLLRRRLLLLRLLRRRLRLRRLLRLRLLLLLRRRLLRRLRRLRRLRRLRRRLLRRLLRLRRLRRLLRRRLRLLLLLLLRLLRRLRLRRLRLLRRRRRRRRRRLLLRRLLRRLLLLLLLRRLLLLLLLLLRLLLLRLLRLRRLRLRRLRLRLRLRLRLRRLRRRLLLRLLRLRRRRLRRRRRRRRLRLLLLLRRLLLRLLRLRLRRLLRRLLRLLLLLLLLLRLLRRRLRRRRRLRLLLLLLRRRRRLLRRRRLRLLRRLRLLRLLRRRLRLRLRRRLRLRLLRLLLLLRRLRRLRLLLRLLRLLRLRRLLLRLRRRLRLLLRRLLRLRRLRLLLRLLLRRRRRRRRRLLLRLRRLLRRRLLRRLLLRRLLLRLRRLLLLLLLLLLRLLRLRLRRRRLRLRLRRRLRLRLLRLLLLLLLLRRRRLLLLLRLRLLRRRLRLLRRRRLLLRLRRRRRLLLRRLRRRRRLLRRLRRLLLLRRRLLLLRLLRRLRRRRRLLRLRRLRLRLLLLLRLLLLLRLLLRLRRRRLLRRLLRLLRLLRRLRLRRLLRLLLRRLRLLRLRRLLLRLRLLLLLRLRRLRLRRLRLRLLRRLLLRLRLLLLLRLRRRLLLLRLLLRLRRRLRLLRLLLLLLLLLLRLRLRRRRRLRRLRLRRRLLRLLRRRLLRLRLLRLRRLLRLRRRRRRLLRRRRRLRRRRLLLLRRRRRLLRLLLLRRLRRLRRRLRRRLLRLLRLRRRLLLLRLRRRLRLRLRLLLLRLRLLRLLLLRLRLLRLRRLRRRLLLLRRRLLRLRLRRLRRLLLLRLLLLLRRRRRLLLLLLLRRRLRLRLRRLRRRRRLLRRRRRLRLRRRRRLRRRLLRLRRRLRLRRRRLRLLLRRRLRLRLLLRRRLLRRLLLLRRRRRLLRLLLLLLRLLRLRLLLRRLLLLRRLRRRRRRLLRRRRRRLRLLRLRLRLLRLRLLLRRLLLLRRRRLRLRRLRLRLLRLRLLRRLLRLRRLLRLRRRRLRRRRLLRRLLRRRRRRLLLLRLLRRRLLRRRRRLLRLLRRRLLLLLLLLLLRLRLRRLRRRRLRRLRRLLLRRLRRLRRLLLLLLRLLRRLRLLLRRLRRRRRRRLRLRLRRLLRLLLLRLLLRLLLLLLLRRLLRRLLRLLRLLRLRLRRLLLLRLLLLRRLRLLRLLRRLRLRRLLRRRLLRLLLRLRLRRRLRLLRRRRLLRLRRLRRLRLLRRRRRRLLRLLRLRLLRRRRRLLLRRRRLRLLLLRRRLLLRRLLRRRRLRLLLRLLLRLLRRLLRLLLRRRRRLRLLRRLRRRLRLLRRLRLRLLRRLRRRLRRLRLRLRRLRLLRLRLRLRLLRRLRLLLLLRRRRRRRLRLLLLLLLRRLRLLRLLLLRRRRLLRLRLRLLLRRLRRRLLLRLRLRLRRLRLRRLLLRRLRRLRLRLLRLRLLLRRRRLRLLLLRRRRLRLRLRLLRRLRRLLRRLRLLLLRRLRRLRLRLRLLLLLRRLRRRLRRRLLRRLLLRLRLLRLLLRRLLLRLRRLRLRRRRRRRRRRRRRRRRLLLLLLLRRRRLLLRLRLRLLRRRLLLLRLLLLRRLLLRRLRLRLRLRLLLLRLRLRLLRRLRLLRRRRLLLRLRLLLRRLRLRRLRLRLLRLRLLRLLLLRLLLRRRRRRRLRRRRRLRLRRLRRRLRRLLRLRRLLRRRLRLRRLLRLLRLLRRLLRLLRLLLRRRLLLLRRLLRRLRLRRLLLLRRLLLRRRRLRRRLRRLLLRLRRLLLLRLRRLRLRRLLLLLLLLRRRRLLRRRLLLRRRLLRRLRLLLRRLLRRLLLLRRRLRLLLLRLRLRRRRLLRLLRRLLRRLLLLRRLLLRLRLRRRRRRRLRRLRLLRRRRLLRRRRRLRLRLLLLRLRLLLLRRRRRRRRRRLLRRLRLRLRLRRLRRLRRLRLRLLLRRRRLRLLRLRRRRLRLRLLRRLLLRLLRLLLLLLLRRRLLLLRRLLLRRLLLLRRRLLLLLLLRRLRLLRLRLRLRRLRLRRRLLLRLLRRRLLRLLRLRRLRLLRLRLLRLRRLRLRLLLLRLLLLRLRLRRLLLLRRLLRLLLLLRRRLRLLLLRRLRLRRLRLRRLLRRLLLRLRRLLLLRLRRRLLLLLLLLRRLLLRLRLLLRRLLRRRLRRRLRRLLRRRRRRLRRRRRLLLRLLLRRRLLRLLLRLRRLLLLRLRLRRLLRRLLLRLLRRLRLRLRRLRRRLRLLLRRLRRRRRRRRRRRLRRLRLRRLLLRLLRLLLRRLLLLRRRLLRLLLRLLRLLRLLRLRLRRRLLLLLRRLRLLRLRLRRRLRLLLLRRLRRRLLRRRRLRLLLRRRLLRLLLRRRRLLRLRLRRRLRRRLLLLRLRLRRLRLLRRLLRRLLLLRLRRRRRLLRRLRLLLLRLRRRLRLRRRLRLRLRRLRRRRRRRLRLRRLLLRRRLRLRRRRRLLRRLRLLRLRRLRLRLRRLRRRRRLRLRRRLLLRRLLLRRRLRLRLRRLLRLRLRLRLLLLLLRRLRRLRRRLLLLRLLLLRLRLLLLLLRLLLLLLLLLLLRLRLLLRLRRRRLRRRLRLRRLLLLRLLLRLRRRLLRRRLRRRLLLRLRRRLLLRRRLLLRLRLLLRLRLRLRLRRLRRRRRRRRLRRLRRLLLRRRRLRLLRLLRRLLLRLRRLRRLRRRLRRLLRRLRLRLRLLLLRRLRRRRRRLLRRLLLRLRLRLLRRRLRLRLLLRLLLLRLLRRLLLLRRLRRLLRLRRRRLRLRLLRRRLRRLLLLLLLLRRLRLLRRRLRRRRRRRRRLLRLRRRLRLRLLLLLLRRLRRLRLLRRLRLLRRRLRLLLRRRLRLLRRLRRLRLLLRRLLRRRRRRRLLRRLLRRLRRRRLLLLRRRLRLRLLRLRLLRLRRLRRRRLLRRLLLRLLLRRLRLLLRLLLRLLLLLRLLRLRRLRRLLRRLLRLRLLRLLLRLLLRRLLLRLLLLRLRRRRLRRLRLLLRLRLRLLLRRLLRRRRRLLLLRLRLRRRRRLLLRRLLRRRLRRLRLLRRRRLLRRLLLLRLLLLRLLRRRLRRRLLLLLRLRRLRRRLRRRLRRLLLLLLLLRLRLLLLRLRLLRLRRLRRRLLRRLRLRRRRRRRLLLLRLRLLRRLRRLRLLRLLRRLLLLRRRLLLLRLRRRRLRLRRRRLLLLRLRRLLRLLLLRLRRRLLLLLRRLLRRRRRRRRLRRRLRLRRLRLRRLRRRRRRLRLLRRLRLRLLLRLRRRLLLLRLRRRLRRLLRRLLRLRRLRRLLRLRLLRRLRLRLRRRRRLRLRLRRRLLRLRLRRLRLRLLRRRLRRRRLLRLLLRRRRRLLLLRLLRLLLRRRLRRRRLLLLLLRLLRRRLLRLRRRRRRRRLLLRRRLLRRRRRRRLLRLRLLRRLLRLRLLLRLRLRRRLRRLLRLLRRRRRLRRLLLRRLRLLRLRLRLLLLLRRRRLLRRRRLLLLLLRRRRRRRLLRLRRRLLRRRLRRRRRLRRLLRLRRRLLRLRRLRLLRRRLLRLLLRLRRLRRRRRLLLLLLLRRLLLLRRLRLLRLLLLLLRLRRLRLLLRRRLRRRLRRRLLRRRLRLLLLLLRLLLRRLRRRLLLRRRRRRRLLLRRLLLRLLRLRRRLLRLRRLRRLLRLLRRLRLLLRLLLLRRLRLLLLLLLLRLRRLRLRLRLLRRLRLRRRRLLLRRRLRRLRRRRLRRRLLRRRRLRLLRRLRRLRLRRRLLLLLLLLRLRLRRLRRLRLLLLLRLLLLRRLLRRLLLRRRLLRLRRRRLRRRLLRRRRRRLRRLLRLRLRRRLLRRRRRLRRLLRRLRRLLLLRLRRRLRLRLLRRLLRLRLRRLLRLLLLLLRLLLLRRRRRLRRRRRLLRRLRRRLRLLLRRRLRLLRRLLLRLLRRLRRLRRRRLRRLRLLRRLRRRLRRRRRRRLRRRLLLRRLLRLRLRRLRLRLRRLRRLRRRRLLLRLLLRRLLLRRLRRLRRLLRLRRRLLLRRRRRRLRRLLLLLRRRRLLRRRRLRLRLLLRRRRRRLLRLLRRLLRLLLLRLRRLLRRRLRLLRRLRLLRLRRRLLLRLLRRLLLRLLRLLRLLLRLLRRRRLLLRLLLRRRRLLRLLLRLLLRRLRRRLLRRRRRRRRLLLLRLLLLRRLLLLLRLLLLLRRRLLLLRLRLRRLLLRRRRLLRRRLLRLLRLLRLLRRRRLLRLRLLRLLRLLLLRRRRLLRRLLLLLLRRLRLRLRRRLRLRRRLRLRRRRRLLRRLLLLRLRRLLRLLRRRRRLRLLRRLRRLRRRRRRLLLRLRRLRLRRLLLLRLLLRLLRLLRLRLLRLLRRLLLLRLLLLLRLRLRLLLLLLLRRLRRLLLLRRRLLLRLLLRRLLLRLLLRRRRLRRLRRLRLLLLLRRRRLRLLLLRRRLRRLRLRLLRLLLLLLRLLLRRLRLLRLLRLRLRLRLRRLRRLRRLLLRLRLRRLRLRLLRRLLLRRRLLRRRLLRRRRRLLRRLLRRRLRLRRLLLLLRRLRRLRLLLRLLLRRRRRLLRRLRRRLRLRRLLRRRRLRLRRLLRRRRLLRLLLRRLRLRRRLRLRLLRLRRLRLLLLRRLLRLLLRLLRLLLRLLLRRRRRLLLRRLLRLLRLRRRRRLRLLLRLLLLLLRLLRRLRRLRRLLLRRLLRLRRRLRRRLLRLRLLRRLRLRLRLRRLLRLLLRLLRLRRRLLRRRRRRLRLLRLLLRRLLLLRRLRLLLLLLLLLRRRLRLLRRRLLRLLRRLLRLRRRLLRRRRLLLLLRRRRLRRLLRLRRRRRLLLLRRRRLLLRLRLRLLLLLRLRRRLLLRLRRRLLRLLLRLLRRLLRRRLLRLLRRRLRRRRRLLRRLLRRLRRLRRLLLRLRLRRRLRLLRLLRRLLRRRLLLRRLRRLRLLLLLRLLRLRLLRLRRLLLRLRLRLRRRLLRRRRRLRRRRRRRRRLLLRLRRRRLRRRRLRRLRLRRRLRRLLLRLRLRLRLRRRLLRRRLRRRLLRLLRRRRLLRLRRRLRLLLLLRRLLLLLLRLLLRRLRLLRRRRRLLLLRLLRLRRLRRRRRRRLLLLRRRRLRLRRLLRRLLRLRRLRLLLLLLLRRRLRRLRRRRRRLRRLLRLLRRLLLRRLRRLRLRRRRRRRRRLRRLLLRRRLLRRRLLRRLLRLRLLRRLRLLRLLLLLLRRRRLRRLLRLLRLLLRRRLLRRRLLRLLRLRLRLRRRRLRLRLRLRRRLLLLRLRRLLLLLRLLRLRLRLLLLLRLRRRLLRRLRRLLLRLRLRLLLLRRRLRRLRLRRLLRRRLLLRRLLRRLLRLLLLRLRRRRRRLRRLRRLLLRRLLLRLLRLLLRRLRRRRRRLRLLLRLRRRLLLRLLLRLLLRRLRRRLLLLLLRRRRLRLLLRLLLLRRLLRLRRLRRRRLRLLLRRRLRRRRRRRLLLRRLRRLRRRLRLRRLLRRRLRLRRRLRRRLLLRRRLLRLRLRLLLLLLRLRRLRLRRLLLRRLLLLRLRRRRRLLRRLRLLLRLLRLLRRRLRLRRLLRRLLRRRLRRRLLRRRRRRRLLRLLRRLLRLRLRRRLRLRRLLRLLRLRLRLLLRLLRRLLLRLRRRLLRRLLRRRLRLRLRLRLLRLRRRLLLLRLLRLRLLRLRLLRLRLRRLRRRLLLLRLLRLRLRRRRRLRLLRRRRRLLLLLRRRRLLRLRRLRLRRLLLLRLLLRRRRRLLLLLLRLLRRLLRLLLRRRRRRLRLLRLLLRRLLLRLRLLLLRLRLLRRLRRRRRRRLLLLRRRRLRRLLRLRRLLLRLLRRRRLRRLRLRLRRLRRRRRLLRLLLLRRLLRLRRRLRLRLRLLRRRLLLLRRRRRLLLRLRLLRLRLRLLRLLLLLLRRRLLLRRRRRLLRRLLLLLRLLRRRRRLLLRLRRLRLLRRLLRLLRRRRLLLRRRRRRRRLLRLRLRRLLLLRLRRLRRLRLLRLLLRLLRRLLRRRRLLLRRLRRRLLRRLLLRRLRLLRLLLRLRLRLRRRLLLRLRLRLLRRRLRLLRLRRRLLRLRLLLLLRRRLRLLRLLRLRLRRLLLLLRLLRRRLRLRRLLRRLLLRRRRRLRLRRRRRLLRLRLRRLLRLRRLLRRRRLLLRLRRRRLRLLRRLLRLLRRRLLLLLLRLLRLRLLLRLRLLLRRRLLLRLRLLLRRRRRRLLRRRLRLLRRRLLLRLLRLRRRLRLLLLRRRRLLRLRRRLRRLLLLLLLLRRRRRRLLLRLRLRLLLLLRRRRRLLLRLLLRLLRLLRRRRRLRRRRLRRRLRRLRRRRLLRRLLLRLRLRLLLRRLLRRRRRLRRLRLLLRLRRRRLLRRLRRRLRRLLLRLRLLLLRRLRRLRRRLLRRLLLRLRRLLLLRRLLLRLRLRRRRRLRRRRLLLLRRRRLLLRLRRLLLRLRRLLLRLLLRRRRRLRRRRLLRLLLRLRLLLLLRLRRLRLLRRLLLRRLRLLRLLRRLLRLRRRRRLRRRRLLLRRRLLRRRRRRLLLRLLLRRLRLLRRLRRLRLLRLRLRRLLRLRRLRLRLRLRLRRLRRLRLRLLRRLRRLLLLLRRLLRLRLLRLLRRLLRLRRRLRRLRRLRRLLRLRRLLLRLLRRLLLLRRRLRLLRRLRRRLLLLRLRLRRLRRRLRRRRRLRLRRRLRRRRLLRLLRLLLRLLRRRRRRLRRRRLLRLLRRLRRRLLLRRRRLRLRLLLRRRRLLLRLRRRRLRRLRLLRLLRRLLRRRRLLRRLRRRRRRRLRRLRRLLLLRLRRRRLLRRLLRRLLRLRLRLRLLLLRLLRLLRLRRLLLLRLRLRLRLLLLRLRRRRRLLLRRLLRLLLRRLLRRRLLRLLRRRLRRLLLRLLLLRRRLLLLLLLLLLRLLRLLRLRRLLLRLLLRLLRLLRRLLLRLLLRRRLRLLLRLLLRRLLLLRRRRLLRRLLRLLRRRRRRLLLLRRRLRLRRRLLLRLLRLRRRRRRLLLLLLRLLLRRLLLRRRLRLRLLLRRRLLLRLRRRLRLLLRLLRRLRLLLLRLRRLLLRLRLLRRRLLLRRLLRRRLRRLLLLRRLRLRLRRLLRLLRLRRRRLRRLLLLRLLLRRLLRLRLLLRLLLLLLLLRLLRLRRRLRLRRRRLRLRRRLRLRLLLRLRLRLLRRLRRRLRLRRRRLLLLLRLRLRLRLLRRRLRLRLLLRLLRLLLLRRRRLRRRLRLRLRLRRLLLRRLRRRLRRRLLRLRLRRLLLRLRRLLLLRRLRLLLRLRRLRRLLRRLLLRRLRRLRLLRLRLLRLRRRLLRLRRLRLLRLRRRLLRRRRRRRRLRRRLRRLRRLRLRLLLRLRLRRRLRRRRLLRRLLRLRLRRLLRLRLLLRRRRRLLRLRLRLLRLLLRLRLLRRLRLRLLLRLRRRLRLLRRLRRLRRRRRRLLRLLRLRLLRLRRLRLLRRRRRLLRRLRLLRLRRRLLRRRRLLLRRLRLRLLRLRLLRLLLRRRRLLLLLLRRLLLLLRLLRLLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLRLLRRRLLRRLLLRLLRLRLRRLRRRRLLLRRLLLLLRLRRRLLRRRRRLLLLLLRLLRRLLRLLLLRLRLRLLLRRLLRRLLRRLRLRLLRLRRLRRRLRLLLRRRRRRLLLLLLRLLLRRRRRRLLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLRLRRRRLLLLLRRLRRLRRLLLLRRLLRRRLLRLRRRRRRLRLLLLRRLLRLRRLLRLRRLLLLRRLRLLLLRRRRLRLLRRLLRRLLLLRLLLLRLRRLRRLLRLLRLLLLRLLRLRRRLRRLRRLRLLRRRRLRLRLLLLLRRRRRLLLLRLLRLRRRRRLRLRRLLLLRLLRLRRLLRLRLLLLLLRRLLLRLRRLLLLRLLRLRRRRLLLLRRRRRLLRLLLRLLRLRRLLRLRLRRLRRRRRLLLLRLRLRLLRRRRLRLLLRRRLRLLRLRLRLLRLRLLRRLRLLLLRLRLLRRLLLLRLLRRRLRRLLRLLLLRRLRLRRLRRLLLLRLLLLRLLLRLRLRLRRRRRRRLRRRRLLRLLRLRLRLRRRRRRLRRRLLRLLRRLLLRRLRLRRRLRRRRLLLLRRRRLLLRRRLRLRRRRLRRRRRLRLRRRRRLLLLRRRRRRLRLRLRLRRLLRRRLRRLLRLRLLLRRRLRLRRRLLLRLRLRLLLRRRRLRLLLRRRLRLLLLLRRRRRRLLLLRLLLLRLLRLLRLLRRLLLRLRLLLRRRLLRLLRLRLRLLRLLRRLLRRRRLLLLRLLLRRLLRRLLRLLLRRRRRLRLLRLLLRLRLRLLLLLRRRLLLRLRLRRLRLRRRLLRRRRRRLRRLLRLRLLRRRLRRLRLRRRLRLLRRRLRLRRLLRLRRRLRLLLLLRRLRRLRLRRLLRLLRLRLRLLRLLRRRLRLLLLRRRLLRRLLRRRLRLLRLRRRLRLRRLRRRRRRRRRRLLLLRRRLLLLLLLRRLLLLRLRLRLLRRRRLLRLLRRRRLRLRLRRLRLLLLLRRLLLRRLRRRLLRLLRRLRLLLLRLLLRLLRRRLLLLRLRRLRLLLRRLLRRRRRRLLRRLRLRLLLRRLLLRLRLRLLRRLRLRLLRRRLLLLRLLLLLLRLLRLRLRLLLRLRLLLRLRRLLRRLRRRLRLRLLLRRLRLLRRRRLLRLLRRLRLLRRLRRLRRLRLRRLRRRRLRLLRRRLLRLRLLRLRLRRLLRRRRLLRLLRLRLLLLLRLRRLRRRLRRRRRLRRLRRLRRLRLLRRRLLLLRRRRRLLLLLRLLRLRLRRLLLLRLLLLRLRLLLRLRRLRLRRRLLRLRLRRRRRRLRRRRRRRLRLRLRLLRRRLRLRRLRLLLRLLLLLLLLRRRRLRRLRLRRLLLRRLRLRLRLRLLLRLRRRLRRLRLLLRRRRLLRRLRLLLLRRRLLLLRLLRRRLLLRLRLRRLLRRLRLRLRRLLLRRRLLLLLRRLRRRRLRLLRLRLRLRRRRLRRLLLRRRLRLLLRRRLRLRLRRLLLLRRLRLLRRRLRLLRRRLLRRLRLRLRRLLRLLRLLRRLRLLRLLLRRLLRRRLLLRLLLRLRRRRLLLRLLRLRLLLLRRLLLRLLRRRRLLLRRRLLRLRLRRLRRRRRRLLRRLLLLLRRRRLLRLRRLRRLRLLLLRLLRRRRLLRLLLLLLLRRRRLLRRLLRLLLRRLRLLLLRLLRLRLLRLLLLRRLLRLRLLLLRRLLRRRRRLLLRRRRRLRLRRLRRLRRLRLLRRLRLRLLRLRRRRRRRLRLRLLLRLLRRLRLRLLRLRLRRLRRLRLLRLLRLRLRRRRRLLRRRLRLRRRRLRRRRRLLRRLRLLLLLRRRRLLLRRLLRRLLLLLLRLRLRRLLRRRLLLRRLRRLRLLLRRRRLRLRLRRLRRLRLRRLRRRRRRRRLLLRRLLRRLLRLRLRRRLRLLLLLRRLLLRLLRRLRRRRRRLLLLLLRRRLRLLLRLLRLRRRLLLLLLLLLLLLRRRLRRRLRLLLLRLRLLRRRLLRRLLRRRRRRLLLLLRLLRLRLLRLLLRRLRRRLLLLRRRLLRRRLLLRRRRLLLLLRLRLRRLRLRLRRLLLRRLRRRLLRLLLLRLRRLLRRRLLRLLRLRRRLRLRLRLRRLRRRLLLLLRRLRLRRLLRLLLRRRLRRLRRRRRLRRLRRRLLLLRLRRRRLRRRLLLRRRLLRLRRRRLRLLRLLRRLRLRLRLRRRLRLRLRRLRLLRRLRRLRRRLRLLRLLRRLLRRRRRLLLRLLRRRLRLRRRLLLLLLLLLRRRLLLRRLRLLRLLRRRLRRLRLLRLRRRLLLLLRLRRRLRLLLLLRRLRLRLLLLRLLLRLLRLRRLRRRLLRLRRLLLRLRRRLLLLRLRLRLLRRRRRLLLRLRRLRLLLLLRLRLLLRLRLLLLRRRRLRRRLLRLRLRLRRRLLRLRLRLRRRLLLLLLLLRRRRLLLRLRRRLLRLRRLRRRRLRLRRLLRLRRRRLRRLLRRRLRLLRRLLLLRRRLRLRRLLRLLRRRLLRLLRLLLLRRLRRLRLLLLLRLRRLLRLRRLRRLLRRLRRRLLRRRLLLLRLRRRRRRLRRLLRRLRLRRLRLLLLRLLRLRRRRLRRLLLRRLLRLRLLRRLLRLLRRLRRLRLLRLRLRLRRRRLLLRLLRRLLLRLLLLRLLRRLLRRLRRLLRRRLLRRRLRRRLLRLRLLRRRLRRLRRLLRLLRLRLLRRLLRLLRLLLRLRLRRLRLRRLLRLLRLRLRRRLRRRLRRLRRRLLLLRLRLLRLLLLRRLLRRLRRRLLRLRLLRLRLLRRLRRRLRRLLRLLRRRLRRLRLLLRRRLRLLRRRRLRRLLRRLLLRRRRLLLLLLRLRLLLRLRRLLLLRRRRLRLRRLRLRLLRLLRRLRRLRLRRLRRRLRRLLRRLLLLRRLLLLLRLLLRLLLRRRRRRLLRLRRLRRRRRRRRRLLLRLRLLRLRRLLLLRLLLRLRRLLRLRLRRLLLRLLLRRRRLRRRRRRRRRLRRLRLLRRRLLRLRLLRRRLRRLRLLRLRLRRLRRLRRLLLLRRRLLRRLRRRRLRRLRRRRRLRRLRRLLRRRLRLRRRLRLLLLRRRRLRLRRRRLLRLLRRRLLRLRRLRLLRLRLLRRLRLRLLRLRRRLLRLLRRRLRRLLLLRRLRLLRRLRLLLRRLRRRLRLLLLLLLLRLRRLLLRRRRRLRRLLLRRLLRRLRRRRLLRRLLLRLLLLLLRLRLRLRRLLRLRLRRRRLLRLLLLLRRLRRRLLLRLLRLLRRRLLLRLRRRLRLLRLRLRLRRLLRLLLRLRRRLLRRLRLRRLRLLRRLLLRRLLRLRRRLLRLLRRRRRRLLRLLLLRRRRRLRRLLLRRRLLLRLLLLLLRLRRLRLLRRLRLRRLLLLLRRRLRRRLLRRLRLLLLRRRRLRRLRRRRLRRRRRRLRRRRLLRLLRLLLLRLLRRLRLLLLRLLLLLLRRLRRRRRLRRRRRRRRLRRRLLRLRRRLRLRLRLLRLRLLRRLRLRRLRRLRLRLRLLRRRRLRRRLRRLRRLRRRLLRLLLLRLLRLRLLLRRLRRRLRLRRRLLLLRRRLRLLRRLLLRLRRLRRLRLLLLRLRLLLLLRRLRLLRLRLRRRLLRRRRLLRLRRLRRRLRLRLLRLLRRLRLLLLLLRRRLRLLRRLRRRRRRRLLLRLRRLRRLLRLRLLRLRRLRLRLRRLLLLLRLLLLLLLRLLLRLRLLRLLRLRRRLRRLLLLRRLLRRRRLLRRLLLRRRRLRLLRRRLRRLLRRLLLRLRRLLLLLRLLLRLLLRLRRRRRRLLLLLLLLLRLRRLRRRRLRRLLRLRRLLLLRRLRRRLRLRRRLRLRLLRRRRRRLLLLRRRRLRLRLRLLLLLRRLLLLRRRRRRLRLLRLLRRLRRLLRRLLRRLRRLRRRRRRRLLRLRLRRRRRRRRRLRLLLLLRRLRLLLRRRLLLRRRLLLRRLLRRLRLLLLLLLLLRLLLLRRLRRRRLRLRRLRLLRLLLRLRLLLRRLLLLRLLRLLLRLRLRRLRLLRLLRRLRRLLRLLRRRRRRRLLRRRLRLRRLLRRRRLLLRRLRLRLRLLLRLRRRRLLRRLRLLRRLLLLRRLRRRRRLLLRLRLLRLLRLRLLRLRRRLRRLRLLRLLLRLLRRRRRLLRRRLLLLRRLRLLRLRRLRLLLLRRRRRRRRLLRRRLLRRRLLRLLRRRRRLLRRLRLLRLLLRRRRRLRRRRLLLRRLLRRLRRLLLLRRLRLLRRLRLRRLRRRLRRLLLLRLRRRRRRLLRLLRRLLRLRLLRLLLRLRRRLRRLLRRRLRLRRLRRLRRLLLRLRRRLRLRRRRRLLRRRRLRRLLLLLLLRRLLLRLLLLRRLLRLLRRRLRLRLLLRLRLLLRLLLRRLLLRLRRRLLRLRLRLLLLRRRLLRLLLLLLLRRRRRRLLRLLRLRLRRRLRRRLRLLRRLLRLRLRRRLRRLRRRRLLLLRLLRRLLLLLLRRRLLLRLRLLRRLLLRLLLLRRLRRLLLLLLRLLRRLLRRRLLRLRLLRLLRLRRLRRLRLLRLLRLLRLRRRRLRRLRLRRRRRLRRRLLLLRRRLRLRRLLRRRLRRRRRLLRRLLLLRRLLRRRLRLLRLLLRLRRLLLLLLLRRLLRRLRLRLLRRLRRRLRLLRRRLLRLLRLLLRRLRRLLRLRLRLLRLLRRRLLRRLRRLRLLRRRLRLRRLLRLRRLLLLLRRLLRRLRRLRLLRRLLLLRRRLRRLLLLRLRRRLRRLLRRRLLLRLLLRLRLLLLRRLLLRRLRRLLRRLLLRRRLRLRLLRRRRRRRLRRRRLRRRRRLRRRRLRRRRLLRRRRLRRLLRLLLLRLLRLLLRLLLRLRLRRLRRLRLRRRRLRRRRLRLLRLRRLLRLLRRLLRRRLRLLRRLRRRRLLLRRLLLLRLLLLRLRLLRLRRRRRLLRRLRRLRRRLLRRRLRRLLRRRRLLRRLLLRRLLLLRLRLLRLLRLRRRLLRRRRRRRLRLLRLRLLLLRRRRLRRRRLRRLRLLRLRLRRLLLLRLLRLLLLRLLLLLLRLRRRRRLLLLLLRLLLRLRLLRLLRRLLLLLLRLRLLLRLLLLLLLLRLRRRRLRRLRRLRRRRLRLLLRLRLLRLLRLRRRRLLRLRLLLRRLLRRLLLRLRRRLLRRLRLLRRRLLRRLLLLRRLRRLRRRRRLLRRRLRRLLLRLRLLRRLRRRLRLLLRLLLRRLLLLRLLLLRRRLRLRLLLLLLLLRLLLRRLLRRRRRRRRRRLLRLLLRRRRRRLRLRLRLLRRLLLLRLRRLRLLRRLLLLLLLLLRLLLLRLRRRLRLRLLRRRRRLRLRRLRLLRLLRLRRRRRLRRRRRRLRLLRRRLLLRLLLRLLRRRLLLRRRLLRLRLLRLLLRLLLLLLLRRLRLRRLRLLRLRRRLRLRLLLRRLLRRLRRLRRRRRLLRRRRLRRLLRLLLRLRLRRRRRRLRLLLRLLLLRRLRLLLRRLLLLRLLLRRLLLRLLLLRLLRLRRLRRLLLRRRLRLLLRRRRLLRLRRRLRRLLRRLRLRLRRLRRRRRLRLRRRLLLLRRLLLLRRRRLLLRRLRRLRLLRLLLRLLLRLRLLRLRRRLRRLRLRRRLRLRLLLRLLLLRRLRLLRLRLRLRLLLLRLLRLRRRRLRLLLLLRLRRLRLRLRLRLLRRLRRRRRLRLRLRLLRLRRLLRRLRLRLRRRLLLRLRLRRLRRLLRRLLLRLRRLLRRRLRRRRLRRRRRRRRLRRLRRRRLRRLRRLLRRLLRRLLLLRRRLLLLLLLRRRRRLLRRRLLLLRRRRLRRRLLRLLRLRLLLLRRLLLRRLLRLRLLRRLRRRRRRLLLLLRRRRRRRLRRLRRLLLRRRLLLRRRRLRLRLLRLRLRRLLLRRLRRRRLLRLRRLRLLLRLLLRLLRLRRRRRRLLLLLRLLRLLRLLLRLRLLRRLRRLRLLRRLLRRLRRRRLRLRRRLRRRRLLRLRLRRLRRLLLRRRRLLRLRRRLLRRLRRLLRLRLLLRLRRRRLLRLLLLLLLRRLLLLRRRLRRRRRLLRRRRLLLRLRLLLRRRLRLLRLRRRLLRRRRRRRRRRLLRLLRLRLLLRLLRLLRRLRRLLLRLRRRRRRLRRLRRLLLLRLLRRRLLLRLRRRRLRRLRLRRRRLLLRLRLRLRRRLLRLLRRRRRRLRRLRRLRLLRLLLLLLLRLLRLLLRLLRRLRRRLRLLLLRLRRRRLLLLLRRLLRLRLLLLRRRLRLRLRLLRLRRRRLRRLRLRRLRRRRLLLRRRRRRRLLLRRRRLLLLRRRRLRRRLRRLLLRLLRLLLRLRRLRRRRRLLRRLLLLRRRLRLRLLRRLLLLRLLLLRRRLLRRRRLRLRRRRLRRRLLRRRRLLRLLLLLRRLRRRLRLLLRRRRLRLRRLLRRLLRRRLRRLRLRRLLRLRLLRLLLRLRLRLRRLRRRLLLRLLRRRRRLLLLRLRRLRLRRLRLLRLRRRLLRRRRRRRLLLLRRRRRRLLLRRRLRRLRLRLLLLRLRLRLLRLRLLLLLRLRLLRLRRRLLRLLLLRRLRLLRLRRRRRRLRLLLRRRLLRRLRRRRRRLLRLRLLRLLLRLLLRLLRLLRRRRRRRRLRLLRRLLRLRRRRLRRRRLRRLLLRLRRLLRRLLLRRLLRRRRRRLLLLLLLRLRLLLLRLLLLLRRLRRRRRRRRLRLRLLLRLRRLRRLLRRLRRRLRRRRRRLLLLRRRLRRLRLLRRRRRLLLRLLLRLLRLRLLRLRRRRLLLRLLRLRLRLLLRLRLLLLLRRLLLLRLLRLRRRLLRLRRLLRLLRLRLRLRLLRRLRRLLLLLRRLRLRRRRRLLLLRLLLLRRLLLRLLLRLRLRLLRLLRLRRRRRLLRLRRLLRRLLRLRLLLLLRRLRLRLRLLLLLRRRLRLLLLRLRRRRLLRRRRLRRRRLLRLLLRRRLLLLRLRRRLLRRLLRRRRRRRRRLLLRRRLLRRRRLRLLLLRLLRRRRLRLRRRRRRRRRRRLRLLLRLLRLRRRRLLRRLRLRLRLLLLLLRRLLLLRLRLRRRRLLLRLRRRLLLLRRRRRRLLLLLLLRLLLRRRLLLLRLLRRLLLLRRRRRRRRLLRRRRRLRRRRRRRRRRRRRRLLRRLRLRRRRLRRRLLLLLLLLLRLLLLRRRRLLLLLRLRLRRLLRRRRLRLRLRLLRLLRLRRRRLLRLLRRRRLLRLLRRLRRRLRRLLRRRRLLLLRRRRLRLRRRLLLRRRLRRLRLRRLRLRRLRLRRLLRLRRRRRRRLLRRRRRLLLLRLRRRLRLRRRLLLRRRLLLLRLLRLRRRRLLRRRRLRLRRRLRLLLRLLRRRRLLRRLLRLLRLRRLRRLLLLLLLLRRRRLRLLRLLLRLRLRLLRRLRRLRLRLLLLRRLRLRRRLLLRRRRLRRRRLRLLLLRLLRRRRLLLLRRLRRLLLRRRRLRLLRRLRLRRRLRLRRRRRLLLRRLRLLLRLRLRRLLRRRLRRRLRLRRLRLLRRRRRRRRLRLRRLRLLRLLLLRLLRLRLRRLRLLLRLLRRRLRRLRRRLLLLLRLLRRRLRRRLRLRLRRRRRRRRLLLRLLRRLRRLRLRLLLRLLRLRRRRLRLLRRLLLLRLLLRRRLRLRLRLLLRRLRLRLRRRLLRRRRLLLLRLRRLLLLRRLRRLLLLLLRLLLLRRLLRLLRLRLRLLRRRRLRRRLLLLRRRLRRRRLRRLLLRRLLRLLLRLRRLRLRRRRRLLLRLRLLLRRRLRLRLRRRLLLRRRLLLRRRRLRRRRLRLRRLLLRRLLRLLRLLRLRRRRLRLRLLLLRLLRRRLLRRLRLRLLRLRRLRLLRRLLLLRRRLRRLRRLRLLRRLLLRRLRRRRLRRRRRRLLRLRRLLRLLRRLLLLRLRLLLRLRLLLRRRLLRRLLLRRRLRRLLLRLRRLRLLLRLRLLRLRRRLLRLRRLLLRLLRRLLLLRLRRLLRRRRLRLRRLRLLRRRLRLRLLRRLRLRLRLRLLLRLRRRRLLRLLLLRLLRLRLLLLRRLLRLRRRLLLLLRLRRRRLRRLLRLRLRRRRRLLLRRRRRLLLLRLRLLLRLRRLLLLRRRLRRRLRRLRLLLLLRRLLRRRRLRRRRLRRRRLRLRLLRRLRRRLRLLLLRLLRLRLLLRRLLRRLRLLLLLLLRRRRRLRLRLRLRLRLLRRLLRRLLLRRRLLLLRRRRLRRRLRRRLLLLRRRRLRLRRRLRRLLLLRLLRRRRRLRLRRRRRLRRRLRLRLLRLLLRLRLRLRRRLLLLRLRRLLLLLRLLRLRLRRRLRRRRRRRRLLRLRLLLLLLLRRRLLLLRRLRLLRRLRLLLLRLLRRLLRRRLRLLLRRLLRLRRRLLLRLRLLRRRLRRLRLLLRLRLRRLRLLLRLLRRRLLRRRLLRLRLRLRRRRRLLRRRRRRLRLRRLLLLRLRRRRRLRRLRLLLLLLLLRRRRRLLLLRRRRLRLLRLLRLRLRLRLRLRRRLLRRLLLLRLRRLRLLLLRLRLRRRLLLLRRRLLLLRLLLRRRLRLRLRRLLRLRRLLRRLRLRRLRRLRRRLLRRLRLRLLRLRRRLRRLLLLLRLRRLLLLRLLRLLLLRLLLLLRRRLRRRLRLRLLLRRLLRLLRLLRRRLLLLLLRLRLLLRLRLLRRLLRRRRLLRLLRLLLRRLLLRLLRRLRRLLRRLLRLLLRRRLLRLLRLRRLLLRRRRRRRLLLLLLRLLRLRRLRRLLRRRRRRRLLLLLRRRRLRLLLRLRRRLRLLRLRRLLRLRLRLLRRLLLLRLRLLLLLRLRRLRLLRRLRRRLRRRLRLRRLLLLLRRLLRLLRLLLRLLRLLLLLRLRRRLRRRLRLLRLRRRLRLRRLRRLRRRLLLRLRRRRLLLLRLRLRLLLLRRRRLLRLRLLLLRLLLLRRRLRLLLRLRRLLRRLLRRLLRLRLLRLLLLLRRLRLLLRRLLLRRRRRRRLRRRRRRLLLLLLRRRRLLRLLLLLLRRRLLRLRRRLRLRRLRLRRRLRLRLLRRLLRLLLRLRRLRLRLRRRRLRRLRRRLRLRLLRRRRRLRLRLLLRRLRLRRLLRLLRLLLRLLLLRLRLLRRRRRLRLRLRLRLLRLLLRRRRRLLLRRRLLLLLLLLLLRRRRRRRLRLLRRRLRRRLLRLRLLRLRLLRLLLLRRRLLLLLLLRRRRLRRRLRLRLLLLLLRRRLLRLLLRRRRRLRLRLLRLRLLRLLLRRLLRRRLLRLLLRRLRRLRRRLLRRLLRRLRRLLRLRRLRRRLLLRRRRLRLLLRRRLLRLLRLLLRLRRRRRRLLRRLLLRLLRRLLLRLRLRRLRLLRLLLLRLLLRRLLRLRLRLRLRRLLRLRRRRLLRLLLRLLLLRLRRLLLLLLRRLLRRRRLLLLRRLRLRRLLRRLLRRLLRLRRLLLRRRLLLLLRRRRRRRRRLLRLRLLRRRLRLRRRRLLRRRLLRLRLLLLRLLRRRRRLRLRRLLRLLLLLRRRLLRRLRLLRRLLRLLRLRLRRLLLLLRLLLRRLRLLRRRLRLLRLRLRRRLRLRLRLRRLLRRRLLLLRRRLLRLRRLRRRRRLLLLLLRRRRRRLLLRRRLRLRRLLLLRRLRLRLRRRLRRLLRRLLRLRRRLRLRLLLLLRRRRLLRLLRLRLLRRLRLRLRLRLLRRLLLLRRRRLLLLLRRRLLRLLLLRLLRRRRRLRRLLLLLLRLRRRLRRRLLRLRRLLLRLRLRRRLLRRLRLRRRRRRLRRRLLRRRRLRRLLLLLLRLRLLRRLLLRRLRLLRLLRRLLLLLLRRRRLRLLRLRRRRLLLLLLLRLRLLRRLLLLRRLRLRRRLLRLLLRLLLLLRRLLLRRLLRLRLLLRRLLLLRRRLRRRLRLRLRLRLLLRRRRRLLLLRLRLLRRLRLLRRRRRRLRLLLLLLRRLRRLRLLRLRLRLLLRRLLRLRLLRRLLLRLRRRRRRLLLRRRRRRLLLLRRRLRRLLRLLLLLLLLLRRRRLLLRLRRRRLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLRRRLRRRRLLRRLRRRRLRRLLRLLRRRLRRLLRRLLRLLRLRLRLRLLLLLRRLRRRRRRRLLLLLLRRRLLRLRRRLRLRLLLLLRLLLLLRLLRLRRRRRRLLLRRRRLRLLRRRLLRRLLRRLLRRLLRRRRRRRLRLLLRLRRLLLRLLLLRLLLLLLLRRLRLLLRRLLLLRRLLLLLRRLRRRRRRLRLLRRRLLRRLRLRRRLLLRLLRLRLRRRLLLRRLLRRLRRLRLLRLRLLRLRLRLRLRLRRRLRLLRRRLRRLLRRRLLRLLLLLLRLRRLRRLRRLRLRRLRRRRLRRRLLRLRRRRLRRRLLLLRLLLLRRRRRRLLRLRLLRLRLLLRRLLRRRRRLRLLLLRLRRRRRLLRLRRLRRRRLRLRRRLRRLLRLRLLLRLRRLLLRLLLRRLLLRLLRRRLRLRLLLLLRLRLLRLRLRLLRRLLLLLLRLLLRLRLLRRLRRLRLRRRLRRLLLRLRRRRLRRRLRRRLLRLRRRRRLLLRLRRRLLRRLRLLRRRRLRRLLLRRRRLRRRLRRRLLRRLLRRLLRLRLRRLRLLLLRRRRRLRLLRRLRRRRRRRLRRLRRLRRRLRRLLLRRLLLLLRRLLLRLRRRRLLRRLLRRRLRRRRLRLLLLLLLLRLRRLLLRLLLLLRRRLLRRRRLLLLLLLRLLRLRRRLLRRRRRLLRLLLLRLLLRLRRLLLRRLRRRLLLRRRLLRRRLLLRLLLLLLRLLRRRRLLRRRRRLLLLLRLRLLLLLLLLRLRRLLRRRRLRRRLLRRRRLLRLLRRRRRLLRRLRLLLLRRRRRRRLRRLRLRRLLRLRLLLLLLLLLLRRLRLLRLRRRRLLRRRRLRLLLLRLLRRLLLLRLRRLRLRRRLRRRRRRLRLRRLLLLRRLRRRRRLLLRLRLRRLLRLRRRRRRLRRLRRRLRLRLRLRRLLLRRRLLLLLRLLLRLLLLLLRLRLRRRRRLRLRRLLRRLRLRLRLLLRRRLLLLLLLLLRRLLLLLRLRRRLLRLLRRLRRRLRLRLLLRLLRLRLRRRLRLLRRRLLLRRRRRRRLRLRRRRLRLRLLLRRRLRLLLLRRLRLRRRRLRLRRRRRLLRRRRRRRRRRLLRLRLRRLLRLRLRLRRLRRLRRLLLLRLLRRRRRRLLLLRRRRRLRRRRLLRRLLLRRRRRLRRLLRRLLRRLRLLRLRLLLRLLLLRLLRLLLLRRLRLRRLRRRRLLLLLRLRRRRLRRLRLLRLRLRRRRLRRLLLLRRLLLLRLRRLRRLLRLRRRRRLLRLRRRLLRRLRLRRRRRRLRRLRRLRRLRRRRLLRRLRRLRLRRLRRLRLRLLRRLLRRLRLRRLLRRLRRRLLRLLRLLRLLLRRLRLRRLLLRLLLRLLLLRRRRRRLLRRRRLLLLRRLRLLRRLLRLRRLLLRRRRLRLRLRRLLRRLLRRLLRLLRLRLRLLLLRLRRLRLLRRLLRLRRRRLRRRLRRLRRRRRRRRRLLLLRLLLRRRRLRLRRLRLLRLRRLRRRLLRRRLRLRRRRRLRLLLLLRLRLRLRLLRLLLRLLLLLRLRLRLLRLRRRLRRRRRRLRLRLRLRLLLLRLRRLLLRRLLRLRLRRRLRLRLRLLRLLLRRRRLRLLLRRRLRLRRRRRLLRLRRLLLLRLLLRLLRLRLLLRLRLRRLLLLRRLRLRRRRRRRRRRLRRLRLRLRLLLLRRRRLLRLRRRRLLRLLLLRLLRLLRRRLRRRLLLLLLLLLRLRRRLLLRLLLLLLRLLLLLRLRLLRLRRRRRRRRRLLRRLLLLLLRRRLLLLLRRRLRLLLRLLLLRLRLRRRRRRLLLRLRRLLRRLRRRLLLRRRLRLRRRRRLRRLLRRRLRRRRRLLRLLRRLLRRLLRRRRLLRLRRRLLLLLRLLLLRRRLRRRRLLLLRLLRRRRLRRRRRRRLLLLRRLLLRLLRLLRLRRLRRLRRLLLLLRRRRRLRLRRLRRLRLLRRLLRLRLLRLRRRRRRRRLLRLRRLRRRRLLLLLRLRLRLLRRLLRLLLRLRRLRRLLLRLRLLRRRRRLRLRLLRLRRLRRLLLRRLLRRLLLLLRRLRRLLRRLLLRRRRLRLLRRRRRRLLRRRRRRRRRRRRRLRLLRLRLRRRRRRRRRRRRRRRRLRLLLLLLRRRRRRRRRLRLRLLLLLLRLLLLLRRLRRRRLLRRLLLRRRLLRRLRRLRLLRLRLRRRLRRLRLLRRRRLRLRRRLLRRLRRRRLLLLRRLRLLRLRRLRRLRRRRLLLRRLRRRLLRRRLRLLRLLRLLLLLLRRLRLLLRRLRLLLRLRLLLRLRLRLRLRRLLRRLLLLLLLLLLRLRLLLLRRLRLLRRRRLLRLLLLLRRRLLRRRRRRRRLLRRRLLRLLRRRRLRRLLLRLRRRLLLRRRRRLLRLRRLRLLLLRRRLLLRRLLRLRLRLRLLRLRRRLLLRRLLRRLLLRLLRRLRRLLLRRRLRLLRRLRRLLRRLLLLLRRLRRRRLRLRRRRLLRLRLLLRLRLRLLLLLLLRLLLLRRRLRRLRRLRLLLRRRLRRRLRLLRLRRRRLLLLRLLRLRRRLLLLRRLLRRLRRLLRLLRLRLLRLLRRRLLRRRLRLRRRLRLRRLLLLRRLLRLRLLLRRLRRLRRLRLLRLLRLLRLRLLRLRLLRRRRRRLRLRRRRLLRLRLRLLRLRRRLRLLLLLRLLLRRLRRLRRLLRLLLRLLRLLRLLRRLLRLRLLLRRLRLLLRLLRRRLLLLLLRRLRRRLLLLRLLRRRLRLRRLLRRRRRRLRRLRLRLRRRLLRRLLRRRLLRLLRLRRLRRRRRRLLLRRLRLRLLRRLRRLLLRLLRLLRLLLRRRRLRRRLLRLLLLLRLRRLRLRLRLLRLLRLRRRRLLLLRRLLRLLRLLLLLLRLRLRRRLLRRRRLLRLRRRLRRLLLLRLRLRRRLLLLRLRLLRRRLLRLLLLRLRRLLRLRRLRLLLRLLLRRRLRRLLRLLRRRLRRLLRLRRRRLRLRRRLRLLLLRRLRRLRRRRLLLRRLLRLRRLRRLRRRRRRLRLRLRRLLLLLRLRLLRLLLRLRRRLLLRLRLLRRLRLRLLLRLRLRRLLLLLLRLRLRRRRRLRLRLRRRRRLLLRLLLRLLRRLRLRLLLRRLLLLLRRLRRRLRRRRLLRRLLLLRRLRRRLRRRLRRLLRLLLLLLRRLRLRLRRLRRRLLLLLLRRLRLLRLRLRRRRLRRLRLLRLRRRLLRRLLRLRLRLLRLLRRRLLRRRRRLLLRLLRRLRRLRLRLLLLLLLLLRLLRLRRRLRLRLRRRRLRLLRLRLRRRLLLLLLRRLRRRLRLLLRRLLLRRLLLLRRLLRLRLRLLRRRLLLLLLLLLRLRLRRLRRRLRLRRRLLLLRRLRLLRLLLRRLLLRLRLLRLLRRRLRLLRLRLRRLRRLLRLRRRRRLRRLRRRLRLRRLRLLRLLRRLLLLRLRRRRRLLRRLLLRRRLLLLRRLLLRLLRRLRLRRRLLLRRLRLLLRRRRRLRRLLRLRRRLLRLLLRRRLLLRRRLLLLRRRLLRRLLRLRLLLRLRLLRRRLRLRLLRLRRLLRRLRLLRRLRRRLLLRRRRLLRLLLRLLLLLLLRLLRLLRLRRRRLRRLRRLRRLLRLRRRRRRLLLRLLLRRLLLLLLLRLRLLLLLRLRRRLLLLRLLLRRLLRLRRRRRRRLRRRLRLLLLRRRRLRRLLLLLLLRRLRLRLLLRRLRRRLRRLRLRLRLRRRLLLRRLRRRRLLLLLRRRLLLLRLLLRLRLRRLRLRRLRRLLRLRLRRRLLRLRRRRLLRLLLRRLRRRLRRRRRLRRLRRLRLRLRRRRLRLLLLRLLLRLLLLLLRLLRRRLRLLRLRRLRRRRLLLLLLLRLLRLRRLLRLLRLLLLRLRLRLRLRLRRRRRLLRLRRLLLRLRRLRLRRRRLLLLRRLRRRLRRLRLRRLLRRLLRLLLLRLRRLRLLRRRLLRLRLRLLLLRLLLRLLLLRRLLLLRLLLLLLRLLLLRRRLRLLRRRRLLLRLLRLLLRRRLRRLLRRLLRLRLLRRLLRLRRLRRRRLRRRRRRRLRLRLLLRLRLRLLLRLRLLRLLRLRRLLRLRLRLRLLRLLLRLLRLLRLRRRRLRRRRLLLLRLRRLLLLLLRLRRRLLLLRRRLRLRLRLLRRLRRRRLLRRRLLRLRRRRLRLRRRLLRRLLLLLRRLRRLRRRLRRRLRRLLLLLLRRRRLRRLRRRLRLLRLRLLLLRLRLLRRLRRLLRLLRRRRRLLRLLRRRLRLLLRRRLLRRLRLLLLRRRRLLLLLLRLRRLRRRLLRLLRRRLLRRLRLRRLRLRRRRLLRRRRLRLRRLLLRRRLRRRLLRLRLLLLLRLLRRLLRRLRLLLLRRLLRRLLLLRRLRRLRRLLRLLRLRRLRLRLLRRRLRRLRLRRRLLLRRRRRRRLLRRLRLLLLRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRRRLRRLRRLRRLRLRLLRLLLRRRLLRRLRLRRRRRLLLLRRRLRRRRRLLLRLLLRRLRLRRLLLLLLRLRLRLRRLLLRLLLRRLRLRRLLLRLLLLLLRRRLRRRRLRRRLLRRRLRRLRLRLLLLLRRRLRLRLRLLLRLLRRRLLRRRRRLRLLLRLLLRLRLLLLRLLLRRLRLRRLLRRLRRRRRRRLLRLRRRRLRRRLLRLLRRRRRLRLLRLRLLRLLRRRLLLRLRRRLLRLLLRLLRLRRRLLLLLRLLLRLLLRLRRRLRRRRRRRRLRLRLLLRRLRLLLLRRLRLRLLRLLLRLLRLRLLRRRLRRRLRLLRLRLLLRLLLRLRRRRLLRLRRLRLRRLLRLRRLRRLRRLRRRLRRRLLLRRRRLLRLRLLRLRRLLLLLLLLLRLLLLRLLLLRRRRLRRLRLRRRRRRRLLLLRRRRRLRRLRLRLLRRRLLLLLRLLLLRRLRRLLRLLLLRLLLLRLRLLRRRLLRRRRRRRRRLLLRRRLLLLLRRLLLRRRLLLRLRRRRLRLLRLRLLLLLRRRLRRRRRLRRLLLLRRLLRLRLLLRLLLLLLRRRRLRRLRLRRLLLLRRRLLRRRLRLRRLRLRLRLRLLRRLRRLLRRRLRLLRLLLRRLRLRRLLRLRRRRRLLRLLLRLRRLRRRLRRLLLRLRLRLLRLLRRRLLRRRRLRLRLLRRLRLLRRLLLRLRRRRLLLRRRRRLRLLLRLLRRLRLLRLLLLRLLLRLLRLRRLLRLLRRLRLLLLRLRRRRLLRLRRLLRLRLLRRLRLRRRRRLLLLLRRLRLLLLLRRLRRLRRRLLRRLLLRRRLRLRRLRRRLLRRRRRRLRLRRRLRRRLRLLLLRLRLRRLRRLLRRLLLLRRLLLLLLLLRRLRRLRRLRLLRLRRLLRLRRRRRRLRLLRRRLLRLLRRRLRRLRLRLLRLLLLLRRLLLRRRRRRRLRRRLLLLRLLLLRRLRRRLRLRRRLLLRLLRLRLLLRLRLRLLRLRLLLRLRLRRRLLRLLRRRLRRLRRLRRLLRRRRRLRRRRLLRLLRRLLRRLRRRRLRRLRLRLRRLLLLRRLLLRLRRLRLRLLRRRRLRLLLLRRLRRLLRLLLRRRRRLLLLLRRLLRLLLRRRLRLLRLRLLLLRRLLLRRRRLRRLRLRRRRLLRLLRLRRRRRLRRRRRRRRLLLRLRLRLRRLLRLRRRLRRRLLRLLRLLLRLRRRLLRLLRLRLRRLLRRRLLRRLLRLLRRLLRLRRLRLLLRLRRRRLLRRLRRLLRRLLLRLLLRLRLRLLLLRLLRRRLRRLRRRRLRLLLLLRLRRRLRLRLLRRLRRRRRLRRRRLRLRLLLRRRLRRRRLLLRLRRRRRRLRLLLLRLLLRRLRLLLRRLLLRRLRRRLRLLLLRLRLRLRLRLRRRRLLRRLLRRLRRLLLLRLLLLLLLRRLRRRLRLRLLRLLLRLRRRLLRLLLRLLLRLRRLRRRRLRRRLRLRRLLLLRRLLLRRLLRRLRLRRRRRLLLRLLRRLLRLLRRRLLRLLLLLRLLRRRLRRLRLRRRRRLRRRLLRRRRLRLLRLLLLLLRRRRLRLLLLLLRRRLRLLRRRRRRRRRRRLLRLRLRRLLRRLLLLLRLRLRRLRLRRRLLRRLRRRLLLLLRRRLLRRRLLRRLLLRLLRLRLRLLLLLLRRLRRLRRLLLLRRRRRLLLRRRLLRRRRRRLLRRLRRRRLRLLLRRRRRRLRRRLRRLRLLRLRLRLLRLRRRLLRRLLLRLRLLRLLRRRRRLRLLLLLRRLRRLRRLLLLRRRLRRLRLLRLLLLRLLRLLRLLRLLLLLRRLRLRLLRRRLLLRRRRRLRLLLLRLRLRLLLLLRLLLRLLRLLRRLRLRRRLRRRLLRRLLRLRLLRRRLRRRRRRRLRLRRLRLRRRRRLLRLLLLRLLLRLRLRRRRLRLLRLLLRLLRLRRRLRRRRLRLRRLLRLRRLLLRRRLLLRRLRLRLLRLLLLLLRRRRRRRLLRRLRRLRRLRLRRRRRLRLLLLRLLLRRRLLRLRLLRLRLRLLLLRRRRLLLRRLLLRRRRRRLRLLLLRRLRRLLLLLLRLLLLLRLLRLLRRRRRLRLRRLLRRLLLLLLLLRLRLLLLRRRRLRLLRRLLRLLLRLLRLLRRLRRRLLRLLLRRRRRLLLRRLLRRLRLLLRLRRRRRLRLRRLRRRRRRRRLRLLLRLRLLRRRRLRRRRRLLLRRRLRLLLRRRLRRRRLRLLRLLRRLRRRLLLRRRRLRRLLRLLLLRLRLLRLRLRRRRLLRRLLLLLLLLLLLLRRRRLRLRLLLRRLLLRRLLLLLLLRLLLLRRRRLLLRLRLLLLLRLRRLRLRRRLLRLRLLRRLRLLLRLLRLRRRRRLRLRRRLLRLRRLRLLLRRLLRRLLLLLLRRRRRRRRLLLLRLRRRLRLRRRRLRLLRLLRLLLLLLRLLRLRLLLLLRLRLRLRRRLRRRRLLLRRRRRLLLRRRRLLLLRLRLLLLLLLRRLRRLLLRLRLRLRLLRRRRLRLLLRLLLLRLLRRLRRLRLRRRRLRLLLRRLLLRRRLRLRLLRRLRLLLRRRRLRRRLLRRRLLRRRLRRLLLLLLRLRLLLLLRLLLLRRLRLRLLRRRRRLLRLRLRLRRLLLLRLRRRLRLLRLRLLRLLLRRLLRLRLRRRLLLRLLRRLRRLRRLRRLRRLRRRLRLLLRLRLLRLRLRLLRLRLRRRLRLRLRRRRRRRLRRLRRRLRRRLRRLRRRRLLLLRLRRRLRRLRRRLRLRRRRRLRLRLLRLLRLRLRLRLRLLRRRLRRLLLRRRLLRLRRLRLLRRRLLRRRLLLRLRLLLLLRLLLRRLRLLRLRLRLLRRLLLLRLLRRRRLRRLLLRRRLRLRLRLRRLRLRRLRRRLRRLLRLRLLRRLLRLLRRLRRRRLLLLRRLRRLRLRLRRLRRLLLLLLRLRRRLRRLRRLLLLLLRRLLLRRLLLLRRLRRLLRRLLLRRLLLLLLRRLRLRLRLLRRRLLLRLLRRLLRRRLRRLRLRRLLRRRRLLRRRRRRLRRLRRLRRLLLRRLLLLLRRLLRLRLLLLLRLRRLLRRRLRRRLRRRRRRRLLLRLRRRRLRLLRLLRRLRRLLLLRRLRLRRLRRRLLRRRLLLRLRRLLRRRRLLRLLRLLLRRLLRRLRLLLLLLRLRRRRLRRRRLRLLRLLRLLRLLRLLRRLLRLLRRRRLLLRLLLRRLLRRLRLLRLRLRLRLRLRLRRRLLLRLLLRRRLRLRRRLRRLLRRRRLRRRLRLLLRLRRLLLLLLLLLLRRRRLRLRLLLRLRLLLLRLRLLLRLRLLLLLLLRLRLRRRLLLRLLRLRLRRLLLRRLRLRRRLRRRLLLRRRLLLRRRLLLLRRLRRRLRRLRRLLRLLLLLLRRRLRRRRRRLRLLRLLLLRLLLRLLLRRLRLLRRRLLRRRRRLLRRRLLLRRRLLRRLLLLRRRRRLLLRRLLLRLRLRLLLLRLRRRRLRRLLRLLLRRLRLRLRRLLRLLLRLRLRLLLRRRRLLRRRRLLRLRRLRRLLLLLRRLRRRLLRRLRRLLLRLLLLLRLRRLRLLLLLLRLRLLLLLLLRRRLRRRRRLLLLRLLRLRRRRRLRRRRRRLRLRRRRRLRLRRLRRLRLRRRLLRLLRLLLRRLRLRRLLLRRRLLRLRRLRRLRRRLRRLRLLRRLLLRRRLRLRRRRLRRRLRRLLRLRRLLLRRRRLLRRRRRRRRRRLRLRRRLLRLLLRLLLLRRLLRRLLLRRLLRLLLLLLRLLRRRRRLRRLLLLLLLRLLRRLLLLRLLRRRRRRRRRRLLLRLRLLLLLLLLLLLRLLRRRRRLRRLRRLLRRLRLLRLRLLRLRLRLRLRLLRLLLRLLLRRLRLRLRLLRRLLRRRRLLRLLLLRLRLRRRLLRLRLRLRLLRRRLRLRRLRLLRLRLLLLLRRLRRLLRRLLRLRLRLRRLLRLLLRRRLLRLLLLLLLRLRRLLLRLRLLLLLRLRLRRLRLLRLLLLLRLRLRRLLRRRRRRLLRRLLLRLLRRLLRLRRRLLLLLRRLLLRLLRRLLLLLLLLLLLLLRLRRLRRLRRLLLLLLLRRRLLLRRRLLLRRRRLLLLRLRLRLLLLRRRLRLRRRLLRLRLLLLRLLRRLLRRRRRRLLLRLRRRLLRRRLRRRLRLRLRLRLRRLRRLLLRRRLLLLLLRRRLLLLRLRLLLLRRLRRRLRRRRLRLLLRRRRLLLRLLLLLLRRLLRRLLLRLRRLRLLLLRLRLLLRLRRLLLLRRRLRLRLLLRLLLRRRLRRRRRLLRRRLRLRRRRRRRLRRLRLLLLLLLLLLLRRLRLLRLLRRRLRRRRRRRLRLRRLRLLLLRLLLRRRRRLRRRRRLRRRRLLLLLLLRRLLRRLRLRLLRLRLRLRLRRLRRLRLRRRLRLLLLRLLLRRRRRLLLRLLRLLLRLLLLLLLLLLLRRLLRLRLRLRLRRRRRLLRRRLLLRLLRRLLLLRLLRRLLLLRRRLLRLLRRRRRLLLRLRRLLLLRLRLLRLRLRRLLLRLLRRRLLRLRRRLLRLLRLLLLRRLLLRRLRRRLRLRRLRLRRLRLLRRRLLLLLLLLRRLRRLRRLRRLRRLLLRRLLRLLRLLLLRLRLLLRRRRRRRLLRLRRLLLLLLRLRLRRRRLLRLLRRRLLRLRLLRLLRLLRLRRLLRLRRRRLRLLRRRRLLLLLLLRLLLRRRRLRLLRRRRLRRRLRRLLRLRRRRRRRLRRLRRRLRLRRRLLRLLLLRRLRRLRLRLLRLRLRRRLLLRRRRRRLLLRLRRRRLRRRLRRRRRLLRLLRRLRRRRRLLLRRRRRLLRLRRLLRLRLRLRRLRLLRRLRLRRRRLLLLLRRLLLLLLLRRRRLLLLRRRLLLRLRRRRRRRLLRLRRLLLRRLRLRLLLRLLLRLRLRLRRRRRRLLRLLLRRLLRRRLRLRLRLRLRRRRLRRLRLLLRRRRLRLLRRRRLRLLLRLLRRLRRLRRLRRLLLLLRLRRLLLRRLRRLLRLRRRRLLRLLRLRRLRLRLRRLRRLLRRLRRRLRLLRRLRLLLRRLRRLLRLLRLRRLRLRRLRLRRLRLLRLRRLLRLRLRLLRLLLRRLRRRRLLRLRLLRRRRLRLLRRLLRLLLLLLRLRRLLRLLRRRRLRLLRLRLLRLLRLRLRLLLLRLRRRLRLLRRRLRRRLRRRRLLRLLLRLLRRLLLLLRRRRRLRLLRRRLLLRLRRLLRLRRRLLLLLLRRLLLLLLLLRLLLRRLRRRRRRLRLLLLRRLRRLRRRRLLRRRRRRLLRRRRRLRRLRLLLRRRLLRLRLRLLLRRLLLLRLLRLLLRLRRRLLLLLLRLLLRLLLLLRRLRLLRLRRRLRLRLLLLRLLRRLRRRRRRRLRRRRRRLRLRRLLLLRLRLRLRLLRLLLRRRLRRLRRRRLRRRLRRLLRLLLRLLLRLRRLLLRLLRLRLLLRRLLLLLLLLLLLLRLLRRLLRLLRRLLRRRRRRLRLRLLLRLLRRRRLRRLRRRRRLLRRRLRRLRLRLRLRRLRLLRRLRRRLLLLRLLLLLLRLLLRRRRRRLRLLRRRRRRLLRRRRRRRLLLRRRLLRLLRLRRRRLRLRRLLLLRLRRRLLRRLRLRRLLLLLRRLLRLRLLLRRRRRLLRLRLLLRRRLRLLLLRLRRLLRLLRLLRRRRRRRRRLRRRLRRRRLLRLRLRLLLLRLLRLRRRLLRLLLLRRRLLLRLRLLRLLRLLRLRRLRRRRLRLRRRLRLRRRLLRRRRLLRRRLLLLLRLLRLLRLLRLRRRRRRLLRRRRLRRRLRRLRRRRRRRLRLRRRRRRLRLLLRRRLLRLRRLLRRLLRLRLRRRRRRLLRLRLRRRLLLRRLRLLLLLRLRRRRLLLLLRRLRLLRRRLLRRRLRLLRRRRRRLRRRLRLRLRLLLRLLRLLRRLRRRRLLLLRRRRRLRRRRLLRRLLLLRRLLRRLRRRRLLLLRLLLLLRRLLLLRRRRRRLRLRRRLLRLRRLRRRRRRLLLRRLRRLLLRRLRLLLLRLRLLLLLRLLRRLLRRLLLLRRLLLLRLRRRLRRRRRLRRRRRRLLRRLRRLRRRRRLRRLLRRRRRRLLRRRRRRLLRLRLRLRRRRRRRLLLRLRLLLLLLRLRRRRLLRLRLRLRLLLLRRRLRLRLRLRRLLLRLRRLRLLLLLRLLRRRRLRLRRRRRLRLLRRRLLLRRLRLLRLRRLRLRRLLLRLLLRRLRLRRRLRLRRLRLLRRLLRRRLRRLLLLRLLRLRRRRRLRLLLRRRRRLRLLRLRLLLRLLRRRLLRRLRRLRRLLRLLRLLLRRRRRLLLRLRRRLRRRLRLLRRLRRLLRRRRRLRLLRLLLLRLRLLRLRRRRRRRLRLRLLRLLLLLLLRRLLLLLRRLLRRRRLRRRRLLLLLLLRRLLRLLLRLRLLRRRLRRLLRRLLRLLLRRRRRRLLLRLRRRRLLRRRRLLLLLRRRRLRLRRRLLLLLRRRRLRRLRLLRLRLLLRRLRLLRRRLRRRRRRLLLLRLRRLRRRLLRLRLLLRRLLLRRRRRRLRLRLRLLRRLLRLRLRLLRLRLLRRLRRLLRRRRLLRLLLRLLLLLRLRLLRLRLLRLRRRLLLLRLRLLLRRLLLLRLRLRRRLLLRRLRLRLLLRLRRRRRLLLLRLLRLLLLLRLRLRRLRLRLLRLRRRRRLRRLLRLLLLLRRRLLLLRRLLLLRRLRRLLLRLLRLRLRLRRRRRLRRRLRRRRLRLRLRRLLLLLRRRRRRRLRRRRLLLRLRLRRLRRLRRRLRRRLRLLRLRRRLLRLRRRRLLLLLLRLLRLLRLLRLRLRLRLRRRRRLRLRRRLRRRRRRRLLLLLRLLLRLLLLLLLLRRLRRLRLLLLRRRRLRRLLLLLRRLRLLRLLLLRRRLRLLLLRRLRRLLLRRLLLRRRRLLRRLRRLLLRLRLRLRLRLRLLRRRLLRRLRLRRRLLRLLRLLLLRLLLLRRRLLLLRLLLLLRLRRLLLRRRRRLRLLLRRRLLLRRLLLRLRLLLLRLLLLRRLLLLLLRLRLRRRRLLRRLRLRLLRLLLRRLLRLLRLRRLRRLLRLLLRLLRLLLRLRLRLRRLRRRLRRLRRRLLRRLLLRLLLRLRRLLLRRLLRRRRLRLLLLRLLLRRLRLLLRRRLRRLRRRRRLLLLLLLRLLLRLRLLLRRRRRLRLRRRLLRLRRRLLRRRRRRLLLRLRLRRLRLLLLRRLRRLLLRLLRLLLRLLRRRRRRRLRLLRRRLLRRLRLRRRRLLRRLRLRLRRRRLRLRLRRRRRLLRLRLRLRLLLLRRRRLRRRRLRRLLRRLRLRRLRRLLLRLRRRRRRRLRLLLLRRRRRRLRRRLLLRLLRRRLLLRRRRRRRLRRLRLLRRLRRLLRRLRLLRRRRRLRLLRLLRRLLLRLLLRLRRLLRRRLLLRRLRLRLRLLLLRRRLLLLLLRLLRLRLLRRRLRRRLRRRRLRLRRLLLRRRLLRRRRLRLRLLRRLLRRLRRLLLRRLLRRRLRLRLLRRLRLRLLRRRRLLRLLRLRLRRLLLRRRRRRRLLLRLRRRRRRRRRLLRLRRRRLLLRRLLLLRRRRLLRLRRRRRLRLRLLRLRLLRRRLRLRRLRRLLRRLLRRLLLLRLLRRLRLLRRLRLLLRLRRRLRRLLRLLLRLLRLRRLRRRRLLLLRRLRRRLRLLLRRLLLLLRLLLRRLLLRRRLRRRLLRLLLRLRRRLLRRRLLLRLRRRLLRLLRRRRLRLLLRRRLRRLRRRRLLLLRRLLLLRLRLLRLLRRRRRLLLLRRLRLLLRLRLRRRRLLRLRLLRRRLLLRLLLLRRRRLLRRRRLRLRLLLLRLLLLLRRLRLRRLRLRLRRLLLRLLRRLRRLRLRRRLLRLRLLLLRRLRLLRRLRLLLLLRRLLRRLLRLLLRLRLLRLLLLLLLLLRRRLRRRRLRLLRRLLRRRLLRLRLLLLRRRRLRRLRLRLRRRRLRLLLRLLLRLRRLLLRRRLRLLLRLRLRRRLLRLLRRLRLLLRRLLRRRRLLLRLLLRRLLRLRLLRLRLRRLLRRRRLRRRLRRLLLLLLRRLLRRLLRLLRRLLLRRRRLRRLLRLLRLLRLLLRLRLLLLRRLLRRRRLLRLRRLLLLRRRRRLRLRRRLRRLLRRRLRLRRRRRRRRLLLRRLRLLLRLLRRLLLLLLRRRLLLRLRRRLLRLRLLLLRRLRRRRRRLRRLLRRRRRRRRLLRLLRRLLLRLLRRLRRRLLLRRLLLLRLRRLRLRLRRRLLLLLLLRLRLLRLLRRRRLLRRLRLLRRRRRRRLLLLRLLRRLRRRLLLRRLRLLLLRLRLLLRRLLRLRRRRLRRRRLRLRLRLLRLRLRLLLRLRRLRLLLLRLRRRRRLRLRRLRLRLLLRRRLRRLLLRLLRLLRRRLLLRLRLRRRRRLRRRLLRRLRRRLRLRRLRRLRLRLLLLRRLLLRLRRLRLRRRLRRLLLLRLLRRLRRLLRRLLRLLLRLLLLLRRLRLLLLLRLLRRRRRRLRLRRLLLRRRLRLLLRRLRLRLRLRLLRLRRRRLRLLLLRRRLLLLLLLLLLLRLRLLLLLLRRLLRLLLRLLRRRLLRLRRRLLRRLLRRLLLRRRLLLLLLLLLLLRLRLRLRRRLRRLLLLLRLRRLLRRRRRLRRLLLRLRRLLLLRRLLLLLRLLRLRLRLLRLLLLLRRLRRLRLLLRLLLLLLLRLLLLLRLLRLLLRRLRLLRRRLRLLRRRLLRLLRRLLRLRLLLRRLLRRRRRLLRRRRRLRRLLLRRRLRLLLLRRRLLRRLRRLLRRLRLLRRLRRRLLRRLRLRRRRLLRLLLLLLLLRLLLLRLRRLRLLRLRRLLRRLRRLRRRRLRLRRRRRLRRRLLLLLLRRLRLRLLRLRRRLRLRRLLRRRRLLRRLRLRRRRLRRLLRRLRLRRLRRLLRLRRLRRRRLLLRLRRRRRRRRLRLRLLRLRRLRRRLLRRRRRRLLRRLRRLLRLRRLLLRRLRLLLLRLRLLRLLLRRRLLLLLRLRRRRLLRLRRRRRRRLLRLLRLLRLLLLLLLRLRLLLRLRRRLRRLRLLRLRRRLRLRLLLRLRRRRRRLRRRLRRRLRLRLLLLLLRLLLRLLRRLRRRLLRLLRLRLLLLRRLLRRRLRLLLLLRRRLLLLLRLRRLLLRLLLLRLRRRLLRRLLLLLLRRRLLLLRLLRRLLRLLLLLLLLLLRRLLLLLLLRRRLLRRLLLLRRLLRLRRLRLRLLLRRRLRLLLLRRRRRLRLRRRRLLRLRLLLLRRRLLLRLRLLRLRRLRRRRRLRRRRLRLLRRRLRRRLRRLLRRRLLLLRRRRRRLLLLLRLRRRRRRLRLRRRLLRRLRLLLRRLLLLRRRLLLRLLRRLLRLLLRLLRLLLLLRRLLLRRRLLRRLRRLLRRRLLLRLLLRLLLLRRLLRRRLRLRLRRLLLLRLLRLLLLRLRLLRLLRRRRLLLRRLRLRRLLRRLLRRLRLRRLLRRRRRRRRRRRRLLLRLLLLRRLRRLLRLLLRRLLLRRLRRLLRLLLLLLRRRLLLLLRRRRRRLLLLRRRLRRLRLLRLLRLRLRRLLLRLLLLRLLRLRLRLLLLRRRRLLRLRLLLLRRLLRLRRLLRLLLLLRLLLRLRLLLLRLRRRLLRRLRLLLLRLRRLRRRLRRLRRRLRRRRLLLLLRRLLLRRRRRRRRLRRRLRRLLRRLLRLRRRLLRRRRLLLLLLLRLRLRRRLRRRRLLLRLLLLLLLRLLRLLRRLRLRLLRRLRLRRLLLRLRRLRLLLRRLRLRRLRRLRRLLLLLRRRRLLLLLLRRLLRRLLLRRLRRRRRRLRRRRRLRLRRLLRRRLLLRRLLLRRLLLRLRRLLRRRRLRRRRRLLLRLRRLRRLLLLRLLRRRLRLRLRLLLLLRRLLLRRRRRRLLLLRLLLLRRLLRRRRLRLRLLRRRLRRLLRLRRRRRRRRLLLRRLRRLRRRRLLLRRLLLLLLRRRRRRRRLLRRRLLLRLLLRLRRLRRRRRRRRLLLLRRRLRLRRRLLLLLLLRRLRLLRRLRRLLRRRLRLLLLLRLRLLRLLLRLLRRRRLLLRRLRLRRRLRRLLRRRLLRRLLRLRRLRRRLLLRRRRRRLLRLRRLRLLRLRLRRRLRRLLLLLRLLRRLLLLLRLRLLRRLRRLLLRLRLRRRRLRRLLRLLLLRRLLRRRRRRLLRRLLLLLLLRRLRLLLRRLLRRLLRRLLRRLLRLRRLLRRLLRLLRLRRRLLLRLRRRRLRLRLRRRLLLLRRLRLRLLRLRLLRRLRRLLLRRRLRRLLRRRLLLLRRLRRLRLRLLLRRRLRLRRLLRLLLLLRRLLRLLRLRLRRLLLRRRRRLRRLLLRLLLRRRRRRLLRLRLLRLLRLLLRRLRLRRLRRLRLLRLRRRLRRRLRRLRLRLLRRLRRLLLRRRLRRLLRRRLLRLLLLLLRLLLLLLRLRLLRLLLRLRLLRLRRRLLRLRRRLLRRRRRRRRLRRRRRLRLRLLRLLRRRRLLLRLRLRRRRLLLLLLRLRLRLRLRLRLRRRLRRLLRRLLLRRLLRRRRLLRLRLLRRLRLLLLRLRLLLRRRLLRLRLLRRLRLLLRLLLLRLRLLRLLRRRLRLLLLRLRLRRLLLRRRLLLLLLRLLRLRRLRRRRRRLLRRRLRLRRLRRRRLRLLRRLRRRLLLRLLLRRRLRLRRRRLRLLLRLRRLLLRRLRRLRRLLLLRRRRRRRRLLLRRRLRRLLRRLLLLRLRLLRLRRLLLLRRRLLRRLRLLLLLRLLLRLRRLLLRRLLLRLLRRRRRRLRLRLRLRLRRRLRRLRRLRRRLLLLRRRLRLRRLLRRLRLLRLLLRRLRLLRLRRLRRLLRRRRRLRLLRLLLRRRRLRLLRLLLLRRLLLLLRRLRRRRLLRLRRRRLLRRRLLLLRRLRRLRRRRLRRRLRLLLRLRRRLLRRLRLRLRLLLRLLLRLRRLLRRLRLRLRLLRLLRLLLRRRRRLLLRRLRLRLRLRRRRRRLRLLLRLLRLRLLLLLLRRRLLRLRLRLLRRRLLLLLRRLRLRRRRRLLRLRRRRLRRLRLLLLRRRLRRRRLLLLLLRRLLRRLRLRLRRLLLLRRRLRLLLRRLLRRLRLRLRLRLLRLRLRLLLLRRRRRRLRRLRRLLLRLRRRLRRRRRRLRRRLLLRRLRLRRRLRRRRRLRRRRLLRRRRLLRRLRRLLLRRRLLRLLRRRLRLLLRRRLLLRLRLLRLLRLLRLRRRRLRLLRRLLLLRLLLRRLRLRLRLLRLRRRRLLLLLRRRLLLLLRLRRLRRRRLRLLRLRLRLLLLLRRLLRLRRLRLRRRLLRLRLRRLLRRLRLLRLLLRRRLLRLLRLRLRLLRLRRRLRRLRLRLRRLLLLRLRLLRLRRLRLLRRRLRLRLRRLRLLRRRRLRLRLLRLRLLRRRLRRLRRRLRLRLLRRLRLRRLRLRRRLRRRRLLLRRRLRLLRRLRRLRLRRLRRLLLLLLRLRLRRRLLRRLLLLLRRLLLRLLLRLLRLRRLLLLLLLLLRLRLLLLRLLLRLLLRLLLLLRRRLLRLRRRRLLLLRRRRLLLRRRLRLLLLLRLLRRLRLRRRLLLRRRLRLLRRRLRLLRLLLRLLLLLLRRRRRLRLRLLRLLRLRLRRLLLLRRRRRRRLRRLLRLRLLRRLLLLLRRLLLRLRRLRRLLRRRRRLLRLRLRLRRLLRRRLLLRRLRLRRRLLRLRRLRLRLLRLLRLLRLLLLLLRRLRRRLRLRLRRRRLLRRRLRRLRRRRRLLLRRLRRRLLLRLRRRLRLRRRLLRLLLRRLRLLRLRRRRRLLLLRLLRLLRLRRRLLLRLLRRRLRRRLRRLRLLLLRLLLRRRRRRRLRLRRRLRLLLRLLRRLLLRRRRRRRRLRLLRRRRLLLLLRLRLLLLRRLRLLLLRRLLRLLLLLRLRLRLLRLLLLRLLLLLRLRRLLRLLRRRLLLRRRLRRRLRRLLRRLLLLRRLLLLLRLRRLRLLRLLLRRRLLRLRLLRLRRLLLRRRLLRLLRRRLRRRLRLRLLLLLLLLLLLLLRRLLLLRRLLRRRLRRRRRLRRLRRLLLRRLLRLRLLLRLLLLLLRLRRLRRRRRRLRLLRLLLLLLRLRLRRRLLLLRLLRLRLRLLRLLLRRRRLLRLLLRRRLLRLLLLLRLRLRRLLLLLLRLLLLLLLRRLRLRRRRLRLRLLLRRLLRLRLRRRRLLLLLRRRRRRLLLLLLRRLRLRRLLLRRLLRRLLRLRRLRRRRRRLRRRRLLLLLRRLLRRLRLRRLLLLLLRRLRRLLLLRLRRLRLLRLRLLLLRLLRLLLLLRRRRLRRRLRLLLLRLLRRRLRRLLRLLRRLLRRRRRRLLRLLRLLLLRLRLRLLLLLLLRRRLLLLLLRRRRRLRRRRLLLRRLRLLLRRRLLRRLRLRRLRLLLRRRLLRRRLRLRRRLRRRRRLRLLRRLLLLLLRLLLLRLRRRRLLRLLLLLLRRRLRRLRLLRLRRRLRLRLRLLRRLLRLLRLRLRRRLRRLLLRRLLRLLLRLLLLRLRLLLRRLLLRLRRLLLRRLLLLLLLLLLRLRLRRRLLRLRRRLLLLRLLRLRLLRLLLRLRRLRRRRRRRLLLLRLLRLRRRRRRRRLLLRRLRRRLLLRRRRLLRRRRRLRLLRLRLRLRRRLRRLRLLLLRLLLRRLLRRLRLRLRRRLLLRRRRLLLLRLRRLRLLLRRRLRLLLLRRRRRLLRRRRRLRRLLLLRRLLLRRLRRLRRLRRRRRLLLRRRLLLLRLLRLLLRLLRLLLLRRLRLLLRRLLRRRLLRRLRRLLRRRLLRRLRRLRLRRRRLLLRLRRLLRLRLRRLLRLLLLLRRRRRRRLRRLRRRLLLRLLRLRRLLLRLLRRLRLRLRRRRLLRLLRRLRLRRLLRLRRLLLLRRLLRLLLRRLRLRLLRLLRRRRLLRRLRRLRRLRLLLRRRRRRLRRRRLRRLLLRLRLLLLRRRLRRLLLRRLRLRRLRRRRLRLRRRRLRRRLRLLLLLRLLRRRRLRRRRLLLLRLRLLRLLRRRRLLRRLRRRLLLRRRLRLRRLRLRRLLRRRLRLRRRRRLLRRRRRRRLLRRLRRRLRLLRRLLLRLLRLLLRRLRLRRLLLLRLLLRLLRRLRLLLRRRLRLLRLLLRRRRLLLLRLLLLRRRLLRLRLRLLRRLRRRRLRRRLRLLLRLLRLRLLLLRLLRLLLRRRLLRRRRRLRLRRLLRRRLRRLRRRLLLRLLRLLRLRRLRLLLLRLLLLRRRRLLLRRLLLRLRLRLLRLRRLRLRRRRRRLLLLLLLRRRLRLRRLLLRLLLLRLRRLLRLRLLLLRRLRRRRRRRRLLRLRLRRRRRLLLLRLLLLLRRLRLLLLLRLRLRRLRLRLRRRLLRRRRLRRRLRLLRRLRRLLRLRLRLRRLLLLRRLLLRLRRRLLRLRRLLRLRLLRLLRRRLRLLRLLLRLLLRLLRLLLRLRLRLRRRRRLRLRRRRRLRLLRLLRLLRRLRLRLLRRLRLLLLRLLLLRRLLRLRLRLLRLLLRRRRRRRLLRRRLRRRLLRLRRLRRRRLLLRLRRRLRLLRLLRLRRRLRRLLRRRRLRRRRLLRLRLRRLLLLRLLLLRRLRLLRRLLLRLLLRLRRRLRRRRRRRRRRRRLLLLLLRRLLLRRRRLLRLLRLLLRLRLRRRRLLLRLRRLLLRLLLLLLRRLRLRLRLLRRLRRRLLRRLRLRRRRLLLRLRRRLLLRRLRRLLRRLRLRRRRRLLRRLLRRRRLLRLRLLRLLRRRLLRLRRLRRRLLLLLLLLRLLLLRLLLRRRRRLLRRLLLRRLRLRRRLLRLLLLRLLLLLRRRLLRLLRRRRRLRLRLLLLLRLRLLLRRLLRRLRLLRLRRRRLLLLRLLRLRRRRLLRRRLLLLRRLLRLLRRRLRRRLRRRRLLRRLLLRRLRRRRLLRLRLLRRLRRLLRLLLLLRLRRRLLLLRLRRLLRRLLLRRRRLRLRRLRRRRRRLLLRRRLLRLRLLLRLRLLRRLRRRRRLRLLRLRRRLLRRLLLRLLRRRRLRRRRRLRRLRLLLLLLLLRRLLLLRRRRLRRRLLRLLRRLLLLRRRRRLRRLRRRRRLRRLRLRRLLRLRRLLRRRRRRLLRRRRLLLRRRRRRLRRLLRRLRRLLRLRLRRLLLLRRRLLLLLLLRLRLLRRRRLLLLRLRRLRLLLLLRLRLRRRLRRLRRLRLRRLRLLRLRRLLRLLRRRLRRRRRRRLRLRRRRRRRLRLRLLRLRLRLRLRLLRLLLLLRRLRLRRLRLRLLLRRRLLRLLRRLLLRRRLRLRLLRRLRLLLRLRRRRRRRLLRRLLLRRLRLLRLRLRLLRRLLLRRLLLLLRRLRLRRRLLLRRRRLLRLRRRRLRLLLRRLLLLRRLLLLRLLLLLRLRRLRRRLRLLLRLRLLRRRLRRRLRLRLLLRRLLLRRRLRRRRRLRLRRRRRLLRRLRRLRLLRLRRRRRLRRRLLRRLLRLRRRLLLLLRLLRLRRRLLRLLLLLRRLRLRLLRLLLRRLRRRRRLRRRLLLLRRLLLRLRLRLRRLRRRRLRRRLRLLRRRLLRLLLLLLRLRLLRRRRRLRRLLLRRRRRRLLLLLLLRLLRLLLRLRLLRRLLLLLLRLRRRRLLLRRRLRRRLRLRRRRRRLLLLLRRRRLRLLLLRLRRRRRRLLRLLLLRRRRLLLLRRRRLLRLRRRLRRLRRLRLLRLLLLLLRRLLLRRLLRRLRLLLRLLLLRRRRLRRRRLRRLRRRLLRRRRRLRRRLRRLLRRRRRLLLRRLRLRRLLRLLLRRRRRLRRRRLRLLLRLLRRRLRRLLLRLRLLRLRLRLLLLLRRLLLLRLLRLLLLLRRLRRRLLLLLRLRLRRLLLLLLLLLRLRLLRLLLRRRLRLRRRLRRLLLLRLLLRRLRLLLLLLLRLRLLRRLRRLRLRRLRRRLLLRRRRRLLLLRLLLLRLLLRLRLLRRLLLLRLRRRLRRLRRLRLRLLRRLLLRRRRLLLRLLRRLRRRRRLLLRLLLRLRLLLRRRRLLLRLRLLRRRLLRRRRRLRLLRLLLLLLLLRLLRRRLLRLRLLRRLLRRLRRRRLLRRRRRRLLLLLLLRRLLRRLLLLRLLLRRRRRRLRLLLLLRRLLRRRRLRRRRRLLLRLRLLRRRRLRRLLLLLLRLLLLRRLLRLLRLRLLLRRRRRLLRLRRRRRRRLLLLRLRRRRRLRLLLLLLLLRLRLLRLRLLRLRLLLRRRRRRLLLLLLRLRRLRLLRRRRRLRLRRLLLRLRLLLLRRRLLLRLRLLLLLLRRRLRLLLLRRLRLRLRRLLRRRRRLRLLLLRRRLRRLLLRRLRRRLLLRRRLRLLRRLLRLLLLLRRRLRRRRRLLLRRLRRRLRRRLLLLRLLRRRRRLLLLLRRRLRLLRRRLLLLLRRLLRLRRLLLRRRLRLLRLRRLLLRLLRRRLLRLRRRLLRLRLLRLLLRLRLLLLLLRRRRLRLRRRRLRLRLLLLLRRLLLLLRRRLLRRRRLLLRRRLRLRRLLLRRRLLRRRLLRRRRLLLLLLRLLLLRRRRRRRRLRRRRLRRLLRRRLLLLRRRRRRRRRLRLRRLRLRRRRRLLRRLRRRRRLLRLLRRRLLRRLRLRRRRLLRRLLRRLRRLLRRRRRRRLLLLRRRRRRRLLRLLLLRRLRRRLLRRLLLRRRLRRRLLRRRLLLRRLRRRLRRRRRLLRRRRLLLRLLLRRRRRLRLLRLLLLRRRLLLLLRLRRRRLLLLLRRRLRRRLRLLLRLRRLRLLRRRRLRLRRLLRLLRLRLLRLLRLLLLRRLRLLRRLRLLRLRLRRRLRRLRRRRLRLRLRRRLRLRLLRLLRLRLRRRLLLRLLRLRLLLRRRRRLLLLLRLLLRRLLRLLRLRLLLRRRRRRLLLRLRLLRLLRLRRRRRRLLLLLRRLRRRRLRRRRRRRRLLRLLRRLLRRLLLLLLRLRRRRLRRLRLRLLLRRLLRRLLLRRLRRLLLLRRRRRLRLLRLRRRLLRLRRLRLRRRLRLRRLLLLLRRRLRLLRLLLRLLRLRLLLLLLLRRRRRRLLRRRRRRLRLLLLRLLRRLLRLRLLLRRRLLLRRLLRLLLLLLRLRRRRRRRLRRLRLLRRRLRLRRRLLLRLRLLLRLLRLLRRLLLRRRRLRLRLLLLRLLLRLRLLLRRRRRLLRRLRLLRRRLRLLRRLLLLLLLRRLRLRLLRLRLRLLLRLRRLLRRLRRLRLRLLRRLLRRLLRLRRLLRRRRRRRLLRLLRLLRLRLRLLLRLLLLRRLLRRLRLRLRLLLRLLRRLLLLRLLRLRLLLRLLRRLRRLLLRLLLLRRLRRLRRRLRLLRRLLLLRLLRRLRRRRRLRRLLLRLRRRRRRRRRLLRLLLLRLLLRLLRRLLRLRLRRRLLRLRLRRRRRRLRRLRLLRRLLRRLLLLLRLRRLRRRLLRLLRRLRLRLRLRRRLLLRRLRRRRLLLLLRLLLLRLRLRRLRRLLRLLRLRLLRLLRRRRLLRRRLRRLRLRRLRRRLLLLRRRRRRRLRLRRLRRRRRLLRLLLRLRRLRLLLLLLRRLLLLLLLLRRLRLRRLLLRLRRRLLLRRLRRRRLLRRLLRRRRLLLLRRLLRRLRLRLRRLRLRLRRLLLRLRLLLRRRLRLRLLLLRRRLRRLLLRRRRLRRLLLRRLRRRLRLRRRLRLLLLRRLLRLLLLLRLLRRLLLLLLLRRLLLLLRLLLLLLRLLRLRRRRLLLRLRRLRRLLLRLLLRLLLRLLLRLRLLRLRRLLRRLRRRRRLRLLLRLLLRRLLRRLLRLRRLLRRLRLRLLRRLLRLRRLRRLLLRRRLLRRLLLRRLLRLRLLLRLRRRLRRRLLRLLRRLRRLLLLRRLRLRLRRLLLRRLRRLRRLLLRRLLLLLLRRLLLLLLRLLRRLLRLLRLRLLRLRLLLRRLLRRLRRRLLRLRLLRLRLLLLRLLLRRLLLRRRLRRLRRRLRLRRLRRRRLLLLLLLRLLRRLRLLLLRLRLLRRLRRRRLLLLLRLRRRLLRLRLLLRRLLRRRRLRLLRLRRRLLLRRRRLRLLRRLRRRRRRLRRLRLRRLRLLLRLRRRLRLLRLLLLLRRRRLLLLLLRRLRLLLLLLRLLLRLRLRLRRRLLRLRRRRLLRRRRLLLLLLLRLLRRRLLRRRLLLRLRRRLLRRRLRLLLRLLLLLLRRRRLRRRLRLLLRLRRLRLLRLLRRRLLLRRRRRRRLLLRLRRLLLLRLLRLLRLRRRLLRLLRLLRLLRLRRRRRRRRRRLLRLLRRRRLLRRRRRLRLRRRRRRRLLRRLRLRLRLLRLRLLLLLLRLRRLLRRLRLLLRRLLLLLLLRLRRLRRRLRLRLLRRLRLRRLRRRLLLRRRLRRLRLLLLRRRLLLLLRLLRLRRLRLRLRRLRRRLRLLRRRLRRLLLRRLLRRRRLRRLRRRLLRLLLRLLLLRRRLRLRRLRLLLRRRRLLLRRRRLRLLRLLRLRRLLRLRRRLLRRLLRLLLRRLRRRLRRRLLRRRRLRLRRLLLLRLLRLLLLRRLRLRLRLRLLRRRLLLRRLRRRLLRRRLLLRRRLLLRLRRLRRLLRRRLRLLRRRRLLRLLRLRLRLRRLRRRRLRLLRRRRRRLLLLRRRRLRRLLRLLRLLLRRRLRRLLRLLLRLLRLRRLRRRRLLRLLLRLRRRLLRRRRRRLLRLRRRRLRRLRRRLRRRRRRRLRRLLLRLRRLRLRLRLLRRLLRRLLRLRRLRLLLLRRLRLRRLRRLLRLLLRLRRRRRLRRLLLLRRLRLRRRLRLLLRLRLRLLLRRLLLRLLLRRLLLRLRLLRLRLRRLLRLRRRLRRLRRRRLLLLRRLRRLLRLRRLLLLLRRLLRRRRRRLRRRRRLRLRRLRRLLLLLLLRLRRRLLLLRRLRRRLLRLRLLLRLLLLRRRRLRLLLRLLLLLRRLRLRLLRRRLRLLRRRRRRLRRLRRLRRLRLRLLRRRRLLLLRRRRLRRRRLLLRLLLRRRLRRRLLRRRRLLLRRLLLLLLRRRLRRLLRRLLLLLRLRLRLRRRRLRRLRLRLRRRLLLLLRRRRLRRLRLRLRRLLRRLLRLLRRRLLLRRRRRLRRLLRLLRLRRRRLRLRLRLLLLLRRRRLRRLRLRLLLLLLLRLRRLLLRLRLLLRLLLLRRLLRRLRLLRLRRLLRRRLLLLRRLRLRLRLLLLLLLLLRRRLLRRLLLLLLRRRLRLRRRRRRLLRLLLLRLRRRRLRRRLLLLLLLRRLRRRLLLLRRRLRLLRRRLLRLRLRRRRLRLRLRLRLRRRRLRLLLLRLRRRLLLRLRRRLRRRLLLLLLLRLLRLLRLLRRLRRLLLLLLLRLRLRLLLLLRRLLLRRLLRRRLRLRLRLRRLLLLRLLRLRLLLLRLRLLRLRRLLRLRLLRLRLLLRLLLRLRLLLRRLRLRLRRRLLLLRLRLRLLRLLLRLRLRRLRRLRRRLLLLRLLLLRLRRRRLLLLRRRRLRLRRLLLRRRLLLLRRLRRRRLRRRLLLLLLRRRRRLRLRLLRRLRLLRLRRLLLLLLLLLRRRRLRRLRRRRLRRLRLLRLRRRLRLLRRRRLLRRLLLRLLLRRLLRLLRLLRRLRLRLRRRRRRLLLRRLLLLRLRRRRLLLRRLLRLRRRRRLLRLRLRLLRRLRLLRLRLLRRLRLRLRRLLLRLLLLRLRLRRRRRRRLRLLRLLLRRLRLLLRRLRLRLRLRLRRRLLLLRLLRLRRRRRLLRLRLLRRLLRLLLLRRLLRLLRLRLRLLRLRRRRRRLLLRLLRLLLRRRLRLRRLRRLLRLLLLRRRLRRLRLLLLRLRLRRLLRRRLLRRRRLRRRLRLLRRRLRRLLRRLRLLRRRRRRRRLLLLLRLRRRLLLRLRRRLRLLRRRRLRRLRRRRRLLRRRLLLLLRRRLLRRLLLLLRLRLRLLRLLLRRRLLRLLRLLLLLLRLRRRRRRLRLLLLLRRLRLRLLLLRLRRLLRLRLRLRLLRRRLRRLLLRRRLLLRLLRLLRRLRRRRRLLLRLRRRRRLRRLLRRLRLRRRLLRLLLRLLLRLLLLRRLLLRLLRLRLRRRLLLLRLRRLLLRRLLRLRLRRRRRRLLRLLLLLLRRLLLLLRLLLLLLRRRLRRRLLRLRRLLRRRLRLLRLLLRLRRRRRRLRLRLRRLLLRRRRLLLLRLLLRLLLRLRRLLRLRLLRRRLRRRLRLRLLLLRRLRLLRRRLRLLRRRLLRLRRRRRLRRLLLRLLLLLRRLLRRLLLRRLLLRRLRLLLLRLLRRRRLLLRRRLRRRRLRRLRLLRRRLLRRLLRRRRRLLRRLLRLLRRRLLRRRLRRRLLRLRRRRRLRRRRLRRRRRRLRLRLRLRLRRRLRRRRRLLRLRLRRRLRLLLLRLRRLRLRRRLRLRLRLLRRLRLRLRRRRLRLRLLLRLRLLRRLLLLRRRLLRRLLRLRRLLLRLLLLLRLRLRLRLLLRRRRLRRRRLLRRLLRRLLRRLLRRRLLRLRLRLRRRRRLRRLLRRRLLLLLLRRRLLLRLRRLRLLLRRLRLRRLRRLLRLLRRLRLLLRRLRLRRLLRLLRLLRLLLRLLRLLLLRLLLLLRLLLRRRRLLLRRRRRLRRLRLRRRLRLLRRLRRRRLRRRLRRLRLLLLRLRLRLRLRLRLLLRLRRRLRLRLRRLLLRLRRRRLRRRRLRRLLLRLLRLRRRRRRLLRRLRRLRLLLLLRRRRRRRRRLRLLRLRLRLRRLLRRRLRLLRRLLLLLLLRRLLRRRRRRLRLRRLRRRRLRRRRLRLLRRLLLLLRLRRLRRRLLLRRLRLLLLRLRLLRRLLRRRLLRRRRLLLLRLLRLLRLLRRLRRLLRRLRRRLRLLLRRRLLLLLRRLRRRLRRRRRRRLRRLRLRRLLRLLRLLRRLLRLLRRRLRRLLRRRLRLLRLLRLRRRLLLLRLRLRLRLLRRRRLRRRLLRRLRRRRLLLRLLLRRRLLLRLLLRRLRLRLRRLLRRLRLLLLRRRLLRRLRRRRLRLRLRRLRRLLRLLRRLRLLRLLRLRRLLRRRRRRRRLLLRRRLRRLLLRLRRLLRRLLRRRLRLRLRLLRRLRRLRRLRLLRRRRRRRRLLRLLRRRRRLRRLRLRRLLLRLLLLRLLRRRLLRLRLLRRLLRLLRRRRRRLRRLRRRLRRRLRRLRRLRRRRLRRLRLLLRRRLLLLLRLLRRLRLLRRLLRRLLRLRRRRRLRLRLRLRRRRRRLLLRRLLLLRRRLRRLRLRLRLLRRRLLLRRRRRLLRRRRRRRLLLLLLRRLLRLRRRLRLLLRLRLRRLRLRLRRLLLRRRRLLLRLLRLRRRLRRLRLRRRRLRLRRLLLRLLRLRRLRLLLRLLRRRRRRLLLLRLLLLRRRRLRLLLLRLLRLLRRLRLLLLRLRLLLRLRLRLRLLLLLLRLRLLRLLLLRRRLRLLRRLLRLLLRRRLLLRRLLRRRLLRRLRRLLRRLLRRRRRLRLLRRLRRRLLRLRRRLLRLRLLLLLRRRRLLLLRLLRLRRRRLRLLLLRRRLLRRRLLRRRLLLLLLRRRLLRRLRRLLLLRLRLRRLLLLLLRRRLLLLLLRRLLRLRRLRLRRLRLLLLRLLLLRRRLLRRRLLRLLRLRLLRLRLRRRLRRLLRRLLRRRLRRLLLRLRRLRRLLLRRRLRRRRLLLRRRLLLLLRLRRLLLRLLLLLLRLRLRLRLRRLLRLLRRLRLLLLRLRLRLRLLLLLLRLRRLRLRRRLRRRRLRRRRRRRLRRLRLRLRRRRLRLRRRRLLLRLLLRLRLLLRRRRLRRRRRRRRRRRRLRLRLLRRLRRRRLRRLLLRLRRLRLRLRRRLRRRRRRRRLRLLLLRRRRRLRRRLLRRLLRLLRRLRLRLLLRRLRRLLLLRLLRRLRLLRRRLLRRRLRLRLLLRLLRLLLLRRRRRLLLRRLLRLLRLRRLRRLRLRLLLRLLLRRLLRRLRLRRLLLRLRLRLRRLLLRLLRRRRRLRLRRRRLLLLRRLRRRLLRRLLRLRLLRLRRLRLLRLRRLLRRRLLRLRLRRRLRRLLRLRLLLRLRLLLLLLLRLRRLLLLRLRRRLLRRLRLRRRLRLRLRRRLRLLRRLRRRLLLLRLRRLRRRRRRLLLLRLRRRLLLLRRLLRLLRRRLRLLLRRRLRRLRLRLRLLLRRRRRRRRLRRLRRRRRLRLRRLRLLRRLLRRLLLRLLRRLLLRLLLLRRRLRLRLLRRRLRRLLLLRRLRLLLLRLLRLRRRRLLLLRRLRLLRRLRRRRRLLLRLRRLLLLLLRRLRLRLLLLLLLLLLRRRRLRRLRLRLRLLLLRLLLRLRLLLRRLRLRLRRRRRLLRRRRRLLRRRLLLRLLLLLLRLLLRLRRLLLRRLRRLRRRRLLRRRLLLRRRRLLLLLRRRRLRRLRRRRLLLRRRRLRLLLRLRRLRLRRRLRRRRRLLLRLRRRLRRRLLLRLLRRRLLRLLLLRRLLRLRLRLRRRRLLRLLLRRRRRLRLLLRLRRRRLLRLLLLLRLRLLRLRRLLLRRRLLRRRLRRRRLRLRLRLRRRRLLRRLLLLLLRLLLLRLLLLRLLLRRRRRRLLLLLLRLLLRRRRRLRRLRLRLRRRRRRLRLRLLRRRRRRRLRLRLLRRRLLRRRRRRRRRRRLLLLRLLLRLLLLRRLLLLLLLRRLRLRLRRRRRLRRLRRRLRLRRRLRLRLRRLLRRLRRRRRRLLLLLRLLLRLRRLLLRRLLLLLLRLLRLLRLLRRRRRLRRRLRRRRRRLRLRRRRRRLRRRRLLRRLLLLRLRLRLLLRLRLLRRRRLLRRRLLLRRLRLRLLLLRLRRRRLLRLRLRLRLRLLRLLRLLRLRRRLLLLRLLLRLLLRRLLLLRLLLRRRLLRRRRLRLRLLLLLLLRLRRRLLRLRRLRLLLLRLRLLRLLLLLRRRLRLRRRLLRLRRLLRLLRRLRRLRRRRLRLLRRRRRLRLRRLLLLRLLLRRLLLRRRRLRRRLRLRRLRRLLLRRLLRLRRLLRLRLLLLRRRLLRLLRRLRRLRLLRLLLLRLRLRRLRRRRRLRLLLLRLLLRRRRLLRLLLLRRRRLRLRLLLRRLLRLLLLLLRRRRLRLRRRRLRRLLLLLRLRRRLRLRRLRRRLLRLLLRRRLRRRLLLRLLLRRRLRRRLLLRLLRLRRLLLRLLLLLRLLLLLRLLLRLRLLLLLRRLRRRLRLRRRLLRLRLRLRLRRRLRRLLRLLRRRLRRRLRLLLLLRLLLRRLRLRLRLRLRRRLLRRLLLRRRRRLRRLLRLLLLRRLLRRLRRLLRRRRLLRLLLRLRLRRRLRLRLRLLLLRLRLLLRLLLLRRLLLLRRLLLRRLLLLLLRLRLLRLRRLLLLLRLRRLLRLLRLLRRLRRRRLRLRRLRRRLRLLLLRLLLRRLLLLLRRRLRRRRRLRLRLLRRRLRLRRLRLLLRRRRLRRLLLLRRRLRRRRRRRLRRRRRLLLRLLLLRRLRRLLLLLLLRLRLLLLLLLLRRLRLLLRRRRLLLLRRLLRRLLRLLRLRLRRLRRRLRRRRLRLRLLLLRRRRRLLLLLRRLLLLLRRRLLLRRLRLRLLRRLRLRLLLLRLRLLLRLLRRLRLRRLLRRLRRLLRLRRRRLRRLRRRLRRLRLLLLRLRRRRRRLRRRLLRRRRRRRRLRRLLRLLRRRLLRRLRLRLRLRRLLRLRLLLRLRLRLRRRRRRLRLRRLLRRLRRLLRRLLLRRLLLRLRLLLRRRRLLLRRLRRRLLLLLLRLRRLLLLRLLLRRRRLRLRLLRRRRLLRRLRRLRRRRLLLRLLLLLRRRRRRLLLRLLRRLRLLRLLRLRRRRRLLRRRLLRLLRRLRRLLRLRRRRLRLLRRLRLLRLRLLLLLLLRRLLLRRLRLLRRLRLLRRLLRLLLLLRRRRLLLLLRRLRRLRLRLRLRLRLRLRLRRLLRLRRRLRLLRRLLLRLRRRLLRLLRLRLRLLLRLRRLLLRRRLRRLLRLLRLRRRLRLRRRLRLLRLRLLLRLRLLRLRLLRRRLRRRRLLLRLRLRRLLRRLRLRRLRLLLLRLLRLRLRRLRRRRLRLLLRLLRRLRLRRRLRRLLRRLLRLRLRRLLLRRRLLLLRLLRRRRRRLRRLRLLRLLLRRRLLRLRLRLLRRRLRRRLRRLRRLLRRLLLRRLLLRLRLRLLRLLLRLLLLRLRLLRRLRLLLLLLRLRLLRRLLLRRLRRLRRLLRLRLLRLLRRRRLLRRRRRRLRRRRLLRLLRRRLLLLLRRRLLLLLLRRRLRRRLRRRRLLRLRLLLRRLLLLRRLLLLRLLLRRLLRLRLRRRRRLRRRRLLLLRRLRLLLLRLRLRRLRLRRLLLRRRLLLLLLLRRRLLRLLRLLRLRRRLLLRRRLLRLLRLLLRRLRRLLLRLRRLRRLLLRRLLRLRLLRRLLRRRLRLRRLLRLRRRLLRLLLRRRRRRRRRRRLRLRRLRLRLRRRLLRRRLRLLLRRRRRLRLRLRLRLLRRLLLRRRLRLRLLRRRLRLRLLLRRLLLRLLRRLLLRLLRRLRLRRRRLLRLLLRRLRRRRRRLLRRRRLRRLLRRRLRRLRLLRRLRLRLLRRLRRLRLLLRLLLLLRLLRLRLLLRRLRRRLLLRRRLLLLLRRLRRLRRRRRRLRLRLRRRRRLLLRRRLRLRRLLLRLLRRLRLRRLLRRLRRRLRRLRRRLRLRLRLLLLRRRRRRRLLRRRRLLRLLLLLLRLRLLLLLRRRLLRRLRRLRRLRRLRRRRLLLRLRLRRRLRLLLLRLLLRLRRRLRRRRLLLLRLLLRLRRRRLLRLLRRLRLLLRLRRRRRRRLLLLLRLLLRRLLLLRRRRLLLRRLRRRLLRRRLRLLLLRRLRLLRLLRLRLLLLLLRLRLRLRLLLRRLLRLRRRRRLRLLRLLRRRLLLLLLRRLRLRRLRRLRLLRLLRLRRRLRRRLRRLLLRRRLRLLRRLLLRRLRLRRRLRRRRRRLRLLLRRLRLRLRRLLRRRLLLLRRRRRRLLLLRRLLRRRRLLLRRRRRRRRLLLLRLLRLLRLLLRRRRRRLRRLLLRRRRLLRRRRRRRRLLRLLRLLLRRRRLLRRLLLLLLRRLLRLLRRLLRLRLRRRLLRLRLLLLLLRLRLRLRLLLLRLLLRRRLRLLLRRRRRLRLLLLRLRRLRRRLRRLRRLRLRLRLRRLLRLLRLRLRRRLRLRRRRLLRLLRRRRRRRLRLRRLRLRRRRLRLRRRRRLRRLLLRRRLRRLLLLRRRRRRRLRLRRLRRRRRRRRLRRLLLRLLRRRLLLLLLLLRRRRLRRLRLRLRLRLLLRLRRLLRRLLLRLLLRLRRRRLLLRLRRRRLLRLRLRLLLRRRLLLRRLLRLRLLRLLLRRRLLLRLRLLLRRRLLRRRLRRLLRLRRRLLLRRRLLLRRRRRRLRRLLRLRLRLLLRRLLLLLLLRRLRLLLLLLLLRLRLRLLLRRLLRLLLLRRLRRLLRRRRLRRLRLRLLRLRRLLRRLRLLRLLRRRLLRRLLRLLLRRLLLRLLLRLLLRLLRLLRLLLRLRRRLLLRLRRRRLRLRRLLRRLLRRLRLLLLLLLLLRLLLLLLRRLLRRRLLRRRLLLRLRLLRLRRLLRRLRRRRRRLRLRLRRRLLLRRRLLLLRRLRLRRLLRRRRLLRRRRRRLRLLLLRLLRLRLLRRRLRLRLRRRRLLLLLLLRRRRRRLLLRRLLLRLLLLRRLRLRRLRRRRRLLRLLRRLLRLLRLRRLLRRLRLRLRRRRLLLLRRLLRRLLRLRLRRRRLRLLRRRLRRLLLLLRRLRRRLLRRRRRRLLLLRRRRRLRRLRRLRRRRRRRRRLRLLLLLLRLLRRLLRRRRRLRRLLLLLLLRLLRRRLLRRRLLLLLRRRRRRRRRRLLRRLLRLRLLRRRRRLRLRLRRLLRLLLLLLRLRRRLLLRLLRRLRRRRRLLRLRLLLLRRLLLLLLLRRLRRRRRLRLRRRLLLRRLLLLLLLRLLLLRRRRRRLRRLLRLLRLLLLLLRLLLRLLLLLLRRRLRRLRRRLLLRLLRLLLLRRRRRRRRRLLLRRRLLRRRRRLRLLLRLRRRLLLRRRLRRRLRRRLLRLLRRRLRRLLRLRRRRLRRRRRRRLRRRLRLLLRRRLRRLLRLRLLLLRRRLLLRRRRRRLRLLRLRLLRLLLRRLLLLRRLLLRRRRLLLLLLRRRLLRLLRRLLRLLLLLRLRRLLRLRLRLRRLLLRRRRRRLRRRLLRRLLRLLLRRRLRRLRLLRLRRRRLRRRLRRRRLLLRRLLRLRRRLLLLRLRRLLRLRRLLLLRRRLRRRRRLRRRRLRRRLLRRRLLRRRRLRRRLLRRLLLRLLLRRRRRRRLLRRLRRLLLLLRRRRLRLLRRLRRLLLRRRLLLRLRRRLLLLLLLLRLRRLLLRLLRRLLLRLRRLLLRLRRRLRRLLRLRRLLLRRLLRLLRRRLRRRRLRRRLLLLRRRRRLRRLRLLRRLRRLRRRRLRLRLRLRLLLRLRLRLRLLLRRLLRLLLRLLRRRRLLLRLLRRRLRLLLLLLRRRRLRRLRRRRRRRRLLRLLLLRLLRRRRLRRLLLRRLRLRLRRRLRRRRLLRRRLLLLLRLLLLLLLLLLRRRLLRLLRLLLLLRLRRLRRRLRLRRRRLRRRLLRLLLLRLRRLLLRLLRLRRRLRRRLLLLLLRLLLRRLRRLLLLRRRLLRLLLLRLLRRRRRRLRRLRLLRRRRLLLRRLLRRLLLLLLLRLLLLRRRRLRLLRRRLLLRRLRLLLRRRLLRRRRLLRRRRRLLRRLLLLRLLRLLRLLLLLRLRLRRLLRLRRLRLLRLLRLRLLRLRRRRLRRRRLRLLLLLRRLLLRLRRLRRLLLLRLLRLRRLRLLRLRRLRRLRRRRLRLRLLRLRLRLLRLRLRRLRLLLRRRLLRRLRRRRLLLRLLLLLLLRLLLLRRLRRRRLRLLRRRLRLLLRRLRRLRRRLLRLLLRLRRRLLRRLRLRLRLRRLLRRRLRLLRLLLRLLRLLLLRLRLLRLLRLLLRRLRLRRRLRRLLRLRRLRLLLRRRLRRLRRLRLLLLLRLLRLLLLRLRRLLRLLRRRRLLRLLRLRRLRLLLRRLRLRRRLRLLLRLLRRLLRRRLRLRRRRRRLRLLRRLRLRRLRRRLRLRRRLRRRLLLLLLRRRRRRRLLLRLLRLRRRRLLLRLRLLLRRRRLRLLLLRRRLRLRRRRRRRLLLLRLRRLRRLLRLLLLLRRRRRLRLRLLRLLLRRRRRRLRLRRRRLRRLLLRLLLRRRRLLRLLLRRLRLLLRRLRRLLLRLRLLLLRLRLLRLLLRRRLLLRRRLLRRLLRLRRLLLRLLLLLLRLRLRLLRLLLLLLLLRRRLLRRRLRLRRLLLRLRRLLRLLRLRLLLRLRRRRLRLLRLLLLRLRLRRLRRRRRRLLLLLLLRRRLRLLRRRLLLRLLLRLLRLLLRRLRLRLLLRRLLLRLRLRLRLRLLLRLRRLLLRRLLRRLRLLRRLRLRLLRLRLLRLRLRRRRRLLRRLLRRRRRRRRLLLLRLLLLLLRLLRLLLLRRLRLLRLLRRRLLRLLLLLRLRLLLRRLLRRRRLRRLLLLRLRLRRLRLLRRRLLLRLLRRLLRRRLRLRRRRLRRRRRRLLRRRRRLLRLLRLRLLLLRLRLLLLLLLRRLRLLLRLRLLRLLRRRLLRLLLRLLLRRLRRRLRRLRRRRLRRRRLRLLLRLRLRRRLLLRLLRRLRRLLLRRRRLLRLLLRLRRRLLRRRRRLLLRLRRLRLRRRLLLLLRRRLRRLRRLLLLLRRLRRRLLLRRLLLLRRRLRRRRLRRLRRRRLLRLRRLRRRRLLLRLRLRRLLLRRRLLLLLRLRLRLRLRLRRRLLLLRRLLLRRRLRLLLRLLRLRLLRLRRRRLLLRLRRLLLRRLRRLRRRLRRLLRRRRRRRLLRRLRRLRLRLRRLLLLLRRLRLLLLRLRLRLRLLRLRLRRRLLLLRLLLLLRRRRLLRLRLRLLLRRRRLRRLLLRRRLLLRRLRLLRLLLLRRRRRLRRLLLLLLLRLLRLLRLRRRLLLLLLLRLLRRLRLLRRRLRRLLRLRRRLLLLRRRLRLLRRLRRLRLLLRRRRLRRRRLLLRLRRRLRLLLRRLLLLRRLRLRRLLRRLRRRRRRLRLRLRLLRLLRLRRRLRRRRLLLRLRLRRLLRLRLRRRLLRLLLLLLRRRRLRLLLRRLRRLRRRRLRLLRRRLLRLRRLLLLLLLLRRRLLLLRRLRLLLRLRRLRLRRLLRLLLLLRLLRLRRRRRLRLLLLRLLLRLLRLLLRRRRRRRRLLLRRLLRLLRRLLRLLLLRRRLRLLLRLRLRLRLRRLRRRRLRRRLLLRRRLLRRLLLRRRRRRLRLRLRLRRLLLRRLLRLRRRLLRRRRRLLLRLLLRLRLLRRLRRRLRRLRLRRLRLRRLLLRLRLRRRLRRRRLRLLRLLLRRLLLRRRRRLRLLLLRLLRRLLRLRLLLRRLRLLLRRRLLLLRLLLLLLRLLLLRLRLRRRRLLLRLLRRLRRLLRLRRLRRRLRRRLLRLRRLRRLRLLRRLLRLLRLRRRRRLRLRRRLRRLRRLRLLLLRLLLRRRRRRLRLRLLLLLLRLLRLLRLLRRRLLLLRLRLLRRLLLRRLLRRRRRRRLLLRLRLRLLLLRRLLLLRLRLLRRRLRRRLRRLLLLRRRLRRLLRRLRRRRLRLRRRRRLLRLLLLRRLLRRRRRLLLLRRLLRRLRRRLRRLRRRRRLLLRRLLRRLLRRRLRLRRLLRRLRLLLRRLRLRRLLRLLLLRLLLRLRLLRRLLLLRRLRRRLLLLLRLLLRRRLRLLRRRRRRLLLRRLLLLLLRRLRRLLLLRLRLRLRLLLLLLLLLRLRRLLLRRLRLRLLRLLRLRLRLLRLRRRLLLRLLRLLLLRLRLLRLRRRLLRRRRRLLRRRLLLLLRLLLRRRRRLLRRRRRRLLRRRRRLRLLRLRLLRLRRRLRRLLRRRLLLRLRRRLLLLRRLRLRRLRRLRRRRRRRRRLRRRLLRLRLRRRRRLLLLLRRLLLRLRRLLRLRLRLRLRLLLRRRRLRRLLLLLLLRLRLLLRRRRLLRRRRRRLRRRLLLRRRRLRLRLRLRLLLLRRLRRRLRRRRRRLRRRLLRLLLLRRRLRRLLLRRLRLLRRRLLLLRLRLLRLLLRLRRRLLRLLLLLLRRRLRLLRLRRLLRLLRRLRRRLLLRRRRRLRRLRLLRLLLRRRLLLLRLRRRRRRLLRLLRRRLLRLRLLRRRLLRRLRRRRRRRRLRLRRRLRRLLLRLLRLRRRLLRLLLRRRLLRLRRLLLLRLLLLRRRLRRRLLLLRRRRLLRLLRRLLLRLRLLLRLLLRRLRRRLLLLLLLLRRRRRRLRLRRRRLRRRRLRLRRRLRLLLLRLLRRLRLRLRRRLRLRRRRLRLRRRRLLRRLLLRLRLRLRLLLRLLLLRRRLLLLRLRLLLLRRLRRLLLLLLRRRLRLLRRLRRLLLLLRRLLLLRRLLRLRRRRRRLLRRRRRRLRLRLRRLRLRRLLLRRLLLLLLRLRLRRRRRLLRRRLRRRRLRLLLLLRLRLLRLRLRRRLRLLLLLRRRLRRRLLLRLRRLRRRLRLLRRLRLRRRRLLLRRRRLRRLLLLLLRRRLLRRRLLRLRLLLRRLRLRRLRRRRRLLRLLRRRRLLRLLLLLLRLLLLRLLRLLLLRLLRLLLLRRLLRRRLRLRLLRLLRLLLLLLLRLRLRLLRLLLRLLLRLRRRRLLRLRLLLLLLLLLLRLLLRRLRLRRRRRRRRRRRRLRLRRRLRRRLLRRRRLLRLRRLLRLLLRLLLLLRLLRLRLRLLLLRRLRRLRRRRRLLRLRLRRRRLLRLLRRLLLLLLRRRRLLLRLLLRRRRRRLRRLRLRLRRLLRRRLRRLRRRLRLLLRLLLRRRRLRRLRRRRLLLRRRLRLLRRLLLLRLRLLLRRLRRLLLRRRLRRLLRLRRLRRRRLRLLRRLRLLLLLLRRLLRLRLRRRLRRRRRLRRLRLLLRLLRRLLLRRLRLRLLRRLRLLLRRRLLRRRRLLLRLLLLLRLLRLRRRLRLLLLRLLLRLRRLLRLLRLRLRLRRRLRLRLLLLLRRLLLLRRRRLRRRLRLLLRRRLRLRLRRRLRRRRRLRRRLRRRLRRLLRRRLLLLRLLRLLRLLRRLRLLRRRRLLRRLRRLLRRLRRRLRRLLRRLRLLRLRLLLRRRRRRLRRLLLRRRRRLRRLRRRRLRRLRLLRRRLRLLRLRRLRRLLRRLRRLRLRRLLRRRRRRRLLRLRRLRRRRRRLLLRRRLRLLRRLLLLLRLLRLLLRLLLRLLLLRLLRRRLLRRRRRRRRLLRRLRLLLLRLLLLRLRRRLRLRRLRRLRRLLRRLLRLLLLRLLRRRLLRLRRRLLRLLRRRLRRLLLRRRRRLLLLRRRRLLLLRLLLRLRLRLRLLRRLRLLLLLLRRRRRLLRRLLRLLLRRRLLLRLRRRLRLRRRRRRRRRLLLLLRLRLLLRRRRLLLLLRLLRRRRRLRRRLRLRLLRRRLLRRLRLRLLRRLRRRLLLLRLRLLRRLLLLLRLRRLLRRLRLRRRLLRRLRRLRRRRRLLRLLRRRLLRLRLRLRRRRLLRLLRLRRLLRLRRLLLLLRRLLRLLLRRLRLRRLLLRLRRRLLLRLRRLLLLRLLRRRRLLRRRLRLLLLLLLLRLRRRRLRRLLLRRRLLRLRRLRLRLRLRLLRLRLRRLLRRRRLRRRRRRLLLRLLLLLLLLRLRLLRLLLRLRLLRRRRLRLRLRLLLRLRRLLLRLRLLRLRLLLLRLRRRLRLRLRLRRRRLLRRRLLLLLRRRLRRLLRRLRRRRLRLLRRLLLLLRLLLLRRRLLLLRRLRRRLLLLRRRLLRLLLRRRLLLRRRLLLRLLRLLLRRRRLRRRRRLLLRLRRLLLRRRLRLLRLLRLRLRRLRRLLRRRLLLRRLLLRRRRRLLRLRRLLRLLRRRLRRRLRRRRRLRLLRLRRRRLRLRRLRLRRLLRLLRLRRLLLRRRLRLLRRRRLLLLLLRLRLRLRRLLLLRRRLRLRRLRLRLLRRLRLLRRRLRRLLRLLRRLRLLLLLRRRRLLLLLLLRLLRLRRRLRLRRLLRRRRLRLLRRRRLRLRRLRRLLRRLLLLRRLLLRRLLLRRLLLRRLRRRLRRRLLLLRRLRLRLLRLLRRLLRLRRRRLLRRLLLLLRRLRLLRLLLLRRRLRLRLLRRLLLLLRLRLRRLLLLRLLLRRRRRRLRLRRRLLLLRLLLRRRLRLRLLRRRRLRRLRRLLLRRLRRLRLLRLLRRLRLLRRLLLRLLLRLRLLLLLLLRRLRLRLRRRRLLRLRLLRLLLLLRRRRLLRLLLRRLRLRRLRLLLLRRLLRLLRLRLRLLRLRRRLRRLLRLRLRRRRRRLLLRLLRLRRRLRRLRRLRRRRRRRRRRLRLRLLRRRRLRRLRRLRLLLRLLRLRLLLRRRRLLLRLLLLRLRLLRRRRRRLLLRLRRRRRRRLRLLLLRLLLRRLLRLRLLLLRLLRLLLRLLLRLRRRLRRRRLLRLLRRLRLRRLRRLLRLLLLLLLRLLRRRRLRLLLLRRLRRLLLLRRRRRRLRRRRLRRRLRRLRLLLLRLRLRLLRRRRLLLLRRRRLLLLLLRLLRRLLLRLLRRRRRLLLRLRLLLRRRLRLLRRRRRLLLLLLRRRLLLRRLRRRLLLLRLLLRRRRRRRRLLLLLRLLLLLRRRLRRLRRLLRRRRRRRRLLRLRRLRLRRLLLRLRLLLRRLLRRLLLLRLLRRRLLRRLLLRLRRRRRLLRRRLRLRRLRRLLLRLRRRLLRLRLRRLLRLRLLLLRLRLLRLLRLRLRLRRLLRRLRRLRRRLRRRRRRRRRLRRLRRLLLRLLRRRRRRLLRRRLLRLRRLRRRRRRRRRRRRRRLRRLLRLLRLLLLLRRRLLLRLLLLLRLRLLRRLLRRLLLLLRLRRLRRRLRRLRLRRRLRLRRLLLLRRRRLLLRRRRLRRRLRLRRRRLLRLLLRRRLRLLRRRRLLLRLLRLLLLLRLLRRRLLLRLLRRRRRLLRLLRLLRLLRLLRRRLLRLLRLRLLLLRLRLRRLRLRRLRLLLLLRLRRLRRRRLLLRRLLLLLRRLRRLLLRRLRRLLLRLRRLLLLLLRRLRRLRRLRRRLRLRRLRRLRRRLLRRRLRRRLRLLLLLLRLRRLRLRRRRRLLLLLRRLRLLLLLLRLRRLLLRLRRRLRLRRRLLRLRLLLRLRRRRLRRRRLLRRRRRLLRRLLLLLLRRRLLLLRRRLLLLRLRLRLRRRLRRRLRLLRRRLRLRLRRLRLRLRRLLLLRRRLLRLRLRRRLRLRLRRLRLRRRLLLLRRLRLLRRLLRRRLRRRRLLLRLRRRLRLLLRLRLRRLRLRRRRLLRRLLLLLRRRRLLRRLLRRRRLRLRLRLLLLLLRRLRLLLRRLLLRLRRRRLLLLRLRRRLLLLLLRRRLLLRRRRLLLRLLLRRRLRRRRLRRLLLLLRLRLRRLLLRRLLLLLLRRRLLLLRRRLRLLRRLRLLLRRLRRRLRLRLRRRLRRRLLRRLRRLRRLLLRRLLRLLRLLLRLRLRRRLRRRLLRRRRRLRRLRRRLLRRRLLRLRRLLLRRRRRLLLLRRRRRRRRRLLRLLLLLLRLRLRRLLRRLLRLLRRLLRLRLRRLRLLRLLRRLRLLRLLLRRLRRLLRLLLRLRRRRRLRLRLLRRRRRRLRLRRLRRLRLLRLRLLRRLLRLLRLRLLRRRLRLLRLLLLRLRLRLRLLRLRLRLRLLLLRLRLLLRLLLLLRRLRRLRLLLLLLLLRRLLRRRRLRLLRLRLLRRRLRRRRRRLRLRRLLRLLLLLRLRLRLLLLLLRRLLLRLLRLLLLRLLRLLRRLLLLRLRLLLLRLLRLRLLLLRRRLLLLLRRLLLLLLLRRRRLRRRRRLLLLLLRRLRLLRLLRLRRLRRLLRRLLRLLLRLLRRLRRLLLLLRLRRLRRLRRLRLLLLRRRRLLRLLLLRLLLRLLRLLRRRLLLLLLRLLRLRLRLRLRRLLRRLLRRLRRLLLRRRLRLRLLLRLLLLLLLRRLRRRLRRLRRLLLRRRRRLLLRLRRLLLRRLRLRRRRRLRRLLRLLLLRRLLLLLRLRRRRRRRLLLRLLRLLRLRLRRLRRRLLLLLRRRLLRLLRLRRLLRRRRRRLRLLLRRLLRRRLRLLRRLLRRRRLRLLRLRRLRLLLLLLRRRLLLLRLRRLLLLLRLRLLLRLRRLRRLLRRRLLLRLLRLRRRRLLRRRLLRLRLLRRLRRLLLLLLLLLLRRLRLRRRRRLRRRLRLLLRLLRRLLLLRRLRRLLLLRLLLRRRLLLRRRRLRLLLLLLLLLRRLRLLRLRRRRLLRRRLRLRLRRRRRRRRLLRLLRRRRRRLRRLRRRRLLLRRLRLLRLRLRLLRLLLRLLLRRRLLLRLRLRRRRLLRRRRLRLRRLRRLRRLLRLRLRLRLLRRRRRLLLRLRLLRRRLRLLLRLRLRLLRRLRLLRLLLRLRRRLLRRLLLRRRLLRRLLLRRLLLRRLRRRLRLRLLRRLRRRRRRRRRRLRRRLRRLLLLRLLRLRRRLLRLRLRRLRLRLLLLLRRLRRLRLLRRLRRRRLLRLRLLRLRLRLRRLRRLLRRLLLRRRLLRRLLRLLLRLRRRRRRRLRRLLRLLLLLLRRRRLRLLLRLRRLLLLLLLRLRLLLLRRRLLLLLLRRRRLRRLRLRRRRRLRLRLLLLLRRLLLLLRLLRLLRLRRRRLLLLLLRLLRRLLRRRLLRRRRRRLLLLLRRLRRLRRLRLLLLRRLLLRRRRRRRLLLRRRLRRLRRRRRLLRRRRRRRRLLLRLLLRLLLRLRLLRRLRLLLRRRLLRRLRRRLRRRLLLRRLRRRLRLLLLRLLLRRLRRRLLLRRRLLRLLRLRLLLLRRRRRLLLLRRLRLRLLLLRRRLLRLLRRLLRRRRRLRRLLLLLRRRLLLRRLLRRRRRRLRLLRLLRRLRRLLLRLRLRLLRRLRRLRRLLLLLLRLRRRLRLLLRRLLRLLRRRLLLRRRLRLRRRRRLRRRLLRRRRLRLRLRLRRLLRLRRRLLRLLRRLLRLLLLLRLLLRLLRRLRRRLRRRLRLRRRRRLRLLRRLRRRLLRLRRLLLRRLRLLRLLLRLRLLRRLRRLRRLRLLRRLRRLRLLLLLRRRRRLLRRRRRRLRLLRRRLLLLLRRLRRRLLLLRRLLRLRLRLRRRRRLLLLLLRRRRLLRRRLLRLLLRLLLRLRLLLLRRRRLRRLLRLRLLLLRLRRRRRLRRLRRRLLRRRLRRRRRRLRLRLLRLLRLRLRRRLRLLRLRRRRRLRRRLRRRRLRRRRRLRLLRRLRRLLLRLRRLLRLLLLRLLRRLRRRLRRLLRLLLRLLLRLLRLLRRLLRRLRLLLRLRRRLRRLRRRRLRLLRLRRRRRLRLRRRRLRLLRLLLRLLRLLRLLRLLLLRRRLLLLRRLRLLLRRRRLLRRRRRRLRRRLRRLRRRLLLRLRRRLRRLLLRLLLLRLLLLRLRLLLRRLRRLRRLLLLRRLLRLLRLRLLRRLRLLRLRRLRRRLLLRLLLLRLRRRLRLRLRRLRLRRRLRLRLLRLRLLLRLLRRRLRLRLLLRLRRRLLRLLRLLLLLLRRRRRLLLRRLRLLRLLRRLRLLRRRRLLLLLRLLLLRRRLLRRRLLLLRRLRLRRLLRLRLLRRLRLRRLLLRLRRLLLLLRRRRLLRLRLRRLLRRLRLLLLRLLRRRRLLRLRRLRRLRLRRLLRLRRLRLRRLRRLLLLLLRLRLLLRRRRLRRLLLRRLRLLLLRLLLLLRRLRRRRLRLRLLLRRLRRRLRLRRLRRRLRRRLRLLLLRLLLLRLLRLRRRLLRRLRLLRRLLRLLRRLRRRRLRRRLLRRLRLRRLLRLLLLRLRLLLRRRRLRRLRLLLLRLRLLLRRLLLRRLRLRLRLRLRLRLLLRRRRRLRLLLLRRRLLLRRRRLRRRLRRRLLLLLRLLRRLLLRLLLRLLRLRLRRRRLLRRRLLLLLRRLRLLRLLLLRRRRRLLRRLRRRLLLRRLLRLLRRLLRRLLLRLRRRRLRLRLRLRRRRRRRLLLRLLLRRRRRLRRRRLRLRLLLRLRLRLRLLLRLLLRLLLLLRLLRRLRLLLLRLRRLLLLLLRLLLLLRRLRLRLRRLRRLLLRLLLLRLRLLLLRRLRLRLRLRLRRLRLLRLRLRLRLLRRLLRLRLLLLLRRRRRRLLRRRRLLRLLRRRLRRRLRRRLRRRLRRRLLLRRRLLLRLLLRLRLRLRLLRRLLRRRRLRRLLLRRLRRRRLRLLRRLLRLRRLRRRRRLRRLLRLRLLRRRRRRLRLRLLLRLRRLRRRLRLRRRRLRRRRLLRRRRRLRLLRRRLLRLLRLLLLRLLRRLRLRLRRRRLRRLRLRRRLLLRRLRLLLLLLLLRLRRLLRRLLLLRRRRLRRRRRLLRRLLRLLRLRRLLLRRRRLRRRRLRRLLLRRRRLLRLLRLLRRLLRLRLRRRRLLRLLLLRRLRRLRRRLLLLLRLRLLRLLRRLLLLRRLRLRRRLRLLLLRRRRLRLRRRRLRLLRLLRRLRLLLRRRLLRLRLLRLLRLRRLRRRLLRLRRRRRLRRRRLLRLLRLRRRRRLRLLLRRLRLLLRLLRLLRLLRLLLLLLLLLLLLRLLRLLLRRRLLRLRRRRLRRLRRLRLLRLLLLRRRLRRLLRRLRRRRRRLLRRLRLLRLRRLRRRRLRRRLRLLLLRRLLRRRRRRRRLLLLRLLRRLLLLLLLRRRRLRRLRLRLLLLRRLRLRLRLLRLLLRLLRLRRLRRRLLRRRRLLRLLRLRRRLLLLLLRLRRRLRLRLLRLRRLRLLLRRRRLRRLLRLLLRRRLRLRRRRRLLRRRLRRLLLLLRLLRLRLLLLRLRLRLRRLRLRRRLLLRRLRRRRLRRRLLLRRRLLLLRRRLRRRLRRLRLLRLRRRRRRRLRRLLRLLLRLRLLRLLRRLRLRRRLLRLLLRRLRRLLLRLRLLRRRLLLLRLLRLLLLLLLRRRRRRRLRLRRLLRRRLRRRRRRRRLRLLLRRLRRLLRRRRRLLLRRLRRRRRRRLRLLRRRLRRRLRLLLRRLLLLLRRRLRLLRRRLRLLLRRLRLRRLLRLLLLLRLRLRLRRLRLRLRLRRLLRRRLRRRLRRLLLLLLLLRRLLLLRRLRLRLRLLLLLRRLLRLLLRRLLRRRLLLLLRRRRLLLLRLRRRRRLRRLLRLLLLLRLRLLRRLRRRRRRRLRRRRLLRLLLRRRRLRLLRRRRLRLLRRRLRRLLRRRRLLRRLRLLLRRRLLRLLLLLLLRLRLRLRRRRLRRLLLRRRLRLLLRRLLLRLLLLLLLLRLRRRRRLRRLLRRRLRLLLRRLLRRRRRLLRLLRLRLRRLLRRLLRLLRLLLRLRLRLRRRRRRRRLRLLLRLRLRRRLRRRRLRLLRRRRRRRRLRLLRRRLLRRRRRLLLRLRLLRRLLLLRRLLRLLLLRRLLRLLRRRLLRLRLLRRRRLLLLRLRRRRLLLLRLRLLLRRLRLRLLRLRRRRLRLLLLLLRRRRRRLRLRRLLRRRRLRLRLLLRRLLLLLRRLLRLLRLLRRLLLLRLRLLLRRRLLLLLLRLLRRRRLRRRRLRLLLRLLRLRRRLRRLLLLRLLRRLLRRLRLLRRLRLLRRRLLLRLRLRLRLRLLRRLLRRLLLRRLLLRRLRRRRRRRRRLRRLLLLRLRLRLRLLRLLLLLLRLRLLLLRRLLLLRLRRRLLLRLRLLRRRLRRLRRLRLRLRRRRLRLLRLLRLRRLRRRRLRLLRLLRRRLRLRRLRLRLLLRLRRLLRRRLRRLRRRRRLRLLRRRRRLLLLLRRRRRLRRRLRRLLRLLRRLLLRRRLRRRRLRLLRRRLLLRRLLLRRRRLRRRRRLRRRRLRLRLLLLLRRLRLRLRLRLLRLRRRRLLLLLLRRLRRLRRRRLRLLRLRRRLLRRRRRLLLRLRLLLLLLLRLLLLLRLRLRLRRLRRLLRLRRRRLLLLLRLRLLRRRRLLLRLLLRRLRLRLLLLRRLRRRRRRLLLRLLRLRLLLRRRLLLRLLRRLLRRLRRLRLLLLLRRRRRRLRRLRRLRRLRLLRLRRLRRRLLRRLLRLRLRLLRLRLLRLRLLLLLLLLRLLRLRRLRLLRLRLLRLRRLLLRLLLRLRLLRLLLLLLLRLLRRLLRRRLRLLLLLLRLLRLRRLRLRLRRRLRRLRLRRRRRLRRLRLLRLRLLLLLLLRLLRRRLLRRRRLRRLLLRLRRRLLLRLLLRRLLRRRRRLRLLLLRLLRLLRRRLLRRLLRRRRLRLRRRLLLLLRRRLLRRLLLRLLLRRRLLLRLLRLLRLLRLRLRLRRRRLRLRRRLRLLRLRLRRLLLRLRLLLLLRLLLRRRLLLRRLLLLRLLLRRLLRLLLLLLRLLRRRRLRRLRLLLLRRRLLRLLRLLLRLLRLLLLRLLLLRLRRRRLLLLRRRRRRRRRLRRRRLLLLRRLRRLRRRLLLRLLLLLRRRRRLRLLRLLRRRLLRRRLLLRRLRRLLLRLLRRLRRLLLRRRLLLLLLRLRLLLRRRLLRLLLRRRRLRLRLRLLRLLRLRLRLRLLRLRLRRRLRRLLLRRLRRRRLRRLLLRRRRRRRLRRRLLRRLRRRLLRLRLRRRLRRRRRLRRLLLLRLLRLLLLRLLLRLLRLLRLLRLRLRLLLLLLLLRRLLRLLLLLRLLRRLLRRLRLLLLLLRLRLLRRRRRLLRLRLRRLRLRLRRLLRRRLLLLLLLRLRLRLRRLRRLLRLLRLRRLLRLLLLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLLRLRRLRRRRRLRRLLRLRLLLLRRRRRLLRLLLLLLRLLLLRRLLLLRRLLLLLLRLLLRLLRLRLRRRRLRRLLRLLRRLLLLRLRRRLLRRLRLRRRRLRLRRRRRRLLLLLRRLLRLLRRRLLLLLLRLRLLLRLRRRRLRLRLRRLRRLRRLRLLLLLLLLRRRLRLLLRRRRLLLLRLLRRRRRRRRLLRRLRRLLLRLRLLRLRLLRRRLLRRLLRLLLLLRLLLLRRRLRRLLLLRLRLRRRLLLRRLRRRLLLRLLRLLLLLRRLLRLLLLRLRLLLRRRRLRLRLLLLRRLRRRLRRLLRLRRRRLRLRRLRLLRRRLRRRRLRLRLLRRLRRLLRRRRRLRRLRLRLRRRRRRLLRRRRRLRRRLRLRRRLLLRLRRRRLLRRRRLLRLLRRLRRLLLRRLRLRLLLRLRLRRRRLLRLRLLRLLRRRLRLLLRRLLLRRRRRRRRLRRRRLLRRRLLLRLRRLLRLRRLRRLRLRRRLLLLRRRRRLRLRLRRLLLRLRLLLRRRRLLLRRRRLLRRRRLRRRLRRRLRLRLRLLLRRRLRRLLRLRRLRRRLLRRLLLLLLRRLLLRLLLLLRLLRRLLRRLRRLLLLLRLRLRRLLRRRRRLRRLLLRRLRRRLRLRRLLRRLLRRRRLRLLRLRRRRLLRRRRLRRLLRRLLRRRLLLRLRRLRRRRRRRRLRRRRRRRRLLRRRRLRLLRLRLRLRRRLRRRLLLLRRLRRLLRLLLLRRLLLRRLRLLLLRRLLRLRLRLLRRRRRLRLRLLLRRRLRRRLRRLLRLLRLRRLLRRRLLRRLRLLLLLLLLRLRRLLRRLLLRLRRLRLRLRLRRRLLRLLLLLLRLLRLRRLLLLRLRRLRRLRRRLRRRLRLLRLLLRLLRRLLRRLRRLLLRLRLLRRLRRLLRRRRLRRLRRRLLRLRRRLLRLLRLLLLLLLRLLRLLRLRRLLRRRLRRRRRLLLRLLLLLLLRLRRLRRRLLLLRLRRLRLRRRLLLRRRLRLRLRLRRRRLRLRLLRLLRLLRRLLRRLLLLLRLLLLLLRLRRRLRLLLLLRLRLRLLRRRRRRRRRRLRLRLRRLRRRRRLRRRLRRLRLLRRRRLRLRRRRRLRRRLLLLRRLRLLRRRRLRRLLRLRLRRLLRRRLLRLRRRLRLRLRRLRRRRRLRLLRLLRRRRRLRLRRRLLRRLLLRRLRRLLRLRRRRRRLLLRLLLRLLLRRRLRLLRRLLRRRLLRRRRLLLLLLRLLRLRLRRLRLLLLLRLLLLRLRRRRRRLLRLLRRRRRLRLLRLRRLRRRRRLLRLRRRRRLLRRLLRRLRRLLRRLRRRRRRRLLLRLLRLLRLRLRLRLLRLRLLLLRRRLRLRRLRRRLRRRLRLLLRLRLRLRLLLLLLRRLLLRRLRRRRRRLRLRLRRRRRLLLRLRRRRRLLRLRRRRRLRRLRRRLLLRLRRLLRRRRLLRLLLRRLLRRLLRRRRRLLLLRLRLRLLRLRLLLRRLRLLLRLRRLRLRRRLLRLLRRLLRLLLRRLRRLLRLLRLLLLRLLLLRRLRRRLRRRRLRLLLRRRRRLLRLRLRRLRRRLRLLRLLRLRLLLRLRLRLLRLRLRRLLRRRRRLRRRRLLRRLRLRLRLLLLRRRLLRRLRLRRRRLRLLRLLRLLRRLRLRRLRRRLRLRLRLRRRLLRRLLLRLRLLRLRLLLRRLLRRLLLLRRRRLRRLLLLLRLRRRRLLRLRLLRRLLRRLLLLRRRRLRLRRRRLLRLLLRLRLRLLLRRRLRRLRLLLRLRRRLLRLLLLRRLRLRRRRLLRLRRRLRLLRLRRLRRRRLRRRLLLLRRRLRRLLLRRLLLLRRLRRRRRRRRRLRRRRLRRLRLLLLRLLRLLRRRRLRRRRRRLRLRRRRRRRLRRRLRLRRLRLRRLLRLLLLRRLLLLRRRLLRRRLRLRRLLRRLRLLLRRRRLRRRLLRRRRLRRRLRRLRRLLRLRLLLRRLRLLLLRRRRLRRLRRLRRRLRLLLRLLLRRLRRRLRRLLLLRLLRLRRLRLRRLLRLRRLRRLRRRRLRLLLLRLLRLRLRRLLLRRRRRRRRRLLRRLLRLRLRLRRLLRRRRRLRRLRRLLLRRLLLRLLRRLRLRLRLRLRLRLLLRLLLRLLRLRRRLLRLLLRLLRLRRLRRLLLRRLRLRLRRLLLRRRRLLRLLRLLRLRLRRRRRRLRRLRRLRLRRRRLRLRLLLLRLLLLRLRLRLRRLRLLRRRRLLRRLLLRRRRRRLLRRRRRLRLRLRLLRRRRLRLRRLLLRRLLLRLRLRLLLLRRRLLLRRLRLLRRLLLRLLLLRRRRRRLRRLLLLLLRRLLLRRRRRLRLRRLRRRRRLLLLLLLLLLRRRLRLRLRLLRLLLRRLLRLRLRRLRLRRRLLRRRRRRLRLRLLLLRLLRRLLRLLRLRRLLRLLRLLLLRLLRRRLLRLRRRLLLRLRLRLLRLLRLRRRRLLRRRLRLRLRRLLRLRLLRLLLLRLRLLRRRLRLRLLRLRRRRRRRRLRLLRRRLRRRLRRLRLRLLRRLLLLRRLLRLLRRRLLRLRLRLLRLRRLLLLRLLLLRRLRLLRLLRLLLLRLLRRRLLRLLLRRRLRLLLRRRLRRLRRLLLLRLLRLRLLLLLRLLRLLRLLRRRLLRLRRLRRLRLLRRLLLLLRRLRRLLLLRLLRLLRRRLRLRLLLLLLRLLRRRRRLLRLLRRRLRRRRRLLRLLLLRLRLLLLLRRLLLLRLRRRRLLRLRRLLRLRLLRRLRRRRRLRLLLLRLLLRRRLLRLRRRRLRLRRRLLRLRRLRLRLLLLRLLLRRRRLRRRLLRLRLRRLLRRRRRRLRLLRLRLLLLLRRLRLLLRLRLRLLLLRLRRLRLRLRLRLLRLLLLLRRLLRLLRRRLRRLRRLLRRLLRLRLRRLRLLRRLLLRRLLLLLLLLLRLRRRLLLLLRLLRRRRRLLRRLLRRRRLRLRLRLRLLRLRLLRRLRRRLRLRLLLRLRRRRRRRRLLLRRLRLRRLLRRRRRRLLLLRLLRRLLRRRRRLRLLLRLLLLRLRRLLLLRLRRLLLLRRRRRRRLRLRRLLLRRLRLRLLLRLRRLRLRLRRLLLRLLRLRRRLLLRRRLLLRLLLLLLRLRLLRLRRLRRRRRRLRLRRLLRLLRRRLLLLRLRLRLLRRRRLLRLRLLRRLRRLRLRLLRRLRLRRLRLRRRLRRLLRLRRLLRRRRRLRLRLRLLRLRRRLRRRRRRRLRRLLRLRRLRRLRRLLRLRLRRRRLRRRRRRRRLLRRLRRLRRRRLRRLRLLLLLRLLRLRLLLLLRRLRRRLLRRLLRRRRLRRLRLRRRRRRLRLRRRLLRRLLRLLLRRRRRRRRLRLRLLRLLLRLLLRRLLLRLRRLLLRRRLRRLLLRLLLRRLRRLRRRRRLRLRLLLRRLRLRRLLRRLRLRRLLLLRLLRLRLLLLLLLRRRRLLRRRRRLLLLRRRRRLLRRLRRLRRRRLLLRLLRLRRLLLLLLRRLLLLRRRLRLLRRLLLRLRLRLLRLLRRLLLRLLLLRLRRRLLRLRLRLLLLLLRRRRRLLRLLRRLLLRLRLRRLRLLLLLRRLLRLRRRRRRRLRLLRRRLLLRLRLRLRRRLRRLLLLLLRRLRLLRRRLLLLLRRLRRLLRRLRLRLLLRRRRLRLRLLLLLRLRRLLLLRLLRRLRLRRRLRRLRRLRLLLRLLRRRLLLRRLLRLRLLLRRLRRLLRRRRRLRLRLRLLRLRLRLRLRLLLRRLLLLRLRRLRLLLRLRRLRLLLLRLRRLRRLRLLRRLRRLRRLLRRRLLLRLLLRLLLRRRLRLRRLRLRLLRRLRRRRRLRRLRLRLRLRLRRRRLLRLRLLLRLRRRLLLLRRRLRRRLRRRRRLRRLRRRLRLLLLLRRLRRLRLRLLLRLRRLRRRRLRLRRRRRLRLLRLRRLRLRRLRLLLLRLLLLRRLLLLLLLLRRLRRRRLRLLRRLRRRRLRLLLRRRLLLRRRRLLLLRRRRLRLRRRRRLLLRRLRRRLRLRLRRRRLRRRLLRLLLLLLRLLLRLLRRLLLLRLLLRLLRRLRRRRLLLLRRRRRLLLLRRRRLRLLRLLLRLRLLLRRRRRRLLRLRLLRLRLRLLRLLLLRLRLRRRRRLLLLLRRLLRLLLLLLLLRLRRRLRRRRLLLLRRLLLRRRLLLRLRRLRRLLLLRLLRRLLRLRRRLRLLLLLRRRRRLLRLLLLLLRLLRLRLRRLRLRLRLRRLLLRRRLRLLRLRLRRLRRLLLRLLLLLRRRLLLLRLRLRLRRRLRLRRLRRRRRLLLRLLRRLLRRLRLLLRLRLLLLLLRRLLLRLRLRRRRLLRRLRLLRLRRRRRLLLRRRLLLRRRLRRLRRRLLLRRLRRLLRRLLLRRLLRLRRRRRRLRRLLLRRRRLLLRLRLLRLLLRLRRRLLLLRRLRLRRRRRLRLLRRLRRRLRRLLLRRRRLRLRRRLLLRRLRRLLRRLLRLLRLLLLRRLRLRRRLRLLLLRLLRLLLRLLRRRLLRRRRLLRRLRLRRLLRRRRLRRLLRLLLLRLRLLRLRLRLRLRLLLRRRRLLLRLLLLLLRRLRLLLLRRRLLLLRRRLRLRLLLLRLLRRLLRRLLRRRLLRRLRLLLLRLRLLLLLLLRRRLLRRRRLRRRRRLRRLLLRRRLLRLLLRLLLLRLRRRRRRLRRRRRLRLLRRLRRLRRLLRRLRLRLRLRRRLLLLLRLRLRRLRRRLLLLRRLLLLLLRRLLRLLLLRLRRLLRLLLLLRRRLLRRRLRLRLLLLRRLRLRLLLRLRRLLRLLRLLLRLRRRRRLLLRLRRRRLLLLRLRLRRRRRLLRLRLLRLLRRLRRLLLRRLRRLLRRLLLRRRRRLLRLLRRLRLRLLLLRLLRRLLLLLLRLLLLLRRRLRLRLLLRLRLRRRLLRLRRLLLRRLLRRRRRRRRLRRRRRLRRRLRLRLLRRLRLRLLRLRLRRLLLLLLRRRRLRLLRRLLLLRLRLLRLLRRRRLRLLRLLLRLLLLRLLLLLLRRLLLRLLLLLLRRRLRRLLRLLLRRLLRRLRRRLRRRRRLLRRLRLRRRLLRRLLRRRRLRLLRRLRLLRLRLRRRRRRRLLRLLRRLLLLLLRRLRRLRLLLRRLRLLRRRLLLRLLLRRLRLLRRRRRRLLRLRLRRRLLLRLRLLRLRLLLLLLLRLLRLLRLRLRRLLRRLRRLLLRLLLLRLRLRLLLRRRLRRRRRRLLLLLLLRLLLLRRLLLRRLRLLLLRLRLLLLRRLLLLRLRRRLRRLLLRRLRLRLLRRRRRRLLRLLRLLRRLRRLRLRLLLRLRRLLLRLRRRRLRRLRRLRLLRRLRLLLRRRRLRRRLLLLLRLLLRRLLLRLRRRLRRRRLRLRLLLRRLLRLLLRLLLLLRRRRRRLLLRRRRLRLRLLRRLRRLLLRRRLRLLLLLLRRRLRRLRRLRLLRLLRRRRRRRRRRLLRRLRLLRRLLLLLLRLRLLLLLRRRRLRLLLLLLLRLLRLLRLLRRRRRLLRRLLLLLLRLRRLLRLRRRLLLRRRLLRRLRLRLLLLLRRRLLLRRRRRLLLLRRLLRRLRRLLLLLLLRLLRRLLRLRRRRRLLLRRLRRLLRLLRLRLLLRRLRLLRRRLRRLLRRLLRRRRLRRLRRRRLLRLLLLRRLRLLLRRRRLRLRLLLRLLRRRRLRRLRLRRLRLLRRRRLLRLLRLRRRLLRRRLLLRLRRLLRRLRRRLRRRRRRLLRRRRRLLRLLLRRLLLLLRRLLLLRRLLLLLLLLLRLLLLLRRRRLRLRLRLRRLRRLLLLLLLRRLLLRRRLRLLLRLRRRLRRLLRLRLRRLLLRLRRLRLLLLLLRLRRLLLRRLLRRRRLRLRLLLLRLLRRRRLLRRRRLLRLRRLLRLLRLLLLRLRLLLRLLLLRRRLLLLRRRLRRRLRRLLRLLRRRLLLLRRLRLRLLRRRLLRRRRRRLRRRRLRRRLRRRLRRLLRRRLRRRRLLRLRLLLLRRRLRLLRRRRLLLRRLLRRRLLRRLLLRRRRLLLRLRLLLRRLLRRRLLLRLRLRLLRLRRRLRLRLRRRRLRRRLRRLLRLRLLRLLRLRRRLLLLRRLLRLLLLLLLRLLLLLLRRLRLRRLLLRRLRLRRLLLLLLRLRRRRRRRRRRRRRRLLRLRRLRLRLRRLLLRRLLRLRLLRLRRRLRLLRRRLLLLLRRRLLRLRLLLLRLLLLRLLLRLRLRLLLRRLLRLLLLRRRLRLRRRLLLRRLRRRRLRRRRRRLRLRLLLRLLRRLRLRRLLLLLRLRRRLLRRRLRRLLRRLLLLRRRLRRLRRRLLRRRLRLRRRRRLRLRRLLRLRLRLLLRRRLRLLLRRLLLLRRRLRLRLRLLRRLRLLRLRRLRLRRLRRLRLRLRRRLLLLLRRLRLRRRRLRLRLLLLLLLLLLRRLRLLLRLRLLLLRLRRLLLRRLRLLRLLLRRRLRLLLRLRRRRRRLLLRLRLLLRLRRLLRRRLRRRRLLLLRLLRLLRRRLRLRRLLLRLLLLLLRRRLLRLLRLRLRLLLLLRRLRRRLRLRRLRRLLLRLLRRRLLLRRRRRLRLRRRLLRLLLLRLLRLLRRRLRLRRLRLRRRRRRLLRLLRRLLLLLRRRLLRRRLRRRRRRLRLRLRRRRRLRLLRRRLRLLRLLRLLRLLLLRRRLRRRRLLLRLRRRLLLLRRRRRRLLLRRLLLRRLRLRRLLRRLRLLLLRLLRLLLLLRLRRRRLRRRRLRRLLRRLLRLRLLRRLLRRLRLLLLRLLRRLLLLRRLRRLLLLLRLRRLRLLRLLRLLRLLRLLRRRRLLLLLRRLRRRLLRRLRRRRLLRRRRLRLRRLLRRLRLRLLLRLRRLRLRLRRRLRRLRRRRRRRLRLLRLLLLLRLLLRRRRLRLRRRLLRLLRRLLRRLRRLLLRLLLRRRRRLRRRRRLRLRLRLLRRRLRRLLRRLRLRLRRLLLRRRRRRLLRLLRRRLRLRLLLLLLRRLLLLLRLLRRLLRRLLLLRLLRRRRRLLRLRRRLLRRLRRRLLRRLRRLLRRLLRLLLLLRRLLRRLLRLRRRRLRLRLRLLRLRRRRLLLRLRRLRRRRLRRLRLRRRLRRRLRRRRLLLRLLLLRRLRLLLLLRLLLRLRLRRRLLLLLRRLLRLLRLLLRLRLRLRRLLRRLRRLRLLRRRRRRRLLRLLRLLLLLRLLLRRLRRRRLLRLLRRRLRLLRRLLRLRLLRLRLRRLRLRLRRRLRRLLRLLRRLRRLLRLLRLRLRLLRRRLRRLRLLRRRLRLLRLLLRRRRRLLLLRLLRLLLLRLLRRRLLRRRLRRLLRRRLLRLRLLLLLRRLLRRLLRLLRLRRLLRRRRLRRRRLRRRLLLRRRRLRRLRRRRRLRLRLRRLLRLRRRRLLRRLRRRRRLLLLLLRLRLLRLLRRRRRRLLLRRLRRRLRLLRLRRLRLLRLRLLLRRRRLRLLLLRLRLLRLLRLLLRRRRRRLLLLLRRLRRRRRLLRLRRRLLRRLLRRLLLLRRLRRLRLRLLRLRLRLLRLRRLLLLRLRLLLRRRLRLLLRRRRRLRLRLRRRLRRRLLRLRRRRRLLLRRLLLLRRLLRLRRLRLLRRRRLLLRRRLLRLLLLLLRRRLLLRRLRLRLRLRRRRLRLRRLLRLLLLRLLRLRLRRLRLRLRLLLLLLRLRRRRRRRLLLLLRLRLRLLRRRLLLRLLRLLRRRRRLLLRLRLRRLRLLRLLRLRLRLLLRRLRRLLRRLLRLLLRLRLLRRRLLRLRRLRRLLRRLRLLLRRRLLLRRLLRLRRLLLRRLLLRLRRLLLLRLLLLRLLLLLRLLLLRLRLLLRRRRRLLRRRLLLRLLRRRRLLLLRLRLLLRRLLRLLLLRRLRLRLLLRRRRRRRLLLLRLRLRLRLRRLRRRRLRRRLRRRLRLLLRRRLLRRRLLLRLRRLLRLLRRRLLRLLLRRRRRLRRRRRLLLRRRRLLRLRRLRLRLRLRLLRRLLRRLRLRLRRLLRRLLLLRLRLLRRLRRLLLLLRRRRLLLLLLLRRLRRRRRRLLRLLLLLRRLRRLLRLRRLLRRLLRRLLRLLRLLLRLRLRLLLLRLRRLLRLLLRRRLRLRRRLRRRLRLRLLLLLLLRLRRRRLLLLRRRRLLRRRLLLRLRLLRRLRLLRLLLRRRRRLRRRLLLRLRRLLLRRLRLLRRRLLLRRRRRLLRLRRLLRRRRLLRRRRLRLLLLLLLRLLLLLLRRRRLRRLLLLLLLRLRRLRRLLRLRRLRRLRLRLRLLRLLRLLLLLRLRLLLLRRRLLLRLLRRRLRLLRRLRLLLRRLLLLRRRLLRLLLLLLLRLRRRLRRRLRLRLLRLRLRRRLRLLRRLLRRRLRLRRLLRRLLRLLLRRRRRLRRLRRRLLLRLRRLLLRLRLLLRLRLLLRLRRRLLLLLRRRRRRRLLLRLRRRLRLLRRRRRRLLRRRLLRLRRLRLLLRLLRLRLLRRRLLLRRLLRRLRLLLLRRRLRLRLLRRRRRLLLLRLRLRRRRRRRRRRLRLLRRRRRLRRLRRLLRLRLLRLLRLLRLRRRLRRLLLLLLRRLLLLRLLRLLLRRLLRLLLLLLLLLLLRLLLLRLRRRLRLLLLRRLRLRRRLLLRLLLLRLLLLLLLRLRRRLRRRRRRLLLLLRRRRRLLLLRRRLLRRRRLLRRLRLRLLLLLRRLRRLLRLLLLRRRRLLRRRLLLLRLLRLLLRRRRLLRRRLRLLRLLRRRRLLRRRLRRRLLRLRRLRLLLRRRRLRLRRLRRLRRLRLRLLLLRLLLLRLRRLLLRRRRRLLRRRLRLLRLLLRLRLRLRRLRLLLRRLLRRRRLLRRRRRLLRLRRRLLLLLRRRRRLRLLRRRLRRLLLRRLRLLLLRLRRLRRRRRLRLRRRRLLRLLLRRLLLLLLRRRLLRRRLRRRLRLLRLLRLLRLLRLLLRRLLLLLRLLLLRLLRLLRRLRRLLLLRLRLLLRLLRLRLLRRLRRRLRLRLLRLLLLLLLLLRLLRRLRLLLRLRRRLLRLLRRLLRRLRLRRRLRLRLRLLRLLLRLLLLLRRRLLRRRRRLLRLRRRRLLLLLRLRRRRRRRRLLRLRLLLRRRRLLLRRRLRRRLRLLLRRLLRRRRLLRRRLLLLLLRRRRLRLLLLLRRLRRRRLRLLLLLLLLLLRLRRLLRRLRRLLLRLRRRLLRRLLLLLLLLRLRLRLRLLLLRRLLRRLLLLRRRRRRRRLLRRRRRRLRLLLLLLRLRLLLLRRLLLRLRRRRLLLLRLRLLLRRLLRRLRLLLLRLRLLRRLRLRRRLRLLRLRRRLLLLRLLLLRLLLRLRLLLLLLLRLRRLLLRRLRRLLRLLLRLRLLLRLLRLRLLLLLLRLRRLRRLRRRRLLRRRLLLLLLLLLLLRLRLRLLRRRRLRRRRLRLLLLRLRLLLRRLLRLRRRRRRLRRLRRLRLLLRRLRRLRLRLLRLLRLRLLLLLRLRRLRLLLLLLLLLLLRLRRRRRRRRRRLLLRLLLLRRRLLRLRLRLLRLLLLRLLLLLRLLLRRLLRRRRLRLLRRRRLLLLLLRRLRLRLRRRLRLRRRLRRLLLLRLRLRRLLRLRLLLLRLLRRRLLLRRRLLRRLRLLLLRRLRRRLRRRLLRLRLRRLRLRRRRRLLRRLLRLRRRLLLRLLLLLLRRLRLLRLRRRLRLLLLRRRLRRRLLLRRRLLLRLRLRLRRRLLLRRRRLLLRRRLLRLRLLLRRRRLLLRRLRRRLRLRRLLRLLRRRLLRRRLRLRLRLLLRLLRRLLLRRRRRLRRLLLRRLRRLRRRLLLLLRLRLLLLLRLRLLRRRRRLRLRRRRRRLLLRLLRLLLRRRRLLLRRRRLLLRLRRRRRLLLRLRLLRRRLRLRLRRLLLLLLRLLRLRLLRLLLRLLLLRLRRRLLRRLLLLLLLLRLLRRRLRLLRRLLLRLLLRLLRRRLRLLRRRRLLRRRLLRRLRRLLLLLLRLRLLLLRLRRLLRRLLLRLRRRRRLLRLRRLRRRRRLLRRLLRRLLLLLLLRLLLRRRLRRRLRRLRRRRLLRLRRRLRRRLLLRLLLRRRRLRLLRRLLRLLLRRRRLRLRRRLRRRLLLRLRRRRRRLRRRLLLRRLRLLLRRLRLLRRLLLLRLLRLLRLRRRLLLLLRLLLRRLLLRLLLRLRLRLLRLRLRLLRRLLRRRRLLLLLLRRRRRLRLRLLRLLRRRLRLLRRRRLLRLLLLLLRLRLRRLLLRLRRLLLRRLLLLRRLRLRRLLRRLRRRLRRRRLLLRLLRLLLLRLLLRLLRRLLRLRLRLLRRLLRRLLRRRLLLLRRLLRRRRRRRLRRLRRLLLRRRRLLLRLRLRRRLLRLLLLLRRLLLLRRLLRRRLRLRRLRRRRLRRRLRRRLRRLRRRLRRRLLLRRRRRRRLLRRLLLLLRRLLLLLLLRLRRRRLLRLLLLLRRRLLRLRRLRLRLLRRLLLLRLRLRRRRRRRLRRRLRLRLLRLLRRLRRRRLRRLRRLLLRLRRLRLLLLLLRRLRRRRRRRLLLLRLRRLRRRLRLLRRRRLLRLRLRLLRRRRLRRRLLRLRRRLRLRRLLRRRLRRLRRRRRRLRLLLLRRLRRLRRRRLLRLLLRLLRRLLRRRRRRRLRLLLRRRRLRRRRLLRLRLLLRLRLRRLLLLLLRLRLLRRRLRRRLLLLLLRRLRLRLLRRLRRRRLRLLRRLRLLLLRRRLLLRRRRLRRLLLRRLRLLRLLLRRLLLRRLRLLRRLRLRLLRRLLLRRRLRLRRRLLLRRRRLRLRLLLLLLLRLLRRLLRRRLLLLRRRLRLLLRRRRRLRLLRLLLRRLLRRLLLLRLLRLRLRRLLRLLLRLRLLRRLRRLLRLLRLRLRRLLLRRRRRLRLLLRLRRLRRLRRLLLRLLLRRRLLRRRLLLRRLLLLRRRLLRLLLLRRRLLRRRRRLLLRRLLLRLLLRRRRRLLLRLRLRRRRLLLLLLLRLLRLLRRRLLRRLLRRRRRRLRRRRLLRRRRRLLLRLRRLLLLLRLLLRRLRRLLLLLRRRRRRLRRLRLLLRLRLLRRRLRRRLLLRLRRRLLLRRLRRRRRRLLLRLLLRLLRRLLLRLLRRRLLRRRRRRRRLRLLLRLLLLLRLRRRRLLRRRLLRRRLRLRLRRLLLLRLLLRLLLLRLLLLLRLLLRRLRRRLLRLLLRLRRRRLLLLRRRRLRLLLRRRLLRRRLRRLLRRLLLRLRLRRRRRRLLRRRRRLRLRRLRRRRLLRLLRRLLLLRLRRLLLRRRLLRLLLLLLLRRLRRRRRRLRLRRLLLLRRLLRRRRRLRLLLLRLRLRLRRRRLLLLLRRLRRRRLRLLRLRRRLLLRLRLRRRLLRLLLRRLLLRRRRRRRRRRLLLRLRLRRRLRRRRRLLLLLLLRLRRLLRRRRRLRLLRLLLRLRRLLLLLLRLRLRLRLRLLLLRLRRLLRLLLLLLRRLRRRRLLLLLLRRRRRRLLRLRLLLLRLRRRLLLLLLLRLLRRLRLRLRRRLLLLLLLRRRLLLLLRRRRRRRLLLRRRLLRRRLLLRRRLLRLLRRLLLRRLLRRRRLRRRLLLLLLRRRRLLLLRRLLRLRRRRLRRRRLLLLLLRLRRRLRRLRLLLLLRRRLLRRRLRRRLRRLRRLLRRRRRRLRRRLRLRLLLRLRRLLLLRLRRRLRLRRLLLRRRLLLLRRLRLRLRLRLLRLRLRRRLLLRLLLLRLLRLRRRLLRLRRLRLRLRLRRRLLRLLRRLRLLLLLRRLRLRRLRLLRLRRRRLLRLLRLRLLLRRRRRRRRRRRRLRRLLRLLLLRRRLRLLRRRRRRLLRLRLRLLRLRLLRRRLLLLLRRRRRRRRRRRRLLRLLRRLLRLLRLRLLLLLLRRLLRLLRLLLRLRRRRRLRLRLRLRLRRLRRLLLLLRRLRRLLRLLRLRRLLLLLLRLLRRLRLRLLLLRRLLRRLRLLLLRRLLLLLLLLLRRRLRLLRRLRRLRRLLRRLLLLLRRLLRLLRRLLRRLLRRLRLRLLRRRLRRLRLRLLLLLLLRRRRLLRLRRRLRRRRRRLLLRLRLRLLRRLLLLLLRRRLLRLRLRRLRLLLLLLLLRLRLRLRRRRLRLLRLRLRLRRLLRLRLLLRLRRLRRLRRLRLRLRRLLRLRRRRRLLRLRLLRLLRLRLRLRLRRLLLRRLLRRLLLRRLRLLRLLRLLLLRRLRLRRRRRLRLRRRRLRRRRRLRLLLRLLLRLLLLRLRLRRRLLLRLLRRRRLRLRLRRRRRLLRLLLRLLRLLLLLLRRLRRLLLRRLLRLLLLRLLRRRLLRRRRLLRLRRLRLLLLLRLRLRLLLLRRRLLLRRLRRLLRRLRLRRLLLRLLLRRLLRRRLRLRLRLRRRRRLRRLLRRRRLRRLLRRRLLRRRLRRLLRLLLLRLLLRLRLLRLRRRRRLLRLLRLLLRRLRRRRRRRLLRRLRRRLRLRLRRRRLRRLLRLRLRLLRRRRRLRLRLRRLRLRLRRLLRLLLRRRLLRLLLLRLLRRRRLRRLRLRRLLLLRLRRRLRLRLLLLRLLRRRRLLLLRRRRRRRLLLLRRLRLLRRRLLLLRLLLLLRRRRLLRRLLRLRLLRLLRRRLRRLRLRLLLRRLRRLLRRLLLLLLRLLRLRLLLLLLLRRRRRRLLRLLLRLLRRLRLRRLLRLLRRRRLLRRRLLLLLLRRLRLLRRRLRRLRRRRRRLRLRRRLRLRLLLRRRLRRLLLRLLLRLLRLRRLRLRRRRRRRRRRRLLLRLLLRRRRRRLLLRLRRLLLLLLRLRLLLRLLLRRLRLLRLRRLRLRLRLRLRRLLLRLLLRLLRLLRRRLLRLRLLRLLRLRRRLRLRLLRRLRLRLLRRRLLLRLRRRRLLLLLLLLRLLRRRRRLRLLRLLRLRLLLRLLRRLLRRLLRRRRRRLRRLLRRLLLRLLLLLRRRRRRLRRLRRRRRLRLRRLRLRLRRLRLLRLRRRRRRRRRLLLLLLLRLRRRLRRLLRRLLRRLLRLLLLRLRLLRRLLLLLLLRLLLRRRLRLRLRLRLLLLLLLRRLRLRRLRLLRRLRRRLRRRRRRRLRLRRLLRRLLRRLLRRRLLLLRRRLLLLLRLLLLRRLLLRRRLLRLRRRRLRLRLLLLRRRRLRLRRRLRRLRLRRLLLRRRLRRLLLRRRRRRLLRRLLLLLLLRRLLLLLLLLRLLRLLRLLRRRRLLRLLRRRRLLLRLLLRRLRLRRRLLLLRLLLRLLRRRRLRRLLLLRLLLRRRRRRLLRRLRLRLRRLRLLLLRLRRRLLRRRLLLLLLLRRLLLRLLLRLLLLLRLRLRLRLLLRRRLLLRLRLLLRRLLRLRLLLLRRRRLRLLLLLRLRLLLLLLRRLLLLRLRRRLRLLLRLRLRRRLRRRRRLLRLRLRLRRRLRRLRLRLLRLRRRRLLLRRRLLRRLRLLRLLLLRRLRLRRLRLLLRLLRLRRLLLLRRRLRRLRLRRRLRLRRRRRRLLRLRLRRLLRRRRRLLRRRRLRLRRLLLRLLLRLLRLLLLLRRLRRRRLRRRRLRLLLLLLRRLRLRRLLRLLRLLLRLRRRLRLLRLLLRLLRLLRLLLRRRRLRLRLLRRLRLRLLLLRRLLLLRRLRRLLRRRRRRRLRRLRRLLLLRRRLRRLRLLRRRLRLRLRLLLLRRRRLRRRLLRLLRLLLLRLLRLRRRLLRRLRRLRLRRLLLRLRRLLLRLLRLRRLLLLRLRRLRLRLRRLLLRRRRRRRLLRRRLRRRRLLRLLLLLLRLLRLLLLRRLLLLRLRLRLLLRRRLRLLLLRLRRLLRLLLLRRRRRLLRLLLRRLLLRRLRLRLRRLLLRRLLLLRRRLRRLRLLLRRRRLLRLRLLRLRLLLLRLLRLLRLLRRRRRLRRLLLRLLLRLLLLRRRRLRLRRLLRRRRLLLLLLRRLLLRRRLLRRLLRRRRRLRLLLRLRRLLRLRLLLLLRLRRRRLRLRRLRLLRLRLLRLLLLLRRRLLLLLLRLRRRLLRLRLRLLRRLLRLRLLLLLLRRRLRLRRLRRRRLLRRLLLLLLLLLRLLRRLLLLLRLLLLLRRLRLLLRRRLLLLRRLRLRRLLRRLRRRLRLLLRRRRRLLLLRRRLLLRLLRLRLRLRRLLRRRLLLRRRLRLLRLLLRRLRLLLRRLRLRRRLLLLLRRRRLRLLRLLLLRLLRLLRLLRLLLRLRRLRLRRRRLRRRRRRRRRRRLRLRLRRRLRRLRLLLRLRRLRRRRRLLRRRLLLRRLLLLLRRLRLLRLRLLRLRLLLRLLRRLLLRLLRRRLRLLRRRRRLLLRLRLRLLRRLLRLRLRRLRLLLRLLRLRRLRRLRLLRLLRRRLRRLLLLLLLRRRRRLRRRLRRRRLRRLLLLLLLRLRLLLRRLLRLLRLRLLRRLLRRLRRLLRLLLLRRRLRLLRLLRLLLLLLRLRRRRRLLLRLLRLRLRLRRRLLLRRRLLRRRLLRRRRLRRRRRRRLLLLLRLRRLRRLRLLLRLRRRRLRRLRLRRRRRLLLRLRLLRRRRLLLRRLRLLLLLRRRRRLRRRRRLRRRLRRRLLRLLLLLLRLRLRLRLRRRLRLRLLLRLRRLRLRLLRRRLRRLRLLLRLRRLRLRLLRLLLRRLRLLLRRLRRRRLRLRRRLLLLLLLLRLRRRLRRLLRLRLRRLLLLRRLRRRLRRRLRLLRLRRLLLRLRLLRLRRLRRRLRLRLLRRLLRRLLLLRLRRRRRLLRRLRRRLRLLRLRLLRRLLRRRLLLLLLRRRRLRRLLLRRRLLRLRLRRRLRRLLRLRRRLRLRRRRLRLLRLRRLLRLLLLLRLRLRLRLLRRLRLLLRLLRRRLRLRRLRRLLLRRLLLLLRLLLRLLLRLRRLRRLLRRRRLRLRRRRLRLLRRLLLRLLRLLLRRRLRRRLRLRLRLRLRLRLRLLLLRLRLLLRRRLRRLRLLRRLLLRLRLRLLRRRLRRLLRRRLLRRRLRLRLLRLRLLRLRLRLRRLRRLRRLRLRRLRLRRLLLLRRLRRRLRRLLLLRLRLRLRRRRLLRRRLLLLLRLLLLLRLRLLLRLRLRLLRRRLLLLLRLRLLLRRLLRRLRLRLRRRRLRRRLRLLRRRRLRRRRRRRRLLRLRLRLRRRLRRRLLRRRLLLRRLLLRLLLLRLLLRLLLLRRLRRLLRLRLRLRLLRRRLLLRRRLRRRRRRLLRLRLRLRLLRLRRRRLLLRLLLLLLRLLLRLLRLLLLLLLLRRLLRLLRRLRLLLLRRRLRRLLLLRLLRRRRRLLRLLRLLRRRRRRLRRLLRRLLRLRLLRLLRLRLLLRLRRRLRRRRLLRRRRLLLLLLLRRRLRLRLRLLLRLRLRLLLLLLLRLRLLLRLRRLLLRLLRRLLRLRLRLLRLLRLLRLLLRLLLRRRRLLLLLRRLLRRLRRLLLRRRLRRLLRLRLLLLRLLRRRLRLRRRRRRRRRLRRLLLLLRLRRRRRLLRLRLLLLLRLLRLLLRLRLRRLRLLRRRLRLRLRRLRRRRLLRRRLRLLRLLLRLRRRRRLLRLRRRRLRRRRLLLLLRLRLLLLLRLLRLRLRLLLRRLLRLRRLRRLLLLLRRLLLLLRRLRRRRLRLLLLLRLRRLRRRRRLRLLRRRLRLRRLLRLRLLLRRRRLLRRRRLLLRLRLLRLLLRRRRRRLLRRLLLLRRRRRLRLRRLLRRRRLLLRRLRRRRRLRRLLLLRRRLLRRLLRRRLLLLLLRLLRLRRRLRRLLRLLLLLLLRRRRRRRLLLLLRLRLLLLLLRLRLRRLRLRRLLLLLLRRRLRLLLRRLRRLRLLRLLRRLRLRLLLRLLRLRLLLLRRLRRRRLLRRLLLRLLLRLRLRRLLRLLRRLLLRLLLRLLLRRRLLLRRRLLRLLRRRRRLLLRRRRLLRLLRRRLRRRLRLRRLLLLLLLRRLLRRLRLLRLLRLRRLRLLLRLRLLRRRLRLLLLRRRLLLRLLRLLLRRLRLRLRLLRRRRRRLRLLRLRLRRRRLRLLRRRRLLRLRRRLLRLRLRRRRLRRLRLRLRLRLRRLLLLRLRLRRLRLLRRLRRRLLLLRRRRLRLLLLRRLLRRLRRLRLRLLRRLRRLRLLRRLRLRLRLLLRLRRRRLRLRRLLRRRLRLLLRLLLRRLRRRRLLLRLRLRRRRRRLRRLRLRLLRLLLRRLLLRLRRRRRRLLLRRLRRLRRLLLLRRRLLRRRLRLRRLRLRRLRLLRLRLLRRLLLLLLLLLRRRLRRLLLLRRLLLRLRRRRLRLRRRRRLLLLRLRLRLRRRRRLRRRRRRRLLRLRLLLLLLLRLLRRRLLLRLLLRLRRLLLLRLLRRRLLRLLRRLLLRLRLLRLLLLLRLRLLRRRLLLRRLLLLRRLRLRRRLRRLRLRLLRLRRRRRLRLLLLLRRRRLLLLLLLRRLRRRLLLLLLLRRRLRLLRRLRRLRLLLLRRLRRRLRLRLRLRRRLRRLLLLLLLLLRRRLRLRRLRLLRLLLLRLLLLRLRLRLLLRLRLRLRLRRLRLLRLRRRRRRRRRLLRRRRLRRRLLRLRLLRRLLRRLRLRRRLRRLLLRLLRLLRLLLRLLLRLLLLLLRLLRRLLLLRRLRRRRLRLRRLRRRRRLRRRRLRRRLLRRRLLLRRRRLLRLRLRRLRLRLRRLLLRRRLRRLRRRLLRLRLLLLLRRRRRLRLRLRRRLRRRLLLLLLLLLRLLRRRLRRLLRLRRRLRRLRLLRLRLLLLRRLLRLLRLLLLRRLRRLRLLRLRLRRRLLRRRRRLRLRLRRRLRRLLLLLRLRLRLLLRRLLRLRLLLRLLLRRRLRLRRRRLRRLRRRLRRLRRRRRLRLLRRLLRRLRRLLLRRRRLRLRRRLRRRLLRLRRLRRLRLLLRLRLLRLLLRRRRLLRRRRRRLRLRLRLRLLRLLLLLLRRRLLLRLLRLRRRRRRLRLLRLRLLRLLRRRLLRLLLRRRLRRLRRLLLRRLLRLLLLLLRLRRRRRRRLLRRLRLRLRRRRLLLRRRLLRRRRRLRLLRLRLLRLRLRLRLLRLRLLLLLLLLRLLRRLRRRRRRRRRLLLLLRLLLLRRLLLLLLLRLLRRLRRRLLLLLLRLRLRLLRLLRLRLLLLLLLRLLLLRRRLRLLLLRRLLLRLLRRRRRRRLRRRLLRLRLRRLRLLLRRRRLRRRRRRRLLRLLLRRLLRLLLLLLRRRRRLRLRLLLLRRLLRLRRLLRRRRRRRLLRLLRRRRLLLLRLRLLLLLLLLLRLRRLLRRRLLLLLRRRLLRRRLLRLRLLLLRRRLLLRLLLRLRLRLRLRLLRLLLLLRRLLLLLRRRLLRRLLRRRLRRLRLRLRLRLLLRRRRLLLLRLLRRRLLLRRRLLRLLRLRLRRLLLLLRLLLRLRLLLRRRRRLRLRLLRLRRLRRLRLRLRRLRRLRRLLLRLRLLRLRRLRLLRRRRRLLLLLLRLLLLLRLRRRRLLRRLLLRRLLRRLLLRRRRRLRLLLLRLLLLRRRLRLLRLRLLRLLLLRLLLRLLLLLRLRRLRRLRRRLRRRLLRLLLRLLRRLRRRRRLRRLRRRRRLLLLRLRLLLLLRLRLLLLRRRLLLRRLLRRLLRLLRRLRRLRRLLLLRLRRLRLLLLLLLRRRRLRRLRRRLLRLRRLLRLLLLRLLRLRLLLRRRRLRRRRLRRRRRLRRRRRRLRRLLRRLRLRRLLLRRRRLLRRLRLLRLRLLRRLRRLLLRRRRRRRRLLRLRLLLLRLRLLLRRRLLLRRLLRRLLLRLLRRRLLRLRRLLLRRLRLRLRLLLRRRRLLRLLRLLRRRLRRRRLLLRRRRLLRLRLRRLRRRRRLRRLRLRRRRRRRRLRRRLRLRLRRLRLRRRLRRRLLLRRLLLRLRLLLRRRLLRRRLLLLLRRLLLRLLRRLLRRRRRRLLRRLLRRRLLLLRLLRRRRRRRLRRRLLLLRRRRLRLRLLRRLLRRRRRLRLLRRRLLRRLRLRLRRRLRRLLRRLLLLRLRRRLRRRLLLLRLRRLLLLLLRLRRRRRLLRRRLRLRRLLRRLLRRRRRRRRRRLRRLLLRLLRRLLLRRLLLRLRLRLLRRLLLLLLLRLRRLLLLRRRRRLRLRRRLRLLRLLRLRRLLRRLRLRRLLRRRLLLLLRLLRRRLLLLLLLLRLLRLLLRRRRLLRLRLLLRLLRLLRRLLRLLLRLRLRRLRRRLRLRLLLLRLRRRLRRLRRRRRRLLRLRLRLRRLRLLRLLRLLRLRLRRRRLLLLLRRLLLRRLRRLLLLLRRLLLLRLLRLLRLLRRRLLLLLRRLLLRLRRLLRRLRRRRRRRRRLRLLRLLRRRRRLLLRRRLLLRRLLRLRRLLLLRLLRRLRRLLLLRRLRLRRRRLRRRLLLRLRLRRLLLRLRLRRLLLLLRRLRRRRRLLLRLRRLRRLRLRLRRRRRRRLLLRLRRLLLRRRLLRLRRLLLRLLRRRRLRRRLLRRLLRRRLLRRLLLRLRRLLRLLRLLLLLRRRLLRLRRLRLRRLLRLRLRLLRLLRLRLRRLLLLLRLRRRRRLLRRLRRLLRRLLRLRRRLRLRRRLRLLLLLRLLRRLLLLLRLRLLLLRRLRRLRRLRRRLRLLRLLLLLRLLRLRRRLLLLRLRRLRRRRRRLLRRLLLRLRLRLLLRRRLRLLRRLLRLLRRLLRRRRRLRRLLLLLLRLLLLRRRRLLRLLLRRRRRLRLRLRLLLRLRLLLLLRRRRLRRLRLRLLRRLRLRRLLRRRLLRRRLRLLLLLRLRRRLRRRLRRRLRLRLLLLLRRRRLLLLLLRRRLRLRLLRRLLRRLRLLRLRLLRRLRLRLRRLRLLLLRRRRLRLRRLLRRLLLLRRRLRLLRRRLRLRRRRLLRRRRRRLLLLRRRLLRLLLRLRRLLLRRLRLLLLRLRLRLRRLLLLLRRRLRLRRLRLLLLRLRLRRLRRRRRLRLRLLLLRRLRLLLLLLLRLRRRLRRRLLRLLLLLRLRLRRRRRLLLLRRLLRRLRLLLRLLRLRRRLLRRRLRRLLLLRLLRRLLRRLLRLRRRLLRLLRLRRLRLRLRRLRRRLLRLLLRLRLLLLLRRLRLRRRRLLLRRRLRRLRRRRRRRRRLLRLLRRRLRLRLRLLLRLLLRLRLLRLRLLLLLRRLRLRRLLLRLLLRRLRLLLRRRLLRLRLRLLRRRLLRLRLRLLRLRLLRLRLRLRRLRRLRRRLRLRLRRLLRLRLLLRLLRRRLLLLLRRRRLRRRLRRLLRRLLRLRRRLLRLRRLRRRLLLLRRRLLRRLLRLLLRLLLRLRLLLLRLRRLRLRLRLLRRLLLLRLRLLRRLRRRRLRLLLRRRRRLRLRLRLLRLRRLRLRRRRLRRLLRLRLLLLRLRLRLLLRRRLRLRRLLRLRLRRRLRLRRRRLLLLRRLRLRLRLLRLLLRLRRLLRLLRLRLLRLLRLLLRRRLLLLLRLLRLLRLLLRRRRLLLLLRLLLLRRRLLLRLRRRLLRRLLLLRLLRLRLLLRLLRLLLLRLRRLRLLRLRRLRLLRLRRLLRLRRLRLRRLLLRRRRLRRRRLLLLLRLLRLRRRRLLLLRRLRRLRLLLLLLLRLLRRRRLLLLLRLRLLRRRLLLLRLRRRRRLLLRLRRLLRLRRLRLLRLLLRLRRLLLRLRLRRLLLRLRRRLRRLRLRLLRRRLLRLLLRLLLRRLLLRLLLRRRLRRRRRLRLRRLLRLLRLRLLRLLRLRLLLLRRRLLRLRLRLRRLRLRRRRRLLRRRRRRRRLRRRLLLRRRLLLRLRLRLLLRRRLRLLLRLRRLLLRRLLRRLLLLLRLRRRLLRLLLRLLRRLRLRLLLLRLRRRRRRRRRRLLLRRRRRRLRLRRLRRRRLLRRRRLRRRLRRLLRRRLRRRLLRRLLLLLLLLRLRLRRRLLRLRRLRRRLLRRRLRRLLRLLRRRRRRLLRRRRRRRLRLRLRLRRRRLLRRRLLLRRLLRLRLLLRLLLLRRRLLRRRRLLLLRLRRRRRRRRRLRRRLLRRRRLLLLLRLRRRLLLRLRRLLLRLRLLLRLLRLLRLRLRRRRRRRLRRRLLLRLRRLRRLRRRLRLLLRRRRLRLRRLLRRLLLRRRLLRRLRRRLLRRRLLLRRRLRRRLLLRRRRLRLRLLRRLLLRRRRLLRRLRLRLRLLLLRRRLLRRLRRRRRRRRRRLLLLRLLRLLLRRLLRLRLRLLLRLLLRRLRLRRRRLLLRRLRRRLRLRRRLLLLLRRRRRRLLRLLLRRLLLLRRRLLRLRRRRLRLLLLRLRLRRLRRRRRRRLRLRLRRRLLRLLRLLRLRRRRLRRRRLRRLLRLLLRLLRLLLLLRRRRRLLLLLRRLRRLRRRLRRLRLLLLRLRLLRRRLLLRRRRLRLLLRRRRRLLRLRLRRRLLRLLLLLRLLRLRLLRLLRLRRLLRLRRLRLLLLRRLLLLRRLRLRLLRRRLRLLRRLLLLRRRLRLLRLRRLLRLRLRRRLRLLLRLRLLRRLRLRLRLLLRRLLRRRLLLLLLLRLLRLRRRLLLRLRLLLLRLRLRLLLRLRRLRRRRLLRRRLRLLLRRLRRRRLRRLLRLLLRRRRRRLLRRRLRRRRLLRLLLRRRLLLLRRRRLRLLRRLLLRLRLRLRRLLLRLLLRRLRRLRRLLRLLRLLLLLRRRRLLRLRRRRRLLLRRLRRLRLRLRLRLLLLLRLRLRRLRLRLLLRRLLLLLRRLLRRRLRRRLRLLRLLRLRRRRLRRLRRLRLLRRRRRLLRRLRLRRLRLLRRRRLLRLLRLRLRLRLLRLRLRRLRLLLRRLLLRRRLRRRLLLRRLLRRLLLLLRRLRLRLLLLRLLRRLRRRRRRLRRLRLLRRRLLRLLLRRRRRRLRRLRLRLLLLLLLRLLLLLRRLRLRRLRLRRRRLLRRRLRLLLLRRRLRLRRLRLRLRRRLRLLRRLLRRLLLLRRLRLLRLRRRRLRLRLRRRRRRLRLRLRRLLLLLLRRLLRLLRRLLRLLRRRRRRLRLLRLLLRLLLLLLRLRRLRRLLRRRLRRRRLRLRLRRRLLLLLRRRRLRLLRLRRLRLLRLRLLRRLLRRLRRLLRRRRRRRLRLLRRRRRRRLRLRRRRRLLRLRLLLRLLLLRRLLLRRRLRRRRRLRLRRRRRLLLRLRLRRLLLRRRLLLLLRLRLRRLRRRRLRRRRRRLLLRRRRRRLRLLRLLRLLLLLRRLLLRRLLRLLLLLLRRRLRLLRRLRLLLRRRRRLLRRLLLLLRLLLRLLLLLRRRRRRRLRLLRRRLLLLRRLLRLLRLLLRLRRRRLLLRLLLLRLLRRRRRLRLRLRRLLRRLRLRRLRLLLLLRLRLRRLLLRLRRRRLRRRRLLLLLLRLLRRLLRRRRRRLLLRLLRLRRRLRRLLRLLRRLLRLLRRRRRLRRLLRRRRRLLRRLRRRLRLRRRLLLRRRRLLLLRLLLLRLRRLRLRLRRRLRLRLRLLLLLLRLLRLLLLRLRRRRRRRLLLLLRLRLRRRLLLRRLLLRLLRRRLLRLRLLRLLLLLRLLLRLRRRLLRLLRRRLRRRLRRRRRRRLLRLLRLLLLLLLLLLRLRLLLLRRRLLLLRLLRRRRRLLLLLRLLLRLRLLRLLRLRLRRLRRRLRLRRRRRRRRLRLRRLRRRLLLRRLLLLRRRRLRRRRRRRRLLLLRRLLRLRLLLRRLLLLRLRLRLLRLRLRRRLLLLLRRRRLRLLRLLLRRLRRRLLRRRRRLRLRRLLRLRRRRRRRRRRLLRLRLRRLRLLLLLRRRRRLLLRRRRRLLLLRRLLRRRLLLRRRRLRLRLRRRRLRLLLRRLRLLLRLLRLLRLLLLRLLRRLRLRRRLRLRLRLLLRLLRRLRRRRLRRLRLLRRRLLRRRRLRRLLRRLRLRLLRRLLLLLLLLLRRLRRRRRLLRLRLRRLLRLRRRLRRRRRRLLRRLLRRRRRLRLRLRLRLRLRRLLLRRLRLRLRLLRLRRLLLRRRLLLLRRLRRLRLRRRRLLLLRLLRLRRRRRRRLLRLLRRLLLRLLLRLLRLLRRRLLLLRRRLLRLLLLLRRRRRRLRRLRLLLRLRRLRRLRRLRLLRLLRRLRLRRLLRRRLLLLLRRLRRLRRLLLRRRLRLRRLRLLLLRLLLRLLLRRLLLLRLRRRLRLRRRLRLRLRLRRLRRLLRRRRLRLLLRLRLLLRRLRLRRRLLLRLLLLRRLLLRLLLLLRLLLLLLRLRRRRRRRLLLRLRRLLRLRLLRRLLRRRLLLRLLLLRRRLRRRLRRLLRRLRLRLRRLRRLRLLRLLLLRRLLLLRLRLRRRLRLLRRLRLLLLLRLRLLRLRLLLRLRRLLRRLRLRLRRRLRRRLRRRLRLRRLLRLRRLLRRLLLRRLLRRLRLRRRRRRRLLRLLLLLRRRRLLLRLRRRRRLRRLLLLLLLLRRRLRLLLRLLLRLLRLRRLRLRRLRLRLRLLLLLLLLLRLRLLRRRRLRLRLRRLRLRRRRRRRRRRLLRLRLRLRRRRRLRRLRLLLRLRLLRRRLRRLRLLRRRRRRLLRRLRLLRRRRRRRLLLLLRLLRLLRRRLRLLLRRRLLLRRLRLRLLLRLRRLRLLRRLLRLRRRLLRLLLLRRLRLLLRRRLRRLRRLRLLRRLRLLRRLLRLLRRRRLRRLLLRRLLLRLRLRRLLLLLLRLRRRLLLLRRLLLRRLRLLRRRRRRLLRLLRLLLRRRRRRLRRLRLRLRRRLRRLRLRRRRLRLLRRRLRRLLLLLLLLLRRLLRRLRLLRRRRLLLRRLRLRRLLLLLRLRRLLRLRRLLRRRRRLRLRRLLRRRLLLRLLRRRLLRLRLRLRLRRRRLLRLLLRRLRLLRLLRLRLRLLLRRRLRLLLRLLLLLLLLRLLRRRRLLLRRLRRRRLRRLLLRRRRLRLLLLRLRLLLRRRLRLLLRLLRRLRRLRLLRRLLRRRLRRRLRLRLLLRLLLRRRLLRRRRLRLRLLLLRRLRLLRLRLRLRRLRRLRRLLRRRRLRRLLLLLLLLRRRRRRRLRLRLRLLLLRRRLRLLLLLRLLRRLRLLRRLRRLLRRRRLRLRLLLRLLRRRLRLLRRRLLLRLLLLLRLLLLLLLRRLRLLRRRLRRLRRRLRLRLLLRRLRLRRRRRRLLLLRRLLLRRRRRRLLRLRLRLLLLRRRLLRLRRRRLLLRRLRLLRLRRLRRRLLLLLRRLRLLRLLLLRRLRRRLRLLLRRLRLLRRLRLRLRRLRLLRRRLLRLLRLLRRRRRLLRLLRLRLLLRRRRLLLLRRLLRLRRLRLLLLRLLLLLLRRLLRRLRLRRLRRRRRRRLLRLRRRRLLRLRLRRRRRRLLLRLLLLRRLRLLRRLRRRLRRLLLLRLLRRLRRRRLLLLLLRRRLLLLLRRLRRRLRLLLLRLLLLRLRRLRLLRRRRRRLRRLRLRLLLRLLRRLRLLRRLRRLRLLRLLRRRRLLLLRLRLLRLLLRRRRRLRLRRLRRRRRLLLRLLRRLLLRLRRLRRLRRLLLRRRRLRLLLRLLLRLLLLLRLRRLLRRLLRRLRRLRRLRRLRRLRRRRLLLRLRRRRRLLLLLRRLLLLLLLLLRRRRRRRLRRRRRLRRLLLLLLLLRLLRLRLRLRLRRLRLLRLLRRLRLLRRLRLRRLRRRRRLLLLLRRRLLRRRRLLLRRRRRRRLLRLLRLRRLLLRLLLLLLRLLLLRRLRLLRRRRRLRLRRRLRLRRRRRLRLLLLLRRRRLRRRLLLRRLRRLRLRRRLRRLLRRLRRRRLLRLLLLLRLLRLRLLRLRRRLRLLLLLLLRRRRRLRRRRLRLLLLLLLLRLLRLRLRRLLRLRRLLLRRRLLLRRLLRRRLRLLLRRLLLLLLRLLRLLRRLLRLRLRRRLLLRRLRRRLLRRLLLRRLRLRLRRRRRRRRLLRLLRRLLRRRRRRRRRRRRLLLLLLLLLRRRLLRLLRRLLRRLLRRLLRLLLLRRLLRLLRRLRRRLLLRRRRLRRRRLLRRLRRRLLRRRRRLLLLRLLRLLRRRLLLLRRLRLRRLLRLRRLLLLRLLLLLLRRRRRLRRLLRLRLLLLRRRRRLRLLRRRRLLRRRLLRLLRRLLRRRLLRRLRLRRLLLRLRLLRRLRLRRLLRRRLLLRRLLRRRLLLLRLLRRLRRLRLLRRRRLLRLRLRRRLLRRLRRRLRRRLLLRRLRRLLRLLLLLLRLRLRLRRLRRRRLRLLLLRRLLLLRRLLRLRLLRRRLLLLRRRLRRRRLLRLRLLLLLRRRLLRRRRRLLLLLRRLRRRRLRLLLRRRRLLRRLLRLRLLLLRLRRRLRLRRRLRRLLRRLRLRLLLLRLLLRRLLRLLRLLLLLLLRRLRRRLLRRRRLLLLRLLRRLRRRRRLLRLRRRLRRLRRRLLLRRLLRRLRLRLRRLLLLLRLRLLLLLRRRLRLLRLRLRLLLRLRRLRLLRRLLRRLLRRRLRLRLLRRRRLLRRRLRLRLRLRLLRRRLLRLLRRRRLRLLLRRLRRLLLRRRLRRRRLRRRRLLLRRRRRRRLRRRLLRLLLRRLLLLRRLLRRLRLLRLRRLLLLRRRLLRRLLRRLLLRRRLLLLLRLRLRRLRRRLRRRLLRLLRLRRRRLLRRLRRLRRRLRRLLRRRRRLRRLLLLRLRRLLRRRRLLRRRRRRLRRRLRLRLLLLRLRLLRRRRLLRRRLLRLRRLRLRLLLLLLRLLLLRLRLLLRRLLRRRLRLLLLRRRRRRRRRRRRLLLRLLLLRRLLRLRRRRRLLLLRLLRRLRRRRLRLRRLLRRLLLLRRRRLRRLRLRLRLRRLLRRLRLRRLRRRRLRLRLRRLLRRRRRRRLRRRRLLRRRRLLRLRRRLRRRLRRRRRLRRRRRLLLRRLLRRLRRLRRRRRRRLRLRLRRRLRRRLRRRLRLLRRLRRRRLLLLRRLRLLRRRRLLLRLRLRRRLRRLLRLLLLRRLLRLRRRLRLRRLRLLLRRRLLRLLLRLRLRRRLLLRRLLRLLRRLRLRLRRRRRLLRRRLRLLRRRLLLRRRRRLRLLRLLRLRRLLRRLLLRLLLRLRLRLLLRRRRRRRLRLLRLRLLRRRLRLLLRRRLRRLRLLLRLRRLLRRRLRRLRLLLLLRRLLLLLRLRLLLLRLLLRLRLRRRRLRRLLRRLLRLLRLLRRLRLLLLRRLRRLLLLRLRRLRRLLLLRLLRLRRLRRLLRLLLLLLLLLLLRLLLRLRLRLLRRRRLRRRLLRRLRLLLRLLLLRLRRRLRRLRRLLRLLRRRRLRLLLLLRLLRRLRRRRLRRRLRRLLRRRLLRRRLRLRLLRLLLRRLLLLLLRLLRLRRLLRRLLRRRLRLRLLRLLRRLRRRRLLLRLLLRRRLLRLRRRLRLLRLLLLLRLLRRRRLRRRLLRRRRRLLRLLLRLLRRRRRLLLRRRLLRRLLLLRRLRLLLLRLLLRLRLLRLLLLLLRRRRLRRRRRRRLLLLLRRRLRLLLRRLRRRRRLLLLLLLRRLRLLLRRRLLRLLLLLRLLLRRLRLLRRLLRRLRRLLRLRLLLLRLLLRRLLLLRRLLLLLLLLLRRLLRRLLLLLLRLRRRLRRLLLRLRLRLRLLRLRRLLLRLRRLLRRLLRRRLRLLLLRLRRRRLRRRRLRRLLLLLRLLRRLRLRLRLLRLLLLLRLRRLLRLRLLLLRLRRRRRRRLRLLLLLRLRLLLLRLLLRRLLLRRRLRRRRRLLLRRLLRLLRLLLRLRRLLRLLRRLLLLLRRLLRLRLLLLLLLRLLLRRRLRRLRLRRRRRRRLRLLRRRLRRRRRLRLRRLRRRLLRLRLRRRRRRRLRRRLRLRRRRRLRRRRRRRLRLRLLRLRLRRRRLRLLLRRRLLRLLRRRRRLLRLRRRRLLLRLLLRRLLLLRRRLLRRRLRLLLRLRLLRLRRRRLRRRRLRRRRRLLLRRLLLRRRRRLRRRLRLRLRRRLRLRRLLRLLLRRRRRRLLLLRLLLRRLRRLLRRRRRLLLLRLRRRRLLRLRLLRLRRLLRRRLRLLLLRRRRRLLRRLRLLRLRRLRRRLRLLLRLLRLLRLRLLRLRRLLLRLLRRRLRLLRLLLRRRRRRLLRLLRRLRLRRLLRRLRLLLRLLRRRLLLRRLRLLLRLRLLRRLLRLRRLLRLLRLLRLLLRLLLLRLLLRRLLLLRLRRLLLRRLRRLRRRRRLLRRLRRRRRLRRRRRLRLRRRLLRRLLRRLRLRLRRRLLLLRRLRLRLRRLRRLRLRRLRRRLRLRRLRRLRRLRRLRRLRLRLLLLLRRRLRRLLRRLLRRLLLRRRLLRLLLLRRLLLRLLLRLRLRRRLLLLRLRLLRRLLLRLRRRRLRRLLRRLLLRLLLRLLLLRRLRLLRRLLRRRLRLLLLRLLLRRLRRLLLRRLRRLRLLRRLRRRRLLLRLRLRLRRRRRLLLRRRRRRRRRLLRRRRRLRLRLLRLRLLLLRLRLLRLLRLRLRLLLLRLLLLRRRLLLRLLRLRRRLLLLLRRLLRRRLLLRLRRLLRLRLRLLRLRLLLLLLRLRRRRRLRLLRRLRRLRRRRRRRRLLRLLRLRLRRRLRRRLLLLLRLLLRLRRRLLLLRLLRLLLRLLRLRLRRRRRLLLLLLLRLLRRRLRLLLLRLRRRRRLLLLLRLLRRLLRLLRLLLRLLLRRRLLRRLLLRRLLLLLLRLRLLRRLRLLRRRLLLLLLRRRRRRRLRRLRLRRLRRLLLRRRLRRLLRRRLLLLRRRLLLLRRLLRRLLLLLRRRLRLLLLRLRLLRLLRLLLLLLRLLLRRRLRRLLLLRLLRLRLLLRLRRLRRRRRLLRLRRRRRRLLLRRRLRLLLRRLLLLLLRLRRRRRRRRLLLRRLRLRLRLRLLLLRRRLLRLRLRLRLLLRLLLRLLLRLRLRLRLLLLLRLRLLRRLLRRRLLRLRRLLRLRRLLLLLLRRLLLLRRLLLLRLRLRRLLRLLRRLRRLRLLRRRRLRLLRRRRRLLRLRRRLRLRRRLRRRRLRRLLRLLRLLLRLRRRRRRLRRLRRRRLRRRRLLRLRRLRRRRRRRLRRLLRRLRLRRLRRRRLLRLRRRRLLRRLRLLRRLLLLLLLRLLLRRRRRLRRRLLRLLRRRRLLLRRLRLRLRRLRLLRRLLRRRLLRLRLLRLLLRRRLLLLLLRLLLLRLRRLRLLRLLRRRRLRRRRRRRLLRLLRLLLLRRLLLLRRRLLRRRLRRRLRLLRLRLLLLRRRLLLRRLRLLLRRRLRLRLLRLRLLRRLLRLRLLRLRRLLRRRRLRRRRRRLRRRRLLRRRLRRLLLLLRLRRLLRRLRLLLLRRRLLRLLLRLLLLLRLRLLRLRRLRLRRLLLRLRRLRLRLRLRLLLLRRLRLLLRLLRLRRRRLLRRLLLLRLLRRLRRRRLRRLLLLRLRLLRRLRRLLLLRLLRRLRRLLLLRRLLLLLRRLLLRLRRLLLLLRRLRLLRLLLRLRRRRLLLRLLLLRLLRRRRLLLLRRLLLLRRRRLRLLLRRRLLLRRLLRLRRLRRRLLLRLLRRLRLLLLRRLLLLLRRRRLLRRRRLRRRRRRRRRLRLRLLRRLLRLLRRRLLLRRRLRLLRLLLLLLLLLLLRLLRRLRRRLRLLRRLRLRRRLRLRRRLLRLRRRRLRLLRRRLLRRRLLRLLLRLLLRLLLRLLRLLRLRLLRLLLLLLLRLLRLLLLLRLLRLLRLRRLRLRLLLLLRLRLLLRRRRRLLLRLLLRRRLLLRRLLLLLLLLLLLRLLRRLRRLRRRLLLLLRRRRLLRRRLRLLLLLLLLLLLLLLRRLRLRLLRLLRLRLLRLRLRLRLRRRRLRLLLRLLRRLRLRLRRRLRLLLLLLLRRRLRRRLLRRLRRLLLLLLLRRLRRLLLLRLRLRLLLRRRLLRRLLRLRLRLRRRRLRLRLLRRLLRLLRLLLLLRLLRLLLRRLRRLRRLRRLLLLLLLLLLRRRRRRLRLRLLRRRRRRLLLRRRRRLRLLLLLRLRLLRRLLLRLLRLLRLRRRRRRLRLLRRRLLLRRRLLLRLLLRLLLRRRRLRLRRRLLRLLRLRRLRRLLLRRRRLLRLRLLLRLRLLRRLRLLRRRRRRLLRRRRLLLLLRLRRLLRRRRRRRRLRRRLRRRRRLLRRLRRRLRRRLRRLRRRLLLLLRLRLRRLRLLRRRLLRLRLRLRRLLRRRRRLLLLLRLLLLRLLLRRLLLLRRLLRRRLRRRRLLRRLLLRLLLRRLRRLLRLRLRRRLRLLLRRRLLRLLRRLLLLRLLRLRLLRLRLLLLRRRRLRRLRLLLLRLRRRRRRLRLLRRLLRLLRRRLLLRRRLLRRRLLLRRRRLLLLRLLLLRRRRLRLLLLRLLLLLRLRRRRLRRRRRLLLLLLRLRLLLRRLRLRRLLRLLLLLLLRLLRRLRRRRRLLLLLRRRRRRLRLRRRRLRLLLRRLRRLLLRLLLRRLRRLRRRLRRLLRRRRRRLRLLLLLLLRLLRLRLLRRRLRLLLRLRLRRLRRRRLRLRRLRLRLLRLLRLLLLLRRLRRRRLRLRRRRRRLRLLRRLRRRRRLLLRRRRLRLLRLRLLLRLLRLRRRLLRLRRRLLLRRRRRLRRLRLRLRRLLRLRRLRLRRLLRLRRLLRLRRLRRRLLLLRLRRLLLRLRLRRLRLLRRLRLRLRLRRLLRRRRRRLLRLLRLRLLLLLLRLLRRRRRRRLLLRLRLRLRLLLLRLRLRRLRLLLLRLLRLLLLLLLRRLRRLLRRLRLRLLLRRLRLRRRRRLLLLRRRLRRLLLRRLRRRRRLRLRRRRLRLRRRRRLLLLLLRRRRRRLRRRLLRRLLRLLRLRLLRLRLLLLLLRRRLRRRLRLLRLRRLRLLLLRRLLLLLRLRRLLLRRLLRLRLRRRRRLRLRLLRRLRRLLLRRLRLRLRRLRRRLLLLRLLLLRRRLLLLRRRLLLLLLRLRRRLRLLRLRRRRLLLLRRLRRLRRLLLLLLRRLLRRRRRRRRLRRRLLRLLLLLLLLRLRLLRRLLRLRRRLRLLLLLLLRLRRLRRLLLRLLRLRLLLLRRLLRLLRRRLLLRRLLRRRLLLRLRRRLRLRRLRLRLLLLRRRRRRLLRRLLRLRLLLLLLRLLRRRLLLLRRLLLRLLRRLRLRLRLRLLRLLRRLRRLLRRLLLLRLLRLRLRLRLRLLLRRRLRRLRLLRRLLRLLRLRRLLRRLRLRRRRRLLLLRRLRLRLLRRLLRLLRRLLRRRRLLLRRLRRRLRRRLLRLLRLLRLLLLLLLRLRLRRRLLLRRRLLRRRLRLRRRLLRLRRLRRLLRRRLRRLLLRRRRRRLLLRRRLLRLRRRLLRLLLLLLLLRRRRRLLRLRLLLLLRLLRRLLRRRRRLRRLLRRRRLRLRLRLLLRRLRLRLLLRLLLRLRLLLLRRRLLRRRLLRLRLRRLLRLRRRRRLLRLLRRRRRLLLRLLLLLLRRRRRRLLLRLLRLLRLRLLLRLLLRRRRLLRLRRLRLRRLLRRRRRLLLLLLLLRLLLLRRLLLLRLLRRLRRLRLRRLRLLLLRLLLRRLRLLLRRRLLRRLRLRRRLLRRRRLLLRRRRLLLLLLRLLLLRRRRRRLLRLLLRRLRLRRLLLLLLLLLRRRRLLRLLLRLRLRLRRRRRRRRLRRRLLRRLLRLLRLLLRRLRLLLRLLRLLRRLRRLRRRLLRLRRLRLRLRLLRLLRLLRLRRLLLLRRRLRLRRRRRLLRLRLRLRRRLLRLLRLRRLLLLLLRRLLRLLRRRLRLLRLLRLRRRRRRLLRLLLLRRLLRLLLLRLLLLRRLLLLLRLLLLRLRRRRLRLLLRRLLLRLLLRLLRRLLRRLLRRLLRRLRLRLRRLRRLRRRLLRLLRRRRLLRRRLLRLRRRLRRLRRRRRRRLLRRLLRLLLRRRLRLRRLLRLLLRLRLRLRRRRLLLRRRLRLLRLRRRLLLLRLLLLLLRRRRRLRRRLLLRRLLLLLRRRRRLLLLRRRLLLLRLLLLLRLRLLLLLLLLRRRLRLRRLLLLLLLLRRLRLRRLLLRLLLLLRRRRLRRRRRLRRLLLLLRLLRRRRRLLLLRLRRLRRLRLRRLRRLLRRRLLRRLRLRRRLRRLLRLLRRLRLLRRLLLRRLLRRRLLLRLRRLRRRRRLRRRRLRLLLRLLLRLRLLRLRLLLRLLRLLRLRRLLLRLLRLLRRRLRLRLRLLLLLRRRRRLLRLRRLRRRRRLRLRLLRRLRRLLLLLRLLLRRRRRRLRLRLRLLLLLRLLRRRLLRRRLRRRRRLLRLLRLRRLRRRRLRRLRLLRRLLRLRRRRLLRRRRLRLLRRLLLRLLRLLLLRLLLLLLLRRRRLLLRRLLRRLLLLLLRRLRRLRLLLRLLRRRLLRLRLRRRLRRLRLRLLLRRLLRRRRLLRLLLRLLLRRLRRRLLLRRLLLRLRRRRLLRLLLRLRLRLRLLLRLLRLRRLLLLLLRLLRRRRRLRRLLLRLLLRRLRRLLLRRRRRRLLLLLLLLLLLLRLLLRLLLRLLLLRLRRLRRRLRLLRRLLLLRRLRRRRRRRLLRRRLLRRRLLLRLRLLLLLRRLLLLLLLLRLLRRRLLLRRLLRLRLLRLRRRLLRRRRLRRLRLLRLRLLRRLLRLRRLRLRLLLLLRLRLRLRLLLLRLRRRLLRRLLLLRLLLLRLLRRRRRRRLRRLLLRRRLLLRRRRLLLLLLRLRRLLRRRLLLRLRRRLLRRRRRRRRLLLLRLLLLRLLLRLLRRLLLLLLLRLLRRLLRLRLRRRRRRRLRRRRRLRLRLRRRLLRLRRRRLRLLRLLRRLRLLRLLRLLLRLRLLLRLRLLLLRLRRLRLLLLRRRRLLLLRRRRLLLLRLLRLLLLRLLLLLRLRRLLLLLRRRRLRRLRRRLRRLLLLRRLRRLRLRLLRLRRRLLRLRLRRRLLLRLRLRLRLLRRRLRRRRRRLRLLLLRRRRLLLLLLRRLRLLRLLLRRLLLLRLLRRRRLRLLLRLRRLLLLLLLRLLRRLRRRRRRRLRRLLRLLLRLRRRLLLRRRRRLRLLRRLLRRRRLLLLRRRLLLLLLRRRRLRLRRRLRRLLLLLRRRRRLRRRLLRLRLRLLLRRRRRLRLLLLLRLLRRLRLRLLLRLRLRLLRLLLRRLLLRRLRRRLRRLLLRRLLLLRLLLRLRLLRRLRRLRRLLLLLLLRLRRRRRLLLLLRLLLLLRLRRRRRRRRLRRLLRLLRLRLRLRLRRLRLRRRRRLRLLRLLLLRLLRRRLRRRLLLRRLRRRLLRLLLRRLLLRLRLRRRRRRLLRLLLRLRRLLLLRLLRRRRLRRRRRLRRLLLRLRRRRRRLRLLRLLRRRRLLRLLRRLRRRLLLLLLRRLLLLLRRRRLRLRLLRRLRRRLLLLRRRLRLLLLLLRLRRLRLLLLLLLRRRLLLRLLRRRRLLLLLRRLRLLLRLLRLLLLRRLRRRLLLRLLLLLLLLLRLLLLRRLRRLLLLRLLLLLRRRRRRRRLLRLLLLRLLLRRLLRRRLLRRRLRRLRLLRRLRRLRRRRLLRLRLLLRLRRLLRLRRRRRLLRRRRRLLRLLRRRLLRLLLLRLRLLRRRRRRLLLRLRRRRRRLRRLRLLLLLLRLLLRRRRLRRLRLLLRLRRLLRLLRLRLLRLRLLRLLRRRLRRRLLRLRLLLLLRLRLLRLRRLLLLRRRRRLLRLLRRRLLRLLRLLRRLLRLLRRRLRLLRRLRLLRLRLRRRRRRLLLLLLLRLRLRLRRRLRLRLRRLLLRLLRLLRRRLLRRRRLRLLRLRRLLLLRLLLLLLLRLLRRLLRRRLLRLRLRRRLLLLRLLRLLRLLLLLRRLLRLLLRLRRRLRRLLRLLRRRRLRRRLLRRLLLLLRRLRRRRLLRRLRRLLLLRLLLLLRLLLLRRLRLRLLLLLRRRRRLLLRRRLLRRRLRLRRRRLLLLLLLRRLRRRRRRLLRRRRRLRRRRRRRRLLRRRRLLLLRLRRLLLRLLLLRRLLLRRLRRRRLRLLLRLRLLLRLLRRRRLLLLRLLRLRLLLRRRLLRLLRLLRLRLLLLRLLLRLRRRRRRRLLLLRLRLLLLRLRLLLLLLLRRLRLRLRRLLRLLLRLLLLRRLLRLRRLLRRRRRRRRRLLRRLRRRRRLLRRLRRLLRRRRLRRRRLLRLLLLLRRRRLLLRRLLLRLRRLRRRLLLLLLRLRRRLRLLRRRRRLLLRRLRLRLLLLLRLLLLRLRRRRLLRLRRRLLRLRRRLLRRRRRRRLLLLLRRRLRRRRLLLRRLLRRLRRLRLRRLLRRLLLLLLLRLLLRLLRRLLRLRRLRRLRLLRLRRRRLRRRLRLRLLLRLRLRLLLRRRRLRRLLLRLLLLRLLRRRRRRRLLLRLRLLLRRLRRLLRLLRLLLLLLLRLRLRRLLRLLLLRLRLLRLRRLRRRLLRLRRLRLLRLRRLRLRLRLRRRRLRLRLLLRRLRLRLRRLLRLLRRLLLLRRRLLRLLRRLLRRRRLRRLRRLRLRLRRLRRLRLRLRLLRRRRRLLLLRLRLRLLLLRLLLLRRRRRRLLLRRRRLRRLLRRLRLLLLRRLRRLLRRRRLRLLRLLLRLRLLRRRRRLLRRLLLRRLRLRLRR