10958668995 246058339 503666498 889608806 366854683 570796148 799588075 970911538 251188854 382210484 247006479 570796148 527654256 19911869 293192373 836376015 652018277 646710523 803588261 991615550 488295044 53966525 745200166 831380531 735696627 195019158 816971086 195019158 296305836 750978759 363976852 193515742 540394532 732559957 862177563 995876182 719307635 764459345 322974842 325554372 271484655 997329398 969294148 247822207 123073176 252792947 857535330 7807006 921198791 7807006 704431513 960543625 23262398 7807006 10475035 942866882 597206610 616057762 950497221 338929165 10475035 40131409 824770361 624819674 567774282 729868696 471393875 943235508 533455280 1736950 430101007 539035187 623398671 509144872 632402794 390275103 31615284 628820972 586446680 49948206 142903358 841780337 857535330 806744033 623398671 683621666 551289217 37275245 975337465 852107700 633573519 51457589 532803593 288072509 630775839 884952974 808866527 592981604 433686203 112090095 736624310 889608806 67831588 220576148 568104980 159828635 396743027 282751746 945394518 627110568 456956861 179991869 788737791 452156279 428572243 306597948 456956861 607041944 527654256 810021050 490344724 506178629 757815664 311808379 275202504 300892929 162062292 276676140 206036522 758889515 499057158 931005739 77819776 225771141 641635851 264100442 860377902 727578179 98824830 451551269 228290502 664041213 600441802 607760956 502849508 632378665 595030753 223299794 533864165 388085842 512614298 744008188 264750083 313272965 712346140 776835194 80415088 550322314 148087911 48746678 284588557 597784477 275349681 853170454 567343883 311808379 567774282 287768226 709613471 420636144 315747769 79509313 760370490 970320952 13112382 285947848 93651148 620243558 754580366 128450928 931966477 35128915 203331888 968670974 570764323 182214511 769327548 682170984 922858580 993091440 575895835 713146141 98824830 81337657 261683638 390793037 954227928 146573202 920721173 1736950 610447918 376974209 481894295 53195413 499057158 604881661 214244685 984047482 49317804 262406489 305068796 138442062 652018277 664041213 78649514 711532060 652018277 287239117 286037808 812414090 284588557 744008188 750563611 47529701 80485362 678474526 295366548 4519262 83066601 478892468 854902633 451521521 837690635 38085353 502849508 635302209 31215478 114409323 154538466 938080232 884072178 313272965 23262398 441621000 854902633 587179274 433686203 581831913 598426014 165821462 244528344 572465104 587469038 932715562 719307635 557710104 215981255 506178629 942999703 767839638 601630030 5299425 835339516 396937914 884072178 79509313 128188331 859168292 771321738 338929165 162062292 934824360 931013644 382904427 1926282 27735709 950673785 143200457 949084393 209497607 773781000 420636144 864016134 732559957 931086800 624819674 117931902 771803404 910850066 841210236 431406787 106790696 630775839 146573202 539957336 560623000 284588557 81553943 915330573 476912096 503666498 815123402 920721173 854243215 774489082 29473993 652018277 79523589 358401766 282751746 525347105 160287690 152243323 781242822 156817178 424974082 503666498 560623000 140129038 207844781 514650194 727245017 581063820 360743135 850386354 462394151 592639233 722013570 637769046 749497174 953882020 296751278 290117216 119279869 751925989 918521256 546679009 225771141 917795074 938456692 375066210 885647994 743614603 251367294 13112382 399037712 261683638 342116147 958668995 507016471 946612927 310726569 539381059 459452716 407091770 485262404 125204206 991615550 630775839 19911869 315747769 459617527 408395896 686335042 396743027 718980624 115090276 656191811 148087911 193515742 261683638 965948435 551289217 78775552 956815883 267829614 489130642 601740259 331638088 604881661 24188768 182214511 950497221 387703244 814295984 792846009 603931167 632378665 542382913 579757115 765027062 433921335 162062292 300892929 259646582 130160246 653201202 130160246 331638088 390275103 637657473 382210484 586370291 283321520 32075030 223299794 776352608 49614749 242028021 359859765 653201202 186244437 967417280 390793037 846351340 683621666 101231409 112390393 40448245 443960759 74587532 172894131 489130642 2379379 302151126 686335042 581063820 172894131 942999703 573449906 532803593 207844781 73848009 327773233 860477160 566125822 619842427 136412292 145559297 650036494 626932919 962073361 6720560 916956968 471393875 750978759 512614298 764116955 922706719 664041213 29069209 543945175 598426014 955730659 209789164 505061211 654830523 266583970 575023903 15903366 855636134 735891721 77819776 656191811 710224239 424974082 42657625 812414090 884059813 459617527 478351140 209497607 484158080 829983432 675472009 324129364 162062292 727578179 511330454 851829959 462762217 623206361 40448245 186244437 396806189 400178823 840075867 424974082 289918211 573449906 553191189 522332929 128188331 522332929 533455280 79509313 540976336 2379379 945394518 554242697 776820092 960543625 650990283 167276070 994877696 437743643 42657625 106790696 904800517 152314280 32075030 566554997 803588261 288873549 590208882 979750308 575023903 4519262 926045944 119279869 361435434 48746678 783513992 446968233 539957336 361002681 681765297 735710261 334299650 413592826 702364434 718980624 654830523 866337119 290117216 138442062 128188331 630977998 274113481 66490779 559014304 462394151 428572243 764116955 305068796 858040709 633587956 616057762 195957995 750978759 840075867 509370562 401452903 838803091 499057158 262406489 109369069 37275245 428572243 896072909 211958450 885000402 746092812 359714925 562773407 485262404 177689820 686884353 650990283 315297566 886917295 314069534 396050095 187104147 705304879 829614460 942999703 226492467 809429735 509370562 926045944 413592826 884059813 213097363 331638088 47349911 148087911 635302209 851400664 186244437 363976852 413592826 128188331 175060805 251042004 944573659 103733806 349076114 481894295 307060809 754580366 38304068 736624310 446968233 623398671 249820698 917452919 795472528 215981255 965948435 244528344 7807006 289918211 808838846 1926282 349076114 660095934 109054120 637769046 237172271 598426014 656191811 575895835 459452716 430284321 296751278 882364001 506178629 518384931 554242697 128702236 968755777 42657625 918521256 888553258 170938835 780870754 138442062 211958450 589760538 94279561 516175014 186285312 754133002 503666498 196460706 407510599 174335822 936312210 424974082 396050095 388085842 920628541 737945381 862177563 35128915 632402794 884952974 660765062 722013570 572588387 780061015 850386354 485262404 219054502 721769014 80485362 32954995 432089082 78775552 485153920 509144872 932584021 587179274 50241607 246221518 533455280 688177128 958668995 495854210 641635851 160287690 773781000 160287690 305068796 175507355 412979540 851759377 539957336 938456692 244528344 87392830 685702028 408032939 292972503 932715562 922858580 207442482 757815664 81553943 103733806 515426984 600441802 52243955 681765297 570796148 295366548 394791153 292696118 106790696 638516505 978947655 304621545 885353274 911302173 589760538 630201811 509019925 295366548 162904272 117931902 285947848 831467447 246058339 32806834 458156391 738612855 632378665 757850417 711455867 904800517 403519778 590208882 515426984 109369069 511277493 955501918 218611070 412979540 462394151 696443558 937158597 328462418 225771141 926044257 287768226 77819776 396937914 47290536 808614164 681930584 68748842 407629453 984050047 802009078 937158597 512614298 307403622 210621083 592970093 448262245 984050047 857535330 371179314 688577702 767187616 503666498 218611070 131323888 300892929 637939784 602832600 255644658 711532060 687988023 509019925 190979155 971549242 551289217 727245017 286037808 916956968 420052652 866568903 152866011 939725993 771321738 505061211 133739154 960796073 971894015 338312978 13112382 511277493 152523810 851829959 247221668 353964006 83066601 190323279 888553258 207844781 462762217 315297566 774489082 850484222 876868627 764116955 154538466 939725993 540394532 939725993 771321738 650036494 298727845 885141769 946916156 56927881 78649514 179991869 32075030 32954995 148087911 225858850 577970627 498045048 630201811 408032939 633573519 264100442 703514531 979750308 918225489 134971740 295606018 78775552 581063820 478892468 290117216 579757115 296305836 282751746 193648030 735710261 626833449 66490779 663971090 324986193 539957336 623206361 50241607 396138845 685702028 300892929 586370291 196460706 723661847 699230813 783513992 250885472 745200166 560623000 208625324 408032939 703514531 522663253 407629453 888259120 109369069 560327459 254203892 601740259 982353486 968755777 190979155 729868696 152866011 79523589 710224239 51457589 129724737 60017144 637939784 299462930 769327548 79523589 540976336 882804101 431406787 852107700 877167702 744008188 32806834 708094860 882364001 812414090 628523361 970911538 966131311 918521256 214650974 971549242 795549341 247822207 969294148 218611070 210621083 371179314 770993588 81553943 514650194 885353274 181668423 896072909 295606018 256866745 884059813 656191811 465759767 852604705 850386354 686884353 562773407 397928982 850386354 328764419 683406807 859168292 975337465 134801439 518384931 359859765 181668423 806744033 585165457 448881532 163769090 36265302 471393875 459452716 67700412 943235508 931640418 220576148 303230482 829614460 422532994 252962990 885995802 800460688 757815664 140551765 32806834 592970093 485153920 515426984 562773407 371179314 563678994 456137963 595030753 841780337 931640418 165821462 953882020 338312978 982353486 175507355 140129038 47349911 645094664 708053570 575023903 711455867 652018277 607965234 893019475 485063015 590208882 557710104 575023903 771803404 140129038 579757115 696443558 838803091 295606018 137529801 604968568 624819674 654830523 975478549 533864165 7807006 840075867 789617647 854902633 60017144 681765297 994587826 816971086 708046990 770993588 424974082 771321738 498045048 688577702 463496366 774489082 589760538 484158080 852107700 125204206 694954883 422532994 155241439 306607837 330205547 153196022 531333917 321628921 55108095 568104980 387703244 653201202 727827821 136384659 36265302 396806189 413592826 926045944 213097363 553191189 195019158 292972503 991615550 115509283 446968233 289736829 163229392 145559297 458290565 660095934 955730659 628523361 38304068 751925989 106790696 600441802 571019028 401452903 789617647 115090276 543945175 499057158 130160246 53525809 781242822 148087911 543865019 396806189 376448548 715779797 288873549 270237875 969494113 904800517 246058339 123073176 918521256 705548145 937158597 464130920 382904427 570764323 678474526 628523361 624819674 153196022 40131409 626932919 121069546 886917295 527595027 43970470 568142039 598426014 581831913 860477160 155241439 862177563 117210451 129724737 613596687 633587956 475344103 982416551 494336936 162062292 296751278 292696118 36265302 302151126 382210484 816971086 859168292 456956861 972710252 955501918 172382592 215981255 943235508 884059813 37275245 804406873 953267424 73848009 687055288 610447918 793291205 663971090 775682536 425392410 686335042 857535330 918521256 56154381 852107700 269911067 713146141 298727845 995876182 854902633 237172271 979740237 140725908 953882020 250885472 923927991 732559957 757850417 559957428 808866527 793291205 152866011 757709512 39220584 535533605 950497221 978947655 687988023 625664180 888553258 476912096 927806038 635302209 941586175 527595027 328462418 708046990 688577702 721769014 771321738 509664709 876263470 476912096 570764323 960796073 306607837 251367294 490344724 1736950 954677909 983113723 115509283 667313812 332834875 443960759 31215478 165821462 420052652 718980624 900116034 51457589 992001870 829614460 654830523 708053570 492009082 983113723 917795074 403519778 921198791 750750593 712346140 975478549 809429735 287239117 917452919 282751746 481894295 934824360 776352608 134971740 363976852 582273012 575023903 520071928 788737791 458363994 920628541 55108095 56154381 907721720 551289217 27735709 401452903 960543625 39220584 190323279 850386354 934824360 29069209 112390393 128188331 767839638 991073887 494336936 315747769 371179314 430088921 556619020 650990283 485509833 685702028 678474526 408395896 539035187 900116034 546141085 548748527 396138845 39220584 152314280 430284321 382210484 117931902 989729323 422532994 5299425 888699423 172382592 760370490 750750593 577970627 860708299 547547687 509664709 363976852 546141085 969294148 38304068 93478833 296751278 553368896 964902255 700560235 452156279 152243323 896029805 598543708 247822207 305990981 452156279 788737791 535533605 884072178 462394151 753419354 981996224 538810384 788118407 663971090 664041213 93478833 478892468 632014852 727578179 478351140 618355033 773781000 831380531 771321738 196460706 503666498 307060809 776820092 732559957 595030753 441621000 736237188 842970782 361435434 32954995 23262398 443960759 687988023 103219970 567948101 400218902 900116034 250749017 247221668 165821462 691982506 735710261 289736829 190323279 774489082 757709512 125829791 196460706 979740237 190323279 695599688 315343704 681765297 836376015 830619816 888259120 49317804 506919968 298727845 334211676 623398671 2379379 125829791 667844649 567343883 708094860 186285312 87392830 148087911 978947655 754580366 722013570 688577702 969494113 315747769 587179274 572588387 514768035 941586175 20148474 660095934 550322314 284588557 315297566 492009082 836376015 776820092 2575238 247221668 711532060 295366548 573480571 850386354 207442482 23262398 413592826 538810384 55018341 78649514 767839638 101231409 888259120 675472009 495854210 595030753 955730659 591292508 40131409 746992914 793291205 429277230 98231977 41538784 134801439 885549757 475344103 396806189 850484222 82689280 325554372 103669472 664041213 674485068 396138845 920721173 792846009 513440742 838803091 687988023 708053570 553191189 119279869 60750487 806792339 525347105 174862116 838331644 590918818 125829791 984050047 201717402 708046990 203331888 573480571 702364434 618355033 691982506 676975489 115090276 223299794 215792516 290474734 292696118 182214511 322974842 382904427 816971086 853170454 145559297 459617527 244528344 66490779 956815883 10369081 292696118 60017144 982416551 589760538 982353486 81337657 814295984 376448548 801623766 196460706 886917295 174335822 518384931 20148474 132556595 114409323 39220584 739696834 886917295 53195413 603931167 997329398 992001870 851829959 736624310 10369081 704431513 613596687 363976852 590918818 306258744 371179314 123073176 713146141 128188331 885141769 831467447 128450928 305068796 509370562 73848009 403519778 375066210 997329398 840130613 981996224 604968568 782533040 705304879 688177128 570764323 912948600 628523361 602832600 195957995 667313812 136384659 812414090 215792516 117210451 78649514 119279869 21190596 722013570 43970470 382904427 512614298 134801439 623398671 815123402 533455280 550322314 154538466 213097363 601630030 388085842 597206610 885000402 559014304 572465104 685702028 413592826 275202504 829614460 598426014 607965234 181668423 630977998 125829791 459617527 721418370 969494113 587469038 458363994 966683628 788118407 723661847 943235508 743614603 448881532 681765297 727827821 888553258 761330904 922706719 571019028 774489082 121069546 837690635 737945381 633573519 790270533 843005594 548964093 457149478 860708299 888553258 77685914 637939784 780061015 824770361 296751278 344876805 850484222 247006479 910818482 740882715 589760538 927806038 252792947 299113502 835212499 945394518 664041213 6720560 408032939 703490607 140725908 306258744 215052415 163769090 850484222 186285312 737945381 757815664 186244437 563678994 338929165 430088921 449022331 923927991 390793037 115090276 413592826 485153920 556619020 215792516 831241130 305990981 719601437 788737791 729868696 538810384 938080232 722768643 311808379 770594967 953267424 931013644 668964848 32075030 452156279 640925332 683621666 896571061 288072509 945394518 20148474 840130613 995876182 562773407 916956968 49317804 53195413 709613471 664041213 917795074 885647994 936312210 896072909 650990283 514768035 674485068 29473993 877088774 112090095 32806834 172894131 931086800 130160246 275349681 635302209 656623172 688177128 103669472 962430008 542382913 47349911 344876805 852755974 809429735 727827821 577970627 256866745 746992914 145885851 518384931 891279504 424594759 968755777 603931167 328764419 424594759 602832600 145559297 160287690 433686203 624819674 572588387 152314280 774489082 646710523 259646582 404152565 760231333 187104147 710224239 560327459 590208882 708094860 893019475 220576148 885995802 991615550 691982506 396937914 918225489 371179314 299113502 984047482 586446680 506919968 773781000 324986193 754580366 55018341 857535330 866568903 904771946 618355033 885549757 968755777 538025980 165821462 274113481 215052415 196106606 732559957 247221668 170938835 93651148 306597948 860377902 186244437 921198791 143200457 464130920 306597948 151364594 446968233 242186770 781246194 971894015 193515742 910850066 997329398 93478833 106790696 72820570 624819674 600441802 53966525 886149363 223299794 485153920 296751278 540394532 943793512 709613471 79523589 125204206 789617647 162062292 882804101 586370291 697742034 47290536 252792947 268759041 352092606 215792516 190323279 299113502 592981604 292149520 165821462 721418370 841210236 407091770 718980624 499057158 887548285 778074990 937158597 228290502 390275103 586446680 852107700 278160655 613596687 304621545 687055288 306607837 882804101 67700412 995876182 420052652 137529801 590208882 560623000 444897967 47529701 597206610 842970782 305068796 4519262 214244685 53195413 271484655 744008188 550336314 711455867 626932919 506178629 354807942 624819674 585165457 342116147 264408147 37275245 186285312 795472528 632014852 891279504 492009082 207442482 601630030 463496366 641635851 186244437 575023903 632378665 858127225 282751746 247006479 761330904 183440003 359859765 953882020 850484222 306258744 10369081 539381059 543945175 40448245 360743135 675472009 858040709 854969794 656191811 956815883 812414090 768561257 241184545 754580366 817743547 600441802 829614460 837690635 485509833 757815664 782533040 915330573 462394151 595030753 566554997 401452903 98231977 396050095 334211676 247234349 19715614 931640418 761330904 770993588 307403622 302151126 969494113 53525809 182214511 264750083 458156391 860377902 388085842 857535330 812044550 148087911 548964093 274113481 589760538 851400664 313272965 271484655 246058339 77819776 283321520 533455280 698320352 60750487 390793037 396743027 515426984 408395896 850484222 626932919 382210484 640849273 872434540 843005594 789617647 425392410 852604705 295606018 193515742 921198791 40131409 162062292 771803404 490344724 638790258 31615284 699230813 809429735 989729323 490344724 146573202 851400664 744008188 211958450 550322314 738612855 266583970 331638088 134801439 590208882 53966525 190979155 282751746 77819776 944573659 641635851 916956968 626833449 891279504 745200166 448881532 843005594 485509833 135975430 698320352 991073887 249670598 598543708 146573202 663670886 981996224 854969794 81337657 67700412 882804101 656623172 674446970 295606018 698320352 603931167 170941326 82689280 56927881 183440003 38304068 824770361 49614749 344620844 812414090 429277230 52243955 23973553 282751746 628523361 360743135 896571061 496698204 64420967 167276070 562773407 851829959 799588075 852604705 956815883 737945381 663971090 174862116 586446680 424974082 242028021 195019158 247221668 209497607 886917295 424974082 210621083 560327459 888699423 573449906 628523361 682170984 553191189 762749463 710224239 767839638 420052652 781242822 874124920 835198840 626932919 829983432 401452903 506178629 186285312 526944836 975337465 682170984 38338132 829614460 878442641 252792947 152618584 792846009 936312210 387703244 783513992 5299425 275202504 400178823 554222239 850484222 53226850 287239117 261683638 620243558 850386354 288873549 754580366 145885851 271484655 451521521 456956861 378961655 816971086 218611070 132556595 170938835 567774282 556619020 640925332 485262404 567343883 371179314 776820092 494336936 900116034 20148474 538810384 629101079 679463383 382210484 559014304 993091440 538810384 252792947 215977916 376448548 773781000 143200457 210621083 829983432 293192373 527595027 331638088 750978759 344620844 264100442 900796599 349076114 754580366 143200457 424594759 266583970 926044257 782533040 586370291 452156279 296305836 290474734 412979540 841780337 156817178 543865019 886917295 215052415 366854683 750978759 850386354 771803404 878442641 787269565 444897967 630629857 654830523 378961655 780870754 27735709 351424753 396138845 567343883 729868696 583924389 324986193 152618584 624819674 145559297 140725908 638516505 965948435 958668995 266583970 465759767 27735709 780870754 992169078 754580366 531135820 553368896 757709512 632402794 79523589 715779797 376974209 242530683 733642252 502849508 992169078 431406787 369306500 242028021 746394036 860477160 559957428 946612927 247822207 638516505 55018341 650990283 560327459 838655651 786320493 949084393 360743135 778074990 968670974 900796599 494336936 769327548 735710261 618542887 313272965 264750083 32954995 941586175 165821462 206036522 349076114 678884863 396138845 334299650 560327459 778074990 560327459 553191189 250885472 152866011 246221518 709613471 315297566 553191189 841210236 331638088 993091440 776820092 209497607 617908997 464444922 254203892 464444922 843005594 858798711 929504680 140725908 966131311 667844649 532803593 79509313 920721173 324129364 604968568 140725908 851400664 842970782 465759767 404152565 966683628 718980624 431406787 942866882 545538425 287768226 840130613 349076114 115509283 137529801 135975430 32954995 432089082 223299794 271484655 539035187 674485068 117210451 918225489 182214511 638516505 32954995 315747769 884952974 592639233 687055288 151506993 209497607 553191189 262406489 269911067 789617647 640849273 806792339 430088921 686884353 103733806 81553943 577970627 662972501 40656291 509019925 131323888 114409323 751925989 250885472 696443558 207844781 190929591 962430008 133739154 476912096 56154381 264100442 910850066 55018341 854969794 891279504 540394532 36055646 430284321 496698204 28363157 581831913 131323888 918521256 991073887 590918818 135975430 36265302 430101007 264100442 451817798 299994808 31215478 931005739 546679009 874297853 746992914 78775552 610447918 711455867 498840912 750978759 129724737 390793037 270237875 831380531 201717402 250749017 98824830 932715562 778074990 686884353 941586175 403519778 735696627 932715562 623398671 806792339 801623766 835198840 597206610 786320493 375066210 36265302 268759041 299462930 512614298 699733109 363976852 806744033 681930584 984047482 562773407 109054120 581063820 781242822 203331888 186244437 480361743 646710523 882364001 715957434 284588557 566125822 893019475 496698204 940188502 98231977 305990981 251367294 126695727 98231977 846351340 866337119 831467447 300892929 641635851 990121035 94279561 476912096 99294732 851759377 705548145 792822959 53226850 781242822 854902633 995876182 843005594 625664180 247221668 426814174 877167702 19911869 877088774 256866745 723661847 859168292 60750487 938705675 705304879 175060805 743614603 313272965 703514531 287239117 979740237 872434540 123073176 79523589 637657473 52243955 396806189 433921335 807117750 285947848 738855203 995876182 430088921 636434256 587469038 451551269 900796599 808838846 292972503 726950461 131323888 359859765 722768643 968670974 162062292 264297813 215774690 978947655 738855203 836376015 358401766 427184372 936312210 215289803 570764323 441621000 585165457 207844781 979740237 446968233 992001870 543865019 876868627 792846009 456956861 330205547 429277230 885647994 513440742 307403622 712346140 526944836 700560235 647733367 407091770 267829614 82689280 739696834 151364594 207442482 242028021 458290565 757850417 520071928 567343883 87392830 525347105 940381563 550336314 829983432 971894015 592970093 743614603 246221518 125829791 4519262 944068218 841210236 874124920 213097363 746092812 56927881 559014304 674446970 904771946 860708299 298727845 32954995 430284321 276676140 745200166 426814174 575023903 390793037 77819776 979750308 304621545 678474526 78649514 60017144 550336314 989729323 412979540 831380531 803588261 324129364 807117750 535533605 117931902 475344103 311613451 732245352 43970470 960543625 162062292 77685914 618542887 750978759 806664207 866337119 814295984 353964006 710224239 732245352 275202504 896029805 540394532 342116147 827311105 511277493 115090276 226492467 554222239 462394151 183440003 38085353 539381059 190323279 623398671 78775552 590208882 458363994 513440742 831241130 151364594 140725908 162062292 993091440 650697444 676975489 922858580 119279869 736624310 579757115 695599688 975478549 721418370 288072509 152243323 722013570 430284321 187104147 98824830 252792947 553368896 616057762 305990981 971549242 921198791 167276070 247006479 882804101 396806189 852755974 31215478 47349911 958668995 15903366 864016134 225858850 617908997 256866745 292696118 628820972 696443558 889608806 745200166 682170984 603931167 403519778 774489082 750978759 412979540 403519778 801623766 159828635 109369069 433921335 838331644 299462930 705548145 764116955 746992914 112090095 123073176 527595027 860477160 397928982 99294732 829614460 807117750 800460688 929504680 463496366 874124920 888259120 208625324 535533605 553368896 290474734 931086800 767187616 850386354 995876182 533864165 306597948 746092812 940381563 214650974 702745028 581063820 841780337 67831588 607965234 302151126 38304068 38338132 152314280 931086800 515426984 688534928 315297566 532803593 220576148 618542887 656191811 969294148 764116955 72820570 24089615 255644658 53195413 705304879 711455867 696443558 940381563 554222239 817743547 700560235 744008188 244528344 334211676 284588557 882804101 56154381 179981178 967417280 121069546 73848009 325554372 736624310 739696834 257214051 162904272 181668423 400218902 553368896 800460688 56154381 852604705 910850066 568142039 193648030 662972501 289918211 458156391 633573519 708053570 247006479 396937914 125204206 112390393 228290502 866568903 478351140 543865019 547547687 397928982 814662325 715957434 196106606 836376015 801623766 630238886 799588075 938080232 603931167 963141978 432089082 667844649 83066601 51457589 926045944 852604705 270237875 241184545 743614603 19911869 77819776 588034909 776820092 112090095 67700412 359714925 366854683 686884353 247006479 390793037 464130920 979750308 6720560 573449906 407629453 896072909 162062292 835198840 780870754 325554372 331638088 182214511 115090276 387703244 21190596 788118407 289918211 36055646 98287438 885141769 358401766 193515742 632014852 311808379 757850417 607965234 78649514 554242697 247841801 866568903 982353486 349644605 799588075 174335822 681930584 629101079 305068796 942866882 638516505 443960759 152243323 241184545 126695727 143200457 546679009 514768035 806664207 449022331 760370490 592970093 242186770 955730659 145559297 829983432 638516505 209497607 776352608 2575238 598543708 300892929 202477791 627110568 38338132 376448548 840130613 630238886 926044257 37275245 334299650 683621666 886149363 995876182 305068796 589760538 586370291 282751746 882364001 548964093 247841801 314069534 237389399 405444604 623398671 174862116 838655651 349076114 422532994 592981604 152243323 556619020 888699423 994587826 886917295 781242822 884072178 831241130 610447918 53966525 926045944 514768035 514650194 68748842 230662076 522663253 195957995 19911869 275202504 835198840 917795074 965948435 271484655 213097363 754580366 749497174 750563611 543945175 862254110 630977998 128702236 78775552 126695727 463496366 247234349 306597948 778074990 264100442 286037808 256866745 82689280 758889515 401452903 109054120 816971086 136412292 661321016 943793512 572588387 835198840 489130642 195733178 295366548 699733109 538025980 207442482 93478833 646710523 581063820 782533040 604968568 170938835 412979540 404152565 637769046 579757115 417074904 452156279 931966477 829614460 183440003 119279869 645094664 962430008 93651148 630977998 24188768 446968233 39220584 786320493 610834602 404152565 72820570 953267424 145559297 938705675 202477791 256866745 553368896 678474526 955501918 618355033 945394518 288873549 308142020 757709512 799588075 711455867 210621083 79509313 938140278 860708299 396050095 114409323 975337465 638790258 797746066 997329398 967417280 708053570 344876805 311808379 396806189 19911869 82689280 931005739 455539394 349644605 215981255 287768226 430284321 514768035 703514531 726620654 361435434 757709512 284588557 300892929 944068218 808838846 484158080 727245017 922706719 817743547 550336314 686884353 78649514 396937914 656623172 559957428 679463383 674446970 420052652 812044550 583924389 942899938 877167702 978947655 619842427 874297853 633573519 817743547 743614603 215289803 53525809 397928982 586446680 225858850 743614603 256866745 264750083 516175014 42657625 267829614 407510599 527595027 10475035 943793512 663971090 907721720 293192373 750750593 746992914 859168292 838331644 735891721 444897967 572465104 638516505 831241130 808866527 579757115 40656291 984047482 886917295 884952974 748408317 196460706 6720560 53966525 1926282 276676140 610447918 781246194 42657625 786320493 691982506 399037712 438183310 252792947 344620844 991615550 653201202 852107700 704431513 981996224 915330573 218611070 322974842 288072509 109369069 735891721 946612927 246058339 923927991 182214511 43970470 494336936 876868627 317751260 128702236 566554997 802009078 272303478 971894015 573449906 696443558 630238886 769327548 396138845 746092812 592970093 709613471 19911869 183440003 170941326 322974842 678474526 992001870 2076768 586446680 5299425 115090276 390275103 874124920 711455867 765027062 831380531 953882020 252792947 705548145 628820972 43970470 667844649 354807942 349644605 361435434 324129364 971894015 476912096 831467447 997329398 618542887 37275245 854969794 694954883 344876805 506919968 306258744 296751278 553191189 413592826 533455280 656191811 56154381 462394151 572588387 506919968 78649514 505061211 691982506 566125822 840075867 757709512 244528344 577673184 600441802 330205547 840075867 781246194 640925332 495854210 50241607 761330904 266213579 618355033 396050095 721769014 650990283 476912096 956815883 870201182 219054502 38085353 242186770 396632533 80485362 939725993 851400664 330274784 862254110 955730659 503666498 968670974 893019475 570796148 152618584 726620654 633573519 628820972 632402794 399037712 230662076 27735709 953882020 543865019 328462418 81337657 247006479 396632533 331638088 36265302 328462418 597784477 604968568 40131409 28363157 352092606 653201202 854243215 630775839 688177128 955501918 2076768 922706719 134971740 583924389 264297813 492009082 727578179 10475035 49614749 896571061 938705675 462762217 452156279 830619816 726950461 770864525 953267424 251042004 750750593 31215478 932715562 151506993 620243558 490344724 81553943 577970627 495854210 788737791 299462930 860477160 962073361 471393875 628820972 955501918 910818482 407510599 646710523 831467447 193515742 80485362 509144872 292696118 509370562 704431513 160287690 183440003 885353274 641635851 889608806 855636134 762749463 650697444 106790696 299113502 162904272 82689280 817743547 289736829 520071928 462762217 790270533 814295984 711532060 551289217 52243955 261683638 817743547 769327548 535533605 904800517 739696834 911302173 51457589 532803593 995876182 485153920 172382592 244528344 299462930 485153920 778123726 538025980 938705675 610834602 808614164 885995802 762749463 53226850 27735709 142903358 838803091 128188331 87392830 306607837 841210236 637769046 424974082 196106606 137529801 513440742 452156279 956815883 60017144 597206610 36055646 660095934 699230813 967417280 727578179 115509283 121069546 156817178 338312978 407510599 767187616 586446680 507016471 215981255 515426984 632402794 810021050 289918211 237172271 808866527 727245017 499057158 579757115 746092812 251367294 396743027 629101079 396806189 68748842 750563611 451521521 201717402 607965234 926045944 995876182 244528344 711532060 274113481 698320352 242028021 782533040 626932919 515426984 663971090 179991869 603931167 207442482 757815664 325554372 809429735 852755974 533455280 485509833 177689820 296751278 691982506 246058339 31615284 152314280 261683638 582273012 795549341 650036494 740340897 250885472 23973553 940381563 190979155 103219970 274113481 667844649 208625324 650036494 295606018 287239117 877088774 771803404 577970627 117210451 922858580 306597948 923927991 514768035 753419354 186244437 10475035 451521521 72820570 353964006 80485362 726950461 268759041 334211676 776352608 109054120 430101007 215052415 955501918 52243955 502849508 285947848 932584021 382904427 887794841 978947655 637939784 394791153 550336314 713146141 332834875 413592826 387176309 36265302 840075867 764459345 32806834 698320352 308142020 38304068 862177563 969494113 103669472 896072909 49317804 288072509 430284321 968670974 806664207 507016471 736624310 678474526 626833449 526944836 688577702 209497607 994877696 996943901 208625324 912948600 583924389 806792339 6720560 687055288 617908997 907095826 583924389 237172271 722768643 995876182 140129038 112390393 705548145 186244437 295366548 19715614 10475035 47529701 956815883 390275103 705304879 781246194 206036522 290474734 653201202 179981178 99294732 27735709 922858580 446968233 874124920 121069546 292696118 296751278 626833449 996943901 242028021 579757115 292149520 205387898 451817798 912948600 547547687 944573659 801623766 870201182 264408147 885353274 322974842 299994808 876263470 831380531 760370490 981996224 278160655 337153847 774489082 252792947 133739154 629101079 776352608 290474734 572588387 307403622 586370291 970320952 663971090 616796881 484158080 554242697 797746066 556619020 457149478 485262404 982353486 708053570 807117750 711532060 67700412 787269565 687988023 162904272 876868627 448881532 548748527 902464469 618542887 396937914 539957336 337153847 838655651 509144872 210621083 729868696 499057158 838803091 6720560 376448548 28363157 757709512 922858580 577673184 489612980 885141769 432089082 960796073 271484655 687055288 816971086 334932282 884059813 163229392 685702028 775682536 140129038 762749463 80415088 907095826 650990283 288873549 151506993 55018341 740882715 24089615 975337465 170941326 56154381 79523589 196106606 393120342 257214051 795472528 306607837 451521521 103733806 506919968 163769090 750978759 650990283 592981604 619842427 838803091 296305836 387703244 748408317 571019028 618542887 997329398 807117750 531135820 745200166 399037712 956286779 456137963 830619816 296751278 190929591 330205547 633587956 781242822 660765062 433921335 514650194 175507355 913521589 686884353 705304879 155241439 941586175 923715439 748408317 252792947 592639233 7807006 351424753 910818482 958668995 602832600 289918211 495854210 893019475 390793037 465759767 851759377 900796599 338929165 128188331 767187616 918225489 989729323 244528344 808838846 760370490 566554997 736237188 934824360 850386354 630238886 572588387 408032939 29069209 592981604 854902633 571019028 587469038 632378665 827311105 841210236 328462418 932715562 640849273 889608806 663670886 237172271 926045944 399037712 247006479 775682536 41538784 968755777 344876805 858798711 101231409 991615550 915330573 288072509 407629453 390275103 247234349 162904272 773781000 628820972 546679009 687055288 917795074 182214511 799588075 851759377 887794841 835212499 210621083 853903669 618542887 452156279 705304879 19911869 721418370 27735709 982416551 762749463 32075030 727827821 575023903 2076768 190929591 812044550 488295044 314069534 80485362 713146141 306258744 2076768 254203892 119279869 302151126 2379379 592639233 662972501 603931167 767839638 788737791 746394036 366854683 907721720 931086800 397928982 551289217 405444604 595030753 776835194 465759767 788118407 181668423 264297813 857535330 970911538 128702236 573480571 932584021 636434256 603931167 458156391 126695727 330274784 132556595 907095826 581063820 722013570 940188502 983113723 181668423 511277493 886917295 516175014 945394518 616057762 547547687 910818482 602396426 543945175 24188768 925555858 778074990 630977998 947413305 317751260 586370291 841780337 760231333 287239117 151364594 630629857 115509283 955730659 754580366 781246194 15037608 937158597 269911067 449022331 696443558 307403622 299113502 20148474 945394518 494336936 840130613 972710252 214244685 582273012 931640418 568142039 637769046 387703244 513440742 121069546 864016134 597784477 49317804 543865019 56154381 775682536 209789164 970320952 760370490 764116955 311613451 140551765 408395896 795472528 38338132 138442062 816971086 754133002 876263470 307403622 492009082 850484222 215774690 560327459 322974842 757709512 888699423 252962990 408395896 387703244 773781000 718980624 211958450 170941326 244528344 266583970 451817798 49948206 592639233 288873549 550336314 307060809 123073176 146573202 638516505 859168292 702364434 831380531 332834875 859168292 228290502 841780337 926045944 964902255 702364434 616057762 518384931 806744033 687988023 399037712 83066601 404152565 21190596 733642252 259646582 932715562 499057158 812044550 78649514 757709512 234980621 29473993 854969794 588034909 145559297 446968233 396050095 790270533 757850417 232177196 938140278 47349911 878442641 128450928 654830523 831380531 654830523 683621666 663670886 838803091 681930584 262406489 637657473 991615550 304621545 767839638 931966477 509144872 691982506 592970093 259646582 531135820 567343883 721769014 736624310 885647994 424594759 98231977 969294148 708053570 93651148 932715562 947413305 160287690 264408147 371179314 396806189 175060805 703514531 635302209 412979540 237172271 654830523 627110568 177689820 907721720 882364001 252792947 24188768 964902255 80415088 923715439 302151126 353964006 156817178 808838846 770864525 577673184 53226850 641231120 481894295 686884353 40656291 264100442 949084393 117210451 484158080 494336936 264750083 446968233 583924389 527595027 117931902 715957434 640925332 174862116 125204206 838803091 488295044 971549242 261683638 981996224 247234349 780061015 554222239 808838846 109369069 403519778 702364434 889608806 80415088 526944836 663670886 478892468 152866011 831241130 838655651 506178629 816971086 624819674 926045944 369306500 929504680 405444604 553368896 182214511 619842427 52243955 954677909 764116955 525347105 539035187 451817798 390793037 760370490 870201182 375066210 543945175 858127225 112390393 838655651 789617647 242186770 7807006 878442641 923715439 884059813 394791153 67700412 246058339 904771946 509370562 183440003 266583970 502849508 527595027 502849508 702745028 304621545 984050047 431406787 638790258 430284321 668964848 351424753 870201182 465759767 464444922 736624310 694954883 407629453 170938835 550336314 299462930 719307635 789617647 884072178 441621000 604968568 885141769 332834875 315343704 518384931 283321520 422532994 870201182 93651148 152314280 753419354 433921335 788737791 37275245 481894295 851759377 407629453 507016471 6720560 616796881 351424753 888259120 438183310 324129364 126695727 983373150 835339516 136412292 60750487 531135820 700560235 130160246 835339516 160287690 126695727 767839638 38338132 854243215 302151126 934824360 215774690 938080232 32806834 19911869 73848009 285947848 125204206 134801439 633587956 531333917 954227928 962430008 797746066 983373150 662421393 24089615 705304879 60017144 38844979 249670598 638516505 592970093 886917295 478892468 148087911 702745028 885549757 860708299 43970470 376448548 598426014 907721720 540394532 815123402 152866011 792846009 464130920 896029805 148087911 143200457 60750487 667313812 6720560 87392830 663670886 215289803 760231333 404152565 289736829 165821462 885995802 382904427 878442641 282751746 135975430 88335614 954677909 396138845 851400664 250749017 966683628 68748842 247006479 708046990 773781000 172382592 361435434 910818482 641635851 686335042 705548145 413592826 807117750 984047482 261683638 761330904 47290536 186244437 932584021 674446970 885995802 276676140 950497221 87392830 595030753 252962990 804406873 311808379 210621083 393120342 900116034 613596687 408395896 678474526 93478833 306597948 396743027 314069534 142903358 334211676 269911067 715957434 264750083 172382592 971894015 842970782 264408147 485509833 610447918 943793512 308142020 52243955 42657625 853903669 887794841 369306500 40656291 420636144 133739154 103219970 148087911 838803091 129724737 686335042 315747769 218611070 538810384 853903669 633587956 56927881 850386354 579757115 640849273 674446970 417074904 77685914 751925989 942899938 904771946 387703244 994877696 68748842 938140278 683621666 215774690 694954883 797746066 885000402 6720560 970320952 533455280 916956968 344876805 88335614 885995802 66490779 126695727 866568903 824770361 938456692 99294732 250885472 554222239 187104147 448262245 207844781 32075030 963141978 73848009 964902255 559014304 757709512 407629453 817743547 801623766 60017144 591292508 337153847 186285312 708053570 299113502 884952974 31615284 456137963 710224239 994587826 140129038 515426984 210621083 831241130 80415088 800460688 183440003 556619020 814662325 464444922 893019475 872434540 448262245 376974209 886149363 964902255 830619816 53966525 585165457 522663253 456956861 942899938 485153920 559957428 264408147 162904272 289736829 891279504 64420967 866337119 559014304 352092606 361435434 746394036 786380583 77685914 888553258 939725993 751925989 689757867 704431513 376974209 78649514 792822959 723661847 749497174 926044257 463496366 31215478 458290565 103733806 699230813 683406807 494336936 917795074 780061015 553191189 872434540 966683628 174335822 876263470 1736950 539381059 250749017 465697134 413592826 455539394 764116955 955501918 907095826 408395896 353964006 740340897 587179274 723661847 60017144 738855203 566554997 709613471 514768035 763431295 509144872 290117216 735710261 215981255 792822959 298727845 829983432 653201202 546141085 703490607 437743643 268759041 854243215 125204206 33511708 709613471 931005739 601630030 916956968 407091770 15903366 806664207 627110568 661321016 170938835 750563611 37275245 567343883 602832600 653201202 403519778 448262245 815123402 80415088 573449906 99294732 715957434 751925989 971549242 457149478 36055646 722768643 241184545 93478833 81553943 982370833 630629857 49317804 550322314 214244685 175060805 518384931 32954995 489130642 996943901 954227928 298050322 28363157 604881661 931966477 81337657 885549757 589760538 862254110 287239117 128188331 205387898 40656291 287239117 920721173 215052415 518384931 299994808 306607837 397928982 80415088 427184372 74587532 975478549 551289217 548964093 703514531 722013570 944068218 829614460 803588261 7807006 275349681 514768035 780870754 635302209 247006479 557710104 513440742 103219970 94279561 55018341 136384659 264100442 688534928 396138845 702364434 485509833 115509283 668964848 765027062 307403622 311613451 589760538 215981255 746394036 581063820 831241130 797746066 918521256 835339516 172894131 284588557 250832323 946916156 371179314 138393155 852755974 619842427 571019028 344620844 572465104 910850066 852107700 396743027 353964006 801623766 762749463 420052652 134971740 705304879 213097363 123073176 620243558 93478833 749497174 877167702 778123726 266213579 218611070 745200166 960543625 358401766 288072509 126695727 313272965 83066601 782533040 567343883 225858850 804406873 81337657 396806189 806744033 783513992 719601437 93478833 978947655 215792516 167276070 807117750 771803404 920721173 882804101 78649514 433921335 274113481 808614164 575895835 330274784 311613451 750978759 268759041 842970782 29069209 267829614 681930584 7807006 209789164 136412292 954677909 463496366 910850066 560327459 538025980 464444922 877088774 361002681 855636134 853903669 99294732 800460688 93651148 330274784 640925332 223299794 40448245 396632533 702364434 699733109 575895835 602832600 783513992 962073361 513440742 376448548 67700412 299994808 660765062 656191811 769327548 984050047 40656291 330274784 304621545 806744033 73848009 226492467 803588261 866337119 31215478 778123726 152866011 306597948 570764323 130160246 950497221 858798711 153196022 613596687 830619816 573449906 270237875 699733109 138393155 283321520 131323888 750978759 195957995 568142039 125204206 750978759 47290536 942899938 254203892 781242822 936312210 451551269 888553258 186244437 619842427 624819674 480361743 953267424 444897967 196460706 969294148 984050047 920628541 829983432 623398671 972710252 49317804 940381563 304621545 885000402 456956861 602832600 630201811 288873549 551289217 852755974 632402794 420636144 854969794 918521256 795549341 550322314 465697134 566125822 354807942 250832323 215981255 918521256 760231333 400218902 211958450 338631458 268759041 137529801 289918211 249820698 874124920 866337119 306258744 960796073 251042004 984047482 80415088 232177196 975337465 983373150 628523361 459452716 311613451 727245017 125204206 390275103 776820092 516175014 64420967 352092606 499057158 841210236 401452903 2076768 489130642 396138845 896571061 87392830 591292508 1736950 289918211 60017144 929504680 559957428 485153920 448881532 73848009 543865019 949084393 314069534 358401766 307060809 776352608 264297813 877167702 272303478 860377902 143200457 838331644 87392830 545538425 573480571 712346140 137529801 67831588 852604705 838331644 63192647 219054502 337153847 590208882 396632533 247006479 623206361 808866527 112390393 746992914 781246194 131323888 79509313 632014852 613596687 551289217 7807006 53525809 498045048 567343883 19715614 650697444 842970782 550336314 152314280 284588557 800460688 420052652 572465104 723661847 290474734 50241607 433921335 80415088 806792339 136384659 548964093 131323888 539035187 888699423 272303478 64420967 179981178 396806189 831241130 115090276 382210484 40448245 165821462 547547687 378961655 478351140 66490779 269911067 388085842 190979155 602832600 148087911 264297813 885995802 781242822 344876805 944573659 577970627 249670598 893019475 516175014 776820092 506178629 862177563 56927881 753419354 49948206 931640418 246058339 21190596 630238886 396743027 287239117 704431513 761330904 754580366 737945381 705548145 396937914 941586175 750978759 675472009 782533040 82689280 721769014 489130642 971549242 206036522 285947848 688534928 396632533 292696118 342116147 174140940 376974209 215977916 918521256 271484655 749497174 911302173 872434540 332834875 750978759 142903358 719601437 242028021 944573659 567343883 390793037 538810384 602832600 637939784 287768226 401452903 993091440 804406873 991615550 193648030 478892468 247234349 4519262 776352608 835198840 862254110 810021050 748408317 708094860 610834602 535533605 723661847 387703244 674485068 128450928 430088921 4519262 275349681 964902255 551289217 218611070 237389399 853903669 760231333 737945381 214650974 250832323 745200166 456137963 926044257 746394036 210621083 215289803 546679009 476912096 242028021 943793512 67831588 729868696 490344724 842970782 637769046 718980624 133739154 744008188 850386354 509664709 929504680 737945381 455539394 888259120 295366548 916956968 904800517 352092606 60750487 48746678 292149520 342116147 688577702 896029805 938140278 623206361 786380583 359859765 153196022 179981178 568104980 1736950 877167702 2575238 837690635 570796148 809429735 978947655 484158080 267829614 760370490 52243955 945394518 77685914 80485362 683621666 850386354 520071928 215977916 507016471 547547687 443960759 650990283 413592826 331638088 404152565 910850066 808614164 255644658 352092606 489612980 170941326 696443558 330205547 885995802 776835194 367026304 650036494 610834602 602832600 465759767 114409323 98824830 792822959 228290502 79509313 773781000 604881661 275202504 215052415 465759767 4519262 757815664 613596687 922706719 711455867 949084393 10369081 685702028 896029805 917452919 729868696 247006479 907721720 626932919 750750593 630775839 711455867 53226850 300892929 396806189 932715562 738612855 942899938 247006479 850484222 93478833 225771141 563678994 264297813 10475035 582273012 931086800 307060809 49317804 896072909 43970470 727827821 206036522 767187616 967417280 38085353 219054502 264100442 60750487 592981604 886149363 557710104 926045944 285947848 540394532 136412292 748408317 451521521 455539394 560327459 142903358 182214511 264750083 237172271 264408147 635302209 539381059 140725908 396743027 427184372 264408147 55108095 366854683 531333917 920721173 81553943 82689280 317751260 358401766 630977998 234980621 250749017 481894295 250832323 626932919 205387898 142903358 446968233 663971090 630238886 465697134 664041213 430284321 607760956 570764323 337153847 126695727 223299794 72820570 778123726 99294732 589760538 64420967 79509313 430101007 550322314 255644658 250749017 932584021 912948600 917452919 543865019 540394532 771803404 751925989 140551765 131323888 130160246 532803593 328764419 751925989 2575238 542382913 994587826 93478833 722013570 920721173 582273012 196106606 63192647 254203892 702745028 770594967 15903366 67831588 315297566 396806189 140551765 299113502 459452716 956286779 248642173 298727845 4519262 451817798 535533605 251042004 205387898 125829791 787269565 152618584 397928982 156817178 647733367 489612980 433921335 885995802 338929165 303230482 874297853 29069209 767839638 715779797 20148474 858127225 788118407 603931167 713146141 687988023 852755974 344620844 607760956 947413305 788118407 610447918 629101079 745200166 711532060 306607837 831380531 572588387 732559957 757850417 625664180 514650194 750978759 860477160 963141978 195957995 146573202 201717402 252962990 367026304 300892929 860477160 328764419 321628921 698320352 115509283 78775552 10475035 485063015 201717402 55108095 917795074 387703244 797746066 29473993 305068796 735891721 888699423 167276070 685702028 330205547 712346140 215289803 586446680 307403622 954227928 625664180 570764323 780061015 757815664 806792339 886917295 891279504 710224239 283321520 846351340 163229392 661321016 800460688 773781000 288072509 922858580 543865019 862177563 310726569 913521589 852107700 430101007 27735709 917795074 727827821 854902633 87392830 152243323 727827821 809429735 964902255 917795074 109054120 712346140 866568903 738612855 330274784 525347105 520071928 237389399 300892929 780870754 285947848 807117750 313272965 162062292 81553943 290117216 727827821 876868627 505061211 242028021 750978759 776352608 388085842 103733806 48746678 115090276 427184372 215977916 711455867 425392410 403519778 202477791 485509833 174140940 559957428 770864525 629101079 430101007 656191811 885549757 376974209 503666498 475344103 32806834 889608806 464130920 338312978 915330573 554242697 278160655 152314280 465697134 424974082 532803593 815123402 920628541 298050322 884059813 397928982 804406873 984050047 931966477 338631458 683406807 207844781 401452903 771803404 854969794 182214511 888553258 943793512 24188768 647733367 876263470 106790696 950497221 624819674 375066210 850484222 885995802 635302209 982416551 283321520 361435434 451551269 375066210 463496366 950497221 963141978 237389399 793291205 598426014 983373150 568104980 5299425 101231409 721769014 42657625 699733109 587469038 896029805 278160655 220576148 786380583 715957434 838331644 361002681 484158080 506178629 567343883 916956968 652018277 859168292 723661847 613596687 806664207 66490779 885995802 938456692 681765297 38304068 242530683 79523589 80485362 193515742 705304879 647733367 41538784 522332929 186285312 607760956 769327548 829614460 93478833 527595027 567343883 485063015 305990981 997329398 640849273 815123402 610834602 174335822 814295984 4519262 911302173 47349911 674485068 478892468 93651148 662972501 595030753 349644605 783513992 324986193 885995802 995876182 80485362 907721720 757850417 616057762 420052652 266583970 129724737 315297566 696443558 167276070 49317804 456137963 103669472 313272965 125829791 838803091 738612855 38085353 129724737 993091440 331638088 560327459 425392410 165821462 840075867 311808379 215981255 689757867 630775839 515426984 797746066 689757867 769327548 762749463 202477791 767187616 801623766 852604705 331638088 581831913 72820570 53966525 942999703 446968233 502849508 252962990 32806834 687055288 462762217 509019925 888699423 137529801 653201202 250749017 268759041 32954995 153196022 831380531 366854683 995876182 518384931 495854210 771321738 250749017 748408317 78775552 344876805 676975489 451817798 138442062 595030753 726950461 751925989 628820972 838331644 963141978 855636134 207442482 803588261 140551765 154538466 215052415 533864165 937158597 533864165 896072909 214650974 829614460 947413305 53966525 83066601 246221518 559014304 554242697 286037808 48746678 802009078 78775552 843005594 251367294 344876805 1736950 888699423 68748842 626833449 179981178 740882715 939725993 807117750 568142039 247841801 300892929 585165457 526944836 67831588 918521256 214244685 632378665 550336314 361002681 32806834 349644605 219054502 793291205 268759041 459452716 840130613 969494113 681765297 859168292 877088774 27735709 862254110 459617527 407091770 452156279 900796599 276676140 910850066 134801439 128702236 426814174 687988023 290474734 163769090 448881532 6720560 831241130 918225489 68748842 941586175 427184372 586446680 342116147 518384931 371179314 735696627 942899938 6720560 715957434 991073887 940381563 174140940 282751746 691982506 195733178 28363157 506919968 971894015 404152565 513440742 786320493 559014304 727578179 971894015 632378665 153196022 496698204 42657625 573480571 292972503 780061015 101231409 338631458 882364001 458363994 321628921 735891721 136384659 793291205 944068218 535533605 738855203 708094860 877167702 437743643 938140278 896029805 315747769 737945381 299113502 858798711 152618584 349644605 251042004 515426984 586446680 485063015 958668995 330205547 597206610 573449906 532803593 579757115 274113481 287768226 617908997 795472528 550336314 968670974 888699423 506919968 946612927 722013570 433686203 106790696 82689280 246221518 888699423 571019028 271484655 506178629 575023903 174335822 581063820 458156391 465759767 872434540 293192373 138442062 490344724 860708299 850386354 918521256 266213579 196460706 882364001 993091440 331638088 699230813 878442641 560327459 700560235 66490779 305068796 215289803 770864525 121069546 896571061 943235508 874124920 506919968 586370291 446968233 540976336 838803091 430284321 170938835 786380583 829614460 511330454 995876182 638516505 620243558 887794841 853170454 877088774 128450928 712346140 806744033 490344724 498045048 295366548 172894131 601630030 213097363 387176309 836376015 745200166 506178629 387176309 527595027 498840912 896029805 518384931 250885472 209789164 420636144 153196022 448881532 83066601 443960759 490344724 174335822 498840912 721769014 641635851 993091440 911302173 781246194 618542887 853170454 966683628 15903366 228290502 451521521 941586175 424974082 145559297 509144872 202477791 762749463 268759041 390275103 760370490 866337119 464130920 795472528 407091770 616796881 683406807 711532060 637657473 979750308 884072178 264100442 941586175 842970782 888553258 337153847 489612980 60017144 299113502 399037712 900796599 215289803 306258744 170941326 809429735 835198840 637939784 989729323 806664207 559957428 874124920 853903669 586446680 170938835 738855203 618355033 802009078 676975489 407091770 735891721 763431295 251367294 590208882 750978759 244528344 943235508 82689280 51457589 432089082 628820972 633587956 2379379 886917295 885000402 396743027 860708299 975337465 393120342 387176309 674446970 289918211 443960759 206036522 750750593 945394518 885647994 407510599 165821462 551289217 437743643 455539394 994587826 601630030 570796148 595030753 548964093 920628541 458156391 799588075 220576148 991073887 196460706 837690635 888259120 587469038 190323279 641635851 981996224 13112382 276676140 982416551 627110568 954227928 390793037 292696118 573449906 679463383 225771141 407510599 782533040 663971090 175507355 99294732 601740259 567948101 195733178 80415088 252792947 750563611 812044550 125829791 812414090 488295044 733642252 40448245 836376015 465697134 397928982 786380583 400178823 153196022 810021050 830619816 866568903 650990283 682170984 590208882 739696834 264408147 727578179 681930584 708094860 630201811 81337657 40656291 782533040 814662325 896072909 763431295 676975489 40656291 152314280 32806834 852107700 982370833 699733109 547547687 4519262 637939784 182214511 888553258 573449906 206036522 342116147 710224239 789617647 275202504 662972501 638516505 186244437 93651148 587179274 31215478 896029805 82689280 624819674 722768643 571019028 74587532 215052415 430284321 60017144 152866011 288873549 921198791 33511708 547547687 708094860 681765297 306597948 387176309 311808379 10475035 462394151 396806189 887548285 311613451 835198840 956815883 476912096 927806038 55108095 131323888 49948206 802009078 733642252 539957336 427184372 115509283 647733367 553368896 746394036 816971086 942899938 736624310 205387898 78649514 571019028 678884863 891279504 532803593 290474734 586370291 225858850 650697444 338929165 465697134 938080232 215981255 449022331 126695727 527595027 425392410 790270533 979740237 207844781 633587956 420636144 946612927 888259120 13112382 114409323 135975430 33511708 592639233 79509313 661321016 187104147 38844979 215052415 757815664 396632533 598426014 128450928 660095934 698320352 746992914 232177196 136384659 885000402 77819776 792846009 23262398 789617647 304621545 829983432 617908997 775682536 617908997 60017144 917795074 989729323 778074990 570796148 656623172 215052415 780870754 49948206 804406873 975478549 153196022 252962990 660095934 835198840 422532994 851759377 704431513 352092606 623398671 726620654 428572243 548964093 305990981 872434540 428572243 172382592 304621545 506178629 514650194 885647994 570764323 307403622 932584021 175060805 499057158 718980624 860477160 159828635 481894295 264100442 117931902 315297566 745200166 531333917 581063820 790270533 953882020 902464469 709613471 226492467 422532994 968755777 878442641 509019925 597206610 452156279 904800517 729868696 156817178 923715439 773781000 841210236 927806038 806792339 597206610 252792947 750563611 175507355 539957336 889608806 591292508 252792947 125829791 726950461 432089082 314069534 306258744 152314280 42657625 806792339 152243323 896072909 24188768 955730659 284588557 296751278 857535330 167276070 653201202 764459345 955501918 953267424 771321738 792846009 797746066 160287690 268759041 597784477 305068796 451551269 969294148 249820698 705304879 20148474 293192373 272303478 295606018 251367294 201717402 396138845 417074904 937158597 275349681 10369081 489612980 535533605 128188331 299462930 760231333 711455867 206036522 719601437 703514531 812044550 32806834 52243955 956286779 990121035 850386354 708053570 638516505 548964093 408395896 628820972 136384659 718980624 824770361 507016471 886917295 35128915 488295044 607041944 719307635 495854210 721418370 831241130 979740237 387703244 971894015 134971740 597206610 719601437 675472009 314069534 900116034 979750308 857535330 970320952 597206610 885353274 305990981 2076768 305068796 630977998 322974842 997329398 846351340 138442062 946916156 114409323 533864165 485262404 570764323 559957428 80415088 226492467 251188854 885141769 619842427 78775552 103733806 885647994 795549341 47349911 778074990 729868696 683406807 342116147 152866011 885000402 481894295 485262404 538810384 656191811 922858580 424974082 234980621 678474526 910850066 800460688 237389399 733642252 687988023 560623000 949084393 937158597 152523810 296751278 196106606 10369081 193648030 786320493 663670886 676975489 721418370 40131409 456956861 405444604 247006479 891279504 941586175 496698204 553191189 641231120 753419354 413592826 801623766 971549242 15037608 334211676 430284321 590918818 931013644 451551269 518384931 573449906 215977916 983373150 691982506 310726569 133739154 55018341 547547687 313272965 103669472 159828635 375066210 829983432 344876805 708053570 39220584 250832323 462762217 962073361 133739154 942866882 799588075 33511708 40448245 396138845 619842427 761330904 628523361 978947655 956286779 247822207 802009078 860708299 151364594 516175014 876263470 276676140 683406807 674446970 662421393 140725908 771321738 884952974 567948101 137529801 885549757 630238886 177689820 940381563 743614603 175507355 43970470 394791153 292972503 387703244 877088774 636434256 806664207 506919968 991073887 795472528 186285312 296751278 850386354 618355033 503666498 68748842 678884863 458290565 42657625 485262404 396050095 962073361 296305836 808614164 432089082 382904427 367026304 215289803 163769090 232177196 354807942 923715439 888699423 729868696 492009082 984050047 630775839 266583970 82689280 808614164 910850066 925555858 920721173 155241439 795549341 604181881 142903358 459452716 795549341 746394036 788737791 413592826 115090276 496698204 654830523 885647994 857535330 426814174 271484655 732245352 857535330 359859765 827311105 87392830 455539394 616057762 326469359 571019028 202477791 36265302 572588387 970320952 484158080 761330904 532803593 498045048 660765062 307403622 488295044 187104147 21190596 215052415 840075867 516175014 824770361 727827821 743614603 7807006 132556595 688177128 938140278 299462930 60750487 376974209 804406873 934824360 979740237 215289803 696443558 527595027 887794841 732559957 678884863 638790258 542382913 588034909 709613471 732559957 674485068 885000402 878442641 972710252 750563611 459617527 60750487 607965234 50241607 136412292 674485068 775682536 969294148 735710261 128188331 872434540 678884863 570796148 931013644 451521521 862177563 170938835 133739154 247822207 209789164 764459345 753419354 459452716 941586175 522332929 315747769 290474734 455539394 299462930 533455280 87392830 982353486 543945175 98824830 451521521 401452903 160287690 438183310 870201182 947413305 174862116 774489082 910818482 24188768 667844649 938140278 968755777 181668423 676975489 422532994 494336936 587469038 282751746 587469038 975478549 563678994 560623000 585165457 399037712 630201811 630977998 533455280 858798711 743614603 699230813 98824830 313272965 553191189 464444922 801623766 636434256 683406807 787269565 513440742 458156391 691982506 854243215 814662325 160287690 242530683 729868696 430101007 287768226 769327548 718980624 29069209 762749463 915330573 48746678 661321016 376448548 13112382 718980624 247234349 812044550 757815664 746394036 80415088 5299425 687988023 852107700 284588557 963141978 545538425 103219970 685702028 509144872 264750083 938080232 83066601 382904427 703490607 972710252 64420967 232177196 540976336 433921335 932584021 527595027 354807942 299462930 721418370 531333917 266213579 140551765 953882020 172382592 743614603 885141769 721418370 624819674 527654256 163229392 691982506 667844649 630201811 476912096 254203892 38304068 278160655 315343704 358401766 250749017 321628921 841210236 344876805 546141085 428572243 687055288 539381059 932715562 154538466 962073361 888699423 984047482 32075030 788118407 768561257 630629857 645094664 646710523 195957995 443960759 484158080 324129364 626833449 246221518 511330454 699230813 923927991 771803404 328462418 616057762 74587532 522663253 251188854 298050322 293192373 650036494 947413305 662972501 209789164 359859765 900796599 451551269 654830523 433921335 900116034 858798711 80415088 815123402 125829791 47349911 133739154 582273012 431406787 910818482 917795074 841780337 321628921 405444604 148087911 174862116 151506993 627110568 502849508 571019028 623398671 424974082 586370291 458290565 696443558 106790696 430284321 138442062 125204206 587179274 712346140 607965234 774489082 812044550 31615284 232177196 553368896 53195413 47290536 68748842 271484655 841780337 862177563 852604705 994877696 953267424 788737791 940381563 904771946 397928982 932584021 641231120 748408317 781242822 50241607 638790258 293192373 778123726 67700412 711455867 151506993 390275103 480361743 298050322 967417280 841210236 982416551 119279869 29069209 505061211 247006479 991615550 129724737 767187616 877088774 556619020 40656291 488788762 778074990 983113723 151506993 616796881 923927991 539035187 274113481 511277493 814662325 808838846 915330573 226492467 498840912 40131409 936312210 995876182 138393155 885353274 101231409 588034909 540976336 539035187 540976336 932715562 632402794 602832600 6720560 215052415 492009082 285947848 492009082 722013570 637769046 49614749 795549341 808838846 602396426 459617527 215977916 403519778 177689820 815123402 660095934 735710261 598426014 152314280 424594759 963141978 53226850 749497174 98824830 737945381 768561257 451551269 138393155 215052415 587469038 970911538 305990981 896029805 138393155 215289803 653201202 713146141 123073176 888259120 641635851 130160246 132556595 686335042 626833449 938705675 67700412 187104147 73848009 852107700 315747769 399037712 550336314 918521256 367026304 246221518 938140278 931005739 982416551 311808379 538810384 781246194 630201811 674446970 492009082 40131409 874124920 616057762 830619816 858040709 700560235 662972501 780870754 462394151 247006479 676975489 354807942 817743547 396743027 441621000 645094664 338312978 838331644 33511708 888699423 79523589 750563611 984050047 162062292 325554372 242186770 713146141 922706719 138442062 305990981 174335822 992001870 246221518 546679009 732559957 321628921 527595027 786380583 195733178 98287438 852755974 773781000 613596687 838655651 424974082 554222239 874297853 148087911 812044550 408395896 546141085 931966477 103219970 751925989 761330904 203331888 573449906 652018277 66490779 904800517 451521521 456956861 776835194 363976852 912948600 425392410 509664709 489612980 984047482 275349681 786320493 275202504 889608806 133739154 852107700 954227928 732245352 575023903 702745028 49317804 520071928 757815664 831241130 700560235 630238886 931966477 851759377 835339516 288072509 278160655 722013570 808866527 838803091 824770361 114409323 269911067 38304068 617908997 761330904 545538425 505061211 538025980 400178823 73848009 719601437 274113481 750750593 193648030 711455867 814295984 628820972 23973553 522663253 888699423 554242697 412979540 464444922 242186770 511277493 532803593 175060805 910850066 162904272 444897967 24089615 242530683 872434540 808866527 764116955 982353486 932715562 877167702 775682536 451817798 437743643 115509283 63192647 850386354 616057762 626932919 400218902 21190596 699230813 911302173 702745028 745200166 750750593 43970470 916956968 757850417 405444604 242186770 699733109 927806038 984050047 966131311 727245017 125829791 870201182 703514531 812414090 660095934 324129364 550336314 446968233 946612927 315297566 456956861 711455867 567948101 458156391 293192373 939725993 512614298 925555858 915330573 627110568 525347105 808838846 778074990 808614164 709613471 628820972 748408317 195019158 489612980 324129364 152243323 250885472 299113502 955730659 527654256 589760538 326469359 838803091 152243323 458156391 210621083 762749463 929504680 276676140 219054502 146573202 72820570 853903669 586370291 315343704 328462418 324986193 214650974 515426984 275349681 778123726 117931902 616796881 305990981 590918818 681765297 960796073 788737791 831380531 94279561 602832600 743614603 24089615 268759041 708046990 485153920 560327459 464130920 53195413 663971090 195019158 42657625 620243558 456956861 829614460 444897967 232177196 808866527 170941326 876868627 287768226 128702236 889608806 103669472 128450928 408395896 981996224 331638088 249820698 619842427 66490779 186285312 656191811 600441802 437743643 10475035 767839638 592639233 353964006 846351340 378961655 93651148 426814174 830619816 478892468 306258744 134971740 705304879 448881532 878442641 686884353 922706719 87392830 927806038 754133002 896571061 360743135 154538466 7807006 215774690 891279504 953882020 931005739 131323888 330274784 292696118 815123402 954227928 597784477 396050095 543945175 462762217 488788762 208625324 396937914 956815883 990121035 950673785 79523589 230662076 369306500 23262398 543945175 465759767 771803404 840075867 167276070 375066210 984047482 269911067 582273012 80415088 349644605 956815883 20148474 156817178 505061211 154538466 252792947 679463383 531333917 595030753 246221518 923927991 334211676 799588075 79509313 292149520 1736950 778074990 68748842 38338132 299462930 966683628 55108095 688577702 315297566 966683628 310726569 255644658 887548285 662421393 601740259 47290536 778123726 53525809 531135820 56154381 983113723 67700412 117210451 641635851 960543625 770864525 218611070 585165457 581831913 971894015 215289803 806664207 937158597 975337465 396138845 302151126 324986193 344876805 403519778 455539394 35128915 683406807 938456692 679463383 984050047 334299650 296751278 602396426 851759377 920721173 267829614 540976336 186244437 43970470 729868696 247006479 806744033 860477160 732245352 932584021 970320952 885995802 981996224 518384931 360743135 208625324 79523589 590208882 382210484 351424753 458290565 917795074 762749463 203331888 437743643 344876805 597784477 125204206 299462930 705304879 509370562 632402794 938080232 653201202 24089615 513440742 550322314 581063820 155241439 904800517 979750308 719307635 195733178 242186770 749497174 884072178 853903669 133739154 667313812 6720560 912948600 604968568 931005739 344876805 522663253 858127225 446968233 783513992 400178823 876263470 349076114 855636134 874297853 215774690 907721720 598426014 792822959 992001870 441621000 133739154 539035187 945394518 851829959 660095934 620243558 367026304 119279869 559014304 119279869 840075867 979750308 39220584 526944836 931013644 854243215 489612980 735710261 142903358 568142039 72820570 817743547 703490607 396138845 650697444 937158597 900796599 246058339 255644658 334932282 152618584 186244437 929504680 607760956 816971086 676975489 650697444 388085842 186285312 53966525 292972503 737945381 940188502 353964006 432089082 676975489 567948101 98231977 721418370 437743643 954227928 334932282 163769090 163229392 661321016 650036494 827311105 496698204 254203892 32954995 721418370 49948206 840130613 396138845 603931167 674446970 129724737 182214511 827311105 334211676 145559297 990121035 681765297 589760538 846351340 850484222 142903358 507016471 601630030 815123402 296305836 507016471 746992914 531333917 991073887 686884353 878442641 396937914 681930584 10369081 13112382 570796148 778074990 853903669 893019475 800460688 278160655 938080232 344876805 689757867 563678994 223299794 214650974 160287690 652018277 943793512 363976852 396138845 464130920 49614749 485153920 315343704 760231333 718980624 387176309 607041944 911302173 246221518 788737791 140725908 876263470 737945381 709613471 708053570 431406787 408032939 704431513 172894131 251042004 960796073 321628921 587179274 456956861 662972501 485153920 557710104 860477160 27735709 618542887 2575238 23262398 829983432 954677909 572465104 305068796 678474526 994877696 732559957 93651148 543865019 877167702 396632533 152618584 592981604 568104980 138442062 10475035 32954995 637939784 369306500 911302173 597784477 163769090 761330904 39220584 20148474 503666498 174335822 638516505 63192647 602396426 526944836 662421393 282751746 251188854 776835194 40448245 852755974 489130642 175060805 209789164 371179314 129724737 196460706 567948101 520071928 931966477 246221518 344876805 761330904 306607837 315297566 887794841 509370562 115090276 458156391 743614603 694954883 219054502 758889515 704431513 702745028 640925332 989729323 242028021 32954995 719307635 159828635 302151126 601740259 80485362 815123402 24188768 250832323 926044257 592981604 98287438 159828635 831467447 943235508 284588557 285947848 145559297 522332929 617908997 299462930 882364001 315343704 927806038 241184545 214650974 38085353 488295044 359859765 513440742 134801439 489130642 885353274 888699423 601740259 660765062 511277493 705304879 193515742 462762217 225771141 850386354 676975489 183440003 969494113 545538425 205387898 471393875 20148474 645094664 975478549 862177563 902464469 125829791 288873549 740340897 810021050 801623766 620243558 206036522 220576148 703490607 778123726 691982506 674446970 47290536 571019028 132556595 874297853 640925332 32954995 554222239 498045048 743614603 983113723 244528344 702745028 745200166 800460688 99294732 451521521 623398671 207844781 302151126 225858850 751925989 853170454 940188502 179991869 900796599 682170984 430088921 49948206 876263470 152314280 922858580 891279504 804406873 800460688 547547687 376448548 591292508 256866745 266213579 737945381 136384659 722013570 687988023 427184372 538025980 488788762 457149478 495854210 284588557 264100442 156817178 983373150 788737791 539035187 735696627 51457589 10475035 140551765 788737791 962430008 705548145 923715439 296305836 968755777 255644658 443960759 595030753 138442062 492009082 241184545 311613451 962073361 864016134 327773233 38338132 10369081 306258744 485509833 215792516 616796881 492009082 496698204 691982506 579757115 31215478 786320493 375066210 560327459 464130920 390275103 209789164 566554997 554222239 866337119 215981255 991615550 396743027 817743547 929504680 531333917 633573519 190323279 126695727 128450928 979740237 907095826 206036522 767839638 602396426 602832600 94279561 708053570 115509283 266583970 587469038 2575238 457149478 787269565 722768643 943235508 947413305 996943901 31615284 758889515 259646582 573449906 247006479 55108095 877167702 175507355 931640418 179991869 661321016 732559957 387176309 53195413 740882715 630238886 1926282 726620654 539381059 978947655 407091770 727245017 465697134 338312978 619842427 396138845 433686203 458363994 975337465 727578179 298727845 568142039 941586175 891279504 503666498 225771141 554222239 223299794 448262245 215289803 306607837 572465104 855636134 396138845 210621083 160287690 922706719 476912096 23973553 397928982 954677909 427184372 351424753 78775552 82689280 972710252 177689820 556619020 838331644 964902255 502849508 282751746 626833449 165821462 293192373 767839638 60750487 708053570 28363157 459617527 838331644 925555858 49317804 841780337 703490607 446968233 428572243 938080232 955501918 520071928 208625324 884952974 498840912 885000402 396743027 36265302 289736829 668964848 40656291 968670974 98287438 944573659 640849273 446968233 396806189 225858850 420052652 324129364 748408317 996943901 50241607 735891721 738855203 352092606 949084393 780061015 540394532 628820972 967417280 5299425 538810384 829983432 153196022 721769014 770864525 543945175 284588557 989729323 626932919 288072509 266213579 193515742 918225489 353964006 835339516 313272965 303230482 888259120 660095934 874297853 776820092 573449906 430088921 298050322 632014852 494336936 39220584 932715562 433686203 931005739 877167702 241184545 29069209 369306500 955501918 451551269 854902633 960796073 269911067 587179274 885995802 136412292 771321738 441621000 550336314 778123726 926045944 568142039 904800517 902464469 801623766 413592826 824770361 582273012 877167702 306597948 591292508 250749017 568104980 775682536 958668995 134801439 931640418 887548285 942999703 207844781 465759767 459452716 994877696 209497607 67700412 571019028 38844979 195733178 855636134 376448548 803588261 939725993 512614298 405444604 261683638 629101079 546679009 249820698 915330573 272303478 53525809 134971740 29069209 5299425 41538784 689757867 208625324 568142039 618542887 282751746 80485362 650036494 261683638 250832323 770594967 33511708 656623172 134801439 877167702 1736950 920628541 137529801 653201202 866337119 293192373 962430008 539381059 51457589 900116034 60017144 269911067 359714925 257214051 885141769 776820092 79523589 128702236 134801439 900116034 287239117 949084393 299994808 956815883 250832323 545538425 732559957 920628541 531135820 918225489 630238886 308142020 613596687 489612980 970320952 572588387 962430008 80485362 369306500 251188854 446968233 967417280 81337657 219054502 858040709 929504680 781246194 603931167 317751260 748408317 546141085 367026304 527595027 824770361 570796148 193648030 625664180 803588261 711532060 896571061 965948435 32806834 964902255 80415088 792846009 50241607 718980624 885995802 452156279 242530683 829983432 455539394 708094860 931640418 682170984 900796599 251367294 967417280 664041213 306258744 721769014 451817798 858040709 101231409 266583970 662421393 165821462 215981255 997329398 351424753 662972501 640849273 48746678 480361743 624819674 975337465 334932282 920721173 983113723 590208882 852755974 83066601 557710104 888699423 516175014 860477160 458363994 39220584 349076114 550336314 68748842 444897967 112090095 633587956 47529701 80415088 795472528 270237875 689757867 900796599 209497607 31215478 597784477 489612980 638790258 570764323 656191811 954227928 744008188 745200166 458363994 274113481 708053570 637657473 916956968 637939784 33511708 876868627 179981178 502849508 556619020 776820092 349076114 156817178 509664709 748408317 299994808 533455280 991615550 763431295 792846009 945394518 991615550 132556595 266583970 598543708 800460688 967417280 388085842 770993588 506178629 551289217 325554372 583924389 433921335 650990283 509664709 518384931 87392830 860377902 252962990 13112382 458156391 954227928 413592826 632402794 2575238 219054502 424974082 966683628 330205547 855636134 970320952 203331888 767839638 746992914 874297853 804406873 193515742 652018277 464444922 685702028 810021050 709613471 10369081 786380583 733642252 424594759 858040709 941586175 572465104 455539394 495854210 489130642 195019158 835339516 604881661 547547687 27735709 152243323 812414090 94279561 527595027 917452919 918521256 878442641 360743135 41538784 494336936 617908997 858798711 538810384 983113723 633573519 955730659 577970627 155241439 148087911 932715562 640925332 812414090 650697444 800460688 911302173 858798711 575023903 969494113 308142020 49948206 753419354 300892929 215792516 546141085 955501918 515426984 941586175 815123402 28363157 592970093 489612980 223299794 151506993 174335822 967417280 342116147 255644658 155241439 602396426 616796881 860377902 882804101 687988023 187104147 38338132 767839638 545538425 629101079 103733806 456137963 754580366 287768226 788737791 330205547 242530683 509370562 502849508 77685914 652018277 620243558 929504680 764116955 585165457 338312978 681765297 237172271 115509283 182214511 801623766 195733178 735696627 264297813 417074904 635302209 131323888 272303478 971894015 918521256 23973553 727578179 438183310 175060805 598543708 711455867 936312210 463496366 125204206 505061211 214650974 342116147 719307635 174335822 910850066 812414090 949084393 711455867 786380583 744008188 304621545 647733367 153196022 307060809 344620844 337153847 633587956 334211676 814662325 792846009 133739154 330205547 838331644 750750593 448262245 744008188 617908997 437743643 152523810 485262404 303230482 81553943 181668423 334932282 816971086 781246194 628523361 831380531 685702028 918521256 786380583 55108095 64420967 315343704 656623172 252962990 215981255 112390393 587469038 246058339 877167702 965948435 780870754 288072509 623398671 923715439 610834602 7807006 93478833 68748842 29069209 687055288 533864165 509019925 857535330 694954883 326469359 60017144 950497221 338312978 645094664 167276070 992001870 24089615 932584021 359714925 586370291 325554372 202477791 829983432 480361743 314069534 82689280 810021050 966683628 29473993 98287438 420636144 705304879 776835194 142903358 193515742 115509283 613596687 862177563 190323279 780870754 496698204 586370291 330205547 275202504 226492467 780870754 246221518 610834602 735891721 840130613 109054120 266213579 749497174 42657625 24089615 209789164 686884353 21190596 674446970 769327548 4519262 77819776 573449906 921198791 841780337 824770361 247822207 174140940 209497607 884072178 656191811 464130920 971549242 882364001 902464469 806664207 896029805 941586175 220576148 464130920 981996224 396743027 841780337 80485362 852604705 228290502 687055288 802009078 390793037 331638088 902464469 152243323 98231977 577970627 20148474 623398671 506178629 542382913 789617647 567343883 831380531 746992914 697742034 896571061 719601437 511330454 213097363 152866011 618355033 305068796 687055288 255644658 2379379 354807942 359859765 152866011 775682536 753419354 882804101 966683628 726620654 31215478 403519778 152523810 767839638 206036522 852755974 950497221 932715562 215792516 793291205 214650974 711455867 774489082 79523589 148087911 853903669 444897967 287768226 740882715 912948600 465697134 337153847 354807942 225858850 572588387 249820698 78649514 315343704 632014852 970911538 838655651 288072509 128702236 159828635 966683628 98231977 888699423 397928982 776352608 771803404 619842427 146573202 950673785 48746678 311613451 506178629 83066601 572465104 884059813 852107700 286037808 311808379 247841801 527595027 332834875 63192647 408395896 495854210 471393875 420636144 99294732 938456692 38338132 887548285 735696627 746394036 1926282 459617527 29069209 360743135 545538425 382904427 264408147 910818482 917795074 145885851 208625324 427184372 603931167 250832323 305068796 762749463 136384659 488788762 774489082 581831913 153196022 625664180 626932919 252962990 740340897 629101079 152523810 159828635 396050095 629101079 292696118 249670598 695599688 866568903 138393155 360743135 956286779 250885472 663670886 678474526 633573519 452156279 695599688 689757867 43970470 167276070 575895835 195733178 795549341 556619020 893019475 808614164 746092812 420636144 618542887 207844781 503666498 47349911 550336314 592970093 190929591 396632533 375066210 7807006 721418370 459452716 93478833 686884353 208625324 522332929 581063820 984047482 203331888 179991869 332834875 403519778 306607837 522332929 956815883 970320952 553191189 667313812 82689280 835212499 958668995 394791153 753419354 52243955 103669472 566554997 31215478 792846009 913521589 256866745 944068218 559957428 884072178 787269565 181668423 851759377 598543708 112090095 422532994 393120342 949084393 852107700 846351340 630238886 757850417 352092606 302151126 378961655 610447918 514768035 41538784 687055288 886917295 49948206 396050095 338929165 145559297 851759377 681930584 266583970 663971090 817743547 602396426 688177128 430088921 858798711 695599688 938705675 99294732 220576148 186285312 220576148 950497221 376974209 940188502 506919968 771321738 359714925 38338132 172382592 417074904 616796881 311613451 441621000 332834875 175507355 921198791 78775552 148087911 405444604 700560235 77685914 547547687 931005739 770864525 990121035 966683628 338929165 568104980 686884353 331638088 506919968 209789164 852107700 93478833 337153847 332834875 376974209 947413305 884952974 721418370 842970782 641635851 559957428 401452903 570796148 290117216 762749463 743614603 630238886 808866527 40131409 511330454 543865019 77819776 35128915 292972503 835198840 715779797 353964006 315747769 420636144 181668423 349076114 619842427 458363994 50241607 378961655 590208882 790270533 774489082 485509833 586446680 313272965 412979540 396138845 885995802 396937914 956286779 48746678 215774690 589760538 652018277 140551765 132556595 130160246 306258744 40131409 56154381 806792339 344876805 953267424 41538784 495854210 264408147 249670598 80415088 888259120 926045944 441621000 259646582 246221518 770864525 81337657 131323888 215052415 932584021 852107700 803588261 942866882 831467447 888259120 803588261 978947655 154538466 134971740 736237188 38304068 133739154 29473993 215981255 172894131 656623172 462394151 514650194 252792947 270237875 79509313 275202504 686884353 570764323 699733109 358401766 699230813 24188768 841780337 958668995 568142039 186285312 733642252 776820092 19715614 931086800 870201182 773781000 449022331 264750083 262406489 401452903 448881532 640849273 225771141 618542887 749497174 814662325 190323279 886149363 134801439 824770361 683621666 214650974 459617527 82689280 597784477 884059813 459452716 21190596 934824360 412979540 452156279 123073176 688177128 40656291 937158597 293192373 509144872 586370291 49614749 837690635 931005739 539957336 248642173 827311105 47349911 396743027 758889515 567948101 507016471 663670886 400218902 946612927 338312978 98824830 962073361 567774282 287239117 489130642 48746678 429277230 992169078 735696627 767187616 455539394 795472528 73848009 296751278 13112382 866337119 663670886 106790696 703490607 37275245 53226850 817743547 786380583 19715614 471393875 727578179 334299650 885353274 975337465 378961655 129724737 506919968 572588387 174862116 128702236 505061211 42657625 307060809 533864165 371179314 514650194 963141978 554222239 604881661 754580366 683621666 465759767 225771141 488295044 882804101 203331888 767187616 136384659 841780337 270237875 711455867 247006479 522663253 770993588 155241439 123073176 607760956 640925332 708053570 640925332 342116147 591292508 726950461 641635851 812044550 438183310 812044550 760231333 218611070 255644658 889608806 804406873 218611070 803588261 79523589 451817798 969494113 396806189 241184545 610834602 989729323 163769090 405444604 855636134 458156391 590208882 7807006 133739154 424974082 215981255 708046990 735696627 165821462 125204206 337153847 591292508 764459345 206036522 514768035 771321738 134971740 619842427 394791153 464130920 175060805 656623172 446968233 351424753 607965234 641635851 112390393 969294148 618355033 776820092 215289803 956815883 47529701 710224239 88335614 457149478 812044550 804406873 625664180 481894295 995876182 877167702 400178823 151364594 306597948 633573519 267829614 695599688 300892929 700560235 264100442 920628541 117210451 296305836 66490779 944068218 451521521 242028021 35128915 138393155 778123726 770594967 942866882 93651148 2379379 663670886 815123402 814295984 81553943 628523361 134971740 660765062 943235508 412979540 923715439 286037808 767187616 854902633 79509313 32806834 400218902 738855203 310726569 21190596 990121035 21190596 448881532 931640418 699230813 417074904 106790696 567948101 52243955 662421393 623206361 302151126 870201182 773781000 571019028 918225489 632378665 334299650 488788762 152618584 737945381 293192373 112390393 489612980 939725993 979740237 548964093 830619816 682170984 99294732 175060805 854902633 800460688 177689820 776835194 553191189 931005739 284588557 505061211 286037808 252962990 532803593 531333917 806664207 2076768 860377902 682170984 598426014 1736950 490344724 767187616 795549341 112390393 430284321 628820972 610834602 249670598 13112382 400178823 738612855 408032939 940188502 726620654 736237188 520071928 754580366 968755777 254203892 514768035 941586175 965948435 417074904 531135820 525347105 630629857 632402794 207844781 326469359 285947848 29069209 262406489 462762217 923715439 602396426 943235508 23262398 934824360 946612927 287768226 746092812 60017144 745200166 287768226 195957995 990121035 115090276 962430008 407510599 647733367 498840912 29473993 129724737 387703244 255644658 5299425 804406873 213097363 331638088 808838846 152866011 718980624 93651148 205387898 567774282 393120342 780870754 205387898 773781000 618355033 125829791 2379379 401452903 683621666 763431295 750750593 568104980 735891721 992001870 592981604 969294148 267829614 602396426 27735709 788737791 19911869 465759767 711455867 289736829 462394151 770594967 978947655 126695727 262406489 632014852 220576148 332834875 896072909 133739154 51457589 626932919 143200457 481894295 792846009 893019475 232177196 125204206 993091440 47290536 330205547 292696118 780061015 361435434 641231120 751925989 172382592 430101007 968755777 575895835 806792339 840130613 2379379 982353486 246221518 940188502 49614749 691982506 592981604 771321738 942899938 617908997 396632533 975337465 727245017 776352608 942866882 760370490 403519778 994877696 338929165 860477160 860708299 900116034 590918818 126695727 359714925 765027062 630238886 98824830 938080232 424594759 729868696 305990981 953267424 946612927 330205547 190929591 215289803 412979540 754133002 572588387 215052415 264408147 117210451 949084393 629101079 138393155 616796881 546679009 463496366 545538425 829983432 678884863 249820698 430101007 577673184 465759767 852755974 412979540 975478549 23973553 970320952 292149520 664041213 32806834 19715614 103733806 754133002 43970470 907095826 375066210 314069534 738855203 953267424 975337465 641231120 196106606 359859765 67700412 942899938 788737791 399037712 430284321 485509833 650697444 674446970 366854683 970320952 538025980 288873549 193648030 252962990 776352608 838803091 28363157 708094860 745200166 459617527 610834602 851829959 723661847 458363994 855636134 853170454 407629453 689757867 148087911 162904272 626932919 838803091 195957995 962073361 586446680 79509313 637657473 288072509 956286779 464444922 617908997 288873549 412979540 729868696 913521589 853170454 328462418 264100442 290117216 997329398 900116034 140551765 203331888 674446970 511330454 186244437 152523810 433921335 632014852 511277493 630775839 808838846 838655651 711532060 153196022 771803404 562773407 287239117 153196022 761330904 292696118 874297853 876263470 360743135 931640418 912948600 1926282 750750593 408395896 997329398 587469038 53195413 816971086 835212499 539957336 775682536 396050095 103219970 117931902 963141978 532803593 136412292 765027062 251367294 661321016 841780337 585165457 287239117 595030753 688177128 321628921 912948600 926045944 179991869 129724737 968755777 432089082 732245352 575895835 103219970 101231409 907721720 600441802 955730659 678884863 314069534 830619816 325554372 488295044 451551269 358401766 854243215 93651148 872434540 736624310 56927881 953882020 456137963 331638088 248642173 992001870 960796073 1926282 782533040 917795074 55018341 255644658 721769014 219054502 940381563 857535330 179981178 860377902 923715439 206036522 424974082 344620844 601740259 533864165 112090095 799588075 60017144 753419354 732245352 292149520 170938835 424594759 790270533 760231333 266583970 247006479 196460706 710224239 782533040 518384931 962073361 242186770 458156391 304621545 2076768 846351340 896072909 498840912 582273012 511330454 713146141 838655651 635302209 448262245 52243955 532803593 174862116 151364594 630977998 738612855 459617527 703490607 721769014 840130613 984050047 485153920 179991869 921198791 522332929 145559297 369306500 151506993 962073361 650990283 87392830 99294732 4519262 540976336 382210484 884072178 733642252 417074904 119279869 966683628 213097363 855636134 581831913 804406873 494336936 511330454 650036494 28363157 686884353 888699423 912948600 559014304 485262404 367026304 726950461 637657473 943793512 464130920 616796881 920721173 979750308 685702028 249820698 662421393 516175014 814295984 247822207 807117750 195019158 886149363 711532060 190929591 632378665 484158080 841780337 47290536 509370562 944068218 938080232 956815883 943793512 700560235 778123726 407091770 852107700 982416551 376448548 575023903 285947848 630775839 330205547 774489082 264297813 295366548 476912096 938140278 668964848 295606018 314069534 237389399 942866882 438183310 972710252 247006479 433921335 131323888 686335042 840075867 47529701 567948101 722013570 201717402 667313812 562773407 623206361 923927991 938705675 32806834 251367294 305068796 485063015 151364594 112390393 696443558 993091440 492009082 793291205 15037608 688177128 305990981 970911538 478351140 735710261 128188331 215052415 396806189 143200457 230662076 334211676 28363157 509019925 311613451 852604705 637769046 330205547 40448245 668964848 492009082 618355033 73848009 678474526 430284321 520071928 992001870 829983432 387176309 313272965 53226850 934824360 361435434 307060809 56154381 218611070 354807942 727827821 98824830 940381563 74587532 782533040 298727845 427184372 921198791 543945175 302151126 535533605 910850066 750750593 946916156 285947848 590208882 485063015 743614603 896072909 750563611 965948435 900796599 664041213 719307635 641231120 922858580 478892468 456956861 145885851 638516505 968670974 247841801 972710252 206036522 48746678 851400664 451551269 809429735 795472528 480361743 607760956 366854683 143200457 966683628 835198840 663971090 81337657 577970627 55108095 675472009 991615550 688534928 838803091 949084393 582273012 591292508 446968233 72820570 630238886 678884863 735710261 247841801 749497174 251042004 427184372 455539394 831380531 610447918 87392830 654830523 165821462 738855203 841210236 274113481 408032939 900796599 604181881 802009078 735891721 430284321 543865019 408395896 400178823 619842427 352092606 215981255 55108095 28363157 984050047 567774282 27735709 195957995 475344103 148087911 264100442 681930584 939725993 93651148 458363994 778074990 520071928 884059813 916956968 152618584 699230813 915330573 87392830 77819776 943793512 860477160 934824360 780870754 860708299 854969794 628820972 492009082 984047482 351424753 382210484 247221668 896029805 64420967 250749017 264750083 943793512 769327548 853903669 125204206 968755777 585165457 979750308 237389399 960796073 518384931 686335042 971894015 134801439 691982506 787269565 840130613 52243955 656623172 808838846 862177563 196460706 840130613 507016471 293192373 220576148 408395896 498045048 82689280 361002681 518384931 912948600 904800517 630977998 982353486 207844781 67700412 835212499 893019475 51457589 484158080 589760538 293192373 754133002 932584021 746394036 770993588 48746678 152618584 587179274 326469359 771803404 743614603 114409323 567774282 378961655 597206610 787269565 103733806 991615550 663971090 452156279 809429735 24089615 619842427 349644605 15037608 250832323 539381059 36265302 361435434 627110568 478351140 853170454 195957995 520071928 533455280 66490779 98824830 970911538 148087911 361002681 432089082 376974209 151364594 19911869 478351140 662972501 49317804 498045048 814662325 77685914 922706719 310726569 38844979 851829959 618542887 996943901 882364001 307060809 193648030 812414090 743614603 735710261 769327548 589760538 590208882 912948600 630201811 699733109 64420967 296751278 715779797 413592826 770864525 962430008 261683638 702745028 838331644 7807006 215981255 572465104 412979540 515426984 214244685 327773233 433686203 997329398 344876805 396138845 331638088 496698204 860377902 130160246 428572243 225771141 660765062 907095826 271484655 252792947 74587532 49948206 408395896 174335822 215977916 426814174 306258744 285947848 940188502 382904427 814295984 729868696 431406787 56927881 947413305 963141978 740340897 968755777 702364434 781246194 527654256 582273012 93478833 246221518 286037808 2575238 80415088 835198840 39220584 981996224 904800517 170938835 201717402 597784477 745200166 554242697 687988023 607760956 703514531 918521256 286037808 451551269 219054502 983373150 938140278 7807006 322974842 931005739 542382913 944573659 931013644 581831913 765027062 767187616 591292508 66490779 703490607 630238886 311613451 146573202 431406787 527595027 514650194 719601437 617908997 160287690 827311105 872434540 128188331 968755777 703490607 520071928 770864525 556619020 332834875 225858850 610834602 543945175 126695727 218611070 888699423 858040709 408395896 664041213 835339516 955730659 633587956 60017144 367026304 592970093 896571061 382904427 923927991 134801439 691982506 51457589 41538784 337153847 650697444 686884353 640925332 887548285 254203892 296751278 490344724 719601437 926044257 775682536 401452903 330274784 242028021 485509833 830619816 175507355 462762217 535533605 242028021 225858850 396743027 393120342 660765062 207442482 542382913 641231120 407629453 226492467 940188502 993091440 153196022 352092606 128188331 686335042 344620844 630629857 722768643 623206361 831467447 749497174 878442641 342116147 640849273 668964848 746092812 390793037 210621083 960543625 740340897 891279504 683406807 970320952 152243323 887548285 193648030 767839638 575895835 27735709 290117216 571019028 132556595 838803091 326469359 53195413 525347105 592970093 712346140 938456692 10475035 515426984 591292508 220576148 835339516 215289803 471393875 159828635 991073887 964902255 876868627 739696834 876868627 749497174 237389399 24089615 268759041 48746678 203331888 119279869 783513992 568142039 208625324 349644605 129724737 625664180 142903358 800460688 597206610 775682536 292972503 225771141 153196022 311808379 654830523 103219970 585165457 910818482 740882715 393120342 610834602 698320352 966683628 264297813 38338132 722013570 745200166 981996224 533864165 577673184 201717402 251367294 958668995 196460706 660765062 137529801 82689280 433921335 334299650 708094860 396806189 352092606 456956861 56927881 591292508 990121035 251188854 456137963 760370490 762749463 266213579 754133002 723661847 165821462 502849508 218611070 799588075 630629857 247234349 566125822 136384659 688177128 604968568 664041213 488295044 687055288 271484655 851759377 885549757 478892468 485153920 251367294 769327548 997329398 956286779 764459345 15037608 249670598 429277230 315343704 489612980 464444922 539957336 937158597 967417280 997329398 656623172 205387898 502849508 226492467 408395896 20148474 514650194 715957434 289918211 689757867 572588387 262406489 305990981 78775552 401452903 852107700 835339516 713146141 275202504 353964006 471393875 509144872 422532994 726950461 738855203 449022331 247234349 2379379 174140940 627110568 586446680 47349911 956815883 601740259 840130613 315297566 715779797 829614460 174140940 165821462 770993588 597784477 328462418 711532060 572588387 324129364 304621545 764116955 982416551 338631458 946916156 163229392 688577702 170938835 311613451 393120342 315747769 53195413 193648030 485509833 633573519 940381563 286037808 733642252 266213579 767839638 251188854 758889515 67700412 891279504 32806834 283321520 757850417 247822207 982370833 543865019 619842427 746394036 133739154 511277493 94279561 831380531 361435434 907721720 270237875 1736950 358401766 737945381 837690635 962430008 838655651 53195413 538025980 815123402 770993588 509144872 533455280 566125822 956815883 488788762 428572243 667313812 876263470 376974209 358401766 889608806 662421393 641231120 56154381 624819674 945394518 960796073 292149520 456137963 396050095 676975489 547547687 252962990 945394518 792822959 604968568 252792947 712346140 53195413 462762217 506178629 244528344 140725908 940188502 981996224 920628541 962073361 551289217 488788762 444897967 942866882 591292508 443960759 778074990 726950461 816971086 662972501 751925989 498045048 740340897 885647994 610447918 699733109 196106606 264297813 115509283 635302209 850386354 134801439 760231333 854243215 186285312 207844781 533864165 399037712 650990283 307403622 910850066 121069546 538810384 511277493 780870754 87392830 433686203 290474734 80485362 984050047 910850066 531135820 126695727 721769014 685702028 808838846 940188502 972710252 936312210 328764419 93478833 325554372 554222239 971549242 915330573 907721720 862177563 27735709 581063820 806744033 691982506 103219970 471393875 735891721 553191189 106790696 344876805 376448548 837690635 767187616 783513992 581831913 457149478 352092606 715779797 708094860 73848009 792822959 417074904 995876182 67831588 727245017 955501918 852755974 230662076 746394036 911302173 628820972 538025980 213097363 719307635 686884353 814662325 196460706 396806189 272303478 808866527 842970782 274113481 754133002 824770361 213097363 23262398 792822959 942999703 962073361 152866011 962073361 78649514 288072509 266213579 146573202 754580366 711532060 736237188 52243955 738855203 250749017 765027062 858040709 464130920 60017144 151364594 223299794 953882020 527595027 843005594 359859765 396743027 485262404 626932919 47529701 82689280 851829959 326469359 739696834 290117216 689757867 637657473 38304068 553368896 516175014 931013644 359714925 950497221 19911869 640925332 179981178 289736829 327773233 703514531 884952974 72820570 324986193 77819776 732245352 650697444 850484222 942999703 464444922 827311105 942866882 151364594 250885472 215792516 15903366 38844979 570796148 60750487 256866745 751925989 390275103 736624310 726620654 678884863 800460688 407091770 456137963 743614603 485063015 498840912 264297813 331638088 288072509 687988023 729868696 295606018 850484222 542382913 750750593 719307635 396632533 783513992 119279869 966683628 616796881 203331888 272303478 151364594 630238886 351424753 225771141 425392410 970911538 80485362 991615550 457149478 754133002 438183310 509370562 878442641 789617647 255644658 19715614 857535330 396138845 757815664 931005739 306607837 522663253 802009078 446968233 214244685 616796881 40656291 546141085 654830523 27735709 464130920 543865019 857535330 697742034 206036522 984050047 293192373 812044550 971894015 509664709 242530683 162904272 703490607 761330904 807117750 699230813 688577702 870201182 305990981 1736950 32075030 702745028 862177563 452156279 807117750 324986193 851400664 831241130 840130613 77685914 32806834 60017144 77819776 635302209 53226850 854243215 982416551 590918818 125829791 338929165 99294732 750750593 786380583 476912096 632014852 408032939 274113481 792822959 387176309 515426984 306258744 968670974 577970627 170941326 876868627 36055646 257214051 36265302 760370490 983373150 857535330 860708299 326469359 182214511 125829791 767187616 24188768 885353274 38844979 140551765 115090276 342116147 746992914 175507355 77819776 939725993 202477791 334211676 407510599 858040709 583924389 715957434 424594759 767187616 949084393 984050047 80485362 732245352 704431513 955730659 193648030 369306500 251188854 627110568 471393875 891279504 430101007 250832323 679463383 853170454 135975430 754133002 878442641 597784477 654830523 711532060 554222239 225771141 326469359 290474734 604968568 829614460 420052652 727245017 982353486 237172271 77819776 782533040 838331644 35128915 532803593 810021050 21190596 306597948 598426014 722013570 610834602 781242822 328462418 494336936 430088921 687055288 254203892 2575238 945394518 708094860 234980621 852604705 950673785 307403622 151506993 937158597 982370833 213097363 738855203 810021050 931640418 746394036 308142020 66490779 10475035 310726569 13112382 494336936 215981255 264297813 190979155 296751278 735696627 688177128 736624310 616057762 926045944 266583970 926044257 566125822 162062292 246058339 247006479 531135820 93651148 209497607 433686203 390275103 28363157 190323279 570764323 38085353 502849508 882804101 109369069 885353274 387176309 152314280 514650194 733642252 10475035 283321520 401452903 991615550 274113481 854243215 592639233 604881661 214650974 792822959 546679009 7807006 944068218 15903366 982370833 506919968 926045944 618355033 430284321 267829614 451817798 81553943 209789164 174335822 490344724 225771141 438183310 668964848 237389399 761330904 637939784 699230813 408395896 51457589 152866011 960796073 23262398 735891721 740340897 207844781 433686203 560623000 532803593 729868696 533455280 968755777 128188331 535533605 696443558 781242822 885995802 641231120 32075030 636434256 492009082 852107700 489130642 98231977 586370291 829983432 80415088 851759377 715779797 143200457 619842427 776835194 982353486 2575238 512614298 112090095 583924389 858040709 128702236 942866882 695599688 699230813 884059813 2575238 163769090 396138845 101231409 582273012 575895835 441621000 786380583 808838846 308142020 387703244 513440742 400218902 540394532 793291205 763431295 568142039 538810384 220576148 750563611 539035187 743614603 918521256 154538466 324129364 512614298 207442482 838331644 570796148 344876805 495854210 770594967 992169078 128702236 27735709 575895835 382210484 242530683 683621666 602396426 353964006 117931902 485262404 585165457 27735709 31215478 812414090 136384659 668964848 80485362 850484222 893019475 190323279 712346140 831380531 296305836 2575238 637939784 193515742 958668995 298050322 710224239 47529701 877088774 20148474 251188854 964902255 23262398 327773233 922706719 77685914 946612927 727827821 82689280 997329398 518384931 172382592 47290536 163229392 809429735 887548285 712346140 646710523 678884863 246058339 550336314 134801439 705304879 739696834 663670886 971549242 982353486 587179274 685702028 854243215 193648030 495854210 854969794 708094860 619842427 676975489 656623172 112390393 721418370 128450928 857535330 962430008 771321738 938456692 632014852 984047482 498840912 459617527 480361743 404152565 53525809 143200457 702364434 590918818 553368896 390793037 93478833 205387898 308142020 943235508 884059813 616057762 753419354 997329398 407510599 476912096 1926282 515426984 80415088 964902255 581063820 983113723 771321738 668964848 525347105 965948435 966131311 175060805 884059813 314069534 837690635 859168292 292972503 338929165 843005594 376448548 305068796 788118407 115090276 349076114 465759767 376448548 660095934 566125822 862254110 721769014 478351140 404152565 152523810 715957434 920721173 174862116 770993588 962430008 451817798 264297813 946916156 694954883 513440742 702745028 650697444 36055646 922858580 327773233 941586175 226492467 553191189 939725993 49317804 29473993 760231333 520071928 695599688 382904427 944068218 971549242 942999703 702745028 740882715 314069534 50241607 968670974 994877696 678474526 746092812 437743643 186285312 996943901 703514531 119279869 93651148 601740259 738612855 174862116 650697444 449022331 32806834 767187616 278160655 667313812 259646582 400218902 851400664 112090095 438183310 378961655 900116034 220576148 807117750 841780337 931966477 604181881 93651148 186244437 683406807 463496366 827311105 37275245 553368896 448881532 251188854 400218902 40448245 968670974 884059813 601740259 882364001 29473993 490344724 87392830 586370291 866337119 840130613 288873549 619842427 757709512 478351140 592970093 331638088 459452716 595030753 451521521 778074990 266583970 28363157 835212499 885995802 443960759 396050095 711455867 448262245 647733367 60750487 885141769 21190596 526944836 190929591 910818482 67700412 989729323 854969794 735891721 326469359 488788762 975337465 60017144 780870754 678474526 838655651 325554372 407629453 979750308 270237875 885000402 1926282 650036494 215977916 283321520 660765062 60017144 540976336 902464469 308142020 393120342 21190596 579757115 954677909 507016471 885995802 968670974 876868627 315343704 103733806 317751260 503666498 994587826 913521589 962430008 638516505 992169078 181668423 616796881 278160655 145885851 774489082 353964006 109369069 925555858 24188768 566125822 152523810 33511708 438183310 607760956 623398671 808838846 778074990 841780337 771321738 353964006 433686203 498045048 626833449 112090095 663670886 223299794 862254110 250832323 142903358 750750593 298727845 262406489 953882020 88335614 396050095 983373150 967417280 276676140 152866011 838803091 893019475 889608806 581063820 891279504 539381059 114409323 31215478 996943901 490344724 697742034 49317804 56927881 462762217 130160246 955501918 887548285 321628921 778123726 162062292 403519778 877088774 15903366 797746066 134971740 133739154 641231120 514650194 306597948 619842427 378961655 39220584 888259120 39220584 931005739 681765297 397928982 575023903 860708299 148087911 896072909 264750083 727578179 417074904 676975489 518384931 888259120 808866527 983373150 776820092 835198840 893019475 688177128 299113502 272303478 387176309 77685914 332834875 462394151 133739154 838803091 115509283 771803404 492009082 338929165 32075030 51457589 840075867 758889515 101231409 63192647 783513992 426814174 136384659 806792339 311613451 317751260 619842427 190323279 691982506 972710252 480361743 812414090 709613471 287768226 186285312 114409323 956286779 448881532 367026304 733642252 525347105 165821462 242186770 780061015 518384931 81337657 885549757 137529801 776352608 627110568 938140278 607965234 590208882 543945175 884072178 841210236 428572243 264297813 827311105 405444604 271484655 981996224 98824830 981996224 700560235 737945381 203331888 53195413 893019475 138442062 40448245 831241130 481894295 314069534 32075030 682170984 770594967 128450928 966131311 103219970 484158080 77685914 982370833 140725908 991073887 515426984 1926282 641231120 444897967 764116955 776820092 733642252 203331888 252792947 82689280 427184372 251188854 288072509 617908997 495854210 736624310 215289803 958668995 866337119 255644658 376448548 396050095 334932282 896571061 744008188 721418370 711455867 581063820 912948600 40448245 787269565 464130920 688177128 94279561 872434540 548748527 852755974 921198791 256866745 251042004 315343704 304621545 568142039 457149478 546141085 927806038 330205547 542382913 187104147 32075030 850484222 704431513 232177196 247221668 573480571 299113502 382904427 562773407 761330904 465759767 207442482 663971090 641231120 824770361 687055288 299113502 732559957 74587532 485063015 683406807 15903366 661321016 170941326 503666498 934824360 303230482 694954883 722768643 708046990 610447918 476912096 298727845 213097363 23973553 650036494 888553258 971549242 604968568 968755777 444897967 628820972 640925332 215289803 979740237 968670974 598426014 522663253 888699423 907095826 681930584 5299425 765027062 836376015 93651148 448881532 765027062 520071928 633587956 932715562 803588261 925555858 304621545 841210236 946916156 808614164 918225489 485262404 269911067 296751278 567948101 991615550 305068796 543945175 244528344 138442062 618542887 193515742 433686203 324986193 770594967 376974209 656623172 87392830 152523810 789617647 304621545 554242697 103733806 35128915 603931167 352092606 575023903 338631458 971894015 943793512 456956861 775682536 292696118 47349911 900796599 306597948 923927991 754133002 49317804 220576148 303230482 509370562 151364594 190323279 776352608 808614164 13112382 172382592 145559297 729868696 931966477 829983432 407629453 51457589 780870754 338312978 80415088 464444922 264750083 726950461 783513992 592970093 344620844 394791153 432089082 744008188 101231409 337153847 305068796 625664180 587469038 359714925 940188502 195019158 41538784 145885851 244528344 103219970 23262398 495854210 292696118 885000402 128188331 993091440 489612980 932715562 626932919 117210451 553368896 729868696 947413305 324129364 448262245 806792339 650990283 601740259 904771946 531135820 209789164 437743643 681930584 449022331 683406807 806792339 512614298 836376015 444897967 568142039 661321016 590918818 422532994 885141769 683406807 782533040 827311105 130160246 542382913 155241439 862254110 750750593 950497221 882804101 595030753 963141978 40448245 991615550 882364001 972710252 489612980 311808379 465697134 858798711 433686203 337153847 546679009 317751260 98287438 2575238 396806189 311808379 344876805 338929165 590208882 713146141 292972503 964902255 39220584 186244437 540394532 750978759 28363157 35128915 926044257 618355033 945394518 907095826 23973553 699230813 214650974 838803091 595030753 573480571 743614603 52243955 696443558 944573659 438183310 616057762 203331888 237172271 931640418 668964848 196106606 557710104 795549341 866568903 366854683 674446970 518384931 721769014 884072178 130160246 344620844 942899938 456956861 247822207 679463383 884952974 492009082 38304068 864016134 757709512 738855203 907095826 633587956 979750308 695599688 330274784 969294148 2076768 746092812 207844781 344620844 944573659 152243323 334211676 215774690 193515742 431406787 376448548 24188768 983373150 367026304 991615550 193648030 543865019 547547687 978947655 617908997 352092606 910850066 623206361 275349681 800460688 430101007 991615550 683406807 718980624 967417280 296751278 950497221 835198840 554222239 995876182 553191189 885000402 748408317 792822959 765027062 170938835 214650974 159828635 41538784 130160246 904771946 223299794 663670886 995876182 687988023 170941326 710224239 702745028 538810384 88335614 650990283 778123726 946612927 352092606 966131311 744008188 195957995 509019925 29069209 420636144 577970627 991615550 913521589 750978759 6720560 806744033 10475035 48746678 687988023 170938835 687988023 746394036 186285312 735710261 854969794 994587826 298727845 232177196 78649514 509019925 567774282 330274784 587469038 788118407 13112382 63192647 430284321 943793512 257214051 327773233 592639233 138442062 298727845 912948600 513440742 32954995 568104980 19911869 152866011 737945381 438183310 266583970 412979540 737945381 152866011 787269565 674485068 246221518 551289217 327773233 927806038 81553943 270237875 729868696 53525809 514768035 163769090 456137963 525347105 636434256 502849508 160287690 425392410 361002681 860477160 250832323 298727845 698320352 770594967 789617647 43970470 983113723 219054502 376448548 82689280 172382592 685702028 5299425 82689280 155241439 803588261 485509833 740882715 647733367 650697444 112090095 958668995 250749017 208625324 359714925 703490607 394791153 31215478 495854210 286037808 587179274 738612855 226492467 128702236 55018341 595030753 815123402 480361743 744008188 527654256 978947655 938140278 78775552 332834875 907095826 401452903 984050047 462762217 248642173 428572243 686884353 527654256 767187616 230662076 393120342 931640418 841780337 305990981 420636144 354807942 664041213 290117216 559957428 67700412 106790696 151506993 426814174 936312210 535533605 425392410 285947848 595030753 437743643 539381059 307403622 40448245 960796073 757815664 682170984 438183310 193515742 533455280 299462930 284588557 607760956 640849273 786320493 840130613 739696834 656623172 955730659 885995802 859168292 412979540 182214511 542382913 539035187 132556595 146573202 645094664 647733367 195957995 506178629 736237188 604881661 13112382 792822959 128702236 509019925 32806834 5299425 704431513 667844649 162062292 130160246 583924389 167276070 489612980 970911538 156817178 556619020 488295044 601740259 896571061 775682536 462762217 853170454 481894295 24089615 956286779 299462930 838331644 859168292 553368896 396138845 702364434 190323279 617908997 179981178 428572243 546141085 786380583 247822207 401452903 711532060 567774282 810021050 760370490 708053570 152243323 853903669 893019475 207844781 920721173 396937914 971894015 960796073 846351340 854243215 553368896 962430008 326469359 664041213 703490607 613596687 814662325 218611070 738612855 262406489 763431295 628820972 234980621 314069534 687988023 943235508 610447918 237172271 617908997 581831913 955501918 972710252 209789164 49948206 884059813 888259120 640849273 327773233 551289217 172894131 712346140 324986193 893019475 554242697 926045944 683621666 745200166 342116147 125829791 573449906 387176309 970911538 181668423 776835194 831467447 145885851 351424753 727245017 72820570 396138845 539957336 114409323 230662076 812044550 152866011 858040709 203331888 943793512 575023903 781242822 547547687 531135820 129724737 310726569 722768643 306597948 485153920 324129364 650990283 638790258 770594967 851759377 274113481 413592826 202477791 687055288 115509283 463496366 982353486 722013570 577970627 213097363 893019475 459617527 244528344 359714925 696443558 548964093 533455280 400218902 211958450 446968233 489130642 114409323 211958450 907095826 575023903 581831913 770594967 817743547 247841801 134801439 438183310 557710104 862254110 708046990 28363157 721769014 994877696 448881532 878442641 315343704 922858580 299994808 407510599 396937914 489130642 459452716 846351340 36055646 662421393 943235508 247841801 213097363 251042004 885647994 361435434 330205547 757815664 400178823 125829791 996943901 685702028 334211676 920628541 218611070 284588557 306597948 806664207 311808379 259646582 182214511 652018277 968670974 532803593 299994808 328462418 298050322 512614298 943235508 465697134 907721720 23973553 854243215 645094664 601740259 109369069 955730659 553191189 526944836 975337465 674446970 145559297 159828635 738855203 938080232 814662325 841210236 776820092 121069546 154538466 283321520 490344724 788118407 598543708 485262404 945394518 749497174 502849508 241184545 920628541 404152565 448262245 250749017 274113481 33511708 47290536 975478549 489612980 378961655 754580366 587179274 101231409 698320352 633573519 806744033 396743027 995876182 396743027 408032939 994877696 686335042 788737791 140551765 290117216 850484222 53226850 2575238 652018277 515426984 877167702 995876182 38844979 902464469 151364594 841780337 991073887 592970093 926045944 989729323 687988023 247822207 98824830 566125822 585165457 761330904 163769090 960796073 688534928 359859765 195957995 885647994 683406807 764116955 417074904 589760538 830619816 907095826 559014304 250832323 219054502 476912096 920721173 960543625 982353486 143200457 862254110 942866882 21190596 746394036 481894295 858040709 633573519 390275103 211958450 750978759 638516505 163229392 860377902 495854210 942999703 560327459 259646582 311808379 704431513 225858850 956286779 625664180 47290536 852107700 780870754 786320493 21190596 24089615 950673785 620243558 567343883 806792339 208625324 15903366 660095934 793291205 56154381 266583970 195957995 66490779 266213579 726950461 696443558 991615550 721418370 306597948 745200166 638790258 148087911 19911869 481894295 4519262 967417280 841780337 181668423 399037712 688534928 400178823 153196022 852755974 429277230 78775552 289736829 1736950 269911067 786320493 878442641 942866882 591292508 835212499 705304879 601740259 778074990 727827821 922706719 237172271 816971086 172894131 837690635 891279504 600441802 550322314 547547687 193515742 950497221 550322314 877088774 137529801 840075867 556619020 152523810 682170984 247841801 77685914 174140940 413592826 98824830 137529801 23262398 251367294 567343883 37275245 271484655 907095826 101231409 174335822 481894295 103219970 242530683 968755777 678884863 592981604 931086800 604881661 290117216 891279504 786380583 694954883 126695727 668964848 768561257 604881661 771321738 577673184 688577702 885141769 804406873 616057762 628523361 215052415 683406807 737945381 128702236 711455867 931640418 548964093 451817798 859168292 807117750 972710252 251042004 19911869 586370291 891279504 931013644 968755777 878442641 781246194 215977916 117210451 554222239 520071928 304621545 630238886 661321016 218611070 40656291 165821462 630201811 962073361 326469359 776835194 247234349 831380531 304621545 623206361 328462418 627110568 688534928 546141085 786380583 172382592 958668995 778123726 115509283 776835194 539381059 393120342 431406787 940381563 123073176 56927881 917795074 737945381 539381059 408032939 444897967 962430008 723661847 750978759 152243323 152314280 982353486 836376015 332834875 678474526 637769046 400218902 125204206 15903366 663971090 498045048 464130920 965948435 39220584 506178629 587469038 248642173 331638088 623206361 954677909 264100442 788737791 624819674 661321016 559957428 567774282 757709512 295366548 708046990 152243323 306597948 538025980 688177128 211958450 781242822 206036522 117210451 751925989 697742034 904771946 209497607 38844979 535533605 950673785 629101079 196106606 128450928 577970627 729868696 299113502 330205547 858127225 342116147 949084393 686335042 308142020 782533040 661321016 506178629 854969794 146573202 72820570 237172271 539381059 573480571 843005594 506919968 247006479 287768226 292972503 629101079 567343883 749497174 295606018 349076114 857535330 776835194 982353486 866337119 975337465 371179314 304621545 396632533 900116034 708046990 203331888 36265302 982370833 338929165 38844979 719601437 921198791 577673184 931086800 852604705 60750487 186244437 850386354 19911869 619842427 443960759 617908997 604881661 94279561 37275245 412979540 938080232 299113502 128450928 570764323 910818482 408395896 810021050 835339516 885353274 67831588 888259120 967417280 424974082 754580366 934824360 145559297 713146141 186285312 942899938 511330454 944573659 801623766 19715614 652018277 325554372 31215478 462394151 131323888 764459345 562773407 246058339 154538466 413592826 661321016 718980624 876263470 620243558 502849508 162904272 769327548 121069546 685702028 179981178 547547687 51457589 831467447 722013570 254203892 781246194 982370833 494336936 278160655 290474734 396806189 55108095 884072178 325554372 663670886 891279504 780870754 250749017 32806834 506919968 956815883 573480571 305068796 448881532 854969794 515426984 827311105 829983432 567774282 902464469 619842427 682170984 366854683 737945381 587469038 437743643 703490607 852604705 765027062 476912096 242028021 15903366 481894295 732245352 626833449 543865019 654830523 1736950 971894015 458290565 29069209 251367294 289736829 307403622 753419354 49614749 424594759 427184372 354807942 55108095 910850066 51457589 428572243 978947655 451817798 697742034 632402794 971549242 910850066 667844649 465759767 458290565 407629453 746394036 888699423 396632533 366854683 780061015 128702236 451551269 944068218 134971740 920721173 836376015 797746066 36265302 860377902 560327459 757815664 912948600 610447918 992169078 623398671 187104147 915330573 590918818 305068796 702745028 831467447 781246194 186285312 509370562 254203892 475344103 292149520 88335614 703514531 63192647 931640418 437743643 888699423 388085842 50241607 330274784 746992914 588034909 514650194 262406489 77819776 137529801 886917295 940381563 795549341 888259120 926044257 174862116 489130642 515426984 289736829 853903669 315747769 338929165 478351140 997329398 774489082 625664180 675472009 81337657 363976852 77685914 918225489 66490779 264408147 387703244 956286779 515426984 512614298 888259120 950673785 475344103 860377902 40131409 923927991 815123402 770594967 896072909 855636134 361002681 602396426 891279504 567343883 808614164 953882020 726950461 851400664 597784477 982370833 647733367 49317804 452156279 722768643 520071928 617908997 568142039 874124920 376448548 809429735 912948600 257214051 324129364 966131311 674446970 247006479 38085353 893019475 885141769 926044257 452156279 195957995 248642173 334299650 764459345 700560235 931005739 298727845 376448548 125829791 543945175 830619816 527595027 769327548 196460706 305990981 55018341 247006479 829614460 152243323 213097363 489612980 962073361 72820570 325554372 126695727 646710523 700560235 361002681 771321738 186244437 626932919 991615550 269911067 829614460 138393155 458290565 303230482 10369081 748408317 146573202 533864165 721769014 586370291 548964093 425392410 195019158 296305836 852755974 289918211 179981178 448262245 550322314 992001870 81337657 193648030 746394036 590208882 885353274 72820570 172382592 148087911 711455867 982416551 405444604 485153920 98231977 344620844 146573202 966131311 349644605 23973553 393120342 736237188 916956968 396743027 232177196 567948101 782533040 306258744 831380531 945394518 2076768 183440003 775682536 490344724 378961655 290117216 32954995 396743027 443960759 433686203 604181881 540394532 852604705 650990283 478892468 305990981 247822207 674485068 369306500 876868627 433921335 186285312 757709512 56154381 566554997 563678994 163229392 994877696 778123726 201717402 32954995 151506993 969494113 723661847 842970782 296305836 870201182 527654256 505061211 795549341 715957434 412979540 205387898 83066601 175507355 570764323 750978759 703490607 543945175 234980621 24089615 921198791 729868696 626833449 396138845 874124920 359859765 203331888 193515742 585165457 140551765 177689820 60017144 876263470 195019158 457149478 128450928 795549341 2575238 816971086 47349911 163769090 624819674 478351140 762749463 559014304 404152565 203331888 393120342 186285312 405444604 266213579 991615550 904771946 577673184 83066601 708053570 661321016 969494113 145559297 641231120 982370833 140551765 540394532 317751260 464130920 852604705 407091770 342116147 595030753 592981604 886917295 140551765 396050095 630977998 814662325 172382592 254203892 546141085 74587532 498045048 293192373 315343704 125204206 526944836 266213579 296751278 162062292 831380531 47290536 311808379 31615284 943235508 126695727 317751260 448262245 403519778 640925332 498045048 234980621 719601437 366854683 330205547 215792516 218611070 82689280 310726569 302151126 757709512 949084393 300892929 551289217 55018341 835339516 938705675 132556595 882804101 131323888 896072909 754580366 972710252 585165457 719601437 944068218 969494113 15037608 170941326 922858580 251367294 628523361 618355033 590208882 984047482 575023903 498045048 637657473 993091440 814662325 689757867 913521589 175060805 854969794 744008188 632402794 324129364 904771946 853903669 152523810 918521256 888553258 866568903 94279561 808614164 244528344 311808379 78649514 618355033 931640418 299994808 539381059 175060805 38844979 726620654 888699423 962430008 838655651 582273012 24188768 996943901 77819776 179981178 804406873 916956968 929504680 582273012 797746066 311808379 251188854 359714925 264750083 325554372 77819776 780061015 308142020 404152565 247841801 896029805 736237188 940381563 128188331 870201182 485153920 971549242 481894295 535533605 292972503 866337119 703490607 55018341 308142020 560623000 115509283 592981604 776820092 896029805 803588261 662972501 660095934 79509313 886917295 134971740 361435434 396937914 944068218 287768226 888553258 607041944 464130920 757709512 162062292 674446970 451817798 167276070 740340897 969494113 125204206 451551269 740882715 960796073 115509283 722013570 72820570 495854210 289918211 815123402 538810384 315297566 80415088 463496366 420052652 891279504 244528344 789617647 786380583 962430008 816971086 729868696 877088774 817743547 769327548 20148474 24188768 485262404 650697444 854243215 131323888 27735709 932584021 195733178 771321738 314069534 765027062 931005739 117931902 47529701 590208882 573480571 539957336 835198840 765027062 290474734 966131311 715957434 547547687 592981604 295366548 808838846 681930584 852107700 600441802 237172271 125204206 866337119 136384659 138442062 719307635 459452716 128188331 247822207 211958450 587179274 850386354 960543625 289918211 485509833 430284321 968755777 893019475 792846009 93651148 806792339 422532994 324986193 568104980 572465104 444897967 382210484 465697134 165821462 877088774 859168292 210621083 975478549 125204206 764116955 922858580 267829614 489130642 990121035 604968568 287239117 433686203 36265302 886149363 577673184 918225489 984047482 420052652 965948435 931966477 247822207 896571061 912948600 757850417 52243955 786380583 762749463 484158080 732245352 268759041 213097363 992001870 962073361 886917295 559957428 770594967 130160246 56154381 352092606 562773407 27735709 757850417 463496366 967417280 53966525 261683638 718980624 570764323 860708299 982353486 88335614 945394518 10369081 598543708 588034909 864016134 689757867 553191189 451551269 597206610 413592826 193648030 506178629 539957336 349076114 653201202 782533040 637769046 841210236 284588557 607041944 876263470 446968233 770594967 464444922 387176309 476912096 269911067 49614749 600441802 767187616 331638088 918521256 896571061 623206361 163769090 711532060 533455280 789617647 190929591 288072509 765027062 762749463 115509283 403519778 748408317 451551269 770594967 937158597 24188768 812044550 366854683 568142039 10475035 535533605 532803593 390275103 975337465 566554997 896571061 246221518 991073887 77685914 808866527 283321520 138393155 509019925 884059813 353964006 882364001 931005739 142903358 382210484 917795074 452156279 855636134 934824360 681930584 60017144 586446680 476912096 321628921 646710523 407510599 437743643 595030753 630629857 72820570 36055646 610447918 427184372 480361743 223299794 652018277 535533605 568104980 32954995 795549341 676975489 801623766 910818482 546679009 607760956 67831588 369306500 202477791 571019028 885995802 884952974 956815883 686884353 10475035 7807006 67831588 885353274 660095934 960543625 562773407 726950461 864016134 699230813 215792516 509370562 152523810 174335822 525347105 314069534 428572243 5299425 195957995 872434540 768561257 835212499 797746066 315343704 681765297 749497174 425392410 36055646 940188502 662972501 862177563 592970093 321628921 290474734 259646582 960543625 533864165 851829959 638516505 721769014 913521589 38085353 148087911 186244437 700560235 907095826 550336314 408032939 876263470 330205547 503666498 463496366 257214051 662972501 242186770 735891721 303230482 160287690 489130642 852107700 32075030 981996224 547547687 162904272 512614298 781242822 417074904 396138845 604968568 925555858 72820570 232177196 387176309 907095826 736237188 750750593 926045944 464444922 640849273 163229392 857535330 509144872 776820092 317751260 151364594 937158597 295366548 485262404 503666498 590918818 215977916 559957428 230662076 387703244 795549341 114409323 850386354 624819674 315747769 885647994 451817798 187104147 332834875 786320493 344620844 971549242 93478833 767187616 462762217 324129364 837690635 56927881 950497221 733642252 264750083 4519262 533455280 396138845 886917295 806792339 653201202 276676140 247841801 727578179 53226850 972710252 396050095 800460688 456956861 870201182 886917295 353964006 878442641 991615550 125204206 56927881 886149363 938080232 675472009 98231977 32806834 464444922 893019475 885000402 640925332 446968233 195957995 854243215 289918211 556619020 195957995 965948435 306607837 433921335 271484655 842970782 931086800 587179274 591292508 396632533 50241607 616057762 600441802 572465104 788737791 686335042 303230482 155241439 685702028 494336936 942999703 452156279 722768643 860708299 271484655 248642173 215981255 77685914 807117750 831241130 28363157 152314280 736624310 443960759 760231333 424974082 645094664 628820972 247841801 983113723 201717402 338631458 123073176 727827821 215774690 761330904 533455280 106790696 215981255 509664709 751925989 604181881 638516505 4519262 630201811 636434256 148087911 167276070 492009082 934824360 946612927 831241130 1926282 272303478 41538784 882804101 42657625 4519262 626833449 838803091 846351340 630977998 944068218 458363994 80485362 63192647 261683638 607760956 38338132 934824360 136384659 625664180 966683628 582273012 429277230 687055288 703514531 264297813 827311105 396937914 444897967 315297566 363976852 496698204 824770361 962073361 931013644 160287690 864016134 215289803 247006479 193515742 546679009 902464469 74587532 674446970 42657625 548964093 570764323 836376015 710224239 571019028 430101007 509664709 135975430 249820698 420052652 112390393 696443558 53966525 776352608 572465104 269911067 557710104 967417280 215052415 748408317 543945175 242028021 143200457 292696118 786320493 284588557 686335042 887794841 885141769 705304879 47529701 527654256 306597948 567774282 853170454 575895835 548964093 430284321 835212499 471393875 459617527 918225489 266583970 13112382 446968233 830619816 342116147 98824830 925555858 513440742 697742034 538810384 495854210 533455280 790270533 209789164 79523589 922706719 526944836 328462418 56927881 190929591 145885851 618542887 456137963 429277230 282751746 367026304 114409323 163769090 620243558 430101007 117210451 511330454 792822959 598426014 970911538 128188331 485262404 900116034 167276070 722768643 996943901 540394532 566554997 481894295 526944836 156817178 248642173 786380583 98231977 259646582 907095826 430284321 870201182 562773407 382904427 547547687 509370562 854969794 134801439 688577702 186244437 886917295 397928982 971894015 688177128 966131311 960543625 675472009 708046990 527654256 713146141 268759041 808614164 577970627 942899938 947413305 607965234 783513992 983113723 862177563 172382592 485153920 885141769 80415088 459452716 551289217 885353274 29069209 632378665 302151126 283321520 331638088 589760538 581063820 251367294 448262245 554242697 94279561 47529701 408395896 792846009 31615284 264297813 884072178 625664180 271484655 511277493 920628541 851829959 623398671 885141769 966131311 616057762 290117216 20148474 554222239 683621666 438183310 991615550 685702028 628820972 553191189 248642173 396743027 688177128 814662325 226492467 956286779 262406489 503666498 573480571 563678994 938080232 10475035 496698204 994877696 119279869 746992914 376448548 344620844 984047482 361435434 601740259 401452903 758889515 679463383 496698204 721418370 47349911 824770361 152314280 837690635 48746678 586446680 509664709 56154381 408032939 955501918 969494113 38338132 787269565 966683628 744008188 619842427 195733178 38338132 433921335 484158080 572465104 938140278 225771141 736624310 812044550 257214051 800460688 457149478 996943901 38338132 426814174 203331888 912948600 809429735 630629857 827311105 174335822 99294732 744008188 922706719 306597948 956815883 572465104 292972503 172382592 77819776 559957428 840130613 891279504 618542887 463496366 650697444 851759377 407091770 884952974 850386354 713146141 438183310 324986193 855636134 616796881 878442641 140551765 840075867 56927881 877167702 452156279 456956861 272303478 630201811 328764419 438183310 943235508 80485362 146573202 215792516 207442482 465697134 324986193 131323888 559957428 743614603 53195413 480361743 506919968 242530683 324986193 809429735 764459345 931640418 858040709 618542887 427184372 788737791 983113723 451817798 170938835 940188502 495854210 73848009 548964093 136384659 607041944 950673785 588034909 888553258 854243215 429277230 630977998 945394518 960543625 740340897 172382592 275202504 464444922 586446680 376974209 142903358 627110568 600441802 55108095 145559297 812044550 917452919 179991869 326469359 589760538 351424753 854243215 632014852 2076768 904800517 597784477 429277230 226492467 401452903 602832600 451817798 726620654 929504680 451551269 430284321 630977998 854969794 60017144 540976336 299462930 827311105 390793037 695599688 311808379 513440742 485262404 532803593 923715439 760370490 573480571 292972503 858040709 156817178 554242697 284588557 237172271 480361743 446968233 921198791 699230813 929504680 433921335 738612855 776835194 966131311 560327459 538810384 485509833 293192373 296751278 721418370 727827821 274113481 520071928 738855203 337153847 215977916 160287690 854902633 918521256 563678994 441621000 13112382 488788762 103733806 195019158 518384931 632378665 177689820 607041944 562773407 218611070 922706719 328764419 540976336 831241130 703490607 225858850 247234349 787269565 577970627 889608806 322974842 713146141 685702028 624819674 920721173 887548285 748408317 592970093 854902633 931005739 760370490 735891721 80485362 938456692 412979540 581831913 911302173 992169078 572588387 195733178 465759767 496698204 73848009 995876182 771321738 944573659 637769046 550322314 638516505 353964006 525347105 36265302 539381059 78775552 663971090 249820698 465759767 630238886 195957995 369306500 396050095 838803091 663971090 459452716 351424753 668964848 407510599 159828635 618542887 739696834 715779797 831380531 804406873 170938835 128702236 548964093 484158080 174862116 270237875 943235508 181668423 955730659 275349681 400178823 838331644 207442482 721418370 571019028 532803593 938080232 93651148 975478549 712346140 889608806 553368896 918521256 539957336 215289803 886149363 970320952 351424753 52243955 311613451 328764419 289918211 400178823 926044257 632378665 488295044 531333917 67831588 916956968 432089082 195733178 860477160 775682536 736237188 462394151 915330573 40131409 683406807 989729323 431406787 264100442 432089082 527595027 991073887 687055288 771321738 250885472 712346140 448881532 396806189 546141085 956286779 338312978 748408317 29473993 532803593 506919968 806664207 719601437 860377902 476912096 719307635 15903366 270237875 635302209 652018277 831241130 950673785 371179314 425392410 433921335 251188854 403519778 910850066 579757115 259646582 789617647 202477791 841780337 407510599 604881661 553191189 800460688 719307635 283321520 53525809 38085353 949084393 488788762 257214051 907095826 776352608 938080232 940188502 727578179 193648030 205387898 527654256 352092606 946916156 87392830 931086800 49614749 610834602 247822207 814662325 582273012 328462418 737945381 228290502 376448548 269911067 970320952 917795074 613596687 56154381 382210484 760231333 635302209 633573519 66490779 321628921 152314280 29069209 458290565 946612927 382210484 492009082 140551765 396806189 729868696 13112382 441621000 41538784 179981178 862177563 761330904 675472009 334211676 663670886 136412292 32806834 179991869 966683628 577673184 308142020 400218902 41538784 629101079 42657625 55108095 125204206 140725908 306607837 488788762 430101007 882804101 885549757 732245352 949084393 938705675 546679009 241184545 662421393 932715562 994877696 810021050 860377902 932715562 196106606 485262404 109369069 388085842 548748527 851759377 920628541 426814174 687988023 882804101 768561257 764459345 502849508 793291205 653201202 683621666 228290502 607760956 396050095 143200457 292696118 223299794 190979155 852755974 597206610 478892468 306258744 456137963 444897967 686335042 663971090 51457589 465697134 573480571 311613451 352092606 735696627 851829959 577970627 266583970 857535330 140551765 776820092 397928982 602396426 2379379 490344724 103219970 679463383 369306500 286037808 88335614 860377902 630238886 234980621 968670974 864016134 485509833 941586175 689757867 885549757 636434256 210621083 570796148 971894015 997329398 595030753 732559957 295606018 187104147 992001870 560327459 152618584 872434540 49317804 984047482 295366548 117210451 480361743 376448548 503666498 15903366 904771946 697742034 926045944 735891721 115090276 543865019 626833449 264297813 128702236 496698204 927806038 272303478 795549341 737945381 266213579 708053570 946916156 683621666 803588261 475344103 946916156 449022331 878442641 246221518 688577702 247822207 893019475 452156279 695599688 708053570 590208882 607760956 776820092 713146141 53525809 850484222 854902633 860708299 292972503 250885472 703490607 735891721 56154381 29473993 396050095 613596687 242530683 627110568 98287438 317751260 722768643 744008188 633587956 485063015 893019475 300892929 428572243 369306500 893019475 2575238 840075867 968670974 230662076 588034909 401452903 531333917 674485068 607041944 877088774 246221518 751925989 702745028 387176309 735891721 142903358 589760538 743614603 458363994 886149363 939725993 278160655 250832323 242028021 836376015 433686203 793291205 375066210 334211676 712346140 359714925 691982506 515426984 586370291 371179314 617908997 498045048 967417280 630629857 831467447 396937914 797746066 437743643 215774690 808838846 559014304 942866882 328462418 290474734 626932919 942866882 884059813 962073361 133739154 327773233 117931902 352092606 922706719 137529801 6720560 711455867 275349681 134801439 311613451 264100442 922858580 550322314 915330573 175060805 955501918 246221518 780870754 311808379 851400664 494336936 610447918 79509313 703490607 152314280 271484655 330274784 685702028 764459345 760231333 628820972 653201202 451551269 975337465 775682536 275202504 990121035 162062292 592981604 32075030 424974082 562773407 262406489 201717402 560623000 42657625 944573659 776820092 708053570 597206610 727245017 407091770 213097363 681930584 405444604 257214051 722013570 709613471 7807006 917452919 337153847 540394532 624819674 40448245 713146141 696443558 732559957 32075030 175507355 407629453 962073361 740882715 485063015 215977916 699230813 50241607 478892468 956815883 970911538 305990981 87392830 407091770 215289803 492009082 390793037 358401766 625664180 361435434 602832600 846351340 172382592 210621083 218611070 617908997 975478549 954227928 403519778 814295984 458156391 760231333 713146141 638516505 602832600 760231333 215052415 550336314 577673184 700560235 885141769 736237188 989729323 292149520 252962990 946612927 757709512 206036522 121069546 242028021 627110568 799588075 437743643 292972503 250749017 242028021 315297566 685702028 767187616 572588387 817743547 303230482 317751260 417074904 220576148 748408317 33511708 630201811 527595027 770864525 646710523 632402794 767187616 618542887 727827821 396743027 800460688 994877696 641231120 215977916 829983432 211958450 566125822 757850417 408032939 311613451 739696834 969294148 20148474 255644658 276676140 74587532 688177128 640849273 860708299 219054502 762749463 567774282 446968233 302151126 79523589 255644658 963141978 678884863 134971740 545538425 53966525 259646582 396138845 274113481 288072509 539957336 20148474 39220584 170938835 660765062 907721720 567343883 592981604 586370291 588034909 211958450 981996224 683406807 186244437 181668423 121069546 840130613 780061015 247841801 443960759 874124920 463496366 876263470 981996224 484158080 112390393 736624310 109054120 696443558 516175014 242186770 795472528 975337465 29473993 247234349 996943901 361435434 630238886 846351340 396138845 918225489 408032939 770864525 38304068 284588557 167276070 354807942 1736950 746092812 996943901 128702236 668964848 133739154 815123402 773781000 155241439 807117750 2575238 304621545 137529801 567948101 170938835 936312210 160287690 465697134 264297813 420052652 311808379 396743027 808838846 619842427 220576148 920721173 299994808 816971086 788118407 484158080 251367294 78649514 250749017 133739154 299462930 765027062 511277493 401452903 590918818 650990283 896029805 407629453 781242822 610447918 806744033 568104980 750978759 628523361 758889515 877088774 413592826 719307635 726950461 827311105 543865019 295606018 792822959 6720560 195733178 886149363 592981604 592639233 628820972 778074990 997329398 255644658 121069546 886149363 632378665 877088774 965948435 103733806 7807006 780870754 641231120 39220584 117210451 982416551 215052415 462762217 781242822 190979155 256866745 13112382 604881661 696443558 315297566 944068218 262406489 98824830 241184545 994877696 207442482 215977916 338312978 652018277 775682536 926045944 27735709 308142020 938705675 215774690 968755777 64420967 627110568 801623766 288072509 80415088 359859765 884072178 427184372 562773407 757709512 498840912 426814174 351424753 393120342 623398671 195733178 803588261 604881661 862254110 448881532 923927991 172382592 840075867 829614460 827311105 607041944 966683628 182214511 590208882 887548285 135975430 597784477 700560235 433921335 583924389 944573659 42657625 566125822 498840912 851759377 332834875 515426984 882364001 786320493 920721173 232177196 126695727 146573202 387176309 60017144 938140278 403519778 864016134 983373150 82689280 112390393 559014304 507016471 931966477 624819674 878442641 613596687 151506993 733642252 876263470 248642173 78649514 167276070 568104980 143200457 525347105 767187616 587469038 902464469 570764323 749497174 219054502 400218902 492009082 315297566 56154381 771803404 931966477 764116955 502849508 719601437 947413305 800460688 99294732 527595027 31615284 646710523 632014852 983113723 586370291 907095826 911302173 697742034 331638088 812414090 490344724 163229392 151506993 964902255 633587956 937158597 778074990 761330904 354807942 408032939 954677909 984047482 674485068 979750308 478351140 397928982 396806189 711455867 575023903 560327459 788737791 420636144 835339516 780061015 967417280 55018341 471393875 607041944 286037808 324986193 444897967 451521521 893019475 35128915 938140278 527595027 953882020 159828635 234980621 522663253 840130613 943793512 266213579 997329398 464130920 516175014 695599688 128450928 843005594 872434540 527654256 962430008 913521589 2379379 862254110 287768226 503666498 485262404 703490607 618355033 814295984 186244437 551289217 912948600 186285312 780061015 884059813 793291205 539957336 767839638 597206610 285947848 99294732 299994808 23973553 938456692 709613471 767839638 407629453 885647994 604968568 560623000 585165457 829983432 926044257 328764419 776352608 223299794 412979540 969494113 135975430 984047482 750563611 962073361 886149363 276676140 705548145 656191811 215774690 338929165 638516505 726950461 704431513 256866745 242186770 750978759 457149478 729868696 247234349 516175014 780870754 727827821 703514531 872434540 888553258 737945381 597206610 514768035 247006479 786320493 969294148 55108095 408395896 735891721 156817178 715957434 746992914 262406489 788737791 566125822 592639233 152314280 367026304 290474734 152523810 324129364 991073887 441621000 490344724 907095826 661321016 516175014 663670886 462394151 950497221 557710104 540976336 79523589 703490607 509019925 420052652 808614164 289918211 458363994 770993588 522663253 757815664 213097363 982416551 117210451 929504680 330205547 947413305 678474526 619842427 262406489 358401766 560623000 838655651 527595027 432089082 592981604 966683628 400218902 979740237 854243215 80485362 983373150 603931167 220576148 888699423 694954883 129724737 835212499 13112382 566554997 888553258 566125822 600441802 896072909 926045944 975478549 264408147 306597948 590208882 925555858 745200166 463496366 271484655 63192647 994877696 554242697 575895835 509370562 595030753 887548285 640925332 708046990 412979540 776835194 862177563 251367294 748408317 749497174 275202504 264100442 860377902 146573202 247234349 858798711 780870754 282751746 201717402 300892929 82689280 808838846 331638088 800460688 128702236 48746678 953882020 174335822 80415088 195733178 214650974 616796881 93478833 359714925 831467447 136412292 190979155 514768035 40448245 754133002 488295044 250885472 685702028 252962990 982353486 737945381 750563611 560327459 660765062 413592826 617908997 853170454 705548145 689757867 590208882 874297853 950497221 485262404 946916156 506178629 776820092 623206361 123073176 10369081 837690635 995876182 679463383 272303478 900116034 726950461 674485068 708046990 195957995 992169078 929504680 776835194 917452919 338929165 876868627 683621666 722768643 226492467 237389399 413592826 181668423 485509833 704431513 509664709 994877696 162904272 653201202 727578179 938140278 509144872 778074990 601740259 361435434 560623000 661321016 266583970 765027062 396632533 77819776 109054120 50241607 775682536 117931902 2575238 152618584 193515742 721418370 727245017 838331644 296751278 736624310 732559957 917795074 48746678 396743027 916956968 926045944 708053570 942999703 475344103 457149478 968755777 966683628 884952974 123073176 646710523 131323888 925555858 806664207 207844781 931086800 215052415 884072178 394791153 709613471 795472528 780870754 874297853 39220584 394791153 896571061 972710252 115509283 943235508 527654256 282751746 481894295 689757867 247234349 396138845 735696627 458363994 878442641 817743547 661321016 808614164 840075867 960543625 944068218 193515742 538025980 272303478 10475035 835212499 922858580 581831913 610447918 727245017 202477791 918521256 53525809 702745028 485153920 722013570 969294148 451551269 514650194 424974082 929504680 620243558 511330454 782533040 145559297 205387898 746092812 49948206 723661847 970320952 428572243 984050047 562773407 393120342 289918211 310726569 289736829 220576148 760370490 424974082 269911067 727245017 746092812 51457589 138393155 159828635 920721173 307403622 190979155 996943901 424594759 749497174 703490607 934824360 244528344 638790258 804406873 223299794 344620844 718980624 860477160 931005739 128702236 288873549 247234349 838803091 326469359 732559957 361435434 548964093 32806834 775682536 799588075 713146141 769327548 78775552 885995802 174862116 705548145 780061015 982353486 776835194 675472009 38085353 193648030 121069546 358401766 15903366 745200166 24089615 488295044 739696834 778074990 682170984 656623172 560327459 809429735 836376015 269911067 207442482 896571061 130160246 721418370 53966525 705548145 750978759 332834875 159828635 39220584 137529801 700560235 215289803 917795074 136412292 215792516 884952974 804406873 1736950 949084393 359859765 448262245 478892468 830619816 446968233 401452903 2379379 237389399 702745028 367026304 81337657 567774282 462394151 67700412 520071928 219054502 708053570 757850417 590918818 760231333 964902255 278160655 371179314 206036522 187104147 511330454 475344103 910850066 566554997 23973553 520071928 740340897 376974209 921198791 758889515 862254110 327773233 306607837 7807006 638516505 858040709 274113481 789617647 610447918 560327459 632402794 678474526 47290536 514768035 950497221 49614749 585165457 943235508 387176309 15903366 133739154 114409323 876263470 885647994 540394532 516175014 652018277 119279869 295606018 764459345 886917295 870201182 101231409 35128915 247841801 548964093 586446680 162904272 745200166 443960759 1926282 225858850 433686203 664041213 39220584 687055288 991073887 800460688 40448245 556619020 554222239 40131409 133739154 531135820 860377902 152314280 801623766 48746678 763431295 708094860 843005594 992169078 196106606 79509313 877088774 213097363 559014304 729868696 230662076 262406489 140129038 543865019 932584021 155241439 489612980 960796073 490344724 942899938 971894015 758889515 366854683 885353274 53226850 520071928 308142020 682170984 824770361 251367294 135975430 463496366 592639233 250749017 567774282 159828635 140129038 4519262 575023903 225771141 525347105 167276070 156817178 307060809 174140940 934824360 540394532 579757115 42657625 531333917 888699423 831380531 266213579 195019158 548748527 313272965 269911067 708046990 663670886 130160246 424594759 916956968 98824830 232177196 40656291 413592826 626833449 287768226 824770361 485063015 53525809 566125822 696443558 140725908 142903358 616796881 802009078 870201182 877088774 778123726 944068218 459452716 945394518 708046990 705304879 56927881 656623172 186244437 723661847 207442482 603931167 349076114 860477160 376448548 945394518 624819674 448262245 750978759 630201811 995876182 420052652 1736950 152523810 282751746 247221668 939725993 846351340 299994808 674485068 330274784 53226850 997329398 760370490 628820972 334299650 53966525 428572243 866337119 444897967 852107700 361435434 388085842 153196022 288072509 738612855 394791153 177689820 458156391 773781000 119279869 109369069 732245352 601630030 792846009 425392410 616796881 540394532 396632533 527654256 145885851 637657473 56927881 481894295 758889515 953882020 360743135 163769090 885141769 638516505 349644605 550336314 360743135 884059813 918521256 538025980 812044550 292149520 276676140 735696627 713146141 60750487 175507355 931013644 241184545 846351340 842970782 661321016 160287690 303230482 979750308 80485362 793291205 78649514 207442482 387176309 55018341 797746066 938456692 740340897 186244437 864016134 451551269 735696627 872434540 946612927 721769014 125829791 507016471 289918211 106790696 396743027 711532060 683406807 349076114 953882020 53966525 950497221 311808379 575023903 630977998 308142020 786320493 444897967 134801439 735696627 787269565 305068796 597784477 942999703 119279869 926045944 172894131 257214051 942866882 709613471 955730659 471393875 378961655 854902633 196460706 247221668 327773233 619842427 218611070 290117216 112390393 425392410 106790696 351424753 36265302 203331888 676975489 498840912 694954883 862177563 55108095 950673785 1736950 929504680 5299425 786380583 939725993 568104980 852755974 328462418 975478549 630201811 388085842 696443558 664041213 545538425 607760956 117931902 630977998 771321738 476912096 540976336 250885472 503666498 114409323 514650194 726620654 982353486 179991869 738855203 458290565 681765297 451521521 295366548 543945175 242530683 196460706 351424753 787269565 540976336 264100442 303230482 896072909 955501918 884952974 254203892 247822207 915330573 509664709 13112382 495854210 152618584 485262404 195957995 686335042 502849508 167276070 425392410 607760956 289736829 4519262 448262245 49948206 64420967 165821462 736237188 984050047 10475035 789617647 838331644 829614460 633587956 87392830 82689280 902464469 430101007 546141085 465697134 925555858 954677909 37275245 971894015 179991869 332834875 223299794 590208882 37275245 975337465 761330904 234980621 708094860 740882715 285947848 748408317 485063015 56154381 800460688 595030753 983113723 854902633 287239117 955501918 162904272 132556595 965948435 994877696 708053570 597206610 860708299 575023903 311808379 598543708 762749463 306607837 817743547 210621083 338631458 407510599 287768226 587469038 195019158 702364434 604881661 451817798 307060809 303230482 390793037 610447918 207844781 595030753 733642252 982416551 858040709 801623766 744008188 303230482 352092606 617908997 918521256 601630030 885000402 196106606 851829959 660095934 686884353 432089082 283321520 630775839 51457589 103669472 307403622 770993588 778123726 776352608 788118407 422532994 715957434 60750487 170941326 533864165 932715562 736237188 112090095 944068218 413592826 140129038 589760538 816971086 965948435 638516505 516175014 480361743 252962990 944068218 165821462 703490607 969494113 438183310 990121035 328462418 934824360 721418370 874297853 72820570 393120342 851400664 835212499 344620844 509019925 271484655 522663253 884059813 78775552 489130642 994587826 125204206 516175014 955501918 636434256 858127225 711532060 208625324 29473993 203331888 52243955 688577702 708046990 740882715 388085842 746092812 509664709 457149478 186244437 275202504 1736950 675472009 397928982 140129038 179981178 387176309 215052415 396806189 48746678 893019475 795472528 932584021 397928982 598543708 267829614 247841801 140725908 840075867 152314280 284588557 159828635 929504680 934824360 931013644 912948600 862254110 174335822 982370833 361002681 257214051 860708299 637939784 983373150 771321738 405444604 886149363 842970782 438183310 134801439 770993588 315343704 765027062 620243558 311613451 369306500 50241607 636434256 773781000 938705675 656623172 992169078 746092812 451521521 6720560 404152565 814295984 459452716 433686203 330274784 900796599 852604705 117931902 965948435 38338132 283321520 538810384 733642252 208625324 940381563 926044257 668964848 581063820 160287690 688534928 632378665 539957336 195019158 215792516 739696834 827311105 971549242 896571061 882804101 745200166 812414090 920628541 812414090 512614298 369306500 271484655 573449906 480361743 971549242 687988023 81337657 264750083 53195413 242028021 713146141 480361743 793291205 492009082 283321520 32806834 975478549 949084393 248642173 432089082 427184372 738612855 858798711 201717402 638790258 513440742 726620654 430101007 446968233 626833449 196460706 774489082 520071928 56154381 780061015 660765062 764459345 311613451 451551269 770594967 140725908 257214051 167276070 540394532 570796148 712346140 795472528 308142020 647733367 722768643 668964848 366854683 352092606 196106606 860708299 626833449 836376015 619842427 248642173 542382913 678474526 538025980 713146141 945394518 130160246 570764323 815123402 604968568 896029805 532803593 215289803 696443558 750750593 926044257 841780337 915330573 2575238 254203892 160287690 361435434 205387898 152618584 522663253 855636134 749497174 979740237 870201182 663971090 831241130 518384931 282751746 955501918 359714925 264750083 735891721 322974842 872434540 289736829 403519778 770864525 426814174 60750487 566125822 585165457 55108095 563678994 81337657 738612855 207442482 278160655 694954883 80485362 24089615 39220584 371179314 32075030 531333917 858127225 938456692 407629453 934824360 575895835 128450928 151364594 535533605 489612980 112390393 140129038 382210484 553191189 628820972 247234349 581831913 840075867 975478549 553191189 232177196 103669472 232177196 975337465 287768226 465697134 207442482 228290502 632378665 770864525 7807006 926044257 852107700 904800517 376448548 457149478 446968233 244528344 55108095 545538425 32954995 876868627 566125822 196106606 56927881 425392410 944573659 640925332 49614749 780870754 53966525 29069209 978947655 417074904 485063015 945394518 128450928 938140278 458290565 954227928 494336936 581063820 399037712 808866527 806744033 344876805 932715562 931013644 727245017 736624310 464444922 305990981 464444922 745200166 179981178 290117216 719601437 583924389 602832600 430088921 829983432 40656291 916956968 10475035 250832323 838331644 496698204 760370490 733642252 920628541 997329398 502849508 1736950 101231409 264100442 650697444 1736950 128702236 522332929 940188502 264100442 600441802 940381563 308142020 627110568 874124920 902464469 195957995 307060809 936312210 250832323 650697444 885141769 298727845 112090095 424594759 485262404 911302173 607965234 722768643 560327459 831467447 20148474 858127225 628820972 757850417 382904427 498840912 735891721 602396426 990121035 305990981 298050322 780870754 749497174 710224239 754133002 153196022 812044550 876868627 52243955 660765062 754133002 465697134 607041944 31615284 179981178 375066210 283321520 234980621 114409323 597206610 548964093 47290536 159828635 799588075 2575238 296305836 885000402 913521589 376448548 525347105 315343704 921198791 114409323 653201202 449022331 163769090 443960759 736237188 463496366 351424753 812044550 257214051 571019028 918225489 314069534 946612927 174335822 270237875 128450928 721418370 939725993 567343883 170941326 837690635 630977998 512614298 338312978 545538425 327773233 598543708 983373150 619842427 546141085 637657473 353964006 900796599 968755777 650697444 699733109 448262245 641231120 354807942 262406489 259646582 155241439 663670886 306597948 562773407 485509833 979740237 835212499 540976336 361002681 430101007 934824360 814295984 732245352 271484655 266583970 354807942 252962990 156817178 170938835 195957995 708046990 481894295 276676140 768561257 754133002 681765297 140551765 32075030 433921335 83066601 193515742 633573519 729868696 771321738 983373150 786380583 835212499 751925989 400218902 915330573 968755777 802009078 616796881 918225489 990121035 315747769 456137963 502849508 727827821 512614298 404152565 129724737 49614749 688534928 165821462 598426014 806792339 917795074 918521256 242028021 984047482 278160655 196460706 975337465 195019158 918225489 923715439 140129038 311808379 242028021 546141085 251042004 676975489 858127225 247822207 181668423 146573202 186285312 916956968 846351340 782533040 64420967 970911538 237389399 249820698 269911067 841780337 78649514 10369081 80415088 163229392 255644658 686335042 887794841 781242822 703514531 852604705 617908997 196460706 877167702 249670598 38844979 638790258 770993588 896072909 332834875 420636144 855636134 456137963 610447918 249820698 982353486 739696834 513440742 762749463 208625324 509019925 202477791 56927881 736237188 136412292 991073887 838803091 32806834 940381563 432089082 960543625 257214051 836376015 303230482 478892468 661321016 119279869 886917295 441621000 251042004 109054120 824770361 488788762 751925989 852107700 361435434 426814174 712346140 250885472 545538425 931005739 840075867 413592826 354807942 931005739 679463383 225858850 709613471 55018341 306607837 831241130 633573519 112090095 304621545 250885472 135975430 636434256 661321016 195733178 778074990 963141978 80415088 571019028 284588557 638790258 946916156 972710252 142903358 369306500 575023903 207844781 525347105 838803091 31215478 592970093 471393875 272303478 604968568 509019925 788737791 328764419 457149478 601740259 117931902 764116955 242530683 860708299 186285312 246221518 855636134 87392830 532803593 994587826 331638088 190323279 637939784 170941326 721418370 138442062 931086800 592970093 955501918 656191811 778074990 40131409 809429735 889608806 396806189 885353274 587469038 20148474 542382913 174335822 485153920 246221518 540394532 35128915 884059813 103219970 547547687 815123402 485153920 896072909 490344724 249820698 660095934 48746678 274113481 427184372 234980621 196460706 21190596 159828635 80415088 699733109 407629453 376448548 581063820 2379379 401452903 923715439 131323888 396937914 203331888 163229392 783513992 283321520 433686203 1736950 663670886 250749017 53525809 754133002 917452919 852107700 938140278 299994808 601630030 778123726 305068796 527595027 950497221 623206361 550336314 991615550 814662325 397928982 915330573 835198840 80485362 427184372 321628921 205387898 806664207 682170984 396806189 916956968 992001870 55108095 74587532 4519262 926045944 965948435 132556595 55108095 567774282 727827821 740882715 687055288 109369069 60017144 954227928 5299425 931966477 983113723 38338132 387703244 575895835 63192647 152866011 588034909 131323888 282751746 583924389 732245352 315747769 984047482 451817798 140551765 41538784 854243215 623398671 299462930 893019475 630238886 954227928 288873549 922706719 836376015 274113481 36055646 275349681 300892929 135975430 396632533 915330573 376448548 511330454 507016471 876868627 7807006 771321738 15903366 840075867 866568903 424594759 393120342 904771946 77685914 931966477 767839638 652018277 509664709 13112382 708094860 109369069 829614460 208625324 994587826 719307635 81553943 570764323 288072509 740882715 98231977 804406873 656191811 264750083 81337657 745200166 352092606 740340897 618355033 539381059 668964848 681765297 559957428 628523361 940381563 710224239 298050322 433686203 896029805 499057158 165821462 585165457 597784477 321628921 38304068 295366548 324129364 547547687 306597948 562773407 307060809 641635851 476912096 876263470 488788762 864016134 451521521 610447918 727827821 315747769 476912096 722768643 266583970 637769046 449022331 570764323 975478549 740340897 767839638 696443558 264297813 740340897 746394036 950497221 68748842 145559297 531333917 533455280 136412292 703490607 726620654 992001870 225771141 921198791 399037712 947413305 390793037 214650974 237172271 778074990 940381563 471393875 874297853 195957995 937158597 591292508 556619020 154538466 781242822 32806834 130160246 295366548 968670974 860477160 885647994 748408317 98231977 765027062 250832323 632402794 995876182 244528344 451521521 268759041 515426984 735696627 174862116 162062292 638790258 174140940 835212499 264408147 232177196 567774282 310726569 927806038 566554997 929504680 829614460 591292508 249820698 757815664 808614164 691982506 792846009 750563611 290474734 190929591 264297813 768561257 459452716 1926282 937158597 586446680 250749017 814662325 81337657 941586175 15903366 29069209 464444922 601630030 88335614 163769090 781246194 738855203 285947848 268759041 667313812 237389399 359714925 803588261 451521521 780870754 241184545 876263470 969494113 228290502 715957434 956286779 109054120 553191189 852755974 396806189 349076114 650990283 220576148 94279561 694954883 261683638 866568903 72820570 163229392 1926282 494336936 31215478 758889515 101231409 106790696 261683638 699230813 42657625 81337657 715779797 676975489 135975430 590918818 885995802 287239117 745200166 325554372 583924389 196460706 140129038 812414090 830619816 494336936 886149363 629101079 931013644 37275245 292696118 711532060 681765297 776835194 585165457 256866745 946916156 686335042 153196022 505061211 746992914 403519778 888699423 522663253 944068218 4519262 136384659 63192647 932584021 494336936 396743027 7807006 153196022 829983432 202477791 582273012 559014304 81553943 99294732 560327459 214244685 854243215 949084393 446968233 448262245 195019158 645094664 78775552 539957336 788118407 954677909 288873549 259646582 686335042 31215478 48746678 770993588 283321520 851400664 808614164 148087911 338631458 773781000 735891721 331638088 193515742 638516505 155241439 465759767 298050322 994877696 842970782 632402794 979750308 351424753 349644605 595030753 527595027 264750083 757709512 47290536 559957428 949084393 2076768 886917295 119279869 830619816 225771141 512614298 514768035 331638088 262406489 82689280 452156279 540394532 888259120 736624310 960796073 920721173 507016471 618542887 186244437 533864165 35128915 920628541 359714925 156817178 220576148 331638088 689757867 331638088 571019028 975337465 938456692 857535330 916956968 302151126 699230813 546679009 515426984 148087911 10369081 816971086 962073361 511330454 979750308 148087911 616796881 757850417 397928982 850386354 287768226 254203892 179981178 451817798 515426984 82689280 592981604 15037608 163229392 13112382 548964093 306607837 317751260 683406807 970911538 551289217 850484222 652018277 117210451 650697444 138442062 412979540 638790258 136384659 713146141 563678994 566125822 215774690 568142039 503666498 729868696 407510599 573449906 326469359 940381563 838331644 522332929 618542887 437743643 827311105 209497607 15037608 359859765 617908997 764459345 923927991 507016471 661321016 764459345 931966477 213097363 736624310 983373150 954227928 452156279 854902633 955730659 478351140 195019158 650697444 19911869 862254110 624819674 712346140 852107700 877088774 160287690 967417280 853903669 163769090 225771141 838655651 885647994 247221668 635302209 949084393 223299794 851400664 220576148 156817178 991615550 190929591 923715439 956815883 790270533 425392410 531135820 210621083 806744033 257214051 689757867 931966477 975478549 502849508 754133002 183440003 81553943 799588075 674446970 786380583 140725908 540976336 630977998 196106606 505061211 568104980 573449906 326469359 79523589 638516505 943793512 975337465 446968233 465697134 806744033 719307635 632378665 42657625 264100442 42657625 446968233 40448245 546141085 315747769 117210451 860377902 509144872 770864525 337153847 681930584 77685914 751925989 851829959 53525809 249670598 765027062 306597948 334299650 511277493 955501918 790270533 305990981 835212499 407510599 808838846 946916156 77685914 428572243 390275103 83066601 282751746 602396426 885647994 125204206 55108095 653201202 300892929 886149363 37275245 931640418 590918818 917795074 112390393 367026304 40131409 954677909 55018341 125829791 282751746 900116034 300892929 292696118 195733178 885995802 78775552 806664207 175507355 214650974 970911538 577970627 119279869 807117750 330274784 768561257 2379379 862177563 543865019 10475035 907095826 754580366 993091440 783513992 978947655 10475035 910818482 290117216 162904272 499057158 317751260 513440742 800460688 602396426 711532060 32075030 858040709 215977916 324986193 882364001 241184545 326469359 762749463 780870754 117210451 417074904 560623000 38338132 282751746 254203892 400178823 753419354 155241439 816971086 559957428 778074990 155241439 47290536 667844649 484158080 509144872 876263470 485063015 738612855 190323279 601630030 424974082 290117216 172382592 757815664 851829959 663971090 650036494 738855203 515426984 753419354 378961655 860477160 616057762 946916156 812044550 545538425 969494113 656623172 858040709 661321016 726620654 950497221 573480571 548748527 572465104 650697444 786320493 982370833 252792947 746992914 19715614 982370833 225771141 854902633 885647994 602396426 831380531 750563611 727578179 274113481 140725908 715779797 209497607 950673785 190323279 363976852 33511708 893019475 535533605 843005594 885141769 152618584 708053570 42657625 630977998 876868627 29473993 80415088 478892468 539381059 361002681 498840912 360743135 94279561 780061015 429277230 943235508 94279561 488788762 93651148 296751278 375066210 874297853 40448245 737945381 455539394 806744033 703514531 943793512 956815883 889608806 162062292 683621666 94279561 249670598 128188331 795472528 407629453 780061015 774489082 891279504 278160655 485063015 770864525 842970782 268759041 81337657 13112382 459617527 548748527 79523589 518384931 327773233 201717402 494336936 656623172 719601437 991073887 870201182 590208882 172382592 230662076 272303478 882364001 970320952 610834602 117210451 771321738 638790258 503666498 119279869 429277230 24089615 268759041 984050047 885995802 668964848 835339516 842970782 932584021 458290565 893019475 667844649 548748527 507016471 514650194 568142039 663670886 708046990 292149520 808838846 211958450 249670598 675472009 674446970 151364594 853903669 284588557 535533605 540976336 737945381 420052652 359714925 539381059 98231977 303230482 787269565 795549341 708046990 661321016 570796148 700560235 298050322 298727845 719601437 760370490 571019028 133739154 252792947 660765062 478892468 696443558 155241439 769327548 338631458 247234349 155241439 630775839 413592826 331638088 624819674 559014304 522663253 757850417 650036494 518384931 390275103 703514531 485509833 152523810 795472528 567948101 850484222 532803593 27735709 922706719 136412292 10475035 831380531 533864165 396632533 485153920 635302209 98287438 285947848 489612980 792822959 503666498 646710523 745200166 531135820 6720560 597784477 885549757 687055288 886917295 420636144 538810384 702745028 344876805 556619020 539957336 699733109 183440003 829614460 480361743 674446970 949084393 733642252 152866011 943793512 251042004 128450928 567948101 311808379 770594967 250885472 133739154 443960759 430101007 729868696 50241607 942899938 783513992 960543625 886917295 79509313 831467447 646710523 539381059 112390393 949084393 968670974 887794841 81553943 778074990 866337119 827311105 851829959 401452903 581831913 583924389 396937914 264750083 209497607 128702236 682170984 271484655 683621666 956815883 831380531 93478833 49614749 830619816 726620654 757815664 918521256 1926282 485509833 503666498 628820972 797746066 557710104 550336314 310726569 806664207 943793512 296305836 744008188 653201202 51457589 704431513 571019028 72820570 152314280 885549757 134971740 138393155 934824360 940188502 627110568 598543708 165821462 660095934 573449906 462762217 47349911 328462418 831241130 77819776 808614164 804406873 872434540 942999703 635302209 270237875 47529701 876263470 758889515 835339516 597784477 478351140 170941326 128188331 252792947 154538466 509144872 135975430 750978759 567948101 182214511 492009082 170941326 103669472 488788762 15037608 393120342 797746066 458156391 926045944 896029805 586370291 590918818 760370490 66490779 884059813 735891721 195957995 560327459 15037608 979750308 420052652 896072909 539381059 582273012 152243323 792846009 809429735 250749017 967417280 88335614 126695727 4519262 99294732 667844649 53525809 433921335 814662325 636434256 954227928 683621666 628523361 324986193 946612927 103219970 539381059 109054120 843005594 2379379 704431513 47349911 247006479 140725908 142903358 427184372 851400664 942866882 15037608 925555858 321628921 264297813 289918211 476912096 719307635 276676140 979740237 134971740 292696118 885353274 824770361 616057762 292972503 686335042 177689820 726950461 633573519 130160246 722768643 56927881 126695727 182214511 41538784 970320952 247006479 539035187 824770361 451551269 24188768 851829959 619842427 196460706 918225489 387703244 174140940 711455867 591292508 934824360 652018277 630238886 540976336 764116955 709613471 668964848 306607837 885353274 838655651 334932282 545538425 907095826 765027062 315297566 626833449 780061015 926044257 187104147 420052652 47349911 979740237 506919968 135975430 931005739 583924389 793291205 685702028 573480571 196106606 5299425 98287438 315297566 719307635 311808379 457149478 315343704 53226850 47529701 123073176 942866882 827311105 464444922 619842427 628820972 603931167 969494113 947413305 711532060 40656291 506919968 275202504 47529701 31615284 852755974 430284321 266583970 838331644 531333917 765027062 601740259 774489082 831380531 512614298 727827821 955501918 554242697 610834602 978947655 174140940 852604705 982353486 506178629 917795074 248642173 151506993 207442482 151506993 40131409 514650194 55018341 837690635 780061015 840075867 851759377 661321016 276676140 936312210 143200457 425392410 298050322 140129038 315343704 885995802 944573659 630201811 962430008 351424753 307403622 982416551 560327459 719307635 885647994 877167702 579757115 72820570 711532060 244528344 112390393 688534928 81553943 358401766 835198840 533864165 699230813 882364001 788118407 719307635 607965234 885995802 782533040 746992914 36055646 311613451 829614460 128188331 997329398 230662076 378961655 315747769 932715562 949084393 514768035 177689820 866337119 945394518 858040709 103669472 2379379 862254110 509370562 942999703 516175014 375066210 55018341 344620844 249670598 183440003 758889515 950497221 382904427 306607837 604181881 567948101 625664180 203331888 509144872 601630030 165821462 540394532 708094860 942999703 485262404 838655651 531333917 563678994 607041944 751925989 396138845 481894295 290474734 548748527 737945381 797746066 543945175 431406787 891279504 457149478 509370562 202477791 152314280 23973553 172894131 503666498 572465104 971894015 566125822 590208882 968670974 876868627 382210484 854969794 607760956 451817798 215289803 591292508 299994808 40656291 213097363 266213579 215289803 152243323 702745028 367026304 694954883 1926282 568142039 904771946 891279504 922706719 114409323 115509283 925555858 675472009 815123402 783513992 51457589 626932919 931005739 660095934 250885472 553368896 451521521 979740237 960543625 251188854 38085353 366854683 433921335 98824830 676975489 315747769 248642173 771321738 543865019 753419354 78775552 774489082 53966525 950497221 962073361 799588075 509019925 591292508 324129364 931013644 713146141 617908997 647733367 893019475 506178629 156817178 735891721 945394518 955730659 797746066 496698204 93651148 964902255 661321016 36055646 278160655 616057762 888699423 338929165 206036522 103219970 824770361 984047482 751925989 882804101 674485068 213097363 771321738 910818482 257214051 754133002 602396426 288072509 660095934 850484222 126695727 215289803 511330454 727827821 674485068 866337119 82689280 252962990 570764323 647733367 67700412 983373150 489612980 623206361 623398671 285947848 292149520 159828635 746992914 179981178 705304879 786320493 922858580 686335042 888553258 556619020 140129038 836376015 746992914 733642252 600441802 713146141 23262398 782533040 67831588 531135820 424594759 750750593 854969794 488788762 660765062 40131409 408395896 629101079 101231409 907095826 298727845 829614460 540976336 630238886 242530683 726620654 270237875 33511708 882364001 369306500 290117216 630238886 331638088 264100442 786380583 495854210 946916156 635302209 308142020 698320352 703514531 572465104 827311105 531135820 202477791 938080232 550336314 130160246 72820570 288873549 955501918 858040709 551289217 506919968 485153920 382904427 251188854 943793512 751925989 719601437 602396426 159828635 136384659 140551765 363976852 885647994 38338132 975478549 219054502 397928982 533455280 744008188 942999703 252792947 538025980 559957428 700560235 522332929 215981255 485262404 296305836 167276070 1926282 2575238 259646582 496698204 602396426 767187616 896571061 601740259 60750487 708046990 311613451 387703244 640925332 646710523 136384659 938080232 831467447 764459345 228290502 33511708 72820570 678474526 128702236 509664709 190929591 48746678 703490607 557710104 638516505 592981604 367026304 251367294 904800517 507016471 926044257 207844781 572588387 272303478 922858580 885000402 992001870 252792947 971894015 360743135 47290536 932715562 190929591 566554997 140129038 360743135 850386354 163229392 855636134 463496366 765027062 885000402 740882715 4519262 723661847 902464469 525347105 874297853 181668423 526944836 284588557 103219970 994877696 49948206 295366548 247822207 305068796 851829959 637769046 393120342 967417280 250749017 375066210 527595027 712346140 817743547 678884863 918521256 455539394 942899938 674485068 667844649 586446680 452156279 567948101 264297813 344876805 887548285 94279561 359859765 396050095 938705675 174140940 907095826 799588075 515426984 125204206 983113723 554222239 36265302 259646582 250885472 691982506 52243955 757850417 33511708 886917295 458156391 572588387 433921335 922706719 215052415 950673785 992169078 931966477 851829959 735696627 15903366 830619816 146573202 50241607 79509313 691982506 835212499 922706719 560327459 604968568 573480571 674485068 476912096 117931902 130160246 886149363 727245017 215981255 427184372 723661847 226492467 958668995 459452716 750563611 962430008 128188331 531135820 827311105 993091440 982370833 330274784 776352608 668964848 712346140 205387898 656623172 2379379 626932919 866568903 433686203 699733109 712346140 369306500 38338132 687055288 430088921 145885851 93478833 664041213 401452903 163229392 803588261 739696834 462762217 215289803 780870754 939725993 183440003 997329398 485153920 167276070 196106606 711532060 244528344 241184545 854902633 970320952 661321016 874297853 637769046 872434540 74587532 727245017 681765297 509019925 719307635 36055646 286037808 972710252 807117750 36265302 322974842 932715562 465759767 215052415 942999703 560623000 851400664 625664180 42657625 625664180 489130642 831241130 304621545 874297853 710224239 761330904 950673785 175060805 662421393 371179314 653201202 27735709 136384659 441621000 637769046 5299425 304621545 938705675 375066210 806792339 567774282 285947848 72820570 138442062 74587532 851759377 77819776 698320352 944068218 638790258 306607837 307060809 429277230 539035187 683406807 408032939 858127225 835212499 807117750 992169078 662421393 15903366 598543708 408032939 745200166 607965234 344876805 746394036 351424753 758889515 481894295 283321520 955501918 174862116 80415088 399037712 843005594 276676140 709613471 607041944 151364594 556619020 804406873 509144872 932584021 29473993 154538466 66490779 681765297 396632533 292972503 859168292 481894295 187104147 420052652 121069546 214244685 727245017 633587956 887548285 770594967 792822959 64420967 786320493 177689820 359714925 816971086 838803091 268759041 249670598 637769046 587179274 31215478 566554997 53525809 968755777 457149478 246058339 259646582 38304068 780870754 112390393 587469038 55018341 321628921 437743643 478351140 68748842 663670886 560623000 583924389 674446970 128188331 943235508 936312210 337153847 931966477 942899938 877167702 522663253 874124920 334932282 630775839 735891721 40448245 498045048 181668423 20148474 765027062 754133002 540394532 764459345 151364594 488788762 598426014 207844781 878442641 114409323 136384659 968670974 927806038 884952974 298727845 485063015 650697444 334211676 926044257 330205547 675472009 907095826 941586175 719601437 425392410 962073361 40656291 556619020 719307635 931005739 932584021 408032939 678884863 215052415 840075867 24089615 32806834 264100442 831467447 889608806 361435434 498045048 484158080 984050047 193648030 889608806 270237875 885353274 950673785 51457589 334299650 972710252 64420967 559957428 710224239 767187616 773781000 732245352 344876805 2076768 502849508 531333917 140129038 963141978 53226850 968670974 778074990 299462930 401452903 330205547 771321738 249820698 738855203 237172271 681930584 916956968 660765062 912948600 298727845 792822959 153196022 215052415 488295044 307060809 23973553 400218902 994877696 215289803 292696118 317751260 632014852 860708299 774489082 776835194 269911067 170938835 315747769 338631458 366854683 387703244 884072178 829983432 547547687 939725993 958668995 667313812 738855203 38304068 754580366 288873549 289736829 964902255 43970470 764459345 688534928 282751746 770864525 885353274 308142020 485509833 457149478 19715614 681765297 885647994 67700412 711532060 533455280 266583970 640925332 625664180 251042004 942866882 420052652 944573659 321628921 616796881 946916156 618355033 982416551 635302209 331638088 625664180 525347105 592981604 261683638 136412292 703490607 117210451 103733806 226492467 304621545 953267424 660765062 272303478 595030753 134801439 920721173 539035187 545538425 299994808 484158080 134971740 311613451 831380531 662421393 55018341 577970627 636434256 269911067 134801439 152523810 885647994 746992914 938456692 885995802 388085842 623398671 870201182 760231333 975478549 485153920 55108095 101231409 572465104 94279561 789617647 545538425 19715614 751925989 556619020 876868627 196460706 888699423 327773233 183440003 573480571 760231333 106790696 219054502 781242822 268759041 193515742 254203892 143200457 966683628 2575238 396743027 38304068 850386354 715957434 407091770 870201182 663670886 338312978 190979155 858798711 630201811 130160246 219054502 676975489 940188502 324129364 554222239 514768035 768561257 656191811 650990283 581831913 308142020 989729323 656623172 288072509 683406807 554242697 809429735 174335822 803588261 170938835 206036522 226492467 278160655 2076768 653201202 587179274 264408147 388085842 527654256 103219970 43970470 324129364 42657625 630238886 715779797 667844649 550336314 98231977 539957336 495854210 308142020 810021050 601630030 55108095 93651148 702745028 334299650 299462930 604968568 992169078 685702028 727578179 932584021 882804101 838655651 836376015 923927991 20148474 592639233 601740259 770864525 298050322 830619816 264297813 922706719 557710104 215977916 970911538 471393875 964902255 304621545 627110568 196106606 458156391 681930584 646710523 887794841 689757867 654830523 400218902 735696627 831241130 485153920 49614749 261683638 399037712 776352608 27735709 420052652 872434540 610447918 449022331 489612980 711455867 315747769 494336936 163769090 854243215 900116034 56927881 152866011 853170454 736237188 342116147 955501918 182214511 328462418 546141085 244528344 27735709 626833449 582273012 201717402 607041944 838331644 138442062 862254110 943793512 215981255 514768035 489130642 488788762 691982506 376974209 763431295 968670974 969294148 984047482 626932919 250885472 586446680 488788762 448262245 699733109 926045944 885000402 931966477 394791153 591292508 964902255 331638088 330274784 610834602 52243955 704431513 38304068 542382913 2379379 15037608 931005739 538025980 526944836 215981255 925555858 489130642 559957428 854969794 511277493 32806834 276676140 527654256 667844649 306607837 248642173 527654256 592970093 82689280 568142039 926045944 737945381 763431295 996943901 94279561 896029805 799588075 441621000 38844979 953267424 577970627 371179314 412979540 531135820 322974842 143200457 763431295 722013570 138393155 744008188 567774282 938705675 900116034 446968233 98824830 995876182 654830523 225771141 750563611 556619020 626932919 535533605 215981255 885141769 208625324 300892929 533455280 581831913 941586175 543865019 850386354 38304068 783513992 885647994 464130920 572465104 257214051 213097363 745200166 175507355 425392410 250885472 748408317 138442062 827311105 994587826 675472009 451551269 723661847 296751278 640849273 443960759 259646582 962430008 675472009 250749017 788737791 970911538 705548145 4519262 946612927 632378665 944068218 174335822 538810384 63192647 264408147 459617527 675472009 787269565 553191189 851759377 843005594 400218902 831467447 543865019 786380583 597784477 308142020 870201182 538025980 195733178 498840912 808838846 751925989 970911538 632402794 975478549 843005594 193515742 32806834 934824360 679463383 371179314 920628541 172382592 617908997 33511708 969294148 190323279 760370490 630629857 498840912 462394151 967417280 995876182 600441802 218611070 126695727 464444922 230662076 627110568 181668423 711455867 814295984 573449906 956286779 272303478 492009082 808838846 710224239 106790696 586370291 754133002 650990283 732559957 637769046 437743643 366854683 527595027 308142020 314069534 603931167 668964848 72820570 190323279 637769046 697742034 542382913 52243955 626833449 962430008 760231333 515426984 723661847 427184372 438183310 399037712 991073887 699733109 215774690 668964848 202477791 155241439 650697444 902464469 98287438 991615550 773781000 708094860 769327548 522332929 125204206 413592826 334299650 623206361 703514531 396138845 926044257 535533605 587469038 36265302 431406787 361002681 746992914 829983432 408395896 938456692 455539394 775682536 190929591 19715614 632014852 841780337 710224239 162904272 228290502 152314280 885549757 458290565 776820092 780061015 958668995 735891721 174140940 732559957 551289217 324986193 632402794 88335614 553368896 35128915 133739154 456137963 715779797 923715439 900116034 531333917 683406807 835212499 920628541 613596687 538810384 943793512 746092812 616057762 885549757 306597948 451817798 708094860 214650974 963141978 41538784 588034909 129724737 761330904 154538466 338929165 550336314 140725908 760370490 526944836 858127225 155241439 305068796 20148474 886917295 850484222 654830523 687055288 610834602 121069546 619842427 413592826 786380583 750978759 885549757 656191811 209789164 698320352 575895835 387703244 654830523 582273012 306258744 35128915 931013644 55108095 559014304 727245017 738855203 459617527 485153920 495854210 462762217 170938835 886917295 953267424 290117216 981996224 292149520 662972501 275349681 955730659 261683638 664041213 195957995 485063015 457149478 330205547 255644658 311808379 778074990 831380531 876868627 19715614 754580366 638790258 251188854 464444922 242186770 338312978 681930584 119279869 920628541 983113723 247221668 330205547 417074904 300892929 723661847 382210484 242530683 60017144 328462418 342116147 851400664 646710523 39220584 667313812 700560235 68748842 862177563 688177128 637939784 762749463 760370490 2076768 540394532 404152565 242530683 754133002 920721173 134801439 994877696 912948600 982353486 938705675 23262398 616057762 581063820 134801439 289736829 315343704 10475035 841210236 430101007 573480571 630201811 170938835 888699423 49614749 538025980 838803091 553191189 689757867 13112382 972710252 202477791 27735709 514650194 215289803 407629453 359859765 683406807 325554372 910850066 49614749 13112382 852755974 809429735 535533605 827311105 505061211 129724737 352092606 824770361 190323279 429277230 780061015 344620844 557710104 433686203 388085842 183440003 793291205 43970470 299462930 830619816 288873549 773781000 984050047 735696627 287239117 932584021 237172271 920721173 938705675 152523810 607760956 754580366 49948206 67700412 572465104 551289217 35128915 251188854 623206361 653201202 859168292 432089082 762749463 94279561 623206361 257214051 387703244 746992914 456137963 94279561 918521256 864016134 812414090 736624310 978947655 275202504 186244437 575895835 767839638 804406873 78775552 74587532 437743643 942999703 851759377 306607837 746394036 31615284 667313812 306607837 338929165 628523361 390793037 128188331 337153847 98287438 56927881 882364001 337153847 926045944 932715562 950673785 577673184 958668995 60017144 485153920 7807006 926044257 732559957 148087911 485063015 610834602 476912096 451817798 997329398 261683638 207844781 23973553 63192647 247006479 938705675 503666498 494336936 900116034 870201182 662421393 604181881 210621083 795472528 425392410 334211676 559014304 792846009 922706719 607760956 656623172 195019158 982370833 19911869 401452903 452156279 572588387 330205547 840075867 934824360 264408147 790270533 797746066 874297853 125829791 288072509 586446680 739696834 601630030 330205547 296305836 207442482 101231409 334211676 208625324 310726569 547547687 136412292 940188502 163229392 656623172 163229392 703514531 506919968 548748527 808838846 489130642 252792947 67831588 556619020 763431295 870201182 321628921 891279504 618542887 667313812 814295984 992169078 448262245 786320493 577970627 449022331 308142020 307403622 587469038 630629857 940188502 620243558 361435434 207844781 295366548 531135820 801623766 689757867 209789164 629101079 554222239 403519778 278160655 247822207 926044257 539035187 941586175 812044550 640849273 338929165 945394518 376448548 581063820 462394151 904800517 262406489 328462418 866568903 940188502 2076768 735696627 371179314 299113502 195733178 361435434 522663253 209789164 579757115 650697444 223299794 481894295 114409323 230662076 56927881 955501918 226492467 103669472 568142039 992001870 315297566 145559297 674446970 876263470 112390393 361435434 582273012 50241607 170938835 23973553 369306500 50241607 324129364 242028021 757709512 512614298 15903366 982416551 604881661 163769090 970911538 950497221 449022331 950673785 145885851 123073176 327773233 38338132 560327459 876263470 448881532 830619816 938456692 358401766 963141978 480361743 266583970 637769046 754133002 429277230 853170454 754580366 87392830 954227928 815123402 969294148 943235508 922706719 283321520 98824830 190323279 876868627 767839638 234980621 635302209 480361743 963141978 722768643 527595027 186285312 872434540 553368896 806744033 264750083 981996224 931640418 112090095 838331644 795472528 152523810 138442062 259646582 143200457 457149478 382904427 344876805 276676140 778074990 218611070 735696627 620243558 803588261 130160246 547547687 806744033 630201811 112390393 563678994 36265302 430088921 970320952 363976852 962430008 1926282 256866745 6720560 307060809 846351340 971549242 80415088 560623000 770993588 702745028 525347105 994587826 407629453 566125822 840130613 307060809 886149363 767839638 123073176 884952974 548748527 387703244 637657473 560327459 773781000 836376015 152618584 405444604 656623172 851829959 289736829 397928982 926044257 808614164 156817178 858040709 662421393 448881532 603931167 163229392 700560235 174862116 242186770 627110568 801623766 981996224 109369069 78775552 654830523 764116955 539381059 793291205 60750487 682170984 915330573 441621000 115090276 119279869 923927991 456137963 966131311 646710523 538810384 907721720 344620844 218611070 538025980 764459345 663670886 993091440 286037808 689757867 177689820 874297853 53525809 588034909 540394532 786320493 654830523 607760956 674485068 989729323 142903358 81553943 299113502 953267424 503666498 577673184 814662325 607965234 917795074 287239117 366854683 786320493 597206610 112090095 804406873 175060805 103669472 20148474 542382913 266583970 942999703 795472528 201717402 5299425 568104980 170938835 74587532 618355033 745200166 390275103 83066601 607965234 736237188 390275103 50241607 32954995 641635851 215289803 750563611 557710104 626932919 647733367 136384659 478892468 247234349 250749017 674485068 19715614 289736829 831241130 354807942 942899938 230662076 88335614 803588261 874297853 274113481 382904427 954227928 437743643 247234349 907095826 640849273 808614164 77819776 548964093 748408317 361002681 691982506 662972501 47290536 592981604 637769046 699230813 464130920 40131409 99294732 522332929 438183310 106790696 332834875 557710104 936312210 162904272 361435434 285947848 626833449 338631458 306607837 172382592 322974842 810021050 661321016 397928982 396050095 939725993 900796599 790270533 31615284 476912096 769327548 916956968 640925332 114409323 206036522 884952974 80415088 413592826 857535330 506919968 140129038 306597948 637939784 975478549 93478833 746394036 740882715 788118407 956815883 969494113 322974842 698320352 275349681 27735709 311613451 78775552 82689280 735710261 13112382 360743135 451817798 485262404 715779797 737945381 814295984 853170454 308142020 939725993 540394532 121069546 900796599 2379379 242186770 397928982 115090276 993091440 876868627 944573659 917452919 32954995 298727845 449022331 74587532 33511708 548748527 179991869 152523810 535533605 290117216 647733367 617908997 215052415 886917295 337153847 152243323 535533605 705548145 79509313 950497221 943235508 938140278 223299794 773781000 808838846 942999703 866337119 98287438 531333917 247221668 694954883 645094664 266583970 931640418 896029805 485153920 859168292 334299650 647733367 32075030 317751260 56154381 613596687 257214051 251367294 129724737 2575238 862177563 394791153 183440003 795472528 77819776 162904272 954677909 175507355 74587532 729868696 151364594 396138845 757815664 776835194 306607837 588034909 396050095 249820698 904771946 338929165 41538784 509019925 900796599 307403622 931640418 396937914 700560235 938080232 471393875 970911538 691982506 739696834 575023903 979750308 570764323 907721720 944068218 937158597 354807942 36265302 942999703 68748842 663670886 55018341 581063820 248642173 773781000 767839638 876868627 143200457 183440003 687055288 296305836 140551765 145559297 939725993 125829791 103219970 628523361 853170454 618542887 539035187 407629453 630629857 444897967 393120342 581063820 252962990 424594759 620243558 219054502 451521521 215977916 996943901 125204206 317751260 788737791 713146141 471393875 299994808 511330454 393120342 931966477 114409323 38338132 885647994 174140940 134971740 539957336 570796148 498840912 870201182 23973553 449022331 251042004 112090095 228290502 47349911 101231409 573480571 125204206 689757867 254203892 635302209 590208882 978947655 597206610 106790696 877167702 509664709 512614298 282751746 328462418 393120342 910850066 775682536 572588387 162904272 715779797 934824360 195957995 683621666 638516505 256866745 803588261 394791153 451817798 923715439 162062292 750750593 705304879 668964848 540976336 220576148 247006479 630238886 538025980 699230813 101231409 498045048 247221668 944573659 931086800 683621666 539957336 413592826 174140940 478892468 757850417 739696834 133739154 962073361 878442641 47349911 736624310 990121035 151506993 290474734 803588261 527595027 807117750 209497607 843005594 376974209 302151126 749497174 851400664 60017144 921198791 887548285 140129038 943793512 471393875 727245017 429277230 694954883 679463383 485063015 540976336 352092606 511330454 81337657 306607837 112090095 83066601 932715562 228290502 32954995 117931902 566125822 255644658 746394036 242530683 590918818 259646582 531333917 864016134 571019028 931013644 697742034 735696627 630629857 401452903 727827821 705548145 522663253 156817178 800460688 931640418 872434540 824770361 607965234 190979155 2379379 583924389 394791153 830619816 327773233 502849508 874297853 484158080 371179314 705548145 81553943 982353486 494336936 215977916 815123402 619842427 315343704 215981255 767839638 31615284 353964006 688577702 674446970 255644658 446968233 633573519 49614749 768561257 781242822 31215478 451521521 424594759 674446970 422532994 218611070 600441802 664041213 533455280 2076768 632014852 47349911 322974842 994587826 367026304 186244437 721418370 687055288 251188854 196460706 969294148 522663253 575895835 570796148 663971090 232177196 618542887 602832600 152618584 87392830 808866527 859168292 478351140 972710252 174140940 462394151 595030753 526944836 128702236 400218902 125829791 559957428 915330573 49948206 771321738 582273012 769327548 287768226 754580366 767839638 567343883 604881661 471393875 264100442 431406787 456137963 540976336 19715614 768561257 792846009 936312210 209497607 572588387 287239117 251042004 602832600 610447918 812414090 641635851 789617647 296305836 778123726 242186770 579757115 289918211 943793512 539957336 943793512 736237188 251367294 306258744 943793512 433686203 953267424 773781000 582273012 598543708 891279504 877167702 313272965 344620844 396138845 932584021 664041213 464130920 478892468 64420967 754133002 705548145 140725908 917452919 324129364 597206610 209497607 21190596 829983432 931086800 137529801 740340897 66490779 776352608 63192647 295366548 349076114 746092812 264100442 109369069 962430008 546679009 1736950 492009082 505061211 264750083 264100442 922706719 15903366 660765062 795472528 591292508 215052415 424594759 604181881 387176309 831380531 814295984 607760956 778074990 812044550 163769090 916956968 247841801 607041944 554222239 77685914 551289217 462394151 38844979 485262404 801623766 858798711 994877696 764459345 799588075 780061015 269911067 589760538 877088774 458156391 115509283 968755777 99294732 256866745 940188502 136412292 946916156 629101079 719307635 587179274 125829791 885647994 918225489 764459345 640849273 4519262 293192373 896072909 533455280 573449906 885995802 592981604 38338132 306597948 893019475 566554997 152523810 907721720 803588261 403519778 489612980 853170454 567343883 264297813 876868627 790270533 932584021 571019028 763431295 190323279 837690635 433921335 174140940 287239117 545538425 207442482 305068796 838803091 876868627 506919968 275349681 842970782 209789164 88335614 846351340 781246194 743614603 992169078 858127225 225771141 715779797 607760956 735696627 515426984 502849508 984047482 428572243 810021050 499057158 597784477 465697134 995876182 289918211 543865019 745200166 744008188 31215478 459452716 396050095 306597948 754580366 160287690 464130920 404152565 956815883 841780337 21190596 47349911 234980621 808614164 298727845 2575238 264750083 788118407 98824830 248642173 98824830 175060805 331638088 140725908 247221668 852755974 885995802 942866882 633587956 727827821 208625324 262406489 572588387 205387898 428572243 2379379 305990981 792846009 736237188 560623000 128188331 88335614 163769090 604881661 259646582 55108095 503666498 55108095 885995802 602832600 860477160 226492467 760231333 241184545 780870754 853170454 740340897 175507355 958668995 812414090 408395896 838803091 420052652 587179274 237389399 907095826 274113481 353964006 152618584 249820698 67831588 983373150 308142020 310726569 465697134 581831913 31615284 195733178 115509283 296751278 773781000 498045048 326469359 459452716 53525809 860708299 851400664 708094860 464130920 140551765 950497221 566554997 860377902 315297566 210621083 632378665 242530683 205387898 331638088 520071928 947413305 272303478 480361743 771803404 610447918 376448548 351424753 889608806 975337465 938080232 115090276 390793037 502849508 570796148 597206610 7807006 214244685 732559957 538025980 360743135 586370291 37275245 854902633 601740259 163769090 393120342 538810384 388085842 736624310 35128915 884072178 145885851 257214051 618355033 600441802 514768035 32075030 262406489 274113481 334211676 950497221 485063015 650697444 885647994 944068218 390275103 652018277 866337119 654830523 195733178 554222239 662972501 661321016 907095826 674485068 250749017 430284321 388085842 93478833 713146141 910850066 910818482 654830523 792846009 10475035 246221518 83066601 437743643 633573519 711455867 326469359 140725908 533455280 68748842 630775839 965948435 251042004 248642173 591292508 604181881 681765297 298050322 255644658 757709512 525347105 689757867 554222239 686335042 705304879 885141769 448262245 767187616 152523810 19911869 268759041 38085353 641635851 841210236 799588075 290474734 196106606 891279504 538025980 943235508 292972503 53966525 637657473 209497607 295606018 870201182 49317804 618355033 743614603 338312978 78649514 732559957 247221668 851759377 884059813 687055288 688534928 143200457 630201811 515426984 610447918 628820972 83066601 885647994 527654256 19715614 326469359 117210451 546679009 708053570 685702028 674446970 60750487 887548285 77819776 912948600 893019475 119279869 344876805 635302209 753419354 582273012 29069209 78775552 678884863 452156279 131323888 163229392 950497221 324986193 920721173 458156391 855636134 932715562 888699423 5299425 641635851 842970782 295366548 496698204 816971086 806744033 489130642 207844781 190979155 458290565 315747769 979750308 585165457 638790258 334299650 232177196 254203892 577673184 430088921 443960759 533864165 566125822 308142020 891279504 247221668 993091440 917452919 602832600 738855203 775682536 653201202 405444604 862254110 121069546 597206610 290474734 746092812 250832323 687988023 781246194 771321738 965948435 135975430 573480571 554222239 146573202 710224239 829983432 982370833 790270533 211958450 831380531 547547687 718980624 412979540 334932282 289736829 5299425 78649514 604181881 215977916 758889515 575023903 687055288 448262245 186244437 387176309 38085353 6720560 205387898 840075867 49614749 206036522 299462930 660095934 526944836 860377902 526944836 156817178 359714925 465759767 251367294 864016134 393120342 860477160 249820698 982370833 592981604 10475035 887548285 944068218 128450928 49317804 764459345 193648030 778123726 922706719 324986193 882364001 494336936 954677909 179991869 539957336 991615550 953882020 932715562 489130642 607965234 242530683 51457589 50241607 252962990 949084393 36055646 40656291 566125822 940188502 851759377 407091770 573480571 927806038 427184372 208625324 195733178 152523810 589760538 941586175 970911538 247234349 940381563 430284321 571019028 261683638 983373150 824770361 4519262 255644658 511277493 215977916 485262404 663971090 53195413 577970627 968755777 885549757 942866882 575023903 7807006 910850066 812044550 765027062 121069546 736624310 632378665 344876805 103219970 637769046 485509833 931013644 965948435 430284321 427184372 768561257 800460688 592639233 128450928 407510599 220576148 177689820 810021050 195957995 138442062 628523361 646710523 942999703 732559957 736237188 446968233 407510599 397928982 854902633 923715439 769327548 27735709 687988023 629101079 675472009 686884353 570764323 543945175 42657625 885353274 753419354 264297813 886917295 334211676 32806834 29473993 271484655 310726569 633587956 698320352 994877696 187104147 740882715 159828635 433686203 459452716 407510599 352092606 801623766 81553943 876263470 20148474 700560235 750750593 128188331 390793037 6720560 955730659 874124920 858040709 936312210 205387898 678884863 560327459 412979540 112090095 64420967 53966525 954677909 174862116 550336314 433921335 425392410 739696834 82689280 635302209 539957336 812044550 138393155 396632533 47290536 215052415 597206610 87392830 632402794 117210451 721418370 334932282 41538784 485262404 489612980 408032939 840130613 581831913 123073176 52243955 774489082 451551269 274113481 376974209 746992914 282751746 626932919 327773233 982353486 870201182 153196022 546141085 840130613 732245352 746092812 678474526 289918211 719601437 886917295 560623000 705304879 735710261 408395896 400218902 637657473 213097363 808866527 689757867 208625324 315297566 152866011 24089615 1926282 683621666 956286779 349644605 992001870 744008188 757815664 943235508 633587956 683621666 444897967 448881532 911302173 396937914 941586175 979750308 152243323 298050322 308142020 835198840 637769046 570796148 306258744 315297566 860477160 630977998 462762217 400218902 315747769 713146141 760370490 570796148 305068796 808614164 630201811 448881532 854969794 727578179 117931902 962430008 1926282 299462930 559014304 51457589 351424753 403519778 408395896 310726569 681765297 369306500 956286779 781246194 193648030 702745028 760231333 907095826 302151126 250749017 586370291 170941326 979740237 378961655 133739154 841780337 936312210 128450928 736237188 699733109 876868627 771803404 145559297 29473993 920721173 36055646 567774282 162904272 73848009 991615550 840130613 361002681 210621083 722013570 429277230 623206361 626833449 746394036 721418370 376448548 617908997 98231977 885995802 808614164 770864525 175507355 575895835 853903669 40656291 842970782 407091770 78775552 247221668 896072909 736237188 829983432 876868627 527595027 115509283 560327459 630775839 744008188 131323888 162904272 488295044 516175014 801623766 172382592 804406873 601740259 269911067 735710261 49317804 463496366 448262245 620243558 193648030 808614164 242530683 918521256 763431295 514768035 286037808 997329398 640849273 314069534 548748527 916956968 152618584 932715562 656623172 991615550 900116034 400178823 315747769 882804101 602396426 636434256 219054502 955730659 922858580 526944836 41538784 162904272 751925989 313272965 931086800 282751746 645094664 870201182 354807942 882804101 462762217 722013570 219054502 852107700 451817798 853903669 13112382 588034909 637939784 390793037 545538425 20148474 864016134 786320493 926044257 686335042 331638088 650036494 640849273 983373150 703514531 969494113 967417280 130160246 210621083 934824360 927806038 698320352 425392410 918521256 533864165 451551269 660095934 313272965 586370291 971549242 98287438 970911538 591292508 324986193 814662325 290474734 688534928 106790696 653201202 420636144 177689820 213097363 757815664 388085842 190979155 170941326 920628541 962430008 67831588 458156391 900796599 970320952 103669472 81337657 142903358 852107700 430101007 870201182 29069209 682170984 554222239 938456692 757850417 942899938 321628921 160287690 82689280 387703244 769327548 276676140 396743027 506178629 954677909 687055288 982416551 733642252 816971086 10369081 786380583 629101079 572588387 249670598 251188854 702745028 135975430 767839638 837690635 726620654 1926282 394791153 532803593 369306500 77819776 687055288 311613451 943235508 513440742 806744033 153196022 984050047 230662076 686884353 115090276 996943901 691982506 172382592 786380583 175060805 298727845 160287690 778074990 393120342 80485362 10369081 888553258 155241439 247234349 404152565 587469038 252962990 304621545 767187616 305068796 732559957 485153920 887548285 923927991 916956968 788737791 378961655 117931902 98231977 900796599 353964006 304621545 711455867 542382913 405444604 195957995 390275103 181668423 581831913 67831588 290474734 947413305 47529701 302151126 55018341 550336314 313272965 98287438 882804101 41538784 458156391 595030753 315343704 809429735 860708299 49317804 735710261 430284321 112090095 351424753 266583970 242530683 560327459 808866527 969494113 921198791 264100442 98287438 708094860 425392410 167276070 162062292 646710523 838655651 112090095 991073887 47529701 765027062 810021050 422532994 396937914 683406807 548964093 94279561 514768035 433686203 965948435 696443558 511277493 304621545 543945175 196106606 694954883 920628541 682170984 640925332 404152565 633573519 299994808 208625324 955730659 632402794 186244437 650990283 623206361 850386354 408032939 306258744 854243215 705304879 299994808 740340897 315343704 885995802 53195413 738855203 317751260 740882715 187104147 432089082 163229392 577970627 413592826 567948101 781246194 40448245 943793512 940188502 250885472 438183310 288072509 931640418 170941326 269911067 627110568 695599688 437743643 595030753 451551269 757815664 427184372 433686203 462394151 32806834 630977998 489130642 300892929 824770361 579757115 633587956 854243215 586446680 590918818 295366548 787269565 702364434 916956968 132556595 683621666 776352608 568142039 109369069 485262404 971894015 560327459 681930584 607965234 60750487 808614164 422532994 451521521 893019475 393120342 457149478 806744033 746992914 215289803 244528344 560327459 162062292 451521521 653201202 179991869 814295984 964902255 633573519 887548285 210621083 604181881 735696627 475344103 425392410 68748842 838655651 359714925 893019475 19911869 575895835 588034909 623398671 590918818 807117750 554242697 195957995 781246194 396050095 515426984 201717402 315297566 512614298 223299794 921198791 190323279 618542887 121069546 953882020 330205547 946916156 498045048 877167702 931005739 73848009 29473993 351424753 462394151 923927991 829614460 874124920 272303478 174140940 630238886 304621545 735710261 938140278 311808379 746992914 509144872 296305836 175060805 306258744 359714925 299113502 317751260 293192373 52243955 633587956 942866882 53226850 382210484 123073176 182214511 736624310 256866745 904771946 638790258 202477791 983373150 375066210 155241439 809429735 592981604 247221668 220576148 831467447 456137963 407091770 531135820 887794841 48746678 633573519 334211676 840130613 140725908 503666498 664041213 806664207 889608806 31615284 613596687 424594759 806792339 738612855 426814174 133739154 667844649 152243323 315343704 738612855 310726569 129724737 449022331 681765297 531333917 455539394 408032939 80415088 852755974 654830523 162904272 305990981 968670974 640925332 539035187 982353486 485063015 321628921 252962990 710224239 795472528 750563611 241184545 795549341 19715614 306607837 750978759 691982506 566554997 757850417 795472528 553191189 979750308 563678994 136412292 633587956 851829959 551289217 349644605 162062292 983113723 617908997 330205547 407091770 81337657 455539394 175060805 101231409 47349911 251188854 24089615 302151126 550322314 125829791 778123726 542382913 781242822 953882020 143200457 771321738 172894131 304621545 282751746 633587956 330274784 896571061 994587826 502849508 687055288 138393155 682170984 424594759 426814174 480361743 288072509 387176309 112390393 807117750 215052415 513440742 36055646 38338132 866568903 289918211 629101079 117931902 916956968 228290502 174335822 94279561 225858850 396050095 130160246 896571061 394791153 115509283 983373150 688577702 702745028 922858580 955730659 862254110 49948206 251188854 36265302 489130642 939725993 72820570 962073361 210621083 735891721 738855203 854243215 304621545 907095826 31615284 531135820 740882715 708046990 597206610 334932282 247006479 981996224 797746066 459452716 563678994 630977998 722768643 992169078 553191189 560327459 230662076 970911538 760231333 887548285 538025980 854243215 801623766 592970093 206036522 792846009 422532994 963141978 942999703 708046990 332834875 53195413 375066210 400218902 117931902 427184372 840075867 902464469 640849273 433921335 138393155 506919968 814295984 48746678 215981255 573449906 457149478 249820698 922858580 451521521 259646582 996943901 769327548 668964848 754580366 509664709 363976852 55018341 876263470 249670598 457149478 494336936 117931902 459617527 247234349 98231977 598543708 623206361 132556595 397928982 804406873 683621666 795549341 496698204 947413305 836376015 674485068 925555858 946916156 324986193 230662076 40131409 83066601 134971740 795549341 237172271 700560235 20148474 407091770 601740259 115090276 853903669 101231409 317751260 745200166 907721720 835339516 170938835 637939784 795472528 547547687 607760956 56154381 942866882 215981255 400218902 43970470 119279869 304621545 650036494 193648030 420636144 958668995 282751746 295366548 60017144 591292508 488788762 840130613 232177196 703514531 463496366 485153920 396937914 814295984 636434256 190979155 338631458 152243323 509664709 632014852 252792947 807117750 452156279 754580366 841780337 408395896 81553943 721418370 630977998 210621083 630977998 831467447 841780337 591292508 676975489 366854683 5299425 73848009 795472528 488295044 975478549 604968568 249670598 640925332 60017144 900116034 592970093 128702236 338631458 254203892 623206361 623398671 624819674 412979540 448881532 662421393 699230813 966131311 984047482 922706719 413592826 375066210 664041213 247221668 53966525 918225489 602832600 432089082 494336936 503666498 842970782 67831588 787269565 710224239 179981178 736237188 535533605 938140278 505061211 917795074 790270533 926045944 81553943 738855203 556619020 585165457 175507355 140129038 15903366 292149520 98231977 39220584 514768035 843005594 313272965 591292508 165821462 471393875 727827821 186285312 225771141 275202504 448881532 776352608 250749017 396050095 850484222 39220584 282751746 503666498 136412292 679463383 630977998 738855203 109054120 67831588 938705675 590208882 520071928 358401766 165821462 886917295 662972501 662421393 51457589 633587956 2076768 214650974 566125822 738855203 885000402 538025980 604881661 542382913 15903366 247234349 989729323 162062292 607041944 290117216 872434540 481894295 767839638 511330454 761330904 361435434 103219970 153196022 1736950 38338132 369306500 174140940 390275103 38844979 404152565 702364434 186244437 145559297 853170454 570764323 134801439 98287438 162904272 662421393 570796148 945394518 324986193 128702236 891279504 763431295 607041944 457149478 250832323 838655651 566125822 809429735 36265302 292696118 19715614 456956861 38085353 746992914 607041944 938140278 758889515 862254110 330274784 776820092 290474734 251188854 689757867 292696118 251367294 568104980 548964093 190979155 543865019 126695727 506178629 601630030 403519778 581063820 732559957 540976336 106790696 367026304 604181881 878442641 49614749 215792516 405444604 709613471 831241130 591292508 968755777 675472009 433921335 38844979 250885472 572588387 925555858 888553258 616796881 554222239 566125822 115090276 719601437 770594967 179991869 407510599 509019925 396050095 885000402 292149520 175060805 630201811 53195413 539381059 299994808 746092812 808614164 15037608 962073361 190929591 750978759 575895835 174335822 603931167 53195413 956286779 577673184 602396426 249670598 700560235 963141978 82689280 778123726 904771946 342116147 50241607 729868696 266213579 697742034 687988023 923715439 208625324 960796073 681930584 376974209 958668995 887548285 595030753 311808379 284588557 577673184 640849273 509664709 503666498 66490779 801623766 5299425 816971086 568142039 251042004 964902255 490344724 694954883 753419354 209497607 688577702 137529801 745200166 400178823 234980621 853903669 448262245 960796073 465759767 938705675 261683638 689757867 303230482 66490779 396743027 646710523 922858580 98231977 846351340 960796073 837690635 209497607 563678994 452156279 93478833 781242822 630775839 579757115 295366548 170938835 705548145 962430008 590208882 872434540 559014304 19911869 956286779 246221518 958668995 426814174 77819776 969494113 533455280 568142039 153196022 896029805 98287438 223299794 913521589 485262404 801623766 800460688 456956861 446968233 932584021 697742034 49317804 781242822 190929591 984050047 465759767 831380531 53226850 315343704 47290536 630977998 884059813 475344103 808866527 588034909 186285312 225858850 660095934 53195413 918225489 592970093 893019475 943793512 367026304 49614749 489130642 272303478 637657473 138442062 32075030 66490779 652018277 767839638 920628541 708046990 704431513 711455867 827311105 554242697 302151126 520071928 215774690 32954995 82689280 522663253 518384931 934824360 567774282 311808379 481894295 970911538 931013644 167276070 424594759 399037712 42657625 47529701 242186770 283321520 618542887 682170984 308142020 306597948 678884863 960543625 982370833 983373150 295606018 160287690 740340897 939725993 109369069 953267424 80415088 543945175 776352608 330274784 637657473 708094860 900116034 780061015 751925989 37275245 242186770 726950461 538810384 560623000 738855203 548964093 705548145 676975489 196106606 456137963 586370291 267829614 412979540 458156391 451817798 36265302 465697134 854243215 303230482 789617647 691982506 24089615 630775839 686335042 136384659 682170984 618542887 424974082 876263470 792822959 6720560 531333917 101231409 708094860 39220584 991615550 840075867 51457589 583924389 613596687 862177563 38085353 949084393 683621666 174140940 992169078 583924389 624819674 499057158 38085353 451817798 459452716 630201811 47529701 305990981 885353274 464130920 237172271 774489082 829614460 626932919 872434540 688534928 739696834 278160655 390793037 331638088 300892929 247221668 478892468 292149520 630629857 650990283 396632533 757850417 938080232 944068218 103219970 177689820 338312978 685702028 531135820 93478833 10369081 181668423 686884353 598543708 829983432 311613451 842970782 838655651 859168292 513440742 994587826 954677909 808614164 98824830 874297853 994877696 694954883 202477791 55108095 857535330 786320493 278160655 494336936 247006479 310726569 298727845 117210451 215981255 522332929 547547687 866568903 255644658 970320952 936312210 296751278 855636134 719601437 32075030 568142039 539381059 688177128 864016134 272303478 705304879 390275103 274113481 841210236 266213579 327773233 619842427 285947848 918225489 995876182 736624310 475344103 904771946 396937914 455539394 223299794 514650194 249820698 743614603 427184372 931086800 891279504 471393875 369306500 637657473 420636144 242028021 448881532 678884863 682170984 358401766 140551765 652018277 506178629 117931902 971549242 408395896 674446970 306258744 143200457 780870754 334932282 489612980 808614164 638516505 79509313 704431513 938080232 913521589 831380531 738612855 360743135 428572243 516175014 125829791 498045048 215774690 638790258 211958450 854243215 843005594 852107700 94279561 943793512 295366548 146573202 882364001 182214511 211958450 53966525 917452919 907721720 710224239 582273012 585165457 762749463 140129038 858798711 922706719 170938835 503666498 852107700 201717402 582273012 471393875 2575238 525347105 698320352 396743027 543865019 183440003 476912096 306258744 972710252 247234349 858040709 922858580 627110568 219054502 870201182 77819776 597784477 746092812 984050047 490344724 885353274 753419354 970911538 751925989 656191811 228290502 699733109 306607837 991615550 760370490 60017144 650697444 662972501 430101007 49614749 600441802 505061211 101231409 942899938 553368896 298050322 884072178 887548285 292972503 646710523 550336314 317751260 585165457 299462930 49317804 360743135 135975430 66490779 840075867 78775552 710224239 733642252 451817798 175060805 457149478 247822207 590208882 390275103 128702236 68748842 47290536 781242822 628523361 306597948 539957336 382210484 328462418 891279504 38338132 838803091 489612980 718980624 858127225 19715614 955501918 560623000 770993588 568142039 637769046 262406489 788737791 559957428 862254110 942899938 917452919 635302209 153196022 891279504 542382913 250749017 396050095 713146141 735696627 984050047 757850417 984050047 936312210 620243558 860477160 841780337 553368896 872434540 602396426 475344103 807117750 522332929 922706719 735710261 679463383 831241130 195957995 207442482 927806038 68748842 264750083 997329398 456956861 427184372 944068218 360743135 745200166 708094860 884059813 771803404 38844979 884952974 982370833 4519262 315747769 972710252 864016134 618355033 641635851 744008188 931013644 750750593 851400664 546141085 786380583 962073361 583924389 546141085 921198791 310726569 93651148 19911869 562773407 831241130 950497221 981996224 877167702 543945175 748408317 427184372 715779797 49614749 966683628 334211676 601630030 994587826 994877696 931005739 123073176 106790696 656623172 787269565 456956861 806744033 956286779 88335614 64420967 266583970 98287438 939725993 637939784 702745028 969294148 37275245 876868627 560623000 201717402 732559957 626833449 602832600 296305836 546141085 201717402 727827821 991073887 81553943 152243323 962430008 38338132 795472528 480361743 38304068 298727845 66490779 489130642 223299794 83066601 287768226 6720560 546141085 860377902 98231977 38338132 932715562 770594967 63192647 760231333 969494113 344876805 543865019 857535330 960796073 230662076 29473993 846351340 87392830 83066601 68748842 774489082 630238886 261683638 939725993 760370490 485509833 577970627 33511708 298727845 841780337 514650194 969494113 244528344 119279869 152243323 852604705 632014852 390275103 638516505 767839638 344876805 514768035 303230482 792846009 270237875 507016471 23262398 49948206 211958450 624819674 219054502 299994808 448262245 509370562 632014852 674446970 408395896 296751278 602396426 771803404 547547687 396138845 503666498 836376015 703490607 858040709 1926282 775682536 637657473 249670598 98824830 983113723 145559297 885000402 887794841 349644605 492009082 699230813 315747769 266583970 484158080 739696834 922858580 252792947 98824830 114409323 215981255 604881661 214244685 699230813 456956861 388085842 745200166 662972501 783513992 775682536 430284321 993091440 49317804 246058339 551289217 264100442 956815883 324129364 864016134 315297566 308142020 27735709 39220584 47529701 851400664 870201182 954677909 397928982 878442641 590918818 247221668 934824360 567774282 390793037 532803593 399037712 251042004 40131409 979740237 451521521 827311105 860708299 944068218 627110568 547547687 702745028 597206610 866568903 131323888 287768226 831467447 290474734 946916156 758889515 93478833 174335822 387176309 223299794 654830523 172894131 295366548 159828635 958668995 98231977 43970470 514768035 513440742 841780337 186285312 337153847 142903358 53195413 563678994 360743135 598426014 831241130 438183310 543865019 786380583 382210484 93478833 81337657 586370291 589760538 610447918 251367294 874124920 300892929 884072178 174335822 770594967 516175014 886917295 514768035 674485068 494336936 271484655 786320493 931013644 485262404 770864525 858798711 776352608 629101079 42657625 218611070 274113481 964902255 632402794 699230813 24188768 283321520 407091770 509019925 637769046 162904272 430088921 359859765 295366548 592970093 269911067 686884353 125829791 264297813 152523810 179981178 922706719 399037712 268759041 246058339 950497221 140551765 991073887 285947848 286037808 965948435 610447918 568142039 567343883 891279504 422532994 249820698 617908997 298050322 78649514 325554372 546679009 630238886 219054502 485063015 513440742 795472528 950497221 475344103 941586175 916956968 547547687 962430008 567948101 638790258 513440742 944573659 862177563 413592826 595030753 762749463 942999703 451551269 138393155 727827821 131323888 616796881 884072178 114409323 83066601 24089615 931086800 678474526 630775839 352092606 587469038 315297566 590208882 397928982 215977916 546141085 396743027 140551765 129724737 667844649 431406787 272303478 885549757 287768226 234980621 808838846 261683638 330205547 954227928 81337657 430088921 560623000 917452919 943235508 444897967 859168292 151506993 694954883 809429735 884952974 885549757 577673184 915330573 757709512 462762217 32954995 156817178 841210236 598543708 451551269 950673785 550322314 685702028 360743135 136384659 324129364 601630030 698320352 641635851 965948435 740340897 859168292 900796599 531333917 743614603 550322314 922858580 262406489 23262398 174862116 888699423 140725908 42657625 682170984 603931167 248642173 492009082 588034909 926045944 205387898 181668423 790270533 109369069 119279869 489612980 213097363 23973553 114409323 950497221 264297813 499057158 19715614 626932919 361002681 28363157 708046990 776352608 246058339 858127225 485509833 396806189 378961655 801623766 155241439 950497221 77685914 49317804 997329398 41538784 174862116 128188331 882804101 736237188 249670598 289736829 874297853 888553258 394791153 966683628 942866882 936312210 186244437 640849273 851829959 562773407 449022331 982370833 573449906 958668995 27735709 695599688 573480571 802009078 79509313 407510599 458363994 687988023 557710104 746092812 449022331 305990981 400218902 804406873 458156391 292696118 579757115 956286779 163229392 846351340 744008188 152618584 916956968 24188768 449022331 259646582 573480571 539957336 764116955 247841801 55018341 802009078 835212499 23262398 446968233 650990283 630629857 489130642 136412292 645094664 963141978 918225489 762749463 628523361 960543625 80415088 88335614 215792516 641231120 896571061 485063015 303230482 266583970 745200166 424974082 601630030 382904427 922706719 179981178 417074904 404152565 590208882 170938835 650990283 215052415 653201202 543945175 401452903 790270533 125204206 109054120 678884863 179991869 575023903 509370562 228290502 1736950 577970627 325554372 864016134 24089615 28363157 965948435 600441802 647733367 448262245 174862116 533864165 735710261 422532994 325554372 913521589 630629857 846351340 79509313 583924389 896072909 284588557 485262404 163769090 994587826 242530683 943235508 553368896 975478549 838331644 170941326 152523810 984047482 432089082 506919968 751925989 299994808 488295044 232177196 591292508 732559957 53525809 781246194 586446680 817743547 877088774 767839638 156817178 456137963 864016134 134971740 926044257 683621666 877167702 458363994 424594759 38304068 688534928 713146141 154538466 494336936 950497221 485509833 203331888 635302209 451817798 866337119 50241607 674446970 344876805 975478549 251188854 990121035 40448245 79509313 481894295 912948600 271484655 543865019 306607837 812044550 572588387 836376015 770594967 573480571 547547687 290474734 982370833 713146141 125204206 511277493 738855203 138442062 966131311 874297853 430101007 860708299 628523361 535533605 585165457 912948600 40448245 37275245 407510599 396632533 292149520 727578179 808866527 315297566 610834602 859168292 577970627 683621666 31615284 979750308 151506993 852604705 660095934 859168292 610834602 882804101 344620844 225858850 750563611 251367294 637657473 172894131 600441802 143200457 73848009 746394036 163769090 376448548 910850066 250885472 299113502 175060805 499057158 918521256 932584021 969494113 275202504 359714925 514650194 686335042 67700412 459452716 547547687 758889515 32806834 98231977 687988023 285947848 678884863 978947655 760370490 953267424 538810384 507016471 247221668 458290565 480361743 931005739 723661847 137529801 778074990 396138845 888553258 616057762 922706719 559957428 344620844 955730659 214244685 806744033 151506993 515426984 691982506 686884353 801623766 174335822 950497221 787269565 396743027 446968233 177689820 121069546 428572243 854243215 913521589 32954995 163769090 397928982 778074990 251367294 145559297 451521521 900796599 10369081 292696118 662972501 575023903 970911538 78649514 559957428 688577702 488788762 351424753 2379379 601630030 937158597 982353486 114409323 688577702 960796073 153196022 426814174 151364594 719601437 688577702 727578179 321628921 451551269 540394532 220576148 247841801 767839638 874124920 175507355 428572243 841780337 215792516 285947848 801623766 400218902 660095934 694954883 208625324 686884353 862177563 727827821 40656291 190323279 710224239 427184372 41538784 632378665 688577702 667313812 255644658 604881661 753419354 485063015 610834602 697742034 931013644 896072909 601630030 334932282 807117750 509370562 387176309 403519778 215977916 572465104 938140278 179991869 211958450 251367294 209789164 40131409 299113502 397928982 311613451 601740259 181668423 588034909 751925989 136412292 94279561 625664180 465697134 119279869 602396426 112090095 575023903 66490779 190929591 237172271 396806189 702745028 862254110 420636144 600441802 628820972 754580366 732245352 982416551 918521256 874124920 968755777 326469359 560623000 546679009 767839638 152243323 790270533 242186770 66490779 140129038 317751260 431406787 699733109 56154381 250832323 202477791 992169078 407629453 448881532 568104980 852604705 801623766 953267424 289918211 87392830 128702236 520071928 488295044 310726569 896571061 694954883 142903358 272303478 835339516 618355033 39220584 667844649 548748527 638790258 305068796 98231977 489130642 729868696 251042004 702745028 67700412 152314280 28363157 266583970 299113502 889608806 455539394 962073361 407510599 36265302 296305836 37275245 367026304 310726569 949084393 378961655 675472009 764116955 305990981 19715614 626833449 485509833 23262398 276676140 270237875 237172271 876263470 32954995 567948101 858040709 831467447 630238886 292149520 943793512 331638088 858798711 448262245 60017144 874124920 246221518 512614298 424974082 513440742 207442482 190929591 498045048 334299650 602832600 254203892 225858850 444897967 806744033 489130642 858798711 855636134 53195413 98824830 207442482 264408147 625664180 351424753 727827821 367026304 146573202 862254110 577673184 645094664 250885472 451817798 296751278 247234349 732245352 38338132 220576148 942999703 338312978 703490607 984047482 950673785 359859765 827311105 851759377 774489082 298050322 799588075 607760956 991073887 975478549 931640418 866568903 640849273 708046990 750563611 488788762 753419354 568142039 462762217 520071928 786380583 647733367 864016134 143200457 633573519 37275245 763431295 831241130 626833449 15903366 242028021 264297813 228290502 870201182 586446680 978947655 598426014 19911869 407629453 588034909 361435434 618355033 886149363 256866745 688534928 630977998 396806189 638790258 830619816 361002681 465697134 984050047 704431513 397928982 201717402 789617647 80415088 51457589 425392410 968755777 123073176 376974209 763431295 662972501 295366548 441621000 230662076 505061211 850386354 812044550 562773407 522332929 275202504 433921335 367026304 641231120 710224239 400178823 851400664 20148474 656623172 668964848 257214051 315343704 513440742 179981178 40656291 35128915 904771946 81337657 471393875 607760956 206036522 702745028 148087911 207442482 814662325 63192647 927806038 942866882 876263470 587179274 53525809 427184372 444897967 711455867 941586175 121069546 540394532 984047482 292696118 522332929 551289217 698320352 6720560 702745028 754580366 226492467 201717402 781242822 152523810 458363994 920721173 32954995 417074904 942899938 577970627 397928982 363976852 910818482 768561257 739696834 489130642 997329398 663971090 324129364 572588387 907721720 922706719 248642173 152866011 764116955 927806038 459452716 514650194 81553943 757850417 627110568 145559297 556619020 641635851 485262404 941586175 4519262 650697444 145885851 128702236 874297853 420052652 290474734 896571061 711532060 656623172 758889515 31215478 793291205 275349681 285947848 251042004 810021050 757815664 193515742 922706719 984047482 862177563 182214511 326469359 403519778 637939784 361002681 115509283 299994808 432089082 778123726 292972503 514768035 547547687 902464469 788737791 225858850 858127225 215289803 242530683 256866745 136384659 812044550 514650194 896029805 583924389 170938835 799588075 618355033 660765062 932715562 308142020 620243558 485153920 749497174 67831588 860708299 795549341 48746678 753419354 711532060 93478833 186244437 598426014 969494113 429277230 299462930 893019475 750750593 563678994 205387898 587469038 872434540 29069209 771803404 827311105 338631458 126695727 145885851 585165457 616796881 835339516 592981604 768561257 795472528 975337465 662972501 484158080 311808379 587469038 48746678 786380583 287239117 456956861 718980624 598543708 991615550 575023903 287768226 617908997 112090095 837690635 393120342 735696627 907721720 488295044 196460706 656623172 934824360 550336314 330205547 228290502 369306500 251188854 328764419 738855203 300892929 163769090 592981604 367026304 978947655 514650194 792822959 954677909 117210451 546679009 106790696 862254110 829614460 38338132 835212499 831467447 251367294 710224239 965948435 420052652 509664709 878442641 317751260 637939784 137529801 125829791 359714925 78649514 676975489 136384659 520071928 598426014 338929165 795549341 130160246 592639233 496698204 992001870 699733109 663670886 688177128 375066210 676975489 422532994 616057762 830619816 458156391 539381059 965948435 432089082 330274784 303230482 984047482 264408147 838803091 420052652 733642252 843005594 408032939 539381059 359859765 950673785 509370562 585165457 962430008 358401766 330274784 214650974 554242697 302151126 220576148 918225489 729868696 28363157 997329398 585165457 812414090 630201811 885353274 703490607 749497174 838655651 2575238 923927991 314069534 688577702 361002681 74587532 400218902 567948101 327773233 553191189 307060809 931013644 729868696 799588075 325554372 23262398 337153847 396806189 613596687 208625324 509664709 769327548 264297813 806664207 932715562 83066601 962430008 28363157 283321520 931086800 276676140 269911067 522332929 542382913 749497174 129724737 306597948 956815883 448881532 546679009 838803091 703514531 597784477 201717402 782533040 971894015 718980624 967417280 288873549 567343883 764116955 904800517 317751260 553191189 836376015 152618584 984047482 24188768 607760956 696443558 543865019 681765297 870201182 242530683 841210236 776352608 842970782 663670886 851829959 125829791 613596687 10475035 931005739 428572243 349644605 354807942 543865019 142903358 509370562 430101007 852755974 261683638 437743643 954677909 566125822 38338132 246058339 583924389 396138845 286037808 400178823 835339516 852604705 190929591 607760956 663971090 371179314 293192373 630238886 502849508 49614749 831467447 990121035 753419354 451521521 950673785 507016471 132556595 237172271 837690635 590918818 710224239 405444604 954227928 767187616 600441802 694954883 888553258 506178629 783513992 698320352 38338132 853170454 425392410 88335614 921198791 852755974 900796599 560327459 661321016 175060805 917452919 215289803 590208882 246221518 234980621 251367294 53525809 733642252 923927991 764459345 117931902 27735709 334299650 566554997 202477791 458363994 838331644 505061211 610447918 835198840 214244685 535533605 32075030 732559957 78649514 509144872 956815883 955730659 770594967 579757115 152618584 676975489 15037608 145885851 242028021 866568903 688534928 55018341 156817178 315343704 465697134 910818482 760231333 299462930 152523810 130160246 498840912 570796148 617908997 960543625 743614603 780061015 489130642 400178823 363976852 853170454 186285312 997329398 893019475 708094860 846351340 146573202 546679009 112090095 13112382 262406489 652018277 992169078 949084393 781246194 802009078 117210451 969294148 53966525 809429735 359859765 163769090 106790696 854902633 526944836 559014304 121069546 750563611 733642252 955501918 942866882 275349681 607965234 750563611 990121035 969294148 548964093 840075867 632378665 567948101 588034909 807117750 570796148 941586175 662972501 42657625 449022331 846351340 557710104 42657625 56927881 433686203 209497607 760231333 722013570 685702028 223299794 326469359 145885851 433686203 962073361 577970627 896029805 917452919 981996224 67831588 613596687 31615284 539035187 850386354 405444604 361435434 213097363 949084393 509664709 284588557 650036494 351424753 841780337 572588387 63192647 532803593 509370562 93478833 250832323 929504680 314069534 786380583 195019158 638516505 775682536 721418370 369306500 900116034 369306500 417074904 592970093 128702236 852107700 80485362 382210484 929504680 359714925 13112382 571019028 28363157 568142039 751925989 872434540 38338132 77685914 471393875 128450928 814662325 36265302 904800517 810021050 877088774 48746678 768561257 296751278 432089082 775682536 851400664 172894131 527654256 902464469 429277230 205387898 40448245 729868696 351424753 682170984 247841801 32954995 266213579 972710252 264750083 509664709 982353486 19715614 661321016 687055288 546679009 53195413 407091770 33511708 843005594 458290565 827311105 853903669 991073887 223299794 722768643 793291205 776352608 458363994 838331644 223299794 266213579 449022331 457149478 282751746 527654256 722013570 21190596 896072909 298727845 311808379 53226850 775682536 478351140 413592826 465697134 52243955 274113481 531135820 783513992 390793037 931013644 812414090 50241607 550322314 31615284 404152565 206036522 729868696 688534928 187104147 662421393 464444922 53525809 808838846 32075030 993091440 358401766 172382592 539957336 315297566 308142020 630238886 982370833 994587826 554222239 388085842 610834602 787269565 408395896 476912096 145559297 264297813 830619816 128450928 268759041 112390393 838331644 140725908 215977916 885000402 93478833 488788762 334299650 276676140 663971090 602832600 485153920 781242822 306258744 627110568 768561257 32954995 857535330 369306500 947413305 968755777 299113502 810021050 244528344 36055646 955501918 137529801 80415088 866337119 688577702 325554372 904771946 854243215 125829791 570796148 774489082 616796881 366854683 539035187 1926282 983113723 797746066 711455867 540976336 577673184 484158080 979750308 266213579 451551269 695599688 874297853 598426014 311808379 206036522 997329398 181668423 557710104 131323888 960543625 920628541 310726569 326469359 750750593 539381059 290474734 156817178 885647994 396743027 371179314 652018277 636434256 138393155 299994808 32075030 624819674 334299650 361002681 715779797 682170984 332834875 179981178 490344724 620243558 209789164 130160246 135975430 781246194 293192373 566125822 208625324 543865019 361435434 20148474 931013644 942866882 857535330 152314280 308142020 592981604 363976852 106790696 315747769 509370562 967417280 103219970 913521589 624819674 595030753 378961655 586370291 137529801 586370291 667313812 315747769 887548285 809429735 246221518 650990283 128450928 583924389 579757115 152523810 896072909 430088921 112090095 619842427 288873549 303230482 448881532 553368896 334211676 247841801 592981604 181668423 781242822 293192373 159828635 702364434 390275103 623398671 114409323 816971086 715957434 428572243 916956968 109369069 623206361 208625324 446968233 142903358 793291205 305068796 699733109 944068218 829983432 115509283 607041944 98287438 722013570 679463383 252792947 808866527 790270533 757815664 55018341 53226850 246058339 41538784 507016471 331638088 174335822 888553258 896029805 776820092 143200457 72820570 907721720 67831588 187104147 266213579 918521256 884072178 792846009 128702236 175507355 464130920 272303478 513440742 694954883 893019475 369306500 801623766 582273012 21190596 53195413 886149363 174862116 290117216 938705675 138393155 382904427 13112382 902464469 109369069 27735709 653201202 327773233 142903358 390793037 261683638 349644605 322974842 888259120 422532994 836376015 259646582 602832600 268759041 506919968 807117750 337153847 125829791 916956968 653201202 708053570 6720560 767187616 860477160 78775552 304621545 632378665 125204206 159828635 567948101 225771141 855636134 337153847 77819776 812414090 125204206 155241439 687988023 767187616 457149478 485509833 21190596 311808379 465697134 806792339 251042004 117210451 512614298 272303478 771321738 55108095 539381059 35128915 457149478 390793037 181668423 51457589 255644658 369306500 681930584 874297853 430284321 20148474 278160655 885647994 681930584 972710252 247234349 775682536 430284321 698320352 946916156 983373150 328462418 449022331 50241607 330205547 660765062 288873549 610447918 79523589 920628541 623206361 610834602 972710252 214650974 264297813 430101007 582273012 23262398 400218902 123073176 590918818 675472009 667844649 407629453 829983432 563678994 266583970 641635851 994587826 424594759 179981178 162062292 940381563 354807942 566125822 760231333 616057762 215774690 970320952 98824830 682170984 306258744 247822207 630201811 511277493 926045944 978947655 1926282 543945175 721418370 403519778 816971086 287768226 15037608 758889515 751925989 400178823 174140940 103219970 876263470 287768226 854902633 248642173 293192373 907721720 444897967 997329398 626932919 514768035 553368896 449022331 511330454 963141978 259646582 196460706 203331888 918521256 321628921 458290565 722768643 290474734 151506993 324129364 763431295 159828635 103669472 686335042 275349681 441621000 944068218 143200457 247006479 170941326 814662325 509370562 215774690 943235508 946916156 256866745 799588075 315297566 135975430 662972501 619842427 128450928 195957995 737945381 363976852 932715562 619842427 858798711 387176309 446968233 103733806 290474734 575895835 485063015 931086800 298050322 922706719 498045048 979740237 327773233 488295044 505061211 478351140 376448548 193648030 831241130 630201811 776835194 598543708 812414090 920721173 313272965 28363157 616057762 857535330 638790258 532803593 667313812 31215478 172382592 407629453 397928982 814662325 313272965 451817798 587179274 247841801 498045048 40656291 387703244 824770361 2076768 548748527 667313812 251042004 851759377 511330454 325554372 286037808 749497174 687988023 509144872 745200166 296751278 186285312 426814174 203331888 650036494 396050095 328764419 917795074 330205547 911302173 300892929 982353486 960543625 219054502 507016471 129724737 888259120 660765062 548964093 598543708 629101079 598543708 36055646 215981255 788118407 56154381 251367294 994877696 800460688 710224239 771803404 763431295 394791153 630201811 307403622 803588261 522663253 142903358 382904427 214650974 993091440 80415088 842970782 412979540 557710104 82689280 437743643 776352608 970320952 31615284 328764419 723661847 359859765 183440003 810021050 24188768 806792339 542382913 910818482 344876805 835198840 21190596 509144872 592639233 213097363 587469038 464444922 585165457 746394036 489612980 771803404 637939784 2575238 702364434 882804101 778074990 889608806 455539394 539035187 304621545 629101079 532803593 627110568 430284321 387703244 306258744 806744033 763431295 810021050 358401766 647733367 929504680 162904272 498840912 587179274 56154381 750750593 23262398 531135820 663670886 390275103 878442641 172382592 795549341 324986193 685702028 618355033 93651148 360743135 271484655 638790258 286037808 338631458 816971086 338929165 125829791 79509313 328462418 589760538 304621545 485509833 431406787 698320352 922858580 750750593 923927991 413592826 214244685 795472528 154538466 186244437 953882020 592981604 592639233 170941326 488295044 251367294 808866527 577673184 691982506 860708299 152618584 117210451 308142020 506919968 575895835 960796073 630201811 556619020 151364594 882804101 125829791 616057762 540394532 708046990 32075030 812414090 735696627 978947655 637657473 136412292 193648030 613596687 600441802 376448548 843005594 676975489 462762217 592970093 24188768 560623000 546679009 808614164 73848009 767187616 145559297 557710104 42657625 780061015 538810384 19715614 577970627 975478549 28363157 485509833 244528344 983113723 50241607 571019028 562773407 195019158 38338132 632378665 138393155 324986193 465697134 853170454 748408317 995876182 129724737 420636144 748408317 87392830 862177563 978947655 202477791 531333917 344620844 762749463 259646582 458290565 953882020 781246194 292696118 246221518 489612980 315297566 40656291 965948435 305068796 726950461 598426014 507016471 637769046 786320493 489612980 543865019 966131311 907721720 877088774 218611070 94279561 215289803 538025980 264100442 99294732 996943901 135975430 324986193 814295984 264297813 295606018 981996224 455539394 488788762 299113502 667313812 40656291 686335042 422532994 424974082 554222239 29473993 703514531 781246194 512614298 24089615 152866011 944573659 247841801 209497607 480361743 912948600 650697444 146573202 546679009 852755974 292149520 138442062 778074990 88335614 109369069 729868696 553191189 396937914 38338132 382904427 809429735 400218902 211958450 167276070 770993588 733642252 563678994 515426984 567948101 604181881 688577702 223299794 292696118 387703244 860377902 852107700 994877696 458156391 638516505 485509833 49317804 592981604 884072178 835212499 274113481 989729323 650990283 35128915 375066210 932715562 80485362 68748842 637657473 516175014 151506993 882804101 922858580 732559957 979740237 792822959 518384931 186244437 944068218 689757867 663971090 546141085 396050095 668964848 886917295 841780337 539381059 638790258 163769090 971549242 29069209 635302209 971894015 699733109 929504680 382210484 275202504 317751260 936312210 47529701 540394532 850484222 264750083 145885851 284588557 324986193 923927991 505061211 807117750 686335042 840075867 334211676 186285312 858040709 900116034 991615550 181668423 310726569 103733806 683621666 562773407 317751260 628523361 299994808 688534928 49614749 920721173 119279869 77819776 638790258 679463383 251367294 201717402 573480571 604968568 371179314 674485068 940381563 678884863 942899938 601630030 81553943 846351340 498045048 492009082 776835194 803588261 327773233 563678994 527595027 885995802 620243558 322974842 831380531 900116034 485509833 6720560 172894131 183440003 186244437 921198791 566125822 269911067 205387898 806664207 87392830 991073887 746394036 126695727 81553943 809429735 835212499 888699423 683621666 704431513 786320493 660765062 571019028 705548145 49614749 888699423 2379379 321628921 250832323 743614603 98231977 585165457 968755777 254203892 56927881 835339516 571019028 154538466 310726569 633587956 795472528 538810384 698320352 851400664 566125822 969294148 495854210 136384659 494336936 303230482 713146141 78649514 841780337 967417280 711532060 430284321 505061211 484158080 19715614 610834602 225771141 936312210 264100442 661321016 604881661 874124920 223299794 931640418 543865019 710224239 775682536 896571061 767187616 513440742 396632533 637939784 172894131 489612980 170938835 1926282 207442482 652018277 509144872 743614603 349644605 591292508 841210236 214650974 509144872 736624310 842970782 433686203 889608806 538810384 581831913 900796599 992169078 927806038 456137963 117931902 60017144 807117750 762749463 918225489 516175014 885549757 314069534 284588557 775682536 979740237 179991869 719307635 548964093 795549341 607041944 344876805 220576148 56154381 20148474 431406787 174335822 80485362 810021050 633587956 667313812 145559297 213097363 637939784 727827821 13112382 287768226 128188331 689757867 28363157 272303478 332834875 978947655 617908997 907721720 913521589 787269565 375066210 159828635 705304879 793291205 420052652 588034909 850386354 60017144 255644658 556619020 430284321 49614749 538025980 994587826 32075030 754133002 786380583 371179314 858127225 960543625 568104980 296751278 152866011 462394151 514650194 667313812 275202504 938456692 408395896 36055646 803588261 215052415 770594967 24089615 746992914 27735709 532803593 179991869 958668995 601740259 72820570 726950461 592639233 942866882 760370490 170941326 140129038 458363994 587469038 218611070 255644658 613596687 824770361 527595027 254203892 852755974 511330454 632378665 850386354 145885851 932584021 400218902 152618584 885000402 923927991 627110568 705304879 19715614 47290536 650036494 78649514 713146141 824770361 792846009 115509283 514768035 975337465 511277493 424594759 918521256 457149478 887548285 831467447 390275103 586370291 382210484 738855203 511277493 251042004 854243215 271484655 853170454 956286779 771803404 887794841 969494113 982416551 49948206 247006479 262406489 299113502 625664180 471393875 885353274 219054502 403519778 481894295 155241439 553368896 79509313 151364594 478892468 709613471 938456692 740882715 872434540 430101007 390275103 637657473 451551269 109369069 775682536 40448245 195019158 211958450 334211676 50241607 405444604 886149363 781246194 885995802 708053570 548748527 77685914 780870754 404152565 700560235 248642173 705548145 560327459 876263470 121069546 115509283 509019925 942999703 896072909 136384659 404152565 940188502 889608806 703514531 582273012 123073176 49614749 645094664 656191811 47290536 955730659 203331888 51457589 824770361 735891721 302151126 829983432 266213579 761330904 430284321 965948435 21190596 128450928 321628921 577673184 864016134 667313812 736624310 237172271 626833449 735710261 284588557 627110568 82689280 852755974 448262245 767839638 735696627 40131409 244528344 806744033 681765297 282751746 1926282 24089615 857535330 995876182 563678994 590918818 72820570 852604705 738855203 399037712 969294148 443960759 424594759 505061211 757850417 246058339 721418370 223299794 751925989 458156391 154538466 543945175 49317804 507016471 547547687 300892929 358401766 49948206 136384659 960543625 886149363 325554372 770864525 613596687 93478833 889608806 154538466 114409323 770864525 546141085 705304879 262406489 855636134 174335822 125829791 817743547 41538784 940381563 587469038 250749017 568104980 393120342 743614603 424974082 637657473 27735709 438183310 359859765 358401766 931005739 242186770 630238886 956815883 667844649 49317804 776835194 628523361 990121035 703514531 369306500 955501918 726950461 131323888 170938835 488295044 836376015 592639233 870201182 553191189 1736950 610447918 408032939 247221668 159828635 679463383 991615550 251188854 337153847 652018277 870201182 135975430 990121035 971894015 507016471 387176309 812044550 538810384 735710261 992001870 604181881 215977916 371179314 776352608 978947655 261683638 749497174 617908997 607965234 601630030 616796881 242186770 282751746 234980621 630629857 949084393 359714925 941586175 625664180 344876805 854243215 154538466 134801439 129724737 195019158 432089082 138442062 598543708 632378665 802009078 577673184 864016134 252962990 190979155 793291205 773781000 884952974 830619816 934824360 740340897 996943901 251188854 571019028 485153920 646710523 31215478 427184372 681765297 852755974 444897967 396937914 854902633 531333917 417074904 787269565 533455280 307060809 971894015 226492467 783513992 942899938 210621083 607760956 860377902 437743643 480361743 859168292 512614298 842970782 289736829 674446970 660765062 852604705 542382913 352092606 53525809 744008188 567948101 179991869 864016134 400218902 135975430 155241439 334299650 559957428 885549757 629101079 814662325 616796881 795549341 413592826 278160655 79509313 855636134 55108095 640925332 195019158 938140278 387703244 740882715 702745028 688534928 509664709 628523361 40131409 567774282 7807006 803588261 24089615 918225489 296751278 770594967 592981604 575023903 29473993 922858580 2379379 286037808 744008188 570764323 225771141 681930584 506178629 931013644 702745028 67700412 179991869 630201811 478892468 457149478 140725908 53226850 359859765 305990981 829614460 430088921 458363994 177689820 103219970 587469038 566554997 321628921 249820698 190979155 37275245 971894015 870201182 814662325 831380531 638516505 559957428 888699423 667313812 407629453 330274784 502849508 182214511 407510599 853903669 367026304 511277493 28363157 2575238 640925332 604881661 546679009 397928982 884059813 664041213 29069209 737945381 746992914 134801439 944068218 964902255 298727845 841210236 917452919 604181881 363976852 630629857 637657473 307403622 129724737 934824360 6720560 965948435 773781000 870201182 375066210 939725993 6720560 885000402 101231409 607041944 481894295 978947655 626932919 119279869 140129038 334932282 843005594 891279504 244528344 49614749 465697134 195733178 254203892 943235508 679463383 218611070 56154381 338929165 936312210 246221518 264408147 902464469 803588261 838803091 954677909 831241130 275349681 420636144 975337465 237172271 131323888 37275245 13112382 10369081 322974842 944573659 991073887 33511708 591292508 943235508 674485068 246058339 745200166 522332929 214244685 566125822 162062292 750978759 237389399 963141978 991073887 283321520 228290502 852107700 778074990 539035187 525347105 970320952 942999703 607041944 74587532 307060809 982353486 630629857 152243323 128450928 932584021 795472528 592639233 885000402 152618584 359714925 958668995 628820972 56154381 737945381 264750083 285947848 40448245 81337657 306607837 727245017 465759767 250885472 858127225 2575238 750563611 140725908 266213579 866337119 234980621 884952974 230662076 943793512 433686203 885353274 152243323 708046990 950673785 248642173 354807942 248642173 264750083 307060809 877088774 568142039 710224239 812414090 512614298 979750308 153196022 995876182 407091770 939725993 780870754 727578179 126695727 49614749 331638088 942866882 93478833 451521521 98287438 836376015 660765062 817743547 195957995 831241130 32075030 688177128 425392410 568142039 926044257 940381563 966131311 787269565 654830523 907095826 438183310 983113723 653201202 852604705 691982506 543865019 776820092 251367294 142903358 404152565 886917295 288072509 40448245 812044550 67700412 458156391 547547687 543945175 247841801 298050322 619842427 426814174 662421393 566125822 420052652 264297813 654830523 938705675 956815883 459617527 913521589 330274784 533864165 981996224 308142020 635302209 60750487 543945175 306258744 539035187 567948101 55018341 966683628 520071928 103733806 960543625 618542887 697742034 451817798 607760956 177689820 464444922 354807942 246058339 64420967 405444604 831467447 55018341 275202504 130160246 954677909 225771141 64420967 896029805 50241607 737945381 138393155 531135820 640849273 426814174 331638088 812044550 129724737 573449906 242028021 592970093 266213579 758889515 736624310 463496366 396743027 315297566 444897967 311808379 511330454 256866745 575023903 145885851 969294148 902464469 660765062 937158597 290117216 629101079 484158080 842970782 695599688 711532060 808866527 934824360 15037608 396937914 215774690 602832600 600441802 36265302 946916156 207844781 56154381 573480571 525347105 687055288 598543708 852755974 186285312 616057762 575023903 388085842 563678994 678474526 292972503 850484222 193648030 727245017 31215478 388085842 266213579 573449906 354807942 702745028 570764323 495854210 626932919 560623000 444897967 128450928 814662325 646710523 41538784 694954883 153196022 767839638 956815883 390793037 801623766 390275103 32075030 613596687 306607837 81337657 592639233 285947848 824770361 969494113 940188502 220576148 296305836 589760538 190979155 515426984 679463383 215052415 115090276 155241439 551289217 896029805 769327548 117210451 425392410 163229392 480361743 10369081 603931167 433921335 600441802 546141085 900116034 566125822 640925332 940381563 953882020 719601437 488295044 485509833 949084393 995876182 942999703 334211676 332834875 382210484 632402794 190323279 375066210 853170454 99294732 872434540 956286779 15903366 295366548 393120342 242186770 835212499 679463383 193515742 264408147 870201182 886917295 264100442 128702236 646710523 887794841 175060805 28363157 378961655 736237188 732559957 663670886 708094860 926045944 330205547 572588387 735891721 290117216 960543625 575895835 888259120 553191189 38085353 334299650 573449906 650697444 979750308 950497221 543945175 921198791 789617647 67700412 165821462 396050095 485063015 927806038 485509833 295606018 786320493 567343883 399037712 927806038 451521521 498840912 207442482 743614603 456137963 695599688 172382592 60750487 923715439 420052652 938080232 816971086 758889515 39220584 934824360 242530683 300892929 296305836 527595027 215774690 338312978 247841801 656191811 214244685 314069534 678884863 459617527 257214051 866337119 128188331 687055288 145559297 60017144 162062292 969494113 927806038 750750593 80485362 711455867 617908997 112390393 269911067 884952974 991073887 55108095 78649514 836376015 843005594 624819674 462762217 554242697 688577702 838803091 41538784 328764419 132556595 485509833 23973553 806792339 632402794 727578179 753419354 726950461 886149363 515426984 650697444 266583970 407091770 458363994 94279561 764459345 489130642 841210236 554222239 49614749 768561257 112390393 354807942 539035187 47290536 739696834 918225489 991615550 942999703 79523589 814662325 252962990 632014852 382210484 956815883 446968233 931086800 121069546 920721173 579757115 923927991 285947848 878442641 256866745 457149478 359859765 484158080 674446970 298727845 581831913 29069209 582273012 874124920 315343704 53226850 778123726 773781000 49948206 128188331 727827821 208625324 337153847 539957336 63192647 840075867 912948600 296305836 975478549 183440003 592970093 538810384 568142039 480361743 32954995 115090276 160287690 49317804 860708299 953882020 427184372 354807942 38304068 103733806 971549242 93651148 817743547 754580366 629101079 481894295 975478549 855636134 989729323 586446680 241184545 247006479 668964848 545538425 53195413 60750487 509144872 851400664 119279869 938140278 812044550 60750487 495854210 735696627 196460706 29069209 667313812 760370490 662972501 533455280 464444922 623398671 338929165 332834875 338312978 953882020 327773233 215774690 342116147 126695727 581831913 770993588 179991869 38338132 509144872 763431295 264297813 305990981 337153847 721418370 397928982 969294148 592981604 465697134 874297853 533455280 806744033 40448245 683621666 628523361 616057762 575895835 638790258 201717402 359714925 242028021 664041213 982353486 589760538 181668423 708046990 843005594 885353274 498840912 390793037 525347105 193515742 538025980 53966525 640925332 776835194 117931902 397928982 151506993 287239117 688577702 252792947 31215478 566125822 255644658 676975489 306607837 925555858 567948101 476912096 703490607 288873549 152618584 972710252 768561257 376448548 548748527 938705675 765027062 299462930 840075867 810021050 770864525 866568903 492009082 812044550 598543708 427184372 705304879 708053570 292696118 324986193 367026304 165821462 695599688 106790696 358401766 971549242 247234349 667844649 721418370 334211676 994877696 79509313 438183310 264100442 586446680 589760538 602396426 852755974 585165457 579757115 877167702 160287690 678884863 531333917 770594967 964902255 290117216 330205547 78649514 815123402 920628541 213097363 286037808 721769014 884072178 559957428 917452919 134801439 93651148 218611070 292972503 548964093 769327548 325554372 824770361 858040709 550336314 866337119 858127225 1736950 94279561 325554372 610834602 573480571 638516505 778123726 428572243 607965234 292696118 207442482 754580366 664041213 583924389 476912096 918225489 531333917 115509283 172894131 563678994 37275245 471393875 437743643 913521589 627110568 966683628 306597948 553368896 589760538 695599688 458290565 971894015 942866882 148087911 241184545 661321016 613596687 738855203 458156391 129724737 630629857 691982506 838803091 710224239 806744033 154538466 835198840 946612927 983373150 814295984 56927881 259646582 758889515 575023903 405444604 32075030 979750308 448262245 781242822 40448245 810021050 407510599 317751260 572588387 140551765 877167702 732245352 174140940 662972501 31615284 592970093 626932919 859168292 947413305 851829959 488295044 636434256 738855203 56927881 145559297 218611070 632402794 557710104 838331644 175507355 244528344 990121035 219054502 896029805 946916156 488788762 462762217 396632533 123073176 266583970 886917295 758889515 630775839 686884353 257214051 624819674 24188768 225858850 539381059 678474526 765027062 831241130 430101007 994587826 877167702 190323279 575023903 990121035 286037808 119279869 878442641 646710523 750563611 995876182 29069209 38085353 31615284 581831913 234980621 403519778 77819776 630238886 67700412 160287690 214650974 170941326 837690635 172382592 154538466 247822207 103733806 327773233 211958450 81553943 98287438 215289803 547547687 77685914 704431513 20148474 888699423 109054120 757850417 889608806 876868627 983373150 750563611 38085353 753419354 699230813 814662325 175060805 926044257 588034909 308142020 349644605 154538466 137529801 927806038 182214511 598426014 315343704 412979540 27735709 626833449 624819674 715779797 842970782 242028021 918521256 860477160 726950461 610447918 884952974 956286779 601740259 407629453 556619020 93478833 327773233 854969794 780061015 882364001 764459345 290117216 413592826 982353486 592981604 840130613 874297853 430088921 764459345 408395896 968755777 723661847 256866745 547547687 328764419 760370490 172894131 710224239 509019925 803588261 526944836 703490607 459452716 886917295 683621666 255644658 573480571 503666498 630238886 498840912 860708299 244528344 167276070 601630030 771803404 412979540 757709512 532803593 636434256 271484655 32954995 193648030 112390393 570764323 250885472 261683638 287768226 855636134 983373150 422532994 735710261 765027062 390275103 269911067 55108095 93478833 656191811 886917295 143200457 303230482 566554997 133739154 324129364 610834602 175060805 660765062 995876182 31615284 175507355 650697444 299462930 214650974 246221518 99294732 353964006 780870754 324986193 955501918 342116147 913521589 272303478 917795074 299462930 776352608 812414090 103669472 170941326 513440742 590918818 183440003 160287690 465759767 5299425 645094664 306597948 511330454 175060805 678884863 697742034 38844979 136412292 876263470 209497607 264408147 573480571 656623172 757709512 289736829 307060809 138393155 353964006 117931902 215289803 290117216 953267424 757850417 858798711 429277230 646710523 723661847 334211676 247221668 737945381 430101007 433921335 662421393 852755974 780870754 722013570 681765297 989729323 23973553 378961655 687988023 836376015 840075867 996943901 877088774 829614460 234980621 641231120 736624310 179991869 931640418 588034909 626833449 860708299 103733806 310726569 152243323 437743643 778074990 342116147 145559297 932715562 804406873 38304068 816971086 932715562 722768643 338929165 913521589 393120342 481894295 711455867 637939784 726950461 896571061 190323279 499057158 352092606 540976336 24089615 156817178 182214511 754580366 485509833 28363157 53195413 156817178 51457589 98824830 19715614 490344724 940381563 626932919 841780337 32806834 313272965 932584021 735710261 78649514 718980624 577970627 396937914 743614603 174335822 774489082 866568903 760370490 715957434 632402794 507016471 56154381 175060805 886917295 761330904 344620844 475344103 885549757 989729323 641635851 979750308 700560235 5299425 489130642 851759377 602396426 307060809 886917295 349076114 769327548 315343704 917795074 266583970 481894295 746394036 705304879 498045048 60750487 378961655 237389399 136412292 546679009 19715614 401452903 592970093 101231409 458290565 83066601 420636144 289918211 726950461 955501918 581831913 420052652 676975489 50241607 662972501 270237875 983373150 896571061 916956968 190929591 505061211 675472009 732559957 678884863 623206361 645094664 190323279 774489082 708094860 131323888 32954995 103669472 699230813 770993588 300892929 451817798 739696834 770864525 338312978 457149478 338929165 554222239 859168292 293192373 2575238 153196022 509144872 42657625 713146141 601630030 689757867 862177563 47349911 710224239 940381563 915330573 968670974 920721173 587179274 746092812 577673184 206036522 852604705 886149363 570796148 186285312 592970093 430088921 330274784 763431295 47529701 259646582 667844649 992001870 708094860 630201811 664041213 797746066 629101079 511330454 788118407 926045944 931005739 78649514 307403622 547547687 938705675 562773407 106790696 967417280 758889515 774489082 413592826 645094664 159828635 641635851 225771141 840075867 458363994 304621545 885647994 551289217 711455867 570764323 711532060 721418370 729868696 289736829 505061211 31215478 207442482 32806834 250832323 797746066 478892468 471393875 478892468 259646582 488788762 931966477 568142039 538810384 98231977 886149363 187104147 678884863 979750308 23262398 371179314 661321016 923715439 982416551 459617527 433686203 37275245 295366548 5299425 254203892 786320493 885995802 456137963 938140278 573480571 56154381 49614749 797746066 699733109 685702028 778123726 920721173 426814174 854902633 589760538 704431513 733642252 210621083 225771141 904800517 896072909 795549341 334932282 966131311 264297813 215792516 443960759 196106606 978947655 610834602 459452716 502849508 812044550 721418370 264297813 603931167 559957428 715779797 597784477 572588387 207442482 98824830 727827821 888553258 179991869 738855203 264297813 703514531 896029805 177689820 942899938 628523361 36265302 98287438 850484222 484158080 226492467 637769046 29473993 674485068 960796073 797746066 526944836 6720560 764459345 681930584 215052415 994877696 106790696 28363157 968670974 917795074 360743135 743614603 330205547 499057158 112390393 152243323 81553943 944068218 66490779 982416551 55108095 992001870 688177128 795549341 554242697 289736829 246221518 67831588 387703244 478351140 145885851 740340897 727827821 641635851 764459345 396806189 983113723 465759767 459617527 678884863 307403622 650990283 446968233 485153920 205387898 855636134 836376015 247841801 938456692 802009078 509019925 23973553 213097363 630775839 63192647 115090276 674446970 308142020 36055646 242028021 509019925 882364001 582273012 31615284 963141978 242028021 360743135 228290502 831241130 816971086 314069534 56154381 172382592 807117750 485262404 603931167 539035187 38844979 87392830 290117216 556619020 824770361 831241130 39220584 276676140 660765062 522663253 242530683 978947655 331638088 835198840 628523361 733642252 637769046 314069534 274113481 209497607 41538784 66490779 290117216 298050322 540976336 187104147 53226850 522663253 471393875 506178629 746992914 225771141 619842427 103219970 489130642 288072509 211958450 247822207 215981255 938705675 125204206 686884353 904800517 299462930 857535330 589760538 674485068 968670974 328462418 193515742 67700412 462394151 242530683 446968233 117931902 495854210 99294732 140725908 151506993 36265302 140129038 800460688 799588075 256866745 6720560 443960759 953882020 306597948 10475035 624819674 738612855 526944836 807117750 852604705 862177563 252792947 296305836 806792339 183440003 996943901 156817178 225771141 806664207 641231120 946612927 667313812 264408147 310726569 953882020 806744033 152523810 859168292 645094664 509144872 464130920 298050322 854902633 2379379 840075867 134971740 420052652 437743643 190929591 109054120 215977916 1736950 920721173 193515742 74587532 978947655 152243323 726950461 432089082 727578179 42657625 887548285 663971090 852755974 769327548 138442062 296305836 7807006 408395896 721769014 799588075 205387898 632402794 81337657 770993588 858040709 721418370 68748842 709613471 334211676 586370291 252962990 955501918 942899938 251188854 285947848 41538784 196460706 953882020 699230813 760231333 806792339 29069209 829614460 82689280 162904272 334299650 767839638 109369069 20148474 799588075 733642252 855636134 119279869 763431295 174862116 936312210 750978759 387176309 776835194 709613471 992169078 39220584 264297813 98287438 638790258 331638088 884952974 854902633 424974082 746992914 495854210 332834875 327773233 498840912 592970093 525347105 749497174 591292508 359714925 32075030 382210484 674485068 628820972 128702236 250832323 242186770 15903366 931086800 106790696 854969794 213097363 971894015 786320493 595030753 918521256 874124920 47349911 53226850 616057762 464130920 635302209 559014304 607965234 284588557 179991869 878442641 2379379 921198791 174335822 567343883 7807006 525347105 618355033 623398671 539035187 751925989 718980624 261683638 382210484 328462418 829983432 982370833 509144872 770594967 630629857 721418370 792846009 942999703 812414090 214650974 852755974 776820092 174862116 967417280 708046990 518384931 940381563 80485362 338312978 904771946 207442482 457149478 618355033 181668423 55108095 538810384 754133002 117931902 353964006 332834875 526944836 994877696 136412292 56154381 543945175 321628921 851759377 40656291 378961655 830619816 393120342 562773407 213097363 488295044 641231120 145559297 140551765 99294732 810021050 38338132 629101079 773781000 282751746 518384931 708053570 484158080 592981604 617908997 699230813 770594967 47349911 23973553 338312978 138393155 478892468 583924389 459617527 603931167 885353274 604968568 962073361 43970470 298050322 862177563 757709512 808866527 338631458 581063820 721769014 145559297 276676140 115509283 531135820 735696627 526944836 949084393 787269565 275349681 592981604 760231333 48746678 93478833 237172271 492009082 226492467 24188768 912948600 471393875 237172271 801623766 983373150 326469359 775682536 950497221 310726569 268759041 589760538 575023903 448881532 78649514 33511708 913521589 313272965 921198791 750978759 760370490 790270533 735696627 159828635 806664207 546141085 601630030 63192647 932584021 808838846 617908997 190323279 53226850 767839638 448262245 762749463 704431513 441621000 838655651 688177128 626833449 433921335 128188331 792846009 683406807 992169078 780870754 140551765 915330573 910818482 637769046 566554997 738612855 300892929 570764323 170938835 807117750 960796073 206036522 437743643 64420967 49614749 746992914 215052415 292149520 602832600 67700412 683621666 938140278 338312978 142903358 771803404 931013644 889608806 540976336 896072909 290117216 995876182 687988023 589760538 575895835 98231977 181668423 806792339 190979155 195733178 760231333 992169078 303230482 300892929 567343883 674446970 641635851 962073361 278160655 931005739 562773407 762749463 328462418 888259120 152866011 676975489 540976336 288873549 854969794 854243215 740882715 63192647 489612980 459617527 575895835 885353274 904800517 841210236 396743027 48746678 247234349 296751278 545538425 266583970 780870754 264297813 247234349 560623000 125829791 337153847 140129038 682170984 138393155 48746678 363976852 494336936 209789164 237172271 705304879 162904272 151506993 686884353 750563611 573480571 851400664 400218902 154538466 686884353 568104980 317751260 598543708 138442062 305990981 852604705 575895835 256866745 269911067 247822207 572588387 676975489 923927991 782533040 966683628 939725993 969294148 938456692 471393875 852755974 927806038 570796148 331638088 808614164 464130920 299462930 407091770 165821462 60750487 852107700 546679009 256866745 10475035 559957428 540976336 735710261 753419354 940381563 430101007 939725993 1926282 285947848 74587532 872434540 618542887 78775552 326469359 592970093 80415088 213097363 929504680 719601437 152243323 390275103 408395896 382210484 946916156 485509833 322974842 307060809 567948101 632378665 590208882 190323279 577970627 994587826 498840912 452156279 94279561 49948206 1926282 47349911 499057158 272303478 215774690 570796148 991073887 758889515 799588075 359714925 334299650 997329398 966683628 554242697 850386354 697742034 926045944 232177196 351424753 424974082 683406807 971549242 601630030 408032939 78649514 405444604 295366548 170941326 570764323 792822959 619842427 175507355 683406807 682170984 554222239 764116955 299113502 641231120 60750487 991615550 254203892 686884353 808866527 938705675 950673785 49614749 809429735 531333917 946916156 687055288 950673785 299462930 117931902 315343704 247006479 325554372 407510599 175507355 190979155 885353274 586370291 81553943 719307635 162904272 540394532 571019028 367026304 628820972 603931167 835198840 917452919 170941326 13112382 146573202 295606018 207442482 247221668 2379379 911302173 884952974 98824830 623206361 687988023 582273012 303230482 248642173 296305836 630629857 302151126 944573659 769327548 968755777 215774690 939725993 456956861 557710104 292696118 53195413 801623766 568142039 590208882 327773233 735696627 505061211 208625324 494336936 900796599 780061015 148087911 682170984 242028021 806792339 546679009 963141978 632014852 923715439 471393875 485262404 47290536 925555858 193648030 172894131 485153920 916956968 247221668 932715562 251188854 315343704 527654256 762749463 771321738 300892929 15037608 51457589 597206610 485262404 920721173 870201182 770864525 103219970 735696627 456137963 940188502 841780337 910850066 136412292 489612980 88335614 322974842 750978759 28363157 925555858 485153920 808614164 29069209 143200457 942999703 393120342 432089082 715957434 803588261 787269565 967417280 40131409 462762217 207844781 947413305 688177128 877088774 566125822 152523810 314069534 201717402 636434256 691982506 209497607 480361743 882804101 645094664 342116147 275349681 134971740 640849273 360743135 581063820 566554997 321628921 352092606 305990981 290474734 877167702 588034909 128702236 546141085 632402794 338631458 862254110 683621666 568104980 577673184 396806189 572465104 344620844 2076768 328462418 630629857 492009082 817743547 358401766 762749463 776352608 932715562 533455280 19715614 412979540 912948600 455539394 215289803 512614298 330205547 956286779 699230813 610834602 241184545 538025980 686335042 234980621 964902255 289918211 984050047 422532994 539035187 888699423 146573202 751925989 570796148 917795074 983113723 638516505 713146141 702364434 443960759 944068218 313272965 512614298 299994808 637939784 315343704 695599688 396632533 922706719 970911538 183440003 582273012 572588387 983373150 480361743 616796881 247006479 376974209 6720560 979750308 396050095 396632533 653201202 19911869 628523361 764459345 920721173 338312978 982353486 764459345 751925989 306597948 838655651 400218902 703514531 850484222 275202504 646710523 567343883 568142039 64420967 68748842 804406873 337153847 860477160 989729323 43970470 789617647 502849508 546141085 740340897 334932282 344620844 694954883 753419354 548964093 804406873 971549242 630775839 786320493 840075867 448881532 128702236 953267424 748408317 328764419 15037608 711532060 331638088 962073361 186285312 535533605 835339516 38304068 296305836 55108095 228290502 630977998 982370833 854243215 770993588 63192647 503666498 829983432 305068796 220576148 292972503 581831913 745200166 795472528 757815664 531135820 83066601 310726569 773781000 737945381 136384659 330274784 575895835 464444922 640849273 36265302 886149363 251367294 923927991 968670974 247841801 68748842 268759041 835212499 129724737 962430008 77819776 87392830 430284321 53195413 926044257 47529701 751925989 842970782 630775839 838803091 247841801 912948600 432089082 393120342 637939784 733642252 306258744 735710261 412979540 991615550 854902633 884952974 228290502 993091440 303230482 686335042 753419354 737945381 428572243 664041213 152523810 559957428 770864525 32954995 773781000 4519262 228290502 352092606 78649514 589760538 548748527 531135820 681765297 831241130 430088921 853903669 15037608 288873549 663971090 789617647 816971086 527595027 768561257 746394036 77819776 727245017 949084393 250749017 407629453 810021050 776352608 413592826 125829791 560623000 125204206 408032939 855636134 5299425 432089082 969494113 539381059 462394151 428572243 376448548 209789164 938705675 492009082 713146141 193648030 338631458 103733806 315297566 838655651 167276070 145559297 527595027 992001870 841780337 23973553 815123402 23262398 776835194 266213579 746394036 408395896 325554372 709613471 451521521 860377902 758889515 877088774 509019925 53525809 186244437 351424753 778123726 308142020 964902255 854902633 787269565 803588261 334932282 688577702 761330904 685702028 334932282 568104980 698320352 53525809 630629857 289736829 175507355 471393875 732559957 586446680 592981604 289918211 577673184 966131311 997329398 575023903 371179314 862177563 686335042 632402794 938705675 174140940 989729323 126695727 282751746 527654256 925555858 140129038 298050322 757850417 582273012 630201811 613596687 705548145 559957428 824770361 314069534 904771946 427184372 80415088 624819674 577970627 314069534 462762217 573480571 687988023 250832323 156817178 607965234 13112382 587179274 592639233 2076768 938140278 806792339 93478833 172894131 206036522 902464469 982353486 983113723 954677909 140551765 489130642 140551765 275349681 314069534 687988023 597784477 43970470 485262404 626932919 990121035 920628541 990121035 128702236 750750593 295606018 338631458 152523810 250885472 293192373 507016471 958668995 463496366 992001870 143200457 292149520 989729323 770864525 48746678 967417280 485262404 765027062 307060809 893019475 632378665 140129038 971549242 203331888 592981604 991073887 337153847 422532994 106790696 851400664 579757115 242028021 2575238 745200166 207844781 344876805 121069546 292696118 315297566 407510599 371179314 295366548 715957434 562773407 462394151 864016134 592981604 533455280 509019925 109369069 566554997 590208882 220576148 637939784 397928982 878442641 287768226 444897967 267829614 638516505 109054120 788737791 143200457 763431295 87392830 888553258 35128915 387176309 613596687 769327548 965948435 244528344 170938835 803588261 223299794 481894295 882804101 846351340 990121035 723661847 786320493 308142020 838803091 154538466 522663253 115090276 698320352 151364594 916956968 499057158 907095826 551289217 925555858 683406807 771803404 661321016 835198840 527654256 858040709 428572243 165821462 148087911 130160246 539381059 288873549 152523810 866337119 462762217 175507355 688534928 889608806 363976852 560623000 215977916 539035187 885995802 667313812 257214051 793291205 302151126 668964848 876868627 907721720 261683638 463496366 328462418 485509833 153196022 119279869 966683628 63192647 554222239 699230813 302151126 560327459 38844979 808614164 950673785 60017144 604968568 812044550 553368896 762749463 595030753 109054120 809429735 405444604 757850417 349076114 746092812 276676140 268759041 810021050 882364001 338929165 770864525 687055288 721418370 885000402 94279561 506919968 630201811 506178629 918225489 607760956 950673785 996943901 254203892 220576148 816971086 476912096 115090276 570796148 363976852 449022331 542382913 424974082 462762217 296751278 662421393 353964006 407629453 119279869 514650194 735710261 492009082 448881532 920721173 449022331 39220584 775682536 950497221 719601437 533455280 134971740 361435434 112090095 721418370 715957434 591292508 776835194 251042004 464444922 123073176 792846009 214650974 272303478 311613451 625664180 788737791 795472528 824770361 992169078 455539394 459452716 700560235 708046990 945394518 993091440 632014852 944573659 598543708 841780337 257214051 835212499 554222239 155241439 430284321 852604705 73848009 792846009 132556595 515426984 807117750 413592826 465759767 531333917 247841801 315297566 746992914 476912096 923927991 885000402 633573519 668964848 31215478 218611070 73848009 516175014 838331644 476912096 910850066 678474526 757815664 646710523 660765062 437743643 926045944 170938835 488295044 841780337 683406807 179981178 954677909 205387898 786380583 543865019 464130920 782533040 47290536 394791153 293192373 128450928 43970470 179991869 211958450 159828635 67700412 121069546 936312210 237172271 587469038 5299425 306607837 781246194 654830523 79523589 332834875 250832323 632014852 590918818 293192373 835212499 489130642 750750593 696443558 413592826 247234349 859168292 135975430 420636144 503666498 403519778 72820570 306597948 53226850 237172271 456956861 885353274 266213579 526944836 98287438 186244437 132556595 841210236 641635851 520071928 904771946 746394036 49317804 960543625 210621083 152314280 768561257 806792339 6720560 757709512 824770361 170938835 201717402 964902255 73848009 604881661 196106606 250749017 888553258 475344103 264750083 195733178 645094664 7807006 618542887 495854210 663971090 2575238 101231409 806792339 770864525 852107700 24188768 15903366 838655651 689757867 910850066 983373150 740882715 937158597 840075867 359714925 72820570 140551765 151506993 408032939 927806038 955730659 803588261 962430008 688534928 195733178 862254110 852107700 153196022 992169078 503666498 885000402 278160655 715957434 991073887 134801439 215774690 15903366 757815664 33511708 56154381 98231977 31615284 938080232 215981255 330274784 451817798 393120342 786380583 817743547 305990981 437743643 490344724 134801439 186285312 953267424 921198791 757709512 83066601 506178629 484158080 885353274 637657473 396937914 117931902 702745028 838331644 220576148 152523810 334211676 559014304 276676140 900116034 624819674 152866011 376448548 298727845 112390393 553368896 51457589 809429735 32954995 695599688 990121035 74587532 934824360 723661847 361002681 264750083 910818482 610447918 560623000 854969794 858798711 735696627 313272965 181668423 592981604 251188854 495854210 645094664 334932282 816971086 251367294 632014852 806792339 429277230 667844649 214244685 515426984 433686203 995876182 674485068 515426984 456956861 916956968 396050095 426814174 553191189 264100442 740882715 20148474 72820570 207442482 275349681 174862116 321628921 485063015 115509283 459452716 917795074 618355033 40656291 15903366 567774282 264100442 878442641 699733109 295366548 997329398 795549341 248642173 770993588 314069534 653201202 262406489 846351340 592970093 971894015 2379379 181668423 761330904 53525809 662972501 661321016 793291205 654830523 991615550 788737791 506919968 101231409 458363994 40448245 841210236 712346140 735710261 407629453 338312978 751925989 554242697 123073176 539035187 311613451 792846009 921198791 570796148 425392410 992169078 922858580 213097363 254203892 592981604 854969794 376448548 148087911 882804101 156817178 607041944 603931167 175060805 982353486 287768226 247234349 522663253 311613451 918521256 518384931 588034909 757850417 121069546 21190596 964902255 630775839 581831913 721418370 51457589 215774690 866337119 462762217 718980624 358401766 943793512 407629453 78775552 444897967 60017144 904800517 209497607 432089082 443960759 40656291 835212499 40656291 630977998 6720560 515426984 93478833 778123726 837690635 729868696 769327548 382210484 432089082 109054120 738855203 570796148 857535330 604881661 831467447 641231120 533864165 916956968 464130920 604181881 295366548 103219970 471393875 993091440 457149478 733642252 681930584 792846009 41538784 88335614 904771946 388085842 931086800 749497174 431406787 400218902 703514531 382210484 151506993 170938835 688534928 314069534 864016134 616796881 264408147 515426984 637769046 726950461 896571061 590918818 202477791 853170454 126695727 405444604 295366548 851829959 840130613 858040709 641635851 87392830 177689820 81553943 151364594 912948600 142903358 488788762 814295984 722013570 315747769 674446970 946916156 145885851 982370833 24089615 271484655 800460688 514650194 272303478 420052652 808838846 115090276 566554997 485153920 910818482 860377902 638790258 93651148 979750308 617908997 550322314 618542887 5299425 67831588 870201182 738855203 778123726 735696627 778123726 251042004 627110568 202477791 324129364 153196022 616057762 938140278 978947655 407629453 396937914 344620844 509664709 757850417 63192647 498840912 667844649 917452919 330205547 854969794 496698204 663971090 560623000 860377902 676975489 375066210 207442482 918225489 53195413 237389399 403519778 947413305 984050047 156817178 38085353 126695727 327773233 480361743 997329398 29069209 831380531 886917295 984047482 765027062 739696834 206036522 962073361 125829791 285947848 774489082 607760956 32075030 572465104 545538425 970911538 705304879 860708299 638516505 287768226 722768643 250885472 43970470 735710261 24188768 2575238 586370291 485509833 201717402 852604705 271484655 112090095 64420967 781246194 878442641 2575238 67831588 408032939 98824830 88335614 776352608 324129364 354807942 330205547 932584021 250885472 831467447 325554372 660095934 925555858 455539394 404152565 478351140 960796073 292149520 623206361 705548145 87392830 650697444 686335042 289736829 299994808 979740237 246221518 603931167 992169078 563678994 179981178 306258744 451521521 153196022 727827821 661321016 662972501 854969794 662972501 186285312 885353274 567774282 209497607 513440742 382904427 653201202 776835194 910850066 134971740 129724737 953267424 967417280 246221518 945394518 866568903 296305836 520071928 242028021 581831913 540394532 324129364 803588261 708094860 936312210 962430008 904771946 505061211 109369069 195019158 163769090 187104147 632014852 708094860 230662076 607041944 915330573 250749017 650697444 916956968 480361743 781242822 407629453 587179274 82689280 942866882 940188502 226492467 855636134 516175014 575023903 719601437 28363157 577673184 921198791 494336936 885549757 256866745 43970470 60017144 991073887 376448548 13112382 907721720 723661847 960543625 663971090 853170454 266213579 960796073 637769046 509019925 502849508 983373150 448262245 400178823 13112382 172894131 425392410 478892468 15037608 851759377 234980621 762749463 247841801 559957428 597206610 307060809 140129038 207442482 334299650 624819674 743614603 815123402 638516505 514768035 956815883 24089615 769327548 746394036 532803593 172382592 302151126 732559957 602396426 55108095 601630030 607965234 663670886 607041944 877088774 146573202 917452919 290474734 910850066 629101079 465697134 812044550 888699423 427184372 876263470 522332929 306607837 758889515 195957995 352092606 98287438 36265302 480361743 443960759 806664207 566554997 533455280 485262404 261683638 993091440 183440003 15903366 540394532 361002681 210621083 137529801 375066210 694954883 299113502 459617527 42657625 942899938 877088774 452156279 610834602 708094860 864016134 719601437 261683638 942899938 132556595 995876182 954227928 939725993 315747769 790270533 261683638 727827821 926044257 7807006 691982506 968670974 125829791 526944836 610447918 771803404 567774282 572465104 128188331 170941326 455539394 786320493 126695727 117210451 598426014 872434540 874124920 458156391 854902633 726950461 770993588 172382592 740340897 853903669 401452903 780061015 913521589 290474734 656623172 889608806 958668995 496698204 619842427 916956968 396050095 446968233 610834602 112390393 830619816 511277493 242530683 246221518 743614603 597784477 746992914 56927881 738855203 112090095 38338132 35128915 498840912 241184545 326469359 220576148 270237875 288072509 887794841 589760538 809429735 79509313 838331644 353964006 650990283 727827821 705304879 727578179 860477160 241184545 709613471 98231977 407091770 175060805 683406807 995876182 806664207 514768035 67700412 337153847 351424753 359859765 190979155 853170454 807117750 251367294 214650974 764459345 807117750 396937914 532803593 250749017 554222239 165821462 835339516 250749017 553191189 81337657 424594759 776835194 769327548 678474526 242530683 775682536 488295044 52243955 209789164 792846009 40448245 315343704 632402794 781246194 361435434 662972501 946612927 68748842 396806189 764116955 966683628 249670598 73848009 314069534 257214051 250749017 719307635 287768226 408395896 635302209 201717402 739696834 702364434 842970782 947413305 916956968 396743027 771803404 53525809 215052415 802009078 943235508 703514531 539035187 562773407 983373150 926044257 978947655 553368896 134971740 723661847 251367294 904800517 121069546 971894015 128450928 465759767 993091440 203331888 721769014 451817798 907721720 38338132 315297566 186285312 560327459 77819776 955730659 438183310 170941326 922706719 630977998 843005594 172382592 142903358 298050322 145559297 27735709 966683628 885647994 21190596 962073361 838331644 215052415 628523361 732245352 101231409 853170454 840130613 937158597 723661847 526944836 302151126 19715614 322974842 896072909 67700412 630629857 367026304 172894131 700560235 780061015 910850066 858798711 754580366 970320952 480361743 218611070 888699423 623206361 645094664 944573659 80415088 853170454 776820092 146573202 56154381 577673184 864016134 630977998 563678994 35128915 663670886 35128915 562773407 459452716 302151126 298050322 420052652 463496366 874124920 989729323 577970627 601740259 93651148 98231977 780870754 163229392 888699423 592981604 705548145 686884353 736624310 159828635 420052652 942899938 591292508 757709512 843005594 396138845 206036522 47349911 874124920 250832323 887794841 98231977 42657625 746394036 662421393 727578179 42657625 851759377 533455280 853170454 133739154 413592826 854969794 330205547 138393155 394791153 145559297 838803091 98287438 780061015 679463383 196460706 305068796 396937914 783513992 267829614 72820570 390275103 490344724 2379379 721418370 394791153 93651148 485063015 136384659 511277493 721418370 424974082 396806189 24089615 93478833 750978759 830619816 896072909 396806189 485509833 956286779 860708299 428572243 815123402 754580366 912948600 854902633 548964093 311613451 787269565 153196022 195733178 641635851 5299425 74587532 463496366 774489082 399037712 553191189 19911869 814295984 506178629 691982506 590918818 769327548 872434540 675472009 550322314 554222239 806792339 838331644 800460688 457149478 750750593 788737791 307060809 683406807 462394151 38338132 708053570 953882020 994587826 306258744 337153847 67831588 325554372 465759767 853903669 484158080 167276070 936312210 646710523 721418370 119279869 679463383 727578179 136384659 81553943 806664207 729868696 927806038 324986193 56154381 620243558 773781000 790270533 462762217 638790258 396743027 964902255 885995802 155241439 109369069 53966525 587469038 793291205 553191189 488788762 991073887 866568903 632402794 378961655 32806834 175507355 73848009 851829959 242186770 997329398 577970627 267829614 228290502 324129364 770993588 806744033 40448245 939725993 587469038 369306500 630775839 250749017 98824830 711532060 292972503 505061211 181668423 963141978 98287438 163229392 278160655 285947848 953882020 451521521 363976852 248642173 271484655 88335614 770864525 349076114 918225489 570796148 488295044 938705675 922858580 729868696 156817178 579757115 47290536 130160246 303230482 526944836 103733806 478892468 757850417 287768226 736237188 650036494 305068796 256866745 888553258 604181881 117931902 2379379 269911067 276676140 140129038 674446970 722768643 317751260 545538425 686884353 115509283 636434256 567774282 546141085 637769046 446968233 295366548 209497607 215981255 750978759 721418370 393120342 719307635 689757867 162062292 29473993 77819776 49614749 304621545 37275245 966131311 686335042 539957336 317751260 688577702 620243558 195957995 114409323 456956861 170941326 637939784 179981178 945394518 910818482 302151126 485063015 28363157 330205547 308142020 940381563 586446680 405444604 590208882 727245017 652018277 390793037 237389399 276676140 591292508 449022331 577970627 632378665 877088774 112390393 438183310 761330904 358401766 975478549 748408317 40131409 550336314 36055646 602396426 509664709 656623172 812044550 193648030 282751746 53226850 522332929 254203892 573480571 567948101 662972501 214244685 79509313 542382913 285947848 363976852 215052415 32075030 739696834 604968568 324129364 303230482 2076768 567948101 390275103 550336314 850484222 807117750 314069534 660095934 400178823 917452919 650036494 202477791 616796881 396050095 464444922 278160655 727578179 275202504 509019925 786380583 248642173 603931167 916956968 971894015 735710261 736237188 851829959 904771946 359859765 126695727 250749017 654830523 140551765 215981255 972710252 623398671 968755777 604968568 916956968 40656291 762749463 632402794 246058339 101231409 251367294 23262398 152314280 93651148 577673184 738612855 488788762 994877696 732245352 831467447 664041213 78649514 992169078 932584021 24089615 854902633 630238886 129724737 627110568 367026304 79509313 305990981 152314280 396743027 47349911 723661847 7807006 882364001 764116955 633587956 527595027 633573519 938456692 567948101 885141769 740340897 298050322 956815883 853170454 760231333 978947655 738612855 566554997 586370291 686884353 681930584 708053570 290117216 505061211 949084393 896029805 884072178 172382592 633587956 842970782 60750487 137529801 630201811 317751260 298727845 882804101 489612980 842970782 539957336 990121035 946916156 989729323 750563611 328764419 351424753 616057762 932584021 2575238 539957336 134971740 956815883 729868696 306607837 902464469 910850066 311808379 156817178 498045048 687988023 522663253 702364434 942866882 722768643 616057762 208625324 121069546 554222239 702745028 874124920 29473993 125829791 858040709 268759041 983113723 992001870 449022331 512614298 396632533 28363157 851759377 932584021 299462930 93478833 829983432 358401766 860708299 135975430 382904427 877088774 971549242 991073887 601740259 955501918 146573202 745200166 458156391 228290502 159828635 938140278 87392830 208625324 788118407 60750487 213097363 514650194 443960759 770864525 186244437 884072178 526944836 31215478 170938835 375066210 630977998 931966477 872434540 354807942 49948206 344620844 399037712 311613451 647733367 148087911 739696834 10475035 750750593 533864165 458363994 503666498 81553943 135975430 334211676 940188502 327773233 662421393 527595027 67831588 925555858 843005594 264100442 688577702 727245017 60750487 78775552 640849273 174335822 797746066 256866745 306258744 912948600 618542887 965948435 193648030 485262404 43970470 247822207 587469038 719601437 736624310 858798711 688577702 246221518 882364001 978947655 947413305 371179314 492009082 282751746 736237188 459617527 289918211 394791153 117931902 167276070 575895835 787269565 311613451 860708299 884072178 37275245 151364594 808614164 801623766 781246194 855636134 806744033 632402794 592970093 770594967 548964093 663971090 726950461 464130920 476912096 251042004 520071928 23973553 433921335 653201202 515426984 854969794 581831913 660095934 972710252 776352608 835212499 757850417 413592826 152866011 866568903 41538784 664041213 567774282 733642252 533864165 568142039 553191189 624819674 242186770 209497607 498840912 912948600 551289217 175060805 586446680 408032939 292696118 353964006 628523361 296751278 153196022 630238886 840130613 812044550 251188854 256866745 193648030 179991869 242186770 885141769 703514531 121069546 47290536 737945381 162062292 49948206 771321738 812044550 438183310 137529801 553191189 630238886 585165457 636434256 499057158 780061015 295606018 918521256 6720560 193515742 152243323 882804101 462762217 449022331 80485362 507016471 688534928 207844781 705548145 307403622 326469359 699230813 219054502 854243215 600441802 602832600 650990283 420636144 274113481 548964093 660765062 443960759 803588261 786320493 151364594 629101079 407510599 267829614 577970627 282751746 654830523 625664180 152618584 399037712 656623172 324129364 126695727 808614164 950497221 248642173 284588557 699733109 843005594 509019925 286037808 559957428 551289217 433921335 326469359 969494113 795549341 641231120 163769090 735710261 67700412 509664709 760231333 40131409 21190596 891279504 214244685 29473993 321628921 557710104 581063820 393120342 358401766 98231977 854902633 522332929 518384931 746394036 955501918 433921335 719307635 526944836 451817798 215052415 814295984 587179274 299113502 248642173 947413305 24089615 547547687 938456692 295606018 965948435 152523810 836376015 932584021 330205547 824770361 449022331 710224239 174862116 363976852 38304068 154538466 780061015 675472009 997329398 257214051 858040709 151364594 896072909 619842427 5299425 284588557 566554997 683406807 349644605 351424753 249820698 547547687 940381563 896571061 686335042 538810384 247822207 266213579 726620654 206036522 495854210 444897967 625664180 432089082 858040709 982370833 459452716 140129038 266583970 152866011 441621000 590208882 449022331 193648030 426814174 830619816 451521521 478351140 780061015 193648030 686884353 918225489 902464469 295606018 781246194 816971086 829614460 926044257 975478549 992001870 299994808 654830523 646710523 831467447 925555858 570764323 66490779 125204206 88335614 292149520 896072909 600441802 735710261 396050095 788118407 489612980 146573202 332834875 287768226 6720560 853903669 915330573 686884353 886149363 667313812 678884863 628820972 429277230 787269565 966131311 237172271 802009078 554242697 417074904 835198840 77819776 625664180 956286779 694954883 740882715 543945175 298727845 400178823 799588075 315343704 653201202 330205547 215774690 413592826 712346140 850484222 219054502 581831913 527654256 708046990 518384931 246058339 32806834 462394151 53226850 579757115 514650194 382904427 893019475 746394036 43970470 130160246 293192373 678474526 754580366 520071928 827311105 735891721 840130613 694954883 663971090 918521256 533455280 276676140 296305836 252962990 471393875 494336936 632402794 543865019 464130920 330205547 586446680 800460688 39220584 167276070 554222239 382904427 932584021 940381563 133739154 223299794 361435434 226492467 490344724 686335042 931013644 509370562 637939784 334211676 407510599 79509313 31615284 145885851 499057158 213097363 770993588 775682536 654830523 134801439 876263470 47529701 712346140 715957434 154538466 667844649 953882020 207844781 266213579 249670598 142903358 256866745 581063820 130160246 660765062 667844649 148087911 464444922 407629453 378961655 145559297 627110568 581063820 287239117 760231333 907721720 293192373 35128915 257214051 727827821 242028021 56927881 214244685 251367294 893019475 624819674 982353486 509144872 641635851 543865019 654830523 330205547 704431513 315297566 512614298 140725908 862254110 187104147 778074990 749497174 201717402 806744033 315747769 630977998 363976852 20148474 700560235 543865019 550336314 788118407 247006479 40131409 913521589 349644605 619842427 978947655 10475035 66490779 465697134 607760956 858127225 589760538 876263470 136412292 975337465 404152565 429277230 314069534 619842427 207442482 140129038 891279504 719307635 624819674 975337465 175507355 152523810 232177196 140129038 907095826 275349681 400218902 302151126 560623000 652018277 592981604 610834602 2575238 568104980 629101079 920628541 750750593 780870754 632378665 39220584 283321520 626833449 592981604 152618584 718980624 846351340 776835194 363976852 835198840 884059813 338929165 816971086 790270533 99294732 330205547 803588261 616057762 877088774 587179274 351424753 623206361 136384659 376448548 877088774 266583970 420052652 60017144 251042004 630977998 542382913 426814174 876263470 775682536 601630030 702745028 683406807 27735709 598543708 400218902 73848009 20148474 424594759 841210236 876263470 646710523 722768643 324986193 799588075 403519778 255644658 836376015 417074904 852107700 587469038 325554372 375066210 896029805 275202504 55018341 760370490 404152565 38338132 592970093 926045944 806792339 295606018 7807006 688577702 646710523 754580366 40131409 133739154 190323279 719307635 140551765 448262245 130160246 956286779 35128915 548748527 787269565 363976852 338929165 322974842 808838846 331638088 907095826 215981255 174335822 538810384 24089615 430101007 560623000 77819776 838803091 554222239 207442482 489130642 485262404 163769090 983113723 991073887 891279504 601630030 749497174 637769046 896029805 103669472 310726569 719307635 835198840 715779797 317751260 211958450 668964848 539957336 264100442 597206610 969494113 174140940 888259120 538025980 51457589 917452919 338631458 661321016 458156391 886149363 817743547 710224239 55018341 396743027 727827821 138393155 699733109 860477160 556619020 567343883 49948206 275202504 808838846 630775839 420636144 94279561 573480571 270237875 939725993 900796599 841780337 688577702 616796881 994877696 858798711 751925989 179981178 101231409 20148474 293192373 996943901 885549757 570796148 748408317 962073361 763431295 787269565 42657625 87392830 992001870 337153847 367026304 831241130 396743027 702745028 851400664 282751746 738612855 620243558 554222239 458363994 776820092 360743135 80485362 776835194 190979155 616796881 94279561 283321520 354807942 376974209 633573519 602832600 210621083 983113723 835339516 458156391 247006479 109054120 354807942 526944836 47290536 462394151 740882715 452156279 991073887 404152565 950497221 98231977 885549757 485063015 770594967 134971740 38338132 128450928 604968568 498045048 674485068 223299794 774489082 172382592 900116034 689757867 623398671 252792947 140129038 47529701 177689820 264297813 290117216 667313812 295606018 662972501 527654256 324129364 492009082 590918818 954677909 215289803 305068796 992169078 774489082 994587826 230662076 338929165 451817798 683621666 923927991 662972501 896571061 616057762 778074990 241184545 598543708 984050047 896571061 433921335 162062292 78775552 709613471 858798711 242028021 912948600 992001870 506178629 896571061 531333917 954227928 63192647 396806189 902464469 688577702 287768226 269911067 287768226 816971086 2076768 99294732 571019028 882364001 352092606 738612855 134971740 743614603 874297853 38338132 812414090 918225489 577673184 610447918 196460706 920628541 932715562 255644658 702745028 296305836 882804101 247006479 458290565 896571061 299462930 67831588 298050322 407091770 36055646 292149520 516175014 590208882 424974082 926045944 478892468 585165457 498045048 683406807 60017144 835339516 546141085 478351140 4519262 215774690 993091440 334299650 842970782 917795074 829614460 656623172 98231977 640925332 746394036 722768643 299994808 630775839 983113723 953882020 47349911 900796599 789617647 763431295 607760956 603931167 276676140 202477791 218611070 886149363 782533040 485153920 767839638 887794841 485262404 242028021 371179314 936312210 382210484 428572243 960796073 942999703 225771141 375066210 697742034 308142020 81553943 465759767 287768226 910850066 960543625 308142020 114409323 769327548 940381563 808866527 737945381 203331888 382210484 230662076 507016471 64420967 79523589 746992914 962430008 326469359 735891721 502849508 968670974 518384931 66490779 776820092 788118407 931013644 808614164 938140278 983373150 80485362 458156391 809429735 874297853 776352608 160287690 632014852 557710104 109369069 488788762 765027062 515426984 266213579 276676140 884059813 68748842 827311105 264297813 190979155 870201182 513440742 708053570 361435434 276676140 650697444 226492467 215977916 872434540 6720560 762749463 142903358 352092606 128702236 896029805 583924389 884952974 489130642 79509313 485153920 938080232 705304879 942866882 39220584 851759377 992001870 577673184 710224239 498045048 956286779 866568903 803588261 249670598 884059813 330274784 478351140 187104147 215981255 498045048 242186770 361002681 910850066 516175014 736624310 327773233 284588557 965948435 29069209 458363994 705548145 325554372 242186770 688177128 499057158 172894131 971894015 737945381 575895835 49614749 911302173 557710104 773781000 252792947 838331644 587179274 43970470 571019028 290117216 808614164 499057158 349644605 638516505 179981178 662421393 215052415 931640418 78775552 29069209 27735709 652018277 604181881 551289217 629101079 955501918 831241130 259646582 629101079 843005594 338631458 145559297 852604705 598426014 711455867 60750487 616796881 331638088 159828635 966131311 449022331 838655651 887548285 619842427 2379379 663670886 965948435 740882715 592981604 650990283 464444922 950673785 509664709 896571061 853903669 23973553 592981604 575895835 573449906 148087911 426814174 361435434 134971740 456956861 488788762 264408147 699230813 652018277 852604705 617908997 314069534 140129038 495854210 746092812 413592826 911302173 636434256 511330454 33511708 553191189 590918818 264750083 251367294 946612927 162904272 809429735 965948435 451817798 396937914 539957336 984047482 210621083 859168292 31615284 506178629 650990283 735710261 830619816 581831913 145559297 451551269 94279561 975478549 41538784 451551269 922858580 193515742 942999703 732245352 295366548 662972501 219054502 478892468 626932919 613596687 661321016 98231977 835339516 792846009 967417280 942899938 23973553 858798711 687988023 708046990 632014852 527595027 736237188 874297853 920628541 590918818 703514531 650036494 133739154 526944836 306258744 526944836 367026304 485063015 247006479 507016471 136384659 781242822 361435434 1736950 244528344 601740259 551289217 932715562 177689820 713146141 286037808 641231120 736624310 5299425 485153920 750750593 814662325 943235508 738612855 506178629 203331888 400178823 98824830 48746678 630201811 749497174 887794841 241184545 210621083 854243215 74587532 250749017 513440742 287239117 700560235 746394036 407629453 775682536 109369069 514768035 773781000 882804101 24188768 163229392 904800517 334932282 703514531 250885472 431406787 808614164 770864525 2076768 770993588 79523589 628523361 630629857 417074904 179981178 738855203 15903366 920721173 327773233 484158080 35128915 73848009 647733367 757815664 282751746 298727845 607041944 10475035 5299425 617908997 932715562 244528344 342116147 660095934 907095826 77819776 134801439 321628921 775682536 433686203 396937914 308142020 836376015 457149478 207844781 74587532 938080232 215792516 601740259 688577702 829983432 123073176 616796881 401452903 767187616 251188854 505061211 407091770 782533040 103669472 727827821 623398671 735891721 174140940 506919968 407629453 369306500 190929591 560623000 512614298 288072509 653201202 225858850 904800517 838803091 101231409 130160246 208625324 907721720 738855203 732559957 514650194 806792339 929504680 831241130 663971090 607760956 195957995 650036494 93478833 806792339 946612927 145885851 597206610 850484222 746992914 995876182 740882715 851759377 430284321 650036494 527654256 424974082 481894295 572465104 502849508 812414090 211958450 860708299 678884863 630629857 123073176 349644605 991073887 112090095 152243323 114409323 846351340 694954883 274113481 795472528 567948101 535533605 15037608 750750593 637939784 114409323 186285312 387703244 854969794 403519778 83066601 140551765 838655651 396632533 862177563 328764419 645094664 607041944 917452919 711455867 129724737 246221518 966131311 587179274 274113481 186244437 929504680 476912096 675472009 750978759 910850066 963141978 471393875 858798711 617908997 735710261 247841801 793291205 80485362 754133002 921198791 103219970 663670886 81553943 931640418 182214511 417074904 686335042 387176309 396138845 354807942 831241130 632014852 215289803 396743027 35128915 293192373 349644605 702364434 522663253 660765062 983373150 947413305 780061015 10475035 276676140 40448245 232177196 633573519 119279869 546679009 885141769 251188854 746394036 923927991 746394036 525347105 349644605 261683638 485063015 632402794 635302209 455539394 48746678 542382913 907095826 768561257 771803404 745200166 459452716 480361743 872434540 430284321 817743547 202477791 170941326 193648030 667313812 598543708 718980624 780870754 143200457 929504680 24089615 532803593 984047482 559014304 979750308 945394518 531333917 619842427 187104147 618542887 931005739 251042004 699733109 738612855 250832323 361435434 209497607 196106606 250885472 877167702 52243955 547547687 250885472 736624310 112390393 802009078 515426984 129724737 623206361 703490607 767187616 601630030 249820698 215977916 727245017 32075030 938080232 947413305 560327459 514650194 15903366 67831588 505061211 228290502 943793512 254203892 632378665 600441802 334932282 93651148 376448548 274113481 252962990 840130613 209497607 896571061 109054120 430088921 727578179 656623172 907095826 637769046 462394151 710224239 52243955 900796599 733642252 887794841 53195413 760231333 762749463 451817798 746394036 125204206 815123402 786380583 721769014 190979155 128450928 771321738 19715614 163769090 390793037 201717402 378961655 771321738 313272965 209789164 498045048 663670886 509019925 971894015 546141085 623398671 726950461 266213579 602832600 971894015 49948206 123073176 964902255 840075867 458156391 308142020 220576148 942999703 678474526 98287438 128450928 80485362 817743547 334299650 27735709 99294732 931005739 932584021 352092606 956286779 758889515 234980621 288072509 125829791 975478549 591292508 978947655 735696627 213097363 407629453 851829959 407091770 451551269 311613451 449022331 396050095 960796073 864016134 835198840 931013644 522663253 417074904 299462930 554222239 494336936 592639233 112090095 703514531 251367294 181668423 443960759 156817178 997329398 93478833 56927881 633587956 866568903 806664207 485063015 888699423 449022331 765027062 789617647 31615284 262406489 133739154 485262404 366854683 494336936 705548145 632378665 145559297 175060805 754580366 509144872 603931167 699733109 334299650 851759377 56154381 560623000 586446680 729868696 428572243 683621666 321628921 456137963 904800517 55108095 152618584 962430008 115509283 179981178 874124920 812044550 827311105 251367294 888553258 106790696 99294732 174862116 396743027 786320493 56154381 456137963 982353486 884952974 206036522 109054120 632014852 667844649 228290502 573480571 545538425 604881661 128702236 195733178 60750487 972710252 774489082 441621000 662421393 237172271 876868627 446968233 768561257 699230813 358401766 522332929 247234349 829614460 242186770 300892929 135975430 193515742 72820570 829983432 538810384 708053570 480361743 831380531 49317804 616057762 623398671 776835194 864016134 283321520 936312210 708053570 13112382 170938835 101231409 349076114 597206610 522663253 49317804 559957428 32075030 485262404 401452903 310726569 259646582 55018341 797746066 697742034 703490607 607965234 695599688 456137963 264750083 186244437 953882020 858798711 958668995 560623000 688534928 829983432 838331644 195019158 148087911 778123726 900796599 174862116 630201811 175507355 806664207 782533040 876868627 668964848 298727845 361002681 956286779 509144872 424594759 337153847 922706719 408032939 128702236 452156279 269911067 452156279 991073887 299994808 630775839 249820698 628523361 114409323 917795074 526944836 917795074 10369081 888699423 968755777 306607837 88335614 679463383 49614749 269911067 708094860 290117216 699230813 24188768 376974209 247841801 674446970 430088921 971549242 546679009 170938835 704431513 68748842 264408147 939725993 284588557 854243215 480361743 264297813 23262398 522332929 884059813 405444604 966131311 5299425 736624310 729868696 799588075 464444922 679463383 953267424 850386354 396138845 488295044 983113723 592639233 223299794 776820092 535533605 115090276 992169078 306607837 971549242 949084393 38304068 929504680 393120342 502849508 165821462 830619816 298050322 488295044 205387898 93478833 953267424 545538425 167276070 814295984 942866882 991073887 225858850 770993588 960543625 183440003 601740259 857535330 160287690 268759041 179981178 289918211 793291205 420052652 360743135 234980621 627110568 56154381 962430008 619842427 689757867 950673785 729868696 583924389 179991869 56154381 962073361 1926282 140551765 125204206 172894131 778074990 979750308 851400664 995876182 237389399 137529801 553191189 223299794 592639233 476912096 788737791 767187616 554222239 285947848 502849508 452156279 117931902 664041213 910850066 7807006 284588557 997329398 877088774 792846009 955501918 688177128 751925989 815123402 152243323 688177128 551289217 378961655 545538425 456137963 93478833 459617527 242530683 858798711 39220584 842970782 602396426 403519778 846351340 256866745 255644658 272303478 292972503 218611070 251188854 361002681 837690635 699733109 305068796 761330904 363976852 182214511 214650974 602832600 363976852 727827821 946916156 376974209 186285312 646710523 162062292 629101079 375066210 775682536 824770361 852755974 597206610 2575238 583924389 965948435 481894295 81337657 590208882 47529701 296305836 485509833 451817798 572465104 190979155 307403622 295606018 246221518 247841801 400218902 966683628 299994808 322974842 463496366 971894015 520071928 190979155 162904272 432089082 872434540 843005594 433921335 982370833 307403622 290117216 27735709 876263470 858040709 131323888 737945381 206036522 630629857 920628541 509144872 920628541 616057762 209789164 570796148 850386354 620243558 295366548 572465104 591292508 962073361 770993588 581831913 900796599 5299425 700560235 246058339 626932919 885353274 498840912 757709512 193648030 699733109 575023903 246058339 795549341 912948600 650697444 721769014 567774282 969494113 626833449 522663253 691982506 520071928 783513992 81337657 982353486 526944836 660095934 531135820 181668423 109054120 940188502 994587826 98287438 464444922 471393875 786320493 920721173 970911538 840130613 866337119 448262245 475344103 967417280 170938835 289736829 592981604 876868627 162904272 275202504 426814174 568104980 858040709 344876805 708046990 196106606 970320952 125204206 735891721 778074990 15903366 13112382 485063015 926045944 170941326 590208882 629101079 722768643 359714925 617908997 136412292 743614603 573480571 857535330 627110568 982416551 378961655 80485362 506919968 41538784 715957434 663670886 842970782 292696118 963141978 152243323 1736950 637939784 478892468 215774690 757709512 396743027 290474734 133739154 632378665 926045944 300892929 261683638 793291205 123073176 353964006 702364434 776835194 153196022 788118407 128188331 451551269 295366548 656191811 888553258 249670598 274113481 647733367 753419354 179981178 722768643 572465104 577970627 328764419 770594967 761330904 904800517 560327459 275202504 771803404 103733806 215289803 966131311 896029805 660095934 841210236 656623172 396937914 152866011 891279504 703490607 462394151 492009082 964902255 882364001 145885851 799588075 786320493 298727845 495854210 126695727 955730659 261683638 592970093 991073887 426814174 878442641 325554372 696443558 942866882 540394532 140551765 703514531 53195413 422532994 167276070 954677909 870201182 683406807 638790258 626833449 451521521 74587532 806744033 858127225 55018341 942999703 317751260 186285312 699230813 949084393 831241130 251188854 891279504 723661847 175060805 600441802 162904272 125204206 757709512 975337465 983113723 344876805 984047482 862254110 396138845 591292508 970911538 264408147 735710261 39220584 155241439 688577702 47349911 244528344 732559957 857535330 264100442 152243323 140551765 247234349 40131409 115509283 806792339 293192373 698320352 913521589 24089615 264408147 632378665 322974842 790270533 750563611 850484222 604968568 604181881 532803593 688177128 921198791 426814174 917452919 2379379 266213579 427184372 328462418 625664180 641635851 507016471 931640418 337153847 760231333 498045048 803588261 689757867 132556595 689757867 806664207 396937914 32806834 55108095 123073176 5299425 478351140 858798711 115090276 272303478 809429735 446968233 893019475 317751260 80485362 618355033 242530683 349076114 247234349 971549242 632402794 225858850 230662076 179981178 456956861 509664709 688534928 325554372 874124920 349076114 650990283 969494113 328462418 925555858 641635851 931005739 967417280 836376015 773781000 283321520 448262245 114409323 587469038 404152565 921198791 396937914 430284321 792846009 103733806 858040709 623398671 994587826 303230482 485509833 255644658 686884353 425392410 170941326 32806834 250885472 304621545 140551765 746092812 636434256 351424753 635302209 268759041 729868696 691982506 902464469 637769046 808838846 663670886 812414090 242186770 98231977 885995802 215289803 795549341 378961655 736624310 106790696 768561257 136412292 770993588 835198840 683406807 676975489 678884863 795472528 129724737 702745028 922858580 172894131 597206610 399037712 464130920 884952974 80485362 241184545 617908997 119279869 562773407 207844781 637769046 232177196 570764323 388085842 533455280 315297566 675472009 215052415 375066210 146573202 674485068 186244437 259646582 721769014 41538784 35128915 131323888 522663253 831467447 708053570 274113481 359859765 133739154 866568903 464130920 668964848 687988023 134801439 862177563 597784477 954227928 735891721 601630030 475344103 932584021 298050322 926044257 526944836 358401766 872434540 72820570 159828635 553191189 582273012 431406787 531135820 219054502 20148474 228290502 315297566 751925989 630629857 540976336 114409323 917795074 241184545 489612980 910818482 705304879 896072909 926044257 334211676 366854683 559957428 101231409 282751746 886149363 427184372 203331888 218611070 975337465 579757115 638516505 298050322 770594967 313272965 753419354 459617527 363976852 485262404 296305836 543865019 209789164 404152565 326469359 334211676 626833449 858798711 656623172 885647994 661321016 287239117 806664207 378961655 830619816 630977998 290117216 792846009 661321016 686335042 10475035 882804101 387176309 376448548 193648030 729868696 539381059 872434540 709613471 426814174 542382913 186244437 687988023 443960759 982353486 55108095 299113502 968755777 598426014 371179314 553368896 870201182 587469038 300892929 763431295 850484222 803588261 806792339 816971086 940381563 23973553 287768226 874124920 719601437 603931167 103219970 966683628 630238886 308142020 507016471 917795074 727245017 663670886 885000402 567343883 88335614 259646582 812414090 567343883 854243215 264408147 514768035 915330573 776835194 485153920 337153847 13112382 112390393 247006479 944573659 21190596 636434256 407629453 758889515 234980621 511277493 420052652 288873549 931013644 571019028 585165457 835212499 489612980 272303478 53525809 535533605 429277230 527595027 471393875 170938835 944068218 246058339 101231409 775682536 135975430 570796148 527654256 527595027 407629453 970320952 769327548 515426984 190979155 264100442 700560235 195733178 306607837 808838846 553191189 496698204 946612927 776835194 568104980 400178823 125829791 48746678 142903358 478892468 210621083 601740259 932584021 592970093 776352608 925555858 306258744 592981604 617908997 459452716 838331644 715957434 745200166 338631458 289736829 159828635 183440003 514768035 618542887 689757867 788737791 573480571 882364001 338312978 768561257 624819674 154538466 119279869 740882715 560623000 430088921 889608806 991073887 667313812 705548145 313272965 401452903 884952974 215792516 781246194 830619816 749497174 162062292 762749463 900796599 448881532 228290502 604181881 926045944 433921335 101231409 531333917 98824830 437743643 931013644 850484222 344620844 896072909 979740237 647733367 918225489 852107700 366854683 47349911 156817178 213097363 448262245 159828635 546679009 376974209 545538425 420636144 854902633 2575238 115090276 288072509 39220584 138442062 553368896 338312978 99294732 992169078 721418370 721769014 585165457 646710523 575895835 77685914 931966477 2379379 947413305 307060809 145559297 121069546 417074904 607760956 942999703 852604705 488295044 4519262 53226850 462394151 308142020 902464469 234980621 458156391 422532994 285947848 950497221 885141769 770864525 781246194 735696627 573480571 771321738 112090095 630775839 232177196 954677909 170941326 72820570 636434256 247841801 962430008 152618584 225858850 77819776 325554372 591292508 531333917 50241607 299462930 688577702 543865019 39220584 689757867 67831588 310726569 920721173 829983432 80415088 252962990 533455280 459452716 432089082 509370562 917452919 7807006 465697134 155241439 850386354 566125822 334299650 568142039 430284321 938456692 219054502 699230813 640849273 630977998 687988023 63192647 851400664 267829614 278160655 764116955 662421393 485262404 572588387 829614460 923927991 694954883 514650194 437743643 575023903 396138845 982353486 698320352 877167702 838803091 206036522 195019158 306258744 155241439 208625324 136412292 874124920 66490779 831467447 923715439 950673785 207442482 42657625 285947848 700560235 767187616 407091770 613596687 274113481 990121035 154538466 793291205 590208882 962073361 595030753 396632533 926044257 506919968 595030753 699230813 850386354 630977998 125829791 841780337 748408317 256866745 514650194 426814174 228290502 853903669 215774690 40131409 551289217 739696834 499057158 971549242 663971090 267829614 586446680 433921335 641635851 983113723 306258744 138442062 884072178 47529701 660765062 140551765 931966477 68748842 306607837 975478549 587469038 47529701 678884863 36055646 117931902 944573659 840130613 446968233 575023903 604881661 824770361 918521256 888699423 625664180 926045944 662972501 888553258 758889515 78649514 859168292 931013644 298050322 396806189 334932282 947413305 266583970 42657625 226492467 40656291 509370562 788737791 786320493 994877696 997329398 936312210 174335822 162062292 907721720 662421393 625664180 932584021 287768226 780870754 630629857 760231333 399037712 710224239 630977998 93478833 793291205 595030753 232177196 408395896 789617647 60750487 79523589 763431295 625664180 295366548 246221518 982416551 174335822 502849508 852604705 783513992 20148474 979740237 793291205 308142020 896072909 575023903 404152565 49317804 560623000 769327548 852755974 838331644 727827821 152243323 338631458 109369069 739696834 306258744 993091440 705304879 676975489 432089082 342116147 778074990 109054120 94279561 965948435 632402794 806792339 827311105 800460688 958668995 232177196 597206610 404152565 688577702 15903366 210621083 916956968 771321738 509019925 638516505 136412292 969294148 758889515 710224239 509144872 854902633 694954883 321628921 218611070 407091770 223299794 163769090 137529801 420052652 143200457 145559297 607760956 840130613 134971740 904771946 40131409 740340897 573449906 610447918 979750308 140129038 630238886 559014304 152314280 929504680 838803091 74587532 918521256 196106606 778123726 757815664 299462930 585165457 789617647 804406873 298050322 900796599 891279504 653201202 488788762 915330573 38304068 770594967 526944836 247221668 697742034 918225489 589760538 424594759 715957434 354807942 47529701 696443558 858040709 228290502 568142039 585165457 337153847 420052652 511277493 154538466 548964093 633573519 581831913 788737791 925555858 581063820 616796881 230662076 170941326 154538466 687055288 982416551 884952974 703490607 831241130 645094664 246058339 938140278 276676140 748408317 761330904 80415088 165821462 264408147 187104147 882364001 68748842 518384931 136412292 513440742 53195413 485153920 56927881 946612927 758889515 290117216 215289803 840075867 55108095 433686203 119279869 465759767 632378665 201717402 10369081 154538466 15903366 424594759 143200457 595030753 5299425 630201811 315343704 660095934 311808379 743614603 19715614 429277230 109054120 931086800 721769014 966131311 969494113 575895835 992169078 366854683 56927881 13112382 195019158 650697444 119279869 723661847 288072509 230662076 167276070 567343883 128450928 765027062 996943901 295366548 452156279 361435434 114409323 206036522 937158597 551289217 404152565 757850417 646710523 956286779 907095826 38338132 577673184 401452903 750978759 770993588 38304068 214244685 172382592 695599688 835198840 860477160 207442482 433686203 841210236 587469038 963141978 152866011 554242697 926044257 630977998 53226850 38085353 98824830 220576148 637657473 889608806 687988023 400178823 15037608 582273012 816971086 195733178 455539394 247822207 562773407 250885472 641635851 874297853 332834875 711532060 572588387 629101079 514650194 989729323 910850066 726950461 840075867 162904272 681930584 19911869 292972503 174862116 259646582 737945381 295366548 264100442 407091770 376448548 674485068 934824360 922858580 223299794 550336314 556619020 351424753 376974209 563678994 970911538 214650974 250749017 864016134 167276070 696443558 888259120 860477160 965948435 455539394 979750308 237389399 682170984 778074990 711455867 542382913 413592826 745200166 656191811 838331644 758889515 572588387 226492467 877088774 991615550 799588075 349644605 955501918 990121035 705304879 223299794 765027062 81337657 797746066 559957428 753419354 866568903 429277230 462394151 41538784 939725993 407629453 851759377 953882020 838803091 190929591 719601437 315747769 163229392 465759767 686335042 131323888 885141769 326469359 688177128 641635851 944573659 1926282 426814174 846351340 997329398 367026304 507016471 572588387 2379379 47290536 590918818 451817798 420636144 56154381 38085353 125204206 842970782 109369069 264297813 723661847 953267424 877088774 81553943 533455280 582273012 929504680 515426984 264408147 560327459 533455280 812414090 547547687 963141978 626932919 218611070 587469038 667313812 637657473 458156391 966683628 81337657 431406787 539035187 133739154 299994808 915330573 299994808 696443558 689757867 776352608 750978759 801623766 262406489 431406787 812414090 103669472 382904427 538025980 972710252 915330573 7807006 843005594 232177196 251188854 630238886 270237875 505061211 430101007 965948435 626932919 656191811 719307635 172894131 465759767 252962990 489130642 589760538 547547687 283321520 687988023 907095826 788737791 29473993 678884863 781246194 885549757 485509833 585165457 2076768 770864525 137529801 553191189 792846009 433686203 676975489 931640418 79523589 886917295 888259120 816971086 744008188 502849508 815123402 351424753 47349911 270237875 174862116 538025980 396138845 451817798 597784477 846351340 509019925 328462418 36265302 29069209 727827821 98287438 831241130 562773407 968755777 663971090 106790696 554222239 218611070 888553258 744008188 214650974 789617647 860377902 405444604 592639233 646710523 954227928 163229392 567343883 296751278 650990283 678474526 77819776 577673184 513440742 938705675 857535330 925555858 214244685 698320352 780870754 579757115 751925989 285947848 251188854 55108095 138393155 397928982 540976336 836376015 295606018 729868696 806664207 456137963 133739154 250885472 499057158 960796073 322974842 964902255 650697444 215052415 838655651 317751260 32075030 735891721 480361743 969494113 831467447 152314280 539957336 349644605 966683628 543945175 765027062 587179274 43970470 299994808 585165457 314069534 971894015 55018341 284588557 851759377 181668423 114409323 135975430 885000402 886917295 218611070 548748527 276676140 156817178 315297566 101231409 399037712 396743027 117210451 74587532 349076114 637657473 815123402 583924389 852755974 572588387 349076114 424594759 400178823 754580366 32954995 918225489 625664180 640849273 761330904 619842427 808838846 98824830 674446970 396743027 683621666 259646582 601740259 24188768 995876182 568104980 449022331 278160655 778123726 145559297 699230813 687988023 175507355 247221668 891279504 177689820 733642252 21190596 315297566 292149520 735891721 64420967 963141978 946612927 587179274 56154381 984047482 367026304 155241439 533864165 209497607 64420967 546141085 56154381 978947655 950673785 338312978 73848009 625664180 597206610 196460706 546679009 726950461 255644658 81337657 590208882 554242697 654830523 808838846 152243323 397928982 773781000 27735709 802009078 732245352 542382913 152314280 539381059 588034909 735696627 78775552 485153920 121069546 502849508 249670598 831467447 38085353 776352608 130160246 420052652 968755777 619842427 971549242 886917295 506178629 396050095 511277493 600441802 256866745 292696118 213097363 117931902 376974209 760231333 119279869 251042004 780061015 776352608 53966525 375066210 550322314 527654256 88335614 296305836 496698204 101231409 960796073 230662076 767187616 67700412 604881661 540394532 146573202 80485362 858040709 840075867 616057762 567948101 522332929 234980621 912948600 816971086 49614749 893019475 325554372 438183310 426814174 396050095 757709512 363976852 758889515 271484655 175060805 603931167 283321520 230662076 400178823 913521589 134801439 211958450 938705675 23973553 771803404 456956861 597784477 284588557 628820972 846351340 35128915 702364434 997329398 953882020 962430008 575895835 283321520 575895835 247822207 190929591 190323279 242530683 727827821 471393875 451521521 518384931 338929165 715779797 767187616 743614603 937158597 840130613 130160246 488295044 776835194 763431295 775682536 551289217 557710104 292972503 668964848 186285312 682170984 721418370 324129364 489130642 800460688 1926282 636434256 837690635 226492467 290117216 187104147 98287438 891279504 554222239 650036494 407629453 650036494 770864525 315297566 215774690 408032939 884059813 592981604 542382913 103219970 956815883 836376015 93478833 962430008 570764323 767187616 80485362 103219970 886917295 835198840 156817178 79523589 484158080 514768035 295606018 960543625 433686203 550322314 83066601 52243955 422532994 960796073 920721173 711455867 237389399 456137963 953882020 776835194 209789164 496698204 31615284 311808379 98287438 787269565 251042004 78775552 190979155 179981178 142903358 789617647 735696627 509144872 719307635 795472528 746992914 174862116 896571061 889608806 163769090 47529701 518384931 349076114 40656291 560623000 503666498 978947655 750563611 780061015 567774282 850484222 949084393 451521521 931086800 711455867 738612855 382904427 774489082 579757115 203331888 485509833 174140940 786320493 931086800 187104147 837690635 702745028 211958450 964902255 527654256 554242697 638516505 560623000 190979155 396937914 804406873 324129364 900796599 787269565 471393875 975478549 887794841 758889515 242028021 699733109 900116034 109054120 884059813 396937914 681930584 179981178 24188768 750978759 275202504 780061015 328462418 858040709 570764323 283321520 152618584 559957428 465697134 955730659 209789164 134971740 765027062 38085353 926045944 732559957 247006479 960796073 31615284 853903669 109369069 498045048 776352608 590918818 396050095 315297566 721418370 112090095 816971086 56927881 637657473 817743547 765027062 984047482 653201202 112390393 417074904 968670974 266213579 623206361 835339516 382210484 305990981 835198840 563678994 140551765 363976852 891279504 938140278 77685914 38338132 7807006 465697134 674446970 660765062 353964006 991073887 616057762 641635851 735710261 215792516 727578179 661321016 683621666 921198791 546141085 886149363 498045048 142903358 349076114 163769090 943793512 183440003 726950461 31215478 205387898 153196022 306597948 64420967 571019028 430088921 969494113 911302173 582273012 433686203 885000402 640849273 543865019 982353486 778123726 660765062 749497174 152618584 175060805 98287438 328764419 645094664 910818482 632014852 568142039 210621083 588034909 195957995 459452716 32806834 912948600 295606018 79509313 99294732 688177128 344876805 744008188 860477160 632378665 518384931 624819674 151364594 786320493 650697444 66490779 771321738 349644605 626932919 449022331 862177563 220576148 10475035 172894131 660095934 829983432 269911067 225771141 270237875 509019925 575895835 566554997 678884863 77685914 814662325 209497607 931966477 874297853 687988023 371179314 675472009 52243955 663971090 571019028 953882020 505061211 247841801 48746678 705304879 635302209 80415088 556619020 201717402 577673184 271484655 328764419 994877696 697742034 292696118 870201182 209789164 53966525 539957336 638790258 969294148 630977998 264408147 789617647 590208882 531333917 264750083 630629857 464130920 812044550 763431295 77685914 518384931 249670598 626932919 307403622 148087911 475344103 490344724 616796881 950673785 324129364 123073176 793291205 945394518 182214511 289918211 426814174 738855203 155241439 814295984 209497607 13112382 405444604 31215478 939725993 920628541 81553943 575023903 87392830 802009078 155241439 24188768 937158597 41538784 686335042 305990981 458156391 585165457 739696834 304621545 630629857 860477160 912948600 886917295 515426984 585165457 396138845 101231409 223299794 32806834 463496366 645094664 531135820 950673785 708053570 367026304 509019925 954677909 495854210 40448245 205387898 838655651 119279869 270237875 179981178 305990981 52243955 513440742 37275245 425392410 997329398 244528344 400178823 215981255 708053570 274113481 5299425 551289217 550322314 206036522 888259120 944068218 140551765 887794841 870201182 941586175 934824360 617908997 81553943 681765297 981996224 824770361 393120342 969294148 627110568 503666498 55018341 862177563 446968233 211958450 485063015 502849508 190323279 662421393 715957434 628523361 152314280 13112382 960796073 640925332 338631458 969294148 571019028 83066601 699733109 746092812 179981178 306607837 548964093 553191189 300892929 915330573 51457589 876868627 451521521 21190596 179981178 72820570 688177128 43970470 36265302 326469359 437743643 490344724 250832323 748408317 735891721 904800517 708094860 931640418 140551765 117931902 786320493 886149363 172382592 254203892 708053570 126695727 179991869 38844979 624819674 532803593 852604705 640849273 505061211 888553258 300892929 511330454 408032939 431406787 682170984 332834875 630629857 675472009 170941326 43970470 310726569 550336314 592981604 920721173 117210451 154538466 172894131 641635851 98231977 904800517 638790258 843005594 632378665 603931167 264100442 275349681 315297566 703490607 287768226 93651148 140551765 922706719 172382592 638516505 546141085 575895835 808614164 202477791 137529801 601630030 764116955 206036522 889608806 237389399 713146141 289736829 623206361 174140940 522663253 650697444 990121035 533864165 727245017 745200166 494336936 456956861 396632533 29069209 916956968 489612980 870201182 628523361 396937914 128188331 103219970 567343883 727578179 753419354 388085842 131323888 787269565 465697134 795472528 375066210 991615550 831467447 237172271 328462418 359859765 947413305 718980624 862254110 451551269 740340897 49614749 950673785 404152565 893019475 589760538 190929591 494336936 293192373 225771141 958668995 249670598 911302173 117210451 142903358 360743135 703514531 458156391 553368896 630629857 702364434 762749463 251042004 739696834 540394532 237172271 78649514 63192647 626833449 907095826 917795074 859168292 358401766 20148474 209789164 711455867 361435434 514768035 424594759 842970782 255644658 965948435 979740237 509019925 305068796 699230813 740340897 509664709 156817178 443960759 617908997 225858850 740882715 588034909 125204206 782533040 854969794 560327459 600441802 835198840 619842427 172894131 367026304 613596687 50241607 885353274 162062292 531135820 344876805 138442062 830619816 613596687 942999703 970911538 858127225 250749017 882364001 155241439 854902633 88335614 931640418 932715562 480361743 420636144 190979155 678474526 661321016 636434256 304621545 812414090 367026304 732245352 838331644 382210484 911302173 119279869 462762217 515426984 619842427 589760538 882364001 970911538 660095934 10369081 942999703 476912096 982416551 708094860 24188768 276676140 492009082 646710523 587469038 446968233 77819776 250885472 746092812 907721720 425392410 328764419 663971090 459617527 577970627 5299425 687988023 667844649 53226850 852107700 67700412 831241130 247221668 604881661 247221668 664041213 950673785 656191811 215977916 907095826 38338132 885000402 152243323 668964848 109369069 390793037 268759041 831380531 502849508 601740259 687988023 970320952 911302173 997329398 746092812 662972501 896571061 369306500 193648030 560327459 637657473 984047482 568104980 448881532 94279561 285947848 893019475 767839638 39220584 232177196 610447918 543945175 78649514 711455867 640925332 2379379 525347105 29473993 109369069 792822959 776820092 664041213 367026304 514768035 776352608 888259120 904800517 860708299 174140940 170938835 322974842 98231977 748408317 52243955 780870754 983113723 73848009 570796148 840130613 63192647 633587956 994587826 299113502 290474734 64420967 485262404 931640418 2076768 583924389 399037712 860477160 514768035 786380583 396138845 795549341 165821462 271484655 632378665 126695727 588034909 567774282 613596687 151364594 130160246 422532994 193515742 774489082 361002681 548748527 719601437 896571061 388085842 242530683 53966525 259646582 170938835 982353486 835198840 683406807 579757115 484158080 109054120 723661847 307060809 982353486 590918818 425392410 81337657 429277230 852604705 626932919 522332929 101231409 420636144 918225489 193515742 954227928 33511708 862177563 831380531 489612980 597784477 103733806 387703244 464130920 713146141 770993588 285947848 302151126 317751260 710224239 787269565 303230482 931005739 975337465 81553943 151364594 2076768 745200166 568142039 542382913 711532060 367026304 337153847 797746066 48746678 511330454 506178629 736624310 682170984 954227928 938705675 465697134 732245352 554222239 252962990 145559297 678474526 247221668 721769014 575023903 315297566 125829791 937158597 438183310 808838846 514650194 159828635 270237875 145885851 967417280 852755974 358401766 53966525 736237188 885141769 430088921 627110568 396050095 349076114 663670886 942899938 966131311 726950461 802009078 225858850 748408317 548964093 597206610 475344103 885995802 458290565 663670886 632378665 424594759 121069546 843005594 20148474 215981255 739696834 115509283 195733178 663670886 155241439 527654256 590918818 944068218 79523589 628523361 117210451 969294148 749497174 884059813 448881532 774489082 246221518 47290536 4519262 838655651 451521521 408395896 408032939 586370291 300892929 424594759 737945381 152523810 207844781 843005594 396632533 862254110 382210484 190929591 2076768 295366548 630238886 230662076 103219970 888699423 588034909 991073887 793291205 917795074 698320352 67700412 299462930 685702028 650036494 783513992 40131409 428572243 968755777 109369069 613596687 926044257 676975489 80485362 808838846 94279561 971549242 289918211 56927881 736237188 20148474 936312210 310726569 945394518 939725993 632402794 134801439 645094664 607965234 152618584 623206361 542382913 995876182 610834602 296751278 407510599 405444604 132556595 850484222 457149478 891279504 270237875 448881532 660765062 604181881 723661847 990121035 809429735 60017144 931966477 729868696 679463383 592970093 944068218 708053570 264408147 218611070 931966477 972710252 542382913 771803404 304621545 387703244 587469038 964902255 904800517 571019028 757815664 733642252 396050095 674446970 575895835 376974209 663670886 359859765 190929591 300892929 42657625 241184545 344620844 405444604 799588075 48746678 242028021 994587826 969294148 874297853 776820092 296751278 93651148 396632533 662421393 40131409 465759767 112390393 93478833 885000402 67831588 225771141 538810384 678474526 709613471 109054120 351424753 98231977 430101007 698320352 23262398 20148474 703514531 931005739 43970470 699733109 553368896 775682536 53525809 829614460 809429735 641231120 896571061 10369081 603931167 81337657 451817798 509019925 302151126 246221518 760370490 146573202 308142020 163229392 630775839 676975489 255644658 36055646 640925332 571019028 142903358 781242822 715779797 937158597 911302173 400218902 956815883 831241130 32075030 729868696 41538784 996943901 21190596 601740259 49317804 787269565 367026304 831380531 944068218 623206361 82689280 87392830 145559297 19911869 264750083 307403622 438183310 841210236 242028021 369306500 351424753 174862116 93651148 749497174 295366548 607965234 525347105 264100442 888699423 526944836 292696118 250749017 303230482 983373150 915330573 800460688 994877696 683621666 132556595 997329398 24188768 711532060 949084393 882804101 481894295 788118407 804406873 252962990 195957995 960796073 660095934 993091440 456956861 27735709 293192373 400218902 539957336 283321520 299113502 646710523 128702236 448881532 115090276 713146141 135975430 757709512 533864165 349644605 290117216 458363994 306258744 896072909 746092812 829614460 295606018 625664180 816971086 767187616 242186770 35128915 887794841 607760956 264408147 396937914 637769046 902464469 264408147 984047482 886917295 815123402 136384659 170941326 128702236 134971740 432089082 338929165 407629453 757709512 128702236 437743643 862254110 698320352 550336314 299994808 774489082 128450928 215792516 858040709 10475035 702745028 570764323 19911869 638516505 520071928 464130920 1736950 900116034 162904272 753419354 792822959 885549757 708094860 67831588 668964848 546679009 250749017 955501918 170938835 887794841 476912096 511330454 557710104 83066601 232177196 600441802 708046990 603931167 476912096 196106606 38085353 754580366 516175014 950497221 5299425 303230482 535533605 967417280 81553943 751925989 841210236 700560235 735891721 163769090 451551269 152523810 604881661 674485068 997329398 917795074 250832323 804406873 628820972 438183310 449022331 854969794 853170454 746992914 888259120 768561257 866568903 457149478 390275103 587469038 376974209 74587532 174335822 633573519 984050047 641635851 143200457 638516505 408032939 72820570 993091440 705304879 174862116 966131311 667313812 663670886 506178629 490344724 511277493 838331644 780061015 142903358 506178629 31215478 4519262 244528344 650036494 900796599 47529701 542382913 390793037 115509283 396138845 177689820 983373150 562773407 992169078 432089082 136412292 295606018 307060809 808866527 831241130 587469038 979750308 270237875 573480571 702364434 413592826 586370291 7807006 600441802 668964848 884072178 866568903 219054502 5299425 215981255 726620654 637939784 560623000 862177563 441621000 975337465 128450928 183440003 852604705 663971090 427184372 876263470 458363994 877167702 338312978 455539394 943235508 695599688 943793512 156817178 616057762 344620844 587179274 430284321 516175014 915330573 220576148 430088921 526944836 547547687 754133002 361435434 953267424 940188502 729868696 201717402 526944836 575895835 424974082 93651148 806744033 941586175 137529801 503666498 546141085 109369069 607965234 64420967 193515742 548748527 47529701 860377902 250749017 457149478 910818482 117931902 739696834 567343883 953267424 29069209 170941326 195957995 885000402 816971086 400178823 82689280 718980624 597206610 604881661 305068796 47349911 632014852 699733109 941586175 866337119 967417280 850484222 598426014 589760538 652018277 711532060 663670886 509664709 490344724 968755777 193648030 607041944 760231333 264100442 131323888 19715614 457149478 697742034 125204206 531333917 846351340 687055288 757850417 937158597 289736829 635302209 183440003 37275245 650697444 546141085 745200166 732245352 855636134 955730659 128188331 715957434 407510599 559957428 215792516 686884353 387176309 5299425 209789164 251367294 746992914 138442062 259646582 767839638 946916156 119279869 242530683 15903366 29069209 812414090 850386354 683621666 736237188 396937914 913521589 522663253 430284321 443960759 354807942 735891721 151506993 764116955 577970627 781242822 736624310 667844649 637769046 934824360 562773407 267829614 251188854 413592826 774489082 808838846 992001870 535533605 703490607 726950461 502849508 19911869 700560235 866568903 674485068 810021050 489612980 997329398 838655651 749497174 481894295 955730659 28363157 394791153 13112382 688177128 703514531 829983432 215981255 327773233 966131311 711455867 286037808 287239117 966131311 225858850 602396426 722013570 303230482 359859765 401452903 371179314 979740237 543865019 128188331 885353274 953882020 283321520 456956861 800460688 203331888 749497174 53525809 349076114 266213579 246058339 512614298 668964848 910850066 237172271 269911067 531333917 911302173 448881532 917452919 462394151 630201811 330274784 215792516 851759377 645094664 993091440 412979540 288072509 67700412 369306500 228290502 702745028 133739154 548964093 117931902 52243955 617908997 786320493 619842427 226492467 32806834 699733109 683406807 885353274 840130613 713146141 190929591 647733367 117931902 573449906 860377902 831380531 13112382 128450928 540976336 397928982 858127225 66490779 251188854 179991869 305990981 965948435 915330573 970320952 945394518 459617527 857535330 618355033 773781000 311808379 632014852 852107700 950497221 726620654 738855203 715957434 771321738 462394151 201717402 554242697 234980621 264297813 860377902 488788762 585165457 36265302 292149520 566554997 115509283 782533040 344876805 29473993 695599688 382210484 874124920 382210484 641635851 196460706 321628921 979750308 979740237 597784477 21190596 556619020 10475035 218611070 47290536 250749017 797746066 446968233 293192373 885353274 60750487 2076768 407510599 515426984 407510599 758889515 840075867 87392830 292696118 872434540 888699423 514768035 567343883 515426984 247221668 708046990 650990283 371179314 195957995 589760538 271484655 103219970 546679009 264100442 354807942 590918818 843005594 667844649 814295984 307403622 242186770 932715562 837690635 103219970 610447918 7807006 251188854 195019158 888553258 400218902 237389399 187104147 803588261 590918818 422532994 902464469 242530683 790270533 854969794 887548285 632014852 485262404 230662076 687055288 712346140 400178823 455539394 667313812 950497221 464444922 877088774 506178629 681930584 817743547 202477791 942866882 888699423 812044550 151364594 727827821 632014852 885141769 101231409 509664709 433686203 172894131 857535330 942899938 918225489 932715562 855636134 889608806 387176309 24089615 674485068 106790696 42657625 831241130 430284321 550322314 286037808 283321520 918225489 4519262 738612855 587179274 40656291 359714925 723661847 638790258 533455280 990121035 623398671 838803091 299113502 495854210 296305836 488788762 195957995 688177128 128702236 498045048 247234349 687055288 292696118 866568903 152618584 749497174 838655651 330205547 637657473 399037712 760370490 315297566 786380583 288072509 140129038 636434256 975337465 506919968 765027062 55018341 396050095 106790696 757815664 686884353 485153920 560623000 662421393 778123726 140129038 943235508 600441802 112090095 196106606 646710523 780870754 732245352 705304879 98231977 451817798 313272965 575023903 808614164 308142020 896029805 746092812 225858850 156817178 630238886 230662076 506919968 77819776 282751746 540976336 170941326 211958450 969494113 715779797 226492467 32075030 793291205 396050095 232177196 835339516 627110568 809429735 225771141 492009082 387703244 533455280 179991869 306258744 910818482 770864525 932715562 617908997 485063015 478351140 330205547 275202504 815123402 351424753 232177196 140129038 520071928 967417280 983113723 117931902 307403622 163769090 213097363 244528344 815123402 125829791 246221518 481894295 932715562 152243323 573480571 412979540 831241130 878442641 630629857 412979540 209497607 807117750 376448548 710224239 241184545 151506993 571019028 154538466 771803404 153196022 145885851 926045944 597784477 138393155 250832323 142903358 252792947 661321016 382904427 562773407 907095826 532803593 106790696 929504680 735710261 292149520 702745028 422532994 852107700 843005594 179981178 768561257 557710104 82689280 975478549 538025980 885647994 344876805 325554372 949084393 338631458 743614603 338929165 913521589 708094860 412979540 790270533 94279561 711455867 266213579 441621000 838655651 241184545 610447918 478892468 67831588 647733367 23973553 511277493 38844979 514768035 663670886 764116955 946612927 964902255 633587956 588034909 308142020 866337119 269911067 187104147 637657473 698320352 885549757 106790696 275202504 382210484 53525809 604881661 305990981 237172271 597206610 776835194 702364434 531135820 591292508 53966525 259646582 638790258 941586175 726620654 632014852 989729323 936312210 616057762 592639233 87392830 456956861 128450928 679463383 782533040 32075030 175060805 15037608 285947848 295606018 795472528 387176309 800460688 254203892 668964848 626833449 324129364 979740237 531333917 783513992 667313812 518384931 290474734 499057158 458290565 857535330 352092606 321628921 223299794 591292508 36265302 408395896 505061211 938140278 172894131 575023903 179981178 429277230 170938835 266213579 938705675 247234349 623206361 83066601 896072909 302151126 182214511 604968568 315343704 72820570 546141085 210621083 60017144 498840912 252962990 237389399 968670974 56154381 413592826 322974842 495854210 695599688 424974082 455539394 283321520 465759767 806744033 746092812 452156279 626833449 459617527 532803593 668964848 430088921 5299425 41538784 739696834 770594967 916956968 709613471 667313812 103669472 247822207 921198791 746394036 969294148 396138845 328462418 205387898 230662076 68748842 920628541 788118407 598543708 790270533 354807942 55018341 266213579 446968233 464130920 223299794 896571061 831241130 525347105 272303478 428572243 159828635 162062292 10369081 438183310 964902255 598426014 964902255 254203892 215052415 888553258 592970093 444897967 145885851 32806834 252962990 838655651 459452716 835339516 248642173 971894015 727245017 247006479 170938835 247006479 390275103 837690635 213097363 133739154 792822959 654830523 337153847 190979155 841780337 958668995 424974082 23262398 165821462 462762217 688177128 539381059 546141085 581063820 789617647 322974842 187104147 877088774 307060809 49317804 287768226 32806834 656191811 610447918 962430008 131323888 972710252 286037808 103219970 630201811 334932282 10475035 506919968 553191189 870201182 193648030 550322314 31615284 337153847 211958450 888259120 681930584 163229392 78649514 708053570 795549341 103219970 567774282 726620654 910850066 762749463 203331888 607041944 286037808 885141769 878442641 624819674 430101007 932715562 632014852 388085842 754580366 225771141 915330573 531333917 269911067 458156391 776820092 835212499 626932919 134801439 40448245 884952974 540394532 441621000 587469038 860708299 685702028 338929165 49317804 424974082 910850066 456137963 795549341 851829959 255644658 353964006 485153920 134971740 358401766 993091440 290117216 829983432 193648030 288072509 702364434 215289803 152866011 359859765 650697444 249670598 351424753 560623000 862254110 174862116 633587956 252962990 351424753 732559957 455539394 887548285 513440742 396138845 838655651 963141978 567948101 624819674 991073887 106790696 268759041 817743547 424594759 885000402 275349681 782533040 888553258 686884353 56154381 130160246 299113502 159828635 632014852 2379379 567343883 543945175 923927991 923715439 98287438 815123402 138393155 167276070 967417280 829614460 637657473 456137963 513440742 213097363 254203892 27735709 696443558 896029805 513440742 288873549 547547687 311808379 284588557 266583970 151506993 119279869 776820092 459617527 209789164 808614164 991073887 38304068 242530683 299462930 936312210 252792947 626932919 66490779 581063820 968755777 709613471 910818482 264408147 360743135 931086800 441621000 32806834 252792947 215792516 163229392 553191189 778123726 674485068 749497174 843005594 984047482 284588557 761330904 261683638 737945381 763431295 136412292 41538784 520071928 396050095 349644605 363976852 314069534 966683628 36265302 862254110 314069534 546679009 749497174 358401766 907721720 743614603 509144872 78649514 764116955 567948101 800460688 738612855 296751278 917795074 220576148 257214051 390793037 660765062 495854210 1926282 387703244 954677909 515426984 186285312 664041213 801623766 962073361 936312210 636434256 633573519 55108095 575895835 285947848 687988023 334211676 932584021 556619020 661321016 789617647 545538425 175060805 275202504 40131409 177689820 390275103 956815883 793291205 67831588 2379379 888553258 543865019 886917295 79523589 641635851 390275103 539381059 733642252 32806834 991615550 292696118 314069534 98287438 509370562 498840912 397928982 465759767 587179274 858127225 448881532 878442641 155241439 653201202 808838846 145559297 793291205 305068796 749497174 408395896 426814174 572588387 145885851 583924389 388085842 691982506 10369081 203331888 145885851 129724737 264100442 503666498 182214511 80415088 630977998 24188768 969494113 656623172 630977998 685702028 511277493 945394518 979750308 771321738 573480571 498840912 175507355 209789164 63192647 618542887 195733178 675472009 174862116 10475035 965948435 992001870 330205547 152243323 146573202 78649514 697742034 430284321 485063015 740340897 727245017 838655651 860708299 109369069 315297566 971894015 441621000 567948101 458290565 344620844 624819674 950673785 568142039 920721173 874297853 513440742 972710252 874124920 668964848 598426014 511277493 721418370 786320493 28363157 572465104 247221668 588034909 292149520 207844781 562773407 866337119 618542887 88335614 678884863 106790696 967417280 488788762 261683638 711455867 896571061 226492467 626833449 918521256 700560235 806792339 920721173 63192647 760231333 112390393 630201811 711455867 913521589 114409323 264408147 689757867 305990981 627110568 851400664 485262404 804406873 829983432 408395896 509019925 140129038 989729323 195957995 498045048 206036522 213097363 38338132 397928982 900796599 359859765 266213579 795472528 503666498 485063015 656623172 806792339 878442641 732559957 302151126 674446970 966683628 664041213 438183310 60017144 465759767 729868696 769327548 174335822 73848009 960543625 709613471 792822959 652018277 53966525 10475035 209497607 619842427 718980624 797746066 858040709 640925332 290474734 278160655 852604705 681765297 891279504 637939784 688177128 687988023 628820972 67700412 196460706 306258744 962430008 247841801 399037712 186285312 870201182 681930584 889608806 125829791 215052415 915330573 543945175 533455280 98231977 244528344 896072909 946612927 215289803 888553258 175060805 527654256 996943901 289918211 256866745 326469359 757709512 703514531 727578179 361435434 433921335 40656291 995876182 306258744 546141085 583924389 371179314 945394518 112090095 296305836 478892468 424594759 627110568 675472009 376448548 407510599 934824360 808866527 943235508 271484655 559957428 292972503 182214511 904771946 509664709 771321738 446968233 769327548 285947848 814295984 29473993 705548145 359714925 540394532 566125822 662421393 962430008 478351140 557710104 840130613 667844649 527654256 953267424 807117750 112390393 315747769 539035187 284588557 662972501 705548145 511277493 21190596 638790258 946612927 884952974 128702236 390793037 920721173 682170984 407091770 618355033 142903358 632378665 438183310 175507355 344620844 556619020 23262398 193515742 660095934 812044550 637939784 940381563 661321016 831380531 492009082 896072909 770864525 776835194 843005594 996943901 138393155 520071928 553368896 635302209 125829791 66490779 77819776 413592826 814295984 979750308 74587532 511277493 740340897 119279869 275349681 965948435 931640418 218611070 489130642 249820698 292149520 361002681 156817178 246221518 736237188 106790696 42657625 315297566 211958450 146573202 886149363 475344103 674485068 20148474 29069209 338929165 125204206 907721720 575023903 744008188 255644658 196460706 862177563 960796073 949084393 63192647 827311105 953267424 994877696 592970093 39220584 130160246 31615284 190323279 917795074 708053570 884059813 543945175 321628921 130160246 540394532 330205547 485153920 592981604 626932919 975478549 32075030 388085842 29069209 589760538 251042004 556619020 432089082 789617647 306607837 526944836 162062292 446968233 125204206 48746678 31215478 353964006 284588557 776835194 401452903 550322314 234980621 207844781 982353486 165821462 922706719 207844781 757850417 630238886 80485362 955730659 247006479 767839638 292972503 2379379 206036522 314069534 488295044 968755777 802009078 719601437 838331644 841210236 956286779 965948435 598426014 689757867 958668995 396632533 115509283 713146141 13112382 145885851 358401766 283321520 358401766 170938835 617908997 241184545 431406787 831241130 746092812 559957428 215792516 910818482 407629453 962430008 814662325 638790258 590208882 963141978 532803593 831241130 451817798 387703244 328462418 170941326 956286779 52243955 600441802 117210451 860477160 485262404 888699423 458290565 695599688 443960759 80485362 396937914 941586175 727578179 293192373 981996224 492009082 969494113 237389399 311808379 662421393 29473993 321628921 771803404 292972503 248642173 760231333 167276070 136384659 694954883 140129038 390275103 562773407 778123726 567774282 885000402 154538466 727578179 838655651 225858850 525347105 353964006 966683628 443960759 228290502 942899938 904771946 991615550 23973553 134971740 760370490 285947848 769327548 638790258 152618584 566125822 148087911 664041213 196106606 349644605 746092812 2076768 950673785 495854210 128188331 56927881 941586175 623206361 807117750 60017144 77819776 891279504 757815664 656191811 837690635 195733178 484158080 960796073 927806038 382210484 587469038 835198840 774489082 718980624 32075030 408032939 401452903 376974209 344876805 960543625 814295984 858798711 53525809 912948600 401452903 223299794 56154381 190323279 298727845 77685914 688534928 568142039 215774690 624819674 568104980 942899938 770864525 727578179 575895835 852604705 255644658 923715439 351424753 630977998 795549341 566554997 255644658 488788762 247234349 808838846 705548145 47529701 703490607 458156391 830619816 378961655 786380583 246221518 481894295 812414090 151364594 573449906 746092812 896072909 799588075 678474526 854969794 509664709 203331888 404152565 567774282 248642173 93651148 708053570 628523361 757709512 969294148 310726569 712346140 179991869 422532994 708053570 882364001 646710523 396806189 408032939 567948101 19911869 910850066 550322314 247234349 841780337 387176309 934824360 296305836 607041944 230662076 968670974 802009078 207442482 503666498 812414090 527654256 749497174 922858580 522663253 886149363 942866882 922706719 970320952 814295984 152314280 553191189 888259120 242530683 77685914 982416551 624819674 94279561 887548285 498840912 607965234 653201202 509664709 424594759 522332929 401452903 729868696 254203892 557710104 722768643 689757867 746092812 81553943 101231409 179981178 956286779 174862116 660095934 136412292 264750083 938705675 274113481 810021050 115509283 604881661 49317804 478892468 259646582 522663253 585165457 250832323 485153920 282751746 153196022 882804101 542382913 264100442 514650194 790270533 975337465 451551269 498840912 400178823 567774282 81553943 344876805 342116147 656623172 718980624 982416551 607760956 735696627 325554372 109369069 49614749 215981255 566125822 926045944 175060805 886149363 590918818 492009082 971549242 24188768 735891721 177689820 831241130 617908997 874297853 214244685 686335042 455539394 433921335 152523810 762749463 553191189 81553943 776820092 628820972 103669472 451521521 586446680 991615550 539381059 37275245 931966477 38085353 888699423 47529701 746092812 516175014 311613451 806744033 244528344 944573659 835339516 943235508 254203892 853903669 251042004 2575238 633573519 283321520 244528344 488788762 816971086 27735709 663670886 196460706 735696627 602832600 955501918 48746678 568104980 2575238 545538425 964902255 13112382 962430008 269911067 159828635 41538784 943793512 215981255 682170984 214650974 205387898 831467447 604881661 904800517 750750593 511330454 573480571 80485362 1736950 420052652 984047482 334299650 452156279 306258744 276676140 586370291 451521521 814662325 938705675 628523361 349644605 855636134 870201182 966683628 806744033 511330454 758889515 117931902 687055288 432089082 607965234 550336314 420636144 407510599 630629857 358401766 451551269 918225489 56927881 74587532 896029805 219054502 531135820 705548145 520071928 407091770 527595027 78649514 186244437 451817798 581831913 956815883 247822207 251188854 984047482 630201811 20148474 302151126 20148474 814662325 78775552 776352608 566554997 695599688 48746678 809429735 851759377 750563611 787269565 603931167 288873549 854902633 452156279 195957995 636434256 703514531 993091440 60750487 87392830 722768643 718980624 688577702 266583970 142903358 307403622 808866527 195733178 663971090 334932282 722768643 35128915 24188768 962073361 577970627 582273012 80415088 256866745 757815664 522332929 887794841 509019925 53226850 313272965 278160655 841780337 322974842 2379379 583924389 932715562 125204206 937158597 771321738 588034909 923927991 579757115 98287438 715957434 186285312 10369081 802009078 792846009 296305836 514768035 408395896 433921335 637939784 19911869 132556595 382904427 814662325 989729323 600441802 290474734 888699423 288873549 911302173 112090095 931966477 174862116 23973553 396937914 128188331 531333917 292149520 650036494 41538784 433921335 650697444 629101079 568104980 225858850 489130642 708094860 451817798 315343704 73848009 854243215 215981255 264100442 304621545 733642252 142903358 571019028 926045944 543945175 809429735 51457589 133739154 494336936 776352608 656191811 162062292 744008188 854969794 66490779 705304879 145885851 932584021 145885851 295606018 451521521 174140940 727245017 299113502 10369081 152523810 711455867 757850417 918521256 538025980 338312978 23262398 267829614 304621545 546141085 247221668 543945175 433686203 10369081 860477160 969494113 824770361 136412292 215977916 328764419 776820092 732245352 264408147 678474526 464130920 276676140 547547687 522332929 835339516 916956968 354807942 382210484 778074990 7807006 745200166 964902255 259646582 152314280 904771946 315297566 53525809 27735709 451817798 870201182 99294732 361002681 804406873 296751278 128702236 337153847 203331888 103219970 610447918 382904427 457149478 451551269 492009082 68748842 422532994 938080232 687988023 829983432 289736829 829983432 331638088 629101079 465697134 514768035 29069209 478892468 251188854 588034909 650990283 831380531 760370490 601740259 662421393 190323279 259646582 616057762 292696118 678474526 152618584 888259120 502849508 581831913 489612980 635302209 757815664 853170454 211958450 464444922 488295044 179991869 315747769 27735709 234980621 299994808 577970627 938456692 351424753 314069534 806664207 172894131 900796599 109054120 148087911 112090095 174140940 852755974 464130920 850484222 696443558 207442482 512614298 98231977 562773407 733642252 900116034 264297813 138393155 220576148 80415088 698320352 553368896 925555858 43970470 896072909 700560235 964902255 942999703 29473993 484158080 607965234 795549341 884952974 407510599 324986193 882364001 789617647 289736829 699733109 80415088 98231977 133739154 573449906 181668423 68748842 678884863 448881532 645094664 687055288 768561257 485262404 760231333 860708299 598543708 159828635 306607837 190323279 322974842 396937914 944068218 997329398 540976336 749497174 917795074 888259120 502849508 866568903 299113502 912948600 93478833 140725908 709613471 625664180 42657625 330205547 633573519 866568903 444897967 754133002 424594759 56927881 640849273 841210236 242530683 338631458 242028021 307060809 926044257 732245352 514650194 382210484 138393155 647733367 542382913 851829959 290117216 252962990 538810384 937158597 604968568 38085353 893019475 19715614 292149520 360743135 152523810 667313812 269911067 215289803 32075030 252962990 195957995 842970782 760370490 209497607 563678994 744008188 290117216 852107700 953882020 566125822 64420967 776835194 123073176 789617647 80415088 531135820 896571061 287768226 67831588 744008188 162062292 456137963 877167702 19715614 550336314 121069546 921198791 589760538 958668995 749497174 702364434 754133002 851400664 38085353 533455280 963141978 538810384 546141085 858127225 678474526 780870754 983373150 259646582 604881661 499057158 396632533 489612980 134801439 354807942 403519778 645094664 170941326 145559297 559957428 401452903 117210451 827311105 53195413 638516505 686335042 103669472 68748842 546679009 310726569 448262245 800460688 290117216 604181881 101231409 727578179 270237875 334211676 109369069 165821462 850386354 859168292 600441802 119279869 877088774 314069534 481894295 267829614 808866527 749497174 518384931 635302209 827311105 667313812 181668423 968755777 32075030 560623000 101231409 36055646 465697134 625664180 275202504 47349911 433686203 283321520 13112382 978947655 650990283 812044550 387176309 190323279 103669472 708046990 142903358 582273012 824770361 174335822 103669472 604881661 710224239 962073361 837690635 715957434 428572243 458156391 950673785 213097363 49317804 560327459 242186770 539035187 485153920 20148474 354807942 852107700 23262398 2575238 72820570 686884353 156817178 628820972 674485068 405444604 201717402 758889515 539381059 715957434 780870754 629101079 302151126 885647994 838655651 179981178 878442641 667313812 877088774 931005739 133739154 829614460 750563611 394791153 478351140 24089615 101231409 87392830 736237188 496698204 850386354 851759377 209789164 960543625 637769046 955730659 816971086 226492467 151506993 172894131 633587956 117210451 926044257 441621000 797746066 298050322 770864525 424974082 654830523 972710252 151506993 400178823 663670886 49614749 915330573 806744033 917452919 592981604 802009078 590918818 38844979 128450928 361435434 858798711 299113502 650036494 921198791 754133002 862254110 143200457 156817178 850484222 604968568 307060809 532803593 167276070 583924389 225858850 264750083 912948600 28363157 376448548 994877696 299994808 28363157 287768226 824770361 24089615 140129038 590918818 425392410 213097363 971894015 885000402 39220584 782533040 234980621 918521256 275349681 516175014 702364434 106790696 743614603 891279504 719307635 324129364 893019475 923715439 904800517 390275103 650697444 601740259 420052652 283321520 550336314 376448548 211958450 485509833 181668423 32954995 293192373 581831913 251042004 88335614 103669472 290474734 638516505 767187616 663670886 989729323 128188331 806792339 151364594 787269565 551289217 424974082 305068796 66490779 628523361 170941326 93651148 403519778 117931902 682170984 855636134 907721720 490344724 732559957 56154381 400178823 13112382 225858850 126695727 942866882 827311105 32954995 971894015 522332929 691982506 371179314 98824830 19911869 687988023 727578179 15037608 780061015 921198791 77685914 266213579 607965234 946916156 81553943 10475035 49948206 637657473 247822207 623398671 618355033 683406807 566554997 874124920 87392830 953882020 787269565 623398671 955730659 430284321 38304068 595030753 668964848 361435434 968670974 920721173 625664180 712346140 390275103 135975430 247822207 746092812 458363994 797746066 338929165 663971090 47349911 254203892 459452716 567948101 4519262 735696627 937158597 712346140 732245352 82689280 557710104 630775839 112390393 858127225 573480571 181668423 314069534 422532994 250832323 886917295 81553943 513440742 390275103 770594967 463496366 553368896 896029805 650990283 162904272 760231333 226492467 709613471 708094860 444897967 699230813 770993588 195733178 748408317 485262404 936312210 572465104 595030753 209497607 628523361 667844649 776820092 776835194 926045944 984047482 703490607 546141085 401452903 835212499 633587956 136412292 838655651 195019158 533864165 376974209 851400664 66490779 931013644 788118407 286037808 24089615 696443558 128450928 266213579 604881661 471393875 560327459 681930584 128450928 361435434 761330904 681765297 613596687 80415088 250832323 583924389 817743547 585165457 953267424 123073176 732559957 408395896 891279504 947413305 636434256 293192373 175507355 778074990 459617527 64420967 396632533 344876805 143200457 32806834 174335822 966131311 850484222 396806189 995876182 251188854 573480571 884072178 451551269 429277230 713146141 6720560 174335822 438183310 860708299 581063820 688177128 332834875 754133002 738855203 170938835 430284321 167276070 183440003 566554997 545538425 943793512 650990283 984050047 982370833 859168292 480361743 106790696 746092812 938705675 888699423 910818482 982416551 145885851 750563611 938456692 21190596 288873549 942999703 750978759 788737791 130160246 559014304 934824360 864016134 463496366 915330573 283321520 855636134 288072509 592639233 964902255 876868627 478892468 271484655 812044550 492009082 475344103 926045944 338929165 261683638 708046990 242186770 806744033 255644658 68748842 637657473 624819674 950673785 506919968 887794841 193515742 746992914 842970782 525347105 476912096 420052652 378961655 542382913 858040709 886149363 172894131 640925332 35128915 854969794 625664180 617908997 711532060 43970470 992169078 691982506 382210484 396050095 352092606 274113481 556619020 801623766 757709512 915330573 109054120 743614603 250885472 709613471 635302209 444897967 405444604 795549341 359859765 94279561 522332929 575895835 24089615 74587532 338312978 438183310 232177196 945394518 396937914 632402794 688177128 679463383 762749463 433686203 186244437 431406787 175507355 177689820 119279869 927806038 170941326 946916156 588034909 304621545 359859765 31615284 851759377 884059813 587179274 595030753 172894131 293192373 251367294 710224239 285947848 888553258 884952974 136384659 32954995 660765062 866337119 242028021 509370562 126695727 757709512 465697134 782533040 428572243 325554372 49317804 744008188 215774690 841780337 401452903 526944836 13112382 858798711 922858580 172382592 109369069 546141085 303230482 997329398 946916156 965948435 685702028 543865019 709613471 463496366 583924389 812414090 219054502 992169078 736624310 246221518 966131311 361002681 53525809 764116955 444897967 713146141 830619816 162904272 251188854 114409323 827311105 713146141 656623172 247822207 53525809 722013570 261683638 971549242 354807942 56927881 407629453 310726569 838655651 170938835 1926282 187104147 363976852 918521256 354807942 688177128 931013644 38085353 702364434 737945381 80485362 159828635 979740237 588034909 23262398 174335822 583924389 910818482 407091770 190323279 770993588 750978759 932584021 136412292 93651148 325554372 703490607 47349911 854969794 63192647 154538466 516175014 480361743 103219970 126695727 607041944 763431295 112390393 42657625 145885851 115509283 209497607 478351140 711455867 753419354 852107700 769327548 560623000 703514531 459452716 53525809 51457589 358401766 601740259 788737791 964902255 562773407 854243215 736624310 750978759 83066601 266583970 299113502 464444922 428572243 971549242 230662076 35128915 966683628 300892929 195957995 310726569 877088774 604881661 757815664 205387898 575023903 750978759 626932919 338312978 21190596 507016471 888553258 624819674 304621545 475344103 321628921 485509833 681930584 963141978 824770361 382904427 247234349 252962990 771321738 592981604 215774690 592981604 481894295 427184372 587469038 209497607 572588387 694954883 261683638 943235508 540394532 47529701 72820570 130160246 396806189 955730659 255644658 912948600 305068796 853170454 920721173 632378665 278160655 522332929 763431295 955730659 303230482 983113723 490344724 943793512 688534928 267829614 230662076 735891721 367026304 452156279 322974842 349076114 703490607 979750308 765027062 498045048 270237875 485509833 723661847 979750308 430284321 359714925 292149520 616057762 600441802 995876182 797746066 196460706 991073887 509370562 430284321 854243215 247006479 762749463 275202504 996943901 152866011 526944836 514650194 2076768 632014852 488788762 264750083 137529801 946612927 602832600 702364434 715957434 931086800 699733109 539957336 36265302 407091770 20148474 126695727 496698204 407510599 618355033 82689280 851759377 722768643 155241439 656623172 130160246 776820092 196460706 585165457 296751278 152866011 664041213 931086800 352092606 237389399 155241439 38338132 727578179 133739154 810021050 115509283 397928982 292696118 252792947 328462418 664041213 757815664 514768035 652018277 746394036 430101007 506178629 913521589 109054120 931086800 853170454 702364434 195733178 299113502 2575238 78649514 426814174 931013644 324986193 264750083 543865019 214244685 550322314 765027062 313272965 804406873 511277493 650697444 38304068 840075867 994587826 922706719 721769014 862177563 764116955 128188331 635302209 462762217 27735709 736624310 754133002 448262245 285947848 944068218 607041944 824770361 371179314 685702028 579757115 254203892 625664180 275349681 727245017 456956861 789617647 183440003 527595027 326469359 324986193 126695727 361002681 533864165 854243215 539381059 938456692 886917295 196460706 586370291 52243955 598543708 441621000 358401766 831380531 417074904 190323279 215792516 543865019 471393875 29473993 882364001 616796881 600441802 179991869 637769046 885141769 136384659 218611070 533864165 246221518 915330573 290474734 567774282 66490779 710224239 128450928 722768643 427184372 47290536 213097363 363976852 495854210 32075030 81337657 247006479 369306500 545538425 831380531 982416551 63192647 550336314 757709512 125204206 577673184 303230482 360743135 131323888 4519262 367026304 767839638 654830523 667313812 572588387 912948600 600441802 942866882 770594967 459452716 412979540 762749463 681765297 463496366 931966477 853170454 776352608 78775552 1926282 729868696 138393155 872434540 876263470 458290565 851400664 213097363 681765297 866337119 932584021 792822959 190979155 850484222 266213579 636434256 763431295 2076768 598426014 733642252 630775839 458156391 757815664 790270533 546679009 296751278 162062292 656191811 326469359 405444604 456956861 399037712 548748527 852107700 969294148 792822959 43970470 997329398 303230482 916956968 559014304 699733109 152618584 7807006 931086800 433921335 432089082 403519778 448262245 590918818 499057158 251367294 211958450 972710252 215774690 5299425 126695727 713146141 465697134 940381563 688534928 2076768 719307635 688177128 140129038 744008188 583924389 352092606 942999703 507016471 570764323 505061211 438183310 218611070 201717402 424974082 152523810 167276070 136384659 761330904 598543708 885000402 626833449 137529801 125829791 539035187 640849273 24089615 913521589 960543625 80415088 572465104 49317804 708094860 705304879 77685914 140129038 737945381 738855203 359859765 401452903 262406489 186285312 963141978 776352608 995876182 396806189 264297813 53525809 400178823 538810384 33511708 738855203 196460706 958668995 727827821 489130642 287239117 838331644 902464469 712346140 163229392 653201202 970320952 824770361 932715562 618542887 190323279 598426014 754133002 286037808 165821462 138393155 800460688 877167702 48746678 13112382 394791153 538810384 300892929 740340897 970911538 967417280 960796073 136384659 249820698 922858580 4519262 332834875 925555858 546679009 577673184 619842427 970911538 152243323 246058339 808866527 981996224 219054502 186244437 949084393 507016471 918225489 223299794 661321016 735710261 465759767 299462930 29069209 835212499 776820092 35128915 117931902 838803091 878442641 711455867 660095934 155241439 74587532 134971740 633573519 650036494 295366548 566554997 484158080 394791153 417074904 19715614 481894295 29473993 567343883 427184372 462762217 494336936 6720560 117210451 296305836 182214511 525347105 641231120 683406807 328764419 215977916 195733178 663971090 711455867 23262398 762749463 21190596 324986193 163769090 10369081 268759041 968670974 769327548 943235508 633573519 134971740 242186770 944573659 123073176 509370562 31615284 889608806 56154381 287239117 215774690 87392830 567948101 143200457 430088921 570796148 67700412 729868696 743614603 505061211 982370833 667313812 550336314 944573659 331638088 543865019 982353486 449022331 975337465 896072909 129724737 290474734 430101007 727578179 305068796 516175014 512614298 403519778 387176309 750750593 257214051 353964006 681765297 573449906 151364594 296751278 938140278 371179314 38844979 400218902 882364001 719601437 854969794 338631458 304621545 758889515 457149478 288873549 900116034 630977998 816971086 597784477 882364001 607760956 570764323 19715614 489130642 134801439 788737791 505061211 255644658 403519778 757815664 488788762 80415088 55108095 917795074 767187616 888699423 970911538 50241607 942866882 186285312 462394151 633587956 943793512 780870754 463496366 586446680 51457589 430284321 983113723 757850417 496698204 247006479 607965234 471393875 851829959 214650974 371179314 94279561 152314280 292696118 968670974 559014304 27735709 887794841 682170984 401452903 697742034 428572243 632378665 877088774 592970093 412979540 667844649 484158080 433921335 695599688 560623000 597206610 2076768 387176309 854243215 920721173 140725908 315747769 851759377 292149520 812414090 259646582 590918818 808866527 394791153 746092812 960796073 786380583 727827821 125829791 55108095 15037608 841210236 131323888 349076114 286037808 787269565 738612855 337153847 663971090 60017144 214650974 310726569 266213579 560623000 681930584 979750308 315747769 526944836 512614298 63192647 967417280 667313812 93478833 812044550 862254110 520071928 162062292 172382592 551289217 732245352 591292508 88335614 432089082 170938835 857535330 337153847 945394518 788118407 6720560 817743547 41538784 698320352 93651148 313272965 886149363 146573202 408395896 338929165 949084393 713146141 617908997 325554372 430088921 35128915 814295984 288873549 257214051 342116147 776352608 713146141 633587956 48746678 367026304 33511708 344876805 186244437 78649514 882804101 660765062 910818482 242186770 24089615 196106606 841210236 247221668 306597948 888699423 718980624 290117216 315297566 490344724 48746678 685702028 325554372 420052652 656191811 678884863 932715562 242186770 835198840 101231409 152314280 900116034 758889515 304621545 47349911 230662076 885141769 956815883 888259120 264408147 47349911 129724737 103219970 562773407 24089615 753419354 252962990 156817178 324986193 703490607 771803404 601630030 314069534 581063820 620243558 956286779 220576148 927806038 735710261 289736829 570796148 876263470 735891721 678884863 650036494 888699423 55018341 533455280 955730659 982353486 32954995 83066601 288072509 489612980 853903669 702364434 282751746 591292508 19911869 704431513 668964848 944068218 573480571 6720560 396632533 567343883 349644605 478351140 515426984 877088774 196460706 946916156 942899938 927806038 851759377 32806834 282751746 247841801 792846009 21190596 713146141 674485068 390275103 786380583 134971740 835339516 674446970 29069209 81337657 595030753 970320952 721418370 699230813 332834875 130160246 950673785 462394151 915330573 792846009 292149520 554242697 484158080 33511708 396806189 602832600 550336314 995876182 525347105 462394151 145559297 795472528 511330454 63192647 778074990 223299794 688534928 858798711 623398671 494336936 586370291 2575238 783513992 172382592 586370291 938080232 806664207 577673184 132556595 452156279 498840912 963141978 214244685 767839638 950497221 560327459 942999703 371179314 743614603 507016471 864016134 960796073 264408147 526944836 10475035 349076114 311613451 349644605 53525809 49948206 979740237 727245017 430088921 494336936 548748527 225771141 840075867 342116147 83066601 400218902 547547687 613596687 302151126 396138845 255644658 264100442 660765062 750978759 950673785 458290565 103669472 252792947 808866527 771803404 956286779 866337119 53525809 285947848 152618584 68748842 503666498 588034909 242186770 983113723 464130920 778123726 438183310 515426984 215977916 750750593 215792516 449022331 540394532 288072509 503666498 808838846 490344724 866337119 492009082 888259120 884059813 287239117 771321738 757709512 640849273 256866745 760370490 604881661 830619816 328764419 778074990 722013570 674485068 195733178 193648030 570796148 23973553 162904272 927806038 726950461 117931902 287768226 553191189 729868696 807117750 246058339 430284321 618355033 885549757 130160246 888699423 817743547 618542887 757709512 888553258 288873549 942999703 806792339 553368896 137529801 900796599 262406489 492009082 554242697 954677909 995876182 910850066 732559957 38844979 885353274 269911067 315343704 203331888 882804101 662421393 193515742 10475035 338929165 831467447 971549242 408395896 960543625 770993588 459452716 538025980 314069534 332834875 426814174 78649514 328764419 275202504 509144872 471393875 559957428 922706719 938456692 244528344 55018341 900796599 994587826 83066601 981996224 129724737 165821462 151364594 925555858 153196022 35128915 550336314 143200457 264750083 978947655 344620844 522663253 827311105 719601437 408395896 459617527 922858580 349644605 546679009 138442062 292149520 853170454 511330454 683621666 572588387 650036494 424594759 496698204 900796599 138442062 967417280 288072509 132556595 662972501 949084393 140725908 932584021 874297853 695599688 4519262 688534928 393120342 303230482 557710104 396806189 531135820 274113481 330274784 723661847 298050322 344876805 462394151 917452919 288072509 271484655 571019028 887794841 932715562 637939784 543945175 77819776 931005739 750563611 546141085 215977916 369306500 32806834 162904272 430088921 324129364 735696627 971549242 923927991 882804101 306607837 698320352 293192373 630629857 484158080 87392830 803588261 746394036 254203892 628820972 602396426 554242697 128188331 781242822 966131311 687055288 24188768 698320352 465759767 172894131 900116034 68748842 896571061 993091440 322974842 393120342 457149478 505061211 193648030 134801439 827311105 393120342 885549757 405444604 322974842 613596687 797746066 334932282 911302173 590918818 126695727 698320352 591292508 604881661 885995802 711532060 931640418 264297813 586446680 448881532 887794841 557710104 247006479 353964006 485153920 310726569 969294148 250749017 551289217 962073361 910850066 400218902 740340897 535533605 736624310 495854210 748408317 136412292 803588261 38085353 831467447 371179314 795549341 735891721 592639233 750978759 43970470 962430008 878442641 559957428 954227928 699230813 850386354 349644605 305068796 836376015 760370490 991615550 887794841 782533040 931013644 246058339 451817798 910818482 681765297 853170454 242530683 393120342 837690635 249670598 242186770 2076768 73848009 729868696 640925332 938705675 887794841 51457589 816971086 623206361 545538425 462394151 31615284 970320952 366854683 852107700 407629453 353964006 247234349 810021050 215977916 51457589 396050095 514768035 278160655 932715562 183440003 361002681 590208882 476912096 751925989 283321520 433686203 396138845 760231333 66490779 10475035 858798711 140129038 620243558 846351340 55018341 695599688 789617647 662421393 179991869 601630030 667313812 174140940 686335042 40448245 251367294 654830523 505061211 922706719 638790258 264408147 767187616 661321016 664041213 876868627 699733109 275349681 767839638 109369069 910818482 50241607 831241130 274113481 251367294 140129038 5299425 581063820 498045048 827311105 884952974 514650194 507016471 444897967 727245017 542382913 560327459 982353486 47349911 29069209 761330904 878442641 937158597 851400664 283321520 931013644 249670598 132556595 627110568 489612980 854243215 219054502 313272965 268759041 400218902 64420967 388085842 746092812 10369081 735696627 629101079 969294148 698320352 768561257 220576148 274113481 638790258 955501918 506178629 885549757 152314280 656623172 996943901 769327548 427184372 768561257 625664180 230662076 560623000 254203892 313272965 396743027 55018341 125829791 737945381 650990283 852604705 145559297 667844649 148087911 195019158 152618584 306597948 514650194 782533040 278160655 36265302 431406787 476912096 610447918 571019028 375066210 764116955 876263470 174335822 455539394 781246194 992001870 940381563 6720560 764116955 67700412 697742034 854902633 330205547 947413305 488788762 774489082 170941326 751925989 195019158 610447918 718980624 503666498 650036494 786380583 40131409 215774690 708094860 888699423 762749463 82689280 994587826 773781000 162904272 575023903 134801439 630775839 140551765 303230482 306597948 367026304 616796881 884059813 727245017 887794841 20148474 966131311 174335822 162062292 174862116 151364594 566554997 49317804 764116955 422532994 858798711 600441802 458156391 918225489 327773233 215792516 870201182 420052652 943235508 559014304 237172271 444897967 592970093 230662076 509144872 885549757 290474734 746092812 81337657 42657625 602832600 407091770 793291205 563678994 560327459 862254110 36055646 743614603 964902255 28363157 792846009 660765062 835198840 151506993 829614460 572588387 727578179 274113481 687055288 702364434 246221518 542382913 557710104 803588261 543945175 23973553 944573659 674485068 896072909 862254110 359714925 177689820 509019925 640849273 250832323 254203892 256866745 257214051 218611070 743614603 250832323 857535330 313272965 679463383 433921335 29069209 721769014 31615284 56927881 228290502 764459345 577970627 193515742 533455280 713146141 190979155 535533605 712346140 995876182 641635851 531135820 101231409 248642173 367026304 250885472 206036522 193515742 938140278 944573659 656623172 616796881 455539394 984050047 117931902 866568903 806664207 962073361 367026304 630238886 688577702 650036494 271484655 249820698 950673785 285947848 674485068 792846009 40448245 647733367 917795074 458363994 904771946 793291205 920721173 378961655 736624310 520071928 740882715 506919968 115090276 207844781 723661847 324129364 367026304 299994808 597206610 511277493 860477160 737945381 98824830 338929165 577970627 145885851 215981255 509019925 42657625 997329398 465759767 560623000 401452903 250885472 275349681 686884353 710224239 190323279 503666498 56927881 888553258 964902255 650697444 283321520 860477160 896029805 154538466 33511708 917452919 620243558 746092812 858040709 478351140 251367294 788737791 87392830 358401766 266583970 293192373 267829614 24188768 627110568 219054502 170941326 304621545 754133002 936312210 939725993 683406807 272303478 292696118 686884353 311613451 509664709 768561257 810021050 203331888 758889515 633573519 186244437 344876805 702745028 941586175 307403622 10475035 687055288 695599688 458156391 757815664 885000402 864016134 134801439 299113502 910818482 98824830 866337119 760231333 667313812 722768643 396632533 407091770 179991869 539381059 232177196 99294732 63192647 675472009 175060805 979740237 87392830 344876805 175060805 632014852 577673184 915330573 207844781 196106606 792822959 702364434 175507355 886149363 943793512 802009078 722013570 292696118 758889515 911302173 37275245 746092812 953267424 29069209 587179274 738855203 566125822 125829791 874297853 991073887 754133002 363976852 328764419 152243323 267829614 623398671 509664709 299113502 718980624 966131311 516175014 261683638 889608806 814662325 887548285 455539394 400218902 247841801 196460706 321628921 338312978 688577702 940381563 152866011 790270533 632402794 694954883 430101007 589760538 412979540 2379379 254203892 627110568 799588075 226492467 208625324 170938835 703490607 531333917 490344724 140725908 511330454 209497607 661321016 939725993 562773407 776835194 918225489 390275103 289736829 15903366 215774690 382210484 32075030 248642173 770864525 775682536 358401766 47349911 133739154 207442482 183440003 2379379 683406807 88335614 904771946 907095826 518384931 451551269 966131311 140551765 610447918 636434256 799588075 758889515 42657625 989729323 674485068 285947848 206036522 394791153 67831588 262406489 82689280 850484222 738855203 37275245 663670886 744008188 633573519 764459345 874124920 566125822 702364434 506919968 575023903 638790258 954677909 145885851 840130613 405444604 210621083 179981178 490344724 77685914 877088774 382904427 503666498 300892929 746092812 687055288 128188331 299994808 214650974 337153847 956286779 781242822 455539394 972710252 123073176 53195413 630201811 560327459 15037608 403519778 814295984 854243215 153196022 981996224 292972503 165821462 770864525 310726569 78649514 5299425 518384931 207844781 751925989 943235508 255644658 371179314 215981255 718980624 351424753 646710523 840075867 650036494 626932919 589760538 562773407 264297813 740882715 485509833 303230482 939725993 219054502 237172271 944068218 49614749 799588075 852107700 854902633 968755777 532803593 400218902 632014852 618355033 971894015 38085353 93478833 390793037 412979540 943235508 687988023 570796148 633587956 267829614 438183310 757709512 736237188 979750308 926044257 829614460 545538425 475344103 931640418 632378665 47290536 888259120 539381059 775682536 597206610 678474526 858127225 548964093 838655651 780061015 211958450 456137963 944068218 960796073 678884863 613596687 887794841 338631458 361435434 782533040 98287438 641231120 746992914 550322314 408395896 992169078 991073887 55018341 78649514 812044550 251042004 382210484 703514531 732559957 214650974 338312978 950497221 359714925 626932919 764459345 887794841 788118407 637657473 925555858 451817798 726950461 128188331 179991869 637939784 55018341 72820570 283321520 533864165 664041213 654830523 313272965 663670886 718980624 662421393 732559957 344876805 573449906 927806038 683621666 24188768 249820698 900796599 778123726 257214051 300892929 570764323 33511708 946916156 32954995 696443558 4519262 375066210 20148474 412979540 829614460 286037808 195733178 931640418 186244437 804406873 137529801 567774282 60017144 723661847 543945175 254203892 953267424 538025980 607041944 540394532 607760956 237389399 686335042 209789164 838803091 704431513 330205547 900116034 396937914 592639233 378961655 289736829 256866745 602396426 996943901 387176309 175507355 746092812 590918818 931966477 462394151 603931167 507016471 289918211 713146141 944068218 683621666 858127225 47349911 518384931 509144872 15037608 889608806 626932919 674446970 721418370 48746678 967417280 475344103 858127225 159828635 101231409 509370562 425392410 49614749 428572243 342116147 251188854 592981604 695599688 888259120 547547687 285947848 628523361 556619020 550336314 852755974 363976852 237172271 15037608 307403622 662421393 117210451 115090276 506919968 950673785 885000402 264750083 850484222 807117750 448881532 780870754 193515742 633587956 396632533 429277230 702745028 769327548 790270533 888699423 53966525 117931902 36055646 361435434 775682536 858127225 330274784 542382913 218611070 878442641 134971740 490344724 446968233 462762217 516175014 645094664 577673184 660095934 272303478 927806038 246221518 464130920 806792339 632402794 630977998 210621083 732559957 850386354 632378665 637769046 338929165 603931167 727578179 774489082 780061015 808866527 134971740 942999703 557710104 660765062 597784477 862177563 338312978 215774690 393120342 511330454 688177128 513440742 47529701 788737791 223299794 430088921 334932282 982353486 851829959 298727845 727578179 900116034 581831913 290117216 601740259 617908997 788118407 305990981 715957434 600441802 781246194 215792516 509664709 151364594 792822959 93478833 841210236 745200166 963141978 884059813 699733109 585165457 713146141 550336314 522332929 28363157 334211676 735696627 205387898 481894295 719601437 712346140 938705675 854902633 597784477 538810384 315343704 598426014 307403622 774489082 624819674 56154381 424974082 433686203 175507355 982416551 940381563 344620844 174862116 275349681 577673184 904771946 215052415 982353486 812414090 23973553 647733367 278160655 360743135 662421393 838803091 255644658 664041213 735696627 852604705 315747769 812414090 653201202 163229392 619842427 800460688 196106606 937158597 332834875 889608806 259646582 223299794 838331644 995876182 140129038 991615550 830619816 387703244 132556595 566125822 687988023 711455867 882364001 509370562 183440003 607965234 876263470 313272965 795549341 955730659 548748527 780061015 757850417 2076768 202477791 1736950 753419354 441621000 760231333 943235508 242530683 167276070 838331644 568142039 915330573 831380531 465759767 727245017 268759041 165821462 322974842 884952974 801623766 136412292 860377902 88335614 538025980 870201182 837690635 159828635 153196022 793291205 674485068 699230813 24188768 686884353 770993588 47529701 430088921 795472528 799588075 136412292 408395896 376448548 923927991 342116147 913521589 601740259 632014852 458363994 626833449 852604705 954677909 494336936 295366548 831241130 769327548 726620654 98287438 446968233 109369069 708046990 202477791 708053570 753419354 694954883 131323888 694954883 181668423 283321520 181668423 330274784 514650194 400218902 67831588 399037712 247006479 835198840 489130642 853903669 78649514 795472528 183440003 449022331 885995802 1736950 215981255 195019158 874124920 60017144 597206610 955730659 331638088 334211676 685702028 249670598 257214051 207442482 637657473 647733367 351424753 186244437 50241607 138442062 681765297 885353274 128702236 732245352 663971090 780061015 860377902 635302209 43970470 667313812 328462418 955730659 950673785 749497174 41538784 313272965 32806834 853903669 193648030 458363994 723661847 808614164 518384931 106790696 525347105 119279869 900116034 506919968 736237188 708053570 420052652 984050047 49317804 338312978 430284321 761330904 966131311 433921335 654830523 838803091 228290502 437743643 567343883 387703244 567343883 360743135 67700412 686884353 931640418 349644605 103733806 698320352 39220584 718980624 735696627 246058339 56154381 246058339 488295044 220576148 650990283 960543625 722768643 330274784 654830523 546141085 451817798 851829959 806664207 817743547 50241607 667844649 600441802 317751260 351424753 327773233 152866011 627110568 133739154 79523589 151364594 55108095 910850066 885647994 242530683 607041944 208625324 795472528 21190596 938080232 575023903 625664180 542382913 808614164 736624310 509144872 864016134 592970093 270237875 650036494 843005594 167276070 896571061 509370562 148087911 394791153 814295984 437743643 49317804 750750593 67700412 687055288 773781000 56927881 123073176 317751260 136384659 103219970 478351140 179981178 304621545 196460706 214650974 907095826 904800517 994587826 722768643 739696834 804406873 35128915 295606018 248642173 814295984 205387898 911302173 991615550 305068796 112390393 745200166 853903669 663670886 267829614 715779797 970320952 687988023 697742034 946916156 209497607 663971090 88335614 163769090 885647994 115090276 754133002 284588557 852107700 610834602 498045048 425392410 246058339 274113481 960796073 152618584 49614749 190929591 891279504 835339516 775682536 74587532 781246194 15037608 749497174 598426014 907095826 465697134 27735709 630201811 782533040 572588387 646710523 581063820 250749017 703514531 382904427 567948101 190323279 633587956 559957428 80485362 975478549 888553258 495854210 630775839 960796073 21190596 299994808 363976852 337153847 270237875 420636144 969294148 996943901 214650974 266583970 884072178 556619020 462762217 852755974 308142020 10369081 77819776 778123726 99294732 349644605 710224239 616796881 786380583 944573659 518384931 78775552 681930584 24089615 884059813 850484222 653201202 353964006 503666498 509019925 946916156 48746678 163769090 369306500 591292508 506178629 128188331 964902255 363976852 215289803 23973553 103219970 754580366 48746678 73848009 932715562 654830523 175507355 663670886 923715439 678884863 488788762 117931902 400178823 401452903 983113723 145559297 330274784 783513992 841210236 266213579 119279869 430284321 218611070 215981255 121069546 140129038 443960759 551289217 390275103 455539394 925555858 757850417 764116955 888699423 815123402 202477791 607965234 210621083 884952974 753419354 806792339 305990981 800460688 623398671 209497607 654830523 121069546 152618584 248642173 31615284 641231120 628523361 330274784 210621083 613596687 512614298 88335614 512614298 535533605 661321016 134971740 295366548 352092606 375066210 388085842 548748527 307403622 78649514 174335822 660765062 393120342 799588075 175507355 292149520 262406489 117931902 205387898 131323888 36055646 954227928 970911538 202477791 623206361 152523810 932715562 814662325 851759377 570764323 81553943 478351140 2379379 563678994 613596687 67831588 53195413 967417280 934824360 691982506 215289803 595030753 607965234 292696118 515426984 553368896 324986193 780870754 708094860 855636134 488788762 660095934 882804101 152523810 735710261 926044257 851829959 656623172 831380531 927806038 592981604 966131311 27735709 922858580 522332929 945394518 456137963 575023903 589760538 941586175 735710261 448262245 495854210 195957995 207844781 602396426 522332929 598426014 635302209 53525809 719601437 982370833 733642252 32075030 247822207 917452919 984050047 64420967 767187616 210621083 683621666 763431295 404152565 156817178 485262404 750563611 338631458 490344724 130160246 489130642 699230813 289736829 40131409 484158080 964902255 514650194 925555858 663971090 509019925 966683628 912948600 738612855 859168292 581063820 708046990 47290536 829983432 101231409 464444922 650697444 925555858 455539394 573480571 776820092 19911869 585165457 764116955 275349681 682170984 512614298 635302209 230662076 979750308 354807942 632378665 499057158 592981604 950497221 509144872 946612927 990121035 743614603 543945175 591292508 179991869 145559297 300892929 944068218 572465104 331638088 607041944 944068218 852755974 637769046 172894131 152243323 413592826 882364001 426814174 850386354 570796148 268759041 559957428 532803593 852107700 831467447 515426984 154538466 38304068 196106606 850484222 913521589 942866882 816971086 885353274 1926282 853170454 242186770 618355033 488295044 744008188 850386354 143200457 776352608 420636144 326469359 993091440 215792516 938080232 843005594 850484222 366854683 992169078 153196022 205387898 918225489 112390393 152618584 223299794 193648030 446968233 74587532 613596687 954677909 866568903 292972503 698320352 945394518 66490779 228290502 509144872 129724737 98231977 431406787 866568903 945394518 112390393 344876805 250832323 142903358 940381563 632402794 287768226 334299650 378961655 887794841 186244437 855636134 787269565 361435434 630977998 275349681 462394151 632402794 604181881 304621545 246221518 843005594 668964848 190929591 597784477 738612855 215289803 770594967 81337657 103733806 550322314 551289217 311808379 795549341 256866745 396743027 859168292 587469038 32954995 776820092 850484222 600441802 103219970 128702236 509144872 843005594 776835194 117931902 272303478 911302173 885000402 511330454 835212499 860477160 60017144 156817178 944573659 210621083 249670598 499057158 761330904 652018277 396138845 917795074 449022331 125204206 369306500 753419354 754133002 900796599 568142039 50241607 616796881 209789164 964902255 710224239 630238886 103733806 448881532 824770361 143200457 201717402 36265302 261683638 413592826 292972503 137529801 412979540 88335614 306607837 810021050 211958450 213097363 293192373 715957434 215977916 24089615 654830523 786320493 570764323 613596687 757815664 2076768 503666498 250885472 448262245 249820698 209789164 750978759 743614603 854243215 904771946 237172271 322974842 68748842 128188331 790270533 148087911 325554372 366854683 334211676 567774282 923715439 598426014 762749463 830619816 352092606 837690635 829614460 499057158 382904427 563678994 963141978 215981255 262406489 740882715 511277493 570764323 232177196 695599688 452156279 568104980 589760538 305990981 19911869 709613471 485509833 42657625 787269565 915330573 851829959 885549757 163229392 77819776 475344103 723661847 852107700 396806189 121069546 407091770 896072909 926045944 992169078 929504680 143200457 754580366 186244437 877088774 337153847 802009078 527595027 533455280 143200457 56154381 394791153 918225489 38304068 630775839 509019925 940188502 942866882 546679009 939725993 940188502 121069546 156817178 667844649 803588261 359714925 503666498 996943901 67700412 853170454 926045944 607760956 214244685 218611070 938140278 225858850 858127225 965948435 351424753 853903669 931640418 764116955 29069209 858040709 1926282 579757115 354807942 87392830 567774282 267829614 358401766 635302209 142903358 237172271 941586175 546141085 547547687 699733109 344620844 891279504 917795074 36265302 776352608 163229392 709613471 969494113 838331644 172382592 193648030 448881532 49317804 225858850 32075030 448881532 101231409 630238886 788737791 53195413 591292508 7807006 271484655 727245017 715779797 393120342 590208882 718980624 802009078 449022331 151506993 775682536 941586175 556619020 480361743 60017144 587469038 494336936 311613451 726620654 801623766 616796881 955501918 694954883 803588261 778123726 444897967 771803404 513440742 925555858 674485068 60017144 152618584 36055646 765027062 686335042 641635851 315297566 922706719 767839638 704431513 251367294 328462418 397928982 969294148 2379379 39220584 36055646 15037608 195733178 923927991 944573659 650697444 51457589 688577702 778123726 457149478 522663253 80415088 613596687 305068796 885000402 857535330 448881532 183440003 792846009 559014304 764116955 328462418 548964093 750563611 476912096 407510599 992169078 38844979 539035187 967417280 942866882 633587956 708046990 827311105 330274784 284588557 137529801 271484655 15903366 746992914 732245352 358401766 838803091 462762217 852604705 703514531 577673184 683406807 10369081 827311105 806792339 420052652 390275103 39220584 964902255 700560235 726950461 705548145 232177196 923927991 889608806 115090276 829614460 921198791 328764419 237389399 298050322 78649514 298050322 954677909 781242822 846351340 464444922 512614298 315297566 361435434 938705675 696443558 276676140 230662076 674446970 208625324 733642252 590208882 607965234 663670886 539035187 876868627 35128915 488295044 984050047 598543708 943793512 768561257 146573202 633587956 781246194 896571061 378961655 247234349 66490779 700560235 290474734 457149478 272303478 994877696 506178629 619842427 159828635 101231409 953267424 835339516 448881532 546679009 589760538 884072178 962430008 344876805 764459345 681930584 223299794 958668995 630629857 43970470 588034909 275349681 515426984 422532994 674446970 799588075 829983432 586446680 860708299 885995802 290474734 83066601 676975489 840075867 390275103 254203892 175060805 753419354 175507355 587469038 577673184 674485068 47529701 753419354 916956968 683406807 808838846 334299650 403519778 129724737 842970782 969294148 993091440 567343883 962073361 420052652 223299794 688534928 162904272 656623172 5299425 295366548 613596687 53525809 413592826 740882715 38085353 765027062 896029805 284588557 36265302 681930584 498045048 586370291 285947848 271484655 641231120 687988023 264100442 429277230 792846009 969294148 152314280 306258744 218611070 6720560 896072909 570764323 35128915 138393155 299462930 862177563 853903669 757815664 353964006 751925989 726950461 915330573 937158597 115509283 338929165 773781000 285947848 417074904 353964006 56154381 991615550 28363157 249820698 587469038 167276070 464130920 170938835 598426014 962430008 28363157 458363994 850386354 792846009 538025980 678474526 109369069 573449906 975337465 33511708 640849273 577673184 929504680 925555858 109369069 852755974 656623172 860708299 927806038 656191811 953882020 789617647 921198791 15903366 401452903 708046990 846351340 446968233 604968568 683621666 430101007 812044550 814662325 749497174 332834875 378961655 50241607 535533605 98287438 112090095 298727845 51457589 778074990 458156391 632014852 686884353 23262398 55018341 581063820 174335822 860377902 160287690 814662325 808614164 498840912 172382592 947413305 68748842 743614603 860708299 604968568 49948206 926045944 630629857 431406787 889608806 396743027 138442062 888553258 727827821 591292508 989729323 563678994 994587826 602396426 109054120 465697134 458363994 206036522 400178823 751925989 678474526 154538466 812044550 674485068 780061015 444897967 163229392 247234349 288072509 39220584 496698204 941586175 38085353 196106606 449022331 956286779 702745028 982370833 592970093 542382913 117210451 15037608 463496366 24188768 226492467 255644658 806792339 15037608 810021050 60750487 27735709 674485068 782533040 630201811 910818482 15037608 572465104 663971090 835198840 587469038 885353274 808866527 781246194 938140278 190323279 50241607 2379379 133739154 463496366 481894295 630238886 488295044 850484222 674485068 463496366 109369069 646710523 750563611 853170454 786380583 590918818 967417280 970911538 289918211 792822959 876868627 399037712 738855203 315297566 302151126 256866745 674485068 566554997 603931167 48746678 259646582 726950461 595030753 647733367 837690635 851759377 485153920 272303478 251042004 559957428 190979155 990121035 750563611 970320952 769327548 63192647 305990981 771803404 290117216 174335822 328462418 699733109 425392410 972710252 396743027 829614460 533455280 836376015 969294148 282751746 23262398 250749017 750563611 324129364 138393155 175060805 774489082 195019158 595030753 902464469 387176309 390793037 201717402 98231977 674485068 66490779 422532994 397928982 292696118 882804101 857535330 299462930 103669472 806792339 332834875 205387898 230662076 266583970 760231333 571019028 927806038 443960759 264408147 889608806 640925332 590918818 904771946 979750308 900116034 757709512 428572243 937158597 499057158 246058339 884059813 509370562 538810384 992169078 53525809 300892929 979740237 858798711 587469038 237172271 367026304 338929165 944068218 624819674 602396426 786320493 915330573 338631458 656623172 250885472 545538425 360743135 152523810 47349911 955501918 735710261 654830523 543945175 540394532 970911538 230662076 352092606 887794841 349076114 920628541 858040709 803588261 960543625 545538425 559957428 140129038 437743643 975337465 509144872 214244685 577673184 254203892 338312978 237389399 167276070 387176309 207844781 464130920 762749463 448262245 972710252 618542887 870201182 888699423 496698204 840075867 317751260 214244685 667844649 567343883 241184545 538025980 2379379 946916156 934824360 367026304 121069546 375066210 758889515 101231409 155241439 135975430 887548285 163769090 838803091 428572243 249670598 39220584 29473993 660095934 376974209 489130642 835198840 32806834 172382592 295606018 778123726 142903358 630629857 944068218 754133002 174140940 616057762 610834602 209497607 850386354 732559957 354807942 792846009 264750083 207442482 73848009 624819674 814295984 592970093 93478833 786320493 138393155 272303478 396050095 607965234 704431513 750978759 129724737 226492467 807117750 732559957 814295984 866568903 259646582 360743135 554222239 38085353 687988023 390793037 770594967 55108095 429277230 456137963 768561257 885141769 603931167 758889515 162062292 190323279 60750487 662972501 488295044 36055646 518384931 932715562 488295044 186244437 387176309 775682536 799588075 55018341 128702236 252962990 618542887 771803404 695599688 885141769 577970627 678474526 854902633 285947848 799588075 114409323 917795074 968755777 637769046 459452716 824770361 531333917 363976852 360743135 162062292 361002681 581063820 48746678 806664207 812044550 125829791 842970782 656623172 145885851 550336314 790270533 53525809 582273012 489612980 167276070 709613471 963141978 132556595 103219970 628523361 190323279 623398671 965948435 539957336 79523589 412979540 733642252 354807942 78775552 251188854 511277493 78649514 771803404 275202504 579757115 598543708 686335042 430101007 485509833 328462418 628820972 603931167 990121035 712346140 556619020 567774282 87392830 29069209 975478549 953882020 682170984 259646582 506919968 931086800 516175014 630201811 535533605 944068218 207442482 98287438 300892929 255644658 146573202 152523810 307060809 38338132 918521256 851400664 641231120 683406807 77685914 547547687 762749463 603931167 676975489 860477160 509370562 548748527 627110568 448262245 248642173 967417280 916956968 640925332 616796881 78649514 451521521 123073176 806744033 462762217 98231977 882364001 79509313 242028021 441621000 888699423 962073361 650990283 907721720 211958450 628820972 917795074 650036494 786380583 970320952 929504680 647733367 904800517 972710252 489612980 776835194 954227928 992169078 77819776 498045048 623398671 400218902 548748527 543865019 215774690 744008188 757850417 907721720 499057158 296751278 512614298 970911538 286037808 991615550 151364594 983373150 60750487 836376015 956815883 215052415 858127225 722013570 799588075 686335042 511330454 78775552 430088921 854243215 567774282 762749463 53525809 557710104 40656291 746394036 215977916 842970782 103669472 315343704 778074990 689757867 195957995 313272965 525347105 761330904 322974842 664041213 215774690 786320493 837690635 81553943 923927991 250832323 152866011 361002681 721418370 641231120 835339516 746394036 835339516 646710523 827311105 668964848 115509283 727245017 219054502 81553943 896571061 78775552 98287438 78775552 545538425 507016471 40656291 451551269 201717402 835212499 103733806 543865019 814295984 781242822 660095934 750750593 430088921 573480571 702364434 299994808 40448245 808614164 125204206 858040709 887794841 174862116 838331644 625664180 917795074 781242822 850386354 315343704 489130642 674446970 626833449 146573202 532803593 831380531 705304879 573480571 641635851 314069534 559014304 607041944 527654256 33511708 562773407 276676140 687988023 276676140 219054502 835212499 860477160 993091440 771321738 317751260 490344724 560623000 904800517 397928982 956286779 478892468 254203892 349076114 396806189 179991869 202477791 678474526 940188502 570796148 251042004 851829959 247234349 554242697 154538466 334932282 99294732 266583970 799588075 225771141 947413305 387703244 769327548 226492467 10475035 68748842 862254110 938705675 274113481 179991869 533455280 630238886 827311105 782533040 947413305 991615550 770864525 888259120 424594759 719601437 208625324 667313812 174140940 40131409 117931902 732245352 860377902 36265302 763431295 420636144 876868627 152314280 424594759 451521521 247006479 478892468 547547687 810021050 554222239 942899938 590208882 140725908 24188768 495854210 888699423 376974209 163769090 324129364 264750083 592970093 712346140 965948435 754580366 361002681 567948101 511277493 956286779 264297813 778074990 726620654 255644658 916956968 540394532 55018341 633573519 727578179 304621545 251367294 840075867 515426984 568104980 78775552 917452919 934824360 754580366 543865019 547547687 638790258 771321738 399037712 82689280 531333917 931966477 607041944 64420967 792846009 900796599 511277493 328462418 708094860 40448245 51457589 840075867 307060809 417074904 514768035 786380583 475344103 926044257 315297566 503666498 353964006 430284321 616057762 695599688 266583970 444897967 884952974 539957336 831241130 548748527 382210484 527654256 81337657 56154381 744008188 298727845 711532060 455539394 527595027 950673785 218611070 174140940 1736950 214244685 420636144 705548145 522332929 770594967 507016471 539957336 353964006 969294148 852107700 275202504 299994808 722768643 902464469 286037808 570796148 215981255 711455867 966683628 424974082 513440742 739696834 770993588 546141085 234980621 581831913 846351340 215052415 133739154 836376015 913521589 841210236 190929591 870201182 904771946 225858850 546679009 793291205 73848009 485509833 498840912 520071928 581063820 152314280 396743027 29473993 183440003 352092606 840075867 932715562 259646582 851829959 695599688 338312978 598543708 458363994 591292508 182214511 82689280 443960759 602396426 601740259 242530683 459617527 617908997 708046990 971894015 795472528 152523810 449022331 489612980 248642173 940188502 427184372 132556595 220576148 489130642 694954883 396806189 262406489 145559297 859168292 806664207 464444922 214650974 60017144 735696627 311808379 210621083 983373150 264750083 498045048 946916156 831241130 719307635 40131409 24188768 152314280 958668995 485063015 306258744 624819674 215774690 719601437 632402794 548964093 266213579 29473993 214244685 852107700 257214051 907721720 209789164 167276070 40448245 249820698 234980621 172382592 230662076 485262404 322974842 531135820 927806038 145885851 407091770 630238886 261683638 145885851 186285312 515426984 539957336 896029805 590208882 636434256 837690635 602832600 947413305 733642252 628523361 137529801 367026304 394791153 874124920 424974082 31615284 130160246 247841801 733642252 653201202 282751746 563678994 119279869 927806038 359714925 219054502 638790258 103733806 975478549 748408317 808614164 942999703 249820698 215977916 983113723 334299650 851829959 126695727 573480571 247221668 907095826 645094664 165821462 488295044 546141085 540394532 792846009 424594759 750978759 261683638 81337657 290117216 195733178 944068218 852604705 492009082 207844781 921198791 989729323 24188768 664041213 162062292 98231977 660095934 711455867 499057158 478892468 705548145 546141085 230662076 514768035 274113481 207442482 736237188 618355033 687988023 808614164 215774690 225771141 538810384 272303478 142903358 991615550 98824830 112090095 429277230 112090095 567343883 249820698 513440742 668964848 484158080 604181881 278160655 592981604 638516505 190323279 876263470 134971740 271484655 296751278 82689280 882804101 712346140 237172271 719307635 638790258 783513992 711532060 661321016 213097363 931013644 750978759 915330573 463496366 603931167 324129364 854902633 266583970 305068796 539035187 56154381 56927881 864016134 87392830 545538425 888259120 261683638 829983432 193648030 573449906 151506993 506178629 570764323 98231977 344876805 237172271 311613451 283321520 860477160 699230813 228290502 812044550 736624310 607041944 663670886 193515742 783513992 630629857 553368896 485262404 538025980 10369081 592639233 616796881 518384931 858040709 145559297 170938835 305068796 494336936 40448245 708053570 745200166 771803404 219054502 390275103 551289217 604881661 545538425 616057762 201717402 371179314 748408317 582273012 884059813 686884353 763431295 993091440 553191189 656191811 956815883 155241439 219054502 324129364 50241607 629101079 628523361 35128915 67700412 2379379 958668995 992169078 979740237 337153847 688534928 47349911 917795074 282751746 618542887 353964006 886149363 996943901 503666498 522332929 251188854 995876182 864016134 624819674 575023903 396632533 562773407 288873549 480361743 795472528 770594967 963141978 575023903 996943901 735696627 408032939 40448245 912948600 900796599 338631458 685702028 938456692 539381059 970320952 428572243 20148474 570764323 179991869 921198791 361002681 650697444 543865019 598426014 885000402 637939784 121069546 202477791 299994808 136384659 744008188 133739154 162904272 39220584 588034909 533864165 19911869 971894015 708094860 656623172 601740259 135975430 310726569 351424753 850484222 237389399 910818482 570764323 962073361 765027062 851759377 115509283 299462930 783513992 458156391 103669472 616796881 151364594 767839638 334299650 298050322 78649514 916956968 567343883 808838846 304621545 566554997 540394532 638790258 886917295 349644605 917795074 515426984 678884863 831241130 1926282 682170984 885995802 885353274 401452903 114409323 763431295 866337119 303230482 866337119 98287438 458290565 876868627 266583970 465697134 246221518 765027062 550322314 251042004 699230813 567343883 252792947 302151126 390793037 702364434 630238886 597206610 810021050 780870754 829983432 835339516 241184545 795549341 287768226 719307635 334211676 367026304 727245017 954227928 938456692 492009082 36265302 598543708 68748842 653201202 781242822 915330573 119279869 299113502 446968233 814662325 683621666 306258744 32954995 465697134 4519262 334299650 694954883 942999703 910818482 539381059 560623000 117931902 632378665 131323888 781246194 42657625 618355033 215977916 441621000 900796599 711455867 315747769 174335822 900116034 506178629 966131311 592981604 704431513 630629857 583924389 458363994 78649514 287768226 808866527 808614164 82689280 359859765 956286779 778123726 927806038 338312978 877167702 195733178 1926282 382904427 559014304 195019158 722768643 145885851 513440742 851759377 214244685 602832600 542382913 140551765 917452919 424974082 862254110 112390393 630775839 910818482 660095934 995876182 425392410 476912096 630201811 842970782 743614603 698320352 774489082 38085353 488295044 376448548 43970470 172382592 700560235 334211676 652018277 590918818 538025980 789617647 862177563 511277493 29069209 787269565 210621083 831380531 464130920 507016471 214650974 750978759 430284321 678474526 936312210 509144872 268759041 387703244 663670886 516175014 778074990 56927881 152243323 516175014 637939784 250885472 67831588 449022331 553191189 282751746 138393155 623206361 888553258 749497174 247006479 324129364 931013644 52243955 572588387 187104147 931013644 349076114 6720560 140725908 640849273 795472528 290117216 836376015 532803593 962073361 140129038 607760956 877088774 509144872 885549757 207442482 72820570 155241439 266213579 866568903 412979540 983113723 31215478 991615550 632402794 718980624 992001870 475344103 28363157 287239117 577970627 448881532 308142020 145885851 542382913 81553943 174140940 325554372 430284321 891279504 417074904 627110568 947413305 441621000 886149363 978947655 702364434 87392830 123073176 369306500 656623172 160287690 190929591 174862116 77819776 338631458 532803593 613596687 675472009 307060809 743614603 290474734 247841801 721769014 363976852 458290565 884072178 405444604 181668423 984047482 915330573 32954995 430088921 543945175 332834875 317751260 838655651 38304068 754580366 560623000 760370490 396138845 982416551 390793037 954677909 520071928 915330573 515426984 888699423 896072909 893019475 866568903 645094664 137529801 854969794 249670598 927806038 638790258 949084393 776835194 465759767 577673184 292972503 36055646 152243323 485262404 630775839 163229392 575895835 2379379 42657625 984047482 712346140 566554997 893019475 962430008 334299650 282751746 688577702 376448548 438183310 349076114 311613451 667844649 242186770 793291205 837690635 885353274 687988023 592970093 408395896 962073361 721418370 81337657 837690635 613596687 140129038 739696834 465697134 604181881 431406787 885353274 425392410 448881532 837690635 739696834 289918211 852107700 518384931 526944836 640925332 978947655 567774282 396138845 581063820 795472528 28363157 360743135 471393875 781246194 50241607 885141769 994877696 746394036 770993588 175507355 465697134 433921335 688534928 334932282 289736829 464444922 387176309 526944836 630775839 4519262 465697134 757709512 776352608 616057762 654830523 746394036 432089082 750750593 540976336 792846009 425392410 396937914 929504680 427184372 922858580 287239117 132556595 522663253 321628921 175507355 152243323 330274784 715779797 964902255 428572243 458290565 123073176 20148474 547547687 984050047 654830523 662972501 586370291 851829959 575895835 715957434 72820570 514768035 533455280 299994808 927806038 573449906 795549341 264100442 738855203 36265302 763431295 119279869 408395896 53966525 814662325 771803404 533455280 764459345 760370490 330205547 123073176 727578179 760231333 560623000 688577702 983113723 595030753 624819674 424594759 604881661 969294148 494336936 228290502 315343704 286037808 337153847 602396426 750978759 234980621 587179274 361435434 182214511 840130613 252962990 929504680 338631458 923927991 296751278 293192373 207442482 306607837 459452716 387176309 56927881 511330454 330274784 760231333 282751746 799588075 607965234 145559297 226492467 351424753 399037712 430088921 782533040 795549341 478892468 431406787 5299425 125204206 475344103 838331644 79523589 942999703 815123402 920628541 287768226 570764323 195733178 38844979 647733367 154538466 60017144 331638088 630238886 152618584 808838846 982353486 943235508 498840912 190323279 215977916 870201182 719307635 60017144 101231409 396937914 228290502 325554372 195957995 727245017 592639233 266583970 705304879 859168292 242186770 646710523 705548145 735710261 803588261 963141978 653201202 635302209 896571061 252792947 740882715 456137963 39220584 943793512 512614298 577673184 148087911 697742034 286037808 678474526 152243323 910818482 275202504 746394036 28363157 314069534 42657625 792822959 128188331 306597948 575023903 369306500 275349681 2379379 201717402 870201182 982353486 550322314 64420967 359859765 991073887 683621666 98287438 708053570 98824830 310726569 80415088 656191811 190979155 505061211 662421393 396937914 674485068 727578179 795549341 310726569 633573519 19715614 321628921 413592826 489612980 616057762 430101007 249670598 650697444 167276070 763431295 891279504 840130613 283321520 917795074 781246194 132556595 315297566 261683638 625664180 344876805 87392830 514650194 324129364 196106606 711455867 922858580 635302209 123073176 276676140 663971090 842970782 854969794 369306500 941586175 306597948 72820570 288072509 481894295 775682536 322974842 451521521 247234349 349644605 296305836 931005739 922858580 566554997 816971086 737945381 154538466 800460688 261683638 711532060 420052652 806744033 203331888 850484222 586370291 296751278 425392410 726620654 546679009 330205547 797746066 163229392 407091770 938080232 305068796 399037712 795549341 708053570 125204206 721769014 945394518 858798711 361435434 786320493 971894015 7807006 15037608 287239117 824770361 300892929 637657473 764116955 117931902 887548285 305068796 559957428 760370490 708046990 956815883 35128915 590208882 19911869 641635851 420636144 931013644 722013570 344876805 496698204 481894295 458290565 82689280 88335614 601630030 400218902 72820570 459617527 626833449 119279869 931966477 172382592 650697444 249820698 688534928 53966525 931640418 806792339 242028021 668964848 177689820 885141769 757850417 962073361 860377902 646710523 966683628 387703244 284588557 850484222 489130642 647733367 181668423 683621666 850386354 607965234 456956861 624819674 721418370 328764419 545538425 361002681 650697444 49614749 814295984 160287690 367026304 971549242 922858580 32954995 39220584 1736950 546679009 683621666 73848009 207442482 969294148 559957428 802009078 514768035 751925989 708094860 587469038 713146141 32075030 887548285 858127225 276676140 553368896 795472528 674485068 256866745 208625324 592970093 921198791 382904427 123073176 858040709 93478833 758889515 49317804 539035187 424594759 251367294 444897967 726950461 797746066 66490779 721418370 858040709 778074990 735710261 23262398 984047482 801623766 163229392 931013644 452156279 920721173 325554372 703514531 607965234 922858580 636434256 982416551 137529801 679463383 726950461 695599688 554242697 936312210 590918818 47290536 757709512 619842427 213097363 396743027 858798711 152866011 338929165 99294732 984047482 835339516 2575238 652018277 789617647 888553258 15903366 553191189 758889515 688577702 174335822 308142020 437743643 98287438 699733109 660095934 330274784 570764323 851759377 242530683 390793037 760231333 174335822 80415088 858798711 77819776 226492467 133739154 850484222 630201811 630629857 703490607 146573202 412979540 390275103 770594967 559957428 719307635 215052415 921198791 458156391 637769046 24089615 133739154 266583970 712346140 103219970 499057158 88335614 748408317 968755777 206036522 641231120 969294148 19911869 709613471 38304068 94279561 112090095 854902633 546141085 572588387 579757115 40448245 699230813 994877696 944573659 396743027 462394151 846351340 114409323 982416551 715957434 954677909 298050322 771321738 806792339 186285312 175507355 366854683 960543625 757815664 38304068 412979540 559957428 947413305 604881661 396050095 463496366 361435434 815123402 597206610 112390393 735696627 388085842 969294148 359714925 214244685 853903669 888553258 276676140 878442641 134801439 715779797 630977998 53525809 531333917 387176309 882804101 542382913 109054120 773781000 207844781 211958450 996943901 633573519 931005739 743614603 272303478 888553258 836376015 83066601 505061211 809429735 506178629 206036522 306597948 93651148 299994808 490344724 991615550 174140940 496698204 438183310 664041213 971894015 81553943 586370291 68748842 553191189 19715614 23262398 87392830 103669472 989729323 98287438 852107700 311613451 299462930 738855203 627110568 992001870 972710252 214244685 288072509 681930584 252792947 835339516 399037712 82689280 790270533 746992914 40131409 709613471 835212499 931966477 746394036 567343883 577673184 920721173 667844649 630201811 182214511 77819776 589760538 799588075 213097363 135975430 800460688 290117216 464444922 926044257 382210484 115090276 793291205 675472009 520071928 982416551 60017144 193648030 602832600 259646582 937158597 152866011 851829959 478351140 560327459 480361743 485262404 326469359 885000402 74587532 390275103 298727845 396632533 966683628 968755777 98824830 283321520 918225489 155241439 702364434 464444922 295366548 984050047 917452919 694954883 513440742 789617647 846351340 264100442 575023903 938705675 831467447 597784477 918225489 573449906 653201202 307060809 601630030 686884353 174140940 49614749 82689280 143200457 278160655 53195413 269911067 829983432 465759767 616057762 303230482 852604705 344620844 249820698 598543708 246221518 931966477 650036494 814662325 795472528 257214051 393120342 131323888 749497174 862177563 53195413 874124920 838803091 264750083 424974082 799588075 246221518 586370291 932715562 195957995 371179314 251042004 918521256 955501918 850484222 592639233 155241439 797746066 573480571 860477160 896072909 42657625 676975489 152618584 396937914 230662076 38085353 663971090 313272965 363976852 938456692 982416551 668964848 595030753 866568903 900796599 912948600 979740237 568142039 40448245 792846009 559014304 781242822 760370490 337153847 900796599 114409323 94279561 938705675 518384931 462394151 740882715 241184545 765027062 757709512 966683628 247822207 931013644 404152565 638516505 604881661 656623172 175060805 499057158 715957434 40656291 629101079 407091770 975478549 587469038 650036494 455539394 918521256 876263470 560623000 776352608 858040709 926045944 630977998 366854683 607760956 630775839 209497607 115090276 560623000 332834875 968755777 715779797 114409323 131323888 485262404 926045944 87392830 152618584 334932282 366854683 938456692 145559297 458363994 850386354 806744033 991073887 888259120 994877696 984047482 31215478 55018341 128188331 912948600 802009078 989729323 242530683 369306500 553191189 885647994 949084393 522332929 864016134 729868696 619842427 698320352 244528344 307403622 251188854 981996224 945394518 699230813 597206610 162904272 152523810 572465104 209789164 179991869 351424753 87392830 183440003 968755777 876263470 686884353 308142020 535533605 462762217 193515742 264408147 656191811 257214051 134801439 242186770 55018341 583924389 106790696 920721173 205387898 431406787 713146141 799588075 130160246 688534928 625664180 950673785 616057762 679463383 907721720 931640418 19911869 575895835 315343704 251042004 572465104 78649514 726950461 696443558 910818482 99294732 369306500 929504680 944573659 151364594 750978759 366854683 858040709 753419354 795472528 53525809 842970782 715779797 993091440 958668995 635302209 770993588 938705675 967417280 592981604 838331644 53195413 78649514 732245352 913521589 433921335 49317804 49614749 407629453 984047482 489130642 1736950 361435434 874297853 590208882 112090095 931966477 310726569 425392410 114409323 210621083 739696834 920721173 708053570 874124920 781242822 156817178 853903669 303230482 112390393 396806189 79509313 598426014 249820698 641635851 427184372 334299650 885000402 152523810 109054120 302151126 788118407 626833449 686335042 151364594 327773233 308142020 776835194 455539394 262406489 645094664 983373150 264750083 664041213 888553258 282751746 597206610 983373150 591292508 215289803 202477791 288072509 425392410 808838846 830619816 324129364 740882715 729868696 72820570 841210236 850386354 641231120 640849273 835198840 587469038 387703244 619842427 623206361 334299650 708053570 286037808 190323279 938140278 112090095 99294732 852604705 763431295 556619020 776352608 682170984 563678994 910818482 109369069 424974082 289918211 646710523 50241607 570796148 750563611 437743643 396806189 943235508 31615284 981996224 462762217 577673184 640849273 937158597 750563611 506178629 533864165 338929165 31215478 328764419 709613471 448881532 654830523 853903669 966131311 656191811 366854683 334932282 503666498 969494113 955501918 943793512 275349681 49614749 432089082 686335042 610834602 968755777 306607837 676975489 295606018 35128915 234980621 975478549 705548145 800460688 117931902 778123726 753419354 437743643 679463383 912948600 660765062 509019925 56154381 485509833 228290502 543945175 334299650 711532060 831467447 711455867 532803593 349644605 387176309 98231977 152866011 172382592 940188502 509019925 595030753 446968233 67700412 136412292 567774282 943235508 538810384 458156391 163769090 764459345 920628541 420636144 709613471 972710252 979740237 718980624 430101007 267829614 489612980 437743643 757850417 109054120 991073887 531333917 975337465 526944836 623398671 866337119 619842427 338312978 429277230 635302209 306607837 324129364 932584021 786320493 602396426 613596687 910850066 342116147 685702028 884952974 630201811 146573202 780870754 815123402 177689820 668964848 230662076 918521256 575023903 47529701 610834602 315297566 760231333 721769014 600441802 360743135 926045944 604881661 554222239 788118407 617908997 443960759 151364594 49948206 540394532 509370562 98824830 175507355 585165457 10369081 735696627 390793037 431406787 757709512 904800517 251367294 257214051 145885851 489612980 938705675 210621083 298050322 780870754 288873549 242530683 266583970 862177563 885000402 211958450 887548285 715779797 735891721 687988023 36055646 637657473 722013570 979740237 314069534 814662325 20148474 540976336 47529701 128702236 226492467 513440742 66490779 305990981 697742034 991073887 607041944 808866527 448881532 854969794 390275103 64420967 971549242 763431295 47349911 247221668 852604705 195957995 841210236 422532994 334932282 632014852 246058339 768561257 767839638 247006479 399037712 876868627 311808379 663971090 836376015 735696627 220576148 568104980 628820972 637657473 112390393 765027062 965948435 904771946 858040709 904800517 627110568 559014304 174862116 691982506 981996224 332834875 866568903 851400664 746394036 478351140 128450928 13112382 193515742 321628921 361002681 162062292 780061015 331638088 560623000 700560235 858040709 295366548 937158597 618542887 371179314 763431295 225858850 603931167 896029805 760231333 387703244 430101007 711532060 559014304 112390393 982416551 163229392 527654256 885353274 753419354 960543625 455539394 851829959 242186770 682170984 887794841 109054120 183440003 630977998 746092812 52243955 954677909 817743547 746092812 193515742 597206610 287239117 242186770 522332929 274113481 727827821 214650974 732245352 858127225 994587826 532803593 81337657 940188502 223299794 927806038 836376015 499057158 452156279 633587956 215052415 760370490 616796881 585165457 793291205 148087911 767187616 858127225 38304068 801623766 299462930 430088921 359714925 538810384 52243955 886917295 159828635 944068218 812414090 688534928 636434256 862177563 103219970 215792516 334211676 760370490 494336936 132556595 152314280 886149363 646710523 559014304 250749017 190979155 686335042 50241607 573449906 234980621 543945175 247221668 225771141 619842427 32954995 723661847 806744033 876263470 907095826 195957995 187104147 292149520 590918818 354807942 968670974 770864525 806744033 420052652 940381563 142903358 317751260 512614298 607965234 103733806 613596687 954677909 163229392 704431513 953267424 485153920 36055646 503666498 852604705 942999703 264297813 554222239 20148474 854969794 98231977 816971086 635302209 632402794 220576148 896571061 604181881 268759041 145885851 838331644 560623000 824770361 997329398 154538466 1736950 808866527 623206361 710224239 757709512 681930584 718980624 855636134 408032939 685702028 143200457 765027062 808838846 650990283 683621666 1926282 220576148 840075867 781242822 910850066 172894131 575895835 451521521 275202504 727245017 195957995 174335822 778074990 764459345 920721173 781242822 344620844 246221518 595030753 978947655 286037808 592970093 598543708 152314280 215792516 548964093 776820092 882804101 174140940 526944836 954227928 592981604 190929591 420636144 695599688 167276070 745200166 866337119 950673785 854243215 74587532 405444604 954227928 207844781 830619816 172382592 153196022 698320352 681930584 220576148 780870754 249670598 975337465 859168292 28363157 535533605 455539394 264297813 489130642 81553943 572588387 160287690 603931167 53966525 640925332 853170454 457149478 942866882 40448245 630977998 289918211 527595027 306607837 516175014 289918211 711455867 375066210 359714925 679463383 885647994 683406807 817743547 652018277 638790258 322974842 925555858 304621545 762749463 637939784 556619020 344876805 516175014 931640418 376974209 430101007 36265302 264408147 5299425 354807942 713146141 803588261 250749017 757815664 290474734 425392410 87392830 363976852 155241439 774489082 443960759 417074904 854243215 917795074 315297566 264750083 815123402 746092812 246058339 209789164 324986193 354807942 387703244 942999703 808614164 938140278 213097363 814662325 570796148 430101007 604881661 803588261 19911869 67831588 829614460 74587532 887548285 857535330 859168292 326469359 761330904 366854683 981996224 289918211 885141769 695599688 352092606 837690635 636434256 567948101 713146141 770594967 568142039 210621083 963141978 292149520 137529801 82689280 388085842 926044257 829983432 456956861 962073361 32806834 446968233 40448245 382904427 99294732 36265302 862177563 715957434 632014852 560623000 623398671 984047482 942999703 646710523 807117750 338631458 570764323 121069546 481894295 582273012 196106606 686884353 465759767 137529801 592639233 478892468 208625324 781242822 142903358 557710104 874124920 918521256 979740237 726620654 735696627 459617527 763431295 983113723 946916156 806744033 230662076 112090095 138393155 592970093 570764323 689757867 234980621 960796073 93478833 854243215 640849273 702745028 653201202 382210484 774489082 462394151 215981255 668964848 135975430 746394036 850386354 175060805 683406807 378961655 683406807 276676140 678884863 250749017 502849508 136412292 128188331 602832600 583924389 699230813 247221668 485262404 885995802 32954995 808866527 570796148 923927991 708094860 703514531 887548285 429277230 360743135 430284321 399037712 601630030 885141769 982370833 636434256 275349681 694954883 271484655 854243215 103669472 943235508 32806834 237172271 946916156 55108095 432089082 573449906 344620844 780061015 31615284 496698204 769327548 616796881 882364001 248642173 740882715 592970093 80485362 256866745 98824830 627110568 774489082 884952974 956286779 186244437 533455280 458363994 366854683 572465104 838331644 975478549 931013644 376974209 947413305 831380531 840075867 732559957 464130920 317751260 591292508 511277493 94279561 369306500 958668995 688177128 886149363 884952974 567343883 290474734 152866011 938705675 862177563 155241439 704431513 841780337 600441802 146573202 431406787 858040709 922858580 994587826 125204206 750750593 344620844 829983432 563678994 829614460 795549341 462394151 922858580 853170454 770594967 667844649 979740237 404152565 776352608 399037712 351424753 902464469 247234349 334932282 131323888 852107700 887794841 983373150 882364001 983373150 567948101 971549242 838655651 175060805 407629453 29473993 551289217 604181881 41538784 852604705 125204206 404152565 628523361 426814174 709613471 676975489 946612927 81337657 915330573 885000402 581063820 632378665 490344724 687055288 485153920 349644605 527654256 287768226 64420967 616057762 6720560 726950461 488295044 146573202 429277230 858798711 923927991 870201182 261683638 246221518 206036522 87392830 278160655 296751278 186285312 836376015 538025980 515426984 289736829 2575238 133739154 267829614 931013644 554242697 603931167 620243558 619842427 464444922 559014304 923715439 268759041 932715562 80485362 458290565 503666498 858798711 540394532 872434540 567948101 390793037 512614298 641231120 201717402 806792339 610447918 187104147 438183310 117210451 763431295 960543625 315747769 944573659 602396426 1736950 628523361 310726569 567774282 732559957 567774282 488788762 420052652 744008188 514650194 971549242 290117216 330274784 32075030 232177196 502849508 106790696 585165457 462394151 32806834 390793037 24188768 241184545 754580366 19715614 931086800 560623000 547547687 601740259 56154381 2575238 878442641 531135820 991073887 272303478 858127225 781242822 275349681 539035187 550336314 938456692 641635851 324129364 64420967 829983432 154538466 458156391 174140940 687055288 431406787 138442062 604968568 143200457 15037608 994587826 567774282 170938835 215792516 5299425 803588261 727578179 801623766 789617647 210621083 885647994 695599688 711455867 396050095 698320352 47290536 667313812 575023903 676975489 98287438 885647994 915330573 589760538 575895835 334211676 484158080 656191811 932584021 403519778 99294732 509019925 745200166 213097363 886917295 896029805 945394518 246058339 630775839 288072509 590208882 187104147 533864165 262406489 637657473 997329398 854902633 817743547 663670886 47349911 322974842 390793037 660095934 495854210 945394518 505061211 795549341 195019158 539957336 388085842 214650974 288072509 715779797 932715562 133739154 943235508 814295984 991615550 465697134 727578179 778074990 248642173 512614298 582273012 499057158 250885472 539957336 589760538 751925989 215289803 251188854 996943901 637769046 266583970 735696627 112090095 464130920 602832600 904800517 733642252 308142020 526944836 610834602 885353274 101231409 299462930 575895835 40131409 546679009 175507355 938140278 506919968 42657625 923715439 43970470 581831913 215977916 250885472 630201811 52243955 587469038 451521521 771321738 994587826 50241607 851759377 60750487 276676140 632402794 568142039 261683638 60017144 595030753 597784477 375066210 854243215 328462418 307060809 975337465 942899938 489130642 264297813 581063820 627110568 840130613 334211676 109369069 264100442 956815883 449022331 38844979 589760538 675472009 47349911 268759041 462394151 41538784 382904427 904771946 179981178 776352608 117210451 305990981 252792947 465697134 800460688 967417280 175507355 617908997 53966525 950673785 514768035 153196022 866337119 438183310 179981178 538025980 463496366 499057158 526944836 480361743 732245352 663971090 750750593 103733806 250749017 485153920 810021050 637769046 726620654 687988023 138442062 210621083 996943901 597206610 656191811 457149478 646710523 123073176 179991869 771321738 970320952 539381059 310726569 854902633 272303478 806664207 360743135 926045944 38304068 769327548 290474734 601630030 786320493 321628921 781246194 80485362 896029805 757850417 213097363 740882715 699733109 653201202 632378665 944068218 223299794 640925332 252792947 481894295 647733367 929504680 509370562 275349681 264297813 430101007 310726569 567948101 963141978 757850417 81553943 838331644 916956968 904800517 554242697 586446680 607041944 918225489 446968233 927806038 607041944 719307635 790270533 21190596 87392830 457149478 630977998 840130613 697742034 41538784 858798711 50241607 960796073 637939784 246221518 41538784 851829959 202477791 464444922 705548145 55018341 619842427 850484222 971894015 939725993 917795074 628820972 247221668 963141978 776352608 287239117 82689280 983373150 215981255 4519262 269911067 792822959 942999703 841780337 539957336 841780337 885995802 722013570 696443558 396138845 955501918 130160246 797746066 15903366 681765297 476912096 407629453 993091440 138393155 282751746 645094664 220576148 492009082 872434540 681765297 393120342 41538784 975478549 757850417 55108095 846351340 664041213 877167702 727578179 296305836 81337657 723661847 145885851 814662325 68748842 949084393 842970782 568104980 686335042 24188768 790270533 632402794 314069534 152523810 852755974 142903358 505061211 884072178 573480571 740340897 353964006 266213579 776835194 860377902 557710104 559014304 531333917 196106606 143200457 129724737 330274784 433686203 182214511 251188854 938705675 174140940 220576148 41538784 852755974 765027062 36055646 807117750 506919968 293192373 604181881 994877696 272303478 904800517 55018341 38338132 485262404 32806834 918521256 931013644 607041944 295366548 885353274 396050095 937158597 471393875 443960759 210621083 686335042 786380583 581831913 432089082 143200457 430101007 613596687 827311105 195733178 290117216 866568903 214244685 400218902 992001870 527595027 967417280 250885472 650697444 711455867 885995802 446968233 661321016 403519778 32806834 850484222 633587956 635302209 186285312 835198840 533864165 588034909 746992914 554242697 590208882 478892468 971894015 172382592 740340897 10369081 656623172 997329398 396806189 246058339 553191189 573449906 887794841 437743643 13112382 739696834 763431295 697742034 864016134 910818482 900796599 247822207 876868627 831241130 401452903 527595027 293192373 404152565 546679009 916956968 195957995 808614164 152618584 726950461 215792516 944573659 884059813 972710252 663971090 718980624 567343883 267829614 887794841 459452716 736237188 942866882 633587956 539035187 740882715 509370562 115509283 581831913 572588387 888259120 778074990 264297813 485153920 735710261 284588557 218611070 115090276 607965234 298727845 462394151 806664207 29473993 145559297 907721720 597206610 852107700 211958450 175060805 247221668 964902255 827311105 778123726 991073887 35128915 628523361 771803404 234980621 838803091 136384659 246221518 43970470 10369081 610447918 646710523 653201202 887548285 268759041 698320352 174140940 507016471 430088921 788118407 290117216 60017144 917452919 994587826 244528344 960796073 230662076 246221518 740340897 616057762 786380583 851829959 696443558 160287690 540976336 307403622 396743027 338631458 228290502 19911869 628523361 852107700 525347105 446968233 917452919 527595027 215774690 711532060 322974842 979750308 251042004 509664709 876263470 507016471 284588557 250885472 82689280 587179274 955501918 56927881 24188768 311808379 464130920 889608806 490344724 119279869 585165457 711532060 129724737 145885851 214650974 808614164 604968568 943793512 763431295 694954883 351424753 390793037 760231333 808614164 637657473 443960759 32806834 613596687 946612927 88335614 942999703 630629857 74587532 393120342 401452903 24089615 601630030 393120342 679463383 352092606 590208882 972710252 814295984 241184545 484158080 507016471 575023903 968670974 464130920 79509313 456956861 531135820 131323888 835198840 264750083 983373150 401452903 128450928 807117750 573480571 550336314 943793512 884059813 984047482 264408147 793291205 186285312 548964093 910850066 577673184 292696118 506919968 401452903 853903669 115090276 145885851 661321016 2379379 328462418 47349911 208625324 629101079 740340897 787269565 24188768 625664180 982416551 324129364 264750083 53966525 824770361 496698204 67700412 426814174 723661847 68748842 802009078 298050322 860477160 781242822 640925332 965948435 485153920 311808379 261683638 285947848 247234349 266583970 375066210 451551269 780870754 459617527 994877696 719601437 94279561 775682536 540394532 451551269 49317804 196460706 967417280 325554372 804406873 205387898 945394518 24089615 219054502 462394151 884072178 688177128 674485068 984047482 6720560 63192647 492009082 506178629 438183310 19911869 481894295 718980624 610447918 276676140 153196022 662972501 600441802 388085842 893019475 627110568 15037608 55108095 21190596 78775552 681765297 449022331 49317804 885353274 945394518 427184372 115090276 842970782 533455280 662972501 760231333 88335614 465697134 88335614 770993588 250885472 358401766 396138845 32806834 495854210 745200166 885000402 546679009 792846009 723661847 252962990 942999703 420636144 201717402 607760956 296305836 287768226 275349681 378961655 663971090 554242697 982370833 371179314 77819776 937158597 396050095 109054120 936312210 550322314 247234349 674446970 15037608 989729323 292696118 719601437 72820570 556619020 93651148 851829959 174140940 378961655 202477791 47349911 610447918 81337657 407510599 636434256 886917295 764116955 700560235 140551765 422532994 165821462 955501918 47529701 632014852 38085353 186285312 687055288 843005594 788118407 422532994 754133002 308142020 299462930 876868627 896072909 623398671 735710261 289736829 829614460 303230482 853170454 448262245 299462930 864016134 311808379 271484655 167276070 776352608 60017144 412979540 678474526 80485362 77685914 831467447 155241439 774489082 726620654 595030753 264100442 674485068 145885851 770594967 505061211 888699423 852755974 712346140 711455867 641635851 647733367 289736829 902464469 286037808 403519778 770864525 458290565 195957995 546141085 931640418 604181881 203331888 699733109 630775839 750978759 931640418 485509833 626932919 650036494 685702028 572465104 292696118 32954995 50241607 667313812 723661847 249670598 602396426 223299794 920628541 628820972 876263470 252792947 940188502 923715439 78649514 478892468 527654256 627110568 929504680 975478549 425392410 647733367 940188502 241184545 247006479 175507355 289736829 475344103 633573519 507016471 247006479 516175014 366854683 299462930 464130920 776835194 540394532 27735709 6720560 996943901 152866011 174335822 597206610 795472528 922858580 315297566 652018277 781246194 947413305 885353274 186285312 388085842 152866011 232177196 703514531 758889515 230662076 581831913 947413305 978947655 927806038 112090095 650990283 962073361 321628921 250885472 13112382 885647994 944068218 568142039 303230482 187104147 123073176 2379379 885549757 393120342 687988023 579757115 94279561 604881661 910850066 494336936 840130613 573449906 230662076 566125822 117931902 970320952 293192373 237172271 23973553 607965234 824770361 182214511 950497221 746394036 938140278 749497174 292696118 403519778 38338132 359714925 183440003 962073361 186285312 15903366 592639233 246058339 190979155 88335614 270237875 699230813 15037608 66490779 21190596 616057762 931640418 787269565 432089082 884952974 797746066 250749017 969294148 2575238 771321738 715957434 275202504 635302209 41538784 638790258 633573519 315297566 757815664 225771141 305068796 462394151 770594967 266583970 745200166 98231977 768561257 808614164 840075867 130160246 583924389 4519262 736624310 225858850 15037608 789617647 827311105 923715439 366854683 32954995 877167702 369306500 464130920 290474734 702364434 55108095 567948101 859168292 885995802 249820698 946612927 969494113 884059813 437743643 135975430 306597948 966683628 790270533 695599688 996943901 949084393 349076114 814662325 912948600 211958450 387703244 632402794 970911538 840130613 750978759 703514531 858798711 74587532 698320352 653201202 711455867 953882020 393120342 13112382 984047482 490344724 858040709 292696118 943793512 10475035 334211676 49317804 858040709 135975430 376448548 332834875 155241439 583924389 498045048 78649514 250832323 332834875 647733367 140129038 601740259 451817798 817743547 128188331 514768035 748408317 66490779 39220584 852604705 568104980 390275103 292972503 498045048 94279561 613596687 603931167 697742034 773781000 683621666 915330573 630977998 72820570 943793512 551289217 159828635 78649514 995876182 29069209 885647994 274113481 708046990 289736829 66490779 662421393 98231977 922706719 853903669 753419354 616057762 587469038 715957434 696443558 20148474 284588557 757709512 860477160 160287690 448262245 896072909 407510599 433921335 954227928 396632533 846351340 812044550 757850417 983373150 860377902 812414090 1926282 424974082 991073887 403519778 911302173 776835194 457149478 531135820 332834875 396937914 705548145 53966525 152866011 992169078 575895835 699230813 412979540 137529801 83066601 993091440 138393155 117210451 958668995 162904272 991073887 338312978 425392410 781246194 927806038 478892468 638516505 509664709 145559297 573449906 10475035 810021050 926045944 646710523 660765062 962073361 876263470 515426984 854902633 788118407 354807942 972710252 638516505 249670598 115509283 972710252 109369069 885000402 746992914 938080232 401452903 249820698 738612855 678474526 922858580 735891721 770594967 786320493 638516505 754133002 23262398 33511708 527654256 443960759 780870754 396937914 15037608 885353274 408395896 782533040 430101007 276676140 971894015 250749017 247234349 137529801 387176309 174862116 575023903 248642173 745200166 404152565 308142020 616057762 430088921 943793512 954227928 866337119 190979155 526944836 967417280 793291205 808866527 382904427 299113502 337153847 499057158 842970782 975337465 588034909 344620844 836376015 958668995 782533040 591292508 896072909 269911067 324986193 438183310 718980624 746992914 38085353 451817798 511277493 163769090 592970093 971894015 882804101 162062292 290474734 922858580 382904427 532803593 20148474 991073887 399037712 67831588 560327459 367026304 835212499 757850417 262406489 876263470 870201182 695599688 972710252 776820092 353964006 13112382 835198840 533864165 249820698 303230482 937158597 72820570 850484222 64420967 300892929 751925989 266583970 145559297 186244437 539381059 571019028 305068796 664041213 840130613 962430008 554222239 858798711 736237188 733642252 367026304 462394151 568104980 735710261 540394532 68748842 295366548 683621666 886917295 399037712 904800517 205387898 547547687 264100442 237389399 388085842 913521589 264297813 401452903 464444922 637939784 109054120 709613471 749497174 432089082 250885472 251042004 697742034 247221668 888259120 850386354 241184545 949084393 376448548 922858580 60017144 211958450 994587826 228290502 167276070 444897967 860708299 133739154 589760538 465759767 571019028 396743027 272303478 332834875 566125822 567343883 852755974 6720560 49614749 808866527 750750593 911302173 882804101 257214051 179991869 195957995 996943901 177689820 702745028 292972503 264100442 760231333 53195413 152618584 387703244 750563611 387703244 757850417 971549242 295606018 994587826 41538784 352092606 705304879 88335614 705304879 403519778 876263470 786320493 683406807 852755974 956815883 953267424 93651148 590918818 247234349 526944836 567948101 307403622 38338132 971549242 563678994 792822959 618542887 2379379 289736829 205387898 773781000 325554372 254203892 522663253 878442641 314069534 563678994 602832600 804406873 944573659 969294148 887548285 190929591 616796881 202477791 866337119 140129038 795472528 703490607 298050322 884059813 387703244 780870754 187104147 705304879 456137963 305068796 727245017 154538466 885000402 264408147 546141085 884059813 782533040 904771946 812414090 375066210 560623000 771321738 968755777 210621083 24089615 53226850 795472528 152618584 143200457 855636134 175060805 765027062 526944836 488295044 77685914 270237875 315297566 663971090 750978759 633573519 359714925 683406807 582273012 979740237 860708299 129724737 397928982 888699423 942866882 885995802 963141978 396743027 324129364 814295984 746394036 551289217 831380531 632014852 38304068 23973553 49948206 559014304 793291205 456956861 570796148 710224239 79509313 931640418 413592826 478351140 36055646 884059813 112090095 133739154 604881661 768561257 539035187 293192373 137529801 910850066 33511708 60750487 522332929 417074904 722013570 251188854 531135820 751925989 276676140 428572243 195019158 562773407 739696834 514650194 145885851 538025980 48746678 148087911 53966525 760370490 63192647 760231333 256866745 838655651 858798711 10475035 459617527 32075030 852755974 407510599 721769014 915330573 548964093 753419354 114409323 215774690 427184372 738612855 195019158 511330454 925555858 661321016 727578179 653201202 207844781 554222239 136412292 40656291 902464469 438183310 287239117 855636134 940381563 661321016 327773233 247234349 994587826 776352608 15903366 518384931 145885851 215977916 984050047 462762217 970320952 539381059 300892929 802009078 885353274 776352608 607041944 259646582 831241130 93651148 746394036 575023903 190323279 261683638 590918818 361435434 186244437 251042004 195733178 704431513 175060805 637769046 979750308 23262398 51457589 502849508 942866882 214244685 754133002 637769046 918521256 40448245 55108095 806664207 134971740 660765062 750750593 979740237 27735709 242530683 711455867 721418370 817743547 632014852 835212499 24188768 835212499 465759767 762749463 424594759 623206361 511330454 24089615 926045944 36265302 50241607 172382592 788737791 664041213 950497221 288873549 722768643 579757115 98824830 376448548 255644658 708046990 559014304 629101079 958668995 170941326 886917295 307403622 911302173 174335822 736624310 207844781 704431513 767839638 136384659 613596687 344876805 972710252 567343883 485262404 289736829 138442062 967417280 735891721 471393875 557710104 586446680 495854210 721418370 708053570 583924389 390793037 786380583 627110568 295366548 628820972 840130613 859168292 877088774 885141769 422532994 554242697 652018277 207442482 247234349 667313812 533864165 573449906 637939784 616796881 637657473 505061211 152618584 338929165 637769046 195733178 41538784 98231977 953882020 715957434 632014852 887548285 803588261 620243558 266213579 298050322 274113481 571019028 286037808 405444604 884059813 451551269 214650974 36265302 142903358 762749463 926044257 907095826 719307635 722013570 129724737 498045048 332834875 313272965 678884863 376448548 641635851 713146141 652018277 215289803 444897967 396138845 854902633 485509833 652018277 476912096 567774282 767839638 687988023 831380531 604968568 641231120 278160655 925555858 703514531 55108095 275202504 991615550 154538466 925555858 295366548 424974082 98824830 630238886 64420967 136412292 931013644 792822959 152523810 981996224 125204206 727245017 135975430 940381563 257214051 247822207 678884863 554242697 503666498 722013570 49317804 543945175 420052652 225771141 53226850 589760538 432089082 496698204 778074990 629101079 927806038 66490779 799588075 965948435 888553258 992169078 13112382 287239117 896571061 272303478 103669472 207442482 542382913 283321520 918225489 396632533 663971090 629101079 538025980 938080232 887794841 527595027 967417280 330205547 151506993 968755777 247234349 590918818 23262398 910818482 773781000 448881532 838655651 572465104 774489082 193515742 412979540 396632533 941586175 338312978 572588387 744008188 275202504 338631458 407091770 943793512 50241607 313272965 237389399 134971740 858127225 831380531 444897967 53966525 183440003 509144872 979740237 778123726 888553258 330205547 73848009 817743547 991073887 994587826 193648030 934824360 56154381 891279504 321628921 853903669 128702236 836376015 125204206 338312978 438183310 800460688 640849273 352092606 633573519 136412292 770594967 618355033 499057158 568142039 645094664 420636144 219054502 433921335 640849273 870201182 626932919 24089615 753419354 452156279 771321738 35128915 591292508 638790258 451817798 815123402 851400664 399037712 38338132 647733367 971894015 854243215 757815664 20148474 60750487 965948435 38844979 338312978 298727845 458290565 455539394 246058339 619842427 750750593 396050095 630629857 568104980 581831913 610834602 618355033 757850417 378961655 893019475 10369081 954227928 19911869 921198791 937158597 123073176 757709512 548748527 965948435 660765062 923715439 918225489 579757115 424594759 546141085 275349681 944573659 719307635 767187616 387176309 298050322 675472009 607965234 74587532 310726569 797746066 943235508 774489082 732245352 270237875 143200457 181668423 602832600 587469038 128450928 518384931 764116955 115509283 2076768 874124920 722013570 186285312 128450928 271484655 287239117 722768643 674446970 367026304 943235508 743614603 175060805 206036522 668964848 650990283 119279869 743614603 965948435 921198791 995876182 183440003 938705675 407510599 852755974 600441802 134801439 540394532 776835194 586370291 708053570 126695727 853903669 633573519 313272965 896571061 963141978 765027062 2076768 152523810 923715439 862177563 159828635 570764323 968755777 804406873 781246194 770864525 566554997 305068796 782533040 131323888 330205547 563678994 722013570 691982506 267829614 308142020 636434256 719307635 577673184 950497221 858040709 703490607 739696834 887794841 792822959 244528344 475344103 293192373 970911538 142903358 808838846 678884863 939725993 145559297 506178629 570764323 451521521 471393875 817743547 645094664 978947655 305068796 306597948 931966477 852604705 242186770 668964848 261683638 686335042 563678994 931005739 203331888 687055288 408395896 27735709 551289217 394791153 878442641 349644605 332834875 744008188 931013644 388085842 920628541 449022331 827311105 353964006 334299650 515426984 417074904 35128915 303230482 520071928 215774690 207844781 650990283 53195413 28363157 20148474 838331644 852755974 567343883 732245352 1926282 991615550 709613471 556619020 553191189 664041213 860477160 19715614 846351340 485262404 80415088 687055288 50241607 317751260 93651148 404152565 882364001 437743643 862254110 56927881 926045944 405444604 351424753 51457589 247841801 831380531 93651148 938705675 254203892 850484222 47290536 426814174 115090276 262406489 244528344 172382592 332834875 971549242 683406807 424974082 186285312 588034909 366854683 60017144 956815883 77685914 148087911 55108095 242028021 187104147 270237875 393120342 196106606 885353274 135975430 327773233 255644658 713146141 740882715 509664709 133739154 32954995 814295984 452156279 886149363 452156279 290117216 182214511 492009082 51457589 31615284 907721720 202477791 352092606 145559297 708094860 763431295 616057762 855636134 195019158 315747769 462394151 242186770 408032939 109369069 81337657 896571061 739696834 103733806 786320493 979740237 912948600 455539394 496698204 661321016 47349911 484158080 579757115 214650974 882804101 396806189 172894131 237389399 885647994 936312210 732245352 760231333 382210484 242028021 175060805 211958450 543945175 129724737 458290565 637939784 708046990 862177563 237172271 255644658 739696834 967417280 36265302 206036522 237172271 953882020 767187616 125829791 711455867 53226850 337153847 679463383 55108095 50241607 328764419 242530683 78775552 431406787 451521521 843005594 256866745 74587532 40131409 471393875 37275245 888553258 570796148 326469359 514768035 763431295 597784477 259646582 427184372 387176309 507016471 562773407 38085353 795549341 582273012 266213579 889608806 575023903 49614749 190929591 38304068 563678994 831380531 618542887 573480571 750563611 851829959 592639233 179991869 532803593 635302209 691982506 815123402 709613471 851829959 304621545 394791153 289736829 587179274 619842427 387703244 53226850 708046990 211958450 172894131 420052652 387703244 638516505 601740259 814662325 55018341 837690635 441621000 548748527 24089615 632402794 674446970 306607837 55108095 966683628 996943901 525347105 163229392 488295044 405444604 683406807 458156391 215774690 35128915 769327548 390275103 814295984 829983432 228290502 87392830 80415088 882804101 953882020 55018341 540976336 190323279 843005594 581831913 971894015 396138845 685702028 19715614 484158080 262406489 681930584 215289803 721418370 664041213 430088921 761330904 295606018 349644605 954227928 77685914 745200166 452156279 302151126 451521521 103733806 749497174 886149363 874297853 942999703 352092606 430101007 327773233 982416551 891279504 722768643 137529801 900116034 667844649 93478833 676975489 876263470 590918818 920628541 33511708 511330454 299462930 214650974 687055288 632014852 250832323 719307635 359714925 196106606 629101079 193648030 77685914 705304879 174335822 148087911 396632533 982353486 628820972 550336314 174862116 289918211 543945175 860377902 860708299 750563611 907095826 831467447 991615550 195957995 485509833 783513992 793291205 152523810 396632533 942999703 983373150 567948101 112090095 757850417 535533605 264408147 81553943 598426014 81553943 610447918 708046990 760370490 708094860 315747769 146573202 41538784 971549242 577970627 838803091 931086800 485063015 331638088 831241130 125829791 187104147 719307635 664041213 710224239 729868696 966683628 330274784 695599688 762749463 417074904 744008188 28363157 808614164 992001870 382904427 428572243 781246194 304621545 613596687 786380583 400218902 103733806 98231977 663670886 810021050 13112382 582273012 740340897 143200457 135975430 907095826 478351140 458363994 954227928 248642173 152523810 349076114 186285312 248642173 298727845 19911869 132556595 511277493 846351340 721769014 275349681 942866882 830619816 172894131 408395896 831241130 632402794 152314280 956286779 128450928 746992914 737945381 604968568 676975489 269911067 262406489 451817798 940381563 242028021 179991869 438183310 250749017 979740237 209497607 542382913 795472528 514650194 613596687 103733806 463496366 650697444 732245352 783513992 496698204 688577702 338929165 311613451 49614749 80415088 182214511 138393155 38304068 498840912 531333917 567948101 223299794 709613471 35128915 82689280 938080232 6720560 746394036 117931902 311808379 653201202 433921335 950673785 994587826 306258744 112390393 888699423 535533605 748408317 459452716 42657625 187104147 966683628 944573659 186285312 554242697 366854683 727578179 539957336 218611070 322974842 413592826 396050095 315343704 183440003 984047482 488295044 790270533 778074990 918521256 148087911 77685914 650990283 15903366 918225489 994587826 257214051 371179314 255644658 19911869 366854683 688177128 215977916 2379379 21190596 697742034 610447918 866568903 152866011 866337119 860377902 112390393 982370833 1736950 503666498 459617527 637769046 841780337 780870754 441621000 893019475 943235508 444897967 213097363 586446680 548964093 455539394 7807006 547547687 119279869 922858580 808614164 831467447 854243215 275349681 793291205 824770361 699733109 769327548 313272965 840130613 522663253 53525809 727578179 396806189 349644605 632402794 226492467 304621545 854243215 750563611 806744033 422532994 264297813 361435434 79509313 804406873 452156279 214244685 590918818 210621083 962430008 428572243 727578179 284588557 975478549 946612927 390793037 304621545 433921335 525347105 800460688 754580366 852604705 619842427 771803404 214650974 940381563 590208882 764459345 656623172 989729323 152618584 475344103 827311105 215289803 814662325 109054120 83066601 646710523 705304879 962430008 691982506 746394036 885995802 81337657 264408147 996943901 438183310 307403622 896571061 835212499 23262398 369306500 922858580 790270533 72820570 121069546 967417280 32954995 489130642 702745028 864016134 726950461 41538784 727827821 678884863 667844649 702364434 15903366 293192373 396138845 115509283 896072909 503666498 459452716 302151126 573480571 944068218 2076768 975337465 452156279 457149478 944573659 299113502 527595027 745200166 106790696 745200166 307403622 936312210 557710104 982416551 338929165 234980621 47349911 735696627 509370562 152523810 829614460 498840912 735710261 103669472 729868696 770594967 511277493 444897967 735710261 215981255 160287690 142903358 884952974 954227928 160287690 109369069 815123402 361435434 573480571 950673785 902464469 653201202 732559957 893019475 556619020 900116034 727827821 653201202 527595027 41538784 787269565 637657473 246221518 242028021 98231977 956815883 349076114 103669472 248642173 922706719 607965234 80485362 196460706 251042004 300892929 633587956 694954883 289736829 910818482 257214051 757709512 885549757 159828635 295366548 507016471 230662076 250832323 938140278 852604705 514650194 764116955 305990981 699230813 41538784 750978759 562773407 590918818 428572243 10369081 344876805 527595027 858127225 498045048 553368896 726950461 814662325 516175014 298727845 205387898 650697444 117210451 21190596 509664709 298727845 315343704 358401766 597784477 322974842 852604705 306607837 287768226 632014852 888259120 548748527 625664180 702364434 686884353 572588387 218611070 546679009 604181881 103669472 896029805 142903358 32954995 824770361 175060805 771321738 841780337 838331644 2076768 49317804 778123726 396743027 623206361 854969794 968670974 705304879 288072509 230662076 315343704 73848009 360743135 626932919 568142039 751925989 646710523 28363157 882804101 590208882 20148474 630775839 53195413 53226850 582273012 773781000 573480571 888699423 965948435 654830523 462394151 917795074 441621000 489612980 568142039 628523361 249820698 451817798 907095826 917452919 399037712 688577702 965948435 396050095 806744033 835339516 789617647 498840912 646710523 743614603 79509313 971894015 831380531 190929591 252962990 567948101 330274784 293192373 505061211 492009082 792822959 257214051 938080232 367026304 970320952 630775839 781242822 77819776 686884353 994877696 522332929 492009082 399037712 375066210 400178823 586370291 359859765 808866527 328764419 610834602 812414090 230662076 732245352 32806834 907721720 209789164 220576148 854969794 396632533 843005594 509144872 247234349 136412292 786380583 577673184 311613451 2379379 944068218 996943901 886149363 52243955 809429735 735710261 195957995 817743547 296305836 907095826 946612927 433921335 757850417 630629857 917452919 792822959 795549341 831241130 623398671 315343704 702364434 744008188 954677909 2575238 696443558 334211676 152618584 968755777 115509283 587179274 433686203 449022331 947413305 456137963 305990981 36055646 387176309 393120342 103733806 511277493 21190596 327773233 656623172 702745028 274113481 134801439 186285312 396138845 702364434 382904427 982370833 835212499 126695727 47529701 929504680 103219970 838331644 248642173 177689820 437743643 358401766 155241439 641635851 992169078 424594759 526944836 583924389 494336936 538810384 81553943 264750083 689757867 40656291 446968233 917452919 24089615 650697444 195733178 882364001 858798711 129724737 995876182 154538466 889608806 293192373 337153847 603931167 420636144 247006479 174862116 922858580 616057762 678884863 272303478 802009078 408032939 31215478 136412292 586370291 32954995 563678994 984047482 361435434 515426984 966131311 838803091 289918211 397928982 553368896 854243215 598426014 853170454 801623766 225858850 721418370 476912096 663971090 134971740 98824830 427184372 843005594 942899938 774489082 330274784 922858580 207844781 502849508 943793512 101231409 963141978 864016134 507016471 598543708 841210236 488295044 632378665 251188854 676975489 125829791 134801439 598543708 938456692 885995802 934824360 763431295 571019028 308142020 40131409 944068218 324986193 156817178 87392830 485153920 854243215 296305836 443960759 922858580 664041213 795549341 758889515 685702028 79523589 695599688 19911869 247221668 889608806 512614298 448881532 511330454 218611070 396743027 937158597 56154381 509664709 21190596 175060805 242530683 2076768 604968568 514768035 736624310 815123402 304621545 997329398 641635851 866337119 43970470 566554997 363976852 196460706 215774690 686335042 743614603 307403622 994877696 449022331 931086800 979750308 678884863 35128915 315747769 676975489 587469038 638790258 67831588 315343704 602396426 186244437 896571061 174335822 877167702 520071928 202477791 68748842 363976852 781246194 862177563 7807006 142903358 607760956 771321738 288072509 270237875 781242822 42657625 462394151 831467447 137529801 876263470 627110568 944068218 560623000 152618584 112390393 101231409 556619020 681930584 686884353 412979540 315297566 123073176 506178629 32075030 735710261 705548145 964902255 264408147 478892468 299113502 925555858 982353486 282751746 433686203 539035187 464130920 630238886 303230482 390275103 53226850 306597948 567774282 978947655 562773407 37275245 860477160 441621000 953882020 686884353 296305836 570796148 748408317 420636144 123073176 338929165 512614298 160287690 709613471 19715614 563678994 98231977 304621545 218611070 489130642 764116955 540394532 907721720 654830523 623206361 743614603 995876182 971894015 996943901 992001870 310726569 196106606 408032939 641635851 207442482 876263470 456137963 308142020 623206361 462762217 56927881 572588387 559957428 969294148 165821462 152866011 459452716 321628921 7807006 633587956 400178823 855636134 687055288 843005594 841780337 931640418 625664180 351424753 604881661 196106606 388085842 931966477 836376015 545538425 981996224 921198791 520071928 396806189 338631458 511330454 338929165 242530683 963141978 128702236 251367294 344876805 667844649 462762217 764116955 783513992 891279504 710224239 629101079 328462418 896072909 656623172 866337119 42657625 858798711 801623766 573449906 546679009 264297813 860377902 2076768 860377902 782533040 215792516 394791153 745200166 232177196 83066601 852604705 23262398 175507355 719307635 775682536 572588387 960543625 210621083 992169078 396806189 650036494 10475035 134801439 746092812 338312978 586446680 220576148 575023903 866568903 208625324 187104147 268759041 33511708 82689280 885353274 633573519 29473993 802009078 330205547 888553258 983373150 209789164 170941326 592639233 334211676 533455280 338631458 152523810 667844649 457149478 554242697 922858580 831241130 740882715 571019028 264408147 182214511 735696627 889608806 570764323 128450928 809429735 134801439 915330573 134971740 247221668 287768226 850386354 790270533 247006479 616057762 840130613 103219970 451817798 984050047 695599688 136412292 637657473 77685914 375066210 764459345 630201811 938705675 587469038 330205547 527654256 40131409 886149363 851759377 786380583 767187616 162062292 981996224 151506993 215289803 760231333 376974209 215792516 175507355 719307635 459617527 979740237 732559957 932584021 715957434 619842427 527595027 603931167 711532060 74587532 630238886 401452903 916956968 626833449 938456692 927806038 554242697 858127225 613596687 626932919 33511708 652018277 854243215 532803593 932715562 396806189 792822959 626932919 134971740 73848009 835198840 837690635 866337119 430101007 285947848 432089082 570796148 886149363 396138845 432089082 488788762 438183310 556619020 696443558 186244437 958668995 155241439 295606018 121069546 598426014 138442062 876868627 962430008 575023903 103219970 809429735 88335614 407091770 568142039 931640418 888259120 424594759 607965234 152523810 990121035 29069209 960543625 396050095 588034909 67831588 55018341 306258744 449022331 196106606 697742034 152523810 764459345 24188768 978947655 103669472 573480571 804406873 313272965 23973553 817743547 719307635 187104147 703490607 408032939 595030753 568142039 193648030 983113723 456956861 520071928 617908997 531135820 431406787 548964093 884072178 264297813 366854683 616796881 835339516 495854210 302151126 361002681 674485068 838803091 98824830 359714925 650990283 970911538 209789164 215289803 900116034 795472528 956815883 937158597 354807942 963141978 804406873 727578179 884059813 382210484 478351140 162904272 271484655 165821462 788737791 485509833 31215478 509144872 215977916 264100442 387176309 2379379 618542887 962073361 568104980 787269565 94279561 715957434 585165457 942899938 562773407 36055646 513440742 509664709 292149520 806744033 302151126 458156391 917795074 788118407 527654256 24089615 885549757 27735709 60750487 719601437 23262398 850484222 776352608 781246194 305990981 632378665 540394532 597784477 969294148 788118407 882364001 526944836 163769090 616057762 311613451 371179314 750563611 299462930 128188331 20148474 660095934 232177196 304621545 4519262 525347105 175060805 770864525 441621000 722768643 754133002 628523361 604181881 696443558 979750308 190979155 522332929 289736829 388085842 911302173 24089615 156817178 995876182 1926282 571019028 886149363 315343704 637939784 872434540 740882715 152314280 850386354 443960759 801623766 979750308 181668423 311808379 900116034 337153847 575895835 726950461 135975430 543945175 760231333 698320352 653201202 448881532 23262398 223299794 757850417 556619020 874124920 143200457 103669472 686884353 757815664 994587826 396050095 852604705 430088921 328764419 900796599 488788762 103669472 464444922 687988023 317751260 462762217 247822207 803588261 676975489 53525809 764459345 765027062 394791153 407629453 256866745 854969794 939725993 407510599 757709512 700560235 762749463 551289217 456137963 422532994 408032939 308142020 556619020 586370291 509664709 211958450 708046990 269911067 721769014 431406787 735891721 512614298 60017144 738612855 437743643 630201811 2379379 630775839 408032939 289736829 232177196 572588387 520071928 539381059 19911869 429277230 829983432 944068218 35128915 465759767 29473993 295606018 739696834 513440742 641231120 854902633 767187616 738855203 850484222 776820092 88335614 39220584 990121035 234980621 15903366 745200166 711455867 597206610 896029805 886917295 172894131 888553258 446968233 103733806 250885472 10475035 359859765 882364001 559957428 743614603 812044550 610834602 694954883 135975430 464444922 955501918 853903669 765027062 315343704 138393155 498045048 877088774 907095826 723661847 443960759 219054502 522332929 610834602 943235508 80485362 252962990 770864525 40131409 874124920 587179274 24188768 420636144 488295044 128450928 808866527 757709512 6720560 163229392 751925989 527595027 947413305 342116147 994877696 647733367 181668423 195019158 103669472 140551765 99294732 566554997 10475035 943235508 745200166 938456692 210621083 1736950 29069209 172894131 457149478 771803404 645094664 485063015 926044257 494336936 247221668 48746678 128702236 853903669 499057158 369306500 407629453 991615550 587469038 940381563 884072178 475344103 115090276 934824360 471393875 604181881 884072178 852107700 23973553 496698204 83066601 160287690 567948101 187104147 153196022 287239117 654830523 251367294 429277230 587179274 31215478 38304068 206036522 638790258 630775839 2575238 465697134 994587826 209789164 841210236 765027062 860708299 604968568 38304068 546679009 196460706 855636134 727245017 688534928 767839638 626932919 313272965 489612980 388085842 162062292 464444922 681765297 572465104 840075867 539035187 499057158 992169078 275349681 761330904 208625324 496698204 773781000 264297813 814662325 413592826 247006479 964902255 860377902 359859765 251042004 859168292 630775839 509664709 551289217 371179314 174140940 735710261 949084393 77685914 532803593 256866745 888699423 165821462 40448245 854243215 430101007 969494113 32075030 758889515 547547687 775682536 306258744 307403622 954227928 749497174 93651148 623206361 518384931 205387898 754580366 780061015 910850066 215289803 590208882 413592826 457149478 870201182 214650974 174862116 247221668 938456692 396743027 667844649 857535330 475344103 538810384 573480571 626833449 579757115 918225489 888259120 464130920 226492467 770594967 246221518 271484655 24089615 148087911 866568903 774489082 267829614 196106606 463496366 567343883 972710252 490344724 152314280 396050095 994587826 885995802 53966525 103669472 754133002 332834875 307060809 274113481 182214511 862177563 792846009 295366548 298050322 816971086 970911538 23973553 338631458 41538784 962073361 746992914 338312978 422532994 338631458 600441802 140725908 513440742 327773233 754580366 88335614 40656291 942866882 64420967 446968233 242530683 215289803 940188502 172894131 660095934 589760538 266213579 353964006 202477791 991615550 645094664 872434540 228290502 650036494 710224239 112090095 136384659 220576148 195957995 1736950 886917295 195733178 156817178 352092606 610447918 885141769 738855203 939725993 39220584 249820698 367026304 535533605 275202504 776835194 103669472 866337119 533455280 866337119 846351340 117210451 626833449 130160246 196106606 984050047 926045944 393120342 546679009 4519262 547547687 128450928 117931902 186244437 807117750 63192647 831467447 831241130 41538784 859168292 215981255 806744033 550336314 51457589 876263470 451521521 83066601 514768035 43970470 776835194 115090276 916956968 926045944 20148474 855636134 36265302 846351340 413592826 760231333 359859765 554222239 989729323 514650194 78775552 931086800 800460688 652018277 213097363 922706719 307060809 284588557 408032939 922706719 854243215 40448245 940381563 877088774 726620654 843005594 810021050 595030753 550322314 136384659 27735709 254203892 264100442 954227928 737945381 595030753 767839638 78649514 338631458 275202504 87392830 366854683 138442062 128188331 808838846 492009082 882804101 299113502 885141769 306607837 20148474 771321738 285947848 586446680 888259120 746992914 393120342 234980621 315343704 438183310 408032939 768561257 353964006 101231409 687055288 174140940 393120342 186285312 145885851 918225489 170938835 142903358 708094860 745200166 509144872 214650974 55108095 151506993 81553943 305990981 282751746 181668423 396937914 840075867 103219970 591292508 459617527 6720560 858040709 244528344 458290565 115090276 47349911 712346140 686335042 746092812 485063015 539381059 48746678 540976336 727578179 433686203 767187616 334299650 19715614 289736829 866337119 743614603 761330904 719307635 287239117 932584021 106790696 261683638 218611070 21190596 625664180 860477160 573480571 575895835 983373150 656623172 963141978 570764323 841780337 638516505 539035187 80485362 400178823 754580366 337153847 190979155 550322314 688577702 337153847 484158080 283321520 650990283 27735709 660095934 994587826 944068218 592981604 931086800 970911538 587469038 787269565 408395896 163229392 525347105 7807006 736624310 566554997 760231333 812044550 251188854 78775552 688534928 134971740 456956861 5299425 513440742 543945175 663971090 739696834 884059813 589760538 237389399 267829614 628523361 522663253 103669472 387703244 321628921 288072509 292972503 190323279 886149363 944573659 683406807 306597948 705304879 424974082 284588557 790270533 156817178 342116147 448262245 870201182 326469359 146573202 804406873 970320952 103733806 932715562 975337465 250749017 942999703 478892468 140129038 727827821 814662325 182214511 801623766 806792339 653201202 570796148 882364001 427184372 289918211 446968233 41538784 831241130 567948101 735710261 32075030 5299425 117931902 984050047 738855203 602832600 736624310 636434256 705548145 209497607 432089082 47529701 885995802 463496366 53525809 943235508 704431513 853170454 151364594 299994808 886917295 943235508 132556595 887548285 715779797 592981604 587469038 866337119 261683638 641231120 586370291 989729323 862254110 934824360 575895835 931005739 885549757 560623000 15037608 589760538 696443558 290474734 547547687 190323279 103733806 978947655 936312210 29473993 740882715 424974082 290117216 698320352 878442641 792846009 679463383 179991869 652018277 307060809 41538784 546141085 334299650 887548285 152523810 15903366 361435434 325554372 809429735 587179274 430284321 390793037 152866011 978947655 539381059 179991869 344876805 531333917 428572243 299462930 876868627 686335042 432089082 810021050 451817798 630238886 581063820 98231977 830619816 788118407 808866527 390793037 290117216 256866745 456956861 451551269 242028021 962073361 715779797 399037712 42657625 359859765 43970470 451521521 525347105 195733178 28363157 732559957 28363157 427184372 56154381 997329398 533455280 940381563 190979155 994587826 688577702 187104147 663971090 829614460 715779797 408032939 214650974 396138845 770864525 735891721 904800517 607760956 492009082 916956968 633587956 758889515 103669472 307060809 254203892 20148474 846351340 891279504 702364434 130160246 525347105 66490779 947413305 77685914 969294148 762749463 886149363 778123726 864016134 572465104 513440742 581831913 704431513 38085353 757815664 788118407 710224239 581831913 618542887 620243558 50241607 664041213 857535330 40131409 210621083 520071928 542382913 570796148 542382913 620243558 633587956 727245017 944068218 288072509 938140278 337153847 153196022 686884353 28363157 618355033 705548145 359859765 24188768 40131409 485153920 112090095 553368896 858040709 13112382 939725993 678884863 24089615 896571061 276676140 688577702 52243955 295366548 678474526 967417280 77685914 926045944 32954995 662421393 923715439 888699423 566125822 575023903 697742034 407091770 19715614 920628541 910818482 900796599 382904427 428572243 789617647 247221668 572465104 215774690 767187616 882364001 780061015 860377902 607041944 864016134 979750308 484158080 910818482 736624310 896029805 156817178 674446970 577970627 27735709 195957995 970911538 838655651 276676140 259646582 607760956 254203892 896029805 780870754 960543625 975337465 49948206 344876805 962430008 602396426 896072909 846351340 607760956 884072178 678474526 743614603 963141978 358401766 937158597 484158080 298050322 637769046 689757867 242186770 853903669 21190596 708094860 396050095 459617527 650990283 36055646 954677909 33511708 630775839 327773233 709613471 808838846 484158080 174335822 703490607 63192647 804406873 955730659 298727845 404152565 234980621 167276070 305068796 5299425 567948101 708053570 503666498 853903669 361435434 507016471 950497221 664041213 47290536 138442062 208625324 767187616 242530683 223299794 186285312 852755974 539957336 446968233 367026304 573449906 632014852 485509833 640925332 252962990 610834602 19715614 885995802 256866745 769327548 382904427 896571061 498045048 738855203 860708299 125829791 994587826 955501918 662972501 860377902 458363994 485153920 889608806 152243323 851759377 23262398 938456692 126695727 962430008 696443558 56927881 40448245 394791153 966683628 782533040 456956861 686884353 685702028 485509833 361435434 829983432 632402794 581831913 181668423 697742034 778074990 426814174 675472009 485063015 196106606 458363994 807117750 7807006 760231333 170941326 478351140 103219970 601630030 697742034 585165457 737945381 802009078 49614749 32075030 604881661 190929591 817743547 958668995 732245352 257214051 506919968 215977916 781246194 679463383 266583970 407629453 656191811 626833449 623206361 770864525 162904272 455539394 790270533 215774690 762749463 344620844 485063015 738855203 841780337 284588557 806744033 261683638 975478549 430284321 195733178 462762217 49948206 572588387 220576148 430284321 448881532 735696627 527595027 247841801 170938835 946612927 288072509 23973553 620243558 210621083 213097363 332834875 560327459 575895835 885000402 77819776 462394151 652018277 249820698 244528344 916956968 773781000 854243215 922706719 793291205 361435434 437743643 296305836 33511708 278160655 984047482 835339516 36265302 211958450 187104147 181668423 382904427 492009082 478892468 878442641 992169078 412979540 38304068 275349681 984047482 570764323 267829614 396806189 630977998 926045944 19715614 202477791 252962990 685702028 505061211 270237875 842970782 136384659 910818482 286037808 225771141 911302173 349076114 103669472 812044550 125204206 944573659 878442641 507016471 691982506 315343704 830619816 560327459 80485362 2379379 887794841 237172271 921198791 369306500 28363157 128450928 103733806 776835194 736624310 932715562 98287438 225858850 654830523 795472528 864016134 968670974 662421393 87392830 860477160 327773233 603931167 298050322 219054502 213097363 884059813 266583970 140129038 662972501 315747769 225858850 877088774 970911538 247841801 994587826 922706719 782533040 745200166 187104147 274113481 960543625 884072178 307403622 196106606 721769014 750563611 248642173 156817178 852604705 234980621 60017144 154538466 808614164 471393875 55108095 854969794 940381563 904800517 618355033 553368896 607760956 296305836 456137963 274113481 918521256 740882715 699230813 456956861 866337119 125829791 215289803 575895835 315297566 637939784 667844649 753419354 130160246 190929591 787269565 931013644 686884353 43970470 33511708 247234349 174862116 920628541 427184372 67700412 324129364 936312210 916956968 98287438 485063015 306607837 296751278 776820092 349644605 67831588 165821462 109369069 737945381 721418370 932715562 533864165 38304068 247841801 937158597 40656291 539035187 354807942 579757115 203331888 494336936 610447918 735710261 691982506 907721720 687988023 535533605 82689280 288873549 650990283 327773233 242028021 708053570 60750487 396138845 142903358 288873549 123073176 647733367 331638088 962430008 567774282 458363994 760370490 290474734 860477160 282751746 209789164 767187616 215981255 667313812 538025980 916956968 776820092 597784477 77819776 509370562 275349681 806744033 42657625 582273012 49317804 324129364 540976336 420636144 941586175 589760538 126695727 788118407 751925989 310726569 900796599 573480571 740882715 390793037 660095934 98231977 765027062 443960759 592639233 613596687 838331644 647733367 465697134 390275103 913521589 476912096 586446680 733642252 814662325 835212499 50241607 997329398 251042004 718980624 286037808 2379379 685702028 515426984 545538425 790270533 771321738 782533040 195957995 448881532 602396426 713146141 942999703 546141085 757815664 396937914 228290502 130160246 979740237 942866882 328462418 812414090 133739154 983373150 215792516 456137963 633587956 689757867 804406873 995876182 851400664 968755777 982353486 962430008 776352608 175060805 138393155 719601437 257214051 702745028 632402794 463496366 652018277 186244437 886149363 888259120 99294732 134971740 874124920 264297813 23262398 170941326 567948101 587179274 619842427 451521521 23973553 829983432 654830523 762749463 525347105 638790258 21190596 330205547 151364594 872434540 354807942 841210236 375066210 49948206 768561257 787269565 456956861 328764419 242530683 891279504 885549757 838803091 637657473 299994808 840130613 334932282 367026304 388085842 679463383 79509313 950497221 616057762 492009082 311808379 757815664 334932282 354807942 749497174 412979540 841210236 786380583 282751746 592639233 515426984 748408317 835212499 177689820 550322314 913521589 172894131 814662325 475344103 133739154 781246194 259646582 134801439 156817178 711532060 626932919 496698204 38338132 246221518 923927991 778123726 152618584 506178629 633587956 359714925 31215478 918521256 24188768 288873549 674485068 590918818 719307635 296751278 363976852 250749017 954677909 953267424 361435434 916956968 242530683 287239117 703490607 902464469 492009082 767187616 700560235 993091440 827311105 250885472 776352608 376974209 465759767 400218902 303230482 778123726 151364594 112090095 424594759 19715614 979740237 328764419 722768643 656191811 289736829 218611070 208625324 87392830 885549757 715957434 142903358 307060809 797746066 698320352 843005594 299462930 23262398 307403622 801623766 550322314 637939784 448881532 444897967 944573659 942999703 543865019 425392410 726950461 152523810 829983432 148087911 962073361 911302173 662972501 38844979 520071928 586370291 896072909 882364001 641231120 705548145 535533605 763431295 288072509 954677909 638790258 292972503 207442482 600441802 991615550 278160655 664041213 13112382 396937914 251042004 776835194 757850417 313272965 354807942 667844649 203331888 888259120 183440003 165821462 570764323 400218902 774489082 678474526 656623172 349644605 351424753 143200457 827311105 767839638 953882020 885353274 660765062 674446970 545538425 143200457 936312210 938456692 438183310 182214511 567343883 52243955 754580366 451521521 885995802 887548285 743614603 498045048 109369069 630238886 451817798 35128915 597206610 462394151 196106606 792846009 451817798 522332929 344876805 179991869 776352608 960543625 430284321 964902255 432089082 215289803 429277230 656191811 553368896 2575238 806664207 394791153 597206610 103219970 136384659 629101079 177689820 667313812 302151126 885353274 835339516 193515742 254203892 853170454 637657473 174335822 83066601 978947655 261683638 241184545 954227928 352092606 539957336 496698204 148087911 175507355 709613471 962073361 840075867 55018341 103669472 981996224 132556595 290474734 261683638 795472528 257214051 449022331 855636134 702745028 638516505 420636144 289736829 103219970 93651148 452156279 154538466 635302209 264408147 990121035 600441802 63192647 591292508 509144872 773781000 850484222 688577702 360743135 723661847 433921335 237389399 566554997 32075030 587179274 408395896 2379379 128188331 546141085 838331644 19911869 363976852 960543625 838331644 334932282 806664207 195733178 201717402 396632533 462762217 938456692 640849273 215052415 918225489 872434540 80485362 420636144 56154381 699230813 542382913 960543625 424594759 252962990 489130642 307403622 375066210 582273012 681930584 689757867 438183310 762749463 39220584 451521521 896571061 646710523 242028021 38085353 936312210 757709512 746092812 835198840 247006479 328764419 780870754 137529801 913521589 55108095 740340897 311808379 38844979 390793037 125829791 938456692 49317804 992169078 412979540 498045048 451817798 121069546 190979155 568142039 306258744 516175014 776820092 338929165 547547687 298050322 750563611 187104147 190979155 433921335 838655651 838803091 604968568 56927881 407091770 249670598 587469038 607965234 760370490 464444922 422532994 248642173 407091770 550322314 932584021 702745028 546679009 678474526 215981255 942866882 83066601 405444604 215977916 735710261 559014304 582273012 15037608 167276070 553368896 688177128 738612855 997329398 538025980 404152565 776820092 694954883 538810384 841210236 923927991 399037712 746092812 858798711 638516505 195733178 53226850 970911538 702364434 602832600 650697444 835212499 754580366 334932282 632014852 223299794 770864525 757709512 215792516 579757115 489612980 128450928 864016134 2379379 202477791 697742034 215981255 912948600 302151126 686884353 645094664 310726569 331638088 272303478 946916156 764459345 539381059 885353274 539957336 451551269 645094664 452156279 511330454 754133002 640849273 2575238 512614298 378961655 64420967 462394151 514650194 5299425 140129038 942866882 351424753 288873549 971894015 396937914 321628921 970320952 740882715 420636144 432089082 682170984 736624310 359714925 513440742 170938835 851400664 938705675 920721173 713146141 590208882 996943901 900116034 735891721 215792516 109054120 540976336 559957428 809429735 495854210 760370490 2379379 838655651 812414090 705548145 256866745 645094664 399037712 538025980 511277493 837690635 938080232 750563611 252792947 917795074 328764419 654830523 250832323 190979155 981996224 591292508 854243215 652018277 4519262 953882020 800460688 78649514 476912096 703490607 983373150 553191189 498045048 269911067 788118407 247841801 338929165 929504680 607965234 722768643 776835194 126695727 630238886 809429735 997329398 103733806 882804101 679463383 668964848 293192373 702745028 177689820 758889515 73848009 310726569 244528344 511277493 653201202 790270533 73848009 618355033 982353486 788118407 650697444 992169078 688577702 955730659 884072178 668964848 387176309 817743547 610447918 485262404 401452903 939725993 358401766 458156391 24188768 630977998 321628921 264100442 540394532 754133002 154538466 359859765 29069209 835198840 860377902 546141085 858127225 248642173 740340897 854243215 922706719 134801439 40656291 800460688 550336314 942866882 703490607 140551765 80485362 456137963 886917295 979750308 123073176 771803404 269911067 172894131 83066601 509664709 688534928 931005739 765027062 252962990 586370291 965948435 94279561 2076768 923927991 686884353 846351340 56927881 513440742 352092606 843005594 38304068 982416551 577673184 683406807 451521521 975337465 601740259 174140940 678474526 40448245 458363994 597206610 923715439 885549757 246058339 600441802 812414090 736624310 940381563 190979155 10369081 575023903 792846009 82689280 923715439 626932919 688177128 809429735 187104147 215792516 571019028 780870754 458156391 72820570 683621666 153196022 963141978 152618584 55018341 885995802 140551765 133739154 708046990 315747769 49614749 567774282 413592826 991073887 264297813 597206610 207442482 444897967 531135820 129724737 328764419 656623172 568142039 662421393 195733178 757850417 735710261 770594967 456137963 10475035 815123402 640925332 376448548 539381059 568142039 152523810 851759377 296305836 52243955 768561257 870201182 610834602 324986193 136384659 758889515 305068796 786320493 125829791 38085353 31215478 968670974 31615284 535533605 129724737 708053570 361435434 944573659 203331888 160287690 760231333 437743643 753419354 627110568 704431513 49614749 967417280 299994808 931013644 975478549 527654256 732559957 814662325 916956968 740340897 667844649 430101007 836376015 610447918 98231977 715779797 620243558 638516505 962430008 958668995 983373150 577970627 52243955 979740237 616057762 255644658 668964848 583924389 88335614 688534928 327773233 799588075 993091440 838655651 943793512 559014304 114409323 132556595 296751278 705304879 854243215 920721173 146573202 305990981 630629857 598426014 852604705 954227928 722013570 765027062 276676140 632014852 426814174 498840912 522332929 255644658 485262404 735696627 10369081 695599688 938456692 344620844 48746678 292696118 349076114 23262398 970320952 936312210 441621000 328462418 841210236 801623766 514768035 511330454 641231120 456956861 715957434 101231409 506178629 13112382 635302209 525347105 300892929 757850417 140725908 115509283 764459345 857535330 990121035 183440003 993091440 261683638 509144872 266213579 2575238 101231409 992169078 700560235 285947848 31215478 334211676 489612980 162904272 992001870 307403622 575895835 220576148 23262398 209497607 489130642 77685914 740882715 441621000 311613451 939725993 228290502 287239117 270237875 506919968 131323888 907721720 42657625 852604705 354807942 324129364 850386354 452156279 610834602 931005739 885549757 509019925 886149363 207844781 855636134 686335042 704431513 288873549 152523810 451551269 954677909 885141769 944068218 342116147 132556595 896072909 275349681 907721720 949084393 968755777 587469038 174862116 770594967 815123402 656623172 264297813 303230482 702745028 745200166 683621666 78649514 560623000 153196022 620243558 601630030 587179274 375066210 992169078 610834602 907095826 367026304 459452716 152618584 382904427 632014852 808838846 645094664 251367294 804406873 300892929 489612980 390275103 630775839 557710104 860377902 134801439 126695727 853170454 511330454 708046990 835339516 858040709 292149520 49948206 40448245 2076768 893019475 577673184 292149520 592970093 946916156 167276070 688577702 128450928 835339516 324986193 567774282 300892929 193648030 40131409 444897967 624819674 38338132 573480571 619842427 396937914 15037608 424974082 465697134 7807006 289736829 137529801 138393155 650036494 430284321 247822207 801623766 33511708 489130642 641231120 247221668 427184372 29069209 175060805 152618584 520071928 862177563 112390393 941586175 475344103 630775839 674446970 946916156 520071928 480361743 570796148 40448245 137529801 721418370 910818482 39220584 571019028 946916156 888259120 53226850 266583970 801623766 112390393 354807942 27735709 206036522 932715562 29069209 939725993 562773407 744008188 21190596 408032939 838331644 182214511 721418370 103219970 754580366 207442482 525347105 400178823 567948101 739696834 950673785 697742034 920628541 515426984 554222239 330205547 688577702 396937914 553368896 664041213 788737791 300892929 211958450 889608806 363976852 134801439 795549341 60017144 456956861 571019028 271484655 464444922 211958450 739696834 567948101 195019158 375066210 718980624 257214051 983113723 275349681 146573202 982370833 121069546 840075867 546141085 308142020 604181881 152618584 702745028 592639233 790270533 640925332 735710261 6720560 771803404 1926282 697742034 685702028 806744033 681930584 815123402 946612927 601740259 674485068 209497607 915330573 792822959 15037608 437743643 424594759 330205547 604968568 172894131 275349681 226492467 597206610 607965234 408395896 226492467 40448245 996943901 893019475 66490779 877167702 77685914 748408317 662972501 838331644 968755777 117931902 688177128 289918211 36265302 268759041 146573202 862177563 866337119 877088774 882804101 931966477 77685914 586370291 338929165 688577702 831380531 888553258 317751260 295366548 307060809 41538784 786320493 489612980 53195413 74587532 283321520 407510599 283321520 53226850 702745028 292696118 790270533 156817178 713146141 490344724 79523589 695599688 190323279 412979540 359859765 554222239 715957434 47290536 971549242 660765062 485509833 586446680 535533605 332834875 311808379 195957995 37275245 944068218 885353274 770993588 577673184 456956861 965948435 499057158 396138845 877088774 325554372 64420967 981996224 923927991 962073361 67831588 463496366 492009082 560623000 850386354 581831913 640925332 285947848 431406787 342116147 954227928 713146141 746992914 708094860 917795074 56927881 408395896 35128915 776820092 962073361 358401766 509370562 950673785 159828635 513440742 835198840 82689280 664041213 992001870 393120342 858127225 625664180 885995802 570796148 893019475 979750308 874124920 195019158 982416551 298050322 628523361 851759377 738855203 793291205 484158080 249670598 53226850 264297813 261683638 272303478 876263470 172894131 259646582 757709512 601630030 775682536 177689820 516175014 214650974 852604705 103733806 780061015 498840912 566125822 125204206 371179314 632014852 441621000 958668995 641231120 918225489 817743547 430088921 313272965 299113502 315343704 931640418 290474734 296305836 130160246 736237188 607041944 577970627 121069546 396806189 800460688 196106606 635302209 854902633 972710252 838655651 376974209 780870754 882804101 444897967 77685914 129724737 587179274 328462418 376448548 597206610 338929165 428572243 630629857 979740237 361002681 554222239 686884353 591292508 315343704 247234349 209497607 429277230 568142039 322974842 841780337 53525809 66490779 512614298 808838846 490344724 995876182 575023903 514768035 344620844 390793037 215774690 511277493 433686203 2076768 773781000 852755974 949084393 812414090 135975430 2379379 652018277 287768226 242186770 427184372 757850417 382210484 80485362 38085353 125829791 629101079 862254110 808614164 877167702 616796881 586446680 505061211 254203892 727245017 740340897 40131409 876263470 5299425 637939784 112090095 306258744 207442482 704431513 112390393 321628921 509144872 67831588 195733178 568104980 638790258 304621545 24089615 559014304 4519262 857535330 939725993 289918211 656191811 857535330 761330904 247841801 963141978 640925332 27735709 93651148 885647994 915330573 624819674 975337465 226492467 354807942 330274784 407629453 207844781 289918211 604181881 563678994 808838846 53226850 47349911 21190596 800460688 945394518 463496366 115090276 313272965 247221668 667313812 527654256 29473993 992001870 324129364 420052652 790270533 846351340 405444604 795549341 543865019 675472009 829614460 152523810 182214511 804406873 287239117 289736829 106790696 39220584 456137963 464130920 400218902 292149520 790270533 136384659 624819674 533455280 625664180 709613471 550322314 971894015 382210484 920628541 573449906 358401766 592970093 547547687 990121035 640925332 399037712 547547687 806792339 806664207 215052415 125204206 953267424 492009082 573480571 210621083 556619020 827311105 452156279 242028021 852604705 765027062 943793512 444897967 991615550 630201811 735891721 242028021 788118407 736237188 923715439 700560235 140725908 562773407 589760538 407510599 650036494 546679009 298050322 490344724 835212499 332834875 49948206 884059813 526944836 598543708 209497607 15037608 970320952 765027062 496698204 425392410 252962990 101231409 15903366 32806834 896029805 533455280 931005739 601630030 764459345 703490607 174335822 931086800 143200457 915330573 918521256 464130920 788118407 28363157 172382592 663971090 667844649 138393155 815123402 292696118 531135820 802009078 342116147 514650194 20148474 598543708 299462930 132556595 831380531 750563611 668964848 942999703 77685914 140129038 2575238 650697444 103219970 247221668 806744033 660095934 462394151 503666498 689757867 257214051 81337657 261683638 989729323 626833449 121069546 186285312 572465104 652018277 676975489 705548145 299462930 567343883 163229392 375066210 179991869 602396426 264297813 462762217 66490779 884059813 376974209 954227928 140725908 799588075 121069546 296305836 699230813 186285312 250749017 292696118 938705675 956815883 560623000 688577702 225858850 994877696 390275103 417074904 195733178 896571061 527595027 28363157 852107700 982370833 858798711 660095934 884952974 808866527 683621666 982353486 443960759 754580366 964902255 284588557 437743643 533864165 870201182 533864165 282751746 206036522 250885472 992001870 52243955 152523810 812414090 931013644 656191811 562773407 252792947 152243323 106790696 295606018 616057762 332834875 78775552 478351140 299462930 780870754 559957428 946916156 130160246 947413305 842970782 215774690 968670974 751925989 88335614 125204206 860708299 202477791 754133002 259646582 699230813 740340897 866568903 921198791 330205547 598426014 604181881 152243323 989729323 407091770 744008188 878442641 674446970 911302173 249670598 358401766 522663253 681930584 588034909 704431513 635302209 266213579 27735709 242186770 193515742 135975430 882804101 936312210 106790696 425392410 884952974 50241607 68748842 94279561 464444922 215981255 885647994 931013644 984047482 603931167 531333917 203331888 686335042 862177563 535533605 760370490 443960759 804406873 597784477 321628921 249670598 663971090 399037712 503666498 399037712 553368896 443960759 499057158 683621666 40656291 175060805 843005594 566125822 971894015 446968233 23262398 143200457 407091770 488788762 572588387 938456692 354807942 577673184 136384659 327773233 303230482 912948600 931966477 506178629 152523810 884952974 685702028 15903366 771321738 991615550 117931902 426814174 679463383 630238886 266213579 907095826 920721173 136412292 296305836 711455867 804406873 570796148 181668423 744008188 293192373 226492467 709613471 836376015 138393155 413592826 1926282 441621000 663670886 604181881 942999703 572465104 572588387 686335042 854902633 376974209 681765297 662972501 896571061 764116955 132556595 376974209 261683638 79523589 237389399 459617527 748408317 630629857 885995802 49614749 49317804 476912096 650990283 560623000 750563611 420636144 298727845 488788762 211958450 698320352 768561257 989729323 67700412 205387898 653201202 582273012 156817178 48746678 632014852 853903669 740882715 162904272 888553258 960796073 723661847 353964006 814662325 51457589 941586175 352092606 128702236 109054120 361435434 494336936 123073176 761330904 407091770 433921335 259646582 989729323 292696118 361002681 38844979 248642173 39220584 458290565 975337465 495854210 590208882 459617527 478351140 887548285 598543708 7807006 911302173 943235508 570764323 686884353 40656291 458290565 656623172 984047482 602396426 699230813 99294732 38304068 503666498 314069534 632402794 686335042 563678994 393120342 271484655 711455867 685702028 38304068 738855203 812414090 82689280 172894131 247006479 990121035 992001870 623206361 740882715 535533605 366854683 103219970 696443558 573449906 456956861 923715439 975337465 858798711 422532994 1736950 151506993 787269565 512614298 394791153 992001870 53966525 877088774 98231977 430284321 79509313 838655651 152314280 705304879 852604705 969294148 896029805 136384659 554242697 663971090 771803404 554222239 464444922 587469038 349644605 876263470 923715439 464130920 215289803 904771946 676975489 893019475 33511708 696443558 334932282 407629453 400218902 83066601 315297566 23262398 459617527 498840912 175060805 864016134 338929165 481894295 735710261 831467447 829614460 511330454 940381563 255644658 35128915 322974842 37275245 656623172 916956968 296305836 334932282 430088921 662972501 640849273 506178629 567343883 636434256 430088921 812044550 652018277 514768035 949084393 786320493 215774690 195733178 738855203 81337657 770993588 338312978 93651148 638790258 700560235 509370562 660095934 63192647 206036522 225771141 326469359 232177196 251042004 287239117 299113502 19911869 567774282 334211676 572588387 782533040 211958450 727827821 888553258 485262404 884059813 506919968 738855203 247822207 215792516 19715614 650697444 165821462 712346140 761330904 539381059 852604705 814295984 360743135 247841801 719601437 274113481 579757115 43970470 618355033 575023903 750750593 765027062 602832600 641635851 179991869 432089082 426814174 736624310 792846009 311613451 721769014 831467447 638790258 162062292 885000402 408395896 786320493 93651148 478892468 93651148 572465104 457149478 2575238 546679009 942899938 553368896 739696834 296305836 264297813 299113502 522663253 760370490 721769014 831467447 858040709 662421393 981996224 946612927 485509833 28363157 382904427 966683628 451521521 591292508 860708299 242028021 896029805 854969794 702745028 931013644 514768035 855636134 215052415 955501918 943235508 451817798 546141085 387176309 475344103 824770361 424974082 254203892 602832600 603931167 241184545 546679009 522663253 804406873 572465104 886917295 241184545 795549341 782533040 145559297 53966525 773781000 686884353 637657473 324129364 691982506 32954995 656623172 376448548 540394532 995876182 662421393 427184372 47290536 557710104 603931167 907095826 946916156 485262404 953882020 607041944 604968568 711455867 795549341 196460706 125204206 522663253 567948101 51457589 602396426 522663253 838331644 931005739 878442641 172894131 662421393 290474734 751925989 923715439 478351140 121069546 289918211 632378665 328462418 979750308 887794841 556619020 129724737 916956968 503666498 313272965 99294732 620243558 308142020 283321520 177689820 931005739 514650194 960543625 148087911 38085353 305990981 121069546 32075030 866568903 295606018 267829614 780870754 831380531 315747769 962430008 23973553 266583970 598426014 264297813 958668995 19715614 637657473 885353274 645094664 315297566 53525809 592981604 444897967 964902255 511330454 726620654 462762217 420636144 660765062 581831913 540976336 573480571 363976852 739696834 553368896 788118407 570764323 607041944 719307635 708053570 361435434 817743547 770594967 451551269 778074990 851759377 456956861 788118407 926045944 889608806 93478833 33511708 396050095 896072909 893019475 674446970 577970627 130160246 751925989 119279869 904771946 296751278 135975430 656191811 293192373 688177128 601630030 338631458 568104980 891279504 722768643 737945381 966131311 858798711 471393875 812044550 757815664 252962990 31215478 420636144 117931902 851829959 610447918 175060805 512614298 313272965 80485362 781242822 645094664 403519778 448262245 81337657 623398671 515426984 292972503 307060809 920628541 969494113 43970470 175507355 931013644 780061015 971894015 872434540 683406807 449022331 559014304 382904427 152866011 505061211 736624310 247822207 884072178 604881661 882364001 656191811 809429735 556619020 992001870 20148474 275349681 160287690 575023903 220576148 53525809 761330904 685702028 990121035 926045944 55018341 244528344 727578179 604968568 884952974 73848009 162904272 125204206 376448548 93651148 187104147 268759041 66490779 94279561 209497607 292149520 507016471 683406807 248642173 950497221 604881661 230662076 764116955 152866011 327773233 503666498 311808379 757850417 79509313 650990283 225771141 685702028 49948206 911302173 800460688 201717402 446968233 332834875 193515742 438183310 313272965 641635851 505061211 546679009 851829959 206036522 20148474 499057158 405444604 982416551 699733109 546679009 33511708 32806834 225771141 740882715 495854210 489130642 566554997 135975430 4519262 78649514 850484222 527654256 597784477 886149363 334211676 49317804 620243558 471393875 726950461 67831588 433921335 464130920 885647994 1926282 296751278 610834602 965948435 954677909 983373150 492009082 715957434 396743027 349644605 326469359 636434256 715779797 79523589 721418370 163229392 746092812 174335822 93651148 220576148 10475035 413592826 152523810 835212499 645094664 750978759 900116034 174862116 570764323 992169078 31215478 87392830 298727845 592970093 551289217 841210236 857535330 635302209 298727845 464444922 50241607 607760956 920721173 860708299 567774282 866337119 133739154 713146141 47290536 815123402 67700412 806744033 650697444 522332929 931086800 506178629 228290502 459617527 511330454 246221518 592639233 390275103 401452903 667844649 950497221 522663253 858127225 307403622 1926282 570796148 604968568 776835194 945394518 155241439 563678994 788118407 640849273 812414090 809429735 792846009 123073176 140725908 538810384 699230813 783513992 19715614 577970627 437743643 601630030 112390393 591292508 560327459 572588387 478892468 572588387 136412292 98824830 165821462 640925332 359859765 148087911 509144872 922858580 787269565 652018277 246221518 64420967 452156279 776352608 984047482 547547687 592970093 575895835 546141085 583924389 334932282 992001870 711455867 874124920 352092606 305990981 225858850 431406787 160287690 581063820 19715614 43970470 387703244 888553258 225771141 633573519 970911538 831467447 560327459 862177563 246058339 209789164 146573202 206036522 393120342 851400664 726620654 592639233 516175014 814662325 995876182 264408147 588034909 703490607 656191811 663971090 40131409 53226850 750978759 296305836 664041213 702364434 134801439 763431295 353964006 206036522 272303478 838331644 965948435 721418370 172382592 93478833 577673184 181668423 462394151 527654256 506178629 83066601 174862116 264750083 448881532 982353486 458363994 128188331 506178629 186285312 566554997 770594967 762749463 926045944 2379379 695599688 53966525 688577702 795472528 163769090 550322314 298727845 852755974 575023903 874297853 656623172 750750593 215792516 81553943 31215478 175060805 214650974 232177196 783513992 167276070 125829791 382904427 967417280 179991869 190979155 604181881 754580366 607041944 915330573 60017144 640849273 397928982 715779797 225858850 286037808 613596687 334299650 494336936 623398671 632378665 854969794 249820698 311613451 376974209 234980621 325554372 290117216 175060805 196106606 548964093 982416551 566554997 831467447 272303478 103733806 287768226 971894015 403519778 553191189 349076114 60750487 560623000 275202504 404152565 498840912 327773233 788737791 572465104 975337465 55108095 751925989 713146141 492009082 2379379 480361743 854243215 691982506 205387898 546679009 885000402 885995802 808838846 264750083 789617647 808866527 853903669 753419354 506178629 408395896 829614460 40448245 507016471 904771946 287239117 264408147 750978759 289918211 831241130 662421393 572465104 481894295 119279869 195957995 226492467 604968568 635302209 126695727 800460688 401452903 106790696 932584021 761330904 247221668 885353274 28363157 711532060 181668423 604881661 202477791 866568903 931013644 764459345 598543708 458156391 154538466 916956968 269911067 507016471 264408147 993091440 242028021 607760956 512614298 55018341 773781000 396937914 211958450 248642173 630201811 330205547 991073887 560623000 255644658 427184372 710224239 587179274 600441802 478892468 827311105 557710104 206036522 24089615 858127225 604881661 247221668 688177128 29069209 165821462 757850417 458290565 926044257 572465104 247234349 938705675 601630030 853903669 129724737 49948206 21190596 2575238 904800517 550322314 533455280 283321520 367026304 943793512 396806189 522332929 876263470 114409323 538025980 938456692 679463383 888259120 302151126 237172271 586446680 249670598 982353486 624819674 322974842 458156391 237389399 112090095 568104980 146573202 60750487 248642173 375066210 641231120 938140278 33511708 278160655 806792339 946612927 448881532 152243323 667313812 430284321 531135820 633587956 702745028 967417280 970320952 31215478 170941326 633573519 288072509 115509283 250749017 290117216 858798711 929504680 931005739 660095934 630629857 540394532 682170984 926044257 750978759 650697444 735710261 854969794 535533605 835339516 7807006 230662076 349076114 140129038 300892929 950497221 636434256 770864525 620243558 687988023 249670598 904800517 831241130 275202504 27735709 958668995 972710252 663670886 327773233 151506993 496698204 738855203 781246194 50241607 630238886 93651148 352092606 860477160 638790258 740882715 618355033 602396426 746394036 547547687 604181881 306258744 810021050 196106606 800460688 109369069 162904272 129724737 459617527 215792516 667844649 888699423 539035187 971894015 570796148 511330454 315297566 538810384 390793037 938140278 960543625 275202504 896072909 321628921 2379379 630201811 647733367 444897967 195019158 40656291 991615550 893019475 349644605 292696118 535533605 991073887 588034909 705304879 250832323 417074904 912948600 967417280 359859765 770864525 485509833 860377902 735891721 455539394 727827821 407510599 850484222 675472009 781246194 876868627 721769014 203331888 288072509 228290502 262406489 562773407 526944836 723661847 49614749 209789164 19715614 797746066 313272965 803588261 735710261 138393155 733642252 753419354 735710261 53226850 209497607 518384931 907095826 768561257 369306500 181668423 817743547 242530683 249670598 219054502 190323279 181668423 607965234 214244685 767187616 630201811 40131409 776352608 737945381 375066210 750750593 591292508 792846009 554222239 49948206 152618584 514768035 268759041 556619020 244528344 587179274 736624310 573449906 407629453 175060805 591292508 782533040 247221668 387703244 93478833 48746678 195957995 140725908 753419354 121069546 138393155 568142039 72820570 885353274 481894295 570796148 152618584 858798711 681930584 778123726 982353486 560623000 465697134 786320493 247221668 443960759 637769046 55108095 824770361 307403622 632014852 616796881 876263470 589760538 186285312 247822207 407091770 170941326 575023903 109054120 101231409 2379379 128702236 965948435 259646582 247822207 931013644 186244437 681930584 964902255 94279561 443960759 135975430 942899938 387176309 556619020 152618584 376448548 152523810 632378665 407510599 735710261 577970627 573480571 884059813 732245352 851400664 568142039 954677909 686335042 721418370 152314280 117931902 795472528 480361743 996943901 904800517 49614749 132556595 581831913 591292508 420636144 47290536 520071928 538025980 494336936 211958450 573480571 678884863 789617647 540394532 330274784 209789164 597784477 927806038 688177128 931966477 186244437 31615284 829983432 675472009 683621666 255644658 498045048 675472009 248642173 251188854 535533605 768561257 509019925 457149478 923715439 840075867 910818482 78649514 647733367 618542887 307060809 770993588 106790696 412979540 888259120 38338132 885141769 743614603 623206361 363976852 324129364 947413305 509144872 799588075 635302209 257214051 330205547 703490607 349076114 913521589 790270533 719307635 237172271 712346140 938080232 328462418 992169078 679463383 396632533 843005594 190323279 931640418 689757867 876868627 5299425 858127225 328764419 765027062 296751278 628523361 160287690 326469359 459617527 603931167 330274784 675472009 601740259 855636134 931005739 431406787 737945381 788737791 938705675 967417280 938080232 774489082 604181881 152523810 588034909 47290536 119279869 685702028 2076768 315747769 330205547 712346140 307060809 743614603 793291205 99294732 313272965 103733806 167276070 41538784 781246194 710224239 885141769 922706719 888259120 559014304 786320493 465697134 121069546 795549341 907095826 162062292 550322314 929504680 616057762 261683638 103219970 28363157 860708299 247234349 49948206 181668423 767187616 814662325 624819674 128702236 207844781 971894015 775682536 840075867 272303478 854902633 112390393 492009082 19911869 275349681 636434256 774489082 907095826 292696118 850484222 763431295 349644605 838655651 2379379 705548145 328764419 617908997 405444604 430088921 311808379 126695727 413592826 38338132 29473993 32075030 888259120 214244685 459452716 900116034 955730659 181668423 944573659 131323888 5299425 306607837 688177128 247221668 315343704 760231333 739696834 603931167 694954883 807117750 842970782 722768643 511277493 24188768 249670598 328462418 727245017 174140940 299462930 367026304 307060809 305068796 324129364 539957336 587179274 50241607 209497607 661321016 167276070 344620844 939725993 431406787 241184545 575895835 953267424 540394532 531135820 203331888 109054120 695599688 910818482 814662325 378961655 598426014 630977998 585165457 573449906 770594967 943235508 799588075 531333917 944068218 369306500 133739154 40131409 904800517 155241439 940188502 638790258 595030753 727245017 704431513 396138845 950497221 888259120 152618584 2575238 247006479 726950461 931640418 835212499 628523361 647733367 577970627 842970782 103669472 590918818 98287438 733642252 776820092 543945175 514650194 325554372 174140940 159828635 610447918 944573659 264750083 713146141 428572243 570796148 862177563 943793512 704431513 841210236 94279561 195019158 540394532 511277493 797746066 860708299 603931167 638790258 428572243 205387898 757850417 939725993 807117750 636434256 162062292 250832323 498840912 146573202 802009078 689757867 151364594 376448548 331638088 995876182 710224239 689757867 210621083 2076768 799588075 727827821 269911067 602832600 514650194 526944836 748408317 388085842 992001870 342116147 862254110 969494113 757850417 193515742 275202504 249820698 39220584 590918818 551289217 526944836 715779797 722013570 407091770 888259120 407629453 361002681 128702236 121069546 67831588 630629857 700560235 266583970 152243323 602832600 177689820 632378665 132556595 968755777 740882715 296751278 893019475 625664180 133739154 571019028 719307635 853903669 931966477 635302209 40448245 359714925 598426014 885141769 499057158 560623000 618542887 786320493 153196022 618355033 98287438 250885472 208625324 47349911 295606018 581831913 567948101 155241439 424594759 2076768 103669472 971549242 408395896 195019158 807117750 19911869 691982506 248642173 630775839 889608806 910850066 592981604 884072178 232177196 770864525 213097363 740340897 735710261 623398671 207442482 650990283 330274784 808866527 831380531 705304879 390793037 420052652 167276070 464130920 225771141 840130613 36265302 757815664 527595027 600441802 250832323 949084393 56927881 586446680 403519778 719307635 314069534 47290536 1736950 774489082 250885472 923927991 376974209 412979540 514768035 321628921 397928982 24188768 509370562 215977916 560327459 936312210 800460688 876868627 983113723 874124920 328764419 39220584 662972501 946612927 943235508 705548145 56927881 42657625 686884353 586370291 88335614 723661847 299462930 862177563 317751260 575895835 676975489 807117750 601740259 148087911 698320352 632014852 787269565 80415088 251367294 941586175 360743135 746092812 686884353 877088774 646710523 774489082 446968233 623398671 925555858 904771946 764459345 641635851 932715562 354807942 106790696 743614603 145885851 545538425 984050047 533455280 449022331 214650974 53966525 208625324 996943901 540394532 711532060 174140940 215289803 433686203 338631458 299113502 267829614 797746066 664041213 412979540 290474734 559014304 29473993 420052652 664041213 746092812 47349911 917452919 361002681 193648030 272303478 700560235 338312978 799588075 579757115 31615284 459617527 740882715 509144872 886149363 968755777 125829791 300892929 888699423 112390393 417074904 754133002 215792516 509144872 513440742 790270533 633573519 393120342 691982506 443960759 42657625 994587826 125829791 650036494 60750487 989729323 38338132 808614164 230662076 907095826 254203892 63192647 193648030 396138845 858127225 193515742 770594967 831241130 645094664 806792339 126695727 252792947 982416551 485063015 688577702 378961655 831467447 248642173 830619816 808838846 955501918 382904427 760370490 831241130 511330454 990121035 135975430 106790696 538810384 49614749 586370291 762749463 292149520 630238886 835339516 715957434 854969794 808614164 799588075 698320352 152866011 10369081 991073887 296751278 255644658 145885851 73848009 535533605 430284321 630629857 545538425 891279504 40656291 252962990 296305836 829983432 328462418 686884353 877167702 735710261 270237875 170941326 632402794 55018341 214244685 56927881 650697444 835198840 321628921 726620654 251188854 420636144 929504680 252962990 142903358 782533040 237389399 400178823 736624310 860708299 750563611 554242697 98287438 349644605 738612855 698320352 214244685 729868696 550336314 546141085 417074904 689757867 743614603 225771141 637769046 539035187 540976336 458290565 363976852 604881661 366854683 296751278 10475035 459452716 735696627 232177196 251042004 613596687 247234349 737945381 278160655 448881532 424594759 223299794 687988023 990121035 274113481 390793037 247234349 882804101 407510599 789617647 722768643 399037712 637939784 923715439 230662076 215052415 533455280 607760956 78649514 721769014 882364001 81337657 904771946 711532060 471393875 960543625 922706719 750978759 577970627 163229392 884059813 313272965 628523361 390275103 922858580 788118407 982353486 87392830 115090276 103219970 274113481 298050322 806664207 296751278 408395896 942899938 824770361 810021050 211958450 815123402 361435434 938080232 888699423 451521521 93478833 754133002 264750083 955730659 83066601 859168292 295606018 509019925 780870754 891279504 760231333 451551269 268759041 456137963 457149478 248642173 242530683 47349911 786380583 338312978 835339516 449022331 67700412 349644605 156817178 656191811 152866011 806744033 126695727 390793037 407510599 831241130 702364434 48746678 518384931 334211676 678884863 896029805 254203892 53195413 125204206 806792339 465759767 781242822 145559297 338631458 617908997 522332929 93478833 399037712 60750487 995876182 626932919 852755974 293192373 246058339 920628541 498045048 838331644 788118407 884072178 963141978 538025980 527595027 24188768 338929165 545538425 159828635 117931902 359859765 251188854 7807006 328462418 515426984 214244685 962073361 913521589 836376015 67700412 968670974 888699423 330274784 38338132 232177196 525347105 247822207 587469038 792846009 219054502 330274784 186285312 459617527 237389399 557710104 156817178 160287690 23973553 623206361 152866011 443960759 653201202 283321520 72820570 800460688 922706719 592970093 203331888 7807006 568104980 543865019 302151126 629101079 885549757 916956968 610447918 290474734 420052652 638790258 214244685 812044550 269911067 989729323 840075867 290474734 604968568 213097363 586446680 526944836 956815883 535533605 407091770 942866882 618542887 698320352 133739154 283321520 13112382 506919968 128702236 776835194 242028021 817743547 837690635 810021050 653201202 664041213 366854683 252962990 50241607 324986193 23262398 334211676 572588387 404152565 850386354 420636144 719307635 299994808 736624310 715957434 214650974 4519262 478351140 359714925 444897967 721769014 722768643 620243558 709613471 190323279 966683628 33511708 174140940 527595027 567774282 330205547 563678994 353964006 396743027 196460706 637939784 515426984 156817178 371179314 923927991 19715614 344876805 117210451 712346140 737945381 757850417 737945381 208625324 852107700 788737791 560623000 640925332 674446970 950497221 607760956 888699423 812414090 43970470 601740259 331638088 38304068 401452903 334932282 702364434 923715439 408395896 175060805 637769046 179981178 774489082 498045048 136384659 299994808 480361743 283321520 13112382 625664180 268759041 984047482 162062292 727827821 650990283 251367294 851400664 969494113 193648030 764116955 512614298 715957434 306258744 390275103 542382913 264297813 344876805 726950461 900796599 516175014 484158080 858798711 478351140 507016471 745200166 636434256 375066210 938456692 284588557 38085353 533864165 314069534 484158080 628820972 710224239 330205547 295606018 896029805 28363157 907721720 361435434 478892468 768561257 683621666 133739154 507016471 214650974 896029805 982353486 735710261 568104980 520071928 499057158 48746678 430101007 964902255 838655651 577673184 361435434 981996224 681765297 597784477 945394518 962073361 230662076 119279869 740882715 394791153 306258744 299994808 131323888 328764419 745200166 40131409 264750083 388085842 917452919 993091440 215981255 854243215 268759041 509370562 778074990 338929165 387176309 711532060 396050095 476912096 407510599 629101079 545538425 708094860 151364594 688177128 678884863 722013570 83066601 984047482 332834875 682170984 567343883 969494113 98287438 548964093 837690635 325554372 215981255 896072909 618542887 543945175 705304879 686335042 363976852 817743547 296305836 686884353 944068218 182214511 637769046 376974209 936312210 167276070 650990283 209497607 585165457 376448548 938140278 451551269 837690635 789617647 553191189 390793037 257214051 248642173 778074990 996943901 885549757 616796881 683406807 338929165 637939784 852107700 396050095 636434256 927806038 721769014 554222239 744008188 757815664 68748842 126695727 841210236 518384931 88335614 162062292 119279869 575023903 403519778 691982506 853903669 214650974 573449906 261683638 24089615 702364434 283321520 308142020 559957428 98824830 812414090 722768643 554242697 931013644 307060809 799588075 249820698 396050095 792822959 539381059 953267424 299113502 975478549 512614298 359859765 242530683 758889515 877088774 786320493 244528344 646710523 115509283 907721720 776820092 934824360 425392410 727245017 645094664 163229392 572588387 282751746 595030753 40131409 242530683 629101079 40448245 136412292 295366548 836376015 77819776 361002681 703514531 607041944 513440742 51457589 715779797 298050322 498840912 762749463 801623766 566554997 595030753 989729323 302151126 628820972 23973553 902464469 244528344 313272965 559014304 699230813 765027062 708094860 955501918 134971740 751925989 311808379 637769046 527595027 843005594 623206361 77819776 2575238 24188768 852107700 941586175 607965234 77819776 721769014 885549757 620243558 675472009 426814174 358401766 719601437 457149478 134971740 705548145 678474526 757815664 47349911 546679009 787269565 653201202 647733367 152866011 68748842 918225489 299994808 244528344 970320952 538025980 795472528 745200166 996943901 358401766 66490779 80485362 433921335 138393155 780061015 979740237 618355033 874124920 885141769 911302173 571019028 429277230 451521521 650990283 359859765 193648030 806744033 637939784 581831913 575023903 932715562 489612980 193515742 637657473 587179274 546679009 98231977 148087911 557710104 306607837 668964848 887794841 975478549 525347105 990121035 931013644 371179314 358401766 535533605 32075030 835198840 412979540 938456692 47290536 324129364 956815883 963141978 13112382 630238886 931086800 376974209 93651148 476912096 432089082 446968233 456956861 376448548 563678994 307060809 887794841 307060809 156817178 195019158 269911067 267829614 884072178 664041213 771321738 63192647 709613471 559957428 797746066 990121035 433686203 960543625 967417280 939725993 117931902 781246194 237389399 613596687 966683628 478892468 375066210 607041944 215977916 788118407 133739154 81553943 242028021 352092606 315747769 250885472 840130613 272303478 953882020 916956968 464130920 388085842 532803593 2379379 660765062 475344103 148087911 618355033 633587956 81337657 946916156 396632533 396743027 970911538 315747769 854243215 652018277 522332929 757850417 970320952 417074904 390793037 688534928 232177196 966683628 531135820 10475035 970911538 38844979 942899938 688534928 910818482 351424753 298050322 674485068 744008188 209789164 328764419 885549757 213097363 129724737 307403622 306607837 604881661 41538784 195733178 488295044 162904272 430284321 207844781 53525809 250749017 430088921 475344103 546679009 128450928 824770361 298050322 244528344 896029805 877167702 960796073 770594967 306597948 326469359 968670974 456956861 137529801 78649514 313272965 94279561 732559957 619842427 997329398 703514531 683621666 754580366 514768035 289736829 938705675 896571061 172894131 93651148 287768226 696443558 215052415 610834602 589760538 626833449 24089615 567774282 708046990 746992914 852107700 745200166 109054120 237389399 349644605 855636134 938080232 298727845 388085842 32075030 400218902 268759041 668964848 156817178 390275103 838655651 792822959 840130613 942866882 979740237 859168292 512614298 311808379 162062292 970911538 955501918 601740259 814295984 860708299 408395896 771803404 740340897 376448548 740882715 853170454 860477160 994587826 753419354 390275103 850386354 782533040 24188768 485509833 765027062 128450928 286037808 134801439 13112382 573480571 203331888 678474526 264750083 462394151 326469359 630238886 321628921 787269565 103733806 775682536 24188768 836376015 814295984 601740259 884072178 970911538 64420967 885000402 94279561 288072509 850386354 427184372 214650974 452156279 681765297 19911869 190979155 145885851 99294732 160287690 554222239 943235508 538025980 732559957 242028021 267829614 947413305 983113723 712346140 630238886 956815883 656191811 93478833 942866882 425392410 812044550 211958450 114409323 568104980 884952974 661321016 48746678 190929591 577673184 103733806 650036494 321628921 310726569 334299650 711455867 254203892 19715614 740340897 831241130 575895835 140725908 900116034 2379379 581063820 989729323 78649514 970911538 444897967 620243558 203331888 40131409 941586175 859168292 306258744 554242697 367026304 682170984 551289217 616796881 888699423 726620654 251042004 568142039 152243323 112390393 545538425 458363994 38338132 215289803 407091770 494336936 525347105 19911869 966131311 994587826 266213579 283321520 882364001 394791153 864016134 831241130 471393875 193515742 923927991 81337657 275349681 713146141 115090276 40131409 768561257 732245352 259646582 371179314 138393155 962073361 38844979 718980624 923927991 858798711 274113481 829983432 656623172 40131409 315747769 167276070 921198791 48746678 600441802 968755777 214650974 983373150 750563611 888259120 876263470 250749017 237389399 494336936 412979540 885141769 255644658 546141085 292696118 943235508 275202504 458290565 770993588 636434256 540976336 475344103 431406787 283321520 254203892 60017144 696443558 554242697 344620844 53195413 877088774 33511708 806664207 831380531 592639233 781242822 681930584 314069534 99294732 727245017 540976336 889608806 917452919 5299425 72820570 983113723 886917295 627110568 738612855 983113723 548748527 749497174 967417280 767839638 28363157 296751278 334299650 758889515 931086800 686335042 900796599 539035187 702364434 746394036 422532994 35128915 299113502 112090095 926044257 531135820 641635851 146573202 604968568 851829959 946916156 647733367 151364594 376974209 94279561 205387898 703514531 527595027 630201811 787269565 563678994 571019028 478351140 713146141 489612980 757709512 652018277 971549242 264750083 635302209 215774690 298050322 540394532 272303478 992001870 746394036 83066601 613596687 247234349 215289803 946612927 792822959 490344724 592970093 710224239 860708299 944068218 932715562 966683628 641231120 429277230 250885472 286037808 527595027 183440003 195019158 533455280 607965234 551289217 155241439 931086800 993091440 738855203 114409323 429277230 55018341 864016134 207442482 927806038 968670974 292696118 145885851 567774282 252962990 931640418 404152565 750563611 138442062 115509283 179991869 803588261 400218902 274113481 859168292 633587956 2575238 73848009 970320952 387176309 739696834 931086800 7807006 103733806 68748842 50241607 66490779 994877696 390793037 151364594 527595027 723661847 589760538 887794841 625664180 425392410 140725908 804406873 838803091 562773407 602832600 991073887 981996224 619842427 522332929 877088774 630629857 438183310 213097363 688534928 68748842 271484655 853903669 430284321 938705675 553191189 369306500 816971086 315343704 492009082 400178823 109369069 800460688 242028021 708046990 219054502 668964848 923927991 299994808 462762217 968755777 29069209 995876182 331638088 938080232 920721173 399037712 553368896 485063015 131323888 992169078 753419354 764459345 72820570 378961655 290117216 727578179 448262245 53195413 99294732 394791153 73848009 620243558 547547687 408032939 417074904 494336936 131323888 179991869 1926282 396138845 598543708 786320493 979740237 250885472 660095934 317751260 626932919 968670974 887794841 195733178 854902633 172382592 93478833 852604705 538025980 628820972 736237188 581831913 331638088 891279504 632402794 739696834 679463383 63192647 773781000 962073361 251188854 360743135 444897967 215289803 783513992 352092606 956286779 449022331 876868627 400178823 628523361 307060809 39220584 764116955 926045944 47349911 604968568 718980624 540394532 509664709 910850066 360743135 610447918 172894131 215977916 786320493 926045944 852755974 950673785 338929165 884072178 851829959 292972503 426814174 900796599 56927881 770864525 359714925 275349681 662972501 900116034 223299794 540394532 616057762 196106606 506919968 860377902 298050322 554222239 970911538 257214051 916956968 430101007 143200457 533864165 509370562 140129038 556619020 886149363 983373150 228290502 458290565 502849508 369306500 927806038 687055288 572588387 4519262 740882715 249820698 705304879 388085842 214244685 859168292 770864525 984050047 80485362 209497607 6720560 478892468 678884863 175060805 82689280 266583970 80485362 446968233 24188768 195733178 215774690 514768035 425392410 943793512 763431295 66490779 455539394 885353274 152523810 726950461 704431513 852755974 151506993 37275245 567343883 836376015 13112382 943235508 334299650 324129364 125829791 251367294 278160655 163229392 827311105 722013570 850386354 399037712 719307635 152314280 432089082 597784477 831467447 35128915 456956861 733642252 93651148 400218902 575895835 427184372 424594759 996943901 650990283 506919968 944068218 338929165 208625324 1736950 770993588 215289803 876263470 764459345 567774282 786320493 955501918 145885851 931966477 485063015 855636134 424974082 53226850 543865019 412979540 314069534 705548145 47349911 760231333 369306500 945394518 996943901 151506993 226492467 929504680 285947848 456956861 2076768 538025980 835198840 840075867 960796073 444897967 420636144 547547687 249820698 920721173 686884353 299113502 324986193 768561257 960543625 862177563 163229392 202477791 735710261 98824830 983373150 926045944 996943901 630775839 396138845 910850066 854243215 268759041 458156391 247006479 808614164 448262245 573449906 67831588 170941326 753419354 733642252 131323888 246058339 765027062 994587826 103669472 136412292 598426014 215289803 532803593 858040709 619842427 51457589 152243323 5299425 954227928 433921335 289736829 476912096 932584021 543945175 885995802 88335614 208625324 702745028 82689280 554242697 67831588 896029805 695599688 476912096 950673785 744008188 591292508 359859765 926045944 616057762 941586175 620243558 837690635 167276070 864016134 810021050 585165457 266583970 306607837 175060805 886149363 970911538 638516505 711532060 745200166 310726569 465697134 179981178 858127225 737945381 492009082 616796881 922858580 795472528 586446680 459617527 28363157 267829614 827311105 781246194 420052652 590918818 148087911 324986193 408395896 388085842 311613451 338312978 417074904 441621000 786380583 990121035 954227928 451551269 575895835 607760956 900116034 782533040 43970470 249670598 50241607 507016471 462762217 186244437 489130642 944573659 242186770 140551765 201717402 996943901 941586175 885647994 776352608 98231977 598426014 808614164 93478833 613596687 190929591 808838846 563678994 507016471 60750487 715957434 478351140 866337119 855636134 800460688 567948101 226492467 563678994 601740259 140129038 896072909 489130642 581831913 743614603 209497607 242028021 989729323 654830523 51457589 471393875 287239117 595030753 390793037 547547687 522663253 538025980 290474734 619842427 174862116 407091770 359859765 103669472 19715614 953882020 746394036 138393155 579757115 876868627 299994808 950673785 215052415 751925989 359714925 295606018 664041213 786380583 550322314 770864525 744008188 331638088 225771141 585165457 299994808 563678994 400218902 302151126 55108095 575023903 446968233 15037608 140551765 93651148 916956968 956815883 604181881 610834602 667313812 806664207 732559957 740882715 587179274 586370291 616796881 838655651 971549242 843005594 543945175 838655651 571019028 296305836 315343704 132556595 719601437 920628541 52243955 955501918 835212499 893019475 953267424 53226850 592970093 67831588 359714925 31215478 522663253 626833449 786320493 681765297 808614164 765027062 975478549 126695727 509019925 261683638 317751260 712346140 81337657 950673785 940381563 254203892 790270533 153196022 213097363 154538466 858040709 637657473 394791153 268759041 88335614 776820092 812414090 196106606 829983432 551289217 136412292 328462418 165821462 660095934 128450928 344876805 458290565 947413305 170941326 444897967 627110568 603931167 443960759 862254110 526944836 597206610 20148474 623398671 262406489 932584021 792846009 776820092 782533040 481894295 923715439 153196022 220576148 367026304 963141978 298727845 298050322 251042004 607965234 203331888 49948206 183440003 511277493 428572243 831241130 896571061 403519778 140129038 699230813 738855203 689757867 931086800 252962990 38338132 427184372 567948101 910818482 722768643 213097363 920721173 858040709 538025980 311808379 455539394 715957434 290117216 885000402 862177563 539035187 876263470 854243215 765027062 349076114 93478833 860708299 268759041 342116147 247841801 328764419 710224239 53195413 268759041 616796881 945394518 448881532 305990981 708046990 803588261 376448548 215977916 252962990 292696118 19911869 251188854 317751260 128188331 607760956 6720560 559957428 746092812 852604705 295606018 636434256 195957995 47349911 219054502 317751260 136384659 172894131 941586175 463496366 824770361 476912096 132556595 174862116 103669472 838803091 145559297 32954995 540394532 968670974 292149520 315297566 514650194 38085353 151364594 635302209 610447918 942899938 656623172 449022331 885549757 793291205 296305836 103219970 695599688 328764419 804406873 349644605 422532994 138442062 884072178 792822959 101231409 641231120 133739154 858040709 83066601 602832600 29069209 159828635 969294148 953267424 610447918 800460688 254203892 371179314 738612855 782533040 748408317 713146141 878442641 702745028 768561257 548964093 942999703 509019925 583924389 650036494 656623172 267829614 93478833 628820972 769327548 140725908 801623766 288873549 344876805 627110568 738612855 792846009 129724737 531333917 936312210 577673184 592639233 702745028 807117750 282751746 152243323 193515742 982353486 403519778 407629453 317751260 43970470 607965234 652018277 179981178 230662076 193515742 78649514 831241130 740340897 63192647 266213579 531333917 885995802 390275103 750563611 134801439 23973553 686335042 206036522 459452716 966683628 38304068 949084393 764116955 514650194 522663253 396050095 298050322 854902633 485063015 481894295 232177196 688534928 60017144 177689820 938080232 488295044 942866882 661321016 186244437 975337465 981996224 638516505 196460706 559014304 808614164 562773407 47529701 518384931 40131409 776820092 252962990 846351340 456137963 824770361 38304068 641635851 907721720 481894295 699230813 567343883 79509313 554222239 775682536 237389399 687055288 407091770 968755777 40448245 441621000 703490607 792846009 653201202 338312978 950673785 991615550 438183310 226492467 98824830 602832600 838655651 990121035 877167702 618355033 286037808 52243955 854902633 475344103 513440742 912948600 430284321 762749463 831467447 405444604 900116034 934824360 512614298 662972501 944068218 592970093 877167702 975478549 351424753 246221518 136384659 310726569 931640418 55018341 132556595 944573659 109369069 145885851 10475035 119279869 675472009 349644605 203331888 597784477 581063820 543945175 638516505 739696834 425392410 960796073 82689280 159828635 396806189 942866882 862177563 963141978 331638088 396632533 375066210 686335042 465759767 325554372 64420967 708053570 10475035 145885851 32075030 328764419 884072178 650036494 835339516 267829614 266213579 767187616 251188854 288873549 877167702 607965234 408395896 556619020 251042004 907721720 24188768 165821462 633587956 778123726 917452919 387703244 966683628 485509833 492009082 937158597 641635851 940381563 502849508 163229392 931966477 38304068 808866527 589760538 74587532 829983432 210621083 678474526 73848009 726950461 163769090 315343704 770864525 215052415 771321738 427184372 770993588 342116147 904771946 938456692 99294732 52243955 203331888 620243558 619842427 560623000 123073176 788118407 195957995 408032939 274113481 462394151 633573519 179991869 247221668 79523589 637939784 727245017 858127225 991615550 601630030 767187616 513440742 15903366 917795074 842970782 490344724 394791153 887794841 29473993 887794841 388085842 361435434 923715439 917795074 288873549 145559297 996943901 656623172 938705675 532803593 790270533 888699423 835198840 922706719 942866882 969294148 314069534 40448245 782533040 874124920 557710104 774489082 24089615 931086800 325554372 480361743 2379379 131323888 582273012 738612855 53966525 610834602 838803091 688577702 560327459 675472009 36265302 289736829 342116147 604968568 667844649 630775839 162904272 601630030 910818482 776352608 511277493 163769090 588034909 525347105 775682536 214244685 764116955 148087911 237172271 305990981 288072509 969294148 810021050 862177563 287768226 331638088 810021050 103669472 983373150 430284321 338312978 674485068 750978759 843005594 443960759 72820570 327773233 586370291 376974209 617908997 174862116 650990283 266583970 740882715 711455867 115509283 625664180 432089082 729868696 632402794 732245352 695599688 488788762 776820092 182214511 982353486 746394036 80485362 443960759 598543708 349644605 743614603 300892929 315747769 10369081 228290502 735710261 77819776 829614460 663971090 676975489 209789164 382210484 311613451 733642252 304621545 722013570 760231333 56927881 49317804 2379379 765027062 866337119 904771946 232177196 206036522 37275245 929504680 971549242 292696118 885141769 6720560 40131409 214650974 937158597 190979155 623206361 518384931 179981178 32806834 630629857 874124920 625664180 553191189 910818482 808866527 488788762 922706719 566554997 695599688 581831913 975337465 165821462 760231333 989729323 551289217 841780337 15037608 579757115 42657625 726620654 485153920 858798711 921198791 378961655 687988023 689757867 31215478 413592826 21190596 207844781 674485068 604181881 780870754 587179274 23262398 896072909 56154381 994587826 705304879 590918818 32806834 708053570 931640418 885141769 814662325 860708299 269911067 938705675 387176309 618355033 292696118 726950461 721418370 812414090 630775839 629101079 99294732 699733109 40448245 267829614 723661847 678474526 278160655 300892929 585165457 4519262 151364594 808838846 354807942 462394151 13112382 218611070 103733806 808614164 835339516 942899938 778074990 790270533 553368896 382210484 478351140 78775552 874124920 829614460 540394532 427184372 215977916 170941326 444897967 629101079 753419354 10369081 448262245 272303478 886917295 2076768 306258744 311808379 251042004 252962990 38844979 550322314 710224239 781242822 247221668 978947655 850386354 68748842 292696118 68748842 802009078 179991869 80415088 767187616 407629453 806744033 539381059 656191811 306258744 829983432 268759041 241184545 228290502 307403622 242186770 543945175 201717402 134801439 254203892 496698204 637769046 48746678 550336314 213097363 132556595 990121035 153196022 404152565 979740237 390793037 824770361 744008188 275202504 324129364 846351340 267829614 93478833 559957428 570764323 1736950 484158080 983373150 660765062 942899938 618542887 616796881 760231333 764116955 632014852 514768035 927806038 602832600 471393875 38085353 681765297 223299794 261683638 51457589 451817798 10369081 152243323 38304068 795549341 495854210 575023903 786320493 966683628 77685914 429277230 288873549 926044257 276676140 946612927 403519778 230662076 174862116 572588387 972710252 465697134 907095826 315747769 767187616 587469038 992169078 958668995 205387898 814295984 79509313 358401766 938080232 98824830 994587826 771321738 179991869 151364594 566125822 77819776 938456692 471393875 134971740 78649514 522663253 581063820 4519262 773781000 424974082 269911067 437743643 888699423 708094860 433686203 775682536 396806189 376974209 271484655 298050322 151506993 505061211 586370291 715957434 293192373 40131409 177689820 963141978 38844979 63192647 125204206 121069546 471393875 989729323 553368896 63192647 211958450 437743643 484158080 787269565 696443558 225858850 332834875 220576148 271484655 984047482 539381059 218611070 518384931 729868696 751925989 516175014 133739154 757709512 464130920 314069534 533455280 458156391 835339516 902464469 645094664 109054120 994877696 566554997 131323888 137529801 760231333 841780337 929504680 282751746 56154381 4519262 885549757 311808379 681765297 174335822 261683638 498045048 746992914 306597948 163769090 172894131 597206610 47529701 703514531 744008188 949084393 282751746 247221668 342116147 545538425 285947848 750563611 443960759 125204206 597784477 72820570 175507355 334299650 397928982 640925332 629101079 407510599 851829959 626932919 459617527 186285312 758889515 719307635 145885851 31215478 635302209 860477160 179991869 444897967 546141085 72820570 969494113 151364594 207844781 958668995 251367294 278160655 831380531 645094664 400218902 877167702 478892468 23262398 282751746 922706719 722013570 946916156 250749017 28363157 960543625 740340897 24089615 308142020 112090095 876868627 376974209 125204206 424974082 595030753 975478549 151506993 330205547 512614298 632378665 465697134 978947655 396806189 969494113 401452903 630238886 814295984 907095826 215977916 213097363 808866527 485262404 538025980 456137963 332834875 938080232 438183310 968755777 103669472 559957428 771321738 566554997 946916156 223299794 738612855 984047482 490344724 556619020 858127225 686335042 638516505 437743643 663670886 378961655 929504680 860708299 771321738 247822207 268759041 888259120 242186770 739696834 80415088 359714925 850386354 719601437 432089082 511277493 464130920 667844649 922706719 353964006 214650974 650036494 407629453 338929165 971894015 170941326 750563611 708053570 923927991 620243558 660765062 390275103 797746066 781242822 292696118 788118407 591292508 496698204 424594759 19911869 74587532 424974082 650990283 190323279 740882715 48746678 539957336 667313812 136384659 962430008 931966477 808838846 53226850 353964006 809429735 616057762 854969794 47529701 550336314 359714925 152618584 437743643 186285312 424974082 738855203 175060805 490344724 641231120 740340897 795472528 299113502 172894131 754580366 965948435 799588075 47529701 808866527 687055288 814295984 560327459 900796599 557710104 816971086 851759377 31615284 393120342 703514531 960796073 568104980 311808379 681930584 160287690 628523361 397928982 206036522 19911869 630775839 601740259 688577702 267829614 295606018 140725908 877167702 109054120 768561257 272303478 464130920 494336936 181668423 174862116 328462418 250749017 215981255 388085842 969294148 557710104 632402794 708094860 696443558 250832323 954677909 902464469 802009078 635302209 478351140 932715562 840130613 352092606 23973553 193515742 991073887 68748842 269911067 754133002 407629453 459617527 315747769 159828635 266213579 498045048 514650194 866568903 597206610 994587826 585165457 841780337 396050095 902464469 653201202 953267424 275349681 889608806 511330454 112390393 956286779 317751260 618542887 296751278 688534928 207442482 751925989 699733109 251042004 478892468 295606018 939725993 770864525 307060809 299113502 806744033 72820570 888259120 67831588 114409323 183440003 446968233 550336314 646710523 640849273 399037712 801623766 458290565 286037808 841210236 683406807 327773233 49317804 800460688 215774690 749497174 886917295 601740259 806664207 330205547 228290502 829983432 645094664 800460688 103669472 588034909 433686203 918521256 181668423 182214511 918225489 511277493 129724737 446968233 917452919 449022331 942999703 613596687 518384931 960543625 234980621 10369081 773781000 53195413 302151126 458290565 926045944 993091440 462762217 298050322 918225489 726620654 753419354 718980624 808866527 310726569 511330454 778123726 209789164 761330904 691982506 607965234 109369069 507016471 778074990 314069534 991073887 376974209 586370291 509019925 214650974 175507355 774489082 324986193 911302173 577673184 885549757 437743643 430088921 604881661 298727845 647733367 840075867 526944836 911302173 213097363 230662076 806744033 950673785 858798711 851400664 352092606 237389399 488788762 923927991 27735709 854969794 32954995 628523361 607041944 770993588 764459345 992001870 53195413 93478833 938456692 922706719 334211676 743614603 800460688 457149478 246221518 683406807 225858850 653201202 937158597 203331888 420636144 140129038 195019158 286037808 762749463 242530683 991615550 132556595 885647994 801623766 330205547 152523810 556619020 219054502 912948600 878442641 960543625 854902633 114409323 637657473 955730659 354807942 984047482 123073176 702745028 632402794 590918818 637939784 27735709 931086800 136412292 490344724 858798711 551289217 601740259 148087911 962430008 840075867 195019158 131323888 462394151 32806834 10369081 806664207 424974082 953882020 516175014 489130642 237172271 125829791 7807006 527654256 969494113 554222239 338929165 877167702 464444922 911302173 79509313 577970627 252792947 163769090 636434256 539381059 79523589 802009078 969494113 854969794 296751278 799588075 334211676 547547687 506919968 770993588 916956968 878442641 190323279 219054502 117210451 201717402 459617527 600441802 215052415 653201202 694954883 801623766 296751278 700560235 250885472 431406787 433921335 202477791 686884353 13112382 103219970 142903358 119279869 662421393 452156279 424594759 778123726 946916156 37275245 754580366 167276070 633587956 29473993 679463383 299994808 305990981 514768035 38338132 721769014 177689820 887548285 799588075 687055288 23973553 387703244 431406787 327773233 457149478 726620654 971894015 327773233 15037608 324986193 587469038 24089615 332834875 687055288 958668995 808614164 900796599 140725908 945394518 852107700 831467447 276676140 430088921 715957434 662421393 299994808 430088921 40131409 618542887 613596687 956815883 579757115 575023903 433921335 215774690 851759377 597206610 829983432 38338132 587179274 746992914 708053570 195957995 2575238 177689820 912948600 688534928 732559957 38844979 970320952 206036522 697742034 219054502 112090095 367026304 403519778 295606018 19715614 966131311 543865019 683406807 49614749 40448245 248642173 922706719 66490779 41538784 353964006 572588387 310726569 140129038 225858850 617908997 750978759 554222239 787269565 854902633 376448548 162062292 874297853 681765297 888259120 455539394 789617647 591292508 63192647 949084393 498045048 259646582 134971740 215977916 942899938 72820570 162904272 429277230 907721720 750563611 7807006 202477791 572465104 215977916 853170454 843005594 287768226 266213579 241184545 132556595 509664709 969294148 264297813 709613471 143200457 840130613 788118407 525347105 630977998 705304879 33511708 877167702 130160246 455539394 722013570 247234349 953267424 864016134 175060805 915330573 721769014 151364594 330205547 991073887 195733178 653201202 249820698 597206610 296751278 783513992 298050322 344620844 527595027 74587532 758889515 840130613 579757115 305990981 729868696 927806038 165821462 854902633 907095826 268759041 299994808 913521589 539035187 702364434 328764419 804406873 134971740 444897967 699733109 47290536 885141769 886917295 299994808 125829791 361002681 21190596 250885472 949084393 60017144 77819776 437743643 311613451 764459345 125829791 702745028 292972503 29473993 991073887 539035187 502849508 762749463 910850066 942899938 982370833 170938835 736237188 831241130 193648030 315343704 740882715 225771141 117931902 674446970 770594967 689757867 915330573 646710523 148087911 476912096 305068796 19911869 581063820 841210236 886917295 687055288 640925332 970320952 702364434 727578179 650697444 252792947 911302173 630977998 344620844 636434256 115090276 953267424 740340897 625664180 632402794 790270533 247006479 136412292 195957995 560623000 527654256 942866882 261683638 262406489 838331644 172894131 358401766 515426984 750563611 650036494 264408147 252962990 289736829 433921335 587469038 288873549 801623766 687055288 540394532 800460688 73848009 103219970 538025980 349644605 808866527 51457589 601630030 678474526 590208882 448881532 247841801 2379379 598543708 390793037 103733806 938705675 604968568 984047482 771321738 195733178 678884863 78775552 941586175 63192647 687988023 713146141 877088774 589760538 547547687 382210484 918225489 778123726 628523361 566554997 617908997 674446970 876868627 662972501 809429735 175507355 575023903 938080232 626833449 938080232 587469038 629101079 183440003 889608806 303230482 604881661 98824830 520071928 344876805 628820972 740882715 815123402 715779797 476912096 585165457 630629857 67831588 889608806 788737791 931005739 428572243 778123726 567774282 317751260 570764323 953267424 481894295 475344103 503666498 441621000 926044257 167276070 587469038 225771141 498840912 81553943 893019475 786320493 806664207 288873549 931013644 29473993 550336314 623206361 799588075 338929165 888553258 667844649 242028021 396632533 568104980 939725993 695599688 979750308 638516505 393120342 591292508 288873549 214244685 995876182 931013644 146573202 38844979 81553943 797746066 399037712 926044257 754133002 619842427 993091440 770864525 136412292 678884863 968755777 814662325 250885472 632014852 248642173 387176309 531135820 41538784 702745028 462762217 992169078 295606018 713146141 876263470 382904427 598543708 314069534 738612855 52243955 206036522 464444922 663971090 829983432 430101007 516175014 255644658 983113723 751925989 715957434 152866011 33511708 511330454 247822207 247841801 932715562 753419354 943793512 354807942 52243955 103733806 735891721 809429735 983373150 244528344 872434540 305068796 727827821 430284321 981996224 361435434 310726569 604968568 152314280 632014852 942899938 128188331 369306500 769327548 592981604 910850066 488788762 738612855 315297566 603931167 313272965 956286779 689757867 750563611 571019028 10475035 213097363 783513992 387703244 306258744 338631458 583924389 506178629 152243323 209497607 72820570 841780337 807117750 35128915 575895835 812044550 858127225 246058339 254203892 349644605 763431295 790270533 489130642 516175014 210621083 718980624 431406787 337153847 554222239 182214511 851400664 170938835 366854683 697742034 299113502 32954995 123073176 744008188 499057158 400178823 296305836 299994808 431406787 842970782 115090276 866568903 884059813 859168292 806664207 718980624 230662076 708046990 32806834 979750308 969294148 299994808 115090276 225771141 546679009 729868696 757850417 781246194 774489082 134971740 653201202 749497174 938140278 134801439 457149478 829614460 269911067 526944836 604968568 32954995 618542887 940381563 215774690 478892468 125829791 195733178 695599688 587179274 940188502 272303478 38338132 330205547 545538425 842970782 931013644 708094860 42657625 793291205 770993588 299994808 247841801 683621666 152243323 162904272 950497221 938080232 422532994 732245352 156817178 808614164 979740237 175060805 854902633 535533605 128188331 934824360 860377902 349076114 417074904 943793512 854969794 775682536 429277230 155241439 401452903 247822207 363976852 708053570 430088921 66490779 202477791 607041944 660765062 264297813 228290502 792846009 31615284 38304068 308142020 851829959 661321016 79523589 715779797 838803091 947413305 170938835 23262398 376448548 628523361 485509833 715779797 808614164 773781000 754133002 125204206 726950461 129724737 485262404 641635851 223299794 824770361 324986193 927806038 282751746 80415088 761330904 289736829 252792947 32806834 997329398 424594759 7807006 838655651 888259120 209789164 739696834 719307635 573449906 181668423 750750593 971894015 850484222 982416551 581831913 685702028 963141978 660095934 682170984 154538466 613596687 354807942 33511708 444897967 582273012 401452903 754133002 247006479 636434256 610447918 283321520 53525809 978947655 592639233 556619020 602396426 175507355 202477791 613596687 31215478 324986193 877088774 306597948 407091770 683621666 598426014 378961655 41538784 853903669 40656291 559957428 595030753 112390393 93478833 79509313 432089082 806792339 738612855 955730659 862254110 215052415 585165457 697742034 101231409 393120342 190929591 573480571 125204206 382904427 6720560 324986193 946612927 817743547 548748527 315297566 49317804 187104147 802009078 625664180 587469038 732559957 575895835 288873549 32806834 546141085 858127225 698320352 926044257 451551269 15037608 33511708 640925332 526944836 430284321 627110568 954227928 47529701 884072178 315297566 838655651 764116955 367026304 2575238 753419354 938705675 595030753 403519778 604968568 686335042 156817178 264297813 969294148 315343704 126695727 708053570 838655651 953267424 38338132 972710252 637939784 400218902 305068796 130160246 511330454 667844649 628523361 664041213 202477791 98231977 432089082 944573659 31615284 246058339 661321016 970320952 518384931 722013570 911302173 232177196 181668423 754133002 289736829 782533040 215981255 66490779 840075867 872434540 931640418 143200457 862177563 20148474 152866011 47349911 743614603 262406489 41538784 601740259 315747769 55018341 814295984 134971740 64420967 186244437 498840912 556619020 940188502 349644605 900116034 968755777 502849508 55108095 860377902 19715614 617908997 403519778 814295984 687055288 174140940 37275245 650697444 964902255 162062292 592970093 296305836 498045048 982416551 187104147 99294732 458363994 904771946 250885472 432089082 495854210 292972503 775682536 433686203 782533040 344620844 630238886 428572243 721769014 545538425 170938835 740340897 252792947 366854683 727827821 275349681 19715614 430088921 831241130 284588557 902464469 601630030 307060809 132556595 446968233 911302173 793291205 408395896 264100442 808866527 246058339 540394532 19715614 247006479 299462930 770594967 891279504 43970470 607760956 918225489 722013570 152243323 37275245 653201202 174335822 545538425 577673184 806664207 485509833 645094664 209497607 247221668 850484222 806664207 462394151 154538466 399037712 41538784 399037712 293192373 36265302 485153920 792822959 679463383 858040709 633587956 488788762 103669472 1736950 920628541 938705675 920721173 19715614 74587532 109054120 138393155 10369081 878442641 630238886 795549341 511277493 663670886 288873549 862254110 678474526 490344724 81337657 809429735 55108095 425392410 592981604 334299650 48746678 585165457 79509313 511330454 708094860 559014304 511277493 498840912 424974082 331638088 130160246 750563611 960796073 617908997 531333917 358401766 836376015 28363157 573480571 804406873 130160246 547547687 511277493 177689820 317751260 804406873 722013570 780870754 618355033 553368896 944573659 430284321 559957428 653201202 522663253 133739154 960543625 438183310 566125822 38338132 592981604 938140278 874297853 115090276 970911538 190979155 349644605 303230482 174862116 162062292 106790696 417074904 896072909 38338132 568142039 407091770 507016471 735696627 859168292 230662076 722013570 709613471 616796881 804406873 632378665 234980621 159828635 73848009 761330904 214244685 330274784 296305836 226492467 29069209 252792947 60750487 47349911 971894015 315297566 619842427 984050047 417074904 907095826 931013644 175060805 548748527 996943901 838331644 458363994 632402794 808838846 874124920 56927881 264408147 24089615 703514531 885000402 591292508 780061015 945394518 78775552 876868627 437743643 923927991 196460706 465697134 888259120 940188502 764116955 736237188 315297566 572588387 630629857 843005594 40131409 429277230 405444604 375066210 79523589 546679009 808838846 151506993 632378665 776352608 140551765 247234349 458156391 610834602 970320952 922706719 359859765 854969794 353964006 586446680 851759377 539381059 884952974 703514531 33511708 681765297 931005739 251042004 155241439 975337465 196460706 201717402 376448548 456956861 737945381 125829791 990121035 103733806 390793037 804406873 667844649 610447918 130160246 838655651 388085842 637769046 511277493 553191189 459452716 771321738 396138845 109369069 853170454 284588557 249820698 151364594 32954995 131323888 788118407 786380583 232177196 592639233 10369081 835339516 708053570 23973553 866337119 653201202 708094860 407510599 446968233 292696118 735710261 760231333 793291205 103669472 841210236 387176309 522332929 954677909 850484222 954227928 246221518 982416551 587179274 156817178 338631458 969294148 646710523 366854683 459452716 626833449 764459345 778074990 688177128 703514531 337153847 247234349 632378665 261683638 891279504 807117750 446968233 911302173 983373150 53525809 854243215 219054502 722013570 503666498 647733367 292972503 66490779 920628541 782533040 610447918 137529801 921198791 994587826 862177563 546141085 78649514 114409323 838331644 638790258 448262245 143200457 542382913 300892929 412979540 573480571 533864165 446968233 513440742 953267424 786380583 866337119 298727845 858040709 709613471 587179274 422532994 195019158 637939784 47349911 32806834 683621666 814295984 37275245 43970470 215289803 152866011 620243558 47290536 556619020 770594967 87392830 358401766 831241130 610834602 27735709 703514531 732245352 518384931 264297813 28363157 505061211 195957995 296751278 700560235 870201182 455539394 744008188 533455280 160287690 94279561 20148474 152618584 786320493 703514531 378961655 876263470 683621666 148087911 330274784 802009078 963141978 679463383 522663253 885995802 715957434 499057158 246221518 917795074 327773233 49317804 587179274 396050095 81553943 801623766 388085842 931966477 630629857 586446680 195019158 237389399 396138845 967417280 989729323 681765297 996943901 802009078 288873549 1926282 726950461 703490607 939725993 854902633 592981604 773781000 400178823 765027062 451551269 954677909 858040709 955501918 968670974 247221668 19911869 407629453 579757115 306607837 146573202 275202504 841780337 202477791 35128915 305068796 872434540 953882020 437743643 275349681 53966525 926044257 250749017 945394518 850484222 904771946 572465104 778074990 225771141 242186770 708053570 289736829 732559957 98287438 247822207 499057158 548964093 532803593 749497174 351424753 376448548 247841801 288072509 73848009 887548285 654830523 581831913 910850066 464444922 858127225 462394151 975337465 475344103 152523810 550322314 289736829 667844649 601630030 613596687 438183310 251367294 650697444 246058339 675472009 646710523 637769046 852755974 412979540 571019028 305990981 396138845 289918211 314069534 257214051 179981178 876868627 495854210 623398671 51457589 885549757 983113723 753419354 310726569 567948101 349644605 888699423 550322314 838655651 272303478 264408147 618355033 679463383 509664709 264750083 942899938 715779797 971549242 915330573 353964006 117931902 932715562 807117750 667844649 438183310 495854210 994877696 960796073 344620844 225771141 585165457 535533605 911302173 726620654 874124920 613596687 334299650 51457589 633587956 870201182 757815664 249820698 763431295 287239117 824770361 841210236 74587532 984047482 247234349 902464469 893019475 722013570 13112382 476912096 289918211 852604705 138393155 972710252 710224239 288072509 586446680 960796073 433686203 835198840 533455280 592970093 214244685 514768035 840075867 250832323 660095934 307403622 401452903 314069534 860377902 829983432 53525809 464444922 527654256 607965234 675472009 506919968 251042004 965948435 23262398 427184372 203331888 338631458 135975430 441621000 80415088 726620654 915330573 616796881 944068218 944573659 518384931 719601437 430088921 607041944 877167702 592970093 687988023 5299425 799588075 764116955 740340897 944573659 547547687 625664180 247841801 4519262 308142020 953267424 268759041 29473993 966683628 983113723 942999703 942899938 80485362 205387898 788737791 283321520 296305836 708046990 663971090 535533605 129724737 330205547 438183310 624819674 67831588 388085842 367026304 369306500 956286779 390793037 42657625 711532060 913521589 458290565 966683628 842970782 884072178 910818482 600441802 507016471 268759041 207844781 202477791 891279504 801623766 49614749 840130613 853903669 117931902 943793512 938140278 836376015 931966477 249820698 539381059 88335614 854902633 226492467 950497221 573449906 797746066 7807006 610834602 485063015 538025980 735891721 295606018 446968233 257214051 7807006 154538466 836376015 795549341 885353274 322974842 943235508 485153920 179981178 311613451 841210236 600441802 515426984 837690635 831241130 546679009 324129364 803588261 390793037 24188768 975478549 237389399 994587826 858127225 458156391 201717402 225771141 854902633 288072509 623398671 758889515 234980621 577673184 299113502 994587826 215981255 2076768 80485362 812414090 321628921 37275245 840075867 668964848 803588261 162904272 854969794 683621666 484158080 939725993 770993588 872434540 971894015 387703244 971894015 581831913 430284321 699733109 774489082 205387898 586370291 885647994 32806834 36055646 306258744 140551765 103733806 413592826 567343883 250832323 893019475 342116147 542382913 338312978 854902633 944573659 838331644 604181881 278160655 264100442 538025980 267829614 575023903 249820698 490344724 676975489 429277230 459617527 417074904 287239117 228290502 781246194 846351340 98231977 878442641 60017144 857535330 934824360 163769090 252792947 29069209 162904272 295366548 443960759 640925332 602832600 950673785 944573659 553191189 48746678 932584021 699230813 321628921 993091440 704431513 630238886 920628541 817743547 913521589 566125822 32806834 393120342 776352608 548964093 304621545 405444604 77819776 543865019 840075867 970320952 148087911 498045048 603931167 767187616 786380583 975478549 920628541 505061211 266213579 996943901 864016134 604181881 944068218 36055646 109369069 757709512 804406873 668964848 40448245 160287690 830619816 220576148 876868627 727578179 786380583 51457589 835339516 962430008 572588387 288072509 705548145 451521521 877088774 79523589 586446680 179981178 518384931 225858850 911302173 376974209 575895835 494336936 917452919 964902255 807117750 51457589 131323888 134971740 595030753 464444922 617908997 667844649 132556595 162904272 514650194 664041213 109369069 174335822 877088774 795472528 765027062 983373150 292972503 851759377 28363157 15903366 242186770 587179274 877088774 2575238 43970470 249820698 93478833 511277493 554222239 463496366 696443558 535533605 604968568 577673184 153196022 554242697 688577702 485509833 533455280 570796148 117931902 134971740 503666498 571019028 242028021 283321520 617908997 19911869 13112382 179981178 396743027 938705675 979740237 117210451 994877696 989729323 321628921 190323279 979740237 338312978 93651148 618355033 663971090 860708299 958668995 288873549 47290536 656191811 162062292 252792947 722768643 632378665 278160655 638790258 422532994 687055288 553368896 371179314 778074990 560623000 877088774 51457589 465759767 940381563 203331888 604881661 807117750 983113723 806664207 88335614 60750487 359714925 941586175 577673184 462762217 932715562 652018277 896029805 247841801 983373150 115509283 984047482 864016134 179981178 936312210 750750593 660095934 390793037 148087911 300892929 275349681 522663253 513440742 337153847 547547687 713146141 74587532 557710104 512614298 781246194 862254110 708094860 687988023 485063015 367026304 382904427 877167702 788118407 876263470 601740259 994877696 287239117 321628921 560327459 322974842 727245017 484158080 726950461 21190596 604881661 503666498 616796881 554222239 592981604 152866011 628820972 770864525 570796148 662421393 711455867 551289217 167276070 24188768 248642173 247841801 789617647 595030753 327773233 887794841 49614749 633587956 213097363 736237188 382210484 610447918 160287690 489612980 140725908 532803593 413592826 953882020 592970093 663971090 328764419 770864525 179991869 721418370 338929165 736237188 984047482 918225489 737945381 585165457 186244437 50241607 607041944 837690635 272303478 703490607 252792947 917795074 616057762 211958450 992169078 877167702 134801439 259646582 970911538 992001870 5299425 24188768 727827821 562773407 983113723 920721173 543865019 298727845 727245017 219054502 983113723 860477160 456137963 264750083 682170984 712346140 170941326 568104980 882804101 98287438 160287690 946916156 527595027 420052652 548964093 451817798 991615550 462762217 678474526 770864525 829614460 954677909 300892929 738855203 408032939 941586175 68748842 641635851 396937914 884072178 165821462 181668423 2575238 214244685 641231120 548748527 829983432 289736829 969494113 407091770 175507355 910850066 632378665 947413305 360743135 41538784 616057762 920721173 674446970 546679009 882804101 809429735 382210484 803588261 306597948 950497221 566125822 600441802 620243558 511330454 56927881 396743027 451521521 992001870 907095826 838655651 117210451 156817178 829983432 637939784 737945381 98824830 112390393 292696118 10369081 244528344 960543625 270237875 485262404 585165457 478892468 334299650 172894131 444897967 175060805 109369069 887548285 286037808 531333917 13112382 337153847 940188502 424974082 904771946 699230813 691982506 630977998 126695727 647733367 626833449 687055288 321628921 568142039 884072178 507016471 428572243 267829614 128702236 613596687 396743027 983113723 261683638 68748842 650990283 940381563 922706719 764116955 568104980 727578179 73848009 299994808 830619816 674446970 334299650 288873549 430088921 451551269 499057158 972710252 745200166 577673184 422532994 971549242 444897967 190323279 251042004 353964006 795549341 858040709 650697444 853170454 563678994 48746678 592639233 960543625 82689280 223299794 975337465 19715614 209789164 885000402 563678994 109054120 518384931 852107700 344620844 559957428 142903358 699733109 455539394 288873549 738612855 812414090 214244685 787269565 196106606 136412292 938140278 511277493 195957995 852107700 401452903 170941326 53525809 15903366 488295044 577673184 864016134 744008188 542382913 885647994 230662076 702745028 83066601 757709512 877088774 399037712 931966477 404152565 203331888 405444604 626932919 829614460 637769046 267829614 683406807 394791153 344876805 155241439 577970627 592981604 854902633 850484222 904771946 870201182 540976336 179991869 765027062 424974082 675472009 757709512 293192373 550322314 228290502 997329398 687988023 53195413 67831588 931005739 830619816 940381563 770864525 607760956 991073887 885000402 754580366 7807006 760231333 729868696 292149520 771803404 444897967 342116147 854902633 24089615 768561257 63192647 292149520 934824360 40656291 40131409 982416551 997329398 29069209 53195413 954677909 106790696 704431513 459452716 746092812 885000402 465759767 288072509 53226850 400178823 478351140 934824360 660095934 400218902 922706719 918521256 851400664 2076768 650990283 650036494 298727845 808838846 618542887 687055288 128702236 527595027 855636134 288873549 915330573 488788762 266213579 646710523 153196022 835212499 455539394 858040709 247234349 103219970 559014304 970320952 946612927 557710104 768561257 554242697 498840912 119279869 911302173 464444922 838655651 213097363 904771946 163229392 428572243 647733367 215977916 167276070 201717402 727578179 808866527 360743135 269911067 427184372 768561257 968755777 306607837 983373150 154538466 387703244 527654256 711455867 858127225 688177128 257214051 290474734 628523361 711455867 203331888 778123726 929504680 560623000 769327548 582273012 145559297 836376015 303230482 955730659 215977916 288072509 738855203 550322314 545538425 163229392 809429735 787269565 129724737 735891721 259646582 718980624 754580366 887548285 936312210 182214511 753419354 15903366 190979155 172894131 754580366 2575238 886149363 571019028 678884863 182214511 687988023 943793512 80485362 888259120 344620844 662972501 247234349 688177128 31215478 330274784 255644658 359859765 681930584 376448548 809429735 729868696 722768643 443960759 328462418 835198840 38844979 560623000 630201811 223299794 877167702 727827821 592639233 382904427 583924389 762749463 878442641 806792339 305990981 526944836 632402794 396632533 947413305 531135820 430101007 459452716 559014304 388085842 586370291 607760956 570764323 938080232 533864165 522332929 193648030 590918818 289736829 98231977 992001870 506919968 628523361 299462930 700560235 858798711 266213579 68748842 247006479 476912096 773781000 636434256 876263470 757709512 598543708 852604705 954227928 781242822 43970470 49948206 887794841 764116955 304621545 938456692 623398671 711532060 136384659 509370562 705304879 808838846 628523361 19715614 284588557 48746678 936312210 979750308 915330573 882804101 295606018 989729323 334299650 170938835 862177563 630977998 540976336 960796073 433686203 522663253 679463383 114409323 23262398 103219970 969294148 420636144 577970627 993091440 503666498 800460688 932584021 193515742 299113502 970911538 597206610 325554372 275349681 776835194 610834602 451551269 289736829 859168292 131323888 507016471 67831588 1736950 950497221 193515742 396806189 699230813 129724737 573480571 305990981 860708299 650990283 451521521 710224239 732559957 433686203 975478549 710224239 676975489 663670886 702745028 797746066 397928982 904771946 625664180 851400664 698320352 830619816 485063015 936312210 907721720 269911067 250885472 24188768 511277493 877088774 972710252 628523361 938080232 632014852 744008188 893019475 543945175 153196022 209497607 31215478 53966525 864016134 991615550 302151126 5299425 109369069 55108095 98287438 568142039 721418370 522663253 846351340 568142039 900796599 187104147 135975430 711455867 485153920 288072509 803588261 88335614 854969794 287768226 915330573 452156279 209789164 907095826 715779797 175507355 824770361 400218902 24188768 38085353 72820570 646710523 567948101 854243215 630775839 925555858 344876805 896072909 814662325 962073361 308142020 588034909 396050095 851829959 941586175 10369081 264408147 33511708 215792516 315343704 600441802 451521521 430101007 87392830 681930584 592970093 946916156 727578179 83066601 226492467 289736829 838803091 757850417 464444922 135975430 360743135 304621545 630977998 514650194 854243215 992001870 38304068 183440003 334932282 498840912 793291205 43970470 678474526 799588075 209497607 151506993 299462930 303230482 870201182 417074904 205387898 958668995 629101079 31215478 520071928 31215478 53195413 432089082 458156391 396806189 324986193 244528344 964902255 153196022 249670598 210621083 353964006 950673785 456137963 38338132 307060809 602396426 334932282 136384659 667844649 597206610 287768226 604968568 505061211 600441802 475344103 251188854 514768035 438183310 338631458 876868627 408032939 955501918 264297813 864016134 581831913 99294732 162904272 581063820 114409323 492009082 388085842 652018277 910818482 247006479 462394151 540394532 686335042 93651148 866568903 662421393 134971740 595030753 68748842 876263470 962430008 723661847 968670974 401452903 361002681 626833449 361002681 950673785 459617527 251042004 420636144 738612855 215052415 597206610 4519262 484158080 708094860 214244685 983113723 600441802 249670598 366854683 400218902 196106606 437743643 438183310 314069534 303230482 641231120 857535330 290474734 913521589 996943901 947413305 378961655 156817178 852107700 884059813 997329398 499057158 114409323 234980621 733642252 946612927 396138845 688577702 167276070 152523810 630629857 910850066 35128915 547547687 29473993 396050095 246058339 299113502 918521256 10475035 764459345 696443558 376974209 562773407 5299425 702364434 787269565 83066601 582273012 809429735 193515742 456956861 327773233 705304879 972710252 247841801 713146141 101231409 559957428 451817798 394791153 854969794 944573659 917795074 686335042 992001870 726950461 266213579 33511708 888699423 577673184 148087911 938456692 247841801 516175014 211958450 307060809 10475035 172382592 940188502 459617527 247221668 81337657 438183310 727245017 499057158 327773233 77819776 170938835 633573519 792846009 242186770 458363994 67700412 441621000 632014852 5299425 67700412 607760956 910850066 441621000 860377902 314069534 429277230 888259120 931086800 506919968 941586175 459452716 247221668 630238886 947413305 981996224 21190596 923715439 190979155 965948435 444897967 602832600 128188331 485063015 115090276 939725993 575023903 155241439 640849273 572465104 186285312 972710252 760370490 325554372 748408317 592981604 650990283 776835194 575023903 424974082 430284321 220576148 696443558 250749017 774489082 162904272 351424753 630238886 228290502 581831913 67831588 98231977 41538784 458363994 73848009 781246194 598543708 324129364 738612855 172382592 396743027 667313812 542382913 276676140 882364001 597784477 816971086 249820698 109369069 522663253 776352608 207442482 190929591 220576148 326469359 314069534 499057158 656191811 712346140 36055646 838331644 983373150 264750083 937158597 540976336 349076114 904771946 884952974 854902633 313272965 617908997 37275245 513440742 535533605 542382913 252792947 967417280 560623000 24188768 459452716 457149478 964902255 269911067 940381563 163769090 175060805 807117750 433921335 860377902 527595027 602396426 327773233 38844979 635302209 950673785 750978759 98287438 47349911 966131311 604881661 271484655 775682536 401452903 266583970 946916156 850484222 247221668 885000402 802009078 587179274 637769046 170941326 918225489 674446970 757815664 859168292 830619816 559957428 471393875 36055646 533864165 264297813 396050095 175507355 738612855 287768226 251042004 912948600 958668995 452156279 926044257 647733367 900796599 376448548 745200166 971549242 32075030 225771141 41538784 476912096 691982506 907095826 77819776 934824360 757850417 361002681 923927991 40131409 674485068 872434540 367026304 995876182 152243323 250832323 885549757 20148474 215774690 630629857 945394518 311808379 944068218 726950461 331638088 36055646 303230482 522332929 603931167 29473993 367026304 550322314 251042004 589760538 562773407 943235508 950673785 702745028 230662076 539035187 142903358 686335042 581063820 981996224 242028021 866337119 366854683 287239117 206036522 942899938 514650194 776835194 910850066 338312978 351424753 618355033 922858580 604181881 887794841 324129364 877167702 589760538 31615284 478892468 271484655 896072909 650697444 390275103 538025980 831380531 67700412 378961655 630775839 646710523 15037608 408032939 13112382 60017144 38338132 579757115 887794841 60017144 451817798 793291205 177689820 37275245 886149363 543945175 125829791 764459345 56154381 616796881 478351140 697742034 261683638 548964093 652018277 182214511 570764323 476912096 921198791 689757867 799588075 602832600 464130920 459452716 201717402 155241439 900116034 394791153 944068218 931005739 295606018 727578179 306258744 256866745 947413305 509019925 53226850 66490779 43970470 885353274 715779797 965948435 202477791 515426984 53226850 888259120 598426014 910818482 289736829 215052415 896571061 287239117 835339516 625664180 255644658 290474734 637939784 994587826 462762217 991615550 597206610 349076114 425392410 587179274 215981255 852107700 462762217 836376015 109369069 682170984 518384931 2575238 366854683 53966525 304621545 842970782 864016134 996943901 480361743 638790258 949084393 573449906 760370490 853903669 954677909 942899938 214244685 267829614 953882020 170941326 540976336 623206361 125829791 162904272 417074904 646710523 115090276 209497607 586446680 735891721 768561257 464444922 786380583 630977998 705548145 103219970 795549341 607965234 860377902 505061211 884072178 360743135 123073176 546141085 757815664 2575238 921198791 620243558 931966477 570796148 656623172 520071928 618542887 47349911 917795074 424974082 603931167 775682536 375066210 112390393 570764323 597784477 203331888 112090095 915330573 582273012 49317804 808838846 854969794 400178823 942999703 458363994 428572243 290474734 401452903 907095826 401452903 53966525 719307635 109054120 745200166 729868696 532803593 762749463 754580366 324986193 991073887 775682536 15037608 744008188 738855203 942866882 292149520 488788762 82689280 220576148 489130642 24089615 539381059 249670598 465697134 979750308 678884863 992169078 562773407 810021050 610447918 573449906 797746066 36055646 210621083 88335614 156817178 787269565 103733806 699733109 722768643 573449906 1926282 667844649 915330573 165821462 278160655 36055646 567948101 694954883 193648030 870201182 215792516 352092606 804406873 836376015 247234349 424974082 966131311 252962990 663670886 458363994 577970627 526944836 618542887 516175014 539381059 195733178 47290536 393120342 60750487 629101079 214650974 399037712 567343883 338312978 215774690 449022331 290117216 506178629 887794841 627110568 268759041 627110568 971894015 249820698 663670886 382904427 183440003 636434256 152523810 2575238 681930584 910818482 638516505 223299794 298727845 246221518 264750083 330274784 862254110 51457589 315747769 103219970 186285312 918521256 969294148 175507355 228290502 938705675 432089082 4519262 480361743 325554372 268759041 969494113 242530683 808838846 412979540 55018341 354807942 858798711 93651148 55108095 931013644 991615550 94279561 560623000 618542887 330205547 931013644 963141978 43970470 159828635 488295044 462394151 484158080 806744033 432089082 841780337 947413305 103219970 770594967 159828635 931640418 378961655 266213579 699733109 162062292 342116147 950673785 388085842 215774690 931005739 712346140 573449906 464130920 719601437 80485362 296751278 904771946 735710261 770594967 485063015 757815664 251367294 592639233 307403622 247234349 981996224 896571061 241184545 757815664 984050047 885995802 369306500 354807942 874297853 604968568 459452716 202477791 458290565 610834602 165821462 753419354 232177196 994877696 87392830 590208882 140551765 93651148 851759377 462762217 325554372 885549757 795472528 490344724 485063015 626932919 780061015 661321016 647733367 715779797 249820698 542382913 190323279 691982506 727245017 270237875 918521256 586370291 934824360 949084393 858798711 195957995 629101079 637657473 699230813 966131311 810021050 572588387 852755974 757815664 697742034 923927991 2575238 322974842 426814174 131323888 209497607 462762217 522332929 514650194 907721720 31215478 145885851 696443558 298050322 683406807 250885472 769327548 630629857 138393155 662972501 203331888 397928982 401452903 190323279 42657625 812044550 162062292 404152565 816971086 992169078 551289217 225858850 846351340 885000402 305990981 829983432 598543708 750978759 420052652 735710261 538810384 317751260 289736829 283321520 910850066 282751746 315747769 964902255 773781000 262406489 920628541 602832600 581063820 250832323 387176309 577673184 80485362 708053570 550336314 2575238 289736829 835198840 830619816 81337657 885995802 4519262 882364001 767839638 950673785 119279869 630775839 140725908 926045944 850484222 681930584 349644605 152243323 165821462 215977916 647733367 751925989 560623000 430101007 912948600 878442641 568142039 511330454 146573202 688534928 35128915 271484655 20148474 298727845 812044550 936312210 119279869 259646582 955730659 542382913 170941326 417074904 79523589 115509283 902464469 215774690 38085353 488295044 795472528 24188768 787269565 433686203 266583970 53226850 896072909 920721173 506919968 278160655 852107700 846351340 511277493 451817798 103219970 284588557 676975489 311613451 397928982 115090276 702745028 242028021 767839638 308142020 683621666 538025980 667844649 598426014 170938835 703490607 678474526 918225489 282751746 326469359 683621666 492009082 288873549 15037608 349644605 98287438 838803091 186285312 182214511 929504680 812414090 623398671 708094860 295366548 732559957 140129038 937158597 681765297 757709512 610834602 338312978 586446680 624819674 546679009 932715562 303230482 607965234 117931902 630238886 74587532 79523589 982370833 885353274 809429735 408032939 299113502 451551269 696443558 962430008 944068218 711532060 242530683 808614164 396743027 942866882 293192373 463496366 302151126 37275245 480361743 360743135 432089082 462394151 946612927 128450928 591292508 889608806 808866527 686335042 490344724 2076768 306607837 215289803 209789164 727827821 31215478 424974082 860477160 262406489 840075867 427184372 162062292 994587826 306607837 405444604 886149363 841210236 131323888 625664180 946916156 328764419 50241607 464444922 650697444 557710104 626932919 592970093 877167702 572465104 715779797 299462930 551289217 940381563 982370833 334932282 926045944 638790258 738855203 762749463 568104980 943235508 328462418 786320493 261683638 996943901 464130920 806744033 715779797 854243215 827311105 735710261 244528344 19911869 885549757 288072509 626932919 256866745 904771946 853170454 492009082 376448548 675472009 338631458 660765062 981996224 743614603 778123726 958668995 739696834 478351140 750750593 570764323 735891721 950673785 520071928 788737791 884952974 887794841 817743547 255644658 463496366 814295984 47529701 653201202 882804101 610834602 866337119 601630030 396138845 938140278 942866882 808866527 359714925 31615284 835212499 632014852 531135820 585165457 721769014 653201202 78775552 444897967 687055288 375066210 456137963 152618584 328764419 366854683 79509313 679463383 56927881 128188331 267829614 591292508 548964093 719307635 944573659 53226850 77685914 208625324 902464469 637657473 607760956 876263470 382210484 862254110 896072909 259646582 7807006 652018277 459617527 242028021 317751260 532803593 462394151 73848009 413592826 432089082 539035187 770594967 726620654 780870754 19911869 702364434 539035187 93478833 226492467 712346140 625664180 268759041 682170984 876263470 902464469 602396426 371179314 801623766 441621000 886149363 795472528 270237875 48746678 247221668 620243558 918225489 780061015 654830523 288072509 776820092 283321520 196106606 722013570 748408317 579757115 656623172 636434256 428572243 577673184 776820092 464444922 275202504 962073361 583924389 145885851 896571061 838803091 860377902 506178629 268759041 971549242 23973553 613596687 966131311 324129364 918225489 215052415 538025980 134971740 900796599 722013570 920628541 1736950 654830523 572465104 363976852 112090095 958668995 623206361 15037608 106790696 691982506 437743643 679463383 854243215 539381059 781242822 94279561 571019028 83066601 215052415 922706719 478892468 591292508 872434540 591292508 507016471 10475035 708046990 331638088 852107700 74587532 327773233 553368896 143200457 769327548 376974209 115509283 47529701 156817178 788118407 247221668 361002681 641635851 251367294 660095934 810021050 425392410 806792339 49317804 829614460 740340897 250749017 950673785 246221518 430088921 962430008 652018277 413592826 42657625 397928982 53226850 136412292 311613451 52243955 652018277 788118407 289736829 509144872 837690635 463496366 630775839 509144872 746992914 543945175 738612855 683621666 860377902 195019158 49317804 942899938 10475035 495854210 640925332 721769014 885549757 702745028 721418370 463496366 481894295 607965234 215792516 516175014 210621083 993091440 363976852 399037712 936312210 359859765 408395896 220576148 148087911 646710523 862177563 993091440 50241607 963141978 874124920 426814174 72820570 186244437 412979540 299462930 455539394 272303478 771321738 152314280 931640418 656191811 862254110 597784477 331638088 232177196 885549757 647733367 455539394 38085353 991073887 531135820 481894295 808838846 877167702 283321520 623398671 334211676 512614298 7807006 152618584 874297853 660095934 715957434 585165457 159828635 722768643 858040709 878442641 870201182 489130642 874297853 751925989 836376015 662421393 699733109 321628921 991615550 768561257 288873549 769327548 19911869 551289217 683621666 484158080 620243558 513440742 667844649 153196022 708046990 917795074 560623000 344620844 902464469 264408147 737945381 242186770 232177196 746092812 630238886 931640418 77685914 539957336 170938835 763431295 494336936 927806038 735891721 691982506 604881661 941586175 853903669 298727845 853903669 878442641 912948600 745200166 678474526 637657473 789617647 366854683 36055646 550336314 758889515 982370833 256866745 284588557 446968233 887794841 775682536 885995802 964902255 769327548 962430008 548748527 577673184 760231333 686884353 67831588 134971740 679463383 98231977 444897967 729868696 492009082 134971740 799588075 408032939 783513992 2076768 153196022 938705675 746092812 459617527 302151126 764116955 704431513 687055288 202477791 138442062 275349681 63192647 550336314 451521521 637939784 984050047 138393155 842970782 709613471 810021050 723661847 983113723 153196022 249820698 152523810 337153847 542382913 630238886 351424753 106790696 152243323 264297813 93651148 163229392 660765062 543945175 763431295 815123402 877167702 907095826 332834875 940381563 128188331 970320952 136384659 112090095 721418370 997329398 886917295 317751260 575895835 884952974 29069209 63192647 765027062 554242697 743614603 452156279 10475035 792846009 1926282 694954883 572588387 699230813 660095934 334211676 219054502 699733109 128702236 276676140 570764323 568142039 660765062 527595027 581063820 852604705 289918211 247822207 979740237 573480571 93478833 452156279 827311105 577673184 610834602 842970782 783513992 311808379 396743027 630629857 190979155 750978759 645094664 55108095 133739154 317751260 64420967 646710523 640849273 739696834 408395896 688177128 663670886 667313812 28363157 315343704 704431513 778123726 296305836 938080232 816971086 699733109 931013644 190323279 645094664 548964093 851400664 315343704 944068218 566125822 548748527 182214511 193648030 195019158 425392410 932715562 936312210 996943901 600441802 403519778 117931902 587179274 950497221 327773233 208625324 708094860 769327548 590918818 408395896 940381563 662421393 7807006 769327548 989729323 632014852 49614749 40448245 984047482 261683638 896029805 80415088 715957434 768561257 526944836 28363157 767187616 270237875 577673184 864016134 539035187 73848009 313272965 885549757 624819674 619842427 686884353 882364001 433921335 23262398 616796881 703490607 841780337 234980621 520071928 292696118 140551765 32806834 396138845 674485068 334932282 251042004 548964093 802009078 778123726 237389399 218611070 303230482 539035187 43970470 940381563 712346140 934824360 776820092 955730659 920721173 590918818 597206610 300892929 630775839 853903669 949084393 632378665 103733806 942899938 525347105 737945381 640849273 750750593 334299650 81337657 103733806 40131409 917795074 68748842 885549757 874297853 15037608 912948600 538025980 437743643 633573519 852107700 375066210 940381563 270237875 850484222 886917295 342116147 637939784 266583970 854969794 387703244 927806038 310726569 917795074 288072509 264408147 152314280 31215478 699230813 344876805 539035187 489130642 727578179 710224239 458156391 645094664 852755974 712346140 775682536 932584021 33511708 740340897 780061015 604968568 646710523 109369069 938456692 950673785 812414090 82689280 589760538 911302173 812044550 275349681 860708299 884059813 36055646 156817178 737945381 53226850 215289803 568104980 424974082 293192373 841210236 633587956 134801439 202477791 282751746 679463383 937158597 979740237 172894131 268759041 413592826 326469359 81337657 587469038 299462930 851400664 405444604 660765062 618355033 938140278 324129364 322974842 607041944 650990283 334211676 877167702 721769014 946612927 627110568 806664207 984050047 770594967 962430008 688577702 697742034 42657625 272303478 99294732 437743643 745200166 53966525 656623172 172382592 74587532 516175014 803588261 56927881 132556595 140551765 103733806 247822207 32806834 405444604 455539394 735891721 927806038 47349911 551289217 566554997 917795074 635302209 551289217 764459345 804406873 19715614 261683638 458363994 953882020 37275245 598543708 554242697 261683638 831241130 444897967 140551765 915330573 750978759 40448245 588034909 135975430 134801439 850386354 543865019 926044257 735891721 656623172 413592826 244528344 195733178 592639233 577673184 900796599 88335614 387176309 579757115 705548145 884952974 877088774 944573659 304621545 800460688 211958450 715957434 190979155 520071928 681930584 324986193 295366548 566125822 982353486 247822207 715779797 870201182 633587956 38304068 266213579 656191811 533455280 616057762 681765297 623206361 840075867 616796881 117931902 88335614 633587956 860708299 857535330 190323279 308142020 543865019 551289217 220576148 193648030 694954883 292149520 767839638 292149520 718980624 53226850 220576148 295366548 136412292 490344724 112090095 462762217 750978759 979740237 283321520 103669472 424974082 567774282 667313812 760231333 485262404 628523361 767187616 214650974 462394151 887794841 81337657 211958450 535533605 904771946 808614164 513440742 628820972 21190596 443960759 29069209 264100442 40448245 910818482 862254110 556619020 840130613 285947848 152523810 515426984 215981255 955730659 788737791 907721720 969294148 196460706 770993588 40131409 28363157 885647994 83066601 550322314 234980621 170941326 284588557 624819674 242530683 152314280 650990283 2575238 748408317 19715614 660765062 726620654 412979540 426814174 640849273 522663253 982370833 143200457 257214051 975478549 922706719 635302209 603931167 272303478 73848009 78775552 271484655 10369081 49317804 885647994 685702028 944573659 926044257 918521256 408395896 515426984 251188854 896029805 688577702 601740259 876263470 388085842 306258744 514768035 736237188 590918818 432089082 40131409 876868627 306597948 663670886 579757115 955501918 590918818 641635851 697742034 302151126 590918818 74587532 616057762 23973553 638790258 877088774 923715439 540976336 566554997 331638088 128450928 598543708 792822959 721418370 975478549 47290536 636434256 538025980 352092606 738855203 607965234 268759041 396937914 900116034 38085353 13112382 526944836 950673785 781242822 575023903 413592826 50241607 451521521 807117750 359714925 626932919 781246194 949084393 47349911 954227928 87392830 806664207 971549242 290117216 907095826 302151126 300892929 363976852 520071928 568104980 630629857 862254110 713146141 261683638 931005739 152866011 452156279 455539394 588034909 148087911 232177196 254203892 931005739 878442641 678474526 417074904 993091440 77819776 400218902 539957336 145885851 67831588 806792339 354807942 306597948 28363157 248642173 299113502 607965234 396806189 456137963 31215478 359714925 843005594 172894131 969294148 237172271 209789164 971549242 94279561 597784477 512614298 638790258 554222239 539035187 351424753 800460688 99294732 764459345 831467447 618355033 275349681 247822207 786380583 546141085 274113481 984047482 74587532 163229392 481894295 902464469 618542887 250885472 261683638 744008188 214650974 225858850 695599688 733642252 295366548 764459345 783513992 588034909 559014304 573449906 190979155 1736950 650990283 782533040 80485362 494336936 162062292 912948600 304621545 932715562 247221668 792822959 354807942 557710104 247221668 51457589 827311105 241184545 259646582 300892929 632402794 349644605 874124920 531135820 40448245 656191811 745200166 851759377 289736829 733642252 142903358 968670974 967417280 749497174 862254110 77685914 663670886 698320352 43970470 143200457 151364594 960796073 597206610 52243955 757850417 393120342 533455280 196460706 559014304 872434540 862177563 776835194 326469359 112390393 278160655 175507355 485153920 81553943 940188502 397928982 695599688 121069546 375066210 433921335 723661847 4519262 503666498 38085353 151364594 625664180 877167702 506178629 152618584 103219970 271484655 713146141 553191189 667844649 138393155 193515742 269911067 616796881 94279561 338631458 604968568 298050322 746992914 962073361 683406807 656191811 196106606 780061015 242028021 667313812 181668423 143200457 538025980 792846009 575895835 378961655 126695727 404152565 417074904 2076768 152523810 98231977 430088921 831380531 601630030 516175014 838655651 88335614 746092812 215289803 710224239 134971740 855636134 179991869 913521589 287768226 953882020 170938835 203331888 207442482 128702236 79509313 47290536 923715439 539381059 507016471 687988023 68748842 945394518 288072509 444897967 488788762 93651148 38304068 840130613 53966525 735696627 795472528 203331888 925555858 661321016 2076768 56154381 369306500 567343883 732559957 328462418 771803404 438183310 780061015 645094664 842970782 489612980 509370562 982370833 388085842 654830523 215289803 797746066 193515742 994877696 433921335 103669472 984050047 926045944 733642252 748408317 757709512 492009082 324129364 438183310 953267424 760231333 852755974 641635851 325554372 540394532 338312978 994877696 327773233 396050095 359714925 271484655 327773233 210621083 330274784 211958450 38085353 50241607 546141085 407629453 940381563 74587532 98231977 481894295 662972501 40656291 237172271 994877696 376448548 936312210 858798711 480361743 424974082 299113502 581831913 931966477 399037712 638516505 252792947 982416551 781242822 322974842 114409323 538025980 781246194 920628541 51457589 645094664 884952974 736624310 721769014 251188854 207442482 768561257 858798711 539381059 250885472 932584021 918521256 254203892 248642173 757850417 548964093 575895835 276676140 940188502 607965234 123073176 686335042 958668995 923715439 602396426 218611070 568104980 53966525 292972503 887548285 525347105 613596687 710224239 764459345 917452919 543945175 745200166 630629857 451817798 207844781 6720560 249820698 931013644 984050047 126695727 812414090 830619816 2379379 396806189 739696834 661321016 688177128 838331644 338631458 247841801 997329398 703514531 53966525 93651148 764116955 703490607 5299425 568104980 566554997 769327548 361002681 244528344 726620654 568104980 708094860 884072178 459452716 715779797 495854210 128188331 288072509 289918211 727578179 6720560 531135820 862254110 918521256 740340897 152314280 911302173 620243558 769327548 19715614 738612855 138442062 920721173 33511708 72820570 708046990 429277230 668964848 885549757 729868696 966683628 854243215 331638088 708046990 432089082 485509833 247841801 10369081 632402794 543945175 637769046 458363994 151364594 750750593 915330573 749497174 93478833 462394151 745200166 509019925 278160655 624819674 910850066 581831913 533864165 939725993 512614298 942866882 610834602 288873549 354807942 722013570 99294732 215289803 128188331 650036494 457149478 682170984 183440003 47349911 577970627 264297813 43970470 140725908 142903358 683621666 181668423 193515742 650697444 342116147 513440742 114409323 862254110 140551765 570764323 56927881 559014304 646710523 802009078 256866745 548748527 762749463 577970627 106790696 29069209 376448548 98287438 866337119 115090276 641231120 255644658 918521256 117931902 324129364 885995802 195733178 429277230 573480571 242530683 554242697 860377902 404152565 481894295 359714925 757815664 159828635 884059813 298050322 156817178 288873549 408395896 746394036 396743027 641231120 591292508 495854210 154538466 514768035 803588261 836376015 533455280 38085353 136384659 896072909 264408147 866337119 652018277 983373150 489130642 315297566 115509283 170938835 950497221 437743643 587469038 315343704 702364434 806744033 546679009 207844781 425392410 566554997 864016134 376974209 650990283 77685914 128702236 852755974 115090276 475344103 911302173 559957428 931966477 476912096 765027062 172894131 247234349 884952974 60750487 103219970 840130613 60017144 778074990 543945175 945394518 408032939 448262245 190323279 753419354 498045048 922706719 495854210 721418370 167276070 882364001 711532060 533455280 732245352 430088921 2379379 152243323 246221518 485153920 287768226 306258744 996943901 917452919 371179314 315747769 172382592 308142020 699733109 746092812 496698204 567948101 978947655 264750083 226492467 255644658 324129364 675472009 910818482 586446680 328764419 572588387 787269565 80415088 315297566 80415088 248642173 803588261 451551269 358401766 138442062 190979155 134801439 705548145 79523589 289918211 290474734 598543708 515426984 830619816 792822959 971894015 750978759 876868627 209497607 344876805 688177128 286037808 702745028 638516505 47529701 302151126 884952974 776820092 996943901 156817178 140551765 502849508 539035187 896571061 38304068 396050095 732559957 518384931 979750308 465759767 938080232 917452919 667844649 247006479 349644605 591292508 2575238 956815883 597784477 6720560 1736950 98287438 699230813 553368896 812414090 208625324 882804101 619842427 15903366 142903358 393120342 969294148 718980624 887794841 330205547 695599688 630238886 82689280 912948600 21190596 462394151 855636134 60017144 78649514 103219970 503666498 426814174 128188331 53195413 429277230 60017144 315747769 726620654 562773407 119279869 533864165 991615550 966131311 226492467 918225489 15903366 401452903 494336936 705548145 548964093 663670886 485509833 428572243 338631458 525347105 983113723 183440003 79509313 422532994 352092606 448262245 463496366 38338132 19911869 126695727 399037712 115090276 2575238 735696627 19911869 292149520 55018341 73848009 939725993 332834875 449022331 429277230 443960759 358401766 602832600 31215478 298050322 923927991 851759377 40656291 727827821 931640418 978947655 674485068 854243215 851400664 711455867 13112382 746394036 975337465 509019925 31215478 134801439 375066210 604881661 210621083 527595027 893019475 902464469 628523361 991615550 736237188 38085353 559014304 505061211 746992914 780061015 931966477 582273012 123073176 938456692 138393155 676975489 331638088 983373150 926045944 938080232 484158080 711455867 786380583 267829614 186285312 522663253 637657473 248642173 292972503 618355033 38844979 543945175 202477791 443960759 131323888 226492467 966131311 735891721 922706719 24089615 650697444 722013570 745200166 371179314 290117216 507016471 10475035 485509833 15037608 831241130 633573519 53966525 408395896 215052415 683406807 993091440 900796599 403519778 219054502 842970782 74587532 702745028 29069209 109054120 514650194 179991869 242186770 250749017 321628921 476912096 918225489 514768035 485153920 831241130 572588387 616057762 850386354 526944836 816971086 981996224 888699423 800460688 809429735 338312978 481894295 223299794 251188854 793291205 126695727 749497174 922706719 776835194 525347105 19715614 140129038 387703244 922858580 543945175 746092812 638790258 628523361 146573202 874124920 960796073 177689820 337153847 886149363 196460706 771321738 885353274 807117750 382210484 931013644 761330904 210621083 858040709 888553258 891279504 938140278 60017144 98287438 106790696 851400664 190323279 514650194 754133002 975337465 970911538 23262398 207442482 103669472 272303478 774489082 299994808 740882715 721769014 471393875 79523589 663670886 836376015 101231409 456137963 67831588 604881661 703514531 983373150 354807942 546141085 326469359 588034909 151364594 962073361 860377902 226492467 750563611 413592826 292696118 516175014 366854683 739696834 93478833 300892929 979740237 315297566 830619816 912948600 550336314 656191811 838655651 882804101 760231333 311808379 652018277 226492467 269911067 509370562 884072178 782533040 860477160 349076114 982416551 925555858 663670886 494336936 681930584 325554372 922706719 522663253 893019475 568142039 917795074 175507355 926045944 938456692 696443558 694954883 237389399 896072909 598543708 251367294 135975430 851829959 806664207 888259120 814295984 382904427 53525809 250885472 242530683 592970093 632402794 79509313 190979155 955730659 83066601 172382592 484158080 764459345 542382913 792822959 559014304 170938835 926045944 134801439 807117750 560623000 982370833 87392830 923927991 726620654 768561257 196460706 860377902 620243558 884072178 241184545 807117750 495854210 308142020 889608806 547547687 66490779 138393155 143200457 927806038 160287690 746992914 683621666 305068796 560327459 183440003 907095826 610447918 810021050 129724737 713146141 735696627 885000402 780870754 912948600 117931902 509144872 366854683 522332929 956286779 79523589 247221668 376974209 778074990 495854210 681765297 573480571 797746066 87392830 746992914 902464469 133739154 68748842 595030753 543945175 328462418 159828635 254203892 944573659 215774690 632378665 678884863 209497607 201717402 441621000 783513992 241184545 28363157 506178629 653201202 371179314 874124920 47529701 498840912 795472528 760370490 520071928 152523810 506178629 195957995 942866882 583924389 330205547 886917295 249670598 601630030 842970782 776352608 143200457 806664207 789617647 877088774 836376015 363976852 448881532 982370833 249820698 503666498 676975489 640849273 103219970 619842427 902464469 292972503 128450928 922858580 330274784 654830523 613596687 145559297 285947848 760370490 889608806 39220584 165821462 407629453 285947848 645094664 683621666 715779797 942866882 816971086 713146141 407510599 699230813 247234349 458290565 932584021 682170984 809429735 163229392 878442641 727578179 270237875 15903366 877167702 371179314 877088774 317751260 125829791 566554997 653201202 699733109 938140278 638790258 757850417 744008188 196106606 109054120 438183310 698320352 514650194 896072909 904771946 35128915 484158080 859168292 186285312 29473993 946612927 711455867 971894015 220576148 478351140 686884353 290117216 715957434 630775839 507016471 860477160 451521521 940188502 299462930 583924389 983113723 162062292 38304068 695599688 853903669 598426014 146573202 681930584 858040709 215774690 546141085 650697444 520071928 562773407 193515742 290117216 851829959 626833449 403519778 788737791 496698204 953882020 975478549 931086800 359859765 958668995 56927881 630201811 196460706 305990981 698320352 242186770 186244437 896571061 296751278 299113502 226492467 688577702 984047482 292696118 829614460 854969794 623206361 478351140 119279869 773781000 806792339 623398671 48746678 306607837 266583970 660095934 866337119 275349681 931005739 315747769 81553943 678884863 433921335 186285312 27735709 41538784 246058339 334299650 213097363 804406873 686884353 489612980 353964006 637939784 205387898 780870754 968755777 98287438 942866882 854902633 276676140 23262398 526944836 299113502 972710252 736237188 441621000 40656291 548964093 331638088 324986193 843005594 907721720 457149478 722013570 760231333 953267424 585165457 371179314 946916156 33511708 581063820 788118407 140129038 667313812 67700412 494336936 628523361 4519262 502849508 841210236 94279561 246221518 575895835 970320952 927806038 674446970 270237875 566554997 292696118 215052415 788737791 942899938 13112382 267829614 451817798 964902255 430088921 531333917 760370490 566125822 484158080 573449906 650697444 382210484 183440003 882804101 202477791 47529701 533864165 134971740 860477160 338312978 28363157 713146141 945394518 378961655 704431513 713146141 604968568 299994808 884059813 896072909 428572243 330274784 465697134 668964848 736237188 515426984 131323888 767187616 451817798 282751746 874124920 775682536 328462418 81553943 926045944 607965234 753419354 19911869 860377902 587179274 259646582 338631458 923927991 776835194 83066601 870201182 489130642 907095826 431406787 916956968 553368896 831380531 936312210 330274784 539957336 505061211 408395896 509144872 554222239 667844649 308142020 328764419 567948101 668964848 854902633 130160246 39220584 726620654 992001870 997329398 991073887 313272965 878442641 795472528 540394532 718980624 923927991 984047482 401452903 698320352 888553258 138442062 735696627 852107700 827311105 940381563 183440003 32954995 162062292 923715439 598543708 934824360 722768643 207442482 780870754 582273012 538810384 520071928 274113481 543945175 637657473 310726569 455539394 572465104 626833449 506178629 603931167 121069546 590208882 983373150 67831588 699230813 954677909 835198840 429277230 79509313 598426014 527595027 512614298 170938835 581063820 448881532 514650194 179981178 542382913 790270533 554222239 247822207 838331644 516175014 882364001 170938835 982416551 334932282 153196022 250749017 270237875 646710523 617908997 589760538 322974842 38304068 887794841 170938835 99294732 55108095 757850417 543945175 979740237 607965234 595030753 449022331 876868627 836376015 854969794 264100442 966683628 851829959 913521589 342116147 592639233 781246194 429277230 522332929 807117750 938705675 623398671 413592826 533455280 394791153 660095934 47349911 206036522 727578179 770993588 165821462 918225489 215289803 278160655 938705675 43970470 721769014 132556595 49948206 186285312 688177128 503666498 1736950 387176309 485063015 56154381 572465104 93651148 250885472 50241607 960543625 953882020 713146141 417074904 831380531 53525809 623206361 797746066 37275245 56154381 646710523 152523810 934824360 302151126 119279869 514650194 264100442 67700412 256866745 548748527 964902255 456956861 535533605 326469359 215052415 401452903 459452716 681930584 829614460 295606018 53195413 773781000 607760956 332834875 636434256 931640418 587179274 152866011 812044550 838655651 708053570 387176309 413592826 93478833 285947848 542382913 938080232 299113502 557710104 969294148 907721720 882364001 858040709 344876805 520071928 855636134 636434256 548748527 989729323 830619816 195733178 769327548 789617647 900796599 858798711 148087911 923715439 271484655 311808379 296305836 629101079 650990283 452156279 630201811 708046990 967417280 984050047 885549757 37275245 123073176 252962990 271484655 264297813 768561257 478892468 913521589 778123726 492009082 514768035 679463383 405444604 577970627 249820698 687988023 539035187 604968568 885647994 332834875 727245017 478351140 647733367 422532994 573480571 760370490 451551269 215774690 852604705 255644658 682170984 816971086 726950461 864016134 55108095 553191189 592981604 24188768 590918818 375066210 175060805 900796599 232177196 632402794 276676140 840130613 907095826 275202504 687055288 806664207 604881661 931640418 103219970 275349681 237172271 274113481 852107700 351424753 264100442 975337465 361002681 303230482 376974209 640925332 300892929 567343883 63192647 637939784 174335822 638516505 170941326 722768643 140725908 331638088 616796881 765027062 462394151 151364594 971549242 28363157 970911538 465759767 984047482 860377902 852755974 678884863 196460706 546679009 835198840 650990283 557710104 408395896 984050047 525347105 955730659 920721173 934824360 115509283 476912096 795549341 396937914 947413305 88335614 628523361 531333917 438183310 296751278 422532994 835198840 926045944 250749017 56154381 485262404 39220584 940381563 687988023 916956968 94279561 697742034 478351140 995876182 289736829 516175014 67831588 337153847 503666498 623206361 583924389 852107700 308142020 250885472 306607837 852604705 321628921 968670974 290117216 249820698 854969794 134971740 540394532 940381563 321628921 702745028 979740237 627110568 946612927 360743135 396743027 396138845 808866527 851759377 128702236 475344103 786380583 754133002 929504680 592970093 78649514 77685914 484158080 630238886 15037608 635302209 196106606 138442062 295606018 983113723 809429735 52243955 308142020 155241439 77819776 678474526 83066601 338929165 586370291 66490779 41538784 896072909 208625324 186244437 797746066 38304068 795549341 252792947 740882715 134801439 956286779 78775552 633587956 925555858 904771946 174862116 773781000 167276070 855636134 459452716 971894015 352092606 575023903 117210451 735696627 218611070 542382913 369306500 29069209 283321520 532803593 866337119 237389399 616057762 322974842 87392830 234980621 225771141 768561257 24089615 688577702 866337119 854902633 735891721 56154381 916956968 562773407 424974082 251042004 560623000 546679009 624819674 577970627 764459345 884059813 792846009 125204206 910818482 115090276 437743643 49317804 625664180 687988023 396138845 754580366 682170984 768561257 172894131 602396426 604881661 151506993 689757867 860477160 458290565 991073887 727578179 292696118 349644605 950673785 918521256 838655651 342116147 799588075 726950461 41538784 885141769 478351140 938456692 481894295 248642173 735696627 1736950 215981255 744008188 663971090 140725908 542382913 842970782 366854683 190323279 135975430 702745028 425392410 656191811 640849273 237172271 685702028 721769014 56154381 815123402 931013644 604181881 619842427 708053570 163769090 449022331 174140940 452156279 888699423 733642252 31615284 195019158 151364594 708053570 72820570 437743643 422532994 664041213 465697134 159828635 559014304 694954883 257214051 994587826 887794841 359714925 498840912 249820698 563678994 267829614 358401766 56927881 944068218 162904272 920628541 535533605 396050095 602832600 38338132 884952974 215981255 458363994 268759041 496698204 900796599 87392830 375066210 81337657 532803593 962430008 923927991 215052415 430101007 146573202 275202504 997329398 681930584 854243215 575023903 592981604 135975430 601740259 228290502 498045048 264750083 874297853 228290502 627110568 492009082 371179314 723661847 674446970 60750487 426814174 540394532 560623000 887794841 1736950 83066601 581831913 215792516 446968233 803588261 251367294 626833449 627110568 344876805 776835194 533864165 174335822 28363157 829614460 430088921 376448548 53226850 942866882 950673785 441621000 152243323 842970782 274113481 560623000 464130920 37275245 640849273 223299794 799588075 964902255 428572243 196460706 745200166 589760538 661321016 117210451 654830523 792822959 367026304 288873549 783513992 968755777 921198791 376448548 753419354 420636144 626932919 754133002 936312210 638790258 142903358 727578179 492009082 376974209 992001870 33511708 103733806 787269565 843005594 664041213 660095934 209497607 824770361 19911869 1926282 786320493 299113502 870201182 628523361 623206361 888553258 597784477 746992914 462394151 885995802 246221518 60750487 573449906 247841801 969494113 15037608 327773233 331638088 990121035 42657625 19911869 595030753 241184545 687988023 577673184 322974842 676975489 242186770 103219970 575023903 522663253 735696627 646710523 858127225 109054120 485153920 464444922 430101007 620243558 363976852 831380531 760370490 641231120 603931167 56927881 581063820 330274784 80485362 160287690 801623766 256866745 640925332 729868696 663670886 775682536 64420967 498045048 953882020 324129364 553191189 47349911 603931167 4519262 760370490 138442062 877167702 290474734 448262245 520071928 303230482 404152565 21190596 522332929 101231409 795472528 234980621 851829959 704431513 359859765 47290536 506919968 103669472 190323279 735696627 683621666 946612927 767187616 152523810 989729323 545538425 953267424 663670886 972710252 598543708 520071928 481894295 939725993 748408317 306597948 275202504 732245352 917452919 20148474 652018277 907095826 740340897 792846009 156817178 140725908 247841801 143200457 662421393 128450928 950497221 20148474 135975430 179981178 156817178 711455867 917452919 250832323 74587532 376974209 855636134 981996224 270237875 572465104 885549757 789617647 804406873 334211676 931966477 683621666 709613471 505061211 969294148 53195413 653201202 715957434 298727845 458156391 274113481 535533605 840130613 179981178 598426014 623206361 152243323 53195413 878442641 420636144 115509283 334932282 926044257 560623000 799588075 7807006 840075867 506178629 128188331 109054120 610834602 232177196 366854683 795472528 586446680 789617647 923927991 852107700 602396426 458290565 715779797 750750593 548748527 498045048 103733806 667313812 47290536 299462930 247006479 983113723 264408147 896072909 40448245 488788762 653201202 990121035 257214051 771803404 835339516 687055288 148087911 579757115 478351140 29473993 746992914 711455867 129724737 851759377 296305836 396632533 994877696 509370562 539381059 587179274 910850066 602832600 361435434 38304068 471393875 543865019 47290536 55018341 24188768 306597948 931086800 557710104 877088774 889608806 640925332 405444604 289736829 36055646 271484655 137529801 478351140 167276070 808866527 841780337 23973553 272303478 786380583 494336936 736237188 992169078 511330454 196460706 929504680 32954995 618542887 276676140 922706719 213097363 931086800 452156279 760231333 37275245 660765062 650036494 958668995 498045048 735696627 969494113 306258744 815123402 42657625 134971740 920721173 78775552 269911067 702745028 969294148 250832323 428572243 629101079 98287438 382210484 846351340 588034909 650990283 68748842 321628921 459452716 162062292 543945175 539957336 522332929 546679009 299994808 98287438 109054120 715779797 506919968 617908997 984047482 38844979 155241439 587469038 727245017 738855203 979750308 128188331 371179314 956286779 582273012 715779797 337153847 551289217 623206361 641635851 449022331 696443558 140551765 123073176 831380531 93651148 396937914 23262398 793291205 295606018 991615550 215977916 81337657 271484655 128450928 886149363 360743135 760231333 170938835 331638088 732559957 303230482 543865019 660765062 852107700 640849273 485063015 499057158 831241130 736237188 2575238 637769046 829983432 133739154 193515742 563678994 287768226 366854683 205387898 432089082 942866882 230662076 462394151 854969794 852107700 396743027 476912096 884072178 727578179 572588387 739696834 396050095 81337657 533455280 56927881 148087911 874297853 396050095 287239117 746092812 66490779 783513992 780061015 215981255 630977998 211958450 852755974 705548145 737945381 633573519 399037712 38844979 981996224 926044257 650036494 60750487 962073361 275202504 378961655 806664207 159828635 763431295 629101079 270237875 727578179 896571061 592970093 572588387 572465104 675472009 121069546 82689280 853903669 451817798 708046990 675472009 441621000 422532994 252792947 136384659 187104147 492009082 49614749 145559297 459452716 982353486 727827821 878442641 66490779 480361743 399037712 254203892 330205547 540976336 112090095 837690635 264100442 921198791 616057762 286037808 993091440 181668423 874297853 24188768 424974082 662421393 163229392 255644658 554242697 533455280 522663253 740882715 272303478 93478833 170938835 748408317 7807006 195957995 566125822 586370291 359714925 932584021 311808379 206036522 130160246 967417280 764459345 966683628 573480571 663670886 630629857 247841801 388085842 103733806 953267424 604968568 130160246 64420967 330205547 786380583 296751278 264750083 688177128 770594967 727578179 803588261 459452716 151506993 806744033 563678994 664041213 50241607 812044550 587469038 137529801 877167702 641231120 982353486 459452716 801623766 342116147 675472009 970320952 563678994 694954883 969294148 515426984 533455280 896029805 736624310 812414090 215774690 494336936 945394518 662972501 296305836 667844649 967417280 829983432 931966477 226492467 604968568 896072909 433686203 162904272 860477160 581831913 125829791 942899938 921198791 940381563 679463383 55018341 628523361 369306500 292149520 10369081 456956861 174335822 527654256 179981178 98824830 815123402 769327548 764116955 640849273 556619020 321628921 630977998 802009078 907721720 695599688 37275245 47290536 53966525 650697444 338312978 151506993 907721720 247006479 77685914 438183310 250832323 499057158 38304068 430101007 850484222 305068796 172894131 583924389 324129364 234980621 276676140 703514531 570796148 142903358 165821462 78649514 324129364 598426014 757709512 152523810 854243215 632014852 400218902 904771946 806744033 266213579 478892468 125829791 459452716 538025980 543945175 305990981 143200457 652018277 299462930 6720560 983373150 344620844 676975489 142903358 251367294 186285312 726620654 896571061 531135820 462762217 758889515 674485068 971549242 77819776 776835194 553368896 960796073 799588075 831241130 72820570 795472528 827311105 79523589 215774690 566554997 289736829 155241439 932584021 607760956 545538425 782533040 322974842 250885472 850386354 702745028 38338132 32954995 24188768 556619020 768561257 38085353 28363157 836376015 39220584 836376015 49317804 718980624 917452919 607760956 539381059 38304068 797746066 79509313 722768643 288873549 211958450 719601437 174140940 353964006 489130642 678474526 295606018 328764419 50241607 20148474 181668423 408032939 302151126 307060809 133739154 727827821 533455280 854243215 722768643 683621666 23262398 252962990 797746066 2575238 885549757 722013570 583924389 53195413 351424753 686335042 788737791 249820698 827311105 498045048 855636134 713146141 783513992 726620654 228290502 983373150 29069209 55108095 133739154 806744033 886149363 786320493 151364594 850484222 886149363 509664709 640849273 678474526 128188331 792822959 575895835 815123402 539381059 266583970 278160655 226492467 931086800 498045048 773781000 668964848 366854683 390793037 23973553 35128915 915330573 459452716 722768643 942899938 125204206 290474734 838655651 727578179 630775839 726620654 302151126 49614749 344620844 749497174 736237188 182214511 430088921 250885472 954227928 313272965 247234349 853170454 628523361 668964848 931966477 378961655 824770361 10369081 152523810 256866745 38338132 496698204 358401766 858798711 67831588 456137963 824770361 620243558 94279561 396138845 247221668 568142039 979740237 359859765 451817798 758889515 645094664 250749017 532803593 306597948 904771946 458290565 326469359 360743135 128702236 531135820 942999703 932715562 153196022 172894131 799588075 390275103 572588387 932715562 918225489 146573202 264750083 851759377 944068218 298050322 98287438 388085842 322974842 632378665 533864165 623206361 209789164 962430008 430101007 81337657 237389399 939725993 367026304 314069534 992001870 601740259 956815883 808838846 799588075 282751746 877088774 841780337 604968568 507016471 568104980 808614164 247234349 806792339 630201811 918521256 591292508 613596687 264750083 315297566 115090276 771803404 705548145 215289803 367026304 912948600 73848009 910818482 675472009 789617647 247221668 662972501 115090276 831380531 660095934 394791153 568104980 990121035 956286779 307060809 807117750 588034909 511330454 485262404 289918211 505061211 28363157 324986193 303230482 505061211 270237875 146573202 740882715 287768226 583924389 49614749 858127225 923715439 527654256 932715562 979740237 750750593 941586175 757709512 640925332 403519778 208625324 520071928 462762217 582273012 585165457 162904272 270237875 187104147 710224239 49614749 428572243 174862116 663971090 441621000 67831588 812044550 331638088 786320493 704431513 250885472 67831588 296751278 824770361 829614460 308142020 106790696 696443558 427184372 363976852 628820972 982353486 352092606 480361743 831241130 242530683 955730659 53525809 451551269 432089082 285947848 67700412 535533605 592639233 249670598 214650974 676975489 687988023 296751278 982353486 205387898 540394532 451521521 967417280 2076768 39220584 592981604 931086800 387703244 278160655 283321520 284588557 735891721 247234349 29473993 428572243 650036494 214650974 218611070 637769046 66490779 292696118 48746678 929504680 852755974 945394518 718980624 807117750 325554372 586446680 250832323 896571061 248642173 412979540 744008188 600441802 650036494 946612927 851829959 257214051 556619020 299113502 143200457 941586175 767839638 554222239 516175014 700560235 426814174 814295984 299462930 637657473 994587826 982353486 689757867 305990981 393120342 83066601 667844649 83066601 262406489 208625324 299994808 679463383 205387898 498840912 162904272 125204206 850484222 177689820 396937914 942999703 264100442 471393875 882804101 757815664 757709512 334299650 114409323 719307635 667313812 425392410 984050047 214650974 896072909 490344724 138442062 367026304 683621666 843005594 733642252 760231333 678474526 712346140 964902255 264408147 749497174 927806038 719601437 306607837 87392830 630201811 554242697 745200166 520071928 332834875 225771141 408395896 19715614 230662076 776835194 567774282 592970093 799588075 387703244 882364001 413592826 885549757 207844781 604968568 272303478 920721173 592970093 484158080 744008188 80485362 170941326 190929591 885647994 837690635 288873549 401452903 850484222 858127225 664041213 242530683 315297566 917452919 708053570 910850066 831380531 181668423 48746678 809429735 767187616 855636134 306597948 840075867 667844649 305068796 719601437 681765297 145885851 422532994 698320352 633573519 476912096 938140278 711532060 770864525 451521521 133739154 758889515 843005594 5299425 109369069 288072509 877167702 5299425 641635851 625664180 754580366 404152565 305068796 37275245 858127225 424974082 760231333 997329398 270237875 509144872 922858580 498045048 855636134 776835194 133739154 296751278 264750083 624819674 270237875 382210484 186285312 134801439 770594967 960796073 936312210 495854210 457149478 872434540 490344724 325554372 125204206 808838846 266213579 256866745 840130613 588034909 151364594 858040709 31215478 256866745 942999703 979750308 132556595 546141085 776820092 885000402 705548145 970911538 710224239 443960759 208625324 485509833 807117750 754133002 98287438 119279869 115090276 850484222 595030753 944573659 691982506 750978759 129724737 47349911 982416551 276676140 765027062 925555858 640925332 762749463 885995802 36055646 835339516 378961655 572588387 396138845 982416551 711532060 958668995 353964006 328462418 106790696 162062292 630977998 736237188 232177196 492009082 778123726 581063820 446968233 23262398 256866745 835339516 4519262 214650974 739696834 827311105 475344103 308142020 597784477 408395896 815123402 736237188 2076768 769327548 970320952 551289217 516175014 326469359 944573659 257214051 764116955 577970627 387703244 712346140 597784477 757850417 317751260 660765062 887548285 513440742 556619020 177689820 209497607 331638088 885000402 765027062 590918818 824770361 463496366 854902633 969494113 315747769 55108095 428572243 509664709 969294148 393120342 630775839 81553943 425392410 522663253 533864165 223299794 604968568 715957434 598426014 262406489 710224239 338631458 920628541 925555858 152618584 543865019 888553258 403519778 23973553 55018341 931086800 889608806 884072178 324129364 430284321 885000402 683406807 160287690 247006479 581831913 270237875 641231120 904800517 808614164 80415088 313272965 133739154 546141085 563678994 427184372 662421393 324129364 266213579 781246194 266213579 328764419 918225489 137529801 748408317 602832600 900796599 697742034 133739154 24089615 567948101 359859765 572588387 602832600 681765297 226492467 854902633 981996224 746092812 968755777 546679009 249670598 776820092 792822959 765027062 382904427 736237188 754133002 953882020 388085842 39220584 376974209 921198791 694954883 551289217 237172271 266213579 885353274 208625324 162904272 904800517 459617527 132556595 636434256 183440003 195733178 704431513 735891721 888553258 29473993 465759767 175060805 840075867 256866745 315747769 792822959 43970470 775682536 538810384 749497174 601630030 130160246 942999703 735710261 209789164 205387898 814295984 143200457 940188502 737945381 630201811 247822207 640925332 170938835 78649514 369306500 326469359 334932282 361435434 495854210 424594759 174862116 38338132 315343704 633587956 310726569 293192373 910818482 103669472 251367294 709613471 137529801 738612855 994587826 503666498 106790696 174140940 607041944 444897967 2379379 567948101 338312978 696443558 446968233 770864525 746394036 431406787 602832600 763431295 152314280 971894015 925555858 299113502 831241130 293192373 393120342 922858580 163229392 656623172 79509313 448262245 232177196 237389399 175507355 230662076 32954995 6720560 187104147 15037608 448881532 855636134 732245352 548748527 506178629 862254110 378961655 151506993 175507355 837690635 190323279 465759767 56927881 206036522 646710523 545538425 134971740 444897967 719601437 808866527 550322314 156817178 190323279 215977916 311808379 430101007 174335822 982353486 359714925 917795074 4519262 10475035 246058339 675472009 623206361 704431513 962073361 532803593 172894131 499057158 687055288 915330573 782533040 123073176 187104147 67700412 296751278 975337465 187104147 512614298 152314280 994877696 160287690 306607837 393120342 47290536 456137963 601630030 193515742 630201811 888259120 862177563 476912096 602396426 735891721 950673785 511277493 271484655 668964848 843005594 27735709 887794841 970911538 518384931 981996224 770993588 249670598 769327548 963141978 876263470 885353274 305990981 47349911 361435434 359714925 617908997 330274784 42657625 49948206 931640418 159828635 315747769 396937914 597206610 353964006 190929591 251367294 876868627 174335822 878442641 650036494 136384659 994587826 721418370 330205547 885995802 688177128 945394518 688177128 40656291 352092606 619842427 687055288 78649514 130160246 936312210 282751746 583924389 136412292 133739154 737945381 994877696 38304068 123073176 175507355 514650194 427184372 32075030 360743135 864016134 193515742 563678994 841780337 681765297 396937914 396743027 119279869 554222239 207844781 154538466 182214511 918225489 509370562 610447918 488788762 773781000 635302209 687988023 324129364 851400664 708046990 289918211 842970782 247841801 851829959 201717402 223299794 586370291 874297853 619842427 841210236 425392410 601740259 93651148 991615550 193648030 764459345 23262398 607041944 940188502 509370562 456956861 885647994 887794841 984047482 678884863 247822207 478351140 885000402 803588261 352092606 94279561 509019925 884059813 852755974 893019475 841780337 32075030 47349911 688534928 494336936 266213579 103219970 598426014 7807006 695599688 427184372 456956861 167276070 654830523 995876182 754580366 464444922 860477160 829983432 858127225 397928982 585165457 852755974 190929591 394791153 274113481 870201182 551289217 806744033 266213579 2076768 196106606 152314280 700560235 577673184 429277230 859168292 430284321 509370562 753419354 812414090 334299650 938456692 32806834 543865019 455539394 579757115 462762217 527595027 753419354 27735709 367026304 387703244 538810384 130160246 757850417 246221518 857535330 687055288 101231409 462394151 896571061 991615550 723661847 98231977 28363157 588034909 748408317 786320493 910850066 207442482 740340897 78775552 302151126 607760956 888553258 456137963 650990283 676975489 735696627 531135820 358401766 451521521 295606018 970911538 922706719 79509313 53226850 735710261 306258744 172894131 31615284 247822207 746992914 506178629 583924389 334211676 696443558 775682536 203331888 252962990 261683638 727245017 60750487 806744033 740882715 328764419 992001870 616796881 763431295 130160246 247006479 360743135 21190596 831241130 514650194 488788762 387176309 63192647 776820092 942899938 771321738 978947655 296305836 943793512 261683638 33511708 72820570 272303478 499057158 388085842 42657625 382904427 154538466 699733109 688577702 55108095 132556595 56927881 598543708 872434540 465697134 972710252 918225489 48746678 900116034 349644605 757815664 902464469 931013644 808838846 295606018 77685914 932584021 213097363 595030753 757709512 499057158 353964006 840075867 328764419 876263470 112090095 807117750 938456692 926044257 155241439 183440003 916956968 931013644 174335822 429277230 121069546 633587956 535533605 944068218 718980624 126695727 866337119 234980621 902464469 757850417 806792339 242028021 509664709 183440003 891279504 247006479 79523589 401452903 764459345 888699423 315297566 617908997 601740259 575023903 330274784 289918211 852755974 770993588 140551765 254203892 494336936 41538784 36265302 991073887 726620654 464130920 983113723 979740237 885353274 190929591 754133002 430101007 112390393 234980621 993091440 679463383 841780337 661321016 136412292 40448245 307060809 683406807 560623000 148087911 317751260 133739154 349644605 261683638 910818482 502849508 458363994 947413305 506178629 931640418 762749463 587469038 972710252 94279561 566125822 804406873 573480571 918225489 771803404 228290502 119279869 850386354 527595027 135975430 744008188 922706719 535533605 206036522 114409323 567343883 582273012 140129038 282751746 242530683 313272965 610834602 314069534 546679009 215289803 567343883 10369081 783513992 888259120 788737791 396138845 921198791 581831913 931086800 527595027 843005594 174862116 156817178 727245017 735696627 413592826 597206610 32954995 152243323 632378665 363976852 287768226 920721173 87392830 548748527 393120342 13112382 776835194 28363157 630629857 709613471 582273012 396806189 635302209 753419354 625664180 465697134 29473993 595030753 858040709 931966477 464444922 927806038 697742034 136384659 5299425 570764323 570796148 888553258 451551269 456956861 984047482 921198791 793291205 488295044 159828635 797746066 620243558 306607837 939725993 610447918 573480571 123073176 449022331 64420967 283321520 275349681 638790258 533455280 907721720 857535330 19715614 888699423 662972501 135975430 699230813 131323888 376448548 499057158 179981178 595030753 625664180 835339516 441621000 322974842 650036494 637939784 874297853 43970470 285947848 289918211 215289803 721418370 647733367 328462418 516175014 814662325 942899938 626833449 702745028 602396426 515426984 687988023 960796073 93478833 548964093 757815664 955730659 702364434 885353274 465697134 687055288 261683638 441621000 931640418 718980624 430284321 995876182 366854683 307060809 13112382 620243558 295606018 592981604 740340897 566125822 512614298 859168292 586446680 656191811 32806834 579757115 954677909 737945381 344620844 616057762 740340897 597784477 921198791 337153847 827311105 250832323 117931902 511277493 428572243 138442062 931013644 676975489 788737791 507016471 931013644 842970782 533864165 944573659 457149478 315297566 23262398 330205547 618542887 735710261 304621545 993091440 375066210 353964006 444897967 543865019 547547687 361002681 780870754 841780337 42657625 250885472 138393155 342116147 354807942 907095826 286037808 476912096 681930584 27735709 193648030 522332929 396743027 815123402 228290502 248642173 43970470 968670974 691982506 762749463 230662076 264100442 927806038 87392830 783513992 960796073 148087911 485509833 603931167 641231120 99294732 179991869 840130613 88335614 950497221 38085353 219054502 494336936 922706719 296751278 654830523 850484222 154538466 841780337 814295984 838803091 641635851 485509833 163769090 24089615 234980621 37275245 344876805 852107700 885549757 571019028 28363157 566554997 98287438 400218902 710224239 349644605 922858580 689757867 931966477 179981178 917452919 459452716 292149520 66490779 424594759 267829614 331638088 858040709 600441802 787269565 484158080 618355033 328462418 853170454 533455280 226492467 860377902 478892468 945394518 485262404 308142020 853903669 982416551 746394036 103669472 764459345 271484655 496698204 201717402 241184545 830619816 443960759 208625324 63192647 136384659 602832600 645094664 829983432 745200166 498045048 484158080 682170984 913521589 786320493 982416551 207442482 533455280 361002681 678884863 315297566 802009078 48746678 661321016 498045048 807117750 163229392 878442641 940381563 142903358 808614164 518384931 702745028 592639233 49614749 488295044 494336936 751925989 942866882 788737791 708094860 703514531 78775552 591292508 795472528 600441802 682170984 293192373 718980624 50241607 390275103 49317804 264100442 876263470 557710104 152523810 902464469 896571061 452156279 710224239 916956968 361435434 932715562 448262245 635302209 99294732 885647994 429277230 559957428 261683638 509370562 814662325 852755974 40448245 315297566 425392410 299462930 740882715 556619020 344620844 494336936 602396426 866337119 923927991 902464469 760370490 656191811 885995802 485509833 982353486 288873549 334299650 441621000 857535330 787269565 887794841 964902255 722768643 835198840 623398671 334932282 202477791 317751260 464130920 403519778 838331644 106790696 619842427 448881532 931640418 342116147 705304879 852107700 98287438 713146141 1926282 376448548 478351140 246058339 247841801 232177196 685702028 207844781 773781000 462394151 885995802 282751746 296305836 624819674 702364434 836376015 366854683 136412292 803588261 735891721 551289217 571019028 949084393 589760538 53525809 570796148 545538425 984047482 1926282 588034909 425392410 485262404 94279561 399037712 773781000 446968233 562773407 313272965 138393155 226492467 843005594 496698204 31215478 916956968 278160655 858798711 946612927 754133002 29069209 699733109 958668995 130160246 623398671 571019028 567948101 174335822 921198791 938705675 738612855 625664180 824770361 960543625 653201202 209497607 53525809 349644605 471393875 739696834 151506993 36055646 927806038 112390393 275202504 546141085 412979540 352092606 264408147 298050322 142903358 625664180 261683638 496698204 82689280 36265302 299113502 79523589 923927991 327773233 568104980 175060805 502849508 749497174 103733806 38304068 183440003 249670598 630775839 571019028 540976336 535533605 41538784 778123726 778074990 983373150 99294732 656191811 489130642 182214511 219054502 475344103 547547687 870201182 626932919 925555858 480361743 891279504 598426014 667313812 814295984 718980624 753419354 866337119 163769090 539035187 553191189 711455867 361435434 925555858 562773407 557710104 709613471 220576148 490344724 708046990 94279561 250832323 581063820 249670598 893019475 140551765 746992914 397928982 567774282 674446970 489130642 787269565 885549757 694954883 654830523 140725908 425392410 885353274 268759041 516175014 954227928 543865019 190929591 130160246 152866011 638790258 917452919 573480571 154538466 726950461 679463383 437743643 931640418 726620654 966683628 87392830 40656291 674446970 722768643 587179274 201717402 764459345 956815883 556619020 211958450 965948435 67700412 650036494 93651148 437743643 148087911 589760538 554222239 145885851 412979540 307060809 746092812 49614749 322974842 522332929 292696118 458290565 471393875 49948206 712346140 81553943 922706719 885353274 489612980 81553943 266213579 577673184 498840912 213097363 936312210 699733109 954677909 307403622 261683638 4519262 135975430 955730659 228290502 934824360 640849273 764116955 430088921 641231120 151364594 581831913 738612855 831241130 954227928 981996224 753419354 458363994 38338132 117210451 433686203 715957434 408395896 38304068 64420967 342116147 769327548 77685914 628523361 835198840 538810384 226492467 129724737 299994808 264750083 288072509 93651148 81337657 117931902 546141085 941586175 713146141 653201202 667844649 600441802 300892929 219054502 155241439 602396426 531333917 554222239 163229392 824770361 838803091 151506993 225771141 575023903 836376015 751925989 629101079 292696118 836376015 354807942 960543625 478351140 767187616 940188502 330274784 513440742 338929165 82689280 396138845 538810384 264100442 855636134 697742034 502849508 250885472 637657473 283321520 776820092 267829614 24188768 852755974 950497221 458156391 770594967 607041944 710224239 77685914 485153920 174335822 703490607 175507355 550336314 641231120 619842427 972710252 783513992 506919968 645094664 19911869 705304879 232177196 308142020 400178823 117931902 711455867 662421393 376448548 80415088 60017144 994877696 27735709 862254110 2076768 177689820 488788762 917452919 134971740 363976852 851759377 788737791 485063015 585165457 310726569 490344724 984047482 685702028 997329398 67831588 993091440 645094664 698320352 457149478 140551765 567343883 404152565 773781000 514768035 806664207 852604705 911302173 572465104 559014304 627110568 23262398 117210451 40656291 616796881 153196022 478892468 145559297 313272965 407510599 60017144 721418370 942866882 103669472 509370562 545538425 874297853 795549341 702745028 308142020 264297813 918225489 298050322 661321016 963141978 201717402 175060805 931966477 324129364 661321016 727245017 553368896 778123726 778074990 522663253 770993588 638790258 816971086 337153847 32075030 205387898 710224239 449022331 982353486 128450928 208625324 744008188 42657625 781246194 38844979 390275103 152523810 195733178 177689820 570796148 740882715 137529801 152523810 962430008 769327548 520071928 780870754 795472528 457149478 761330904 43970470 315297566 237389399 452156279 115090276 53195413 412979540 812044550 254203892 505061211 464130920 628820972 617908997 841780337 771321738 4519262 738855203 601740259 23973553 573480571 478351140 744008188 254203892 218611070 888699423 698320352 542382913 163229392 721418370 623206361 195957995 252792947 361435434 448881532 705304879 509664709 876868627 782533040 900796599 170938835 904771946 812044550 570764323 732559957 663971090 668964848 704431513 145885851 577970627 114409323 795549341 516175014 581063820 776835194 23262398 884952974 953882020 997329398 745200166 378961655 53525809 884952974 695599688 754133002 719307635 79509313 946612927 589760538 595030753 119279869 269911067 193515742 955501918 485262404 422532994 560327459 882364001 400178823 53525809 209497607 269911067 577673184 525347105 810021050 878442641 226492467 710224239 511277493 932584021 382210484 567343883 400218902 133739154 874297853 788737791 739696834 302151126 566554997 857535330 983113723 538025980 708046990 956815883 981996224 444897967 433921335 887794841 522663253 770594967 459617527 430088921 592981604 851400664 960796073 518384931 527595027 367026304 413592826 592639233 458363994 975337465 792846009 814295984 396632533 538810384 854243215 553191189 272303478 688577702 859168292 876868627 815123402 545538425 68748842 1926282 761330904 923927991 143200457 954227928 287239117 40448245 597784477 591292508 721769014 814662325 330274784 771321738 159828635 242186770 557710104 929504680 146573202 585165457 315343704 640849273 907721720 945394518 630629857 816971086 119279869 32806834 507016471 396050095 625664180 876263470 535533605 630775839 256866745 900116034 299462930 254203892 835198840 807117750 283321520 862177563 925555858 489612980 560623000 773781000 566554997 831467447 771803404 967417280 225771141 703514531 376448548 585165457 190323279 264750083 697742034 190979155 978947655 946612927 732559957 80415088 841210236 562773407 836376015 715779797 940381563 597206610 729868696 94279561 29473993 490344724 841780337 738612855 1736950 769327548 338312978 637769046 403519778 628523361 462394151 911302173 887548285 900116034 376448548 982370833 485063015 570764323 187104147 663670886 10369081 190979155 882804101 40448245 786320493 209789164 577673184 568104980 55018341 705548145 112390393 396050095 934824360 896571061 426814174 887794841 315297566 305990981 969494113 533455280 509664709 831467447 762749463 77819776 860708299 396050095 207844781 290117216 789617647 595030753 2076768 545538425 656191811 492009082 860708299 299113502 792846009 326469359 175060805 876263470 413592826 550336314 859168292 956815883 573449906 803588261 884952974 539957336 812414090 425392410 526944836 211958450 369306500 425392410 767187616 592639233 325554372 465697134 953267424 295366548 152314280 703514531 516175014 827311105 889608806 24188768 934824360 542382913 458363994 760370490 702745028 774489082 997329398 82689280 582273012 196106606 727245017 462762217 252962990 32075030 287239117 757850417 215052415 884072178 817743547 846351340 527595027 723661847 187104147 681930584 520071928 904771946 376448548 489130642 556619020 247841801 902464469 251188854 117210451 704431513 121069546 896571061 66490779 904800517 433921335 210621083 694954883 234980621 938705675 181668423 566125822 266213579 851829959 540394532 165821462 763431295 186244437 462762217 264100442 251042004 225858850 927806038 516175014 344876805 812414090 407510599 556619020 804406873 694954883 538025980 193515742 751925989 167276070 696443558 19911869 797746066 387703244 15037608 262406489 598426014 943235508 211958450 682170984 678884863 581831913 885549757 854243215 661321016 247822207 567343883 458363994 153196022 506919968 153196022 656191811 814295984 449022331 553191189 698320352 275349681 726950461 876868627 981996224 545538425 531333917 230662076 60017144 753419354 526944836 804406873 464444922 994877696 352092606 854969794 186244437 931013644 396937914 38338132 287239117 244528344 968755777 700560235 288873549 736624310 299994808 640849273 560327459 920721173 787269565 40448245 721769014 138393155 697742034 407629453 300892929 186285312 478892468 633587956 328764419 264408147 817743547 982353486 140551765 915330573 207442482 286037808 722013570 862254110 968755777 299113502 35128915 947413305 557710104 271484655 942899938 814662325 390793037 570764323 781242822 98287438 136412292 190929591 963141978 660765062 81553943 760370490 215052415 31215478 282751746 604968568 19715614 638516505 498045048 854902633 175060805 567948101 962430008 151364594 424974082 237389399 130160246 344876805 172382592 586370291 607965234 195957995 19715614 181668423 485262404 703514531 334211676 598426014 708053570 950497221 678474526 123073176 556619020 326469359 627110568 840075867 627110568 802009078 750750593 151506993 968670974 484158080 771803404 982353486 456137963 864016134 19911869 332834875 458290565 567774282 983373150 675472009 641231120 448262245 722013570 430101007 618355033 538025980 225858850 125204206 806744033 806664207 352092606 215977916 789617647 721418370 213097363 628523361 5299425 590208882 702745028 982370833 972710252 850386354 787269565 745200166 130160246 387176309 165821462 358401766 749497174 628523361 697742034 242530683 140551765 679463383 750750593 688534928 579757115 835339516 446968233 559014304 53966525 514650194 388085842 626932919 38304068 893019475 218611070 430284321 989729323 946916156 732559957 206036522 808838846 770594967 220576148 586446680 53966525 174140940 15903366 94279561 140551765 109369069 676975489 626932919 721769014 275202504 152314280 738855203 38085353 969294148 376448548 855636134 2575238 98287438 10369081 115509283 866568903 190929591 246058339 722768643 134971740 367026304 632378665 548748527 359714925 722768643 767839638 945394518 682170984 797746066 764116955 117931902 918521256 947413305 207844781 428572243 182214511 1926282 51457589 47290536 315343704 809429735 136412292 215977916 196460706 363976852 507016471 920628541 810021050 703490607 938080232 705304879 726620654 270237875 170938835 926045944 403519778 193648030 376448548 804406873 965948435 432089082 170941326 38844979 68748842 703490607 187104147 32075030 266583970 763431295 557710104 590208882 51457589 860477160 509664709 259646582 266583970 215792516 282751746 745200166 543865019 840075867 995876182 967417280 451521521 266213579 252962990 190929591 790270533 115509283 737945381 53226850 607760956 109369069 215052415 783513992 287239117 257214051 896029805 702364434 960543625 242028021 981996224 748408317 635302209 900116034 835212499 595030753 87392830 770594967 782533040 862254110 641231120 311613451 699230813 80415088 910818482 923927991 437743643 328462418 767839638 709613471 793291205 583924389 134801439 857535330 624819674 581063820 808838846 518384931 159828635 830619816 488788762 931013644 557710104 39220584 2575238 136384659 19911869 953882020 983373150 921198791 49614749 807117750 87392830 640849273 162904272 949084393 539035187 43970470 885141769 266213579 485509833 303230482 35128915 660765062 15903366 765027062 853170454 994877696 636434256 553191189 962430008 633587956 52243955 275349681 506178629 67831588 311808379 215774690 403519778 332834875 539035187 837690635 251367294 663971090 307403622 590208882 870201182 604968568 829983432 882364001 732245352 39220584 686884353 492009082 718980624 424594759 296751278 591292508 620243558 244528344 106790696 128702236 910818482 623398671 485063015 553191189 607760956 654830523 264100442 538025980 140725908 422532994 315343704 831467447 400218902 553191189 607041944 412979540 140551765 947413305 841210236 10475035 625664180 688534928 88335614 40448245 757709512 67700412 885141769 745200166 788118407 396806189 750750593 306607837 369306500 598543708 581831913 465759767 2575238 788737791 134801439 763431295 786320493 126695727 509664709 864016134 4519262 305068796 7807006 910850066 359859765 358401766 325554372 913521589 452156279 740882715 686884353 921198791 515426984 547547687 972710252 215792516 172382592 489612980 573480571 802009078 942866882 837690635 979750308 196106606 938080232 586370291 722013570 140129038 310726569 407510599 543865019 38844979 29473993 632014852 252962990 247221668 550322314 539381059 315343704 292972503 771803404 28363157 27735709 247221668 997329398 623398671 143200457 292149520 288072509 949084393 767839638 412979540 433921335 650990283 835198840 874124920 237172271 242186770 187104147 438183310 940381563 640849273 509019925 401452903 587179274 862254110 485063015 145559297 196460706 831467447 793291205 64420967 252962990 464130920 448881532 878442641 193515742 242530683 175507355 128702236 516175014 548748527 554242697 471393875 836376015 617908997 404152565 910850066 143200457 152866011 394791153 429277230 56927881 992001870 55018341 754580366 851759377 917452919 778123726 117931902 635302209 931966477 891279504 917452919 215052415 99294732 910818482 31615284 225771141 585165457 424974082 857535330 592981604 163769090 103219970 321628921 330205547 610834602 334932282 745200166 618355033 162062292 315297566 618542887 51457589 860377902 338312978 366854683 456137963 115090276 983113723 597206610 352092606 567343883 276676140 133739154 313272965 786380583 121069546 850386354 338631458 98287438 485262404 408395896 943793512 991073887 842970782 575023903 226492467 982353486 485509833 921198791 413592826 572588387 134801439 946916156 932715562 481894295 306597948 748408317 885000402 807117750 175060805 705304879 932715562 367026304 806744033 527654256 262406489 433686203 727827821 408395896 327773233 306607837 557710104 401452903 522332929 931013644 607760956 917795074 850484222 982416551 452156279 703514531 902464469 685702028 324129364 969294148 628820972 311613451 38085353 685702028 299994808 289918211 781246194 652018277 252792947 597206610 315343704 42657625 337153847 736237188 464444922 190929591 451521521 60750487 237172271 214650974 396632533 43970470 223299794 259646582 382210484 799588075 215289803 778074990 548964093 918225489 287768226 151506993 573480571 851400664 762749463 115090276 943235508 98287438 793291205 846351340 750978759 683406807 205387898 601630030 522332929 274113481 641231120 396743027 426814174 538810384 778123726 128188331 853170454 886917295 251367294 893019475 390275103 481894295 539035187 539381059 888259120 43970470 531333917 136384659 47349911 289918211 571019028 417074904 4519262 363976852 656191811 145559297 721769014 660095934 68748842 915330573 160287690 723661847 20148474 151364594 589760538 351424753 699230813 99294732 916956968 801623766 463496366 103733806 729868696 660095934 520071928 23262398 437743643 938140278 462394151 884059813 829614460 630775839 205387898 247221668 853170454 183440003 808614164 650697444 708094860 969294148 566125822 539381059 726620654 136384659 399037712 331638088 163229392 53525809 342116147 918225489 788118407 407091770 399037712 958668995 264100442 306258744 396937914 387176309 359714925 93651148 462394151 117931902 246058339 814662325 907721720 709613471 359859765 268759041 160287690 709613471 250885472 481894295 359859765 654830523 307403622 115509283 49614749 953882020 859168292 695599688 604181881 123073176 109054120 757815664 53195413 938140278 334211676 751925989 721769014 575023903 81553943 663971090 850484222 540394532 978947655 354807942 781246194 877167702 128450928 401452903 427184372 151506993 314069534 448262245 587179274 695599688 507016471 412979540 19715614 99294732 456137963 884059813 588034909 801623766 526944836 60750487 515426984 751925989 60017144 354807942 872434540 275349681 19911869 931640418 694954883 6720560 566554997 77819776 88335614 247221668 762749463 900796599 817743547 177689820 597784477 481894295 764116955 567948101 393120342 23262398 388085842 266213579 106790696 945394518 638790258 430284321 163229392 215977916 782533040 328462418 256866745 675472009 456137963 917795074 960796073 274113481 175507355 82689280 2076768 604968568 485509833 577970627 859168292 675472009 781242822 133739154 729868696 554222239 771803404 661321016 352092606 913521589 550322314 433686203 667313812 814295984 697742034 678884863 566125822 304621545 592981604 862254110 874297853 432089082 459452716 38844979 205387898 917795074 942866882 770594967 53966525 886917295 918521256 326469359 604881661 298727845 543945175 938140278 568142039 736624310 683621666 326469359 750978759 125829791 207442482 623398671 628820972 407629453 795472528 610447918 907095826 24188768 623206361 769327548 441621000 430088921 296751278 259646582 697742034 913521589 338312978 40656291 749497174 244528344 962430008 354807942 175060805 490344724 792846009 38338132 514768035 412979540 628820972 540394532 810021050 562773407 112390393 251042004 968670974 950497221 35128915 153196022 678474526 321628921 604881661 257214051 160287690 600441802 702745028 736237188 56927881 904771946 250832323 947413305 632378665 462762217 458363994 15037608 548964093 286037808 792822959 904800517 715957434 344620844 140551765 289918211 938705675 533864165 613596687 532803593 353964006 662421393 782533040 138393155 792822959 771321738 256866745 344620844 451551269 831467447 996943901 21190596 314069534 751925989 175060805 617908997 452156279 50241607 494336936 269911067 732245352 705304879 36265302 945394518 835212499 214244685 937158597 918225489 842970782 660095934 829614460 857535330 800460688 292972503 376448548 545538425 387703244 74587532 446968233 47290536 451521521 242186770 288873549 641635851 607965234 254203892 387703244 72820570 620243558 982416551 722013570 630775839 699230813 874124920 835212499 545538425 400218902 858127225 317751260 654830523 249670598 950497221 505061211 351424753 287239117 840130613 81337657 837690635 744008188 592639233 708046990 884072178 106790696 802009078 907095826 367026304 667313812 361435434 992169078 305068796 285947848 512614298 174862116 211958450 40131409 938140278 963141978 305068796 334211676 152866011 912948600 64420967 55108095 542382913 607760956 918225489 907721720 145559297 296751278 904800517 324129364 830619816 577673184 331638088 20148474 424594759 733642252 857535330 758889515 757850417 589760538 540976336 485509833 661321016 195019158 835339516 485509833 904771946 866337119 700560235 981996224 512614298 808614164 67831588 711455867 926045944 404152565 610447918 404152565 843005594 708094860 73848009 937158597 638516505 52243955 753419354 509019925 696443558 907721720 78649514 56927881 814662325 852604705 626932919 462394151 39220584 969494113 455539394 225858850 546679009 686335042 969294148 79523589 915330573 771803404 885549757 250832323 610447918 159828635 581063820 66490779 407629453 463496366 581063820 636434256 298727845 246058339 776352608 969494113 532803593 568142039 228290502 689757867 803588261 934824360 94279561 812414090 214244685 850484222 53525809 910818482 803588261 134801439 24188768 522332929 358401766 587179274 860377902 516175014 754580366 698320352 407629453 531135820 685702028 656191811 595030753 993091440 132556595 641231120 681765297 554242697 545538425 727578179 268759041 925555858 893019475 55018341 344620844 250749017 876868627 63192647 786380583 732245352 93478833 831241130 94279561 143200457 31615284 498045048 770864525 727827821 953882020 237172271 653201202 313272965 151364594 342116147 163769090 993091440 47290536 851759377 32806834 136412292 837690635 526944836 290117216 942899938 688534928 459452716 428572243 1736950 498840912 408032939 640849273 143200457 305068796 378961655 900796599 310726569 662421393 306597948 56154381 170941326 814295984 790270533 251188854 209497607 396743027 780061015 478351140 247822207 936312210 746394036 264408147 437743643 760370490 174335822 660765062 215052415 539381059 478892468 247006479 288873549 42657625 205387898 814295984 744008188 83066601 853903669 444897967 842970782 954677909 40131409 946916156 109054120 936312210 775682536 760370490 764459345 60750487 788118407 585165457 978947655 610447918 49948206 31615284 170938835 244528344 285947848 674485068 404152565 562773407 885353274 24188768 55108095 679463383 360743135 982353486 607760956 922858580 252962990 540394532 393120342 585165457 287768226 887794841 630238886 286037808 858798711 763431295 750978759 56154381 334211676 814662325 396632533 251188854 163229392 32806834 360743135 656623172 592981604 465759767 288873549 645094664 247822207 920628541 618355033 757815664 167276070 270237875 136412292 32075030 527595027 840130613 912948600 366854683 806744033 652018277 682170984 38338132 437743643 695599688 267829614 619842427 399037712 430088921 539035187 305068796 943235508 949084393 400178823 295606018 98231977 633573519 205387898 581063820 24089615 129724737 522332929 814295984 607041944 289918211 145885851 322974842 938705675 202477791 462394151 652018277 687055288 83066601 668964848 289736829 968670974 10475035 664041213 215774690 172382592 703490607 943235508 274113481 656191811 735696627 81337657 824770361 686335042 751925989 299462930 740882715 572465104 953882020 193515742 489130642 462394151 911302173 780061015 827311105 509144872 128188331 888259120 533864165 682170984 23973553 98231977 932584021 264297813 703514531 970320952 293192373 708046990 485153920 806744033 478351140 550322314 797746066 841780337 499057158 514768035 292696118 359714925 275202504 394791153 153196022 715957434 455539394 632378665 547547687 708046990 687988023 776835194 195957995 174862116 498840912 800460688 896571061 767839638 637657473 885647994 850386354 511277493 247006479 522332929 550336314 587179274 533455280 543865019 203331888 4519262 186285312 121069546 115090276 78775552 860377902 607760956 955501918 36265302 489612980 810021050 438183310 81553943 982353486 808838846 1926282 360743135 719307635 912948600 585165457 250885472 21190596 205387898 619842427 955730659 885995802 711455867 884072178 488788762 190979155 546141085 886917295 165821462 292696118 582273012 938140278 352092606 539957336 808838846 480361743 485063015 270237875 792822959 878442641 187104147 640925332 494336936 366854683 602832600 128702236 143200457 375066210 138442062 140129038 543945175 637939784 328764419 975337465 566125822 533864165 993091440 695599688 887548285 710224239 338312978 533455280 24089615 99294732 247822207 151506993 298050322 746092812 209497607 926044257 625664180 1926282 509370562 64420967 719601437 640849273 874297853 600441802 764459345 971894015 53966525 567343883 942866882 247221668 136412292 575895835 795472528 254203892 2076768 513440742 2076768 540394532 282751746 513440742 852107700 958668995 960796073 740340897 485509833 186285312 808614164 154538466 981996224 745200166 757709512 72820570 757709512 877167702 138442062 53226850 656191811 955501918 35128915 765027062 237172271 877167702 114409323 512614298 488788762 597206610 531135820 944068218 838803091 292696118 288072509 128188331 138442062 626932919 63192647 757850417 404152565 736237188 812414090 816971086 509370562 396806189 808614164 133739154 288072509 802009078 910818482 763431295 338631458 958668995 817743547 77819776 522332929 630201811 53966525 152618584 393120342 284588557 10369081 814295984 965948435 770993588 382904427 705304879 641231120 641635851 604181881 931086800 726950461 481894295 175507355 602396426 448881532 846351340 232177196 893019475 37275245 885995802 106790696 595030753 342116147 64420967 35128915 586370291 955730659 247006479 53966525 702364434 152314280 638516505 727827821 162062292 647733367 595030753 49614749 900116034 990121035 80485362 87392830 72820570 780061015 746092812 806744033 219054502 775682536 802009078 32954995 478351140 689757867 289736829 983373150 661321016 288873549 687988023 842970782 214650974 404152565 444897967 607760956 799588075 506178629 74587532 992169078 202477791 396937914 151364594 782533040 215981255 937158597 10475035 885353274 135975430 20148474 32806834 597784477 797746066 641231120 417074904 36265302 804406873 485063015 941586175 342116147 215977916 49614749 553368896 314069534 228290502 287768226 290117216 587179274 887794841 790270533 438183310 38085353 900116034 165821462 722768643 781242822 585165457 874297853 431406787 276676140 663670886 459452716 595030753 546141085 923927991 624819674 774489082 20148474 801623766 98231977 23973553 515426984 958668995 300892929 39220584 601740259 131323888 624819674 230662076 1736950 254203892 49948206 855636134 250832323 10475035 226492467 918225489 543865019 242530683 842970782 663670886 252792947 538810384 732559957 289736829 209497607 251188854 509019925 242028021 620243558 587469038 817743547 801623766 437743643 488295044 853903669 931966477 47349911 628523361 250885472 855636134 498045048 32075030 172382592 938140278 960796073 994877696 130160246 745200166 38304068 946916156 590918818 982416551 251367294 201717402 940381563 955501918 604181881 290117216 485509833 585165457 128450928 966131311 991615550 304621545 328764419 927806038 109054120 921198791 896029805 542382913 607041944 489612980 560327459 637657473 727245017 481894295 896029805 332834875 160287690 567774282 36055646 936312210 88335614 407629453 866337119 705304879 841780337 128188331 625664180 840075867 175507355 548748527 81553943 795549341 338312978 850386354 968670974 738855203 635302209 533864165 413592826 553191189 776835194 136384659 287768226 630775839 307060809 885549757 968670974 115090276 7807006 367026304 505061211 900116034 806792339 838331644 437743643 695599688 543865019 31615284 629101079 132556595 942899938 922858580 136412292 695599688 853170454 257214051 55108095 152618584 300892929 328462418 750750593 597206610 992169078 904800517 353964006 56154381 588034909 687988023 87392830 29069209 403519778 328462418 910818482 23973553 360743135 904800517 443960759 637939784 458363994 202477791 49614749 992001870 140725908 425392410 40131409 754580366 360743135 966683628 56927881 305068796 771803404 920628541 789617647 72820570 494336936 814295984 207442482 922858580 179981178 407510599 338929165 650697444 781246194 854902633 744008188 760370490 841780337 174140940 955730659 687988023 546141085 814295984 287239117 215774690 288873549 864016134 829983432 115090276 478892468 326469359 342116147 650697444 478892468 640849273 997329398 710224239 79523589 444897967 87392830 921198791 726950461 451817798 49614749 511330454 140725908 757815664 708053570 946612927 902464469 514650194 464444922 751925989 459617527 700560235 953267424 53226850 789617647 719307635 424974082 125829791 266583970 538810384 737945381 142903358 885000402 190929591 560327459 152243323 539035187 770993588 49948206 542382913 165821462 685702028 109054120 885549757 618355033 652018277 787269565 860477160 252792947 455539394 376448548 736624310 702745028 47290536 170938835 623398671 337153847 6720560 719601437 351424753 852604705 138393155 546141085 148087911 938705675 547547687 179991869 683406807 300892929 485153920 970911538 740340897 592981604 736237188 376974209 931640418 727827821 214244685 872434540 601630030 527595027 268759041 287239117 344620844 885000402 151506993 995876182 585165457 744008188 40656291 776835194 464130920 792822959 683406807 40131409 306607837 972710252 465759767 981996224 630201811 27735709 208625324 307403622 843005594 175060805 878442641 719601437 850386354 448881532 539957336 749497174 799588075 267829614 228290502 918521256 661321016 854243215 234980621 601740259 705304879 506919968 152523810 722013570 604968568 955730659 554222239 762749463 874124920 522332929 956286779 656191811 23973553 446968233 650990283 579757115 719307635 955730659 259646582 836376015 876263470 4519262 306607837 342116147 270237875 978947655 74587532 636434256 484158080 527595027 982416551 870201182 931640418 458363994 203331888 838803091 696443558 459452716 268759041 526944836 126695727 560623000 637939784 449022331 38844979 311808379 942999703 338631458 181668423 592970093 600441802 963141978 532803593 601740259 151506993 32954995 228290502 546141085 678884863 686335042 587469038 7807006 926045944 311808379 93478833 573449906 809429735 746394036 696443558 220576148 80485362 953267424 942999703 573480571 518384931 174335822 15037608 842970782 457149478 459452716 568104980 327773233 904771946 616796881 259646582 307060809 626833449 232177196 202477791 400218902 547547687 19911869 886917295 237172271 944068218 145885851 21190596 995876182 518384931 810021050 921198791 812414090 471393875 405444604 837690635 338929165 503666498 376448548 538025980 543865019 206036522 262406489 681765297 433921335 900796599 371179314 417074904 758889515 851400664 232177196 351424753 806792339 591292508 298050322 326469359 36265302 396050095 981996224 831467447 866568903 776820092 887548285 874124920 382904427 417074904 36055646 994877696 282751746 129724737 882804101 773781000 776835194 885549757 767187616 774489082 683621666 151364594 955730659 540976336 485262404 132556595 403519778 850386354 573449906 73848009 342116147 177689820 19715614 275349681 509144872 234980621 506919968 83066601 836376015 546679009 757709512 705548145 860708299 489612980 992169078 152243323 885353274 803588261 449022331 542382913 806744033 31615284 250749017 559014304 134801439 42657625 452156279 590208882 885000402 922858580 715957434 407091770 38304068 674485068 138442062 257214051 128450928 488295044 498045048 271484655 732559957 311613451 623206361 464130920 449022331 211958450 647733367 542382913 361002681 396743027 81337657 80485362 451521521 538810384 349076114 481894295 815123402 268759041 812414090 67700412 955730659 814662325 145885851 738612855 993091440 900796599 349644605 135975430 37275245 748408317 60017144 683406807 566125822 125204206 548964093 910850066 47529701 209789164 989729323 152618584 715957434 917795074 729868696 681930584 250885472 511330454 939725993 533455280 223299794 471393875 762749463 361435434 589760538 190979155 174862116 6720560 664041213 290117216 494336936 242530683 719601437 857535330 449022331 196106606 588034909 687988023 888259120 927806038 902464469 540976336 311808379 94279561 866568903 929504680 688177128 691982506 620243558 438183310 570796148 489130642 32954995 610447918 443960759 354807942 841780337 876868627 121069546 738855203 433921335 490344724 996943901 771321738 624819674 103669472 287239117 152866011 968670974 878442641 516175014 387176309 349644605 408395896 29473993 462762217 667844649 488295044 711455867 271484655 5299425 831467447 835198840 830619816 910818482 396050095 539035187 40448245 667313812 674485068 475344103 254203892 324129364 941586175 624819674 303230482 698320352 808866527 209497607 911302173 514768035 251042004 315297566 630201811 505061211 13112382 250885472 748408317 155241439 567774282 32954995 219054502 942899938 874124920 750978759 31615284 388085842 681930584 506919968 831467447 775682536 462762217 942866882 126695727 851759377 751925989 207844781 746992914 758889515 736237188 27735709 743614603 527595027 430101007 378961655 567774282 37275245 210621083 388085842 702364434 795472528 457149478 983373150 893019475 262406489 896571061 376448548 858127225 940381563 425392410 694954883 295606018 548964093 786380583 887548285 215977916 858040709 944068218 616057762 830619816 117210451 774489082 2076768 412979540 749497174 617908997 829614460 888553258 831380531 702364434 735710261 123073176 776835194 824770361 815123402 527654256 78775552 751925989 937158597 539381059 163229392 60750487 726950461 550336314 136412292 855636134 735710261 600441802 342116147 740882715 726950461 982370833 792822959 660095934 535533605 77819776 376448548 208625324 817743547 407510599 393120342 888699423 750978759 211958450 7807006 774489082 689757867 498840912 767187616 918225489 925555858 328462418 872434540 484158080 264297813 929504680 607041944 115090276 172382592 703514531 165821462 969294148 349076114 600441802 808614164 115090276 838803091 904771946 264297813 444897967 143200457 754580366 408032939 803588261 509144872 82689280 63192647 270237875 613596687 637657473 36265302 98287438 459617527 769327548 306597948 181668423 315343704 396743027 689757867 366854683 636434256 719307635 568142039 562773407 674446970 292149520 494336936 289736829 835212499 125204206 283321520 633573519 77685914 299113502 390275103 511330454 889608806 358401766 361002681 572588387 962073361 900796599 792822959 80485362 943235508 723661847 727578179 94279561 866337119 15037608 990121035 485153920 193515742 840130613 664041213 590208882 910818482 637769046 509370562 915330573 19715614 753419354 495854210 679463383 896072909 771321738 726950461 83066601 359714925 563678994 207442482 363976852 668964848 433686203 800460688 850386354 506178629 703514531 944573659 633587956 592970093 944068218 446968233 887794841 88335614 451817798 488788762 886917295 522332929 597206610 250749017 547547687 314069534 678884863 7807006 485153920 694954883 465759767 776835194 783513992 47349911 904800517 698320352 551289217 942866882 438183310 918521256 864016134 852604705 884059813 940381563 946612927 978947655 268759041 262406489 43970470 443960759 131323888 232177196 691982506 441621000 835339516 515426984 840075867 571019028 478351140 51457589 286037808 287768226 514650194 579757115 465759767 388085842 455539394 944573659 862177563 543945175 626833449 287239117 806664207 835198840 181668423 81553943 688577702 566125822 938140278 137529801 208625324 548964093 610447918 437743643 302151126 288072509 617908997 2575238 47290536 387703244 275202504 735710261 712346140 662972501 633573519 250885472 215792516 630977998 428572243 175060805 306607837 550322314 311613451 737945381 29069209 907721720 802009078 112390393 101231409 872434540 610834602 885647994 125204206 130160246 525347105 836376015 774489082 526944836 967417280 630238886 797746066 498045048 687988023 664041213 50241607 560623000 645094664 267829614 186285312 789617647 242530683 38085353 950497221 382210484 344876805 858040709 278160655 443960759 296305836 195019158 628523361 560327459 271484655 678474526 123073176 851759377 884072178 390793037 542382913 36055646 604968568 792822959 502849508 989729323 270237875 965948435 138393155 896029805 361435434 866568903 215774690 264100442 874124920 112090095 538025980 851759377 712346140 543865019 128702236 485509833 650697444 590918818 190979155 938705675 32075030 960543625 886917295 371179314 367026304 476912096 638516505 397928982 140129038 451551269 215774690 112390393 595030753 330274784 885995802 315343704 98824830 463496366 247006479 616796881 637939784 711532060 801623766 458363994 712346140 616057762 992001870 205387898 214650974 24089615 840075867 792846009 931013644 888259120 448262245 860708299 630775839 793291205 214244685 737945381 857535330 711532060 228290502 338312978 931086800 775682536 809429735 349076114 540394532 24089615 302151126 396937914 770993588 641231120 247234349 170938835 546679009 571019028 275202504 795472528 958668995 55018341 132556595 342116147 396806189 851829959 577970627 793291205 586370291 991615550 396806189 556619020 795549341 448881532 597206610 628820972 255644658 531333917 354807942 955730659 824770361 960796073 807117750 327773233 554222239 829614460 125829791 931005739 918225489 300892929 465697134 498045048 900796599 311808379 695599688 496698204 274113481 121069546 994877696 882804101 94279561 463496366 637939784 145885851 542382913 996943901 854969794 48746678 503666498 907721720 305068796 509144872 538810384 616057762 40656291 896029805 152523810 991615550 290117216 546141085 28363157 276676140 969294148 162904272 992001870 678474526 760231333 694954883 481894295 733642252 538025980 630629857 101231409 172894131 771321738 49948206 630201811 662972501 275349681 870201182 945394518 47349911 771321738 174862116 152866011 495854210 72820570 526944836 266213579 282751746 396743027 587179274 485153920 592970093 93651148 664041213 917452919 311808379 183440003 462394151 776352608 79509313 132556595 718980624 546679009 735710261 882364001 939725993 954677909 795472528 331638088 334932282 299113502 452156279 109369069 287768226 780870754 179991869 251042004 408032939 888553258 53966525 532803593 262406489 485153920 656191811 702364434 400218902 77819776 560623000 23973553 311808379 931640418 138442062 457149478 119279869 15037608 556619020 586370291 628820972 814295984 546141085 396806189 509144872 654830523 604181881 702364434 250749017 850386354 668964848 598426014 237172271 630201811 87392830 954227928 35128915 581063820 699733109 38338132 175507355 485153920 750978759 945394518 134971740 662421393 737945381 358401766 299462930 492009082 209497607 533455280 213097363 835339516 965948435 938140278 571019028 769327548 420636144 598426014 334932282 270237875 249820698 306607837 511277493 830619816 514768035 757850417 866337119 1926282 781242822 254203892 687055288 533455280 983113723 570764323 390793037 806664207 829614460 540976336 789617647 518384931 452156279 93478833 299994808 13112382 338312978 78649514 539035187 251042004 953267424 900116034 715957434 773781000 485509833 705304879 577673184 123073176 990121035 123073176 829614460 32806834 969494113 332834875 627110568 334299650 459617527 196106606 781246194 786380583 795472528 763431295 33511708 40656291 754133002 115090276 140551765 601630030 251367294 293192373 353964006 736237188 397928982 878442641 20148474 760370490 667844649 1926282 866568903 38338132 63192647 938140278 601740259 572588387 251367294 695599688 806744033 305068796 726620654 306258744 656191811 387176309 546141085 878442641 808838846 153196022 689757867 709613471 656191811 49317804 485063015 567343883 342116147 305068796 613596687 806664207 851759377 31215478 688177128 917795074 687055288 577970627 550322314 407091770 136412292 966683628 55018341 780870754 831241130 99294732 632378665 244528344 128450928 125204206 420636144 771321738 907095826 401452903 764116955 696443558 19715614 712346140 955730659 396050095 996943901 247234349 683621666 299113502 249820698 485153920 458363994 64420967 160287690 746092812 588034909 799588075 944573659 653201202 616796881 949084393 618355033 32806834 287239117 259646582 866337119 840130613 250749017 433686203 590918818 366854683 146573202 923927991 396632533 237389399 780061015 862254110 424974082 174140940 916956968 540394532 729868696 915330573 36055646 712346140 452156279 215792516 635302209 533864165 852107700 746992914 815123402 31215478 761330904 211958450 79509313 600441802 328764419 274113481 992169078 638516505 630238886 550336314 699230813 954227928 647733367 193648030 676975489 230662076 145885851 626833449 604881661 946916156 290474734 539957336 925555858 135975430 981996224 660765062 514768035 255644658 36265302 31215478 452156279 740882715 708053570 994877696 699733109 553191189 851829959 938140278 992169078 568104980 978947655 774489082 290474734 691982506 939725993 991073887 387703244 499057158 215052415 587469038 604181881 795549341 531135820 610447918 815123402 32075030 441621000 101231409 546141085 40656291 656191811 776820092 193515742 203331888 2575238 808866527 190323279 858127225 853170454 305068796 509019925 162062292 559957428 660095934 81553943 877167702 991615550 408395896 287239117 308142020 165821462 123073176 872434540 41538784 390793037 966131311 264100442 950673785 689757867 251042004 121069546 331638088 172382592 637657473 526944836 299113502 288072509 751925989 560327459 783513992 376974209 94279561 32954995 408395896 458156391 920628541 566554997 10475035 106790696 512614298 697742034 219054502 68748842 422532994 520071928 499057158 737945381 663670886 179981178 247841801 771803404 598543708 732245352 190979155 939725993 210621083 246221518 247841801 667313812 617908997 776835194 425392410 664041213 653201202 170941326 705548145 808838846 979740237 53195413 293192373 7807006 982353486 10369081 148087911 299994808 540976336 687055288 259646582 746394036 913521589 554242697 795549341 376974209 751925989 587179274 904800517 699733109 40656291 664041213 947413305 775682536 553368896 424974082 24188768 835198840 921198791 572465104 610834602 353964006 719307635 983373150 736624310 307060809 93651148 581831913 358401766 792846009 626932919 557710104 162062292 960796073 457149478 175060805 862177563 866568903 660095934 376448548 595030753 831241130 251188854 146573202 688577702 781246194 31215478 175507355 938140278 965948435 650990283 686335042 971894015 543865019 966131311 327773233 831467447 656191811 843005594 971549242 922706719 117210451 361435434 698320352 351424753 306597948 604968568 937158597 931640418 767187616 683406807 290474734 623398671 299994808 431406787 806744033 490344724 607760956 401452903 250832323 546679009 531135820 115509283 225858850 628523361 195733178 152618584 49948206 438183310 520071928 628523361 953267424 710224239 831241130 538810384 2076768 32075030 209497607 38338132 307403622 292149520 382210484 703514531 708094860 854969794 103219970 133739154 399037712 344620844 145885851 214650974 790270533 645094664 568142039 858127225 781246194 915330573 520071928 563678994 686884353 619842427 851759377 575023903 571019028 214244685 249820698 652018277 923715439 56154381 842970782 456956861 750978759 838655651 515426984 803588261 315343704 926045944 853170454 765027062 266583970 735696627 143200457 183440003 983373150 129724737 506178629 412979540 443960759 719307635 719601437 770594967 488788762 242186770 831380531 674485068 556619020 887794841 618355033 969294148 543945175 954227928 287768226 992001870 800460688 478351140 702745028 247221668 607760956 586370291 858040709 946612927 287239117 773781000 163229392 464130920 989729323 595030753 376974209 685702028 858798711 305068796 884952974 776820092 964902255 148087911 359859765 328462418 739696834 195957995 287239117 292696118 56927881 885549757 77685914 572588387 496698204 710224239 601740259 966683628 163229392 688577702 726620654 773781000 962430008 776820092 991615550 268759041 106790696 688534928 505061211 328462418 400178823 295366548 509664709 132556595 387703244 344620844 978947655 751925989 996943901 513440742 19715614 502849508 656191811 632014852 788118407 53226850 496698204 598426014 715957434 705304879 311808379 539957336 459617527 876868627 330274784 408395896 590918818 681765297 413592826 685702028 726950461 407629453 882804101 540394532 195733178 656623172 174862116 295606018 117210451 123073176 88335614 637657473 699733109 719307635 172382592 132556595 195019158 547547687 10369081 610834602 248642173 746992914 937158597 955501918 426814174 753419354 604181881 926045944 916956968 803588261 464444922 533864165 968670974 857535330 459617527 32075030 443960759 24188768 812414090 911302173 955730659 628523361 557710104 950497221 953267424 15037608 313272965 489130642 983113723 738855203 369306500 846351340 324986193 910850066 667313812 261683638 960543625 770864525 314069534 770594967 172382592 299113502 764116955 67831588 764459345 464130920 934824360 843005594 800460688 769327548 360743135 128702236 327773233 736624310 515426984 492009082 683621666 538810384 145885851 618542887 761330904 757815664 114409323 230662076 437743643 532803593 884952974 128188331 441621000 904771946 282751746 855636134 220576148 358401766 686884353 103669472 334211676 412979540 896029805 251188854 121069546 293192373 607041944 966131311 630238886 827311105 369306500 242186770 448881532 780870754 942866882 850386354 698320352 145559297 195019158 98287438 872434540 592639233 494336936 354807942 495854210 525347105 5299425 32806834 324986193 548748527 306597948 958668995 1736950 326469359 882804101 401452903 506919968 247234349 145885851 923927991 722013570 637769046 138442062 715779797 427184372 663971090 314069534 824770361 884952974 563678994 376974209 971894015 938456692 954677909 252792947 254203892 968755777 586370291 223299794 117931902 560623000 115509283 390793037 824770361 328764419 295606018 808838846 846351340 689757867 206036522 338929165 492009082 727245017 967417280 858798711 857535330 175507355 206036522 573480571 763431295 352092606 292972503 35128915 553368896 509664709 464130920 140725908 551289217 750750593 132556595 241184545 527654256 853170454 128702236 396138845 602396426 650036494 211958450 2379379 862254110 360743135 266213579 121069546 827311105 515426984 126695727 81337657 407091770 478892468 289918211 7807006 230662076 850484222 115509283 746394036 736237188 246221518 592639233 299994808 103733806 371179314 177689820 246221518 913521589 970320952 215792516 656191811 661321016 140551765 893019475 995876182 29069209 767187616 299113502 624819674 851400664 991615550 776352608 683621666 719307635 835212499 396743027 960796073 632014852 338929165 424594759 566125822 705304879 975478549 900116034 241184545 275202504 874297853 663971090 103219970 559014304 683621666 932584021 325554372 315747769 962073361 101231409 630977998 237389399 683621666 77819776 817743547 548748527 376974209 931640418 511277493 74587532 225858850 705304879 330274784 920628541 676975489 465759767 781246194 969294148 485509833 719307635 579757115 975337465 573449906 215792516 317751260 681765297 990121035 28363157 630238886 177689820 727578179 950673785 55108095 799588075 870201182 448262245 646710523 153196022 838803091 203331888 250885472 702364434 159828635 746992914 506919968 433686203 566554997 688534928 527595027 920721173 698320352 765027062 388085842 705304879 506178629 492009082 306597948 780870754 687055288 242186770 498045048 163769090 218611070 550336314 40131409 465697134 577673184 626833449 733642252 637657473 522663253 854969794 788118407 23262398 4519262 153196022 638790258 888553258 829614460 757850417 733642252 632014852 170938835 874124920 996943901 548748527 735710261 780870754 324129364 261683638 360743135 290117216 382210484 753419354 597784477 152243323 767839638 795549341 940381563 269911067 170941326 162062292 942899938 917452919 114409323 704431513 223299794 808866527 38085353 292696118 641231120 838331644 146573202 275202504 15903366 117931902 433921335 929504680 49948206 311613451 20148474 757850417 152314280 887794841 494336936 465759767 629101079 938140278 507016471 480361743 522332929 723661847 764116955 994877696 38085353 763431295 37275245 186285312 570796148 776352608 298050322 743614603 522663253 125829791 167276070 876263470 36055646 306607837 616796881 430284321 507016471 681765297 246058339 888699423 47349911 931966477 117210451 293192373 249820698 208625324 128450928 266213579 81553943 619842427 396632533 705304879 49614749 854969794 597784477 131323888 995876182 6720560 793291205 958668995 49948206 131323888 7807006 206036522 165821462 563678994 250832323 296305836 77685914 660765062 786320493 751925989 889608806 633573519 193515742 598426014 896072909 407091770 174862116 6720560 174862116 926044257 577673184 247234349 836376015 637657473 387703244 396050095 371179314 931640418 55108095 305990981 682170984 723661847 727827821 553191189 732245352 488295044 237172271 710224239 889608806 931640418 137529801 429277230 962073361 660765062 396937914 884072178 979750308 736624310 49614749 396743027 390275103 661321016 250885472 275349681 979750308 703514531 2076768 358401766 557710104 422532994 739696834 103733806 531135820 674485068 817743547 196106606 963141978 681765297 835198840 115509283 896029805 982416551 718980624 322974842 602832600 354807942 916956968 583924389 664041213 328462418 896029805 954227928 459452716 488295044 47529701 703490607 81553943 129724737 337153847 40656291 220576148 971894015 762749463 315747769 800460688 927806038 535533605 920721173 220576148 587469038 145885851 208625324 674446970 132556595 548964093 242186770 264100442 174140940 592981604 455539394 531333917 73848009 858040709 570764323 733642252 700560235 458363994 429277230 749497174 293192373 218611070 662421393 420636144 103733806 359714925 700560235 587179274 926044257 788118407 888553258 195733178 513440742 968670974 72820570 787269565 944068218 307060809 387176309 140551765 597206610 708046990 915330573 942899938 306607837 602832600 736237188 782533040 585165457 117210451 751925989 170941326 950673785 715957434 610834602 136412292 259646582 78775552 407091770 103219970 32075030 992169078 645094664 388085842 430088921 19715614 152618584 338631458 32806834 196460706 918225489 597784477 278160655 218611070 464130920 588034909 190979155 394791153 261683638 225771141 600441802 2076768 950673785 859168292 99294732 167276070 893019475 136412292 581063820 117210451 83066601 590918818 795549341 266583970 422532994 283321520 857535330 285947848 736237188 727245017 687988023 520071928 422532994 850484222 162062292 916956968 804406873 812414090 275349681 175060805 942999703 359859765 780870754 764459345 628523361 762749463 511330454 737945381 98824830 338312978 498840912 205387898 407091770 172382592 804406873 463496366 760370490 121069546 489130642 285947848 354807942 838803091 284588557 190323279 481894295 478892468 748408317 207442482 768561257 972710252 163769090 872434540 947413305 338312978 746092812 623206361 765027062 310726569 190979155 964902255 538025980 907095826 538810384 726620654 776352608 916956968 760370490 581831913 295606018 397928982 715779797 983113723 13112382 931005739 929504680 852604705 270237875 400178823 696443558 179981178 982353486 852107700 927806038 495854210 83066601 715957434 884072178 103219970 835339516 750978759 874124920 459452716 645094664 668964848 354807942 19715614 802009078 888259120 966131311 404152565 99294732 408032939 575895835 246221518 50241607 248642173 464130920 134971740 940188502 630238886 705304879 713146141 888699423 732559957 363976852 556619020 484158080 981996224 363976852 79523589 412979540 458363994 354807942 885141769 945394518 342116147 645094664 907095826 637769046 531135820 152866011 155241439 31215478 396632533 846351340 758889515 721418370 630238886 533864165 38085353 740340897 283321520 837690635 727827821 757850417 338631458 799588075 476912096 840130613 771803404 770993588 758889515 630201811 989729323 969294148 140551765 396050095 638790258 966683628 390793037 103733806 10369081 740340897 310726569 481894295 597784477 955501918 296751278 950497221 618355033 94279561 554242697 814662325 338312978 286037808 960796073 771321738 459617527 142903358 134801439 954677909 485509833 115090276 711532060 678884863 387703244 103669472 359859765 619842427 854243215 145559297 78775552 296305836 678474526 407091770 934824360 540976336 19911869 488295044 793291205 809429735 604881661 652018277 963141978 835339516 854243215 190929591 506919968 462762217 842970782 23973553 932715562 49317804 817743547 929504680 420636144 736624310 2379379 750563611 464444922 101231409 287768226 760370490 213097363 219054502 647733367 992001870 885141769 854902633 494336936 618542887 630629857 331638088 138442062 268759041 566554997 295366548 754133002 115090276 749497174 32075030 310726569 637939784 613596687 305990981 838803091 457149478 676975489 679463383 964902255 242530683 182214511 942999703 838803091 575023903 488788762 920721173 937158597 703514531 853170454 38844979 226492467 429277230 36055646 975337465 342116147 877167702 885353274 917795074 79509313 942999703 396632533 215981255 396937914 303230482 708053570 492009082 689757867 431406787 35128915 56154381 520071928 838655651 632378665 927806038 328764419 888699423 232177196 407091770 789617647 888553258 140725908 991073887 306597948 786380583 592981604 456956861 835212499 311613451 359714925 950673785 887548285 712346140 29473993 540394532 19911869 457149478 689757867 151364594 174862116 597206610 2379379 750563611 299994808 247006479 688177128 251188854 451521521 202477791 641231120 145559297 287768226 387176309 667844649 650990283 449022331 154538466 520071928 375066210 831241130 308142020 342116147 305068796 152314280 765027062 485509833 681765297 328764419 860477160 787269565 654830523 114409323 74587532 750978759 41538784 627110568 540976336 396937914 920721173 885000402 679463383 456137963 953882020 942866882 710224239 902464469 21190596 635302209 533864165 907721720 975337465 252962990 264408147 250749017 490344724 955730659 430284321 970911538 857535330 573449906 264750083 256866745 456956861 509370562 602396426 509019925 274113481 248642173 575023903 458156391 662421393 750978759 568104980 515426984 835339516 550322314 286037808 276676140 926044257 938080232 444897967 182214511 878442641 676975489 630775839 459452716 705304879 788118407 422532994 463496366 545538425 923715439 284588557 226492467 1926282 317751260 32806834 509664709 591292508 248642173 746092812 859168292 783513992 733642252 590208882 943235508 760231333 35128915 366854683 689757867 247841801 764459345 577970627 613596687 251188854 761330904 740882715 35128915 837690635 437743643 148087911 727245017 577970627 264100442 703514531 396632533 153196022 887548285 126695727 636434256 757815664 287239117 735696627 390275103 888553258 808614164 136384659 307403622 408395896 452156279 632402794 155241439 830619816 942866882 103669472 390793037 152866011 36265302 132556595 310726569 956815883 361002681 736237188 300892929 917795074 718980624 992001870 858040709 696443558 35128915 540976336 78775552 303230482 550322314 857535330 48746678 311613451 485262404 780870754 403519778 788737791 121069546 788737791 49614749 303230482 267829614 332834875 252792947 958668995 735710261 546679009 38304068 663670886 996943901 471393875 718980624 921198791 420636144 715779797 719601437 804406873 775682536 931966477 388085842 827311105 143200457 420052652 780061015 769327548 938080232 586370291 136412292 640849273 602832600 931966477 49948206 259646582 589760538 186285312 932715562 193648030 167276070 430088921 172382592 13112382 252792947 424594759 887548285 195957995 590918818 424594759 488788762 6720560 397928982 577970627 488788762 115090276 458363994 269911067 167276070 683406807 262406489 183440003 485509833 125204206 962430008 884072178 53195413 830619816 285947848 831467447 174862116 598426014 942899938 429277230 38085353 533455280 838803091 138393155 667313812 94279561 218611070 886917295 702745028 304621545 727245017 215981255 970320952 969294148 746394036 271484655 932715562 527654256 787269565 675472009 979750308 193648030 750978759 67831588 607760956 38338132 641231120 586446680 850484222 660095934 991615550 652018277 36055646 795549341 36055646 806664207 349644605 31215478 889608806 765027062 285947848 695599688 485509833 702364434 79509313 956815883 628820972 942999703 810021050 242186770 241184545 786380583 390275103 592639233 727827821 23262398 711532060 215792516 577673184 719307635 264297813 228290502 907721720 862254110 604881661 691982506 778123726 966131311 923715439 201717402 588034909 827311105 55018341 610834602 689757867 885549757 566554997 126695727 498045048 768561257 40131409 40656291 337153847 99294732 79523589 702364434 739696834 691982506 307060809 488295044 732559957 242028021 990121035 722768643 557710104 154538466 140725908 888553258 4519262 266213579 662972501 695599688 485262404 645094664 940381563 773781000 413592826 428572243 841210236 931966477 170938835 367026304 543945175 47290536 88335614 203331888 531333917 56154381 689757867 553368896 560623000 101231409 835212499 738855203 559957428 31615284 19911869 289918211 463496366 660765062 602832600 428572243 119279869 29069209 1736950 50241607 969494113 562773407 215289803 547547687 459617527 73848009 371179314 433686203 56927881 956815883 478892468 315747769 767839638 490344724 852604705 630201811 739696834 991073887 246058339 538810384 413592826 289736829 852604705 776820092 531333917 854902633 182214511 424594759 437743643 295606018 887548285 237389399 27735709 98824830 963141978 652018277 715957434 21190596 944573659 211958450 458363994 877167702 251367294 284588557 349644605 950673785 196460706 660095934 781242822 946916156 522663253 270237875 888259120 904800517 160287690 904800517 579757115 298727845 548964093 633587956 24089615 575895835 272303478 709613471 647733367 344620844 668964848 583924389 853170454 688577702 664041213 773781000 250885472 93478833 136412292 603931167 287239117 674485068 592970093 653201202 838803091 760370490 771803404 595030753 943235508 271484655 143200457 428572243 51457589 67700412 587179274 214244685 780061015 740882715 629101079 577970627 620243558 328462418 962430008 412979540 207844781 407629453 874297853 712346140 376974209 152618584 19715614 917795074 991615550 478351140 776835194 583924389 925555858 824770361 995876182 947413305 19715614 827311105 604181881 190979155 509144872 982416551 140551765 67700412 699733109 539381059 506178629 138393155 891279504 623398671 962073361 551289217 112090095 581063820 559957428 73848009 806744033 193648030 817743547 430101007 196460706 740882715 997329398 840130613 19911869 73848009 912948600 835339516 509664709 211958450 942899938 920721173 4519262 587469038 264297813 332834875 207442482 864016134 543865019 23262398 299994808 910850066 459617527 886149363 829614460 765027062 969494113 456956861 310726569 513440742 338312978 480361743 699733109 854969794 40131409 722768643 20148474 954227928 726620654 551289217 376974209 956815883 205387898 946916156 174862116 298727845 252962990 568104980 688177128 603931167 55018341 367026304 548964093 705548145 990121035 302151126 636434256 992001870 446968233 743614603 942866882 931013644 249820698 219054502 172382592 125829791 15903366 932584021 232177196 527654256 535533605 284588557 735710261 425392410 174335822 838655651 646710523 860377902 581831913 133739154 721769014 53525809 969494113 583924389 698320352 799588075 616057762 660095934 726950461 465697134 143200457 740882715 943235508 417074904 582273012 904800517 688177128 591292508 931005739 577970627 226492467 151364594 68748842 956286779 47349911 289736829 550322314 93651148 215289803 710224239 607965234 855636134 290474734 600441802 174335822 83066601 264297813 215792516 531135820 640849273 252962990 754580366 246058339 40448245 172382592 797746066 708094860 773781000 2575238 860477160 522332929 99294732 776835194 696443558 251367294 295606018 944573659 695599688 885000402 145559297 969494113 945394518 170938835 650697444 912948600 163769090 968670974 705548145 543945175 774489082 932715562 656623172 851759377 926045944 546141085 56154381 38304068 210621083 515426984 958668995 437743643 994877696 978947655 201717402 771803404 917795074 514768035 498840912 975478549 931640418 962073361 532803593 983113723 559014304 441621000 572588387 138442062 803588261 36055646 966683628 812044550 591292508 514768035 721418370 963141978 941586175 315297566 802009078 276676140 969294148 859168292 162062292 7807006 502849508 338631458 15037608 462394151 305068796 776835194 10475035 630238886 361435434 393120342 275202504 559957428 489130642 68748842 344620844 579757115 428572243 979750308 424594759 387703244 843005594 975478549 683406807 943793512 681765297 475344103 857535330 53195413 387176309 299994808 619842427 888259120 590208882 237172271 797746066 939725993 126695727 458156391 801623766 573480571 929504680 63192647 982370833 613596687 929504680 2379379 568104980 662972501 31215478 215289803 661321016 509664709 771321738 708046990 284588557 859168292 247221668 836376015 660095934 780061015 424594759 36265302 152618584 687055288 709613471 36265302 311613451 175507355 679463383 607965234 685702028 7807006 712346140 511277493 862254110 160287690 760231333 708094860 242028021 557710104 162062292 943235508 950497221 995876182 152618584 835212499 305990981 249820698 885549757 165821462 53525809 496698204 306607837 155241439 918225489 647733367 214244685 739696834 601630030 831241130 623398671 978947655 94279561 708094860 50241607 713146141 808866527 433921335 975337465 715957434 864016134 858798711 799588075 902464469 196106606 907095826 203331888 754133002 956815883 587179274 591292508 749497174 181668423 620243558 151364594 628820972 927806038 925555858 927806038 568142039 802009078 940381563 295606018 249670598 783513992 514768035 93478833 775682536 117931902 767839638 710224239 931005739 28363157 775682536 542382913 531333917 31215478 852755974 768561257 676975489 247006479 509664709 681765297 314069534 586370291 338631458 539957336 464444922 778074990 792846009 215977916 971549242 540976336 155241439 152243323 47529701 581063820 997329398 126695727 47349911 315747769 396138845 492009082 397928982 900116034 324986193 650697444 994587826 550336314 449022331 196106606 960543625 284588557 885000402 628523361 112390393 31615284 937158597 290117216 815123402 770594967 970320952 31615284 630629857 954227928 140551765 430101007 56927881 801623766 960543625 572588387 764459345 215774690 613596687 862254110 485509833 82689280 232177196 28363157 943235508 80415088 560327459 662421393 390275103 831467447 531135820 695599688 514768035 490344724 388085842 715779797 835198840 432089082 601740259 311613451 604181881 877088774 842970782 770993588 494336936 545538425 792822959 783513992 195019158 328462418 130160246 949084393 397928982 581063820 53966525 915330573 427184372 637769046 708053570 637769046 970320952 492009082 891279504 420052652 4519262 954227928 215289803 512614298 256866745 774489082 630977998 538810384 334211676 162062292 1736950 80415088 938080232 247841801 187104147 489130642 476912096 38844979 287239117 503666498 226492467 770864525 252962990 542382913 288873549 540976336 252962990 10475035 859168292 261683638 624819674 215774690 601740259 10475035 446968233 547547687 458290565 931966477 990121035 884059813 190323279 884072178 223299794 153196022 400178823 464130920 984047482 133739154 896029805 210621083 984047482 862254110 246058339 917795074 754133002 344620844 138442062 806664207 310726569 126695727 310726569 966683628 5299425 704431513 314069534 770864525 647733367 946916156 800460688 923927991 938080232 583924389 403519778 432089082 264297813 451817798 981996224 753419354 400178823 567774282 495854210 215981255 592981604 266213579 836376015 900796599 159828635 23262398 744008188 944068218 656191811 570764323 746394036 975337465 249820698 738612855 213097363 637657473 79509313 331638088 694954883 953882020 10369081 575895835 918521256 757815664 359859765 430101007 49948206 922858580 579757115 675472009 829983432 932584021 262406489 946612927 650036494 597206610 218611070 215774690 972710252 211958450 699230813 548748527 459452716 831467447 306597948 567948101 170941326 135975430 387703244 776352608 313272965 854902633 388085842 888699423 160287690 946612927 604881661 375066210 403519778 577970627 382210484 885549757 806744033 770864525 686884353 64420967 159828635 678884863 711532060 710224239 307060809 214650974 588034909 211958450 36055646 618542887 266583970 331638088 983113723 854969794 548964093 67700412 413592826 128188331 632378665 429277230 507016471 637657473 37275245 860377902 290474734 570764323 810021050 478351140 630238886 966683628 317751260 251042004 218611070 738612855 884952974 591292508 979750308 270237875 376974209 289736829 923715439 60750487 793291205 888553258 937158597 202477791 327773233 954677909 207844781 228290502 623206361 626833449 514768035 214650974 851829959 700560235 509144872 719307635 916956968 910850066 334932282 315747769 968670974 387176309 616796881 511330454 77685914 527654256 970320952 858127225 762749463 617908997 573480571 153196022 174862116 125829791 686884353 760231333 47529701 251188854 806744033 563678994 628820972 921198791 53966525 254203892 78775552 650990283 522663253 142903358 338312978 396806189 2379379 770993588 960796073 126695727 443960759 757815664 722013570 854902633 247822207 623398671 68748842 687988023 393120342 251042004 495854210 128702236 298050322 601630030 396937914 816971086 162904272 760231333 128450928 757850417 53966525 396050095 546141085 941586175 699230813 412979540 727245017 840130613 543865019 633573519 907721720 663971090 182214511 29069209 195019158 481894295 771803404 878442641 87392830 858127225 981996224 40448245 829983432 67831588 885000402 807117750 38304068 660765062 7807006 857535330 601740259 331638088 140551765 456956861 969494113 885995802 984050047 691982506 636434256 201717402 592970093 994877696 213097363 975337465 872434540 640849273 800460688 484158080 282751746 991073887 145885851 306607837 114409323 971894015 972710252 801623766 627110568 215977916 874297853 219054502 715957434 533455280 287239117 572588387 387703244 401452903 49948206 366854683 866568903 568104980 579757115 696443558 24089615 289736829 896072909 626932919 737945381 417074904 896029805 830619816 841780337 538810384 806744033 942999703 858798711 480361743 815123402 83066601 938080232 786380583 782533040 745200166 571019028 619842427 328764419 247221668 195019158 837690635 311808379 351424753 60017144 917795074 112090095 567948101 213097363 183440003 1736950 533864165 761330904 946612927 520071928 417074904 249670598 417074904 806744033 306607837 15903366 660095934 560623000 10475035 732559957 709613471 246058339 786380583 686884353 387176309 624819674 929504680 953267424 10475035 463496366 306258744 984050047 854902633 771803404 681930584 546141085 931013644 885353274 125829791 793291205 774489082 984050047 776820092 167276070 583924389 511277493 554222239 172894131 748408317 978947655 553368896 531135820 471393875 829983432 888553258 806744033 292696118 942866882 492009082 522663253 485153920 267829614 82689280 885141769 950497221 568142039 407510599 114409323 133739154 650036494 858127225 989729323 926044257 607760956 538810384 79523589 840075867 207442482 931013644 397928982 429277230 396138845 82689280 896072909 992001870 334211676 289736829 664041213 922706719 27735709 542382913 458156391 830619816 579757115 840130613 36055646 645094664 264100442 623398671 117210451 966131311 963141978 278160655 650036494 138393155 174862116 23973553 808838846 128702236 266583970 264750083 991615550 420052652 546141085 920628541 87392830 40448245 938080232 840075867 237172271 681930584 159828635 351424753 907095826 1926282 858798711 994877696 288873549 700560235 943235508 575023903 213097363 237389399 630977998 971894015 338631458 72820570 19911869 703514531 172382592 660095934 729868696 956286779 858798711 587469038 361002681 623398671 330274784 503666498 334932282 778074990 989729323 292972503 179991869 73848009 853903669 511330454 29473993 754580366 808614164 455539394 697742034 420052652 566125822 74587532 170938835 503666498 767839638 498840912 764459345 757815664 38085353 464130920 708046990 257214051 960543625 610834602 726620654 503666498 327773233 843005594 485262404 98287438 433921335 827311105 635302209 577970627 667844649 302151126 134801439 770864525 478892468 64420967 607965234 721418370 604181881 551289217 396632533 254203892 225771141 50241607 938705675 884072178 36055646 295366548 317751260 480361743 625664180 946612927 729868696 302151126 334211676 923927991 246221518 129724737 272303478 210621083 338312978 41538784 264297813 10475035 458363994 451817798 782533040 780870754 35128915 598426014 496698204 237389399 732245352 484158080 509019925 485153920 719601437 840130613 851829959 688577702 780061015 653201202 399037712 858127225 215052415 539957336 252792947 827311105 315297566 23973553 812414090 465759767 887548285 321628921 296751278 757850417 808838846 632014852 456137963 950497221 515426984 299113502 298050322 583924389 2575238 499057158 793291205 295366548 459617527 795549341 997329398 67831588 32954995 152523810 858798711 163769090 174335822 660765062 77685914 927806038 256866745 654830523 87392830 306607837 420636144 264750083 55018341 938140278 400178823 927806038 424974082 193648030 788118407 363976852 103219970 788737791 968755777 396806189 560327459 186285312 852604705 926044257 992169078 572588387 128450928 292149520 527595027 803588261 718980624 774489082 378961655 210621083 708053570 50241607 60017144 913521589 174862116 38844979 733642252 332834875 560623000 72820570 4519262 31215478 249670598 931013644 995876182 115090276 172894131 28363157 962430008 123073176 314069534 559014304 667844649 38844979 130160246 514650194 146573202 322974842 488788762 23262398 604881661 854969794 931005739 776820092 225858850 344620844 307060809 878442641 902464469 623398671 912948600 969294148 971549242 292972503 390275103 67700412 361002681 771321738 726620654 802009078 548964093 786380583 209497607 326469359 550322314 152618584 782533040 700560235 134971740 67831588 314069534 299113502 942899938 630775839 511277493 838655651 965948435 94279561 393120342 650990283 179991869 600441802 853903669 115509283 812414090 511330454 249820698 73848009 786320493 211958450 708094860 538025980 451521521 484158080 187104147 292696118 793291205 332834875 79523589 208625324 891279504 538810384 995876182 305068796 623206361 133739154 761330904 824770361 662972501 656623172 994587826 133739154 975478549 840130613 388085842 710224239 313272965 632402794 509664709 142903358 566554997 514650194 288072509 926045944 962073361 950673785 762749463 259646582 943235508 255644658 667844649 126695727 571019028 99294732 842970782 878442641 647733367 572588387 582273012 982353486 187104147 275202504 60017144 942999703 778123726 979740237 452156279 633587956 907721720 331638088 965948435 548748527 349076114 512614298 780061015 428572243 27735709 511330454 546141085 242028021 205387898 98824830 641231120 660765062 968670974 375066210 638790258 31215478 128450928 950497221 781242822 876868627 159828635 768561257 527595027 660765062 19911869 64420967 620243558 344876805 51457589 351424753 338631458 950497221 750978759 854902633 207844781 152243323 739696834 242028021 40131409 774489082 889608806 80415088 53966525 103733806 993091440 290117216 514768035 432089082 140725908 21190596 732559957 438183310 458363994 135975430 592970093 922706719 674446970 344620844 396632533 797746066 646710523 656623172 790270533 917795074 808838846 843005594 463496366 98824830 885353274 215981255 338929165 975337465 616796881 942999703 624819674 295366548 237172271 838331644 618355033 843005594 806792339 735696627 806792339 290117216 338929165 254203892 24089615 15037608 506178629 678884863 19715614 922858580 571019028 462762217 505061211 743614603 485262404 128188331 334932282 136384659 850484222 650697444 396632533 538810384 327773233 888699423 405444604 586446680 66490779 354807942 496698204 478351140 276676140 553368896 727578179 921198791 451521521 824770361 979750308 683406807 746394036 451817798 315297566 740340897 114409323 230662076 520071928 255644658 179981178 174140940 960543625 877167702 607760956 860377902 443960759 303230482 554242697 900796599 49948206 712346140 918521256 514650194 296751278 98824830 179981178 663971090 338929165 917795074 87392830 133739154 360743135 663971090 396138845 77819776 182214511 431406787 711455867 830619816 744008188 344876805 962073361 753419354 732559957 286037808 607760956 799588075 2379379 270237875 535533605 465697134 520071928 269911067 38085353 862177563 817743547 299113502 443960759 886149363 246058339 303230482 678474526 553191189 449022331 214244685 733642252 773781000 531135820 539381059 829983432 214650974 359714925 946916156 307403622 814662325 978947655 38338132 970320952 322974842 554242697 918225489 713146141 771321738 992169078 152243323 376448548 956286779 842970782 715779797 179981178 295606018 205387898 623398671 103219970 809429735 597784477 433686203 66490779 152243323 159828635 72820570 426814174 41538784 630629857 151506993 831380531 412979540 267829614 126695727 727578179 209789164 557710104 851400664 971549242 129724737 55108095 938140278 522663253 654830523 451551269 581063820 835198840 940188502 635302209 754580366 866568903 23973553 995876182 444897967 463496366 982416551 399037712 554222239 299462930 512614298 361002681 598426014 488788762 688534928 437743643 550336314 109054120 827311105 737945381 915330573 835212499 878442641 338929165 632402794 33511708 321628921 581831913 215977916 459452716 462762217 376448548 23973553 762749463 539381059 990121035 696443558 790270533 67700412 81553943 408395896 77685914 896571061 559957428 771321738 732559957 47290536 359714925 328462418 361002681 746992914 516175014 858127225 938080232 926045944 225771141 681765297 571019028 757850417 458363994 776352608 19911869 857535330 662972501 660095934 251367294 581063820 112090095 430088921 630238886 47290536 613596687 230662076 559957428 303230482 63192647 703514531 984047482 538025980 775682536 490344724 850484222 770864525 190323279 344620844 195733178 548748527 106790696 681930584 938080232 931013644 994587826 688577702 932715562 691982506 87392830 954227928 509019925 824770361 762749463 595030753 726620654 242530683 686884353 831467447 546141085 40448245 548964093 632402794 885353274 308142020 711532060 542382913 360743135 921198791 32954995 917452919 806744033 773781000 390793037 259646582 387703244 949084393 687055288 38338132 459617527 618542887 136412292 640849273 708053570 38844979 885647994 255644658 566125822 567343883 396138845 944068218 40131409 29069209 459617527 115509283 702745028 433686203 376974209 264750083 218611070 128188331 272303478 190929591 746394036 583924389 829614460 302151126 66490779 675472009 49948206 675472009 276676140 31615284 317751260 23262398 781242822 215981255 2575238 129724737 443960759 562773407 629101079 163769090 674446970 550336314 885353274 751925989 352092606 691982506 338929165 900116034 882804101 770864525 330274784 101231409 662972501 770993588 112390393 696443558 729868696 757850417 174335822 585165457 931005739 215792516 984047482 247841801 795472528 136384659 808614164 922858580 851829959 920721173 328764419 363976852 604181881 78649514 781246194 956286779 522332929 546679009 993091440 264408147 808838846 860477160 592981604 278160655 342116147 331638088 829614460 490344724 592981604 23973553 7807006 771321738 852107700 719307635 737945381 344620844 683621666 703490607 506178629 424594759 688177128 654830523 630238886 956286779 735891721 315747769 699733109 660765062 387703244 927806038 992169078 21190596 52243955 992001870 456137963 623398671 938080232 462762217 109054120 675472009 413592826 955501918 313272965 967417280 195733178 351424753 167276070 550336314 396937914 202477791 114409323 610834602 311808379 499057158 996943901 966683628 968670974 488295044 485262404 650697444 7807006 917795074 664041213 206036522 174862116 38338132 272303478 480361743 792846009 132556595 36265302 186285312 394791153 864016134 788118407 633587956 134971740 215774690 2379379 401452903 733642252 757815664 288873549 532803593 441621000 511330454 699733109 344876805 282751746 900796599 885000402 115090276 729868696 953882020 509370562 910850066 829614460 532803593 887548285 685702028 458363994 783513992 790270533 687988023 267829614 148087911 134971740 900796599 249820698 489612980 249820698 396050095 63192647 559014304 831241130 950497221 509370562 123073176 170938835 396050095 376448548 840130613 789617647 603931167 955730659 687988023 498045048 128702236 744008188 683406807 152314280 736237188 964902255 492009082 829614460 177689820 592981604 154538466 896029805 703490607 314069534 77819776 449022331 98287438 887548285 740340897 636434256 457149478 98231977 492009082 390275103 840075867 918521256 904771946 887548285 570764323 404152565 304621545 907721720 949084393 872434540 311613451 114409323 532803593 650036494 43970470 174335822 683406807 630629857 408395896 2076768 735696627 250749017 661321016 196460706 255644658 167276070 465697134 841210236 862177563 762749463 183440003 531135820 306607837 636434256 786380583 991615550 904771946 557710104 814662325 106790696 196106606 324129364 626833449 138442062 623398671 119279869 922858580 942899938 715779797 459617527 801623766 638790258 814295984 938080232 824770361 248642173 814295984 399037712 83066601 376448548 572588387 762749463 215774690 971549242 23973553 942899938 181668423 983113723 296305836 145885851 98287438 121069546 917795074 237172271 771321738 870201182 23262398 311808379 703514531 399037712 660095934 522332929 900116034 145885851 740340897 577673184 774489082 918521256 251188854 790270533 396806189 641231120 587469038 87392830 610834602 739696834 583924389 109054120 425392410 573480571 490344724 334932282 302151126 225771141 432089082 51457589 638516505 396937914 630775839 682170984 42657625 698320352 776352608 506919968 135975430 557710104 527654256 579757115 760370490 650036494 687988023 850484222 884059813 515426984 838655651 727827821 242028021 353964006 513440742 806792339 43970470 539035187 525347105 630238886 827311105 870201182 284588557 815123402 587469038 994587826 896571061 937158597 219054502 938456692 577970627 475344103 740340897 788118407 334299650 858040709 344876805 884952974 840075867 137529801 702364434 812414090 247221668 452156279 292149520 647733367 255644658 968670974 783513992 87392830 271484655 187104147 567343883 874297853 888553258 509019925 73848009 851759377 387176309 498045048 575895835 155241439 738855203 678474526 125204206 938080232 375066210 891279504 592639233 656191811 595030753 32954995 947413305 761330904 632402794 623206361 489130642 795472528 331638088 795472528 946612927 298050322 270237875 932715562 490344724 352092606 601630030 138442062 254203892 103219970 846351340 810021050 958668995 858798711 38338132 1736950 824770361 155241439 918225489 968755777 512614298 5299425 900116034 557710104 278160655 953267424 567774282 970320952 533455280 174335822 678884863 29473993 21190596 349644605 637657473 476912096 802009078 315343704 882364001 459617527 884072178 750978759 585165457 925555858 407629453 250885472 750563611 496698204 98287438 397928982 142903358 264297813 633573519 635302209 559014304 282751746 128188331 114409323 632014852 361002681 640925332 607041944 946612927 590918818 38338132 49614749 425392410 792822959 47290536 79509313 518384931 994587826 773781000 944573659 610447918 311808379 554222239 420636144 208625324 699230813 278160655 307060809 979740237 338929165 683406807 387703244 602396426 114409323 923927991 515426984 456956861 792846009 73848009 589760538 946612927 771803404 115090276 53966525 115090276 623206361 38844979 960543625 598426014 616796881 78649514 754133002 125829791 10369081 344876805 735710261 966683628 396632533 567948101 775682536 799588075 939725993 885549757 509370562 740340897 349644605 585165457 678474526 109369069 7807006 177689820 2575238 67700412 498045048 498840912 744008188 632402794 735710261 203331888 276676140 344876805 656191811 932584021 729868696 344620844 56927881 949084393 841210236 575023903 721769014 321628921 767187616 296305836 137529801 675472009 754133002 572588387 955730659 32075030 995876182 195957995 511277493 129724737 971549242 214650974 656191811 846351340 140551765 581063820 103219970 396806189 579757115 539957336 896072909 803588261 187104147 771321738 195019158 154538466 535533605 954227928 790270533 499057158 311808379 795549341 215052415 994877696 47529701 932584021 186244437 438183310 960543625 465759767 589760538 103669472 953267424 465759767 526944836 738612855 889608806 13112382 607041944 72820570 485509833 936312210 433921335 67831588 780061015 128188331 325554372 548748527 459617527 428572243 697742034 429277230 145885851 674485068 835198840 757815664 727578179 456956861 975478549 94279561 727245017 748408317 888259120 190979155 764459345 215792516 885353274 751925989 630238886 512614298 387703244 478351140 566125822 862177563 739696834 6720560 885353274 559014304 806792339 64420967 960796073 982370833 390275103 598543708 667844649 860377902 781242822 451817798 397928982 532803593 485262404 954227928 138442062 548748527 546141085 303230482 494336936 128702236 636434256 877088774 975478549 407091770 938705675 142903358 812044550 966683628 708053570 23973553 494336936 286037808 780061015 542382913 629101079 247234349 159828635 830619816 349644605 854902633 566554997 586446680 252792947 186285312 507016471 101231409 36265302 21190596 719601437 632402794 413592826 38338132 815123402 705304879 812044550 760370490 607041944 13112382 975478549 650697444 589760538 152866011 885141769 305068796 624819674 736237188 424974082 80485362 382904427 554222239 991615550 776820092 299994808 814295984 514768035 78649514 902464469 876263470 592970093 244528344 218611070 570764323 408032939 174140940 970911538 553368896 571019028 512614298 342116147 142903358 907095826 553191189 715957434 954227928 426814174 840130613 944573659 289736829 989729323 855636134 698320352 518384931 896072909 882364001 315297566 757815664 623206361 586446680 858798711 396050095 264100442 953882020 458290565 177689820 984047482 691982506 47349911 174140940 174335822 295606018 506919968 797746066 788118407 148087911 36265302 940188502 452156279 585165457 858798711 455539394 352092606 969294148 296751278 567343883 601740259 922858580 106790696 738612855 145885851 878442641 841210236 53525809 767187616 641635851 172894131 211958450 49948206 581063820 960543625 396050095 35128915 751925989 625664180 117931902 554242697 696443558 2575238 572588387 940381563 590208882 757709512 103669472 560327459 827311105 98231977 431406787 616057762 688577702 179991869 923927991 965948435 882364001 627110568 770993588 732245352 888553258 888259120 162062292 577673184 735696627 972710252 321628921 812044550 663670886 806792339 570764323 771803404 67700412 315343704 101231409 520071928 422532994 573449906 768561257 52243955 645094664 939725993 302151126 630977998 539957336 220576148 946916156 299462930 208625324 592981604 31215478 396937914 471393875 262406489 888699423 531135820 438183310 10369081 101231409 128450928 430284321 315297566 38844979 831380531 746992914 735891721 567774282 543945175 308142020 382904427 705304879 938456692 93478833 589760538 545538425 778123726 542382913 213097363 499057158 556619020 650697444 459452716 854902633 699230813 709613471 526944836 754580366 981996224 950673785 78775552 462762217 560623000 799588075 543945175 551289217 51457589 858127225 38085353 64420967 686335042 456956861 852604705 854969794 324986193 429277230 170941326 228290502 891279504 31615284 722013570 465759767 146573202 214244685 282751746 765027062 53966525 770864525 885647994 542382913 36265302 451817798 978947655 456956861 573449906 876868627 841780337 211958450 426814174 946612927 719601437 854969794 456137963 780870754 15903366 860477160 943793512 917452919 923715439 126695727 775682536 931640418 403519778 142903358 264100442 827311105 607760956 633573519 629101079 975337465 349644605 827311105 114409323 663670886 485063015 407510599 485063015 816971086 885000402 203331888 98231977 266213579 7807006 123073176 49948206 215977916 808838846 771321738 1736950 754580366 641231120 38338132 891279504 850386354 758889515 533864165 32954995 940188502 352092606 949084393 806792339 915330573 546141085 254203892 588034909 567774282 792822959 326469359 225858850 481894295 676975489 804406873 792822959 196106606 187104147 109369069 250749017 129724737 866337119 78649514 851759377 603931167 972710252 617908997 207844781 803588261 771803404 214650974 137529801 807117750 24089615 586446680 557710104 72820570 604881661 885549757 896029805 804406873 943235508 174140940 146573202 586370291 298050322 234980621 983113723 653201202 246221518 626932919 860708299 502849508 860708299 864016134 674446970 251188854 969494113 760231333 352092606 251042004 250749017 455539394 485262404 975337465 790270533 215981255 687055288 242028021 382904427 428572243 137529801 292149520 506919968 492009082 543945175 292972503 702745028 332834875 835198840 264408147 981996224 396743027 53966525 830619816 764116955 412979540 413592826 838331644 761330904 242186770 146573202 831467447 715957434 67831588 854243215 941586175 196460706 67700412 298050322 115509283 962073361 858127225 983113723 407091770 767839638 809429735 264100442 592639233 566125822 430088921 776835194 451817798 223299794 215774690 556619020 554222239 106790696 274113481 485063015 444897967 300892929 804406873 885141769 514650194 433921335 586370291 853903669 975337465 592970093 703514531 885353274 947413305 35128915 129724737 53195413 603931167 554242697 152243323 317751260 802009078 559957428 151506993 376974209 816971086 246058339 326469359 226492467 438183310 708094860 850386354 159828635 840075867 405444604 885549757 960543625 40656291 155241439 396050095 543865019 332834875 226492467 332834875 522332929 428572243 140551765 138393155 990121035 601630030 874297853 554222239 835212499 503666498 400178823 123073176 267829614 633587956 88335614 830619816 713146141 661321016 761330904 296305836 310726569 215774690 509370562 913521589 842970782 80415088 285947848 600441802 851829959 321628921 20148474 748408317 896072909 846351340 175507355 289918211 300892929 396806189 960796073 128188331 698320352 640849273 835212499 126695727 175507355 675472009 506178629 586370291 424974082 326469359 727245017 660765062 162904272 344620844 647733367 927806038 995876182 193648030 888259120 637939784 937158597 366854683 290474734 234980621 437743643 42657625 371179314 82689280 117210451 251042004 186244437 396743027 38085353 417074904 727245017 770864525 726950461 358401766 437743643 947413305 359714925 885549757 174862116 715779797 52243955 955501918 252962990 886149363 851829959 740882715 727245017 247006479 993091440 877167702 590918818 103733806 190323279 610834602 511277493 601630030 535533605 967417280 810021050 806664207 324129364 857535330 835212499 42657625 992169078 195957995 311808379 917452919 495854210 136384659 689757867 305068796 708046990 502849508 708053570 653201202 761330904 210621083 789617647 703490607 737945381 485153920 841780337 563678994 79523589 94279561 287768226 306607837 246058339 835339516 697742034 538810384 390275103 295606018 458363994 242186770 718980624 623398671 817743547 351424753 984047482 513440742 812414090 585165457 970911538 922858580 938080232 503666498 246058339 946612927 662972501 151506993 451551269 956286779 249820698 562773407 49948206 98824830 636434256 678884863 806792339 550336314 588034909 302151126 664041213 846351340 252792947 50241607 850484222 577970627 885353274 206036522 708094860 271484655 52243955 551289217 485509833 126695727 451551269 251042004 870201182 408395896 793291205 780870754 916956968 242028021 55018341 896571061 812414090 420052652 969494113 700560235 252962990 533455280 850484222 425392410 641231120 518384931 630977998 688534928 134801439 321628921 334932282 626833449 330274784 583924389 628820972 854969794 267829614 626833449 539035187 799588075 686884353 181668423 711532060 465697134 299462930 877167702 325554372 190979155 143200457 430088921 965948435 154538466 226492467 877088774 403519778 600441802 527595027 375066210 860708299 824770361 860708299 308142020 313272965 53226850 276676140 712346140 686884353 656623172 579757115 966131311 632378665 361435434 256866745 738612855 970911538 21190596 359714925 50241607 726620654 592639233 912948600 610447918 106790696 751925989 994587826 431406787 452156279 770864525 771803404 10475035 526944836 511330454 790270533 932584021 40131409 351424753 506178629 862254110 213097363 292972503 781246194 546679009 635302209 305068796 852107700 462762217 592981604 264750083 78775552 554222239 907095826 73848009 408032939 653201202 778123726 771321738 396632533 623398671 159828635 326469359 196460706 125829791 140725908 602396426 806792339 929504680 516175014 598543708 81337657 740340897 623206361 334299650 678474526 525347105 667313812 177689820 66490779 305990981 943235508 633573519 554242697 538810384 566554997 448262245 749497174 271484655 556619020 322974842 324129364 982370833 708094860 628523361 732559957 640849273 781242822 854902633 403519778 628523361 866568903 705304879 446968233 719307635 554242697 183440003 287239117 407629453 885000402 746092812 851829959 545538425 991615550 876868627 686884353 893019475 656191811 702364434 981996224 202477791 121069546 662421393 874297853 864016134 285947848 774489082 522663253 278160655 138442062 1926282 806792339 598543708 369306500 211958450 306597948 234980621 835198840 946612927 527595027 855636134 953267424 674485068 735891721 430088921 327773233 618542887 507016471 854969794 49614749 799588075 187104147 93478833 53966525 268759041 719601437 298727845 408032939 284588557 667313812 210621083 852755974 311613451 511277493 430284321 338631458 209789164 764116955 632014852 902464469 183440003 413592826 633573519 560623000 696443558 656191811 955501918 638790258 710224239 81553943 73848009 172894131 190929591 463496366 94279561 607041944 917452919 390793037 298727845 283321520 660095934 689757867 915330573 891279504 502849508 667844649 679463383 252962990 626932919 592981604 601630030 884952974 67700412 209497607 572588387 872434540 956815883 237172271 72820570 420636144 29069209 193515742 247841801 160287690 451817798 382904427 750563611 35128915 931086800 196460706 455539394 940381563 807117750 522663253 640849273 942899938 705548145 942866882 626833449 310726569 802009078 866568903 304621545 397928982 610447918 506919968 778074990 220576148 830619816 931005739 602396426 647733367 23262398 172894131 830619816 851829959 268759041 570796148 152866011 592981604 206036522 635302209 430101007 687055288 546679009 117210451 703490607 250832323 151364594 646710523 966131311 246058339 637939784 81553943 884059813 36265302 946612927 485262404 953882020 29473993 931086800 485262404 244528344 68748842 247006479 975478549 132556595 942866882 358401766 190323279 430101007 676975489 888553258 870201182 306258744 159828635 431406787 311808379 802009078 68748842 40656291 81553943 99294732 997329398 681765297 808838846 351424753 994587826 567774282 196460706 966683628 215289803 876263470 223299794 886917295 852604705 660095934 989729323 485153920 330274784 806664207 698320352 387176309 793291205 623398671 587179274 885995802 761330904 575023903 767839638 132556595 628820972 28363157 607965234 210621083 994587826 195957995 699230813 585165457 829614460 709613471 993091440 562773407 535533605 302151126 577673184 455539394 337153847 533864165 754133002 595030753 282751746 678884863 252792947 247234349 2575238 992001870 325554372 770864525 283321520 292149520 916956968 982370833 81337657 575023903 560623000 1926282 128450928 540976336 852604705 603931167 589760538 363976852 638790258 917452919 888259120 600441802 485063015 602396426 841780337 637769046 433921335 862177563 205387898 125204206 882804101 83066601 749497174 525347105 225771141 502849508 829614460 858127225 543865019 430284321 137529801 254203892 511277493 926045944 764459345 533455280 630629857 904800517 272303478 876263470 836376015 151364594 616796881 736237188 174335822 991073887 359714925 637657473 667313812 148087911 607965234 50241607 342116147 264750083 390275103 979740237 975478549 41538784 449022331 705304879 36055646 433686203 556619020 125829791 866337119 551289217 635302209 705548145 981996224 457149478 403519778 78649514 885647994 457149478 713146141 654830523 554242697 799588075 330205547 920721173 754133002 93478833 272303478 966683628 47349911 261683638 32954995 407629453 27735709 177689820 955730659 746992914 399037712 776352608 2076768 982353486 984050047 152243323 647733367 946916156 420636144 806664207 458363994 949084393 509144872 270237875 995876182 910850066 757709512 117931902 361002681 638516505 931005739 98824830 667313812 117931902 137529801 954677909 965948435 586370291 852107700 78649514 662972501 748408317 697742034 42657625 560327459 268759041 885647994 358401766 989729323 6720560 970911538 254203892 554242697 802009078 299994808 567774282 246058339 546679009 330274784 854969794 307060809 485153920 2575238 904800517 509370562 590208882 427184372 98824830 790270533 293192373 324986193 780870754 782533040 886917295 618355033 465697134 601740259 931966477 24089615 854902633 310726569 186285312 851759377 72820570 509664709 568104980 498045048 572588387 186244437 840075867 394791153 489612980 20148474 98287438 215052415 966131311 888259120 740340897 851829959 251042004 488788762 982370833 641231120 770594967 932715562 685702028 620243558 904771946 458156391 424594759 761330904 799588075 266583970 154538466 452156279 575023903 175060805 540394532 300892929 920628541 722013570 835339516 476912096 650697444 762749463 654830523 650036494 586370291 55108095 289736829 112390393 688534928 735891721 214244685 232177196 125829791 854243215 511330454 757709512 196106606 527595027 979740237 579757115 540394532 478892468 306258744 667844649 128702236 218611070 920628541 145885851 151506993 51457589 332834875 910818482 275349681 570796148 464130920 378961655 195957995 739696834 562773407 19715614 278160655 215289803 162062292 324129364 539957336 225858850 202477791 590918818 266213579 616796881 941586175 792822959 851400664 179981178 126695727 932715562 770864525 602832600 877088774 683621666 633573519 376448548 966131311 119279869 597206610 276676140 214244685 781242822 570764323 307060809 10475035 478892468 586370291 925555858 577970627 964902255 103733806 852604705 136384659 835198840 921198791 396138845 807117750 349076114 123073176 388085842 601630030 810021050 663670886 276676140 887794841 787269565 736624310 852604705 637657473 81337657 512614298 733642252 857535330 554242697 904800517 702745028 770864525 448881532 478351140 522332929 215981255 78775552 945394518 829614460 396050095 300892929 950673785 581831913 448262245 970320952 674485068 715957434 886917295 249820698 757815664 942899938 31615284 121069546 42657625 300892929 712346140 509664709 681765297 382904427 465759767 668964848 969294148 991615550 917795074 955730659 527654256 636434256 201717402 939725993 577970627 646710523 181668423 587179274 242028021 527595027 23262398 815123402 590208882 737945381 513440742 495854210 722768643 498045048 174140940 315343704 893019475 727245017 882364001 396937914 304621545 992169078 846351340 19715614 6720560 387703244 43970470 841210236 653201202 793291205 299113502 48746678 311613451 276676140 628523361 496698204 244528344 338929165 366854683 531135820 242186770 566554997 626833449 451551269 125204206 624819674 270237875 560623000 982370833 870201182 259646582 686884353 743614603 246058339 242530683 452156279 888553258 209497607 186285312 907095826 304621545 215052415 705548145 635302209 932584021 2076768 719307635 382210484 803588261 264297813 305068796 812044550 295366548 114409323 915330573 193515742 183440003 543945175 695599688 866337119 931966477 337153847 885549757 262406489 864016134 851829959 637939784 632378665 632014852 607965234 735696627 630977998 60750487 250885472 430088921 647733367 77819776 667313812 451817798 647733367 681765297 376974209 936312210 225858850 514650194 328764419 148087911 458290565 837690635 315343704 251188854 806792339 358401766 390793037 138393155 806792339 884072178 515426984 776352608 152314280 28363157 726620654 219054502 103219970 203331888 516175014 572588387 299994808 769327548 539035187 430101007 757709512 604968568 601740259 743614603 315297566 683406807 106790696 799588075 983113723 151506993 676975489 67700412 390793037 259646582 744008188 247221668 831241130 538025980 458363994 484158080 699733109 774489082 607041944 567343883 697742034 53525809 117210451 771321738 981996224 955501918 841780337 757850417 19911869 295366548 155241439 723661847 324986193 931966477 735710261 430088921 548964093 32075030 314069534 109369069 579757115 321628921 800460688 553368896 264297813 685702028 735710261 268759041 226492467 451817798 727827821 953882020 458156391 315747769 451551269 334299650 33511708 864016134 713146141 193648030 793291205 797746066 750750593 938140278 793291205 80415088 918521256 548748527 560327459 259646582 49948206 247234349 786320493 743614603 859168292 915330573 172382592 562773407 299994808 700560235 560327459 275202504 78775552 748408317 943793512 83066601 360743135 740882715 485262404 74587532 764459345 719307635 938456692 967417280 718980624 656623172 49948206 82689280 887548285 132556595 975478549 247841801 250885472 637769046 762749463 311613451 984047482 610834602 443960759 429277230 548964093 271484655 155241439 751925989 616796881 553368896 960543625 942999703 376448548 242028021 964902255 661321016 77685914 289918211 858040709 201717402 979750308 457149478 789617647 490344724 165821462 679463383 792846009 244528344 2379379 590208882 296751278 966683628 750750593 407629453 907095826 954677909 550322314 72820570 713146141 247234349 764459345 117931902 515426984 807117750 264100442 688577702 882804101 598426014 427184372 542382913 241184545 745200166 388085842 938140278 858798711 888699423 225771141 489130642 932715562 554222239 616796881 776820092 55108095 195957995 307403622 835339516 187104147 809429735 427184372 824770361 53195413 247234349 225771141 465759767 789617647 746092812 250749017 771321738 975478549 678884863 159828635 527654256 618355033 412979540 891279504 932584021 63192647 396050095 793291205 975337465 218611070 735696627 446968233 982353486 338631458 851400664 719601437 129724737 334211676 610834602 159828635 748408317 872434540 432089082 307060809 862177563 616057762 638516505 66490779 208625324 885647994 80485362 403519778 592639233 433921335 757850417 560327459 484158080 831380531 553191189 882804101 675472009 990121035 681765297 733642252 921198791 507016471 703490607 896029805 956815883 463496366 913521589 424974082 354807942 287768226 662421393 287239117 40448245 775682536 407629453 506178629 142903358 195733178 748408317 400178823 681930584 437743643 917452919 369306500 678884863 459452716 140129038 992169078 850386354 735891721 700560235 307403622 545538425 330205547 660095934 858040709 420052652 764116955 675472009 943793512 876263470 390275103 203331888 458156391 533864165 172894131 572588387 396632533 696443558 607965234 481894295 831241130 915330573 215289803 617908997 53195413 956286779 994587826 539381059 49614749 464130920 81337657 831467447 360743135 765027062 361002681 926044257 635302209 602396426 938705675 401452903 215289803 321628921 349644605 632014852 884952974 678884863 509144872 1926282 330274784 583924389 24089615 803588261 79509313 151364594 885141769 548748527 697742034 721418370 792822959 286037808 686884353 809429735 647733367 464130920 179991869 462762217 891279504 430088921 838803091 527654256 560623000 597206610 727578179 417074904 708046990 966131311 546141085 264750083 727827821 142903358 934824360 750563611 246058339 955501918 38304068 271484655 159828635 428572243 678474526 896571061 134971740 760231333 781246194 266213579 858798711 740882715 509019925 954677909 175060805 451817798 256866745 234980621 330205547 38844979 112390393 770993588 287239117 884059813 764116955 208625324 887548285 637939784 887548285 125829791 602832600 195957995 515426984 284588557 789617647 946612927 163229392 214244685 870201182 704431513 739696834 117931902 607041944 6720560 630238886 15037608 852604705 685702028 250749017 722768643 746394036 525347105 81553943 663670886 325554372 49317804 850484222 296305836 117210451 268759041 793291205 554222239 581831913 432089082 835198840 251188854 37275245 533455280 420636144 688577702 20148474 234980621 758889515 900116034 463496366 284588557 514768035 674485068 616796881 806664207 581831913 966683628 112390393 929504680 885141769 926045944 937158597 103669472 359714925 955501918 727245017 492009082 509370562 577970627 404152565 93651148 732559957 637939784 978947655 366854683 215052415 786380583 588034909 917795074 686884353 28363157 387703244 688577702 997329398 917795074 607760956 550336314 338631458 799588075 32954995 174140940 853170454 840130613 38085353 878442641 531333917 854902633 408032939 367026304 852755974 548748527 53195413 408395896 767839638 315747769 413592826 60750487 572465104 295366548 223299794 407629453 925555858 533455280 889608806 32075030 459452716 585165457 991615550 451817798 557710104 858127225 205387898 21190596 592970093 931086800 77685914 628523361 170938835 748408317 527595027 488295044 885141769 94279561 719601437 922706719 170941326 860477160 175060805 783513992 136412292 979740237 509144872 662421393 938705675 254203892 719601437 502849508 792822959 900116034 378961655 949084393 207442482 152866011 841210236 24188768 437743643 6720560 121069546 709613471 630629857 132556595 632378665 417074904 761330904 109369069 452156279 32075030 78775552 214244685 77685914 152243323 939725993 656623172 978947655 334299650 330205547 712346140 387703244 773781000 516175014 417074904 624819674 958668995 997329398 74587532 800460688 816971086 396632533 703514531 942899938 361435434 190323279 539957336 689757867 633587956 841780337 49317804 390275103 765027062 352092606 21190596 708053570 533864165 727578179 274113481 683621666 703490607 330274784 53226850 719601437 286037808 288873549 783513992 315343704 994877696 32954995 123073176 992169078 765027062 874297853 956286779 114409323 954677909 858798711 23973553 539035187 67831588 726620654 550336314 902464469 886149363 267829614 715779797 251367294 896571061 451551269 247234349 975478549 490344724 968670974 663670886 437743643 886917295 853170454 645094664 485262404 809429735 167276070 208625324 577673184 854969794 604881661 322974842 689757867 50241607 451551269 773781000 727827821 888699423 708053570 683406807 213097363 917452919 629101079 190929591 175060805 99294732 686335042 982353486 327773233 886149363 209497607 604968568 437743643 430101007 396937914 904771946 24089615 299113502 628820972 674485068 623206361 904771946 984047482 874124920 4519262 746092812 789617647 945394518 983113723 275202504 232177196 705304879 2575238 430088921 248642173 788737791 662972501 765027062 427184372 186285312 1736950 322974842 646710523 514650194 573449906 29069209 697742034 417074904 63192647 956286779 548964093 753419354 494336936 242028021 852755974 553191189 808614164 837690635 337153847 640925332 795472528 151364594 722013570 843005594 590918818 548748527 300892929 135975430 338631458 551289217 939725993 722768643 408032939 23262398 749497174 387176309 968670974 412979540 246221518 950497221 252792947 610834602 850484222 633587956 451551269 195957995 60017144 884059813 98231977 292696118 625664180 532803593 554242697 93651148 674446970 776820092 635302209 601630030 718980624 234980621 727578179 843005594 925555858 637769046 602832600 572588387 793291205 98287438 79523589 551289217 960543625 53226850 174335822 115509283 620243558 305990981 478892468 763431295 792822959 675472009 193515742 783513992 872434540 760231333 852107700 660765062 382904427 195957995 630238886 284588557 604181881 13112382 55108095 830619816 27735709 837690635 983113723 967417280 207442482 846351340 103219970 838655651 433921335 884072178 737945381 77819776 866337119 641635851 451521521 763431295 806792339 242028021 399037712 457149478 400218902 489130642 815123402 617908997 764116955 396743027 413592826 266213579 787269565 83066601 972710252 43970470 353964006 619842427 60017144 884059813 250885472 803588261 174862116 770864525 604181881 858127225 388085842 152866011 932715562 60750487 687055288 438183310 209497607 837690635 625664180 428572243 256866745 931086800 744008188 109369069 458156391 807117750 249670598 275349681 630977998 331638088 782533040 38338132 400218902 652018277 160287690 321628921 531333917 602396426 733642252 512614298 885353274 13112382 408032939 72820570 931005739 93478833 780061015 23262398 882804101 237389399 624819674 590208882 249670598 778074990 597784477 6720560 568142039 366854683 324129364 633573519 566554997 499057158 462394151 705548145 667313812 525347105 315297566 586370291 522332929 518384931 405444604 736624310 298050322 855636134 130160246 407510599 298050322 575023903 250885472 802009078 727827821 125204206 307060809 971894015 971549242 538025980 934824360 465697134 991615550 82689280 858040709 82689280 771803404 695599688 771803404 326469359 495854210 488295044 708094860 915330573 349644605 885995802 396632533 920628541 24089615 583924389 223299794 206036522 451521521 485153920 708094860 251042004 35128915 770864525 232177196 931013644 359859765 375066210 601740259 32806834 719601437 99294732 32954995 768561257 38304068 367026304 968670974 982370833 88335614 67831588 137529801 735696627 726620654 955501918 808614164 326469359 786320493 746992914 601740259 586370291 604881661 650697444 607041944 286037808 134971740 533864165 516175014 799588075 388085842 553191189 602832600 512614298 984047482 293192373 800460688 117931902 509370562 117931902 330274784 831467447 792846009 126695727 764116955 877167702 399037712 518384931 264100442 311613451 750750593 645094664 996943901 953882020 995876182 41538784 708046990 637657473 475344103 595030753 711532060 23262398 182214511 289918211 338312978 840075867 276676140 896571061 404152565 778074990 838803091 700560235 702745028 152618584 338312978 637657473 638790258 877088774 789617647 518384931 572465104 904771946 337153847 498840912 338631458 575895835 874297853 67700412 446968233 269911067 579757115 152523810 514768035 610834602 531135820 247006479 334211676 152243323 81337657 992001870 103219970 237389399 548964093 705304879 215289803 770594967 882804101 498840912 983373150 123073176 456137963 195957995 36055646 21190596 137529801 736624310 103219970 533864165 285947848 738612855 79509313 931086800 324129364 941586175 539035187 843005594 767839638 292149520 806792339 422532994 52243955 559014304 264100442 219054502 708046990 735696627 397928982 50241607 727827821 740340897 616796881 462762217 795472528 550336314 607965234 38844979 165821462 321628921 625664180 387176309 179991869 13112382 664041213 850386354 678474526 920628541 334932282 650697444 602832600 101231409 699733109 237389399 582273012 401452903 962073361 567774282 387703244 681765297 997329398 23973553 463496366 201717402 962073361 598543708 955730659 547547687 934824360 590208882 215052415 950497221 522332929 408395896 630629857 650990283 737945381 885549757 676975489 904771946 686884353 956286779 179991869 754580366 315297566 344876805 721769014 917795074 940381563 492009082 427184372 247221668 527595027 230662076 934824360 641635851 232177196 428572243 446968233 956286779 376974209 275202504 488788762 123073176 220576148 911302173 632378665 705548145 838803091 877088774 902464469 681930584 953267424 884059813 808614164 527654256 943235508 746992914 746394036 80415088 218611070 922858580 866337119 966683628 938080232 568104980 359859765 827311105 394791153 302151126 808614164 893019475 831380531 255644658 413592826 638516505 997329398 888553258 853170454 247221668 793291205 546679009 79523589 247006479 485262404 42657625 546141085 738612855 546141085 247841801 250832323 704431513 463496366 6720560 646710523 230662076 360743135 432089082 520071928 778074990 978947655 259646582 117210451 940188502 806744033 247221668 531333917 562773407 795472528 322974842 711455867 583924389 729868696 678884863 781242822 992001870 984047482 136384659 698320352 540394532 994587826 538810384 4519262 955501918 15903366 489612980 449022331 994877696 299462930 946612927 836376015 129724737 193515742 604968568 128450928 242028021 424974082 306258744 788118407 722768643 727245017 305990981 299462930 234980621 376448548 840130613 815123402 74587532 932715562 736624310 24089615 163769090 112390393 955501918 789617647 80415088 559957428 586370291 872434540 830619816 79509313 920721173 179981178 808866527 237172271 650697444 788118407 662421393 771803404 254203892 437743643 630201811 334211676 954677909 390793037 540976336 993091440 94279561 942899938 563678994 781242822 53525809 851829959 953882020 852604705 931013644 978947655 32806834 247822207 778074990 53195413 710224239 324129364 196106606 174862116 77819776 338929165 533864165 393120342 358401766 285947848 955501918 405444604 760370490 223299794 721418370 589760538 303230482 163229392 577970627 88335614 304621545 79509313 846351340 932715562 778074990 193515742 32806834 79523589 322974842 283321520 601630030 543865019 344620844 98231977 299113502 37275245 15037608 581831913 683406807 780061015 31215478 179981178 230662076 762749463 802009078 382904427 950497221 778123726 876263470 404152565 259646582 179981178 542382913 971549242 532803593 267829614 846351340 841780337 740340897 251367294 862254110 882804101 926044257 443960759 770594967 290474734 6720560 836376015 242028021 543865019 156817178 829614460 705304879 315297566 255644658 526944836 214650974 63192647 448262245 246221518 242186770 984050047 190979155 750750593 915330573 256866745 681765297 831380531 38338132 990121035 455539394 441621000 24188768 458156391 703490607 962073361 32806834 925555858 603931167 932715562 289736829 456137963 956815883 207442482 153196022 969494113 177689820 396632533 663971090 932715562 251042004 505061211 456956861 246221518 956815883 907095826 946916156 458290565 876263470 314069534 862254110 781242822 295366548 808614164 93651148 112390393 247006479 674446970 278160655 618355033 152866011 515426984 801623766 531333917 514650194 775682536 490344724 636434256 581063820 815123402 860477160 195733178 73848009 66490779 586446680 989729323 938140278 887548285 992001870 516175014 43970470 29473993 60750487 225771141 295606018 522663253 938140278 404152565 548748527 376448548 269911067 817743547 451817798 566554997 843005594 572465104 462762217 607041944 539381059 721769014 456956861 40131409 21190596 937158597 485153920 699733109 807117750 376974209 420052652 607041944 550336314 205387898 675472009 526944836 140129038 476912096 128188331 136412292 210621083 944573659 884059813 334932282 688534928 276676140 80415088 310726569 361435434 361002681 568104980 858798711 778074990 573449906 67831588 405444604 326469359 749497174 587469038 49614749 133739154 662972501 407510599 719601437 590208882 128450928 992001870 256866745 719307635 782533040 851400664 215289803 700560235 175507355 753419354 697742034 719307635 478892468 151506993 509664709 929504680 330274784 831467447 424974082 489130642 970911538 604968568 145885851 259646582 249670598 306258744 182214511 67700412 527595027 567948101 931005739 562773407 165821462 632402794 307060809 23973553 686884353 893019475 968755777 765027062 47349911 763431295 509370562 53226850 155241439 43970470 103219970 344620844 29473993 47290536 607965234 884059813 662972501 533455280 727827821 321628921 179981178 444897967 427184372 835339516 918521256 688534928 972710252 366854683 790270533 736237188 167276070 602396426 190323279 586446680 53195413 284588557 478892468 736237188 314069534 215792516 195733178 783513992 49948206 757850417 975478549 298727845 636434256 799588075 413592826 123073176 509664709 583924389 964902255 927806038 338631458 931640418 464444922 746992914 485262404 438183310 361002681 39220584 872434540 60750487 570796148 527654256 334211676 640925332 249670598 481894295 252792947 633587956 459452716 931013644 522332929 289736829 786320493 289918211 488788762 430088921 399037712 53525809 968670974 551289217 459617527 786380583 554242697 602396426 559957428 228290502 15903366 190979155 285947848 893019475 750978759 490344724 810021050 489612980 338312978 123073176 623206361 652018277 630629857 292149520 984047482 428572243 744008188 967417280 509144872 464130920 718980624 539957336 778123726 743614603 109054120 50241607 573480571 954677909 885353274 326469359 387703244 917795074 195733178 305990981 187104147 628523361 287239117 577970627 630977998 602396426 420636144 568104980 256866745 586446680 688177128 854969794 109054120 969294148 213097363 39220584 196460706 774489082 382904427 186285312 38304068 328462418 912948600 396743027 285947848 703490607 758889515 289736829 749497174 946612927 376448548 103669472 850484222 703490607 4519262 540394532 758889515 138393155 53966525 956815883 226492467 315747769 249820698 858127225 79523589 138393155 776835194 50241607 207844781 53525809 249820698 269911067 866337119 498840912 790270533 583924389 557710104 540394532 808614164 247234349 478892468 824770361 452156279 900116034 744008188 351424753 872434540 326469359 910818482 186285312 632378665 681930584 103219970 757815664 891279504 438183310 858798711 31615284 647733367 816971086 810021050 910850066 56927881 884059813 944573659 266213579 647733367 40448245 2575238 814295984 739696834 971894015 207844781 633573519 713146141 911302173 829614460 807117750 781246194 585165457 667844649 331638088 778123726 29069209 668964848 587469038 526944836 299113502 509664709 637769046 750750593 295366548 112390393 344876805 778123726 597206610 387703244 803588261 47349911 992001870 250885472 432089082 996943901 424594759 49948206 215774690 79523589 691982506 314069534 49317804 836376015 703490607 246058339 511330454 232177196 641635851 546141085 691982506 683621666 24188768 944573659 545538425 767839638 264750083 511277493 628523361 285947848 941586175 79509313 862254110 790270533 600441802 53195413 274113481 220576148 885995802 283321520 548748527 735891721 893019475 464444922 251042004 456137963 562773407 396632533 630775839 885353274 181668423 749497174 835339516 388085842 746992914 806792339 966683628 732245352 247221668 509664709 264750083 66490779 637939784 7807006 765027062 688177128 80415088 353964006 982370833 560327459 587469038 789617647 41538784 223299794 290117216 896029805 332834875 213097363 975337465 359714925 941586175 601740259 315747769 650036494 719307635 452156279 292149520 462394151 23262398 656191811 429277230 560623000 94279561 969494113 586370291 404152565 628523361 979750308 929504680 36265302 750563611 283321520 451817798 195019158 209789164 568142039 851400664 697742034 115509283 424974082 920628541 713146141 703514531 276676140 567343883 793291205 911302173 32954995 645094664 838803091 344620844 160287690 344876805 441621000 186285312 627110568 432089082 172894131 432089082 299462930 230662076 325554372 193648030 88335614 946612927 330274784 975337465 459617527 788737791 566554997 662421393 426814174 444897967 758889515 151364594 47349911 604968568 570796148 290117216 668964848 786380583 778123726 215977916 749497174 876263470 543865019 703514531 556619020 208625324 117210451 80485362 851759377 315747769 531135820 979740237 852755974 292696118 112090095 637657473 767839638 640925332 213097363 513440742 978947655 206036522 543865019 804406873 338312978 877167702 256866745 913521589 858798711 674485068 352092606 214650974 264100442 518384931 448881532 586370291 775682536 809429735 317751260 50241607 597784477 940188502 390275103 361435434 686335042 757850417 400218902 637939784 964902255 774489082 163229392 838655651 53966525 290117216 509370562 538810384 711455867 429277230 851829959 538025980 891279504 275349681 250832323 835339516 112090095 900116034 160287690 567948101 744008188 910850066 787269565 551289217 587179274 215977916 207844781 488295044 570796148 201717402 969494113 992001870 359714925 299113502 543865019 13112382 789617647 702364434 47349911 215792516 249820698 396743027 226492467 152866011 317751260 78649514 628820972 464130920 282751746 545538425 452156279 740340897 182214511 610447918 859168292 251188854 735891721 489612980 24089615 918225489 531135820 632402794 889608806 478351140 718980624 451817798 989729323 163769090 352092606 862254110 262406489 518384931 287239117 269911067 688177128 202477791 630629857 485153920 907721720 407091770 630629857 74587532 715957434 257214051 397928982 518384931 902464469 344876805 719601437 748408317 940381563 396743027 708046990 597206610 485509833 882364001 550322314 484158080 526944836 740882715 79509313 268759041 990121035 548748527 506919968 511330454 449022331 533864165 887548285 917795074 163229392 771321738 485262404 637939784 812414090 967417280 750750593 545538425 413592826 548748527 795472528 214650974 841780337 152866011 923715439 251042004 916956968 67831588 138442062 152866011 426814174 538810384 726950461 550336314 117210451 488295044 955730659 514650194 35128915 921198791 641231120 688577702 699230813 617908997 213097363 99294732 531135820 768561257 667844649 154538466 776835194 921198791 910818482 196106606 225858850 247841801 349076114 610447918 378961655 295606018 732559957 700560235 719601437 562773407 249820698 547547687 858798711 363976852 264100442 478351140 353964006 896571061 186244437 652018277 662972501 888553258 694954883 511330454 776835194 64420967 287768226 618542887 938080232 743614603 403519778 799588075 960796073 219054502 506919968 514650194 408032939 430088921 829614460 361435434 106790696 797746066 186244437 757850417 607760956 363976852 81337657 195957995 205387898 931966477 112090095 23973553 587179274 840130613 942899938 942999703 682170984 705304879 252962990 254203892 932715562 193648030 53195413 103733806 53966525 499057158 463496366 152618584 557710104 407510599 674446970 681930584 264297813 56154381 209497607 780870754 220576148 251188854 616796881 311613451 87392830 295606018 515426984 219054502 607760956 688577702 106790696 660095934 338312978 354807942 667313812 366854683 838803091 553368896 324129364 152523810 566125822 40448245 328764419 64420967 172894131 32806834 841780337 430101007 887548285 874124920 437743643 514650194 764459345 103733806 887548285 99294732 264297813 947413305 882804101 49317804 968755777 215977916 53195413 545538425 478892468 769327548 841210236 827311105 509664709 82689280 573480571 202477791 560327459 332834875 137529801 958668995 241184545 559014304 446968233 478351140 896029805 527654256 981996224 299113502 396632533 344620844 699230813 683406807 788118407 886149363 726620654 736624310 403519778 533864165 963141978 278160655 498045048 878442641 831241130 23973553 207442482 958668995 117210451 748408317 733642252 412979540 858040709 206036522 403519778 874124920 597784477 598543708 317751260 553368896 360743135 513440742 557710104 774489082 15903366 768561257 49948206 115090276 63192647 82689280 272303478 6720560 226492467 156817178 299994808 592639233 940381563 638516505 387703244 920628541 241184545 663971090 831380531 719307635 808838846 931086800 971549242 154538466 885141769 525347105 98231977 886149363 264297813 563678994 708046990 103733806 859168292 542382913 452156279 98824830 990121035 499057158 964902255 546679009 984050047 843005594 934824360 808866527 160287690 598426014 387703244 43970470 953267424 465697134 446968233 936312210 307060809 274113481 735710261 203331888 24089615 650697444 889608806 465759767 625664180 464130920 815123402 913521589 993091440 958668995 509019925 929504680 870201182 56154381 641231120 945394518 588034909 814662325 49614749 38338132 993091440 60750487 338929165 630775839 237172271 305068796 764116955 354807942 352092606 617908997 232177196 527654256 548964093 28363157 566125822 351424753 475344103 295366548 38304068 941586175 186244437 264408147 145885851 802009078 994587826 592639233 625664180 723661847 852604705 366854683 66490779 904771946 66490779 632014852 205387898 645094664 4519262 661321016 334211676 31615284 464444922 140129038 790270533 511330454 994587826 626833449 978947655 82689280 866568903 740340897 371179314 344876805 781246194 602396426 767839638 568104980 397928982 583924389 780061015 632402794 334932282 923927991 36265302 502849508 475344103 38844979 334211676 254203892 134801439 945394518 817743547 884059813 713146141 237389399 250885472 215977916 290474734 683406807 527595027 344620844 604881661 736237188 938080232 967417280 697742034 326469359 451551269 626833449 767839638 806664207 767839638 806664207 134801439 67831588 630238886 654830523 160287690 723661847 359714925 632014852 66490779 797746066 190323279 904771946 136412292 47290536 459617527 590208882 338312978 264408147 112090095 518384931 413592826 425392410 682170984 152243323 505061211 738855203 458363994 992001870 750978759 949084393 66490779 296305836 394791153 532803593 780061015 292972503 718980624 771321738 328764419 140129038 112090095 41538784 106790696 568104980 699230813 351424753 566554997 956815883 475344103 884059813 996943901 570764323 140551765 94279561 145885851 592639233 829983432 855636134 106790696 299113502 916956968 361435434 19715614 401452903 382904427 942999703 602832600 481894295 509370562 921198791 739696834 215977916 613596687 133739154 789617647 540394532 960796073 911302173 40131409 946916156 495854210 886917295 155241439 765027062 459452716 971894015 589760538 929504680 560327459 618542887 943793512 950497221 739696834 877088774 172382592 721418370 990121035 306607837 47529701 295606018 968755777 746092812 20148474 632014852 1736950 982370833 285947848 575023903 548964093 525347105 960796073 6720560 446968233 562773407 338631458 572588387 405444604 626932919 152314280 545538425 207844781 604968568 359859765 326469359 923715439 540976336 641231120 603931167 299462930 13112382 938080232 334299650 955730659 637657473 842970782 958668995 938705675 991073887 836376015 43970470 290474734 527654256 55018341 538025980 733642252 786380583 737945381 299113502 137529801 499057158 252962990 275349681 162904272 774489082 130160246 602396426 969494113 640849273 186244437 827311105 646710523 451817798 413592826 209789164 708053570 808866527 213097363 773781000 592981604 876868627 647733367 43970470 758889515 923927991 896029805 838655651 721769014 489130642 526944836 770594967 38085353 809429735 2379379 645094664 172382592 851400664 885647994 480361743 172382592 769327548 812414090 1926282 507016471 478351140 623206361 136384659 287239117 23973553 215052415 931966477 708046990 551289217 112390393 809429735 311808379 322974842 767839638 206036522 215289803 518384931 885000402 994877696 463496366 602396426 975478549 152618584 218611070 824770361 543945175 242028021 850484222 640849273 145885851 539957336 376974209 969294148 137529801 568104980 195733178 289736829 485262404 633573519 732559957 950673785 328764419 862254110 943235508 824770361 994587826 721418370 359859765 40448245 140551765 490344724 134971740 31615284 860708299 696443558 902464469 858127225 638790258 344620844 300892929 215977916 485509833 539381059 635302209 275202504 718980624 771321738 781246194 251188854 630629857 802009078 984050047 656623172 299462930 885995802 38085353 540394532 1736950 140129038 390793037 498840912 699230813 41538784 170941326 660095934 997329398 38844979 559957428 156817178 49614749 637657473 694954883 885549757 858040709 228290502 232177196 264408147 128450928 953882020 597784477 38844979 968755777 247006479 853170454 289918211 916956968 640925332 810021050 266213579 495854210 788737791 841210236 804406873 247822207 835339516 829983432 39220584 711455867 514650194 630977998 145559297 916956968 803588261 588034909 610834602 446968233 887794841 283321520 322974842 560623000 488295044 248642173 581063820 215052415 142903358 896072909 656623172 944573659 101231409 276676140 795549341 831380531 181668423 78775552 72820570 587179274 125204206 676975489 776820092 396937914 966683628 535533605 802009078 114409323 553191189 662972501 991073887 560327459 617908997 938705675 824770361 458363994 351424753 762749463 931640418 446968233 765027062 775682536 132556595 989729323 587469038 299994808 131323888 145885851 618542887 81337657 979740237 782533040 219054502 77685914 630201811 264297813 210621083 369306500 663971090 566554997 917795074 413592826 886917295 456137963 271484655 264100442 50241607 852604705 900796599 317751260 214244685 942866882 363976852 792822959 600441802 687055288 433686203 207844781 979740237 984047482 971894015 522663253 304621545 667313812 401452903 630977998 266213579 984050047 685702028 170938835 154538466 56927881 289918211 762749463 274113481 463496366 769327548 735891721 210621083 557710104 922706719 288873549 540394532 33511708 904800517 527595027 551289217 369306500 736237188 195019158 954227928 252962990 704431513 37275245 660765062 186244437 548748527 155241439 293192373 382904427 681765297 505061211 448262245 810021050 152243323 943793512 53226850 587179274 480361743 458156391 38844979 330274784 610447918 361002681 660765062 629101079 586370291 746394036 953882020 812414090 539381059 937158597 465759767 408032939 32806834 713146141 80485362 630238886 774489082 992169078 174140940 968755777 770864525 170941326 140129038 160287690 802009078 2379379 830619816 516175014 955501918 938080232 331638088 53195413 542382913 53966525 753419354 991615550 264408147 522332929 940188502 581831913 259646582 888259120 305990981 215289803 884059813 248642173 152523810 378961655 618542887 526944836 827311105 757709512 247234349 579757115 559014304 604181881 64420967 944573659 662421393 408032939 913521589 404152565 746992914 979750308 619842427 33511708 10475035 757709512 947413305 726620654 306258744 789617647 206036522 616057762 269911067 325554372 888699423 727578179 808866527 79509313 685702028 378961655 512614298 831241130 542382913 997329398 254203892 887548285 722768643 106790696 904771946 112390393 645094664 327773233 956815883 174862116 251188854 223299794 80485362 531135820 653201202 360743135 751925989 128450928 602396426 509144872 286037808 838803091 412979540 485509833 407091770 992169078 306607837 145885851 956815883 509019925 284588557 114409323 152866011 427184372 878442641 896029805 885549757 686335042 334299650 629101079 375066210 136412292 424594759 573480571 115090276 981996224 575023903 937158597 857535330 55108095 862177563 2076768 302151126 334932282 710224239 145885851 877167702 426814174 128702236 5299425 264408147 287768226 23262398 324129364 750563611 10369081 918225489 175060805 774489082 426814174 430088921 516175014 626833449 106790696 247234349 47529701 885549757 451521521 854969794 667313812 633573519 607041944 29069209 155241439 512614298 835212499 72820570 114409323 502849508 850484222 292972503 989729323 862254110 854243215 776820092 246058339 465697134 40131409 424594759 962073361 926044257 506178629 896571061 630238886 99294732 195019158 367026304 170941326 954677909 630977998 831467447 944573659 412979540 750750593 152618584 433921335 407629453 786320493 274113481 888259120 38844979 112090095 757850417 884952974 885549757 160287690 854969794 328764419 292972503 522663253 152523810 942899938 554222239 396138845 922858580 943235508 74587532 983373150 40448245 646710523 251042004 978947655 465759767 296751278 835339516 907095826 803588261 378961655 956286779 215052415 886149363 992169078 367026304 464444922 103669472 24089615 456956861 441621000 617908997 36265302 308142020 628820972 39220584 968755777 298727845 403519778 705304879 165821462 433686203 382904427 429277230 938456692 115090276 420636144 786380583 63192647 760370490 250749017 275349681 68748842 884072178 996943901 292149520 953267424 857535330 812414090 67831588 88335614 332834875 218611070 186285312 806792339 464130920 396138845 572588387 103219970 587469038 735710261 237389399 699230813 765027062 464444922 428572243 103219970 67831588 682170984 947413305 896072909 433686203 24089615 862254110 98231977 802009078 543865019 293192373 299462930 679463383 396937914 254203892 267829614 827311105 910818482 234980621 885353274 257214051 968755777 623398671 962430008 954677909 969494113 776820092 172382592 595030753 310726569 190979155 360743135 857535330 298050322 640925332 56927881 904771946 996943901 261683638 215289803 799588075 128450928 254203892 630629857 979740237 272303478 633587956 589760538 918225489 874297853 471393875 66490779 662421393 81337657 498840912 464444922 971894015 597784477 954677909 749497174 770594967 581831913 156817178 433921335 736624310 458156391 24188768 841210236 13112382 815123402 770594967 117210451 661321016 620243558 918225489 515426984 969294148 925555858 292149520 250832323 722768643 686335042 927806038 964902255 264408147 560623000 950497221 369306500 94279561 902464469 760231333 405444604 242028021 727245017 840130613 767187616 125204206 232177196 743614603 33511708 953882020 582273012 215774690 400218902 154538466 831380531 650697444 27735709 10475035 884952974 776820092 103219970 824770361 787269565 887794841 38085353 407091770 546141085 538025980 349076114 751925989 506919968 587469038 993091440 877088774 698320352 710224239 971549242 705304879 836376015 247234349 456137963 956286779 972710252 284588557 299462930 211958450 995876182 292972503 5299425 704431513 475344103 503666498 786320493 900796599 859168292 929504680 590918818 969294148 782533040 598426014 79509313 945394518 527595027 966683628 509664709 125829791 557710104 936312210 560623000 703490607 266583970 601630030 49948206 858127225 907095826 920721173 140551765 710224239 776835194 430101007 394791153 936312210 55018341 361435434 960543625 773781000 566125822 950673785 396937914 481894295 668964848 420052652 106790696 586446680 604181881 407629453 451551269 247221668 187104147 60750487 872434540 696443558 496698204 82689280 182214511 546679009 582273012 860477160 87392830 926044257 972710252 358401766 313272965 302151126 810021050 31215478 209497607 53525809 195733178 429277230 137529801 481894295 327773233 162062292 448881532 502849508 288072509 527654256 790270533 74587532 960796073 292149520 829614460 344876805 174335822 687988023 527595027 31215478 172894131 203331888 884952974 512614298 646710523 570764323 179981178 802009078 140725908 886917295 686335042 931966477 835198840 801623766 361002681 115509283 152314280 679463383 306597948 208625324 387703244 864016134 237172271 10475035 165821462 992001870 390793037 432089082 55018341 433686203 788118407 936312210 40131409 982370833 632378665 251188854 475344103 982370833 866337119 196106606 296751278 751925989 688177128 808866527 426814174 851400664 495854210 638516505 325554372 630201811 4519262 228290502 378961655 518384931 965948435 763431295 213097363 893019475 572465104 626833449 485063015 23262398 205387898 567343883 781246194 940188502 324986193 700560235 36265302 129724737 955730659 857535330 182214511 422532994 991615550 851400664 324129364 850386354 256866745 904771946 10369081 344876805 56927881 712346140 851759377 28363157 396937914 633573519 382904427 190929591 543865019 408395896 396138845 242028021 298050322 809429735 527595027 586446680 702745028 910850066 505061211 532803593 607041944 877167702 143200457 776352608 858798711 462762217 896072909 126695727 972710252 931086800 51457589 776352608 962073361 824770361 37275245 632014852 394791153 927806038 835198840 498840912 109054120 559014304 20148474 538810384 420636144 551289217 314069534 808866527 630238886 538025980 750978759 247221668 307060809 946612927 311808379 760231333 382904427 322974842 246058339 656623172 687055288 431406787 179991869 73848009 172382592 765027062 646710523 709613471 174335822 93651148 554242697 860377902 250832323 322974842 81337657 979740237 572465104 618542887 737945381 326469359 831380531 215774690 994587826 946916156 225771141 918225489 241184545 831467447 589760538 396743027 463496366 136384659 225858850 242028021 896072909 40448245 835198840 550336314 393120342 920628541 963141978 292972503 205387898 577970627 835198840 966131311 853170454 328462418 420636144 858127225 35128915 850386354 588034909 183440003 250749017 927806038 782533040 683406807 485063015 633573519 624819674 650990283 78775552 770993588 668964848 83066601 145885851 597206610 940381563 712346140 349076114 72820570 607760956 776820092 262406489 366854683 831380531 979740237 630629857 181668423 464444922 955501918 866568903 722768643 981996224 922858580 40131409 375066210 815123402 31215478 829983432 244528344 396138845 638516505 853170454 687988023 307403622 617908997 812414090 42657625 762749463 921198791 476912096 31615284 349076114 332834875 912948600 559014304 443960759 850386354 170941326 363976852 349076114 685702028 400218902 971894015 413592826 632402794 47529701 489130642 87392830 145559297 943793512 53226850 433921335 430101007 587179274 846351340 359714925 103669472 187104147 499057158 829614460 674485068 207442482 315747769 817743547 64420967 424974082 548748527 887548285 956286779 733642252 695599688 79523589 255644658 390275103 806664207 792846009 715779797 715957434 860477160 334932282 802009078 971549242 931640418 836376015 969294148 676975489 152618584 667844649 361435434 885141769 334299650 218611070 814662325 629101079 776352608 207844781 326469359 1736950 950497221 699733109 6720560 641231120 577970627 10369081 645094664 995876182 681930584 55108095 776820092 287768226 514650194 531135820 650697444 296751278 322974842 841210236 838331644 678474526 67700412 627110568 181668423 607760956 619842427 498045048 489130642 394791153 332834875 507016471 860477160 630238886 858127225 186244437 802009078 175507355 929504680 916956968 904771946 276676140 663670886 577673184 80415088 516175014 922706719 968670974 807117750 550322314 886149363 393120342 254203892 778123726 814662325 299994808 286037808 449022331 242186770 650036494 298727845 130160246 431406787 403519778 174140940 160287690 918225489 566125822 911302173 382904427 743614603 55018341 38844979 60017144 103669472 413592826 363976852 699230813 407629453 262406489 922706719 315343704 295366548 835212499 148087911 342116147 602396426 359714925 754580366 560327459 275349681 993091440 927806038 27735709 489130642 79523589 940188502 10369081 354807942 250749017 630201811 721769014 332834875 527595027 145559297 413592826 527654256 664041213 151364594 172382592 142903358 997329398 992001870 943235508 763431295 727578179 633573519 360743135 710224239 396138845 770993588 788118407 703490607 571019028 575895835 531333917 514650194 250885472 946916156 121069546 757850417 390275103 886149363 994587826 940188502 213097363 308142020 247822207 242530683 170941326 156817178 975478549 802009078 754133002 103733806 458363994 387176309 953267424 637769046 2076768 824770361 160287690 700560235 32954995 511330454 400178823 488295044 817743547 885549757 195019158 626932919 727827821 489612980 750978759 617908997 220576148 286037808 112390393 675472009 775682536 956286779 145885851 428572243 592981604 893019475 613596687 15037608 205387898 367026304 737945381 201717402 408032939 129724737 250832323 302151126 938080232 183440003 478892468 292149520 750978759 577970627 19911869 940188502 81553943 932584021 485262404 547547687 570796148 562773407 882804101 628523361 81337657 926044257 10369081 753419354 662972501 503666498 520071928 425392410 636434256 918225489 495854210 600441802 441621000 550336314 250749017 211958450 850484222 32806834 443960759 237389399 223299794 941586175 727245017 311613451 56927881 251042004 288072509 941586175 79523589 922858580 388085842 857535330 81553943 296305836 170938835 660765062 143200457 696443558 984047482 765027062 812044550 878442641 163229392 131323888 852604705 174140940 689757867 840130613 456137963 888553258 970320952 72820570 424974082 860377902 767839638 255644658 559957428 548748527 441621000 215792516 35128915 244528344 965948435 738612855 112090095 492009082 247822207 424594759 314069534 28363157 789617647 251188854 427184372 489612980 338929165 660765062 494336936 954227928 885353274 539381059 601740259 936312210 458363994 650990283 88335614 982370833 885141769 660765062 733642252 955501918 925555858 295366548 737945381 293192373 607965234 444897967 732559957 306607837 554242697 904771946 155241439 103733806 556619020 814295984 835198840 662421393 993091440 838655651 850484222 874124920 114409323 29069209 815123402 396806189 98231977 289736829 746394036 148087911 196460706 722768643 249820698 125204206 119279869 206036522 808614164 432089082 795472528 60750487 870201182 740340897 15903366 73848009 53195413 98824830 979750308 215977916 27735709 876868627 566554997 422532994 505061211 38844979 996943901 72820570 581831913 47290536 338312978 305068796 697742034 151364594 209497607 751925989 581831913 882364001 527595027 533864165 719601437 900796599 506919968 640849273 629101079 628523361 698320352 292696118 246058339 715779797 287768226 887794841 687055288 652018277 522663253 432089082 940381563 430101007 572465104 115090276 449022331 638516505 205387898 438183310 311808379 630201811 36265302 663670886 49948206 838655651 531135820 922706719 38085353 465697134 729868696 563678994 912948600 738612855 860708299 554222239 478892468 750563611 548964093 512614298 40131409 430101007 408032939 855636134 992169078 679463383 613596687 422532994 299994808 269911067 983373150 177689820 338631458 190979155 629101079 920721173 485262404 945394518 449022331 920628541 134971740 567948101 174862116 448262245 559957428 953882020 942899938 78649514 838803091 637769046 187104147 115509283 190323279 633587956 338312978 736237188 400178823 827311105 10369081 31615284 996943901 746992914 15903366 885995802 114409323 884072178 252792947 193648030 531333917 709613471 737945381 489612980 369306500 133739154 137529801 23973553 441621000 488295044 944573659 650990283 232177196 396050095 623206361 882364001 991615550 538810384 829614460 154538466 531135820 126695727 134801439 303230482 338312978 93478833 925555858 186285312 604181881 98287438 175060805 407629453 526944836 830619816 5299425 753419354 793291205 408395896 117210451 760231333 20148474 82689280 262406489 244528344 694954883 21190596 334211676 214650974 632378665 757815664 732245352 430088921 187104147 298727845 36265302 931640418 172894131 151364594 539035187 93651148 761330904 266213579 134971740 860377902 494336936 653201202 800460688 465759767 226492467 740340897 781246194 824770361 140725908 553191189 441621000 712346140 152314280 513440742 667313812 550336314 190323279 633587956 910818482 271484655 604181881 31615284 37275245 723661847 51457589 274113481 971549242 183440003 726620654 696443558 456137963 451817798 602832600 746092812 916956968 503666498 137529801 131323888 159828635 311613451 452156279 488295044 175507355 601630030 449022331 760231333 448881532 206036522 664041213 270237875 749497174 448262245 48746678 407629453 299462930 991073887 735891721 420052652 996943901 219054502 686884353 363976852 613596687 456956861 970320952 780870754 287239117 94279561 338312978 715779797 51457589 678884863 749497174 98287438 2379379 533864165 485509833 743614603 232177196 215977916 112090095 129724737 668964848 770594967 140551765 422532994 121069546 322974842 251367294 575895835 32954995 202477791 971549242 152243323 60017144 412979540 589760538 304621545 556619020 656623172 531333917 490344724 713146141 763431295 53966525 123073176 2076768 489612980 140551765 375066210 623206361 654830523 448881532 940188502 215289803 827311105 812414090 156817178 195733178 533455280 842970782 152523810 226492467 922858580 55108095 678884863 405444604 98824830 841780337 632402794 667313812 123073176 858798711 190929591 179981178 685702028 604181881 289736829 276676140 662421393 134801439 428572243 888259120 650990283 944573659 152866011 568142039 956815883 667313812 900796599 851759377 15037608 850484222 264750083 601740259 696443558 49614749 271484655 98231977 602396426 19911869 683406807 757709512 527654256 509019925 715779797 441621000 610834602 205387898 286037808 708094860 702364434 688177128 586370291 896029805 950497221 812414090 32075030 353964006 645094664 737945381 215792516 452156279 884059813 711532060 264408147 462394151 60750487 749497174 770993588 56927881 538025980 573480571 722768643 376974209 498840912 968670974 28363157 241184545 331638088 546141085 953882020 630977998 585165457 990121035 315747769 427184372 156817178 992169078 305990981 35128915 876263470 835212499 50241607 531333917 748408317 687055288 308142020 983113723 691982506 408032939 803588261 20148474 351424753 37275245 882364001 404152565 128702236 629101079 244528344 735891721 640849273 498045048 801623766 963141978 763431295 60017144 572588387 117210451 23262398 338312978 936312210 36265302 971894015 852107700 575023903 991615550 662421393 47349911 640925332 397928982 15037608 792846009 947413305 2076768 21190596 307060809 838655651 885141769 422532994 40131409 626932919 767187616 308142020 5299425 103669472 267829614 186285312 618355033 877167702 252962990 257214051 36055646 884059813 134801439 660095934 388085842 884059813 767839638 53525809 889608806 929504680 361002681 455539394 776835194 237389399 754133002 757815664 66490779 858127225 299994808 675472009 942899938 956286779 195019158 884072178 15903366 583924389 767839638 858127225 560327459 67700412 806792339 816971086 315297566 152243323 520071928 518384931 817743547 77819776 910818482 994877696 668964848 518384931 842970782 322974842 993091440 332834875 572465104 152866011 744008188 303230482 993091440 562773407 571019028 885549757 182214511 152243323 526944836 126695727 314069534 485153920 215052415 539957336 543945175 864016134 360743135 498840912 51457589 257214051 780061015 650990283 925555858 344876805 992169078 503666498 338929165 448262245 4519262 982370833 298050322 13112382 636434256 109369069 179981178 6720560 66490779 13112382 891279504 103669472 874297853 585165457 5299425 893019475 251367294 80485362 627110568 94279561 287239117 430284321 572465104 688534928 152314280 163769090 522663253 944068218 767839638 610834602 969494113 251042004 787269565 931013644 887548285 174140940 155241439 40656291 315297566 115090276 858040709 488295044 282751746 38338132 98231977 331638088 968670974 289736829 207442482 511330454 215289803 375066210 699230813 757815664 942866882 251042004 792822959 133739154 2379379 590208882 668964848 1926282 359859765 736624310 925555858 103669472 317751260 932584021 632378665 864016134 994587826 484158080 140725908 540394532 870201182 299113502 722013570 581063820 507016471 776352608 87392830 602396426 678474526 640925332 852107700 264408147 361002681 211958450 746394036 183440003 215052415 518384931 815123402 203331888 854243215 489130642 170941326 688577702 968670974 270237875 209497607 251188854 311808379 691982506 287239117 753419354 964902255 858127225 371179314 979740237 287239117 743614603 708046990 598543708 781246194 125829791 359859765 681930584 359859765 367026304 174862116 846351340 754133002 328462418 443960759 760370490 573449906 650990283 498045048 242186770 37275245 115509283 79523589 851400664 330205547 546679009 155241439 210621083 485509833 502849508 550322314 860477160 215289803 920628541 572465104 247234349 817743547 681930584 247822207 632402794 112390393 846351340 780061015 765027062 5299425 151364594 38304068 387176309 159828635 99294732 789617647 293192373 757709512 408395896 780061015 663971090 506919968 808866527 223299794 617908997 79509313 367026304 836376015 292696118 650036494 804406873 588034909 748408317 121069546 234980621 36265302 746992914 694954883 640925332 970911538 533455280 112090095 922706719 163229392 433686203 88335614 251042004 325554372 135975430 299462930 638516505 114409323 700560235 334932282 430284321 667313812 490344724 369306500 163769090 53966525 851400664 369306500 266213579 711455867 991073887 735710261 539381059 604881661 77819776 396632533 831467447 852755974 913521589 932715562 931966477 55108095 918225489 641231120 128702236 403519778 344876805 602832600 539957336 48746678 757850417 727827821 152618584 579757115 548748527 2379379 538025980 359714925 98824830 404152565 991073887 413592826 786380583 33511708 884059813 715957434 115509283 789617647 269911067 195019158 950497221 689757867 186285312 698320352 448262245 396632533 950497221 314069534 408395896 282751746 923927991 349076114 618542887 33511708 303230482 369306500 74587532 506178629 700560235 891279504 554222239 112090095 50241607 689757867 93651148 989729323 306607837 721769014 60750487 866568903 502849508 225771141 485153920 162904272 780870754 349076114 804406873 360743135 242028021 853170454 757815664 718980624 679463383 328764419 696443558 713146141 618542887 968670974 32806834 860708299 628523361 829983432 129724737 795472528 254203892 7807006 929504680 866337119 136384659 456137963 514650194 376448548 862254110 711455867 444897967 458290565 331638088 597784477 23973553 698320352 247221668 786320493 563678994 359859765 67831588 413592826 40448245 746394036 776820092 916956968 893019475 298050322 451817798 699230813 190929591 520071928 67831588 940381563 681765297 195733178 736237188 250749017 745200166 579757115 498840912 179981178 407629453 334932282 465759767 579757115 219054502 787269565 174140940 602832600 770594967 5299425 412979540 138442062 945394518 458156391 745200166 53195413 512614298 571019028 305990981 315297566 431406787 223299794 862254110 559957428 945394518 172894131 630775839 359859765 80485362 592981604 471393875 55018341 931966477 688177128 946916156 817743547 876263470 963141978 211958450 172382592 946916156 220576148 864016134 250885472 546679009 458156391 769327548 550322314 637939784 627110568 190979155 225771141 289918211 616057762 396050095 732245352 743614603 397928982 896571061 338929165 617908997 146573202 183440003 995876182 567774282 250749017 215792516 19911869 136384659 925555858 915330573 854243215 780870754 962073361 242530683 207442482 10475035 103219970 201717402 989729323 838331644 55018341 910850066 298050322 326469359 764459345 202477791 388085842 311613451 451521521 430284321 506178629 780870754 597784477 931640418 597784477 186285312 298050322 47290536 944573659 417074904 694954883 795549341 272303478 152618584 187104147 511330454 15903366 125204206 992169078 367026304 247822207 661321016 287768226 650697444 775682536 857535330 342116147 292972503 424974082 572588387 758889515 266213579 719601437 946916156 405444604 888699423 360743135 50241607 896029805 422532994 387703244 956286779 249670598 247221668 485509833 559014304 56927881 688577702 968755777 763431295 515426984 774489082 262406489 862254110 496698204 514650194 560623000 275349681 215052415 190929591 683621666 237389399 299994808 430284321 757709512 955501918 630629857 344620844 287768226 215774690 215052415 854969794 522332929 551289217 165821462 770993588 88335614 645094664 866568903 214650974 315343704 691982506 225858850 738855203 888259120 303230482 495854210 153196022 47349911 247006479 87392830 195957995 451551269 885995802 960543625 50241607 213097363 567948101 994587826 770594967 771803404 6720560 754133002 331638088 134971740 228290502 136412292 650697444 68748842 152523810 983373150 688534928 371179314 887794841 2076768 123073176 359714925 101231409 172382592 587469038 390275103 723661847 866337119 254203892 205387898 181668423 81337657 887794841 449022331 956815883 143200457 257214051 739696834 540394532 353964006 80485362 775682536 918225489 256866745 31615284 187104147 632402794 49948206 941586175 793291205 270237875 103219970 401452903 4519262 540976336 750750593 344876805 36055646 587469038 573449906 597206610 792846009 448262245 708046990 802009078 404152565 979740237 246058339 358401766 939725993 846351340 697742034 295366548 939725993 286037808 299994808 949084393 382210484 407629453 646710523 940188502 288873549 640849273 975478549 562773407 283321520 471393875 27735709 270237875 250749017 774489082 276676140 947413305 543865019 422532994 604181881 591292508 975478549 133739154 554242697 6720560 175060805 691982506 4519262 540394532 527595027 715779797 735710261 623398671 433921335 808866527 667313812 750563611 306597948 331638088 167276070 40448245 353964006 296305836 939725993 650697444 250832323 29069209 207442482 306607837 103219970 481894295 891279504 650990283 390793037 420052652 506919968 295366548 907721720 656623172 509370562 806664207 38085353 940188502 989729323 527654256 349644605 807117750 694954883 864016134 103219970 131323888 458363994 691982506 38085353 838655651 581831913 40448245 143200457 542382913 19911869 776352608 443960759 559014304 718980624 632402794 836376015 824770361 394791153 884072178 557710104 361435434 771803404 214244685 607041944 367026304 719601437 626833449 378961655 152523810 53195413 527654256 285947848 202477791 272303478 626932919 485509833 633573519 109054120 23973553 330274784 49317804 241184545 99294732 378961655 843005594 938080232 306607837 330274784 550336314 708053570 140129038 613596687 830619816 984050047 750563611 698320352 539957336 668964848 814662325 739696834 945394518 776835194 93651148 424974082 511330454 451521521 645094664 573449906 135975430 776835194 776820092 831241130 598543708 458290565 910850066 781246194 650697444 405444604 768561257 408032939 103669472 117210451 304621545 955730659 904771946 143200457 67700412 376974209 214244685 955730659 315747769 196460706 321628921 324129364 361435434 413592826 994877696 223299794 703514531 800460688 920628541 702745028 884072178 19715614 568104980 155241439 499057158 767187616 455539394 604881661 533455280 405444604 885995802 248642173 831467447 884952974 266213579 53195413 77819776 943235508 489612980 250749017 721418370 983373150 688534928 699733109 49317804 48746678 242186770 287768226 678884863 155241439 136384659 750978759 601630030 964902255 29069209 287768226 417074904 40131409 797746066 853170454 103733806 179991869 563678994 307403622 23262398 60017144 687988023 382210484 269911067 63192647 247006479 330274784 809429735 602832600 662421393 885353274 540976336 205387898 208625324 995876182 723661847 778123726 72820570 506919968 43970470 896029805 39220584 2379379 650697444 841210236 480361743 165821462 275349681 852604705 888553258 114409323 598543708 63192647 966683628 456137963 408395896 727245017 736237188 264100442 533455280 369306500 306258744 978947655 827311105 446968233 502849508 307403622 490344724 463496366 904800517 656191811 736237188 35128915 946916156 353964006 776820092 744008188 806664207 420636144 513440742 808614164 585165457 143200457 183440003 629101079 946916156 4519262 567774282 143200457 540976336 758889515 511330454 983113723 641635851 727578179 274113481 757709512 876263470 290474734 581063820 582273012 266213579 885647994 242530683 960796073 354807942 630238886 884059813 776835194 247841801 852755974 874124920 299462930 489130642 746394036 103669472 535533605 465697134 330205547 816971086 697742034 858127225 459617527 911302173 787269565 885549757 241184545 23973553 989729323 710224239 24089615 763431295 729868696 743614603 88335614 808866527 627110568 736237188 620243558 101231409 851829959 610447918 682170984 438183310 53966525 683406807 174862116 23973553 24089615 527654256 571019028 748408317 726620654 604968568 939725993 425392410 851759377 259646582 307403622 67700412 394791153 103733806 708053570 425392410 48746678 598543708 29473993 152243323 850484222 969294148 121069546 597206610 953267424 131323888 136412292 438183310 592970093 278160655 413592826 946916156 506919968 186285312 810021050 40656291 938705675 904800517 324986193 641635851 635302209 129724737 629101079 548748527 885000402 465759767 250832323 195957995 940381563 215774690 874297853 922858580 458363994 920721173 767187616 73848009 560623000 420052652 288072509 563678994 287239117 969294148 780061015 292149520 172382592 396743027 686884353 754580366 324129364 208625324 907095826 799588075 601740259 746992914 112390393 992001870 299462930 857535330 174335822 913521589 800460688 132556595 859168292 195957995 573449906 375066210 250749017 214650974 767187616 432089082 324986193 344876805 762749463 292149520 306597948 278160655 964902255 788737791 854243215 864016134 885000402 292149520 47349911 209789164 940381563 956815883 81553943 457149478 103219970 23973553 456137963 840130613 152314280 73848009 722013570 550336314 49614749 700560235 494336936 567774282 290474734 567774282 249670598 795549341 109054120 13112382 889608806 292972503 573480571 40656291 361002681 257214051 979750308 215774690 337153847 499057158 56927881 887794841 831380531 465697134 526944836 407629453 314069534 735696627 625664180 492009082 548964093 740340897 686884353 695599688 306597948 840130613 573480571 551289217 47349911 367026304 668964848 425392410 808614164 490344724 546141085 208625324 252792947 550336314 55108095 547547687 463496366 896571061 134801439 136384659 859168292 302151126 762749463 967417280 215289803 274113481 577673184 533455280 119279869 610834602 172382592 181668423 916956968 407629453 627110568 687988023 252962990 685702028 396138845 72820570 788118407 654830523 53966525 626932919 641231120 451817798 543945175 591292508 767839638 601630030 632378665 538025980 872434540 244528344 697742034 244528344 134971740 286037808 888259120 109369069 218611070 723661847 965948435 661321016 732245352 444897967 19715614 396806189 940381563 292696118 851759377 949084393 400218902 824770361 511277493 286037808 463496366 247006479 889608806 77819776 592981604 681930584 359714925 174140940 403519778 174140940 307060809 721418370 298050322 456956861 282751746 550336314 888259120 583924389 686884353 550336314 174335822 407091770 371179314 311613451 697742034 751925989 349644605 838655651 464444922 610834602 613596687 896571061 543945175 538025980 896072909 652018277 300892929 626833449 613596687 645094664 140551765 152618584 983113723 918225489 944573659 511330454 812414090 513440742 463496366 502849508 207844781 683406807 143200457 292972503 237172271 982416551 674446970 923927991 527595027 489130642 953267424 626932919 338929165 795549341 7807006 922706719 939725993 425392410 338631458 290117216 264100442 618542887 252962990 900116034 371179314 247006479 758889515 306607837 577673184 922706719 458363994 688577702 616057762 289918211 829983432 876263470 324129364 955501918 573449906 465697134 172894131 687988023 140725908 601630030 647733367 691982506 891279504 803588261 165821462 910850066 140551765 451817798 33511708 994877696 632378665 153196022 789617647 457149478 388085842 424594759 338631458 39220584 912948600 795549341 313272965 215981255 727578179 412979540 789617647 354807942 548964093 492009082 400218902 292972503 699230813 154538466 708053570 860377902 656191811 190979155 674446970 740882715 962073361 125829791 324129364 109369069 496698204 80485362 29473993 650990283 918521256 56154381 836376015 234980621 53966525 745200166 764459345 619842427 981996224 354807942 250885472 553191189 378961655 255644658 342116147 457149478 841210236 942999703 841210236 709613471 708046990 696443558 287768226 921198791 548964093 547547687 943793512 586370291 727827821 186285312 571019028 704431513 205387898 931086800 597784477 39220584 907721720 430088921 739696834 305068796 299462930 431406787 68748842 67831588 288873549 917452919 749497174 115090276 288873549 396806189 300892929 539957336 276676140 770594967 399037712 753419354 334932282 540394532 288873549 736237188 338631458 572588387 213097363 600441802 299462930 126695727 792822959 691982506 264100442 98287438 566125822 125204206 934824360 242028021 155241439 736237188 887548285 407091770 761330904 947413305 573449906 274113481 902464469 660095934 918521256 331638088 35128915 375066210 218611070 838655651 495854210 177689820 207442482 950497221 885353274 174140940 630629857 763431295 800460688 654830523 404152565 244528344 758889515 778074990 446968233 696443558 241184545 910850066 817743547 746992914 829614460 154538466 196460706 688534928 790270533 931640418 674446970 433686203 535533605 202477791 509019925 786380583 403519778 201717402 456137963 567948101 248642173 39220584 324129364 181668423 134801439 247006479 989729323 628523361 579757115 80485362 588034909 358401766 771803404 67831588 607041944 152523810 475344103 117931902 557710104 163769090 984047482 548748527 943793512 617908997 792822959 132556595 735891721 710224239 32954995 271484655 420636144 488295044 298050322 618542887 711455867 234980621 449022331 830619816 159828635 518384931 570796148 723661847 943793512 807117750 630238886 685702028 607041944 920628541 627110568 918225489 885000402 321628921 938705675 663971090 630977998 98287438 590918818 650697444 136412292 38844979 376448548 969294148 55018341 769327548 925555858 361435434 884952974 47290536 174862116 202477791 215052415 801623766 509144872 567774282 647733367 840130613 829614460 904800517 787269565 886917295 711455867 511330454 38304068 862177563 247822207 109369069 250832323 765027062 426814174 152618584 789617647 40656291 516175014 770864525 324986193 275349681 808614164 567948101 456137963 722768643 506178629 306607837 535533605 944068218 170938835 193648030 360743135 748408317 390275103 489612980 218611070 503666498 662972501 244528344 252792947 888699423 727245017 533455280 971549242 982370833 711455867 251188854 912948600 768561257 511277493 931966477 960543625 286037808 140551765 540976336 163229392 115509283 984050047 808866527 902464469 485153920 146573202 126695727 782533040 771321738 829614460 298727845 109054120 751925989 248642173 332834875 972710252 181668423 378961655 771321738 306597948 632402794 885647994 911302173 896072909 969294148 130160246 412979540 984050047 736237188 601740259 795549341 287239117 295606018 282751746 559014304 829983432 214650974 874297853 738855203 112390393 24188768 618355033 703490607 852755974 877088774 939725993 886149363 650036494 133739154 314069534 874124920 940381563 13112382 449022331 598426014 55108095 304621545 47529701 921198791 934824360 920721173 932715562 53525809 172382592 780870754 408032939 947413305 923715439 94279561 981996224 41538784 896029805 630201811 852604705 425392410 19911869 750563611 792822959 860477160 88335614 969294148 882804101 296305836 943235508 74587532 117210451 542382913 688177128 432089082 841210236 712346140 315297566 181668423 307403622 944068218 960543625 41538784 437743643 49317804 509664709 251042004 866568903 332834875 719601437 603931167 330205547 78649514 359859765 261683638 983113723 917452919 860708299 31215478 955730659 936312210 130160246 771321738 940381563 259646582 338929165 289736829 792846009 289918211 334211676 922706719 226492467 926045944 334211676 215792516 172894131 751925989 990121035 857535330 310726569 259646582 24089615 750563611 761330904 553191189 647733367 109369069 378961655 23262398 338929165 163769090 991615550 547547687 299994808 32075030 215052415 893019475 964902255 917452919 995876182 945394518 792846009 660765062 636434256 38844979 170938835 244528344 968670974 994877696 590918818 638516505 463496366 687988023 451521521 885995802 618355033 559014304 287768226 941586175 711455867 53226850 507016471 877167702 872434540 183440003 337153847 802009078 134801439 132556595 678474526 38844979 285947848 257214051 613596687 721418370 587179274 851400664 623206361 705548145 2379379 595030753 937158597 32075030 315343704 927806038 485063015 214244685 831380531 42657625 299462930 876263470 808838846 195957995 264100442 583924389 128450928 80415088 520071928 632402794 968670974 331638088 938456692 915330573 37275245 736237188 968755777 801623766 812414090 801623766 174862116 927806038 400178823 271484655 566554997 661321016 349644605 50241607 251367294 809429735 106790696 109369069 991615550 129724737 991615550 637939784 396138845 687988023 405444604 247841801 931005739 133739154 509370562 518384931 767187616 551289217 851829959 953882020 560623000 954227928 507016471 660095934 170941326 702364434 764116955 770594967 396632533 126695727 858798711 955501918 288072509 776820092 155241439 765027062 902464469 860477160 554242697 211958450 632378665 926045944 361002681 750563611 296751278 590208882 601740259 776352608 996943901 956815883 349644605 878442641 451521521 311613451 944573659 931086800 581831913 308142020 858040709 864016134 35128915 214650974 965948435 638516505 535533605 93651148 223299794 562773407 735710261 884072178 938456692 947413305 607760956 623398671 459617527 884059813 317751260 242186770 891279504 163769090 134971740 921198791 459452716 140129038 944573659 396806189 668964848 938140278 256866745 234980621 448881532 271484655 836376015 266213579 588034909 29069209 997329398 679463383 165821462 237389399 112390393 430284321 88335614 681765297 964902255 547547687 220576148 917452919 554242697 117931902 829983432 407510599 810021050 776820092 641231120 344620844 969494113 29069209 446968233 877167702 390275103 328462418 965948435 174140940 993091440 760370490 858798711 344620844 360743135 904771946 246221518 626932919 267829614 334299650 2379379 206036522 232177196 954227928 604881661 375066210 296751278 305068796 223299794 21190596 251367294 344876805 587179274 264408147 459452716 53525809 193515742 604968568 962430008 480361743 458363994 154538466 767187616 532803593 338631458 942999703 458156391 626833449 494336936 214650974 620243558 10475035 699230813 562773407 572465104 603931167 938456692 422532994 451551269 492009082 866337119 628523361 942899938 547547687 979750308 40448245 128450928 633573519 311808379 311613451 858040709 274113481 686335042 196106606 47529701 780870754 981996224 806664207 272303478 123073176 778123726 215774690 249820698 375066210 938705675 98824830 218611070 344620844 962073361 304621545 352092606 540394532 207844781 938140278 780061015 242028021 722013570 465697134 515426984 598543708 694954883 904800517 179981178 266213579 613596687 228290502 20148474 921198791 433921335 814662325 207442482 918225489 427184372 590208882 205387898 41538784 978947655 940188502 420636144 632402794 539035187 237389399 248642173 344876805 328764419 292696118 187104147 696443558 667313812 712346140 884952974 660095934 795472528 562773407 77685914 768561257 458156391 23262398 137529801 583924389 937158597 422532994 359859765 591292508 170941326 50241607 983373150 814295984 317751260 567343883 288873549 953882020 315297566 302151126 505061211 115090276 566125822 538810384 462394151 799588075 507016471 109369069 535533605 67831588 776835194 936312210 885141769 640849273 456137963 660095934 636434256 942999703 396138845 808866527 582273012 80485362 349076114 660765062 136412292 738855203 885353274 98824830 52243955 900796599 997329398 274113481 505061211 771321738 394791153 31215478 349644605 630775839 866337119 746992914 47529701 539957336 620243558 23973553 15903366 632014852 601740259 444897967 618355033 513440742 970911538 814295984 376974209 572588387 635302209 695599688 498045048 598426014 24089615 966683628 143200457 38338132 620243558 904800517 437743643 254203892 522332929 201717402 205387898 39220584 413592826 931966477 282751746 183440003 40131409 637657473 1736950 597206610 979750308 136384659 838803091 982416551 112090095 151364594 514768035 949084393 109054120 553368896 130160246 610834602 342116147 885995802 727245017 858127225 624819674 444897967 349644605 417074904 313272965 396806189 282751746 806664207 902464469 967417280 441621000 540976336 437743643 284588557 109054120 247234349 60017144 80485362 15903366 125829791 40131409 994877696 296751278 322974842 853903669 837690635 49614749 586370291 49948206 575895835 56927881 153196022 396632533 745200166 995876182 632014852 815123402 98287438 246058339 293192373 134801439 926045944 647733367 74587532 829614460 251042004 475344103 375066210 907721720 862254110 852755974 896571061 408032939 98824830 808614164 132556595 607965234 683406807 282751746 259646582 858040709 366854683 256866745 854969794 352092606 874124920 850484222 271484655 943235508 619842427 587179274 264750083 557710104 982416551 885353274 407091770 938456692 591292508 19715614 94279561 711532060 949084393 858040709 835339516 896029805 67831588 810021050 247234349 616057762 783513992 749497174 587469038 749497174 746992914 795472528 162062292 737945381 152243323 937158597 10475035 397928982 190979155 170938835 982353486 852604705 115090276 137529801 876868627 969494113 444897967 711532060 550336314 138442062 412979540 317751260 954227928 300892929 293192373 938456692 153196022 170938835 430088921 237172271 41538784 78775552 626932919 404152565 527654256 938080232 763431295 624819674 982416551 754133002 295366548 560327459 278160655 299994808 808866527 15903366 709613471 620243558 548748527 912948600 750563611 52243955 293192373 896029805 298727845 722013570 748408317 207844781 911302173 458363994 53525809 495854210 478351140 225858850 992001870 607965234 292972503 40131409 803588261 420636144 840130613 276676140 64420967 810021050 780870754 762749463 489612980 746394036 738612855 676975489 851400664 970911538 598426014 250749017 705304879 790270533 396806189 726620654 284588557 592981604 540394532 264297813 855636134 708046990 23973553 570796148 553191189 744008188 152523810 739696834 551289217 860708299 363976852 697742034 740340897 19715614 209789164 732559957 696443558 623206361 152618584 464444922 136384659 232177196 140129038 896029805 292696118 955730659 843005594 656191811 922706719 960796073 703514531 4519262 465759767 396937914 29069209 285947848 577970627 137529801 663670886 531135820 862177563 674446970 656623172 437743643 567343883 359859765 967417280 138442062 396806189 624819674 396050095 1736950 103733806 546141085 982353486 241184545 640849273 112090095 433686203 757709512 396743027 307403622 152866011 311808379 430284321 55108095 736624310 246058339 831467447 522663253 563678994 324129364 763431295 943793512 208625324 405444604 602396426 246058339 154538466 246058339 803588261 721769014 979740237 187104147 29069209 749497174 814662325 285947848 269911067 885141769 893019475 829983432 237389399 726620654 242530683 792822959 567774282 516175014 73848009 616796881 181668423 106790696 877088774 708094860 83066601 853170454 480361743 850484222 704431513 136412292 712346140 159828635 548748527 451551269 125204206 496698204 38844979 207442482 481894295 990121035 257214051 960796073 42657625 896029805 215774690 625664180 80415088 241184545 846351340 808838846 603931167 408032939 488295044 557710104 206036522 359714925 99294732 413592826 50241607 498045048 193648030 963141978 299113502 702745028 83066601 186244437 837690635 932715562 691982506 782533040 563678994 390275103 255644658 996943901 760231333 220576148 770993588 426814174 115090276 330274784 401452903 349644605 888699423 172894131 485153920 842970782 39220584 938705675 271484655 910818482 640925332 449022331 583924389 735710261 21190596 969494113 886149363 252792947 432089082 334211676 570764323 299994808 322974842 978947655 824770361 668964848 816971086 29473993 920721173 241184545 679463383 764459345 98824830 2379379 344620844 140725908 553191189 478892468 363976852 866568903 456956861 960796073 462762217 456137963 358401766 668964848 80415088 4519262 203331888 458290565 433686203 970911538 49317804 325554372 145559297 775682536 854969794 413592826 586370291 531333917 430284321 334211676 769327548 852604705 60750487 209497607 163769090 334932282 511330454 885141769 412979540 29473993 47290536 572465104 125204206 858798711 753419354 140551765 344876805 15903366 904800517 874297853 553368896 981996224 103669472 2575238 527654256 983373150 128702236 989729323 489130642 620243558 401452903 152314280 305068796 426814174 43970470 267829614 503666498 942866882 783513992 56927881 691982506 870201182 900796599 51457589 922858580 992169078 633573519 47529701 407629453 778123726 98287438 812044550 264750083 103219970 154538466 32954995 230662076 718980624 877167702 427184372 93478833 143200457 219054502 264297813 628523361 396632533 597206610 838803091 488295044 560623000 577970627 342116147 74587532 699230813 786380583 250832323 304621545 984047482 653201202 630238886 803588261 314069534 695599688 137529801 361435434 955730659 513440742 7807006 264750083 831380531 591292508 767187616 695599688 674446970 268759041 694954883 946612927 960543625 551289217 361002681 637939784 215289803 723661847 175507355 816971086 750750593 918225489 972710252 254203892 506178629 293192373 81337657 778074990 5299425 932584021 860708299 824770361 708046990 148087911 667313812 331638088 388085842 920721173 195733178 654830523 983373150 771321738 452156279 567343883 984047482 408395896 962430008 803588261 396138845 610447918 505061211 489130642 560327459 586370291 787269565 152866011 266583970 254203892 250885472 801623766 776835194 860477160 315343704 660765062 249820698 975337465 396632533 215981255 771803404 321628921 427184372 738612855 193515742 703490607 498045048 284588557 543945175 481894295 557710104 73848009 315343704 896571061 324129364 448262245 989729323 417074904 841780337 704431513 174335822 551289217 511277493 93651148 683621666 546679009 250832323 878442641 29473993 702364434 757709512 783513992 77685914 827311105 205387898 738612855 896072909 484158080 689757867 306607837 942899938 125829791 49948206 757815664 721769014 992001870 437743643 485153920 426814174 966683628 938705675 757850417 172894131 763431295 638790258 678884863 475344103 640849273 522332929 328462418 496698204 931966477 560623000 738612855 146573202 941586175 983373150 358401766 420636144 247006479 787269565 308142020 678474526 886917295 451521521 546679009 858798711 23262398 641231120 40448245 776835194 72820570 195019158 274113481 159828635 163769090 775682536 24188768 49614749 598543708 969494113 275349681 424974082 64420967 24089615 884072178 866337119 244528344 225858850 67700412 835198840 610834602 128450928 153196022 623206361 408395896 776835194 98287438 984047482 915330573 641231120 292696118 965948435 704431513 170938835 138393155 195733178 40656291 307060809 956815883 630238886 247234349 647733367 123073176 307403622 888699423 638790258 115509283 213097363 295366548 592981604 876263470 531333917 568104980 369306500 703514531 735891721 753419354 448881532 748408317 1736950 900796599 683621666 275202504 170941326 358401766 938705675 512614298 978947655 932584021 628820972 271484655 771803404 688577702 515426984 255644658 433921335 904771946 721769014 193648030 761330904 681930584 970911538 918225489 195019158 641635851 812414090 941586175 452156279 661321016 995876182 773781000 2379379 743614603 172894131 292972503 193515742 290117216 223299794 444897967 396632533 117931902 713146141 101231409 143200457 653201202 77685914 465759767 38304068 757815664 588034909 763431295 162904272 722768643 68748842 585165457 405444604 696443558 992169078 533455280 647733367 292696118 960543625 135975430 850484222 489130642 656191811 29069209 272303478 687988023 485509833 803588261 788118407 927806038 891279504 703514531 498045048 746092812 972710252 125829791 175507355 214244685 664041213 931966477 943235508 618542887 464444922 284588557 287768226 228290502 441621000 675472009 112090095 568104980 51457589 562773407 587179274 626833449 37275245 344620844 806792339 703514531 225858850 795549341 79509313 662421393 965948435 704431513 396632533 683406807 727245017 661321016 49614749 129724737 925555858 242530683 506178629 322974842 638790258 305990981 793291205 430101007 678474526 743614603 787269565 966131311 207442482 955501918 334211676 604968568 526944836 570764323 994587826 303230482 963141978 885549757 394791153 203331888 311808379 843005594 646710523 29069209 925555858 884072178 155241439 736624310 218611070 550336314 448881532 532803593 247822207 47290536 459452716 604968568 764459345 854969794 635302209 969294148 87392830 151506993 795472528 462762217 713146141 754580366 579757115 567948101 543865019 913521589 459452716 918225489 338929165 632402794 882804101 31215478 342116147 354807942 870201182 40448245 511277493 838331644 287239117 816971086 37275245 67700412 737945381 709613471 887548285 884072178 285947848 490344724 630629857 247006479 721769014 838331644 683621666 917452919 40131409 723661847 592981604 663670886 307060809 816971086 458156391 455539394 829614460 417074904 629101079 877167702 408032939 438183310 315297566 946612927 78775552 456956861 33511708 956815883 727245017 154538466 896072909 630775839 361002681 617908997 587179274 660765062 607965234 554222239 983113723 234980621 970320952 771321738 866568903 295366548 689757867 115509283 165821462 799588075 638790258 703490607 218611070 181668423 842970782 153196022 196460706 740882715 630977998 237389399 427184372 809429735 628820972 152618584 174862116 215981255 715957434 753419354 2076768 429277230 7807006 771321738 33511708 152866011 213097363 304621545 616796881 567948101 334932282 760370490 509664709 247221668 315297566 295606018 858040709 765027062 299994808 760231333 475344103 626833449 711455867 545538425 983113723 485153920 186244437 551289217 248642173 623398671 781246194 715779797 641231120 56154381 478892468 308142020 994587826 40448245 792822959 746092812 682170984 991073887 697742034 156817178 179981178 807117750 955730659 230662076 953267424 98287438 978947655 295606018 361002681 765027062 405444604 545538425 733642252 921198791 764116955 858127225 708053570 567343883 220576148 888699423 699230813 862254110 182214511 247841801 577673184 858127225 226492467 886149363 262406489 610447918 140725908 488295044 371179314 562773407 314069534 748408317 625664180 971894015 969494113 966683628 136412292 305068796 931005739 804406873 735891721 275349681 932715562 641635851 972710252 736237188 449022331 750563611 970911538 32806834 400178823 715779797 382210484 255644658 792822959 773781000 272303478 78649514 983373150 420052652 953267424 878442641 324986193 719307635 607041944 331638088 213097363 904771946 548964093 799588075 718980624 289736829 175060805 532803593 264297813 735696627 252792947 923927991 485262404 42657625 296751278 604968568 195733178 489130642 19911869 539957336 737945381 637939784 140725908 311613451 571019028 700560235 282751746 326469359 369306500 619842427 53195413 632014852 632378665 954677909 172894131 685702028 106790696 617908997 829983432 396743027 627110568 931086800 981996224 967417280 699733109 251188854 713146141 201717402 443960759 98287438 984050047 920628541 995876182 709613471 812414090 117931902 808614164 575023903 247822207 242530683 112090095 681930584 732559957 600441802 207442482 678884863 778123726 93478833 328764419 563678994 896072909 128702236 51457589 396806189 984050047 38844979 47349911 210621083 968755777 982416551 252792947 539957336 573480571 244528344 328764419 163769090 953267424 293192373 443960759 289736829 718980624 876263470 443960759 687988023 433921335 945394518 145885851 592639233 459617527 809429735 264297813 152243323 15903366 572588387 315297566 417074904 252962990 228290502 310726569 29069209 128450928 966683628 515426984 196106606 459617527 757850417 130160246 878442641 119279869 802009078 852755974 83066601 32954995 949084393 620243558 264750083 972710252 888553258 399037712 13112382 968755777 746992914 964902255 705304879 727827821 295606018 190323279 39220584 24089615 115090276 162904272 738612855 749497174 502849508 686335042 98287438 972710252 770864525 520071928 950497221 47529701 78649514 607041944 417074904 630629857 857535330 573480571 123073176 359859765 1926282 462394151 654830523 249820698 77819776 520071928 153196022 63192647 886149363 437743643 242530683 371179314 361435434 699733109 921198791 49948206 151506993 396138845 539957336 750978759 771321738 522332929 598426014 175060805 417074904 757709512 424594759 195733178 539381059 287239117 760370490 829983432 462762217 172894131 420052652 757709512 946916156 117210451 247221668 866337119 41538784 735891721 926045944 573480571 39220584 792846009 305068796 478892468 947413305 179981178 83066601 48746678 940188502 579757115 563678994 853170454 153196022 526944836 570764323 702745028 162062292 310726569 412979540 627110568 550336314 494336936 308142020 371179314 888553258 506919968 242028021 522332929 550336314 964902255 663971090 155241439 587469038 739696834 786380583 109054120 488295044 114409323 78649514 47349911 420052652 338631458 24188768 109054120 156817178 960796073 994877696 792846009 702364434 223299794 840075867 313272965 830619816 689757867 888553258 975478549 679463383 338631458 838655651 338631458 705548145 550322314 598543708 232177196 38844979 939725993 271484655 746394036 412979540 38085353 448262245 618355033 946612927 213097363 654830523 232177196 148087911 448881532 292696118 256866745 920721173 866337119 877088774 727245017 619842427 991615550 650990283 53966525 931640418 81553943 60750487 405444604 429277230 382210484 465697134 852604705 32075030 140725908 835339516 509370562 545538425 624819674 24188768 635302209 80485362 607041944 704431513 338631458 884072178 937158597 840130613 313272965 215774690 722013570 326469359 713146141 592639233 134971740 430088921 55108095 131323888 325554372 982353486 485262404 918225489 662972501 98287438 767187616 807117750 226492467 946916156 623206361 950497221 925555858 882364001 923715439 979740237 887548285 39220584 983373150 498840912 983113723 770864525 815123402 654830523 835212499 247841801 607965234 296305836 767187616 705304879 152314280 344620844 170941326 992001870 953267424 132556595 464444922 538025980 146573202 289736829 566125822 64420967 88335614 490344724 509370562 877167702 682170984 704431513 699230813 514650194 174335822 542382913 24089615 502849508 592970093 115090276 179991869 278160655 971549242 131323888 866337119 485153920 872434540 126695727 981996224 562773407 708046990 512614298 732559957 303230482 175060805 408395896 300892929 321628921 786320493 10475035 835198840 920628541 193515742 774489082 944573659 783513992 635302209 715779797 349076114 431406787 535533605 270237875 860708299 422532994 172894131 770864525 266583970 331638088 885647994 855636134 943235508 660095934 190323279 931640418 262406489 152866011 4519262 778074990 829983432 991073887 884952974 931640418 360743135 53525809 686335042 140129038 136412292 133739154 66490779 428572243 160287690 422532994 662972501 931966477 396632533 152243323 694954883 74587532 566554997 858127225 88335614 514650194 589760538 862254110 757709512 778074990 511277493 490344724 912948600 705304879 136412292 527654256 393120342 151364594 607760956 358401766 550322314 455539394 250885472 513440742 931005739 563678994 937158597 910850066 767839638 715779797 995876182 322974842 53966525 251042004 146573202 610447918 764116955 298727845 187104147 40656291 117210451 1926282 397928982 788737791 874297853 274113481 63192647 72820570 870201182 72820570 330274784 774489082 687055288 572588387 613596687 660765062 806744033 247841801 296751278 306607837 960796073 115090276 299462930 93651148 349076114 50241607 788118407 862177563 462394151 786380583 174862116 429277230 727578179 153196022 874297853 123073176 509019925 538810384 923715439 286037808 735710261 918225489 509144872 864016134 276676140 945394518 241184545 740340897 394791153 590208882 852107700 15037608 160287690 50241607 719601437 488295044 925555858 931640418 851829959 736237188 746394036 259646582 943793512 736237188 506919968 292972503 458363994 15037608 942866882 80485362 462394151 765027062 588034909 780870754 943793512 219054502 47349911 358401766 452156279 630201811 668964848 284588557 464444922 40656291 787269565 586370291 314069534 886917295 767187616 942999703 441621000 408395896 165821462 481894295 390275103 274113481 978947655 931640418 556619020 53226850 382904427 270237875 912948600 471393875 662972501 837690635 676975489 42657625 522663253 215792516 676975489 862177563 459617527 710224239 462394151 604968568 874297853 958668995 810021050 915330573 557710104 743614603 853170454 630775839 990121035 587469038 744008188 289736829 962430008 208625324 396632533 49317804 708046990 748408317 36055646 931086800 573449906 736624310 735891721 42657625 979750308 771321738 590918818 904771946 885000402 946612927 554242697 255644658 979750308 311613451 636434256 186285312 676975489 481894295 78775552 209789164 172894131 456956861 426814174 700560235 137529801 632014852 963141978 553191189 965948435 485153920 984047482 838331644 556619020 950497221 514768035 760370490 405444604 799588075 557710104 546679009 40131409 322974842 781246194 242186770 313272965 351424753 630629857 633587956 119279869 152618584 155241439 532803593 727578179 586370291 388085842 23262398 902464469 678884863 109054120 284588557 78775552 94279561 27735709 489130642 781246194 332834875 138442062 860377902 119279869 266213579 187104147 103733806 121069546 82689280 656191811 922858580 882804101 412979540 186244437 559014304 858798711 478351140 559957428 600441802 426814174 884059813 719601437 736237188 850484222 691982506 252792947 595030753 1736950 484158080 942899938 971894015 729868696 958668995 325554372 591292508 597784477 234980621 1736950 145559297 174862116 215774690 550322314 489612980 179991869 408395896 604881661 6720560 313272965 432089082 702745028 547547687 172894131 215774690 187104147 650697444 918521256 971894015 452156279 202477791 509370562 838655651 32954995 788737791 167276070 926044257 464444922 344876805 249820698 129724737 458156391 67831588 448881532 641635851 218611070 527654256 850484222 918225489 262406489 601630030 10369081 32806834 195019158 29069209 711532060 887794841 160287690 814662325 300892929 551289217 458290565 420052652 737945381 367026304 140551765 735696627 789617647 242186770 630977998 736237188 516175014 275202504 782533040 489130642 688177128 567948101 554242697 982416551 750750593 289918211 313272965 931966477 623206361 683406807 314069534 554222239 300892929 306607837 884952974 264408147 68748842 407510599 506919968 567948101 475344103 598543708 237172271 602396426 337153847 938140278 134971740 527654256 588034909 533455280 968670974 743614603 767187616 967417280 315297566 804406873 179981178 838655651 713146141 430088921 7807006 551289217 630238886 992001870 812044550 637769046 581831913 604968568 889608806 489130642 40131409 67831588 248642173 215792516 726950461 888699423 971549242 688534928 792822959 562773407 852604705 503666498 923715439 444897967 963141978 548748527 650036494 237389399 676975489 854902633 334211676 630775839 143200457 795549341 207844781 971894015 907721720 201717402 787269565 598426014 607041944 740340897 134801439 195957995 267829614 153196022 378961655 877088774 686335042 334299650 49948206 484158080 581831913 332834875 506919968 490344724 975478549 259646582 708053570 128188331 874297853 73848009 732559957 428572243 711532060 489612980 79523589 843005594 117210451 457149478 405444604 190929591 179991869 626833449 516175014 206036522 795472528 661321016 452156279 746092812 554242697 532803593 896072909 570764323 2076768 132556595 509144872 786380583 764459345 850386354 225858850 765027062 215052415 140129038 852755974 455539394 687055288 703514531 413592826 601630030 841780337 142903358 514768035 840075867 776835194 193648030 683621666 660095934 570796148 885549757 697742034 247841801 735891721 67831588 726950461 32075030 872434540 633587956 451521521 921198791 667844649 753419354 36265302 591292508 940381563 640849273 5299425 293192373 699733109 946612927 726950461 315747769 923715439 331638088 451551269 982353486 248642173 955501918 708046990 351424753 522332929 183440003 369306500 344620844 907721720 292972503 396937914 290117216 543865019 74587532 226492467 94279561 944573659 735696627 891279504 610834602 722013570 152866011 511277493 49317804 138442062 78649514 937158597 302151126 981996224 23262398 699733109 626932919 246058339 904800517 68748842 840075867 310726569 923927991 494336936 471393875 324129364 888699423 106790696 750563611 664041213 956286779 729868696 209789164 451551269 83066601 829614460 465759767 19911869 202477791 179991869 203331888 667313812 42657625 656191811 28363157 311808379 162062292 40131409 67831588 458363994 344620844 433921335 103669472 808838846 387176309 27735709 838655651 63192647 387176309 250749017 247234349 866337119 855636134 349076114 407629453 38304068 424594759 851759377 196106606 699733109 640849273 475344103 780870754 664041213 15037608 360743135 583924389 146573202 778074990 315343704 567774282 511277493 604968568 835198840 600441802 979750308 289736829 128450928 982370833 727827821 799588075 397928982 257214051 851829959 31615284 52243955 654830523 858798711 196106606 186244437 830619816 625664180 275202504 806792339 145559297 103219970 877088774 174862116 80485362 570796148 190979155 641231120 597206610 997329398 840075867 750978759 259646582 771803404 886149363 215289803 893019475 68748842 292696118 912948600 653201202 285947848 736237188 400218902 247841801 175507355 911302173 767187616 154538466 264100442 940188502 19911869 640925332 459617527 637657473 378961655 480361743 543945175 296305836 371179314 652018277 220576148 230662076 4519262 424594759 213097363 125204206 433921335 757815664 629101079 623398671 995876182 254203892 81337657 877167702 247822207 215977916 732245352 911302173 972710252 247841801 509664709 538810384 718980624 196106606 994587826 567774282 315297566 152523810 495854210 946612927 300892929 93651148 858798711 138393155 247822207 478351140 764116955 271484655 252962990 685702028 866337119 953882020 572465104 603931167 543945175 641635851 405444604 662421393 298050322 295606018 721769014 855636134 726950461 776820092 4519262 177689820 360743135 29069209 382904427 492009082 771803404 776820092 718980624 275349681 451521521 206036522 781246194 956815883 788118407 586370291 978947655 663670886 359714925 563678994 808614164 177689820 638790258 719307635 264100442 885549757 852755974 315747769 739696834 125829791 342116147 893019475 629101079 683406807 960796073 305068796 835198840 575895835 505061211 489130642 494336936 417074904 288873549 396050095 572465104 562773407 727827821 695599688 786320493 511330454 498045048 632014852 934824360 465759767 68748842 633587956 934824360 877167702 668964848 966131311 140725908 422532994 866337119 456956861 735710261 202477791 452156279 29069209 514768035 736624310 969494113 740882715 616057762 430284321 68748842 954227928 550322314 745200166 441621000 417074904 427184372 598426014 360743135 630775839 215052415 498840912 170941326 949084393 162904272 464130920 960543625 598426014 485509833 751925989 38085353 214244685 992169078 632402794 252962990 518384931 38304068 328462418 448881532 53525809 694954883 884072178 1736950 600441802 186244437 947413305 288873549 303230482 616796881 396050095 441621000 738855203 334932282 722768643 452156279 296305836 4519262 215792516 647733367 683406807 7807006 979740237 448881532 583924389 475344103 354807942 829614460 637657473 207844781 931640418 683621666 776820092 288072509 444897967 630238886 601630030 573449906 24188768 526944836 375066210 744008188 562773407 207442482 626932919 678474526 492009082 511277493 23262398 683621666 247221668 566554997 334299650 24089615 719307635 750978759 893019475 451521521 628523361 298050322 763431295 49614749 181668423 771803404 219054502 592981604 967417280 79523589 575895835 934824360 255644658 689757867 626932919 938705675 886917295 776835194 941586175 885141769 50241607 859168292 994877696 190323279 42657625 458290565 950673785 641231120 351424753 511277493 103669472 225771141 705548145 955730659 886917295 960543625 424594759 629101079 498840912 509370562 911302173 2575238 153196022 953267424 563678994 767187616 751925989 944573659 396050095 393120342 39220584 314069534 428572243 186244437 610447918 314069534 632402794 2076768 860377902 420636144 244528344 47349911 428572243 689757867 251042004 907095826 351424753 334211676 215981255 79509313 228290502 359859765 754580366 726620654 656623172 573480571 703514531 334932282 683406807 520071928 563678994 858040709 922858580 931005739 177689820 817743547 921198791 159828635 653201202 539035187 982353486 451551269 757850417 452156279 966131311 702745028 931086800 568142039 299113502 589760538 152866011 32954995 681765297 250885472 53525809 130160246 765027062 193515742 408395896 955730659 292696118 896072909 401452903 708094860 650697444 205387898 432089082 514768035 10475035 443960759 518384931 984050047 597206610 607041944 255644658 656191811 366854683 475344103 163769090 570796148 32075030 24089615 814662325 682170984 688534928 968755777 942999703 250832323 583924389 172894131 456956861 349644605 209789164 327773233 23262398 559957428 539381059 829614460 807117750 589760538 547547687 975478549 40656291 925555858 652018277 485262404 922706719 241184545 860377902 267829614 387176309 688177128 275349681 762749463 982353486 162904272 293192373 163229392 551289217 306597948 293192373 396632533 93651148 686884353 456956861 509019925 539957336 800460688 286037808 981996224 626833449 744008188 545538425 938705675 757850417 527595027 432089082 607760956 424594759 625664180 946916156 249670598 396050095 174335822 876263470 459617527 757815664 145885851 64420967 527595027 830619816 853170454 626932919 601740259 181668423 543945175 876868627 713146141 904771946 27735709 695599688 792822959 408395896 47349911 407629453 539035187 407510599 689757867 98287438 550322314 838655651 907721720 115509283 858798711 776352608 678474526 626833449 220576148 72820570 721769014 480361743 36265302 289736829 420636144 206036522 624819674 53525809 616796881 858127225 697742034 148087911 119279869 840075867 618355033 230662076 810021050 153196022 252792947 950673785 170938835 481894295 722013570 215792516 215289803 490344724 179991869 302151126 36055646 705304879 306597948 887794841 287768226 604968568 246058339 550336314 262406489 855636134 577673184 128188331 98231977 540976336 98231977 843005594 449022331 553368896 509019925 688534928 613596687 765027062 137529801 808866527 2076768 562773407 808838846 619842427 625664180 351424753 207844781 675472009 186244437 242530683 378961655 721418370 719601437 257214051 441621000 862254110 787269565 21190596 983113723 154538466 781246194 485153920 968670974 210621083 225858850 326469359 727827821 38338132 715957434 396743027 507016471 656623172 433921335 464130920 152314280 513440742 2379379 304621545 968755777 553368896 990121035 292972503 851829959 420052652 955730659 776820092 630977998 540394532 559957428 900116034 361002681 617908997 793291205 691982506 403519778 39220584 143200457 331638088 775682536 927806038 960543625 778074990 507016471 366854683 353964006 633573519 589760538 809429735 66490779 824770361 225771141 49317804 902464469 954677909 207442482 202477791 186244437 840075867 858798711 211958450 971549242 760370490 931005739 275349681 620243558 586370291 572465104 234980621 729868696 885549757 79509313 247234349 207844781 153196022 172382592 587469038 885141769 136384659 225771141 206036522 443960759 125829791 485262404 703514531 248642173 640849273 119279869 80485362 36055646 617908997 509019925 540976336 762749463 448262245 7807006 424594759 516175014 408395896 559957428 598426014 390793037 513440742 767187616 38338132 940381563 151506993 931005739 545538425 910818482 653201202 810021050 633587956 874297853 950673785 112390393 215977916 587179274 432089082 548964093 511330454 852107700 387176309 960543625 776352608 285947848 786380583 459617527 702364434 896029805 64420967 702745028 884059813 750750593 966131311 282751746 602396426 885000402 710224239 195733178 237389399 163229392 663971090 77685914 152866011 285947848 757850417 98231977 598426014 686884353 745200166 397928982 846351340 573449906 923927991 812414090 259646582 923715439 438183310 220576148 876868627 413592826 780870754 247822207 650990283 968755777 334299650 885141769 893019475 175060805 215792516 932715562 492009082 342116147 850386354 559957428 992001870 579757115 306258744 646710523 471393875 838803091 305068796 817743547 74587532 237172271 471393875 522663253 652018277 526944836 215981255 175507355 776352608 325554372 190979155 984050047 334299650 252962990 710224239 841210236 917795074 776835194 417074904 7807006 570764323 394791153 274113481 607965234 424594759 972710252 806664207 754133002 979740237 38085353 196106606 581831913 610447918 548964093 432089082 509019925 911302173 762749463 967417280 962073361 553191189 636434256 183440003 424974082 814295984 962430008 540976336 325554372 275349681 38085353 430088921 841210236 926044257 838803091 886149363 378961655 125829791 77685914 295606018 632378665 396806189 559957428 567774282 443960759 778074990 592981604 567948101 667313812 837690635 462394151 979740237 992169078 163769090 750750593 738612855 451551269 553191189 579757115 640925332 568142039 152523810 420636144 131323888 636434256 896571061 317751260 858127225 145885851 311613451 195733178 946916156 426814174 261683638 808614164 850386354 505061211 824770361 602832600 626833449 854243215 430284321 638790258 757815664 196460706 955501918 786320493 234980621 860708299 640849273 981996224 837690635 32954995 296305836 378961655 303230482 732559957 177689820 718980624 351424753 557710104 814295984 337153847 882364001 520071928 626833449 507016471 971894015 885141769 966131311 451551269 876868627 793291205 585165457 306597948 208625324 20148474 778074990 604881661 637769046 37275245 428572243 733642252 151506993 962430008 269911067 314069534 29069209 970911538 674485068 427184372 917795074 36055646 422532994 251367294 305990981 246058339 567948101 711532060 932584021 420636144 765027062 98231977 94279561 396937914 683406807 283321520 261683638 249820698 597206610 48746678 675472009 256866745 945394518 137529801 786380583 749497174 142903358 836376015 918225489 404152565 151506993 437743643 663670886 313272965 700560235 887548285 858127225 264100442 705548145 618355033 843005594 130160246 661321016 656191811 610834602 577673184 633587956 476912096 931966477 338929165 432089082 757709512 754580366 522332929 31215478 737945381 308142020 334211676 480361743 592981604 637939784 587179274 145559297 942866882 936312210 509664709 568104980 459617527 201717402 266583970 715779797 338631458 464130920 702745028 838655651 994587826 270237875 662972501 774489082 485262404 125829791 306597948 786380583 310726569 969294148 937158597 886917295 719601437 109369069 571019028 633573519 687055288 60750487 247822207 6720560 829614460 190929591 397928982 721418370 767187616 344620844 629101079 512614298 944573659 208625324 330274784 763431295 699230813 152243323 983373150 255644658 650036494 921198791 136412292 156817178 328764419 956815883 190323279 814295984 296751278 746992914 20148474 201717402 735710261 542382913 682170984 877088774 874297853 885549757 520071928 201717402 859168292 271484655 267829614 480361743 522663253 746992914 349644605 575023903 858040709 645094664 507016471 920628541 800460688 145559297 628820972 838331644 114409323 797746066 288072509 750563611 934824360 662421393 793291205 328462418 776835194 237389399 376974209 885995802 601740259 103733806 972710252 67831588 136412292 275202504 842970782 830619816 47349911 230662076 831241130 269911067 190323279 503666498 36055646 156817178 98231977 306258744 722013570 361435434 506178629 456956861 918521256 831467447 726620654 125204206 2575238 743614603 940381563 103669472 353964006 38338132 965948435 247006479 912948600 855636134 559957428 98824830 20148474 156817178 369306500 129724737 511277493 275349681 182214511 420052652 285947848 618542887 972710252 600441802 509019925 583924389 137529801 211958450 87392830 630201811 140725908 422532994 186244437 575895835 526944836 32075030 195733178 177689820 246058339 567948101 792846009 900116034 995876182 326469359 37275245 628523361 140551765 83066601 806744033 432089082 963141978 882364001 396138845 306258744 299462930 190929591 573449906 242186770 494336936 630775839 630629857 125204206 762749463 920628541 664041213 650697444 749497174 481894295 579757115 675472009 179981178 587469038 290474734 148087911 955730659 956815883 182214511 21190596 607760956 816971086 699230813 567948101 49614749 407629453 1736950 709613471 859168292 47290536 582273012 946612927 452156279 387176309 746394036 462762217 715957434 485153920 488788762 982370833 19715614 553368896 997329398 363976852 462394151 900116034 250885472 190929591 858798711 126695727 187104147 270237875 960796073 363976852 140551765 917452919 443960759 293192373 38085353 695599688 607965234 152243323 327773233 363976852 543865019 816971086 394791153 678884863 520071928 115509283 607760956 128702236 870201182 257214051 2379379 904771946 590918818 780870754 708046990 98287438 718980624 913521589 557710104 630201811 761330904 311613451 968670974 923927991 888259120 275349681 195733178 257214051 186244437 177689820 49614749 570764323 981996224 190929591 448881532 295606018 413592826 334299650 79509313 42657625 353964006 332834875 970320952 546679009 613596687 138393155 757709512 539957336 509144872 807117750 866568903 251188854 485063015 302151126 708053570 921198791 313272965 630201811 550322314 590208882 625664180 148087911 15903366 896571061 361002681 710224239 853903669 795549341 842970782 471393875 678474526 956815883 964902255 247234349 750978759 125829791 636434256 41538784 792846009 126695727 889608806 703490607 376974209 590208882 993091440 862254110 232177196 538810384 172894131 259646582 220576148 480361743 582273012 958668995 349644605 860377902 459452716 740882715 426814174 56154381 193515742 138393155 361002681 831467447 838803091 738612855 382210484 679463383 719601437 586446680 159828635 304621545 247822207 234980621 686335042 211958450 708053570 278160655 699230813 562773407 334211676 417074904 299994808 234980621 112390393 284588557 443960759 152243323 866568903 358401766 170941326 133739154 590918818 958668995 557710104 203331888 267829614 563678994 165821462 23262398 390275103 884072178 577673184 913521589 726620654 663670886 456137963 900796599 965948435 652018277 572465104 190929591 764116955 936312210 942866882 603931167 522332929 910850066 167276070 32075030 376448548 954677909 852604705 196106606 775682536 971894015 400218902 412979540 543945175 927806038 852107700 94279561 841780337 640925332 426814174 956286779 172382592 234980621 249820698 396806189 330274784 932584021 984047482 586370291 962430008 129724737 750978759 202477791 975478549 633587956 682170984 824770361 53966525 193648030 393120342 738855203 970320952 586446680 761330904 575023903 852604705 769327548 10369081 860477160 488788762 484158080 376974209 617908997 262406489 949084393 831380531 351424753 509370562 177689820 858040709 481894295 754133002 408395896 134801439 757815664 543945175 201717402 165821462 326469359 218611070 652018277 249670598 736624310 79523589 888699423 852604705 367026304 459617527 451817798 2575238 154538466 376448548 936312210 992169078 234980621 400218902 753419354 476912096 753419354 546141085 923927991 400218902 709613471 396937914 851400664 225858850 42657625 788118407 941586175 992169078 140129038 526944836 264408147 36055646 567343883 940381563 471393875 694954883 38844979 975478549 299113502 937158597 955501918 256866745 151364594 87392830 947413305 399037712 242028021 699230813 234980621 390275103 305068796 288873549 922858580 426814174 366854683 732559957 484158080 860708299 809429735 650036494 630775839 506919968 77819776 750978759 696443558 338631458 650697444 55108095 311613451 5299425 966131311 167276070 921198791 829614460 244528344 559957428 456956861 968670974 926045944 509370562 637769046 910818482 550336314 405444604 259646582 625664180 115509283 327773233 431406787 557710104 23973553 975478549 954677909 667844649 888553258 179981178 128188331 404152565 904800517 276676140 843005594 250749017 640925332 38085353 230662076 109054120 401452903 36265302 344876805 459452716 80415088 711455867 991073887 232177196 601630030 496698204 855636134 283321520 551289217 789617647 455539394 317751260 532803593 36055646 991073887 327773233 942999703 10369081 876868627 24089615 117931902 437743643 274113481 860708299 80415088 458156391 513440742 506178629 257214051 592970093 305990981 597784477 303230482 620243558 931966477 33511708 663971090 548964093 271484655 780061015 824770361 310726569 98824830 582273012 396050095 993091440 721418370 859168292 913521589 298050322 630201811 119279869 407629453 722013570 24188768 858798711 145559297 682170984 877088774 662972501 489130642 793291205 109369069 404152565 396743027 556619020 922706719 205387898 457149478 590918818 585165457 403519778 251042004 20148474 601630030 207844781 31215478 782533040 219054502 636434256 152523810 311808379 321628921 795472528 24188768 387703244 750563611 932715562 206036522 972710252 344876805 324986193 862177563 884952974 769327548 143200457 206036522 287768226 151506993 324986193 633573519 831241130 942999703 330274784 864016134 10369081 675472009 698320352 855636134 81337657 921198791 146573202 293192373 515426984 50241607 353964006 660095934 907721720 633587956 495854210 587469038 546141085 940188502 885647994 525347105 978947655 738855203 838803091 133739154 853903669 490344724 543865019 882364001 997329398 710224239 215289803 196106606 641231120 920628541 812044550 740882715 250885472 24188768 170938835 151506993 495854210 982370833 2379379 13112382 327773233 358401766 36055646 663971090 509664709 322974842 400218902 219054502 767839638 306607837 498045048 551289217 55108095 154538466 146573202 259646582 338312978 72820570 629101079 275349681 912948600 703514531 15903366 152618584 220576148 321628921 287239117 763431295 963141978 321628921 314069534 396806189 831380531 24188768 250749017 681930584 618355033 888699423 806744033 595030753 51457589 103733806 795472528 308142020 330205547 583924389 787269565 966683628 314069534 299113502 778123726 600441802 554242697 396050095 925555858 214244685 572465104 117931902 251367294 864016134 300892929 696443558 912948600 913521589 735710261 754580366 762749463 518384931 885141769 695599688 288873549 597206610 790270533 860477160 324129364 489130642 464444922 308142020 520071928 532803593 737945381 681930584 667313812 162062292 225858850 151364594 907095826 709613471 715957434 586370291 56927881 31215478 587179274 736237188 689757867 745200166 635302209 533864165 676975489 736237188 587179274 740882715 984050047 851400664 718980624 795549341 572465104 858127225 10369081 255644658 213097363 843005594 488788762 332834875 464444922 547547687 964902255 770864525 20148474 757815664 241184545 60750487 607041944 931086800 458290565 753419354 817743547 632402794 146573202 326469359 396632533 407091770 4519262 49317804 629101079 703490607 382210484 50241607 307403622 949084393 247822207 38844979 579757115 654830523 282751746 396806189 382210484 884072178 209497607 498840912 140551765 809429735 420636144 274113481 52243955 215977916 589760538 518384931 404152565 553368896 506919968 542382913 992169078 630201811 983373150 77819776 47529701 202477791 781246194 208625324 620243558 533864165 119279869 736237188 393120342 98824830 413592826 74587532 400178823 763431295 5299425 125829791 522332929 688577702 806792339 23262398 750978759 456956861 134801439 296305836 458363994 244528344 764116955 900796599 630977998 623398671 378961655 942999703 630977998 202477791 938456692 927806038 413592826 503666498 938080232 630775839 902464469 326469359 781246194 462762217 757709512 971894015 79509313 219054502 505061211 860477160 786320493 326469359 841210236 982353486 522332929 735696627 449022331 814662325 800460688 809429735 625664180 577970627 650036494 251188854 697742034 77819776 667844649 230662076 63192647 532803593 776835194 274113481 953267424 626833449 47349911 979740237 866568903 618542887 225858850 681930584 630977998 591292508 342116147 921198791 592981604 302151126 688177128 949084393 353964006 783513992 522663253 940188502 647733367 715779797 307060809 367026304 250832323 527654256 942899938 685702028 781246194 23973553 835198840 583924389 620243558 80485362 831380531 553368896 733642252 396050095 53195413 630775839 223299794 688577702 767839638 215792516 505061211 915330573 459617527 64420967 729868696 407629453 315297566 715779797 60017144 485153920 424974082 633573519 698320352 190979155 334211676 93651148 388085842 396743027 965948435 133739154 676975489 632014852 795472528 311613451 448881532 305068796 635302209 757850417 10369081 83066601 792846009 618542887 630238886 770594967 167276070 893019475 458156391 877167702 36265302 142903358 573480571 915330573 573449906 47290536 624819674 540394532 117210451 6720560 448881532 302151126 713146141 929504680 923715439 174140940 408032939 809429735 79523589 128188331 128450928 38338132 310726569 838331644 790270533 152243323 485509833 956286779 408032939 801623766 771803404 512614298 515426984 768561257 250832323 626833449 298050322 840075867 2076768 745200166 328764419 900116034 516175014 550336314 209497607 251188854 775682536 322974842 687055288 854902633 33511708 994877696 182214511 554222239 782533040 31215478 962073361 575023903 342116147 298727845 604881661 592639233 485063015 874124920 393120342 956286779 33511708 407091770 27735709 882364001 835198840 563678994 750750593 464130920 420636144 923927991 516175014 754580366 451551269 74587532 264297813 780870754 735710261 628523361 36055646 991073887 81337657 103669472 842970782 274113481 287239117 803588261 250885472 209789164 997329398 103733806 4519262 876868627 955730659 700560235 810021050 931966477 475344103 489130642 207442482 214650974 934824360 654830523 559957428 255644658 570796148 946612927 48746678 103733806 388085842 547547687 953267424 586446680 940381563 950497221 399037712 417074904 953267424 396743027 451551269 518384931 968670974 896571061 522332929 721418370 209497607 215981255 81553943 38338132 137529801 915330573 556619020 633573519 604181881 917795074 882804101 783513992 566554997 864016134 726620654 407091770 786320493 971894015 817743547 99294732 887548285 876263470 55108095 587469038 382210484 619842427 324129364 123073176 47529701 269911067 376974209 98287438 252792947 129724737 207442482 542382913 359859765 39220584 624819674 633573519 226492467 202477791 494336936 257214051 55018341 138393155 49948206 570764323 592970093 904771946 589760538 736237188 330274784 876263470 938705675 896571061 618355033 268759041 446968233 38338132 506919968 525347105 548964093 904800517 761330904 600441802 361002681 412979540 577673184 632402794 943235508 299113502 38085353 911302173 885141769 259646582 852755974 559014304 459452716 915330573 744008188 687988023 727245017 854969794 960796073 306258744 940381563 230662076 806792339 926045944 446968233 652018277 262406489 247221668 630977998 802009078 726620654 332834875 984047482 715779797 674446970 592639233 852755974 855636134 35128915 49317804 79523589 275349681 543865019 770594967 835198840 797746066 252962990 129724737 624819674 838331644 708094860 918225489 130160246 630775839 404152565 931086800 146573202 610834602 376974209 274113481 300892929 396743027 494336936 967417280 520071928 303230482 475344103 344620844 889608806 502849508 676975489 583924389 165821462 264750083 47349911 824770361 641231120 270237875 698320352 485153920 35128915 269911067 975478549 162062292 2076768 195957995 689757867 696443558 686884353 174140940 426814174 41538784 79523589 425392410 963141978 630201811 352092606 685702028 52243955 425392410 314069534 43970470 38304068 136384659 51457589 788737791 668964848 407510599 52243955 98287438 4519262 407510599 315343704 809429735 635302209 888553258 349644605 900116034 570796148 430088921 984050047 551289217 885000402 154538466 314069534 284588557 687055288 617908997 938456692 904771946 299462930 678884863 885647994 586370291 195733178 940188502 106790696 202477791 463496366 298727845 352092606 619842427 478892468 247006479 699230813 691982506 360743135 910850066 174862116 548748527 475344103 702364434 531333917 630775839 907095826 982416551 175060805 946612927 573480571 824770361 925555858 807117750 299462930 47290536 750750593 763431295 172894131 331638088 888259120 567948101 907721720 546679009 829614460 637769046 800460688 769327548 781246194 975337465 874297853 765027062 60017144 663670886 960543625 768561257 850484222 538810384 686335042 293192373 276676140 628523361 327773233 888553258 590918818 712346140 138442062 931966477 842970782 361435434 248642173 428572243 47529701 896571061 81553943 650990283 1736950 966683628 462394151 590208882 623206361 538025980 682170984 910850066 735710261 39220584 81553943 683406807 130160246 286037808 872434540 151364594 369306500 215977916 79509313 931966477 494336936 949084393 588034909 278160655 560623000 64420967 494336936 591292508 942899938 691982506 136412292 73848009 338631458 923927991 49948206 748408317 338312978 947413305 10369081 654830523 307060809 186285312 735891721 190929591 272303478 266213579 515426984 885995802 790270533 913521589 990121035 230662076 146573202 824770361 338929165 478351140 800460688 776820092 944573659 876263470 452156279 888553258 361002681 80485362 597784477 885549757 997329398 652018277 589760538 151506993 420636144 683406807 1736950 757815664 485063015 568104980 932715562 99294732 298050322 876263470 143200457 428572243 334932282 662421393 630977998 982353486 52243955 254203892 943793512 512614298 995876182 626833449 589760538 151364594 249670598 40448245 182214511 683406807 831380531 857535330 1736950 138393155 559957428 814295984 842970782 703490607 420636144 266213579 382904427 129724737 686884353 626932919 896029805 885549757 934824360 786380583 393120342 808866527 566554997 982370833 984050047 765027062 378961655 979740237 962073361 683406807 938705675 518384931 984047482 837690635 140725908 424594759 394791153 884059813 376448548 115090276 616796881 432089082 683621666 610447918 758889515 430284321 744008188 292149520 851759377 266213579 727578179 904800517 226492467 662421393 195019158 545538425 698320352 234980621 689757867 219054502 456137963 640849273 315343704 888553258 683621666 153196022 19911869 50241607 310726569 681765297 907095826 43970470 170941326 151364594 290474734 567343883 313272965 77819776 571019028 430088921 330205547 633573519 607760956 598426014 981996224 532803593 179981178 152866011 509370562 73848009 509144872 43970470 187104147 125829791 656191811 512614298 476912096 67700412 782533040 722768643 63192647 942999703 405444604 572588387 232177196 514650194 678474526 858127225 546141085 700560235 488788762 289736829 907721720 546679009 968755777 206036522 938080232 946916156 630977998 302151126 88335614 83066601 390275103 117931902 889608806 244528344 60017144 660095934 464444922 77819776 38085353 740882715 597784477 808866527 546141085 304621545 334211676 490344724 972710252 31215478 27735709 206036522 267829614 575023903 48746678 709613471 306597948 275202504 330274784 518384931 307060809 478351140 349076114 955501918 334932282 637769046 146573202 206036522 885141769 715779797 775682536 864016134 718980624 478351140 252792947 195957995 983113723 816971086 854243215 286037808 317751260 913521589 152314280 214650974 249670598 688534928 51457589 623398671 349644605 660765062 250832323 80415088 726950461 420052652 314069534 74587532 719601437 125204206 744008188 632014852 771803404 603931167 60017144 60750487 721769014 503666498 2076768 586370291 618355033 904771946 526944836 195957995 449022331 103669472 960543625 354807942 721769014 292149520 686884353 308142020 732559957 247234349 938456692 843005594 328764419 637769046 739696834 857535330 2076768 23973553 27735709 465697134 330274784 661321016 441621000 765027062 446968233 311613451 400218902 489130642 722013570 255644658 117210451 807117750 646710523 428572243 252962990 567343883 2575238 206036522 688177128 514650194 307060809 80415088 175507355 921198791 968755777 763431295 247822207 511330454 459617527 931086800 942866882 601630030 776835194 955501918 175060805 332834875 174862116 545538425 885353274 562773407 682170984 637939784 175507355 502849508 137529801 363976852 560327459 709613471 134971740 431406787 413592826 498840912 463496366 489612980 49948206 49317804 526944836 138393155 588034909 705304879 853903669 846351340 699733109 598543708 687055288 64420967 403519778 587469038 47349911 754580366 719601437 478351140 408032939 412979540 781242822 626932919 616057762 807117750 983373150 295606018 559957428 115509283 288873549 40656291 130160246 597206610 324129364 455539394 15903366 641635851 478892468 82689280 520071928 982370833 119279869 284588557 812044550 601630030 597784477 67700412 400178823 448262245 687055288 617908997 676975489 101231409 313272965 888553258 721769014 230662076 727578179 292149520 485509833 858127225 179981178 270237875 478892468 32075030 249670598 705304879 792846009 13112382 413592826 64420967 943793512 153196022 601740259 590208882 186244437 917795074 838803091 722768643 249670598 305990981 349076114 208625324 874297853 308142020 509144872 424594759 205387898 735696627 160287690 932584021 829614460 284588557 907095826 745200166 394791153 770993588 557710104 854902633 708094860 640925332 172382592 286037808 218611070 801623766 795472528 396806189 458363994 478351140 79523589 298727845 990121035 788737791 388085842 932584021 960796073 969294148 330205547 254203892 527595027 710224239 817743547 215774690 327773233 630201811 342116147 851400664 315297566 190929591 993091440 710224239 246058339 598426014 53195413 351424753 885647994 746992914 556619020 804406873 923715439 736624310 970320952 489130642 554242697 32075030 711455867 363976852 511277493 132556595 388085842 553368896 539035187 361435434 337153847 884059813 964902255 270237875 27735709 230662076 887548285 917795074 557710104 289918211 225858850 448262245 638790258 242028021 174862116 884072178 396937914 704431513 137529801 572588387 19715614 604968568 860708299 547547687 515426984 601630030 970911538 740882715 887548285 540976336 15903366 511330454 361002681 211958450 808838846 60750487 674446970 422532994 943235508 830619816 859168292 638516505 554242697 585165457 267829614 286037808 543865019 261683638 968670974 29069209 306597948 163769090 505061211 67700412 232177196 72820570 572465104 492009082 47349911 846351340 963141978 838655651 853903669 840130613 916956968 709613471 378961655 653201202 315297566 525347105 842970782 32075030 601740259 315747769 382210484 854969794 800460688 862254110 990121035 838331644 226492467 886149363 353964006 946612927 250832323 705548145 682170984 480361743 51457589 773781000 338929165 553191189 170938835 430101007 296751278 685702028 420636144 994877696 604881661 132556595 190323279 855636134 858798711 471393875 121069546 93478833 764459345 305068796 252792947 296305836 990121035 637939784 250749017 125829791 256866745 623398671 162904272 922858580 249820698 533455280 117210451 196106606 2575238 412979540 121069546 420052652 81337657 302151126 249670598 855636134 727578179 31215478 250832323 109369069 664041213 715779797 32954995 922706719 792846009 721418370 49614749 428572243 571019028 93651148 539035187 688577702 334211676 128702236 262406489 746092812 566554997 152523810 172382592 10475035 36265302 570764323 264297813 289918211 241184545 723661847 330205547 60750487 963141978 156817178 327773233 228290502 757709512 843005594 288072509 50241607 505061211 478351140 708094860 518384931 19715614 230662076 458363994 429277230 106790696 190979155 29473993 860477160 382904427 740340897 852604705 126695727 852107700 210621083 36265302 681930584 792822959 626833449 349644605 367026304 616057762 433686203 579757115 570764323 251367294 80415088 597784477 915330573 708094860 920628541 891279504 177689820 397928982 396743027 404152565 502849508 87392830 93651148 130160246 783513992 923715439 465759767 812414090 539381059 722013570 266213579 627110568 193648030 589760538 936312210 376974209 344876805 19911869 653201202 735891721 424594759 932715562 215792516 757709512 546679009 641231120 910850066 618355033 132556595 458290565 991073887 786320493 719307635 727578179 242186770 237172271 103733806 38085353 969294148 923715439 125204206 997329398 77819776 388085842 745200166 859168292 877167702 458290565 41538784 686884353 24188768 296751278 53525809 361002681 465697134 896072909 691982506 388085842 586446680 623206361 575023903 396937914 152523810 49948206 954677909 991615550 773781000 458363994 525347105 896029805 32075030 795472528 29069209 299994808 769327548 66490779 696443558 761330904 885549757 993091440 630201811 361002681 950497221 872434540 575023903 121069546 295366548 193515742 251042004 539035187 804406873 767187616 918225489 757709512 93651148 38085353 67700412 953267424 433686203 47529701 804406873 687055288 966131311 63192647 765027062 159828635 585165457 282751746 885549757 32954995 695599688 851759377 592639233 589760538 715779797 426814174 619842427 48746678 138393155 964902255 31215478 702745028 947413305 140551765 954677909 437743643 721418370 602832600 484158080 597784477 302151126 853170454 29069209 342116147 295606018 60017144 695599688 371179314 64420967 831241130 653201202 272303478 900116034 313272965 190929591 390275103 64420967 459452716 73848009 810021050 938140278 458363994 366854683 207442482 654830523 836376015 64420967 964902255 242028021 464444922 123073176 604181881 10475035 842970782 610447918 307060809 334299650 764116955 363976852 942899938 24188768 36055646 49317804 713146141 328462418 835212499 82689280 507016471 38338132 170938835 407629453 376974209 407510599 77685914 710224239 360743135 481894295 972710252 771321738 727578179 311613451 256866745 230662076 943235508 740340897 994587826 652018277 937158597 882364001 349644605 375066210 443960759 74587532 136412292 567774282 103219970 540394532 66490779 702364434 52243955 587469038 812044550 271484655 109054120 485153920 514768035 131323888 882804101 802009078 721769014 407510599 582273012 451817798 960543625 244528344 938705675 803588261 174335822 855636134 531135820 545538425 916956968 513440742 2575238 465697134 250749017 843005594 620243558 982416551 237172271 656623172 842970782 838331644 51457589 688577702 400218902 633573519 874297853 843005594 33511708 1926282 334932282 753419354 248642173 31215478 910818482 553191189 896029805 695599688 616057762 138393155 971549242 632402794 451521521 926045944 682170984 751925989 433921335 663670886 163229392 10475035 667313812 583924389 226492467 38844979 762749463 366854683 968755777 802009078 531135820 332834875 98231977 230662076 782533040 630201811 433921335 136384659 656191811 559014304 48746678 884072178 404152565 857535330 630629857 757850417 630977998 776352608 451521521 735696627 916956968 115509283 27735709 31215478 866337119 151506993 932715562 887794841 209497607 628523361 699230813 966131311 722013570 687988023 735891721 703514531 427184372 363976852 776835194 464130920 546141085 136384659 352092606 918225489 163229392 754580366 535533605 740882715 2379379 705548145 152314280 681765297 49948206 480361743 836376015 917452919 587179274 295366548 515426984 703514531 767187616 289736829 495854210 765027062 674446970 831467447 938456692 82689280 732245352 567948101 618355033 32806834 459452716 31615284 509370562 247221668 758889515 971894015 841780337 885549757 349076114 652018277 152314280 73848009 616057762 929504680 506178629 637769046 155241439 838655651 618355033 278160655 68748842 361435434 223299794 308142020 715957434 650990283 49614749 760370490 32954995 201717402 722013570 804406873 160287690 628523361 577673184 926044257 140725908 709613471 53966525 595030753 531333917 911302173 506178629 219054502 509144872 656623172 359714925 896571061 749497174 954227928 729868696 332834875 579757115 94279561 81553943 982416551 5299425 206036522 218611070 429277230 607965234 855636134 307403622 78649514 475344103 888553258 162904272 920628541 764459345 563678994 942866882 433686203 750978759 53226850 371179314 264408147 314069534 527654256 630238886 770594967 968670974 126695727 396632533 514650194 32954995 920628541 793291205 748408317 509664709 489130642 247822207 843005594 923715439 735696627 630238886 746092812 735710261 215792516 441621000 135975430 172894131 67831588 378961655 956286779 47529701 855636134 739696834 492009082 52243955 525347105 376448548 770594967 307060809 53226850 232177196 358401766 394791153 274113481 939725993 242028021 559957428 60750487 835212499 255644658 182214511 290117216 359714925 533864165 37275245 851400664 910818482 862254110 106790696 795549341 992169078 540976336 667844649 145559297 174335822 387176309 252792947 604968568 334932282 911302173 496698204 156817178 708053570 293192373 850484222 876263470 754133002 746092812 870201182 156817178 535533605 292149520 792846009 396743027 249820698 632402794 817743547 13112382 560327459 645094664 60017144 128702236 758889515 351424753 997329398 251042004 361002681 292972503 613596687 850386354 79523589 893019475 315297566 153196022 829614460 921198791 47529701 922858580 36265302 876263470 554242697 888553258 650036494 681765297 792822959 954677909 390275103 598543708 506178629 464130920 10369081 83066601 218611070 407629453 808614164 67831588 103219970 56154381 981996224 424594759 330274784 958668995 646710523 293192373 932715562 456956861 182214511 953882020 841780337 904800517 835198840 660765062 299462930 967417280 754133002 375066210 226492467 876263470 298050322 430088921 51457589 208625324 267829614 326469359 667844649 206036522 887548285 125204206 53195413 601630030 317751260 206036522 506919968 774489082 560623000 806664207 266583970 31215478 63192647 746092812 601740259 941586175 778123726 251042004 334932282 432089082 288873549 945394518 746394036 843005594 146573202 78649514 393120342 563678994 991615550 835339516 400218902 548748527 443960759 586446680 708094860 598426014 939725993 860377902 806792339 99294732 170938835 302151126 923715439 562773407 531333917 129724737 121069546 814662325 968670974 797746066 859168292 293192373 781242822 700560235 800460688 788737791 984050047 904800517 225771141 284588557 835198840 966131311 249670598 433686203 689757867 663971090 226492467 315747769 885141769 190929591 170938835 215774690 325554372 626833449 866337119 74587532 808838846 60750487 907095826 538025980 829614460 152866011 636434256 242028021 910818482 950497221 397928982 696443558 109054120 284588557 179981178 778074990 427184372 736624310 874297853 512614298 505061211 637769046 667313812 746092812 446968233 331638088 932715562 917452919 850484222 49317804 459617527 887794841 852107700 430088921 349076114 553191189 737945381 444897967 10369081 109369069 678474526 433686203 972710252 956815883 746394036 47290536 918521256 39220584 459452716 941586175 702745028 334299650 360743135 911302173 761330904 53525809 408032939 60750487 776835194 103733806 451551269 151506993 746394036 786380583 190323279 586446680 451551269 760370490 835198840 774489082 448881532 857535330 543865019 289736829 708046990 886149363 984047482 982353486 983373150 514650194 334932282 554222239 889608806 550336314 687055288 21190596 757709512 533864165 678474526 601630030 155241439 969294148 960796073 24188768 87392830 795549341 174335822 151506993 15903366 32075030 376974209 831467447 24089615 152243323 546141085 334299650 628820972 186285312 88335614 533455280 984050047 936312210 781246194 637939784 697742034 82689280 267829614 750563611 944573659 129724737 792822959 290117216 77685914 770864525 522332929 776820092 424974082 679463383 162904272 98824830 870201182 715779797 994587826 735696627 19715614 595030753 296751278 49317804 327773233 215981255 252962990 13112382 349076114 776352608 624819674 768561257 420636144 586370291 247822207 882364001 543865019 551289217 246221518 652018277 215052415 740340897 943793512 305068796 689757867 492009082 931005739 354807942 994587826 465697134 400178823 674485068 220576148 645094664 337153847 562773407 746394036 545538425 338631458 484158080 937158597 887794841 918521256 938140278 607760956 911302173 330274784 153196022 944573659 917452919 613596687 931013644 63192647 946916156 597784477 420052652 420636144 247221668 708094860 462762217 140551765 132556595 109054120 763431295 732559957 251042004 664041213 982370833 996943901 954677909 887548285 700560235 393120342 284588557 207844781 315747769 47349911 703514531 938456692 47290536 983373150 931086800 916956968 72820570 98231977 610447918 708094860 67831588 359859765 911302173 382210484 695599688 215052415 1926282 885353274 289736829 182214511 910850066 315297566 203331888 170941326 770993588 485063015 289918211 433921335 247006479 632378665 695599688 287768226 444897967 866337119 511330454 787269565 650697444 812414090 332834875 174335822 956286779 682170984 215774690 324986193 156817178 539035187 128188331 310726569 83066601 934824360 67831588 397928982 83066601 296751278 462762217 699230813 975337465 112090095 966683628 195019158 117931902 636434256 303230482 117210451 539957336 616796881 652018277 463496366 82689280 715957434 303230482 884952974 885995802 522332929 462762217 81553943 854969794 458363994 783513992 179991869 311613451 934824360 23973553 656191811 190979155 334932282 215774690 888259120 56154381 841780337 586370291 810021050 553191189 687055288 31215478 241184545 949084393 792822959 53525809 647733367 929504680 739696834 53226850 812044550 751925989 764116955 264750083 175507355 688577702 119279869 67831588 506919968 488295044 296751278 837690635 353964006 846351340 715957434 480361743 699230813 551289217 786320493 929504680 190323279 904800517 378961655 234980621 739696834 771321738 68748842 740882715 66490779 944068218 215052415 587469038 885000402 675472009 573449906 949084393 793291205 67700412 290474734 361435434 506919968 67831588 554242697 633587956 656191811 215792516 509019925 417074904 337153847 703490607 887548285 922706719 55108095 430101007 810021050 43970470 872434540 527654256 272303478 992001870 56927881 827311105 754133002 955501918 852604705 151506993 527595027 638516505 815123402 888553258 646710523 562773407 143200457 918225489 152314280 876868627 735710261 598426014 359714925 675472009 40131409 186285312 942866882 429277230 327773233 244528344 378961655 424594759 448881532 917452919 719601437 704431513 103219970 660095934 719601437 854969794 215052415 156817178 688177128 816971086 795472528 806664207 972710252 687988023 437743643 498840912 625664180 289736829 79523589 882364001 592981604 499057158 885000402 532803593 990121035 422532994 10369081 430101007 641231120 539957336 938705675 407629453 531333917 663670886 912948600 151364594 140551765 824770361 778123726 771321738 597784477 770594967 36265302 929504680 711532060 242028021 342116147 145559297 636434256 633573519 121069546 884072178 697742034 190929591 349076114 354807942 68748842 74587532 771803404 683406807 20148474 525347105 646710523 407510599 390793037 145559297 937158597 660765062 682170984 151364594 413592826 553368896 632378665 247006479 287239117 946916156 250885472 303230482 767187616 375066210 780061015 247006479 506178629 640849273 708094860 946612927 404152565 156817178 630977998 640925332 682170984 242186770 399037712 617908997 739696834 944068218 196460706 511330454 114409323 633587956 516175014 926045944 762749463 922706719 786320493 151364594 678474526 904771946 328764419 633573519 884952974 547547687 962073361 292696118 732245352 21190596 554242697 131323888 916956968 633587956 885141769 888553258 996943901 271484655 943793512 874124920 138442062 82689280 943793512 82689280 353964006 290117216 15903366 770864525 732559957 117931902 686884353 196106606 744008188 269911067 630977998 101231409 789617647 804406873 635302209 502849508 56927881 736624310 737945381 768561257 618355033 251188854 437743643 603931167 300892929 93651148 902464469 94279561 592981604 712346140 931005739 745200166 960796073 954227928 602832600 653201202 795472528 877088774 733642252 982416551 964902255 196106606 787269565 98287438 515426984 152243323 55018341 93651148 970911538 209789164 647733367 38338132 27735709 465697134 226492467 303230482 285947848 656623172 885141769 600441802 38085353 803588261 630977998 688534928 330274784 257214051 787269565 949084393 989729323 289736829 458363994 570764323 806792339 209789164 516175014 539381059 604181881 838655651 579757115 797746066 283321520 82689280 668964848 306258744 246221518 645094664 140725908 703514531 420636144 295366548 907095826 387176309 989729323 298727845 252792947 604968568 964902255 354807942 682170984 757815664 134971740 696443558 179991869 736237188 315343704 567343883 352092606 525347105 852755974 132556595 283321520 854969794 943235508 736624310 130160246 675472009 866568903 771321738 722013570 6720560 625664180 67831588 282751746 214244685 782533040 893019475 458363994 242530683 160287690 299113502 449022331 203331888 589760538 723661847 960796073 862177563 587179274 675472009 992169078 511330454 288873549 190929591 527595027 740882715 172894131 799588075 77685914 553191189 771803404 946916156 334211676 366854683 315297566 567774282 579757115 420052652 207844781 966683628 543865019 540394532 627110568 837690635 887548285 915330573 686335042 138393155 2379379 827311105 33511708 904800517 1736950 770864525 618355033 854902633 213097363 115509283 960543625 900796599 160287690 31215478 942899938 553368896 858798711 420052652 771803404 804406873 841210236 662421393 942899938 230662076 590918818 115090276 831241130 738855203 884952974 738855203 119279869 877167702 812044550 525347105 962073361 47290536 378961655 498840912 607760956 855636134 264100442 237389399 938456692 10475035 387703244 115090276 267829614 887794841 960796073 920721173 396138845 570764323 152314280 700560235 163229392 757815664 937158597 920721173 788118407 553191189 739696834 911302173 485063015 303230482 20148474 456956861 66490779 623398671 775682536 190929591 247822207 553191189 382210484 295606018 554242697 131323888 543945175 966683628 207844781 247841801 2076768 296305836 408032939 328462418 264297813 67831588 581831913 799588075 246058339 633587956 992169078 592639233 995876182 72820570 793291205 760370490 630238886 966683628 592981604 688577702 507016471 838655651 426814174 407629453 616057762 864016134 128450928 489130642 708053570 926045944 215289803 704431513 388085842 740340897 604881661 274113481 613596687 234980621 590918818 595030753 427184372 585165457 735891721 123073176 103219970 480361743 620243558 174140940 708046990 806664207 338929165 328462418 592981604 430284321 400178823 302151126 328764419 956815883 800460688 838331644 163229392 712346140 299994808 125204206 2076768 264750083 568142039 956286779 932715562 162062292 931005739 944068218 573449906 430101007 209497607 237389399 394791153 827311105 687055288 148087911 887548285 590208882 15903366 675472009 195019158 471393875 488788762 681765297 806744033 210621083 531333917 511330454 896072909 275349681 250885472 878442641 285947848 488295044 573449906 195957995 662972501 29069209 338631458 662421393 143200457 738855203 5299425 264408147 296751278 721418370 458363994 966131311 790270533 696443558 636434256 80485362 546141085 499057158 399037712 876868627 459617527 80415088 334932282 321628921 509019925 480361743 719601437 938140278 970320952 264750083 963141978 753419354 860708299 765027062 49614749 921198791 781242822 64420967 237172271 214650974 516175014 289918211 342116147 174140940 52243955 163769090 400178823 630201811 859168292 932584021 19911869 917452919 507016471 603931167 68748842 259646582 451551269 954227928 557710104 322974842 390275103 31215478 535533605 601630030 250832323 936312210 761330904 251188854 494336936 703490607 114409323 292972503 485063015 610834602 735710261 43970470 889608806 512614298 647733367 975337465 858040709 956815883 220576148 656623172 459452716 151364594 276676140 702364434 983373150 709613471 535533605 366854683 842970782 489130642 981996224 888553258 978947655 887794841 403519778 152243323 667844649 293192373 334211676 982416551 509664709 949084393 870201182 430284321 975478549 966131311 750978759 570764323 2575238 538810384 589760538 992001870 19911869 945394518 506919968 548748527 992169078 290117216 623206361 98287438 874297853 712346140 174862116 278160655 47349911 208625324 349076114 553191189 790270533 967417280 237172271 967417280 587179274 746992914 307060809 802009078 662972501 401452903 932715562 567948101 676975489 931086800 699230813 835339516 47529701 13112382 463496366 264408147 835212499 31615284 792822959 306607837 589760538 740882715 476912096 630201811 531135820 885995802 750750593 465697134 196460706 47290536 972710252 776820092 960796073 710224239 808838846 292972503 831241130 931640418 53966525 650990283 136412292 417074904 516175014 860377902 195733178 922858580 288072509 292149520 218611070 396743027 170938835 209789164 896072909 396743027 687055288 488295044 451521521 591292508 462394151 632014852 349076114 430101007 38304068 601630030 420636144 539381059 403519778 626932919 140725908 255644658 616796881 860377902 850484222 683406807 750750593 375066210 509370562 595030753 940381563 931966477 726950461 567774282 458290565 971894015 246221518 982353486 290474734 719307635 806744033 795549341 970320952 432089082 835212499 674485068 620243558 568104980 604181881 633573519 19911869 177689820 590918818 264408147 780061015 177689820 592970093 78649514 597784477 840130613 195733178 292149520 298050322 610447918 788118407 251042004 441621000 247841801 885647994 270237875 511277493 931013644 790270533 838331644 960796073 893019475 485509833 803588261 405444604 893019475 405444604 598426014 514768035 681765297 686884353 214244685 829983432 344876805 923715439 140129038 916956968 296305836 557710104 202477791 630977998 295366548 252962990 803588261 507016471 131323888 866568903 994877696 764116955 797746066 719601437 860477160 170938835 202477791 965948435 958668995 989729323 255644658 225858850 641635851 352092606 931086800 708046990 788737791 601740259 331638088 81337657 546679009 694954883 183440003 918521256 186285312 991615550 23973553 557710104 525347105 708046990 489612980 697742034 251188854 543865019 174140940 850484222 808866527 989729323 806664207 630977998 190929591 885000402 754580366 604181881 304621545 298050322 24188768 732559957 115090276 29473993 430088921 509019925 31615284 577673184 465697134 207844781 786380583 478892468 40656291 55018341 637657473 795472528 490344724 582273012 591292508 891279504 67700412 984047482 387176309 225858850 740340897 979750308 679463383 607760956 884059813 241184545 920721173 2076768 210621083 458290565 885995802 972710252 705548145 509664709 201717402 646710523 572588387 426814174 885549757 456137963 776352608 458156391 743614603 327773233 661321016 715957434 115090276 51457589 783513992 300892929 979740237 2076768 632402794 808614164 132556595 573449906 488295044 33511708 193648030 27735709 77819776 174335822 967417280 635302209 703490607 607760956 786380583 441621000 586370291 24089615 886917295 485262404 513440742 996943901 74587532 531333917 757850417 938705675 101231409 397928982 10475035 566554997 754580366 134971740 633573519 543865019 874124920 688177128 763431295 36265302 540976336 815123402 271484655 403519778 626932919 112090095 429277230 349644605 776820092 815123402 193648030 940381563 922858580 918521256 367026304 287239117 931086800 885353274 702364434 112090095 129724737 782533040 444897967 689757867 545538425 852107700 913521589 287239117 554222239 749497174 835339516 970911538 532803593 607965234 705548145 349076114 138393155 306597948 915330573 992169078 559014304 179981178 637657473 237172271 425392410 708046990 637939784 330274784 696443558 390793037 425392410 485063015 971894015 719601437 152866011 193515742 264750083 656191811 882364001 516175014 947413305 15903366 661321016 841210236 32075030 667313812 757850417 718980624 430284321 48746678 115090276 330205547 910850066 174335822 554222239 588034909 652018277 635302209 542382913 841780337 926045944 858798711 982416551 647733367 604968568 352092606 31215478 37275245 602396426 349076114 840075867 806744033 47290536 446968233 315747769 841780337 40656291 806744033 67831588 750978759 186285312 722013570 533864165 397928982 13112382 179991869 247841801 19911869 511330454 317751260 539957336 390793037 946916156 433921335 921198791 604181881 533455280 788118407 956815883 252792947 681930584 290474734 215774690 592970093 396050095 872434540 430088921 349644605 40656291 88335614 904771946 187104147 910850066 427184372 321628921 485262404 539957336 338312978 618542887 53195413 896571061 128450928 431406787 143200457 831467447 19715614 83066601 764116955 247006479 943793512 247841801 137529801 299113502 965948435 585165457 288072509 735696627 627110568 835339516 475344103 125204206 727578179 429277230 330205547 93651148 475344103 332834875 604181881 704431513 452156279 153196022 328764419 633587956 496698204 618542887 246058339 743614603 359859765 674485068 458363994 746092812 885647994 49317804 427184372 705548145 494336936 958668995 458290565 618542887 338929165 305068796 393120342 932584021 511277493 425392410 488788762 326469359 109054120 154538466 298050322 678884863 68748842 687988023 851829959 884072178 607760956 502849508 932715562 485153920 359859765 946916156 771803404 700560235 509019925 31615284 522663253 299113502 349644605 568104980 746394036 39220584 337153847 927806038 29473993 387176309 590918818 401452903 854243215 770993588 324986193 900116034 106790696 538810384 965948435 760370490 989729323 251042004 841210236 375066210 983113723 803588261 485063015 321628921 53966525 660095934 602832600 136384659 589760538 292696118 193515742 603931167 349644605 979740237 780061015 326469359 266583970 206036522 968670974 760370490 853170454 675472009 19911869 47290536 776835194 886149363 749497174 637769046 196460706 456956861 15903366 539957336 174335822 237389399 808838846 251042004 829983432 982416551 664041213 53226850 396138845 633587956 382210484 587469038 531333917 763431295 781242822 575023903 891279504 715779797 573449906 927806038 330274784 570764323 117210451 736624310 456137963 587469038 79509313 603931167 426814174 918225489 225771141 332834875 55108095 721418370 566554997 630775839 387703244 663670886 758889515 816971086 711455867 471393875 299462930 911302173 678474526 156817178 506919968 302151126 396632533 1926282 390275103 306607837 664041213 650697444 713146141 955501918 981996224 135975430 829614460 572588387 916956968 133739154 396138845 511330454 739696834 228290502 420636144 804406873 162904272 956815883 424974082 542382913 175060805 40448245 266583970 138393155 761330904 857535330 81337657 142903358 103219970 1926282 687055288 982370833 324129364 132556595 119279869 827311105 29473993 215774690 496698204 499057158 241184545 743614603 997329398 145559297 167276070 591292508 193515742 938140278 579757115 540394532 207442482 332834875 287239117 375066210 476912096 683406807 792822959 838655651 36055646 663670886 60017144 660765062 625664180 6720560 570796148 719307635 896029805 214244685 237172271 72820570 37275245 920721173 215289803 40448245 726620654 298727845 750750593 126695727 601740259 994877696 33511708 885995802 965948435 923927991 328764419 190979155 24089615 966131311 137529801 72820570 225858850 93478833 27735709 570764323 399037712 304621545 969494113 532803593 52243955 975337465 174335822 931086800 248642173 568104980 550322314 326469359 509370562 652018277 55108095 662421393 969494113 630201811 726950461 464130920 138442062 465759767 635302209 82689280 559957428 471393875 250832323 481894295 128450928 431406787 81337657 860377902 207442482 652018277 931005739 954227928 134801439 163769090 494336936 499057158 907721720 840075867 109054120 567774282 581831913 568104980 646710523 918225489 103219970 32075030 853170454 308142020 592970093 53226850 686335042 548748527 485262404 854902633 762749463 601630030 404152565 72820570 478892468 765027062 786320493 738855203 266583970 911302173 942866882 763431295 962430008 688534928 858040709 266213579 781242822 344620844 283321520 837690635 630238886 700560235 992169078 152243323 733642252 305990981 790270533 344876805 349076114 540976336 267829614 292149520 781246194 375066210 241184545 966683628 627110568 94279561 746394036 351424753 448881532 971894015 579757115 773781000 888259120 43970470 526944836 632402794 984050047 597206610 931005739 264408147 511277493 695599688 632378665 603931167 854243215 797746066 382904427 568104980 708046990 949084393 636434256 247234349 790270533 956815883 910818482 769327548 581831913 922706719 485509833 851400664 940381563 553368896 48746678 763431295 602832600 305990981 787269565 896571061 138442062 334299650 88335614 712346140 352092606 32806834 146573202 945394518 250749017 675472009 190323279 942999703 196460706 814662325 918521256 351424753 984050047 562773407 978947655 567774282 140725908 237389399 287768226 499057158 884952974 99294732 498045048 799588075 812414090 135975430 426814174 540394532 252792947 632402794 266583970 303230482 136412292 776820092 629101079 234980621 607760956 678884863 604181881 215981255 535533605 941586175 390275103 663971090 858040709 142903358 993091440 630775839 20148474 268759041 907721720 455539394 103219970 219054502 630238886 846351340 674446970 886149363 628820972 860477160 433921335 776820092 975478549 947413305 735891721 592639233 2575238 956286779 786320493 591292508 907095826 292696118 968755777 257214051 136412292 499057158 581831913 424594759 215052415 633573519 800460688 498840912 579757115 563678994 247822207 922858580 750978759 209789164 808838846 32806834 399037712 831467447 448881532 900796599 535533605 99294732 478892468 56154381 359859765 82689280 369306500 598543708 121069546 712346140 40131409 1926282 972710252 50241607 708053570 539957336 721769014 532803593 676975489 142903358 638790258 49317804 300892929 266213579 800460688 485153920 485063015 626932919 628820972 525347105 853903669 941586175 960543625 760231333 993091440 242530683 938080232 736624310 190323279 366854683 953267424 801623766 205387898 969294148 727578179 911302173 573480571 251042004 884952974 674485068 424974082 572588387 688177128 438183310 902464469 723661847 597784477 736624310 51457589 328462418 667844649 80485362 962430008 145559297 193515742 306258744 330274784 72820570 56927881 864016134 36265302 750563611 968670974 480361743 352092606 429277230 546141085 876868627 451551269 539957336 475344103 264408147 944573659 554222239 53195413 64420967 443960759 215981255 48746678 931640418 788118407 570764323 506919968 219054502 250885472 638516505 311808379 259646582 630238886 603931167 117210451 123073176 494336936 982416551 458290565 492009082 218611070 886149363 79509313 862254110 902464469 786380583 739696834 770864525 369306500 882364001 299462930 540976336 87392830 306607837 835198840 638516505 831380531 860477160 162904272 344876805 152314280 554222239 298050322 135975430 676975489 877088774 588034909 722768643 726620654 979740237 393120342 735696627 764459345 538810384 577673184 214650974 792846009 32806834 746394036 278160655 77685914 760370490 850484222 269911067 349076114 921198791 721769014 322974842 771803404 992001870 2575238 617908997 579757115 152866011 750750593 424594759 882804101 480361743 978947655 583924389 781246194 687988023 146573202 456956861 727578179 219054502 488788762 982353486 349076114 797746066 403519778 242028021 694954883 760231333 851829959 931086800 638790258 551289217 960796073 719307635 628820972 855636134 556619020 31615284 744008188 532803593 170938835 271484655 152314280 927806038 885141769 736237188 613596687 132556595 475344103 910850066 137529801 215977916 963141978 577970627 781246194 940188502 237172271 93478833 907095826 344876805 511277493 190979155 352092606 264408147 647733367 776352608 172382592 931013644 27735709 577970627 378961655 126695727 758889515 266213579 267829614 254203892 140551765 186285312 960796073 945394518 522332929 982416551 932715562 736237188 506178629 126695727 155241439 539381059 646710523 306607837 932715562 610447918 60017144 1926282 727827821 816971086 573449906 814295984 369306500 650990283 750750593 156817178 394791153 931640418 458156391 174140940 334932282 982353486 98231977 553191189 535533605 837690635 266583970 539957336 632378665 430101007 767839638 917795074 338631458 736237188 808614164 567343883 623206361 264750083 359859765 462762217 159828635 163769090 237172271 305068796 251367294 196106606 788118407 98824830 852107700 688534928 872434540 117931902 175060805 151506993 4519262 585165457 907721720 888699423 247822207 991073887 991615550 927806038 852755974 878442641 315297566 451817798 979750308 743614603 667844649 53525809 378961655 674485068 708053570 763431295 885647994 489130642 943793512 854902633 307060809 514650194 509019925 617908997 854243215 154538466 378961655 661321016 916956968 803588261 764116955 838331644 276676140 685702028 296751278 975337465 975478549 938140278 790270533 308142020 443960759 326469359 792846009 465697134 592981604 361435434 647733367 688534928 581831913 211958450 793291205 292696118 459452716 117931902 872434540 129724737 314069534 322974842 420636144 553191189 775682536 770594967 749497174 539381059 451521521 955501918 272303478 601630030 968755777 602396426 20148474 583924389 49948206 154538466 507016471 941586175 51457589 465759767 446968233 73848009 902464469 705548145 187104147 31215478 193515742 251042004 175060805 290117216 324129364 770594967 858040709 688577702 896072909 705548145 349644605 286037808 885353274 904800517 464444922 109369069 896072909 703490607 964902255 152618584 404152565 736237188 359859765 542382913 780061015 797746066 527595027 878442641 829614460 234980621 19911869 28363157 733642252 289918211 546141085 929504680 195733178 774489082 522332929 862254110 267829614 128188331 925555858 1926282 121069546 803588261 556619020 215774690 88335614 572588387 53195413 539957336 667844649 407510599 338312978 492009082 568142039 31215478 829614460 888699423 376448548 131323888 786320493 47290536 33511708 548748527 53966525 420052652 408032939 407510599 592981604 214244685 55018341 271484655 134801439 900116034 38304068 242186770 175060805 650697444 531135820 407510599 334211676 129724737 969494113 422532994 522332929 932584021 47529701 420052652 160287690 540394532 51457589 363976852 172894131 67700412 307060809 293192373 146573202 366854683 975478549 896571061 60017144 563678994 810021050 843005594 207442482 675472009 361002681 304621545 81553943 652018277 597784477 115090276 290474734 885549757 49614749 215774690 688177128 751925989 458363994 242028021 607041944 938140278 732559957 47290536 854243215 685702028 931005739 135975430 393120342 640849273 711455867 15037608 546141085 740340897 699230813 163769090 581831913 23262398 140551765 603931167 727827821 375066210 683621666 433686203 506919968 575023903 40131409 215981255 456137963 971894015 287768226 688534928 250832323 538025980 114409323 874124920 990121035 884072178 40131409 637769046 441621000 242530683 852604705 619842427 388085842 311613451 570796148 305990981 749497174 982370833 32954995 783513992 627110568 931640418 767839638 465697134 708046990 893019475 55108095 991073887 252792947 512614298 119279869 23973553 810021050 958668995 968755777 259646582 476912096 650990283 485063015 893019475 290474734 918225489 733642252 83066601 119279869 719307635 851759377 513440742 81553943 595030753 190323279 546679009 970911538 428572243 388085842 946612927 458290565 32075030 968755777 874124920 607041944 190929591 938456692 471393875 682170984 257214051 775682536 518384931 531333917 712346140 361002681 82689280 250832323 632402794 579757115 151364594 38085353 242028021 495854210 877088774 721769014 757850417 509370562 151364594 944573659 514650194 449022331 451817798 145885851 533455280 719601437 518384931 771803404 931966477 931005739 131323888 463496366 652018277 568142039 953882020 835198840 966131311 582273012 650990283 995876182 527654256 397928982 302151126 687055288 210621083 989729323 429277230 130160246 21190596 152314280 539381059 509664709 776820092 361002681 40448245 607760956 275202504 556619020 804406873 942866882 966683628 732559957 230662076 916956968 550336314 509144872 247006479 689757867 247841801 866337119 242530683 476912096 13112382 960543625 956815883 641231120 705304879 762749463 633573519 943235508 264750083 266583970 746992914 433921335 628523361 388085842 857535330 509664709 955501918 264100442 247841801 550322314 955501918 282751746 946612927 130160246 840130613 749497174 982353486 452156279 481894295 36055646 765027062 795472528 481894295 459452716 133739154 963141978 481894295 195019158 850386354 646710523 47290536 860708299 967417280 405444604 949084393 990121035 746992914 182214511 979740237 2575238 559014304 850484222 788737791 522332929 954677909 636434256 525347105 858798711 967417280 698320352 326469359 628820972 632014852 732559957 559014304 778123726 138393155 607965234 618542887 721769014 705304879 1736950 290117216 965948435 806664207 299462930 525347105 607965234 230662076 940381563 722768643 758889515 626833449 167276070 877088774 498045048 40448245 694954883 247006479 793291205 630775839 349076114 228290502 979750308 38338132 112390393 478351140 109054120 862254110 885647994 215774690 686884353 292972503 390793037 152618584 140551765 286037808 535533605 678884863 60017144 31615284 592981604 67700412 207844781 433686203 338312978 982370833 175060805 740340897 282751746 623398671 793291205 660095934 688177128 306258744 250749017 363976852 629101079 525347105 841780337 448262245 55108095 876868627 360743135 152618584 81553943 254203892 699230813 542382913 307403622 650697444 134971740 804406873 636434256 712346140 338631458 816971086 719601437 234980621 866568903 125204206 47529701 489130642 47349911 874124920 955730659 681930584 944573659 982353486 910818482 174140940 68748842 202477791 475344103 944068218 775682536 126695727 543945175 457149478 52243955 835339516 682170984 982353486 40131409 193648030 109054120 513440742 476912096 945394518 885000402 481894295 543945175 774489082 858040709 518384931 506919968 478351140 968755777 498840912 522663253 581063820 506178629 709613471 577673184 878442641 887548285 860377902 737945381 153196022 674446970 275202504 656191811 838331644 167276070 210621083 577673184 80485362 359859765 738855203 546141085 298727845 140551765 512614298 636434256 858127225 136412292 331638088 662972501 674485068 175060805 455539394 889608806 363976852 175060805 269911067 907721720 234980621 220576148 38338132 393120342 788737791 995876182 804406873 458363994 966683628 522332929 401452903 726950461 824770361 698320352 910850066 359714925 42657625 134801439 503666498 699733109 196106606 516175014 209789164 405444604 67700412 841780337 82689280 835198840 570764323 63192647 807117750 587179274 917795074 382904427 540394532 376974209 40448245 650036494 802009078 393120342 575023903 689757867 735696627 290474734 956815883 546141085 602396426 485509833 498840912 376448548 183440003 874297853 630775839 106790696 140129038 592981604 123073176 458363994 304621545 964902255 532803593 806792339 967417280 359714925 430088921 870201182 219054502 290474734 702364434 298050322 247006479 568142039 783513992 737945381 567774282 907721720 163769090 522332929 328462418 968755777 547547687 458156391 927806038 448881532 932584021 889608806 904800517 607965234 269911067 943235508 412979540 775682536 896571061 170941326 778074990 160287690 315747769 252792947 915330573 397928982 513440742 726950461 484158080 557710104 490344724 983113723 763431295 165821462 132556595 979750308 251188854 543945175 82689280 330205547 678884863 588034909 982416551 732245352 982416551 495854210 838331644 478892468 181668423 140725908 763431295 668964848 688577702 978947655 78649514 971549242 103669472 852107700 29069209 790270533 31615284 526944836 210621083 686884353 363976852 972710252 292149520 762749463 278160655 349644605 884072178 535533605 490344724 771803404 595030753 207442482 533455280 556619020 876868627 795472528 305990981 646710523 722768643 526944836 650697444 572465104 563678994 458156391 247006479 737945381 209789164 247822207 685702028 697742034 489612980 456137963 700560235 697742034 992001870 808838846 464130920 997329398 540394532 382904427 254203892 590918818 420052652 117210451 344620844 514768035 736237188 667313812 64420967 408032939 618542887 315297566 302151126 727827821 640925332 962430008 151364594 317751260 275202504 808614164 546679009 152314280 151364594 485262404 953882020 854243215 334299650 686884353 72820570 853170454 401452903 218611070 662421393 511277493 715779797 664041213 15037608 20148474 77819776 2379379 738612855 338929165 591292508 902464469 650697444 971549242 955501918 792846009 572588387 918521256 623398671 1736950 563678994 964902255 652018277 400178823 910850066 984050047 208625324 56927881 211958450 923715439 945394518 916956968 685702028 140551765 131323888 29473993 456956861 650036494 587469038 870201182 202477791 806792339 602396426 285947848 290117216 853903669 433686203 378961655 795549341 942866882 809429735 485063015 886149363 396937914 275202504 968670974 142903358 550322314 575895835 628820972 797746066 682170984 268759041 590918818 559014304 543865019 533455280 775682536 525347105 629101079 271484655 488788762 148087911 506178629 448262245 902464469 953882020 40131409 661321016 390275103 751925989 114409323 712346140 399037712 830619816 36055646 60750487 509019925 83066601 702745028 662421393 49948206 709613471 112090095 41538784 264100442 151364594 246221518 308142020 829614460 219054502 968755777 23973553 371179314 703490607 36055646 637657473 735710261 387176309 272303478 633587956 179991869 532803593 393120342 269911067 342116147 740340897 981996224 502849508 134971740 465759767 456137963 653201202 349076114 527654256 252792947 162062292 573449906 940188502 907095826 954677909 451551269 923927991 165821462 115090276 989729323 632402794 456137963 142903358 403519778 921198791 997329398 50241607 250885472 941586175 187104147 562773407 32954995 738855203 128450928 53525809 604181881 786380583 662972501 917795074 944573659 982416551 990121035 721418370 317751260 228290502 859168292 42657625 496698204 533455280 15903366 533455280 539035187 917452919 990121035 736237188 420636144 444897967 543945175 518384931 37275245 857535330 464444922 115090276 910818482 942999703 40131409 768561257 786320493 888699423 939725993 807117750 750978759 888553258 715957434 268759041 195733178 292972503 925555858 923927991 353964006 809429735 338631458 67831588 885141769 140129038 960796073 270237875 2379379 799588075 761330904 630775839 975478549 886149363 300892929 966683628 225858850 911302173 427184372 710224239 376448548 575895835 989729323 488295044 531135820 770594967 888259120 539957336 15903366 32075030 577673184 396743027 5299425 40656291 721769014 575023903 338929165 623398671 788118407 886149363 167276070 814662325 24089615 10475035 991615550 465759767 556619020 278160655 55108095 23973553 299462930 499057158 300892929 715779797 907095826 264750083 566125822 40656291 613596687 598426014 708046990 736237188 970911538 117931902 449022331 938140278 32954995 715779797 884952974 214244685 979750308 465759767 138442062 814662325 711532060 39220584 288873549 559014304 812414090 98287438 556619020 101231409 944573659 503666498 256866745 562773407 616057762 748408317 699230813 877167702 625664180 321628921 817743547 750563611 884952974 539381059 885647994 637939784 604181881 103733806 854243215 354807942 943235508 945394518 424974082 597206610 509370562 10475035 715957434 591292508 656191811 489612980 256866745 882364001 163229392 878442641 405444604 305990981 463496366 921198791 931005739 186285312 577673184 956815883 495854210 502849508 117210451 683406807 32954995 275202504 446968233 877167702 782533040 723661847 623206361 306607837 997329398 53226850 393120342 451817798 77685914 24188768 838803091 885549757 866568903 533455280 215052415 132556595 969494113 480361743 641231120 954227928 831380531 913521589 495854210 788737791 932715562 695599688 722013570 900116034 437743643 656623172 256866745 295606018 604881661 387176309 162904272 850386354 252792947 38338132 786320493 926045944 287239117 424594759 24089615 681930584 891279504 503666498 262406489 771321738 554242697 492009082 546141085 660765062 989729323 887794841 923715439 430101007 186244437 553368896 750978759 814662325 485063015 691982506 970320952 195957995 570796148 490344724 52243955 911302173 607041944 215792516 334932282 628523361 889608806 597206610 836376015 675472009 937158597 691982506 404152565 326469359 535533605 854902633 170938835 736624310 155241439 298727845 602832600 492009082 38085353 261683638 143200457 719307635 582273012 723661847 220576148 600441802 7807006 430088921 887548285 931966477 514768035 266213579 962073361 807117750 507016471 296305836 388085842 293192373 307060809 876263470 232177196 640849273 531135820 177689820 853903669 650990283 193515742 586370291 35128915 485153920 516175014 546679009 285947848 511330454 276676140 292972503 51457589 840075867 775682536 254203892 570796148 568104980 601740259 396806189 112090095 462762217 437743643 503666498 170941326 396050095 249670598 712346140 400218902 887794841 838803091 242530683 970320952 923927991 35128915 617908997 689757867 567948101 566554997 257214051 632378665 525347105 995876182 553368896 992169078 900116034 938080232 956286779 400218902 420052652 902464469 598543708 433921335 298727845 174862116 910850066 338929165 302151126 790270533 700560235 812044550 431406787 205387898 361435434 767839638 129724737 674446970 816971086 441621000 424594759 891279504 637769046 630977998 242186770 808614164 396050095 953267424 551289217 953267424 32075030 885647994 270237875 559957428 966131311 624819674 754580366 146573202 567948101 162904272 210621083 571019028 50241607 360743135 23262398 686884353 74587532 925555858 982416551 688177128 117931902 464444922 743614603 464444922 837690635 488788762 619842427 47349911 140129038 964902255 284588557 2379379 128188331 983373150 746092812 836376015 955501918 699733109 53226850 19911869 32806834 109054120 654830523 968755777 424594759 960796073 953882020 891279504 583924389 912948600 786380583 708094860 590208882 582273012 230662076 315297566 242028021 829983432 864016134 522332929 567948101 388085842 876868627 630238886 465759767 506919968 877167702 209497607 776820092 272303478 770993588 456137963 598543708 806744033 202477791 943793512 927806038 960796073 917795074 247822207 947413305 852604705 567343883 237172271 354807942 459617527 954677909 838803091 484158080 912948600 780870754 10369081 630775839 310726569 401452903 554242697 743614603 522332929 703514531 623206361 601630030 604181881 722768643 264297813 208625324 694954883 768561257 387703244 763431295 511277493 251042004 103219970 575023903 140551765 618542887 310726569 132556595 715957434 271484655 938705675 803588261 225771141 663971090 272303478 801623766 420636144 465697134 98231977 321628921 36265302 760370490 170938835 567774282 400178823 429277230 223299794 831467447 53195413 293192373 485509833 946916156 632378665 361435434 342116147 696443558 953267424 444897967 788118407 774489082 400218902 623398671 359859765 275349681 310726569 683406807 128450928 745200166 689757867 795549341 749497174 840130613 836376015 567948101 509019925 135975430 55108095 125204206 604181881 884072178 764116955 462762217 195733178 209789164 550322314 581063820 560623000 695599688 396937914 835339516 527595027 769327548 155241439 855636134 38085353 242530683 288873549 723661847 38304068 215792516 792822959 746992914 252792947 93478833 330205547 956815883 2076768 630201811 942866882 559014304 566125822 840130613 990121035 570764323 940381563 306258744 27735709 201717402 352092606 640849273 396138845 592639233 793291205 518384931 739696834 425392410 215052415 721418370 902464469 326469359 426814174 617908997 778123726 93651148 267829614 786380583 464444922 60750487 520071928 703514531 991615550 595030753 494336936 674485068 812414090 464130920 983373150 77819776 568142039 80415088 140551765 255644658 338312978 83066601 916956968 190929591 866568903 967417280 968755777 456956861 522663253 630201811 114409323 710224239 136412292 183440003 676975489 633573519 607965234 851400664 88335614 562773407 117210451 489130642 852755974 539381059 220576148 444897967 215052415 67700412 573449906 554222239 170941326 563678994 841210236 824770361 764459345 270237875 232177196 740340897 299994808 600441802 943235508 326469359 494336936 760231333 955730659 60750487 193515742 135975430 548964093 518384931 638790258 610834602 40131409 920628541 88335614 257214051 19715614 776352608 272303478 271484655 757709512 900116034 550322314 757850417 808614164 93651148 24089615 80415088 727245017 695599688 282751746 601630030 912948600 456956861 764459345 49317804 733642252 190979155 630977998 451817798 38085353 138393155 55018341 292972503 841210236 705304879 539035187 305990981 629101079 947413305 195019158 617908997 884952974 230662076 842970782 186285312 607041944 77819776 145885851 994877696 682170984 626833449 7807006 513440742 750750593 361435434 588034909 152243323 175507355 67831588 376974209 289736829 812044550 193648030 49948206 514650194 359859765 771321738 761330904 765027062 676975489 570764323 996943901 432089082 464444922 481894295 56927881 567948101 997329398 38338132 451551269 533455280 800460688 553368896 249670598 13112382 994587826 153196022 983113723 140129038 413592826 982416551 299462930 736624310 307403622 929504680 251367294 604968568 296751278 126695727 507016471 485153920 509664709 773781000 250749017 830619816 771803404 760231333 223299794 688577702 400178823 632402794 478892468 738855203 750750593 887794841 276676140 618542887 910818482 251188854 771803404 760231333 872434540 64420967 338929165 888699423 711455867 750563611 726950461 910850066 907721720 626932919 396937914 551289217 636434256 542382913 719601437 795549341 20148474 598543708 590918818 214244685 174862116 228290502 589760538 152243323 682170984 56154381 860708299 138393155 995876182 837690635 195019158 681930584 572465104 366854683 52243955 334299650 507016471 125204206 780061015 770864525 112090095 748408317 981996224 284588557 174335822 824770361 186244437 23262398 918521256 633573519 179981178 455539394 630238886 920721173 601740259 422532994 458363994 966131311 2575238 954227928 79523589 289736829 63192647 512614298 232177196 296305836 403519778 315747769 970911538 284588557 353964006 247234349 186244437 598426014 117210451 929504680 264100442 888553258 630977998 547547687 970320952 855636134 396937914 954227928 687055288 862177563 337153847 298727845 887548285 709613471 678474526 109369069 858040709 753419354 535533605 736237188 237172271 577970627 902464469 975337465 396937914 754580366 187104147 553191189 352092606 663670886 570796148 809429735 458156391 425392410 638790258 40656291 641231120 151364594 315343704 518384931 582273012 927806038 810021050 967417280 327773233 641635851 588034909 598543708 940381563 927806038 708094860 266213579 860708299 860477160 891279504 533864165 53966525 56154381 7807006 567343883 646710523 913521589 361002681 315747769 795472528 877088774 732559957 431406787 262406489 587469038 627110568 630201811 808614164 331638088 781242822 306258744 579757115 152243323 225858850 154538466 262406489 910850066 128450928 838655651 543945175 211958450 509144872 407629453 968755777 888553258 195019158 295606018 36265302 641635851 667313812 274113481 241184545 242530683 923715439 553191189 509664709 922858580 860708299 610447918 179991869 344620844 699733109 142903358 359859765 1926282 874297853 850386354 597784477 24188768 983113723 757815664 52243955 396743027 520071928 803588261 313272965 992001870 15903366 626833449 667844649 148087911 495854210 681930584 349076114 254203892 882804101 488295044 324986193 533455280 514768035 480361743 394791153 177689820 361002681 911302173 179991869 626833449 250832323 641635851 2076768 499057158 702745028 254203892 531135820 854902633 1736950 538025980 237172271 591292508 143200457 546679009 87392830 135975430 403519778 50241607 687055288 663670886 727245017 886149363 522332929 306607837 968755777 98824830 246221518 215981255 352092606 746092812 744008188 456956861 995876182 904800517 400218902 332834875 590918818 553191189 36265302 298727845 842970782 40448245 994587826 780870754 190323279 577970627 754133002 73848009 119279869 538810384 182214511 900796599 990121035 753419354 241184545 547547687 668964848 807117750 159828635 532803593 38085353 545538425 859168292 703514531 721769014 451817798 52243955 626833449 566554997 922858580 889608806 351424753 53966525 885549757 944573659 99294732 338312978 688534928 382904427 632014852 835198840 484158080 997329398 947413305 60017144 456956861 249820698 966683628 232177196 275349681 960543625 305990981 942899938 305068796 47529701 653201202 349644605 572588387 683621666 334299650 940381563 886149363 735710261 640849273 925555858 128188331 155241439 860477160 727578179 47290536 699733109 923927991 248642173 117931902 694954883 136384659 726950461 663971090 698320352 674485068 172382592 296305836 539035187 433686203 143200457 915330573 449022331 247841801 458156391 433686203 764116955 703514531 925555858 926045944 159828635 64420967 939725993 955501918 247822207 326469359 167276070 29069209 427184372 271484655 535533605 38844979 223299794 771321738 282751746 595030753 33511708 433686203 618355033 831467447 207844781 153196022 955730659 954227928 179991869 662421393 36265302 234980621 792822959 900116034 815123402 251188854 190323279 710224239 939725993 306607837 179991869 289736829 213097363 215774690 134801439 332834875 566554997 64420967 334211676 595030753 938080232 247841801 923715439 542382913 167276070 74587532 638790258 876868627 167276070 851400664 264297813 151364594 887548285 513440742 117210451 723661847 262406489 47290536 262406489 242028021 306597948 551289217 531333917 688577702 713146141 745200166 174862116 586446680 687055288 888699423 676975489 610447918 337153847 710224239 852604705 546679009 441621000 656623172 36265302 23262398 535533605 47290536 702745028 202477791 342116147 702364434 248642173 193648030 546141085 920628541 708053570 650990283 996943901 228290502 47529701 773781000 638790258 32806834 767839638 50241607 334932282 932584021 885000402 807117750 969494113 567774282 313272965 289736829 729868696 196106606 543945175 886149363 317751260 563678994 689757867 619842427 509144872 322974842 858798711 67700412 795472528 858127225 629101079 927806038 314069534 135975430 246221518 751925989 522332929 303230482 328764419 675472009 299462930 215792516 781242822 885995802 829614460 920628541 187104147 430101007 424974082 264408147 359859765 769327548 836376015 462762217 52243955 712346140 514768035 83066601 195733178 949084393 970911538 206036522 687055288 650990283 496698204 247006479 226492467 590208882 841210236 284588557 560327459 926044257 498045048 638516505 566125822 512614298 975478549 38844979 885141769 926045944 721769014 770993588 853903669 662421393 916956968 831467447 514768035 876868627 33511708 268759041 721769014 548748527 29473993 786380583 196460706 570764323 793291205 99294732 559957428 126695727 458363994 195957995 808838846 67831588 758889515 47290536 872434540 770864525 174335822 177689820 478892468 888699423 209497607 799588075 754133002 412979540 806744033 29069209 850484222 553191189 353964006 843005594 727245017 425392410 267829614 485153920 588034909 532803593 516175014 268759041 190323279 982370833 458363994 553191189 786320493 610834602 182214511 705304879 53195413 428572243 109054120 835339516 699733109 408395896 991615550 862177563 831241130 538025980 506919968 538025980 209497607 214244685 688177128 23262398 581831913 632402794 55108095 719307635 262406489 74587532 382904427 39220584 390793037 278160655 397928982 305068796 806792339 215977916 686884353 407510599 195733178 78649514 853170454 900796599 507016471 73848009 505061211 15037608 978947655 786380583 170938835 641635851 800460688 553368896 68748842 532803593 51457589 489130642 984047482 808866527 866337119 630775839 29473993 363976852 938080232 140129038 509370562 740882715 175060805 193648030 324986193 641635851 359859765 685702028 175507355 604968568 378961655 456956861 516175014 242530683 815123402 247234349 942899938 201717402 726950461 83066601 317751260 884059813 282751746 334299650 815123402 269911067 446968233 177689820 995876182 32075030 749497174 595030753 478892468 518384931 79523589 38338132 698320352 538810384 140551765 407510599 790270533 183440003 616057762 208625324 143200457 774489082 155241439 420052652 560327459 554222239 449022331 456956861 264100442 278160655 732559957 211958450 597784477 715779797 771803404 396806189 735710261 28363157 858798711 257214051 506178629 292149520 498045048 660095934 496698204 518384931 516175014 49317804 907721720 39220584 225858850 738612855 656191811 367026304 396632533 498840912 938080232 885549757 719601437 361435434 399037712 47290536 842970782 966683628 815123402 721418370 835212499 602396426 424974082 462762217 744008188 354807942 719601437 722768643 60017144 921198791 448881532 289918211 607760956 326469359 708094860 208625324 589760538 969294148 560327459 502849508 996943901 740340897 511277493 344620844 962430008 326469359 858040709 148087911 810021050 242186770 970911538 407629453 52243955 946612927 793291205 269911067 792846009 47290536 325554372 6720560 968670974 702364434 175060805 705304879 66490779 683406807 866568903 40448245 36055646 931640418 376448548 82689280 485262404 712346140 762749463 251042004 207844781 604968568 249820698 550336314 27735709 765027062 597784477 131323888 912948600 464130920 266583970 917795074 371179314 40448245 299462930 296305836 40131409 514650194 397928982 42657625 607965234 598426014 35128915 74587532 247822207 464130920 991615550 545538425 175507355 931966477 446968233 502849508 328764419 31215478 186244437 53226850 52243955 838655651 112390393 838655651 218611070 633587956 812044550 302151126 641231120 770864525 285947848 306258744 226492467 430284321 170941326 637769046 249820698 840130613 851759377 367026304 984047482 681765297 66490779 876263470 79523589 788737791 938456692 151364594 938456692 982353486 315297566 610447918 852604705 598426014 459617527 931640418 330274784 738855203 667313812 396050095 174862116 80415088 792822959 969294148 727245017 947413305 758889515 296305836 172382592 652018277 140725908 344620844 570796148 746992914 324986193 864016134 349644605 264750083 19715614 921198791 327773233 740882715 808614164 920721173 456137963 23262398 795472528 152523810 889608806 202477791 516175014 1926282 719601437 50241607 7807006 29069209 179991869 244528344 209497607 132556595 795472528 417074904 186244437 632402794 630238886 626833449 51457589 539381059 186244437 142903358 885647994 344876805 981996224 645094664 782533040 575895835 485509833 763431295 458290565 152618584 325554372 278160655 441621000 201717402 944573659 295366548 771803404 203331888 806744033 786380583 396632533 760231333 7807006 586370291 163229392 688577702 509019925 926044257 458156391 975337465 887548285 982370833 852755974 860477160 808838846 577970627 782533040 38338132 831380531 877088774 815123402 513440742 727827821 412979540 509019925 259646582 781246194 838331644 887548285 428572243 918521256 746992914 850484222 53226850 349644605 554222239 232177196 284588557 968755777 854902633 866568903 583924389 625664180 722768643 522663253 162062292 618355033 637769046 252962990 183440003 942866882 480361743 250749017 628523361 526944836 915330573 179991869 896571061 556619020 177689820 708094860 650697444 361002681 401452903 853170454 654830523 298050322 885995802 361002681 420052652 476912096 788737791 342116147 420052652 896029805 575023903 815123402 581063820 179991869 293192373 313272965 32806834 226492467 354807942 938080232 215981255 616057762 511330454 49948206 681765297 250832323 533455280 49614749 542382913 448881532 480361743 588034909 975337465 338929165 533455280 463496366 93478833 789617647 630201811 443960759 632014852 664041213 626932919 172894131 183440003 507016471 67831588 195019158 688534928 938705675 753419354 853903669 242028021 978947655 39220584 852107700 931086800 264100442 292149520 607041944 539381059 964902255 893019475 939725993 533864165 338631458 38338132 49948206 840075867 315343704 306607837 539035187 678884863 790270533 123073176 485509833 923927991 250885472 632402794 860708299 186285312 403519778 429277230 520071928 896571061 647733367 874124920 159828635 736624310 566125822 567948101 944573659 152523810 394791153 991073887 250885472 103733806 627110568 922706719 829983432 969294148 38085353 135975430 494336936 572588387 560327459 237389399 353964006 219054502 19715614 302151126 179991869 654830523 556619020 540394532 841780337 407091770 866337119 710224239 338929165 769327548 459452716 53525809 790270533 396743027 250749017 351424753 324129364 28363157 361002681 539957336 604181881 140129038 485063015 206036522 775682536 858127225 853903669 568104980 475344103 422532994 163229392 293192373 732245352 681930584 955730659 854902633 590918818 776352608 588034909 550336314 831241130 292149520 582273012 886149363 456137963 292149520 458363994 209789164 829983432 942999703 694954883 751925989 573480571 700560235 970911538 750563611 852107700 103733806 851829959 6720560 464444922 417074904 688177128 917452919 983373150 876263470 750750593 254203892 276676140 568104980 66490779 39220584 859168292 305990981 735891721 10475035 778123726 765027062 852755974 893019475 299462930 128188331 597784477 215792516 459452716 630775839 35128915 545538425 996943901 153196022 708094860 860377902 970320952 77819776 207844781 966131311 990121035 776820092 874297853 860477160 625664180 971894015 359859765 945394518 641231120 417074904 488788762 702364434 119279869 407510599 996943901 538810384 944573659 513440742 249670598 835339516 667844649 209789164 721769014 650990283 607760956 702364434 937158597 600441802 746394036 808866527 762749463 464130920 548964093 932584021 978947655 465697134 698320352 597206610 449022331 679463383 68748842 887794841 338929165 971894015 968755777 78649514 668964848 67700412 103219970 801623766 872434540 23973553 884952974 251188854 531333917 931086800 288873549 39220584 767187616 770993588 931005739 926044257 162904272 195957995 404152565 738612855 5299425 215981255 722013570 502849508 590918818 598426014 53966525 363976852 369306500 152866011 887548285 540976336 938080232 539957336 882804101 40656291 327773233 846351340 546141085 591292508 579757115 408395896 604181881 133739154 806792339 654830523 884952974 837690635 719601437 857535330 403519778 592639233 842970782 660765062 78775552 163769090 27735709 211958450 396138845 430088921 394791153 893019475 400178823 425392410 907721720 115090276 250832323 525347105 327773233 809429735 334211676 306607837 2379379 462762217 912948600 738612855 103219970 67700412 485063015 626833449 793291205 215977916 179991869 637657473 965948435 407091770 970320952 637657473 907095826 827311105 249670598 885995802 464444922 332834875 831380531 302151126 388085842 628523361 984047482 518384931 793291205 954227928 925555858 585165457 531135820 433686203 573480571 93651148 160287690 275202504 931005739 882364001 729868696 125829791 625664180 298727845 371179314 568104980 582273012 396806189 625664180 464130920 155241439 553191189 506919968 760370490 359714925 201717402 889608806 691982506 299994808 412979540 196460706 499057158 817743547 266213579 462394151 661321016 4519262 814295984 781246194 428572243 36055646 946612927 475344103 103669472 160287690 101231409 781246194 774489082 527595027 630775839 49614749 540394532 266583970 455539394 896029805 753419354 225771141 292149520 514768035 809429735 394791153 202477791 276676140 802009078 686884353 581063820 140725908 628523361 378961655 610834602 267829614 490344724 427184372 860377902 570796148 115090276 485063015 430284321 994587826 900116034 719601437 715779797 249670598 361435434 829614460 610447918 522663253 603931167 934824360 407510599 223299794 219054502 604881661 911302173 638790258 637939784 264297813 780870754 262406489 481894295 397928982 242186770 396937914 438183310 207844781 855636134 109054120 888553258 334211676 931640418 806744033 40656291 638790258 572588387 882804101 74587532 963141978 332834875 757709512 626833449 815123402 645094664 990121035 228290502 667844649 344876805 330274784 619842427 931005739 527654256 829614460 103669472 38085353 451817798 272303478 550336314 983113723 196106606 727827821 513440742 829983432 922706719 448881532 99294732 944573659 40448245 923715439 433686203 47349911 704431513 592981604 888699423 119279869 804406873 932715562 430284321 37275245 854902633 749497174 538810384 485262404 931966477 628820972 966683628 992169078 922706719 546141085 814662325 975478549 760231333 459617527 306607837 27735709 795549341 396632533 918225489 324986193 619842427 836376015 562773407 388085842 748408317 223299794 860377902 962073361 884072178 376448548 783513992 969494113 396743027 932715562 546679009 744008188 710224239 866337119 78649514 573480571 293192373 874297853 32806834 369306500 295606018 19911869 854969794 984047482 363976852 983373150 640849273 369306500 855636134 539035187 857535330 962073361 444897967 667844649 432089082 860708299 251042004 299462930 799588075 396937914 511330454 616057762 145559297 975478549 499057158 810021050 49317804 337153847 425392410 699733109 922858580 711532060 145559297 33511708 803588261 207844781 539957336 722013570 956286779 342116147 242530683 689757867 740340897 146573202 457149478 509664709 918225489 51457589 308142020 448881532 540976336 711455867 674485068 146573202 518384931 330205547 567343883 205387898 190979155 907095826 344620844 27735709 251042004 359714925 550336314 475344103 703514531 907721720 750563611 885000402 465759767 800460688 289736829 174335822 202477791 737945381 72820570 285947848 967417280 310726569 931086800 722013570 827311105 604881661 723661847 369306500 575895835 938080232 396743027 51457589 554222239 353964006 444897967 251367294 688534928 887548285 492009082 272303478 540976336 40131409 451817798 179981178 623398671 38085353 38844979 546141085 705304879 733642252 275202504 749497174 940188502 337153847 630775839 694954883 702364434 641231120 56154381 360743135 315747769 727245017 269911067 33511708 42657625 314069534 42657625 975478549 257214051 196460706 946916156 971549242 193648030 678474526 704431513 925555858 251042004 990121035 215792516 699230813 679463383 907095826 652018277 170941326 632402794 252792947 129724737 885141769 321628921 112390393 956286779 167276070 293192373 885000402 783513992 646710523 156817178 458156391 804406873 790270533 712346140 485262404 50241607 557710104 539381059 396138845 982353486 155241439 568104980 889608806 551289217 968755777 769327548 662972501 931640418 146573202 28363157 795472528 887794841 459617527 254203892 667313812 304621545 376974209 125829791 604881661 944068218 349076114 743614603 795472528 681765297 902464469 53525809 315297566 824770361 103219970 15037608 697742034 922858580 387703244 896571061 866337119 660765062 746394036 926044257 786320493 49317804 874297853 824770361 719601437 290117216 812044550 773781000 647733367 266213579 727827821 540394532 195019158 900116034 252792947 704431513 683621666 351424753 209497607 567948101 361002681 704431513 582273012 719307635 360743135 885549757 996943901 488295044 338312978 525347105 932715562 801623766 560327459 662421393 729868696 923927991 641231120 99294732 515426984 637939784 387703244 206036522 328764419 148087911 327773233 553191189 938705675 196106606 944573659 464130920 662972501 125829791 252962990 604968568 155241439 884072178 334932282 326469359 2076768 451817798 520071928 893019475 140725908 610447918 4519262 286037808 938456692 303230482 37275245 884072178 800460688 334299650 944573659 502849508 674446970 210621083 196460706 700560235 749497174 803588261 114409323 326469359 902464469 945394518 851759377 525347105 103219970 567948101 55108095 955501918 882804101 42657625 866568903 128188331 735891721 525347105 992169078 321628921 32954995 920721173 923715439 765027062 109054120 971894015 620243558 422532994 360743135 53525809 145885851 259646582 119279869 656623172 51457589 387176309 505061211 286037808 851759377 67831588 836376015 455539394 560623000 592639233 426814174 663971090 896029805 518384931 353964006 101231409 831380531 586446680 944573659 424594759 531333917 13112382 19911869 917795074 787269565 546679009 250885472 837690635 145885851 247006479 527595027 545538425 408032939 807117750 196460706 809429735 829983432 855636134 315343704 946612927 55018341 600441802 174862116 638516505 49614749 115509283 143200457 876263470 287239117 559014304 744008188 931966477 786320493 480361743 968670974 885549757 646710523 211958450 443960759 921198791 943793512 266213579 36265302 244528344 232177196 489130642 937158597 843005594 396937914 550336314 1736950 618542887 662972501 186285312 853170454 138393155 750750593 896571061 140725908 575023903 975478549 595030753 81337657 103733806 624819674 738855203 143200457 264408147 994587826 540976336 449022331 572588387 764116955 135975430 485063015 82689280 943235508 540394532 522332929 562773407 630629857 626833449 750750593 946612927 155241439 705304879 607760956 654830523 382210484 251188854 808614164 904800517 815123402 851400664 683621666 41538784 287768226 242186770 667313812 295366548 570796148 190929591 195019158 211958450 267829614 575895835 317751260 619842427 582273012 638516505 49948206 152618584 408032939 831467447 754133002 21190596 566554997 776352608 625664180 269911067 241184545 136384659 579757115 129724737 77685914 885995802 509019925 687988023 225858850 478351140 754133002 457149478 179991869 736237188 349644605 484158080 237172271 700560235 689757867 117931902 767187616 567948101 866568903 315747769 858040709 429277230 550322314 770864525 119279869 958668995 592981604 709613471 248642173 662421393 314069534 633587956 719601437 932584021 838803091 278160655 632378665 740340897 170938835 21190596 997329398 969294148 955730659 396806189 393120342 286037808 607041944 705304879 885353274 126695727 288873549 801623766 369306500 808866527 719601437 471393875 195733178 778074990 650036494 23262398 630977998 480361743 349076114 956286779 850484222 123073176 249670598 6720560 79509313 838331644 4519262 650697444 968755777 831467447 10369081 138393155 983373150 598543708 942866882 251188854 750750593 209789164 456137963 98287438 992169078 387176309 916956968 145559297 923715439 50241607 287768226 129724737 737945381 358401766 19911869 864016134 607965234 681765297 51457589 936312210 145885851 806664207 285947848 101231409 984050047 499057158 699230813 266213579 174862116 637657473 995876182 975337465 934824360 719307635 588034909 215792516 907721720 838331644 589760538 32075030 241184545 255644658 437743643 546679009 361002681 840130613 787269565 131323888 437743643 286037808 697742034 723661847 853903669 351424753 313272965 306258744 560327459 311613451 399037712 954227928 938080232 918225489 226492467 940188502 758889515 795549341 699733109 950673785 955730659 550336314 478892468 429277230 757709512 481894295 918521256 941586175 207442482 575895835 209497607 886917295 812414090 751925989 134971740 93478833 207844781 712346140 190323279 152523810 237172271 885549757 787269565 502849508 38085353 64420967 667844649 31215478 613596687 915330573 829983432 264750083 829614460 882364001 246058339 567343883 764459345 765027062 722013570 540394532 77685914 208625324 175060805 843005594 780061015 808866527 889608806 73848009 193515742 396050095 754133002 286037808 761330904 915330573 448881532 991073887 550322314 60750487 733642252 806664207 829983432 770864525 60017144 600441802 79509313 490344724 24089615 80415088 944573659 757850417 708053570 457149478 874297853 802009078 170941326 938140278 815123402 601630030 172894131 740882715 907095826 38338132 520071928 234980621 668964848 366854683 241184545 567948101 943793512 39220584 506919968 153196022 910818482 774489082 983373150 586370291 396937914 723661847 458156391 502849508 678474526 944068218 78775552 299113502 522332929 126695727 806744033 540976336 121069546 802009078 698320352 103733806 884952974 780870754 885000402 430101007 630977998 451817798 78775552 455539394 353964006 769327548 556619020 401452903 246221518 230662076 739696834 215792516 993091440 39220584 910818482 163769090 638790258 298727845 507016471 513440742 451521521 681765297 737945381 305990981 456137963 723661847 860708299 595030753 842970782 77819776 342116147 992001870 509019925 703514531 735710261 177689820 708053570 703514531 627110568 994877696 625664180 177689820 159828635 275202504 494336936 931640418 560623000 623398671 36055646 133739154 566554997 489612980 781242822 367026304 711455867 485153920 943235508 290117216 531333917 539957336 944573659 53525809 106790696 354807942 252792947 568104980 907095826 480361743 632378665 302151126 121069546 115509283 968670974 448262245 175060805 538810384 592981604 926044257 272303478 738855203 568142039 592639233 688177128 982416551 641231120 201717402 650036494 80415088 37275245 40656291 646710523 424594759 485063015 525347105 942899938 735696627 324129364 540394532 371179314 261683638 968755777 850386354 298050322 67700412 49614749 877167702 836376015 910850066 315343704 770993588 140725908 738612855 220576148 135975430 953267424 617908997 943793512 396743027 781246194 840130613 686335042 688534928 390275103 814662325 456137963 264750083 38085353 420052652 232177196 860477160 944573659 456956861 831380531 67831588 360743135 860477160 5299425 424594759 359859765 757815664 829614460 255644658 296751278 917452919 604881661 884072178 726620654 857535330 359714925 42657625 152314280 548748527 853170454 115090276 1736950 289736829 174862116 545538425 630629857 855636134 246058339 302151126 449022331 617908997 349076114 862254110 172894131 13112382 37275245 626833449 688177128 503666498 991615550 840075867 993091440 98287438 754133002 286037808 853903669 885995802 817743547 289736829 396138845 567343883 983113723 770594967 683621666 936312210 2379379 577970627 732245352 125204206 960796073 532803593 667844649 628523361 699733109 696443558 452156279 926044257 979750308 843005594 404152565 837690635 587179274 551289217 781242822 843005594 991615550 219054502 546141085 806664207 656191811 814295984 136412292 290117216 667844649 941586175 446968233 702364434 77685914 545538425 687055288 712346140 943793512 532803593 388085842 156817178 887548285 931086800 616796881 858127225 143200457 946916156 52243955 278160655 761330904 539381059 433921335 888699423 775682536 575895835 601740259 917452919 858798711 462762217 771803404 835339516 983373150 645094664 786320493 29069209 33511708 83066601 629101079 154538466 327773233 433686203 916956968 797746066 520071928 154538466 55018341 598543708 527595027 704431513 718980624 743614603 49948206 601630030 143200457 23262398 572465104 884072178 213097363 864016134 478892468 420052652 688177128 31215478 215052415 209789164 726620654 688534928 388085842 654830523 170941326 910850066 317751260 430101007 761330904 228290502 334211676 780870754 630977998 511330454 625664180 230662076 698320352 587469038 408032939 39220584 338631458 511330454 870201182 209789164 912948600 886149363 288072509 38844979 674446970 587469038 488788762 949084393 682170984 53226850 88335614 610447918 170941326 838331644 15903366 53226850 394791153 412979540 931005739 548748527 476912096 806664207 636434256 748408317 842970782 133739154 77685914 215977916 446968233 876868627 543945175 967417280 353964006 904771946 399037712 956815883 571019028 244528344 870201182 412979540 4519262 700560235 835198840 618542887 852604705 123073176 29473993 444897967 360743135 174140940 179991869 567343883 47529701 893019475 757709512 152523810 288072509 878442641 942899938 438183310 590918818 638516505 887548285 920628541 159828635 840075867 443960759 210621083 713146141 82689280 463496366 308142020 458363994 328462418 543865019 202477791 33511708 831467447 910818482 757850417 237172271 396743027 19911869 768561257 592981604 678884863 315343704 93478833 647733367 610834602 910818482 457149478 310726569 93651148 371179314 344876805 170938835 638516505 300892929 304621545 866568903 156817178 543945175 653201202 337153847 814662325 170941326 885995802 882804101 953882020 601740259 946916156 399037712 757815664 750750593 679463383 616057762 857535330 566554997 32806834 566554997 703490607 708094860 942999703 387703244 271484655 376448548 886917295 53966525 408395896 764116955 956815883 938080232 623398671 931005739 332834875 735710261 949084393 182214511 103669472 607041944 931013644 688177128 47290536 463496366 214650974 722013570 831467447 872434540 769327548 636434256 851400664 426814174 567774282 749497174 67700412 140725908 40448245 964902255 617908997 140725908 641635851 735891721 695599688 397928982 746092812 361002681 271484655 317751260 654830523 359859765 532803593 726620654 53226850 387703244 407510599 307060809 295366548 35128915 326469359 48746678 860477160 463496366 926045944 458290565 545538425 81553943 876868627 722013570 315747769 955730659 73848009 249670598 550336314 573480571 966683628 989729323 838655651 831380531 448262245 996943901 242530683 207844781 101231409 764459345 514650194 137529801 705548145 496698204 563678994 623206361 604968568 195019158 430088921 338929165 306607837 338312978 760370490 535533605 685702028 488788762 904771946 7807006 430284321 589760538 662421393 746394036 786380583 579757115 93651148 699230813 770864525 994587826 595030753 764116955 422532994 983373150 598426014 996943901 630775839 732245352 754580366 557710104 10475035 56927881 259646582 560327459 195957995 162904272 152243323 984047482 567774282 298050322 645094664 338929165 795549341 285947848 712346140 601740259 674485068 531333917 816971086 970320952 326469359 754133002 591292508 607965234 208625324 485262404 538025980 175060805 93478833 134971740 771321738 267829614 675472009 694954883 623398671 853903669 488295044 437743643 938140278 722013570 13112382 20148474 835339516 514768035 932584021 27735709 202477791 758889515 206036522 815123402 604968568 485063015 321628921 866568903 710224239 187104147 140129038 912948600 795549341 498045048 628523361 938456692 885995802 795472528 492009082 264297813 292972503 179981178 854969794 359714925 401452903 408032939 617908997 394791153 292972503 437743643 695599688 739696834 702364434 81553943 152618584 792822959 38338132 931005739 72820570 831380531 904771946 535533605 575023903 1736950 311613451 702745028 208625324 338929165 715779797 851759377 396806189 968755777 662421393 689757867 809429735 262406489 917795074 307403622 554222239 910818482 632014852 531333917 547547687 682170984 259646582 195019158 214244685 689757867 151364594 159828635 888699423 902464469 954227928 307403622 945394518 726950461 975337465 698320352 982416551 15903366 710224239 213097363 979740237 36265302 617908997 955730659 922858580 215289803 809429735 174862116 422532994 134971740 206036522 448881532 626833449 266583970 710224239 938080232 688534928 937158597 489612980 581831913 295606018 38085353 237389399 589760538 598426014 296751278 888699423 874297853 153196022 369306500 967417280 53195413 278160655 241184545 554222239 694954883 678884863 522332929 753419354 972710252 407510599 205387898 884059813 256866745 553191189 225858850 929504680 812044550 586370291 167276070 457149478 215052415 653201202 32954995 293192373 408032939 748408317 77685914 29069209 282751746 572588387 831241130 843005594 831241130 38338132 806792339 387176309 788118407 67831588 778123726 152243323 522663253 39220584 53195413 630775839 687055288 38844979 887548285 567343883 944573659 407629453 726620654 640849273 719601437 331638088 607760956 945394518 215052415 306258744 607965234 736237188 764459345 920721173 170941326 23973553 754133002 688577702 248642173 738612855 938705675 751925989 852755974 581063820 252792947 831467447 732559957 433686203 52243955 719307635 572465104 802009078 853170454 837690635 78775552 931966477 112390393 941586175 568142039 407091770 140725908 840130613 2076768 6720560 55018341 444897967 20148474 125204206 630629857 311613451 509370562 743614603 167276070 203331888 506919968 456956861 842970782 31215478 155241439 710224239 744008188 41538784 136412292 598543708 749497174 247006479 315297566 637939784 781242822 572588387 539035187 854902633 330274784 206036522 613596687 539957336 160287690 10475035 19911869 603931167 607760956 688534928 397928982 43970470 218611070 704431513 266583970 41538784 485509833 702364434 488788762 154538466 923715439 375066210 77685914 306607837 646710523 401452903 60017144 457149478 607760956 600441802 970911538 926044257 338312978 351424753 790270533 740882715 662972501 295606018 613596687 827311105 288873549 539957336 272303478 321628921 337153847 298727845 960543625 982416551 248642173 275349681 207844781 740882715 975478549 722768643 462394151 884059813 56927881 230662076 413592826 289736829 776835194 408395896 145885851 328462418 636434256 1926282 298050322 637939784 338929165 234980621 938080232 73848009 174862116 41538784 251367294 715779797 38085353 956286779 968670974 900116034 175507355 814662325 478892468 292972503 288072509 743614603 667313812 750563611 938705675 886149363 984050047 261683638 527595027 244528344 117210451 387176309 711455867 485153920 795472528 162062292 337153847 115509283 981996224 396050095 68748842 215981255 916956968 776820092 405444604 633573519 702745028 801623766 699230813 42657625 732559957 131323888 175507355 23973553 112090095 780870754 390275103 683406807 972710252 94279561 762749463 31615284 683621666 575895835 458363994 77819776 33511708 247234349 452156279 251188854 698320352 864016134 121069546 876868627 938456692 498840912 778123726 163769090 451521521 514650194 968755777 215774690 498045048 946612927 678474526 289918211 874297853 145559297 56927881 617908997 789617647 687988023 1736950 237389399 53966525 704431513 359714925 814662325 15903366 214244685 49614749 193648030 66490779 688577702 134971740 237389399 925555858 946916156 978947655 835339516 390793037 626833449 251367294 31615284 209497607 736237188 505061211 942999703 165821462 783513992 248642173 656623172 632378665 47290536 943793512 151506993 972710252 78649514 81337657 598543708 960543625 492009082 334211676 618542887 35128915 511330454 98231977 302151126 907095826 982416551 975478549 193648030 891279504 675472009 932715562 770993588 689757867 808866527 250749017 53525809 247822207 183440003 960796073 135975430 299994808 23973553 196460706 721418370 984047482 860477160 771803404 586370291 134801439 738612855 250885472 306258744 522332929 429277230 262406489 945394518 267829614 553368896 175060805 878442641 664041213 799588075 750750593 98287438 36055646 923927991 205387898 860377902 786320493 135975430 589760538 884059813 995876182 702364434 918521256 857535330 757709512 874124920 781246194 525347105 939725993 32075030 488788762 344876805 215052415 630201811 516175014 93478833 66490779 597206610 543945175 151364594 165821462 296305836 971549242 432089082 237172271 944068218 854243215 93478833 762749463 920721173 831241130 765027062 397928982 539957336 49614749 876263470 338929165 15037608 478892468 275349681 687055288 484158080 782533040 760370490 885353274 210621083 618355033 142903358 870201182 542382913 522332929 433686203 829614460 603931167 527595027 592639233 749497174 305068796 249670598 78649514 981996224 387176309 290474734 991073887 907721720 885995802 187104147 746992914 250749017 50241607 314069534 73848009 215052415 760231333 527595027 208625324 35128915 623398671 686335042 72820570 399037712 29069209 136412292 553368896 808614164 927806038 896029805 60750487 746394036 525347105 369306500 922706719 650036494 617908997 387703244 630201811 884952974 884059813 630238886 950673785 35128915 344876805 485509833 145559297 378961655 709613471 925555858 626932919 858040709 931013644 420636144 78649514 726620654 809429735 478892468 769327548 182214511 633573519 531135820 567774282 835198840 915330573 531135820 39220584 404152565 425392410 831241130 750563611 249670598 950497221 32954995 264408147 852604705 740340897 997329398 681765297 668964848 242028021 485063015 321628921 506919968 650990283 195019158 840075867 49948206 471393875 841780337 804406873 667313812 754580366 932715562 255644658 727827821 546679009 761330904 746092812 19911869 202477791 587179274 654830523 859168292 456956861 852107700 49317804 53966525 802009078 968670974 681930584 726950461 751925989 597784477 293192373 514768035 641635851 543945175 719307635 267829614 900116034 729868696 885549757 983373150 740882715 896072909 492009082 250749017 244528344 247822207 407510599 456137963 967417280 687055288 28363157 750750593 64420967 787269565 513440742 683621666 953882020 396937914 152618584 251367294 201717402 990121035 765027062 912948600 546679009 2379379 152618584 630238886 862254110 636434256 50241607 376448548 247221668 388085842 489612980 394791153 553191189 249820698 603931167 667844649 183440003 393120342 568104980 478892468 375066210 810021050 675472009 858798711 660095934 662972501 93478833 313272965 293192373 912948600 53525809 589760538 201717402 708053570 637657473 218611070 133739154 735710261 663971090 376448548 885995802 559957428 514650194 29473993 74587532 63192647 80485362 744008188 154538466 582273012 152618584 971549242 610447918 851759377 296305836 338312978 603931167 787269565 688534928 960543625 705548145 246221518 953882020 396138845 268759041 109054120 745200166 290474734 152243323 907721720 592639233 994587826 247221668 299994808 417074904 573449906 650990283 931005739 757815664 767187616 893019475 601740259 465697134 764459345 259646582 128450928 43970470 841780337 6720560 729868696 303230482 852107700 681765297 495854210 660095934 790270533 174140940 24089615 53226850 969494113 601630030 965948435 42657625 604881661 846351340 376974209 305068796 48746678 806664207 940381563 877088774 328764419 125204206 697742034 148087911 750978759 103733806 566554997 780870754 940381563 803588261 664041213 723661847 52243955 703514531 81337657 24188768 689757867 941586175 943793512 953882020 907721720 210621083 159828635 862254110 35128915 251042004 993091440 163769090 647733367 994877696 667313812 773781000 607965234 947413305 627110568 575023903 232177196 533864165 387703244 465697134 19715614 705548145 283321520 982353486 939725993 994877696 650036494 886917295 971549242 331638088 456137963 177689820 996943901 736237188 262406489 553368896 288072509 882364001 296751278 843005594 916956968 304621545 338631458 40656291 836376015 591292508 475344103 80485362 932715562 462762217 307060809 941586175 249820698 942999703 674446970 910850066 310726569 600441802 831241130 293192373 311808379 931640418 667844649 888553258 287239117 39220584 531135820 760231333 624819674 751925989 531135820 884072178 459617527 145559297 602832600 211958450 764116955 10475035 403519778 857535330 587179274 982370833 5299425 190929591 767187616 115509283 103219970 703490607 735710261 712346140 20148474 315747769 213097363 675472009 975478549 967417280 983373150 696443558 781246194 290117216 940381563 838331644 787269565 750563611 396937914 344876805 35128915 814662325 616057762 295606018 426814174 637939784 130160246 548748527 592970093 425392410 349644605 455539394 597784477 915330573 128450928 595030753 689757867 278160655 424974082 465759767 162904272 979740237 686884353 31215478 352092606 115509283 602832600 117931902 376448548 38844979 300892929 598426014 290474734 568104980 896029805 661321016 708053570 518384931 955730659 67700412 505061211 553368896 727827821 563678994 7807006 24188768 48746678 610834602 179981178 117931902 531333917 533455280 938080232 407510599 396138845 992001870 433921335 270237875 338929165 715779797 160287690 850386354 250832323 401452903 604181881 142903358 167276070 278160655 40131409 539381059 780061015 502849508 443960759 183440003 485063015 941586175 939725993 457149478 162904272 31615284 360743135 464130920 451551269 396743027 63192647 465759767 715957434 425392410 874297853 484158080 573480571 577970627 47529701 982353486 817743547 433686203 983373150 765027062 535533605 115509283 891279504 630201811 750978759 511330454 47349911 922858580 452156279 776820092 136412292 214650974 764116955 334299650 983373150 268759041 361002681 351424753 939725993 804406873 342116147 456956861 307403622 126695727 249670598 931640418 15903366 757815664 607965234 721418370 456137963 420052652 543865019 765027062 788118407 50241607 953267424 954677909 539035187 41538784 249820698 750563611 485262404 656623172 983373150 303230482 632378665 637769046 953267424 740340897 889608806 591292508 288072509 687988023 119279869 814295984 889608806 632402794 376974209 926044257 882804101 407091770 448881532 1926282 299994808 595030753 36265302 408395896 668964848 228290502 388085842 420052652 327773233 581063820 866568903 874124920 983373150 78649514 686884353 485153920 604181881 662421393 338312978 261683638 338929165 601630030 882804101 148087911 443960759 567948101 78775552 683406807 767839638 292972503 495854210 719307635 310726569 918225489 24089615 882364001 984047482 602396426 981996224 266213579 667844649 679463383 543945175 326469359 616057762 138393155 943235508 465759767 463496366 630775839 40131409 177689820 829614460 412979540 808614164 827311105 694954883 53525809 646710523 152618584 121069546 375066210 462394151 215981255 186244437 533864165 698320352 490344724 852755974 554222239 739696834 926045944 342116147 80415088 754133002 982353486 179981178 484158080 488788762 656623172 708053570 638516505 983373150 966683628 764459345 80485362 767839638 765027062 997329398 736624310 172894131 910850066 307403622 190929591 159828635 645094664 831241130 735696627 506919968 630201811 56927881 947413305 570796148 743614603 955730659 492009082 509664709 242028021 750750593 938140278 884952974 126695727 1736950 498840912 288873549 230662076 78775552 709613471 488788762 760231333 33511708 979740237 317751260 289918211 607965234 854902633 806744033 617908997 317751260 462762217 859168292 835339516 718980624 888553258 588034909 10475035 572465104 888553258 636434256 938140278 109054120 433686203 63192647 387176309 715957434 93651148 138442062 877088774 37275245 271484655 647733367 745200166 299994808 485153920 579757115 806664207 624819674 247234349 577673184 366854683 2575238 31615284 215289803 237389399 983113723 876263470 520071928 736624310 514768035 545538425 526944836 570764323 850484222 518384931 573480571 425392410 360743135 696443558 592981604 581063820 526944836 305068796 964902255 424594759 32954995 953882020 962073361 683406807 604181881 882364001 888259120 109369069 262406489 148087911 688177128 660095934 515426984 511330454 36265302 308142020 762749463 502849508 38304068 878442641 494336936 304621545 174335822 795549341 577673184 269911067 733642252 115090276 196460706 331638088 390793037 551289217 559957428 251188854 962073361 512614298 241184545 153196022 390793037 407510599 891279504 966683628 152314280 966683628 938456692 103669472 285947848 858127225 907721720 674485068 636434256 132556595 789617647 53226850 887548285 40656291 758889515 884059813 993091440 540976336 207442482 322974842 121069546 700560235 209497607 6720560 910818482 695599688 55018341 40448245 33511708 598426014 526944836 696443558 942899938 830619816 592981604 945394518 458363994 215792516 121069546 809429735 296751278 546679009 711455867 125829791 641231120 492009082 859168292 774489082 984047482 145559297 251367294 542382913 960796073 38338132 635302209 270237875 702745028 140129038 686884353 203331888 196460706 884059813 943793512 696443558 51457589 626833449 697742034 533864165 338312978 53226850 140725908 539957336 687055288 174140940 590918818 678884863 146573202 425392410 597784477 776352608 24089615 215981255 737945381 958668995 754133002 840075867 298050322 926045944 732245352 462762217 388085842 586370291 688177128 503666498 792846009 542382913 179981178 770864525 739696834 456956861 994587826 512614298 887548285 430101007 33511708 660095934 451551269 602396426 792822959 630775839 390275103 23973553 526944836 177689820 267829614 455539394 812414090 93478833 931005739 533864165 77685914 211958450 689757867 251042004 938705675 103733806 397928982 931640418 106790696 152243323 359859765 947413305 476912096 186285312 98231977 992001870 955730659 462762217 733642252 387176309 112090095 851400664 729868696 74587532 371179314 860477160 557710104 215774690 388085842 572588387 570796148 950673785 990121035 704431513 852107700 679463383 495854210 982416551 397928982 918225489 851759377 274113481 625664180 548748527 193515742 322974842 699733109 41538784 1736950 38844979 314069534 484158080 52243955 736624310 437743643 804406873 527595027 735696627 285947848 264408147 307060809 80415088 850484222 133739154 5299425 136384659 476912096 424594759 636434256 444897967 604181881 247221668 475344103 275349681 433921335 396806189 981996224 396806189 325554372 862254110 916956968 743614603 29473993 619842427 829614460 271484655 858798711 546679009 812414090 407629453 247822207 830619816 63192647 851400664 638790258 444897967 246058339 687988023 771803404 64420967 970320952 712346140 128450928 101231409 522663253 860477160 179981178 663971090 330274784 6720560 694954883 117931902 117210451 572588387 179991869 152618584 993091440 49317804 739696834 681765297 179991869 133739154 152314280 268759041 737945381 843005594 37275245 103733806 324129364 753419354 338312978 138393155 953267424 152866011 721769014 760231333 159828635 944068218 702745028 910850066 650036494 567774282 264297813 559014304 509019925 746092812 315343704 577970627 78775552 946916156 607965234 956815883 623206361 211958450 60017144 489130642 983373150 913521589 237172271 471393875 746394036 827311105 708053570 553368896 771803404 778074990 852604705 581063820 288873549 638516505 686884353 162062292 137529801 259646582 299994808 656623172 556619020 407091770 458156391 50241607 931005739 525347105 627110568 884059813 815123402 770594967 2575238 765027062 78775552 407629453 38085353 255644658 165821462 748408317 620243558 553368896 38085353 481894295 81553943 512614298 687055288 387176309 566554997 417074904 496698204 780870754 616057762 39220584 324986193 591292508 371179314 966131311 852604705 53525809 426814174 572588387 996943901 917452919 932715562 857535330 726950461 685702028 317751260 920628541 288873549 542382913 686884353 979740237 382904427 746092812 993091440 78649514 641231120 464130920 632378665 840130613 382210484 751925989 953267424 857535330 324986193 982353486 767839638 47290536 475344103 956815883 2575238 31215478 338312978 751925989 601740259 994877696 754133002 971894015 686335042 502849508 53966525 877167702 382904427 540976336 817743547 154538466 733642252 275202504 761330904 966131311 664041213 38338132 485063015 152618584 307403622 457149478 298050322 407091770 475344103 94279561 330274784 780870754 174335822 567948101 789617647 843005594 535533605 567948101 193515742 151506993 325554372 298727845 172894131 885995802 852604705 547547687 715957434 56154381 963141978 424594759 498045048 305990981 509370562 768561257 311808379 802009078 889608806 174140940 349076114 47290536 522663253 900116034 960543625 705548145 835198840 846351340 698320352 259646582 526944836 554222239 829983432 626833449 128450928 298727845 737945381 722768643 647733367 74587532 172382592 675472009 516175014 254203892 962430008 41538784 393120342 431406787 907721720 215774690 4519262 603931167 698320352 592639233 349644605 736624310 531135820 407091770 300892929 740340897 314069534 601630030 907721720 600441802 678474526 598426014 624819674 640925332 507016471 931086800 443960759 465759767 299994808 681765297 193515742 712346140 264297813 322974842 215289803 271484655 49614749 153196022 77685914 540394532 114409323 257214051 137529801 163769090 526944836 328462418 488788762 688534928 174335822 274113481 806744033 854902633 134971740 546679009 137529801 623398671 667844649 738612855 376974209 814662325 55108095 142903358 859168292 703490607 835212499 351424753 249670598 712346140 787269565 101231409 53195413 60750487 314069534 270237875 52243955 242028021 55108095 681765297 207442482 407629453 137529801 765027062 175507355 946916156 638790258 80485362 963141978 152618584 5299425 754580366 250749017 269911067 838803091 326469359 388085842 754580366 559957428 145559297 943235508 43970470 698320352 971894015 353964006 215774690 548964093 103733806 835212499 545538425 527595027 681930584 732245352 770864525 831241130 926045944 697742034 915330573 874297853 932584021 975478549 911302173 647733367 878442641 38085353 125204206 353964006 618542887 568142039 465759767 248642173 765027062 566125822 305068796 750978759 331638088 739696834 367026304 190323279 74587532 721769014 489130642 509664709 412979540 496698204 77819776 994587826 82689280 207844781 247841801 841780337 219054502 702745028 193648030 250885472 946916156 628820972 773781000 573449906 760370490 522332929 687988023 607965234 303230482 399037712 874124920 478892468 451817798 252792947 637939784 496698204 896571061 800460688 721418370 264100442 982353486 885647994 511330454 912948600 152243323 307060809 663971090 300892929 284588557 836376015 80415088 388085842 705548145 940381563 128702236 287239117 80415088 788118407 628523361 485262404 138393155 209497607 650697444 437743643 211958450 942866882 47290536 882804101 209789164 592981604 809429735 232177196 637769046 175507355 768561257 250885472 271484655 172894131 816971086 588034909 575895835 744008188 292972503 342116147 583924389 543865019 704431513 577673184 484158080 582273012 129724737 757709512 128702236 509370562 13112382 359714925 60750487 726620654 884059813 511277493 387176309 327773233 757815664 907721720 553191189 174862116 53525809 786320493 681930584 462394151 304621545 676975489 455539394 713146141 268759041 767187616 760370490 852604705 738612855 397928982 640925332 106790696 214650974 604881661 242186770 963141978 946612927 463496366 835339516 727827821 770594967 571019028 885995802 145885851 765027062 859168292 67831588 786320493 296305836 35128915 211958450 638790258 660765062 37275245 882364001 106790696 771321738 246221518 886149363 808614164 425392410 885000402 269911067 944573659 304621545 426814174 296305836 632378665 904800517 24089615 807117750 494336936 553368896 272303478 484158080 37275245 551289217 646710523 633573519 983113723 387176309 787269565 944068218 172894131 788737791 1736950 488295044 424974082 53226850 285947848 38844979 190323279 152866011 170938835 289918211 360743135 953882020 207442482 929504680 697742034 1926282 841780337 709613471 727827821 425392410 195733178 641635851 969494113 945394518 330205547 918225489 572465104 954677909 79509313 554222239 81337657 896571061 55018341 920721173 49948206 954677909 459452716 567343883 441621000 80485362 252792947 553368896 376448548 851400664 964902255 23262398 35128915 745200166 400218902 296305836 831380531 42657625 588034909 43970470 251367294 177689820 498045048 42657625 889608806 133739154 488788762 123073176 195733178 956815883 885141769 306258744 817743547 857535330 853903669 101231409 934824360 481894295 162904272 696443558 588034909 115509283 136412292 562773407 943793512 525347105 463496366 598426014 732245352 851400664 932715562 93651148 571019028 705548145 451551269 152243323 509370562 773781000 727245017 31215478 792822959 261683638 36055646 289918211 829614460 407629453 511277493 215792516 854243215 306258744 252792947 298727845 60017144 251042004 394791153 831467447 60017144 885549757 613596687 931086800 667313812 181668423 79523589 23973553 708094860 915330573 311808379 60750487 831380531 746992914 285947848 904800517 526944836 140129038 721769014 662421393 990121035 244528344 396632533 913521589 852604705 502849508 885353274 465697134 557710104 918225489 699230813 840130613 426814174 304621545 509144872 783513992 896072909 363976852 349644605 140129038 193515742 242028021 841780337 203331888 829983432 876263470 369306500 151364594 249820698 401452903 925555858 328462418 782533040 21190596 155241439 208625324 726620654 581063820 885353274 465697134 215052415 103733806 739696834 923927991 984050047 846351340 38304068 563678994 299462930 888699423 664041213 940188502 485509833 306607837 288072509 302151126 940381563 915330573 394791153 148087911 994587826 958668995 397928982 82689280 19715614 679463383 850484222 251042004 531333917 228290502 697742034 488295044 543945175 215792516 390793037 201717402 678474526 656623172 49614749 140129038 539035187 266213579 237172271 640849273 979750308 927806038 175060805 966683628 918521256 332834875 451521521 843005594 968670974 814662325 264297813 954227928 607041944 638516505 262406489 430088921 496698204 13112382 140551765 396743027 496698204 1926282 554242697 950497221 506919968 210621083 721769014 947413305 485063015 722768643 397928982 103733806 983113723 745200166 160287690 138393155 764116955 685702028 47529701 145559297 437743643 77819776 349644605 270237875 548964093 138393155 307403622 955501918 376974209 295606018 496698204 527654256 539035187 429277230 196460706 674485068 296751278 915330573 250885472 778074990 887548285 982353486 266583970 548748527 509664709 485153920 47529701 603931167 870201182 738855203 507016471 247221668 711455867 367026304 829983432 804406873 225771141 126695727 842970782 94279561 858040709 511330454 971549242 702364434 650036494 499057158 764459345 247221668 155241439 83066601 559957428 685702028 459452716 816971086 36055646 490344724 727245017 563678994 674446970 125829791 955730659 299113502 1736950 843005594 978947655 489130642 568142039 601630030 721769014 650697444 81553943 117931902 964902255 396050095 795472528 637657473 290474734 688534928 996943901 632402794 251367294 683406807 735891721 214650974 98231977 626833449 134801439 888553258 109054120 242028021 314069534 637657473 792822959 862177563 629101079 562773407 708053570 444897967 992169078 32806834 353964006 128702236 944573659 39220584 650036494 293192373 993091440 545538425 668964848 931086800 451521521 142903358 81337657 753419354 349644605 896571061 698320352 572588387 851829959 94279561 889608806 827311105 925555858 228290502 874297853 123073176 250749017 129724737 174862116 99294732 187104147 109369069 443960759 304621545 452156279 42657625 522332929 854902633 140551765 598426014 390275103 512614298 795472528 637769046 836376015 854969794 359859765 53226850 902464469 945394518 932715562 975337465 68748842 456956861 699230813 128188331 2379379 375066210 514768035 230662076 907721720 765027062 767839638 760231333 727245017 709613471 307060809 101231409 629101079 760370490 778123726 438183310 267829614 626932919 683621666 581063820 267829614 911302173 250885472 296305836 213097363 465697134 456137963 590208882 443960759 855636134 443960759 215792516 616057762 938140278 155241439 98824830 509370562 38844979 786320493 484158080 520071928 93651148 526944836 6720560 722013570 551289217 792846009 736237188 727827821 878442641 485509833 904771946 382904427 131323888 687055288 274113481 737945381 626833449 787269565 430284321 546141085 776820092 817743547 809429735 249820698 619842427 241184545 214650974 2076768 174140940 573449906 306607837 560327459 153196022 694954883 422532994 838803091 703514531 296751278 757815664 688177128 538810384 662972501 846351340 38085353 247841801 616057762 387176309 306597948 595030753 965948435 162062292 112090095 407510599 459452716 518384931 812414090 750563611 195019158 512614298 506178629 695599688 993091440 481894295 299462930 228290502 81337657 538025980 722013570 738612855 940381563 931013644 981996224 882364001 327773233 719307635 781242822 47290536 272303478 618542887 509144872 259646582 334211676 425392410 311808379 893019475 160287690 570764323 55018341 47290536 678474526 266213579 910818482 499057158 853170454 162062292 506919968 186285312 24089615 955501918 378961655 806664207 334932282 478351140 715957434 743614603 664041213 927806038 888259120 396806189 841780337 586370291 543865019 806664207 726620654 575023903 165821462 808866527 854243215 900796599 758889515 190929591 678474526 431406787 307403622 703514531 566554997 533455280 546141085 910850066 965948435 854969794 15903366 915330573 735710261 586370291 134971740 533455280 787269565 778074990 443960759 295606018 51457589 527654256 248642173 129724737 650036494 653201202 152314280 562773407 282751746 703514531 163229392 489612980 885000402 770993588 727245017 778074990 458363994 896571061 746394036 874124920 313272965 152243323 32954995 851400664 918521256 540976336 394791153 975337465 969494113 533864165 307060809 361435434 264100442 123073176 246221518 259646582 683621666 424594759 676975489 936312210 38085353 407091770 32954995 799588075 283321520 525347105 546141085 126695727 232177196 929504680 288072509 553368896 708046990 931966477 662972501 334299650 630977998 38338132 334932282 80485362 152314280 268759041 744008188 723661847 587179274 261683638 722013570 162062292 636434256 850386354 937158597 24188768 715957434 145559297 963141978 247221668 817743547 630775839 285947848 858127225 387703244 275202504 792822959 31215478 324129364 760370490 554242697 877088774 170941326 6720560 36265302 540394532 656191811 923927991 607041944 950497221 433921335 931966477 934824360 695599688 388085842 992001870 970320952 685702028 36265302 660765062 573449906 540976336 485063015 247841801 942899938 425392410 698320352 703514531 175060805 396743027 968755777 586370291 592981604 344876805 808838846 900116034 400218902 269911067 463496366 358401766 506919968 771321738 137529801 83066601 963141978 586446680 264297813 542382913 145885851 830619816 635302209 408395896 112090095 502849508 155241439 290117216 296751278 432089082 98231977 874124920 215289803 824770361 207844781 715779797 708046990 464130920 656191811 401452903 981996224 247221668 337153847 354807942 689757867 991073887 923715439 854902633 925555858 802009078 443960759 133739154 165821462 877167702 252792947 125829791 727578179 645094664 960543625 305068796 155241439 358401766 52243955 802009078 573480571 623398671 382904427 585165457 607965234 776352608 114409323 827311105 858040709 152618584 174335822 396743027 215289803 626932919 713146141 465759767 592981604 539381059 172894131 575023903 630238886 13112382 535533605 298727845 174335822 876868627 775682536 145559297 516175014 274113481 850484222 481894295 674446970 209789164 887548285 527654256 459452716 850386354 4519262 586446680 387703244 456956861 729868696 575895835 789617647 1926282 810021050 774489082 330205547 305068796 993091440 264408147 167276070 583924389 112090095 911302173 925555858 709613471 328764419 125204206 509664709 271484655 241184545 42657625 288072509 244528344 88335614 748408317 248642173 931086800 426814174 242186770 165821462 532803593 437743643 740882715 136412292 904800517 990121035 969294148 629101079 838655651 376448548 857535330 121069546 736624310 972710252 286037808 140725908 683406807 697742034 917795074 992169078 302151126 842970782 687988023 607041944 254203892 852107700 637939784 511277493 900796599 689757867 292972503 781242822 430101007 831241130 663670886 955730659 77819776 187104147 827311105 726620654 196106606 969494113 539957336 907095826 74587532 664041213 128702236 155241439 237389399 237172271 448262245 885141769 284588557 568142039 966131311 771803404 162062292 143200457 595030753 27735709 23973553 835212499 257214051 35128915 824770361 963141978 838655651 396937914 128188331 338631458 633587956 835198840 931013644 938456692 885995802 624819674 950673785 527595027 695599688 965948435 877167702 509370562 816971086 632378665 186285312 223299794 422532994 478892468 539957336 186244437 795549341 592970093 626833449 315343704 203331888 995876182 768561257 315297566 969294148 459617527 645094664 1736950 152243323 708094860 237389399 140551765 637657473 506919968 688534928 572465104 550336314 241184545 181668423 721769014 214244685 573449906 763431295 225771141 920628541 721769014 195957995 858040709 214650974 852107700 967417280 15903366 361435434 68748842 975337465 851829959 74587532 559957428 133739154 788118407 926045944 1736950 93478833 506178629 838331644 195733178 949084393 887548285 344876805 995876182 942999703 390275103 738855203 962073361 462762217 476912096 38844979 780061015 98824830 36265302 367026304 19911869 305990981 662972501 49317804 137529801 438183310 778123726 64420967 618355033 585165457 38304068 846351340 249820698 99294732 60017144 407629453 767839638 77819776 604181881 814295984 656191811 284588557 964902255 929504680 182214511 860377902 853903669 696443558 288072509 944068218 175507355 527654256 338929165 430088921 522663253 40448245 687055288 860477160 68748842 918225489 829983432 513440742 338631458 675472009 884952974 760370490 37275245 32075030 437743643 13112382 186244437 203331888 726950461 242530683 288072509 950673785 896072909 617908997 620243558 538025980 953267424 23973553 427184372 490344724 195733178 920721173 962073361 610447918 554242697 28363157 835198840 577970627 539035187 824770361 718980624 712346140 571019028 278160655 708094860 215981255 426814174 275202504 792846009 982353486 49614749 586370291 106790696 299113502 338929165 743614603 866337119 332834875 896029805 876868627 79509313 230662076 962073361 186285312 246058339 876263470 196460706 753419354 53966525 465697134 522663253 183440003 152314280 601630030 48746678 920628541 114409323 681930584 887548285 518384931 866337119 687988023 970911538 679463383 494336936 946612927 506178629 432089082 711532060 688577702 405444604 73848009 53966525 548748527 232177196 887794841 808838846 266213579 815123402 546679009 29473993 572588387 451551269 499057158 732559957 885995802 979750308 215774690 371179314 888553258 459617527 843005594 112390393 275349681 737945381 770594967 788118407 577970627 983113723 433686203 713146141 681765297 527595027 683406807 441621000 354807942 514768035 920628541 496698204 982416551 247822207 247841801 938705675 237389399 993091440 949084393 613596687 660765062 505061211 917795074 522332929 103733806 762749463 637657473 48746678 681930584 996943901 681765297 560327459 270237875 667313812 499057158 247822207 776352608 964902255 876263470 324986193 152618584 485509833 645094664 676975489 630201811 376974209 251188854 942899938 53525809 620243558 296305836 225771141 136384659 47529701 885549757 87392830 242028021 209497607 215792516 522332929 152523810 531333917 630775839 15903366 857535330 708053570 396050095 47529701 331638088 330205547 874124920 932715562 126695727 630629857 681765297 592970093 738612855 451521521 284588557 806792339 481894295 656191811 795549341 330205547 577970627 49948206 586446680 635302209 904771946 739696834 125829791 247822207 290117216 249670598 125204206 925555858 893019475 506919968 64420967 114409323 562773407 812044550 626833449 458290565 321628921 48746678 746992914 190323279 67831588 835198840 843005594 475344103 562773407 174335822 603931167 808614164 610834602 266583970 922706719 459452716 946612927 388085842 660765062 539035187 215774690 163229392 575023903 776835194 264408147 708053570 876868627 806792339 982353486 613596687 289736829 699230813 896571061 207844781 917795074 186244437 514650194 735891721 559014304 970911538 830619816 582273012 911302173 516175014 286037808 247822207 877088774 711455867 923927991 795472528 82689280 735891721 878442641 37275245 806664207 874297853 750563611 841210236 691982506 359714925 98824830 852604705 857535330 975478549 598543708 174862116 776820092 778123726 945394518 739696834 462762217 225858850 678884863 283321520 745200166 697742034 234980621 662972501 975337465 721769014 893019475 984047482 31615284 213097363 577970627 758889515 746092812 556619020 234980621 972710252 640849273 463496366 242186770 174862116 326469359 190323279 128702236 616796881 304621545 146573202 292972503 604181881 548748527 437743643 72820570 668964848 432089082 543865019 444897967 376448548 275349681 77685914 295606018 53966525 575895835 506919968 429277230 543865019 678884863 853903669 941586175 566554997 586370291 656191811 850386354 972710252 797746066 582273012 921198791 613596687 67831588 353964006 862177563 531333917 550336314 38304068 633573519 656191811 915330573 689757867 244528344 290474734 786380583 535533605 60750487 77685914 814662325 923715439 757850417 485063015 927806038 119279869 858127225 488788762 293192373 964902255 587469038 792822959 93651148 485262404 275349681 963141978 585165457 338929165 407091770 443960759 465759767 396632533 540394532 789617647 24188768 722013570 719307635 87392830 128188331 327773233 67831588 841210236 275349681 137529801 77819776 607965234 344876805 732245352 738612855 458156391 602396426 452156279 617908997 831241130 954677909 732245352 954227928 577673184 656623172 782533040 955501918 592981604 128188331 758889515 920721173 526944836 721418370 960543625 982416551 601740259 722768643 2076768 824770361 282751746 303230482 218611070 681930584 237172271 242028021 968670974 401452903 636434256 366854683 330274784 242186770 889608806 292149520 283321520 29069209 220576148 540394532 112390393 247006479 835212499 888553258 885141769 305068796 464444922 438183310 246058339 954677909 187104147 296305836 249820698 904771946 338631458 451817798 81337657 302151126 433921335 921198791 119279869 32806834 155241439 328462418 334932282 242530683 623206361 219054502 831380531 577970627 780061015 709613471 641231120 153196022 556619020 103669472 449022331 946916156 458363994 74587532 334932282 545538425 749497174 99294732 882804101 126695727 514768035 23973553 33511708 257214051 182214511 292972503 757709512 153196022 943235508 502849508 246058339 67831588 330274784 911302173 413592826 769327548 247822207 703490607 616796881 270237875 792846009 117931902 195733178 550336314 993091440 982416551 459452716 32075030 55108095 814662325 287768226 740882715 404152565 938140278 20148474 292149520 708053570 183440003 850484222 80485362 800460688 156817178 237172271 485153920 732245352 585165457 588034909 768561257 682170984 43970470 248642173 926045944 969494113 570764323 711455867 947413305 396632533 563678994 182214511 242186770 47349911 559014304 907721720 208625324 464444922 177689820 404152565 922706719 424974082 862254110 112090095 32075030 298050322 681930584 315297566 215981255 378961655 64420967 109054120 518384931 831380531 471393875 498045048 712346140 623206361 103669472 511277493 539381059 984050047 123073176 282751746 401452903 134801439 955501918 393120342 274113481 396632533 835339516 744008188 296305836 179981178 760370490 155241439 678884863 451521521 211958450 458156391 456956861 989729323 438183310 496698204 946612927 689757867 32806834 560623000 196106606 662972501 513440742 607760956 264750083 727245017 540976336 324129364 208625324 835212499 950497221 496698204 15037608 727245017 103733806 49948206 703490607 352092606 407510599 995876182 162062292 708094860 888553258 601740259 126695727 650036494 687988023 98231977 806664207 282751746 603931167 781246194 780870754 55108095 926044257 4519262 433686203 776835194 244528344 33511708 177689820 850484222 753419354 983113723 242028021 458156391 457149478 396937914 480361743 887548285 289736829 509019925 286037808 623206361 196106606 369306500 28363157 682170984 886917295 443960759 215792516 623206361 840075867 687055288 140129038 978947655 67831588 788118407 774489082 996943901 546679009 458363994 803588261 299994808 56154381 841210236 940188502 256866745 765027062 592970093 710224239 121069546 770864525 969494113 660095934 36265302 946612927 539035187 354807942 711455867 936312210 781242822 683406807 138442062 284588557 397928982 799588075 223299794 931013644 264297813 215792516 975478549 738612855 49614749 50241607 808838846 926044257 955730659 513440742 727578179 760370490 15903366 214650974 719601437 478351140 485262404 776352608 910818482 553368896 620243558 433686203 79523589 956286779 516175014 808866527 960543625 417074904 962430008 292149520 81553943 152866011 735891721 738855203 195733178 904771946 554242697 770993588 172894131 911302173 778123726 201717402 902464469 750563611 170938835 308142020 353964006 548748527 446968233 152618584 266583970 321628921 399037712 801623766 250832323 135975430 396937914 633573519 52243955 583924389 831241130 152243323 2076768 982370833 579757115 637939784 650036494 328462418 163229392 827311105 885647994 854969794 338929165 142903358 831241130 921198791 607760956 292149520 732559957 806664207 800460688 736237188 996943901 152523810 516175014 931640418 485262404 640925332 960543625 562773407 390275103 944068218 397928982 660765062 55018341 877167702 172894131 808866527 56927881 685702028 842970782 407510599 806792339 748408317 841780337 99294732 682170984 757850417 688177128 396806189 975478549 600441802 390275103 275202504 767839638 133739154 78775552 115090276 451551269 623398671 476912096 539957336 399037712 630775839 290474734 685702028 543945175 991073887 860708299 1926282 543865019 140129038 918521256 967417280 79509313 274113481 566125822 538810384 48746678 123073176 376448548 874124920 650036494 257214051 882804101 465697134 912948600 546679009 337153847 799588075 193515742 885995802 509664709 431406787 662972501 884059813 912948600 1926282 790270533 28363157 629101079 969294148 103219970 542382913 722013570 938140278 515426984 247234349 749497174 799588075 715957434 214650974 788118407 770594967 213097363 98824830 405444604 489130642 232177196 38338132 136412292 15037608 733642252 148087911 737945381 884072178 456137963 202477791 817743547 275202504 369306500 202477791 223299794 931640418 812414090 80485362 757709512 562773407 698320352 247234349 485262404 966683628 251367294 900116034 248642173 885549757 923715439 125204206 708046990 132556595 66490779 31615284 2076768 918225489 55108095 269911067 60017144 480361743 989729323 10475035 721769014 53525809 810021050 295366548 546141085 591292508 15903366 975337465 590918818 954677909 789617647 814295984 970911538 99294732 509144872 950497221 426814174 751925989 509664709 32806834 781246194 153196022 604181881 904771946 708094860 751925989 393120342 247006479 965948435 591292508 267829614 251042004 727578179 481894295 852755974 603931167 136412292 298727845 793291205 289736829 112090095 183440003 250885472 954227928 795472528 242186770 852604705 944068218 509019925 788737791 836376015 926045944 668964848 626932919 792822959 788737791 735710261 770594967 287239117 208625324 174335822 101231409 601740259 799588075 970320952 808866527 713146141 862177563 134971740 13112382 5299425 975337465 498045048 261683638 400218902 152243323 68748842 774489082 342116147 38844979 764116955 926044257 942899938 586370291 885141769 457149478 143200457 244528344 624819674 82689280 167276070 145559297 288072509 681765297 220576148 809429735 349644605 807117750 962430008 862254110 165821462 41538784 387703244 174140940 543865019 874124920 400218902 109369069 376448548 967417280 808614164 911302173 789617647 153196022 776835194 575023903 592970093 575023903 559957428 831467447 1736950 292149520 317751260 193648030 36265302 637657473 437743643 610834602 109054120 151364594 754133002 723661847 215289803 67831588 932715562 917452919 632378665 884059813 285947848 600441802 918521256 807117750 306597948 136384659 955730659 407629453 674446970 854969794 607965234 82689280 838803091 306258744 557710104 575895835 1736950 721418370 376974209 687988023 979750308 860477160 613596687 991073887 155241439 237389399 726950461 931966477 449022331 969294148 155241439 550336314 399037712 115090276 405444604 719307635 449022331 966683628 88335614 40656291 7807006 47290536 187104147 638516505 589760538 740882715 506178629 539957336 134801439 271484655 806744033 152866011 795472528 929504680 573449906 351424753 683621666 295366548 382904427 824770361 311808379 80415088 854243215 904771946 160287690 610834602 572465104 344876805 63192647 433686203 509370562 570764323 885647994 688534928 866337119 583924389 851829959 295606018 174862116 73848009 767839638 736237188 2379379 653201202 566554997 183440003 767187616 344876805 808614164 971894015 463496366 921198791 650036494 770594967 859168292 814662325 885000402 740882715 559957428 838655651 815123402 430284321 225858850 98287438 962430008 512614298 885647994 641635851 299994808 886149363 106790696 465697134 885000402 950673785 776835194 936312210 1736950 586446680 29473993 911302173 371179314 949084393 143200457 949084393 520071928 932584021 931005739 814295984 159828635 736624310 689757867 850386354 664041213 23262398 167276070 838331644 390793037 455539394 250749017 904800517 505061211 255644658 451551269 132556595 165821462 799588075 5299425 136384659 448881532 211958450 287768226 888699423 78775552 396050095 506178629 685702028 607965234 489612980 207844781 299113502 264297813 278160655 887548285 433686203 991615550 74587532 285947848 630201811 494336936 64420967 140725908 304621545 459452716 748408317 338631458 992001870 628820972 991073887 568142039 586446680 19715614 514650194 225858850 471393875 535533605 195957995 327773233 757815664 726950461 292696118 426814174 917452919 226492467 28363157 136412292 299113502 2379379 654830523 597784477 539957336 165821462 950673785 870201182 396806189 944573659 604968568 872434540 816971086 205387898 513440742 568142039 408395896 338312978 838331644 854243215 433686203 790270533 862254110 119279869 650990283 38304068 322974842 146573202 932584021 10369081 931013644 592981604 540394532 616796881 94279561 478892468 626932919 866337119 117931902 726620654 152523810 698320352 554222239 10369081 577970627 749497174 101231409 140551765 23262398 175060805 407510599 841210236 39220584 246058339 860477160 907721720 804406873 378961655 966683628 112090095 949084393 251367294 753419354 831241130 41538784 300892929 885549757 938456692 769327548 112090095 429277230 390275103 455539394 394791153 255644658 810021050 214650974 506178629 910850066 682170984 723661847 311808379 28363157 162904272 234980621 426814174 375066210 209497607 292696118 981996224 877088774 451551269 542382913 613596687 660095934 786320493 32806834 20148474 99294732 566125822 492009082 838803091 835339516 327773233 10475035 674446970 715779797 458156391 40656291 573480571 885995802 338312978 284588557 246058339 954227928 543945175 115090276 167276070 975337465 328764419 308142020 767839638 945394518 997329398 570764323 458363994 433686203 68748842 969294148 968755777 540976336 860708299 128188331 376974209 242186770 858798711 938140278 535533605 290117216 433921335 74587532 560327459 270237875 256866745 438183310 246221518 681765297 252962990 586446680 981996224 855636134 647733367 923927991 288072509 855636134 68748842 971894015 806744033 152243323 382904427 586446680 764459345 946916156 186244437 942999703 852107700 816971086 250832323 877167702 237172271 271484655 174862116 488295044 749497174 154538466 369306500 862177563 19911869 688534928 543865019 101231409 771803404 432089082 733642252 587469038 256866745 21190596 682170984 703490607 635302209 992001870 989729323 533864165 713146141 396743027 737945381 650990283 237172271 525347105 790270533 921198791 630629857 618542887 554242697 98287438 167276070 190929591 112390393 854902633 459452716 691982506 387703244 109369069 209497607 131323888 140725908 244528344 628820972 991073887 361002681 38338132 462394151 444897967 266583970 215981255 509370562 289736829 579757115 577970627 515426984 527654256 937158597 540394532 232177196 396050095 172894131 780870754 175507355 80485362 902464469 581063820 737945381 363976852 300892929 771321738 175060805 163769090 514768035 771321738 806744033 464130920 137529801 929504680 33511708 195957995 907095826 754580366 607760956 860477160 247822207 465697134 767187616 266213579 989729323 603931167 604881661 946916156 314069534 913521589 960796073 39220584 559957428 581063820 858040709 663971090 790270533 489130642 55018341 367026304 128450928 322974842 910818482 824770361 806792339 464130920 891279504 72820570 641231120 626932919 159828635 688577702 1736950 683406807 531333917 893019475 172894131 67700412 992169078 215774690 806744033 838331644 531135820 201717402 225858850 527654256 137529801 430101007 713146141 860377902 699230813 210621083 793291205 363976852 870201182 251188854 459452716 877167702 225771141 93478833 942899938 351424753 68748842 797746066 443960759 56154381 831241130 462762217 155241439 465759767 371179314 884059813 369306500 136384659 283321520 638516505 494336936 945394518 310726569 601630030 394791153 736237188 494336936 77819776 522663253 425392410 668964848 230662076 55018341 142903358 106790696 181668423 175060805 920628541 836376015 586446680 573480571 80415088 262406489 128702236 225858850 511330454 51457589 851400664 404152565 855636134 960543625 705304879 918521256 53525809 266583970 125204206 145885851 751925989 668964848 683406807 942866882 683406807 749497174 663670886 719601437 49317804 588034909 687988023 727827821 922858580 38085353 835339516 971549242 691982506 789617647 637657473 413592826 430284321 831241130 740882715 829614460 864016134 47349911 918225489 758889515 721418370 47529701 969294148 835212499 955501918 678474526 455539394 623206361 705304879 186244437 700560235 138442062 465697134 726620654 888699423 77685914 412979540 140725908 38844979 51457589 306607837 984050047 270237875 592981604 710224239 719601437 358401766 636434256 586446680 522332929 361435434 623206361 303230482 782533040 82689280 248642173 31215478 7807006 15037608 806792339 803588261 582273012 80485362 232177196 830619816 874297853 550336314 931005739 242186770 853170454 604968568 283321520 675472009 902464469 966683628 604881661 837690635 400178823 28363157 246058339 138393155 560623000 296305836 767839638 746092812 674446970 485153920 285947848 553368896 943793512 545538425 476912096 230662076 852755974 492009082 248642173 660765062 851829959 675472009 560327459 546679009 24089615 632402794 315297566 49317804 647733367 32075030 458156391 533864165 938456692 255644658 159828635 417074904 352092606 53226850 836376015 637657473 215289803 601630030 170941326 42657625 338312978 257214051 376448548 884059813 764459345 533455280 667313812 128702236 808838846 465759767 60017144 738855203 938705675 877088774 396632533 230662076 836376015 193648030 650036494 60750487 668964848 430088921 459617527 533455280 165821462 831467447 52243955 931640418 310726569 674485068 4519262 396050095 960543625 991073887 324986193 550336314 851759377 637657473 750978759 581063820 190323279 637657473 459617527 703514531 737945381 610834602 938456692 425392410 996943901 269911067 668964848 746092812 162904272 430284321 613596687 840130613 424974082 675472009 264297813 975337465 589760538 685702028 53195413 678884863 964902255 215981255 940381563 660095934 448881532 774489082 979750308 921198791 852107700 234980621 812414090 563678994 969494113 190979155 737945381 132556595 590918818 932584021 387703244 975337465 56927881 101231409 735891721 242028021 972710252 275202504 376448548 142903358 938705675 183440003 896029805 293192373 934824360 757815664 627110568 598426014 324986193 67700412 749497174 926044257 81337657 290117216 448881532 533455280 943235508 994877696 965948435 954227928 916956968 478351140 792822959 525347105 218611070 38844979 597784477 703490607 376448548 268759041 860708299 290117216 56927881 721418370 172894131 31615284 223299794 462762217 252792947 367026304 498045048 723661847 19715614 703514531 195019158 918225489 630977998 953882020 506919968 135975430 718980624 982416551 205387898 190929591 996943901 551289217 757709512 550336314 943235508 650990283 635302209 886149363 771803404 363976852 581831913 931086800 767839638 38338132 267829614 50241607 891279504 687988023 382904427 947413305 910818482 610834602 726950461 746092812 571019028 152618584 636434256 465697134 713146141 56154381 32954995 715779797 299994808 237389399 858040709 956286779 55018341 992001870 560623000 255644658 299462930 103733806 992169078 735696627 361002681 274113481 808838846 675472009 53966525 887794841 505061211 954677909 592981604 94279561 781242822 661321016 942866882 710224239 446968233 773781000 287768226 626932919 175507355 366854683 247822207 927806038 808614164 947413305 602832600 64420967 607041944 780870754 726620654 10475035 726620654 31215478 396138845 481894295 694954883 738855203 338312978 982353486 378961655 814295984 1736950 247221668 602832600 950497221 29473993 42657625 962430008 719307635 1736950 488295044 800460688 562773407 808614164 208625324 393120342 922858580 247822207 234980621 750750593 814662325 620243558 322974842 78775552 770864525 267829614 854969794 556619020 602396426 925555858 915330573 342116147 633587956 128450928 757815664 313272965 837690635 4519262 626932919 49614749 662421393 327773233 688577702 495854210 103669472 757709512 838331644 708046990 630775839 68748842 242186770 509019925 261683638 420636144 632402794 841780337 638516505 635302209 270237875 531135820 743614603 531135820 140129038 496698204 765027062 2575238 492009082 902464469 299113502 88335614 275349681 726620654 215792516 361002681 375066210 315297566 982370833 689757867 332834875 571019028 660095934 613596687 290117216 19715614 128188331 334211676 115509283 667844649 591292508 103219970 950673785 325554372 687988023 77685914 904800517 782533040 874124920 252792947 926044257 991615550 31215478 831241130 760370490 782533040 80485362 638790258 401452903 237172271 709613471 287239117 94279561 53966525 743614603 647733367 900116034 494336936 513440742 607965234 955501918 223299794 431406787 872434540 303230482 835198840 663971090 995876182 422532994 15903366 691982506 215052415 268759041 943235508 514650194 604881661 884072178 767187616 274113481 456137963 215774690 121069546 936312210 749497174 757850417 186244437 41538784 835198840 202477791 604881661 783513992 337153847 433686203 400218902 244528344 175060805 850386354 971549242 358401766 63192647 290117216 172894131 862177563 396138845 511330454 587179274 465697134 252962990 719307635 812414090 488295044 38304068 540976336 511277493 640849273 290474734 967417280 607041944 332834875 387703244 109369069 485509833 953882020 247822207 740882715 330274784 950497221 155241439 637939784 246058339 177689820 143200457 966683628 568142039 465759767 63192647 982370833 964902255 760231333 143200457 840075867 232177196 115090276 968755777 654830523 806792339 186285312 175060805 860477160 137529801 610834602 678474526 786380583 556619020 115509283 359714925 640925332 636434256 375066210 40131409 67700412 172894131 140129038 968755777 992001870 942866882 953882020 252962990 230662076 994587826 24188768 853903669 228290502 282751746 601630030 887548285 630201811 993091440 681930584 87392830 950673785 378961655 685702028 403519778 448262245 47529701 215774690 140725908 407629453 114409323 652018277 668964848 748408317 627110568 640925332 699733109 396806189 787269565 133739154 990121035 432089082 225858850 514650194 213097363 211958450 560623000 770864525 588034909 900796599 179981178 412979540 382904427 351424753 397928982 913521589 776835194 888553258 762749463 911302173 264297813 152866011 29473993 801623766 360743135 886917295 968755777 230662076 896029805 261683638 190323279 259646582 732245352 675472009 667313812 80485362 727578179 705304879 404152565 696443558 404152565 938140278 330205547 806664207 727578179 129724737 334932282 958668995 727245017 712346140 112090095 967417280 165821462 941586175 1736950 125829791 943793512 931966477 882804101 910850066 940381563 480361743 746394036 193648030 715957434 929504680 98231977 1926282 205387898 929504680 458156391 303230482 172894131 575895835 854243215 502849508 557710104 518384931 550322314 259646582 299462930 533455280 735710261 705304879 78775552 583924389 566125822 877167702 955730659 140129038 498045048 688534928 5299425 10475035 396937914 626932919 997329398 650990283 163229392 923927991 719601437 592639233 838803091 640849273 787269565 862254110 938456692 424594759 276676140 679463383 589760538 117931902 247822207 103669472 404152565 125829791 781242822 547547687 573449906 799588075 252962990 736624310 650036494 358401766 400178823 862254110 114409323 132556595 635302209 846351340 190323279 626833449 872434540 887794841 715957434 780870754 296751278 422532994 306597948 850386354 310726569 514650194 522332929 678884863 262406489 295606018 56927881 278160655 112090095 695599688 699733109 551289217 746394036 512614298 337153847 40448245 388085842 103733806 838803091 115090276 252962990 757815664 557710104 358401766 711532060 264750083 758889515 278160655 968755777 261683638 676975489 219054502 382210484 93651148 509664709 183440003 761330904 215981255 369306500 289918211 722013570 448262245 923715439 632402794 400178823 954227928 47349911 489130642 715957434 152866011 276676140 533864165 758889515 190979155 889608806 888553258 143200457 640849273 288873549 661321016 641231120 183440003 854243215 396050095 140551765 305068796 590918818 430284321 726620654 322974842 902464469 490344724 187104147 704431513 698320352 195957995 810021050 637939784 196460706 663971090 400178823 98287438 964902255 32075030 485509833 539381059 413592826 186285312 140551765 577970627 995876182 315747769 2379379 306607837 256866745 15037608 506919968 321628921 376448548 953882020 250749017 305990981 744008188 284588557 47529701 769327548 829983432 662421393 405444604 457149478 299462930 633573519 960543625 992001870 478892468 788737791 215289803 208625324 400178823 432089082 620243558 93478833 582273012 344620844 60017144 299113502 475344103 129724737 324129364 838655651 352092606 661321016 38085353 278160655 143200457 740882715 515426984 931086800 686884353 290117216 509019925 396050095 458363994 407091770 711532060 712346140 443960759 203331888 287239117 617908997 195733178 126695727 287239117 663670886 764459345 788737791 683621666 292696118 338929165 269911067 396632533 315747769 527595027 242028021 975478549 551289217 983373150 247006479 887548285 215774690 607041944 927806038 923715439 412979540 560327459 259646582 793291205 770864525 831380531 675472009 668964848 242186770 727827821 401452903 172894131 499057158 53195413 860477160 170941326 745200166 68748842 632402794 300892929 74587532 103219970 956286779 984050047 650990283 981996224 931086800 969494113 674485068 535533605 887794841 143200457 251188854 300892929 626932919 81553943 567948101 996943901 885549757 727578179 478351140 667313812 783513992 628820972 289736829 145885851 840130613 601740259 966683628 715957434 567343883 687055288 152243323 623206361 900116034 306597948 827311105 689757867 457149478 20148474 196106606 699230813 966131311 170941326 527654256 68748842 641635851 858040709 511330454 266583970 824770361 793291205 768561257 396632533 568104980 522663253 489612980 36265302 806664207 342116147 662421393 872434540 518384931 213097363 72820570 175060805 922706719 152314280 387176309 396632533 709613471 764459345 783513992 509664709 949084393 851829959 748408317 815123402 650990283 174335822 877088774 475344103 42657625 831380531 49317804 494336936 910850066 179991869 637939784 592970093 186285312 983113723 103733806 300892929 38844979 33511708 660765062 771803404 846351340 787269565 407629453 433921335 637657473 851759377 696443558 55108095 152523810 496698204 80415088 719601437 705304879 359714925 860377902 787269565 396806189 535533605 803588261 727827821 286037808 885647994 424594759 851829959 93478833 715957434 942999703 98231977 862254110 788118407 275202504 506178629 687988023 560327459 846351340 778123726 874124920 789617647 67700412 114409323 539381059 209497607 538810384 858040709 138393155 664041213 484158080 403519778 860477160 732559957 753419354 313272965 545538425 852604705 74587532 509370562 975337465 815123402 630201811 588034909 41538784 250832323 247234349 36055646 98824830 806792339 407510599 882804101 237389399 55108095 931640418 616796881 738612855 635302209 361435434 656191811 696443558 851759377 478351140 979750308 151364594 668964848 152523810 965948435 598543708 953267424 854969794 727827821 351424753 145885851 931640418 566125822 129724737 943235508 838331644 246221518 538025980 620243558 799588075 252792947 326469359 616796881 979740237 256866745 954227928 831241130 123073176 711532060 660095934 163229392 429277230 53966525 637939784 662972501 650697444 668964848 38844979 134971740 681930584 300892929 511330454 531333917 261683638 984050047 502849508 800460688 705304879 520071928 210621083 485063015 183440003 60017144 877088774 290474734 778074990 478892468 43970470 272303478 275349681 352092606 570764323 369306500 926045944 298050322 917452919 754133002 864016134 509370562 626833449 182214511 893019475 697742034 354807942 852755974 604968568 994587826 801623766 464444922 268759041 938456692 773781000 287239117 554222239 179991869 433686203 932715562 478351140 390793037 485153920 771803404 145559297 117210451 242530683 246058339 396806189 51457589 82689280 874297853 768561257 934824360 992001870 938705675 548748527 616057762 922706719 507016471 492009082 764459345 808866527 174335822 344620844 884952974 242186770 296751278 214650974 624819674 154538466 252962990 533864165 464444922 151364594 264100442 311613451 267829614 126695727 746394036 545538425 968755777 334299650 713146141 623398671 49948206 292149520 267829614 208625324 858040709 567948101 514768035 488295044 746394036 603931167 353964006 177689820 566125822 444897967 352092606 946612927 925555858 969294148 106790696 41538784 604181881 715779797 607965234 128188331 664041213 67700412 560327459 950673785 735710261 932584021 686884353 499057158 872434540 654830523 463496366 662421393 215289803 597206610 47349911 247234349 311808379 502849508 806744033 946612927 515426984 855636134 334211676 488295044 907721720 56154381 808614164 538025980 337153847 50241607 408032939 41538784 907095826 885549757 925555858 98824830 328764419 396050095 190323279 214244685 604181881 15037608 683621666 660095934 226492467 954227928 964902255 626932919 136412292 896571061 475344103 83066601 306597948 876263470 795472528 722768643 359859765 214650974 918521256 969294148 413592826 292972503 767187616 567774282 506178629 174140940 448881532 101231409 874297853 950673785 850484222 32075030 990121035 736237188 360743135 53525809 686884353 956815883 310726569 193648030 851829959 39220584 749497174 904800517 592981604 548748527 739696834 554222239 885647994 444897967 514768035 407629453 328764419 247234349 984050047 835339516 338929165 462762217 53966525 306607837 934824360 292972503 382210484 563678994 554242697 351424753 138442062 887794841 205387898 887794841 713146141 840130613 686884353 117931902 359714925 768561257 494336936 548748527 727827821 687988023 992169078 485153920 764116955 289736829 708094860 407091770 592970093 633587956 969494113 503666498 630629857 660095934 992169078 712346140 35128915 626833449 782533040 38844979 727578179 941586175 160287690 38844979 984047482 637939784 509144872 193648030 81553943 271484655 888259120 550336314 182214511 326469359 546141085 931966477 520071928 80415088 311808379 921198791 866568903 152618584 459617527 923927991 780061015 715779797 215052415 251188854 762749463 512614298 812044550 795549341 938456692 971894015 51457589 814295984 390793037 190979155 708053570 982370833 328764419 264750083 795472528 293192373 77685914 208625324 943793512 163769090 607760956 858127225 910818482 681930584 560623000 268759041 174335822 152866011 916956968 123073176 7807006 125829791 207844781 29069209 984050047 230662076 937158597 575023903 114409323 567343883 134971740 471393875 63192647 751925989 325554372 663971090 786320493 954677909 732559957 888699423 424974082 431406787 287768226 202477791 667844649 93478833 140551765 72820570 396632533 308142020 37275245 10475035 509019925 685702028 870201182 481894295 810021050 949084393 324129364 41538784 179991869 412979540 388085842 687988023 88335614 723661847 249820698 917452919 955730659 136384659 630238886 992001870 404152565 196106606 831241130 803588261 698320352 154538466 589760538 862254110 965948435 132556595 223299794 13112382 81337657 681765297 174862116 125204206 737945381 123073176 250832323 255644658 628820972 478351140 15903366 60750487 960543625 43970470 98231977 215792516 758889515 261683638 505061211 53525809 638790258 151506993 464444922 632402794 829614460 396050095 509370562 193648030 667844649 305990981 934824360 702364434 349644605 982370833 764116955 719307635 965948435 80485362 130160246 74587532 315343704 305990981 616796881 723661847 963141978 700560235 896029805 215977916 262406489 876868627 992169078 80415088 246221518 428572243 618355033 306258744 625664180 950497221 250749017 746092812 15903366 877088774 330274784 518384931 560623000 29069209 146573202 545538425 870201182 547547687 174862116 456956861 112390393 284588557 520071928 237389399 838803091 358401766 152314280 275202504 475344103 591292508 112390393 722768643 943793512 598426014 556619020 163769090 349076114 598426014 361002681 344620844 458363994 444897967 910818482 77819776 531135820 688534928 815123402 577970627 762749463 546679009 850484222 840130613 566554997 585165457 940381563 637769046 170938835 302151126 620243558 152243323 49948206 803588261 193515742 956286779 676975489 181668423 226492467 567343883 29473993 308142020 854243215 264408147 170938835 700560235 81337657 947413305 451551269 945394518 601740259 626833449 853170454 663971090 159828635 840075867 884952974 219054502 300892929 700560235 573480571 38844979 604181881 745200166 992169078 638516505 19911869 67700412 939725993 363976852 726950461 801623766 170941326 214244685 283321520 23973553 424974082 268759041 196460706 219054502 812414090 769327548 647733367 433686203 4519262 640849273 182214511 896571061 975478549 98824830 767187616 533455280 47349911 315747769 170938835 538810384 146573202 328462418 250832323 850386354 249670598 688534928 531333917 103733806 376974209 268759041 795472528 539957336 625664180 328462418 249670598 151364594 526944836 42657625 36055646 244528344 298050322 583924389 792822959 991073887 546141085 911302173 515426984 539381059 527595027 896571061 808838846 857535330 505061211 610447918 590918818 946612927 647733367 824770361 983373150 21190596 160287690 407510599 29473993 481894295 506178629 538025980 656191811 738612855 290474734 31215478 835198840 954677909 371179314 551289217 979750308 251188854 507016471 148087911 572465104 21190596 687055288 942999703 394791153 502849508 449022331 662421393 970320952 590208882 311808379 292696118 4519262 209789164 121069546 922858580 829983432 6720560 106790696 709613471 47529701 806664207 390275103 723661847 969494113 840130613 607965234 430101007 996943901 242186770 205387898 177689820 408032939 778074990 708046990 485153920 246058339 465759767 352092606 966683628 170941326 40448245 682170984 662421393 727245017 738855203 589760538 210621083 526944836 67700412 641231120 709613471 182214511 874124920 620243558 93478833 288072509 244528344 942899938 975337465 550322314 700560235 872434540 274113481 539035187 367026304 629101079 152523810 179991869 900796599 196460706 855636134 618355033 738855203 997329398 512614298 817743547 67700412 300892929 921198791 588034909 630201811 577673184 408395896 641231120 230662076 250885472 830619816 451551269 712346140 288873549 932584021 732559957 797746066 934824360 23262398 511277493 358401766 613596687 259646582 557710104 206036522 376448548 242028021 112090095 401452903 311808379 387176309 780061015 769327548 727578179 551289217 186244437 969294148 983113723 736237188 15903366 802009078 787269565 691982506 376448548 80415088 781246194 363976852 632378665 275202504 342116147 31215478 993091440 904800517 456137963 82689280 852107700 351424753 47529701 563678994 505061211 688577702 232177196 247841801 378961655 610447918 789617647 700560235 511277493 153196022 462394151 917795074 993091440 662421393 887548285 874124920 559957428 885995802 885647994 570764323 560327459 538810384 627110568 786380583 699230813 559014304 337153847 407629453 327773233 407510599 507016471 284588557 330274784 103669472 885647994 471393875 624819674 660765062 424974082 757850417 128450928 735696627 835212499 838655651 187104147 949084393 630629857 115509283 175507355 255644658 382904427 746992914 858798711 931966477 334932282 306607837 2076768 748408317 737945381 74587532 969494113 885549757 53966525 214650974 48746678 64420967 727245017 80485362 916956968 457149478 718980624 538025980 962073361 760231333 77685914 103669472 361002681 481894295 836376015 835339516 420636144 938140278 543865019 251042004 885141769 305990981 841210236 760370490 749497174 855636134 522332929 83066601 850484222 542382913 559957428 444897967 330274784 471393875 446968233 956286779 485262404 163769090 496698204 332834875 55018341 545538425 789617647 679463383 635302209 101231409 315297566 917795074 852107700 488295044 858798711 533864165 697742034 275202504 338929165 532803593 505061211 502849508 223299794 215792516 664041213 40448245 81553943 809429735 462394151 152243323 761330904 98824830 630629857 703490607 531135820 514650194 577673184 302151126 246058339 539957336 955730659 290117216 424974082 485153920 353964006 567774282 641231120 877167702 38085353 39220584 697742034 261683638 902464469 328462418 51457589 306607837 732559957 757850417 369306500 626833449 307403622 610834602 262406489 215981255 33511708 719307635 175060805 247006479 394791153 949084393 739696834 98824830 964902255 886917295 163229392 804406873 282751746 567774282 514768035 193648030 246221518 922858580 971549242 650697444 196460706 40656291 719601437 358401766 990121035 513440742 733642252 940188502 656191811 129724737 195733178 264408147 943235508 971894015 668964848 915330573 678474526 770864525 334932282 481894295 885353274 949084393 458290565 292972503 19911869 215774690 196460706 244528344 2076768 53525809 296751278 745200166 978947655 21190596 388085842 681765297 79523589 640849273 943793512 430088921 682170984 268759041 858798711 991073887 19715614 115090276 98231977 331638088 618355033 375066210 390275103 444897967 968670974 23973553 359859765 292972503 990121035 563678994 925555858 956815883 315297566 816971086 749497174 626932919 288873549 922858580 285947848 991073887 887548285 585165457 349644605 56154381 1736950 738612855 689757867 626833449 478892468 831467447 186244437 420052652 938705675 600441802 739696834 228290502 48746678 598426014 515426984 885549757 300892929 322974842 984050047 80415088 983113723 719307635 494336936 745200166 829614460 80485362 246221518 562773407 81553943 954677909 979750308 408395896 128450928 920721173 68748842 900116034 451521521 331638088 726950461 592639233 452156279 53226850 931005739 420052652 462394151 663670886 19911869 950497221 860708299 687988023 955730659 840130613 47349911 910850066 554242697 289736829 2076768 681930584 382904427 306607837 776835194 244528344 220576148 538810384 887548285 15037608 694954883 956815883 902464469 610447918 190323279 846351340 49948206 438183310 970911538 950497221 396138845 247234349 963141978 878442641 7807006 776352608 983373150 41538784 327773233 24188768 32954995 750563611 330205547 956286779 979750308 942999703 786320493 23973553 382904427 128702236 778123726 67700412 522663253 688577702 32954995 778074990 577673184 702364434 427184372 32806834 858040709 719307635 393120342 264750083 250885472 653201202 788118407 257214051 306597948 757850417 315297566 757850417 962430008 770864525 390275103 915330573 808614164 539381059 456137963 259646582 572465104 982370833 543945175 429277230 853903669 131323888 400218902 740882715 888259120 809429735 361002681 242530683 636434256 334299650 630629857 354807942 625664180 941586175 511277493 407091770 266583970 525347105 570796148 837690635 852755974 681765297 713146141 457149478 955730659 428572243 882804101 140129038 378961655 117931902 592981604 32075030 638790258 663670886 884952974 721418370 907095826 136384659 522332929 567948101 808614164 299113502 616057762 992001870 850484222 773781000 264100442 567343883 137529801 151506993 10369081 358401766 964902255 39220584 550322314 626833449 53195413 331638088 79509313 738855203 509019925 73848009 689757867 966683628 359859765 630201811 806792339 115509283 53195413 900116034 859168292 142903358 931005739 308142020 812044550 306607837 53966525 838655651 699733109 955501918 215289803 481894295 910818482 396806189 252792947 125829791 939725993 595030753 420636144 590208882 885141769 768561257 732559957 855636134 754133002 242186770 459617527 874124920 207844781 162062292 167276070 904771946 215289803 618542887 888259120 922706719 68748842 432089082 307403622 214244685 266583970 268759041 981996224 331638088 762749463 471393875 972710252 583924389 963141978 67700412 744008188 186285312 138442062 572588387 806744033 581063820 420636144 289736829 984050047 264408147 327773233 29069209 353964006 572588387 443960759 862177563 79523589 138393155 535533605 489130642 790270533 918225489 79523589 237389399 159828635 103669472 601740259 21190596 420636144 154538466 475344103 966131311 47529701 551289217 353964006 610447918 729868696 802009078 400218902 56154381 324986193 715779797 134801439 407091770 49948206 910850066 4519262 53525809 187104147 590208882 761330904 298727845 226492467 448262245 939725993 163769090 298050322 533864165 134801439 296305836 155241439 432089082 79509313 567343883 535533605 24188768 35128915 703514531 943235508 481894295 330274784 971894015 394791153 567343883 306597948 448262245 616796881 862177563 737945381 967417280 831380531 358401766 426814174 797746066 581831913 546679009 382904427 660095934 792822959 956815883 646710523 702364434 788118407 809429735 464444922 630775839 960543625 361435434 604881661 366854683 715957434 885995802 266583970 31215478 446968233 931640418 179981178 885549757 136412292 202477791 109054120 917795074 771803404 292149520 539035187 586446680 35128915 830619816 623206361 407629453 458156391 942999703 241184545 911302173 641231120 41538784 63192647 142903358 266583970 715779797 835212499 592639233 267829614 645094664 570796148 407629453 237172271 567948101 943235508 931086800 650036494 638516505 7807006 407091770 581831913 888553258 806792339 546679009 300892929 854902633 506919968 862177563 51457589 322974842 762749463 489130642 916956968 64420967 788118407 904800517 581831913 425392410 623206361 814662325 87392830 123073176 299462930 304621545 757709512 190979155 140551765 289736829 390793037 770864525 220576148 311613451 378961655 757850417 708046990 292696118 307060809 208625324 771803404 304621545 175507355 715779797 866568903 181668423 53966525 83066601 2379379 255644658 543945175 602396426 187104147 322974842 963141978 638516505 884952974 209789164 781246194 290117216 711455867 940188502 940381563 553191189 767187616 637939784 451521521 553191189 313272965 532803593 835212499 156817178 636434256 982416551 592970093 598543708 968755777 53525809 767839638 47290536 907721720 835339516 885647994 296305836 531333917 152243323 592981604 562773407 509019925 640849273 780061015 610447918 334932282 802009078 882804101 152243323 628820972 704431513 754133002 966683628 311808379 846351340 627110568 884072178 68748842 567343883 885647994 32075030 393120342 289736829 313272965 722768643 787269565 489130642 543865019 255644658 172382592 93478833 851829959 292696118 476912096 358401766 179991869 13112382 851829959 862254110 264297813 553368896 353964006 548748527 607041944 201717402 175507355 422532994 938705675 489130642 505061211 40448245 727827821 917452919 317751260 431406787 758889515 801623766 554242697 433686203 616796881 797746066 550322314 746092812 735891721 721418370 708094860 911302173 400178823 1926282 19715614 703514531 145885851 623398671 522663253 953882020 119279869 211958450 858040709 757850417 250749017 193648030 566125822 768561257 337153847 915330573 159828635 190929591 225858850 824770361 448881532 581063820 476912096 351424753 970911538 518384931 854243215 424594759 182214511 675472009 51457589 163769090 815123402 15037608 342116147 125204206 514768035 234980621 676975489 251042004 449022331 234980621 983373150 490344724 953267424 237389399 182214511 422532994 630977998 679463383 53966525 289736829 841780337 215792516 628820972 211958450 916956968 93478833 829614460 801623766 539035187 590208882 63192647 776352608 360743135 563678994 175060805 598426014 63192647 289736829 992169078 931086800 285947848 979740237 882804101 799588075 727245017 958668995 854243215 6720560 854243215 679463383 970320952 652018277 588034909 465697134 60017144 760231333 456137963 420052652 888259120 771321738 310726569 595030753 620243558 538810384 953267424 795549341 155241439 860477160 215052415 153196022 262406489 628523361 179981178 527654256 106790696 801623766 315297566 527654256 287239117 539381059 972710252 876263470 285947848 626833449 145885851 904771946 48746678 563678994 776835194 679463383 313272965 570764323 514768035 851400664 613596687 28363157 252962990 542382913 943235508 575895835 5299425 533864165 780061015 527654256 674446970 814295984 836376015 98824830 449022331 193648030 842970782 860477160 758889515 765027062 272303478 292696118 970911538 915330573 625664180 691982506 98231977 721418370 205387898 503666498 891279504 123073176 196460706 601630030 79523589 499057158 283321520 451817798 887548285 994877696 237172271 145559297 37275245 838331644 498045048 931013644 390275103 98287438 790270533 877167702 944573659 637657473 962073361 581063820 349076114 954227928 396138845 162062292 702745028 754580366 975478549 885995802 109054120 982353486 172894131 15037608 835198840 152618584 315297566 814295984 983113723 681930584 515426984 448262245 790270533 904771946 607041944 858127225 213097363 152243323 424974082 247006479 694954883 126695727 207442482 444897967 938456692 540976336 754133002 700560235 918521256 874124920 55108095 550336314 505061211 991073887 505061211 746092812 560623000 109369069 117210451 142903358 735891721 257214051 641231120 420052652 762749463 490344724 891279504 462762217 10369081 746092812 33511708 503666498 938705675 633587956 554242697 511330454 349644605 835339516 196460706 887794841 635302209 32075030 283321520 125204206 627110568 429277230 287768226 498840912 638790258 80415088 994587826 885549757 250885472 623398671 749497174 955501918 831380531 640849273 247822207 292696118 737945381 610834602 449022331 770993588 311808379 457149478 978947655 992001870 687055288 215981255 780061015 966131311 559957428 602396426 597784477 315747769 56927881 745200166 698320352 456956861 494336936 674485068 812044550 967417280 476912096 721418370 789617647 795549341 841210236 626932919 376974209 499057158 146573202 991073887 757709512 760231333 403519778 860477160 767187616 926044257 60017144 887794841 858040709 109369069 248642173 681930584 636434256 876868627 568142039 292696118 509144872 567948101 607041944 633573519 24089615 663670886 831380531 331638088 317751260 966683628 81553943 709613471 498045048 203331888 330205547 954227928 338929165 705548145 24089615 570764323 397928982 559014304 424974082 451817798 932715562 115090276 925555858 768561257 937158597 545538425 47529701 24188768 782533040 444897967 506178629 632014852 299994808 633587956 522332929 846351340 266583970 532803593 842970782 840075867 559957428 663971090 682170984 457149478 81337657 640849273 884952974 567343883 597784477 305068796 737945381 760231333 942899938 298727845 2076768 661321016 232177196 626833449 808838846 827311105 213097363 196106606 965948435 886917295 858798711 736624310 288873549 567774282 932715562 783513992 272303478 499057158 334932282 363976852 130160246 247234349 163229392 886917295 632378665 954677909 860708299 645094664 52243955 117931902 792822959 298727845 624819674 702364434 535533605 425392410 602832600 926044257 330274784 550336314 36265302 753419354 727578179 562773407 446968233 788737791 78775552 128702236 33511708 430101007 190323279 103669472 972710252 586446680 882804101 927806038 625664180 40448245 515426984 745200166 835212499 311613451 607041944 455539394 53195413 736237188 276676140 885549757 792822959 306258744 613596687 140129038 359859765 331638088 396937914 284588557 299994808 490344724 993091440 481894295 715957434 539381059 711455867 215977916 299462930 10475035 215052415 567948101 485509833 770993588 396937914 688577702 548964093 969294148 932715562 950497221 726950461 920628541 79509313 982370833 215052415 471393875 750750593 550336314 627110568 177689820 63192647 53226850 662972501 274113481 885647994 778074990 588034909 539957336 314069534 696443558 121069546 814662325 40131409 538810384 328764419 326469359 937158597 302151126 27735709 799588075 155241439 430101007 145885851 308142020 746394036 748408317 38304068 598543708 636434256 438183310 852604705 691982506 776835194 700560235 812414090 274113481 515426984 72820570 334932282 196106606 618355033 633587956 983113723 953882020 449022331 268759041 688177128 306607837 427184372 255644658 51457589 586370291 859168292 396743027 907095826 824770361 702745028 162062292 459452716 117931902 831241130 882364001 276676140 237389399 851829959 142903358 400218902 864016134 882804101 99294732 78775552 21190596 276676140 1926282 196460706 572588387 172382592 53226850 726620654 760370490 314069534 944068218 317751260 640849273 526944836 82689280 360743135 799588075 627110568 840130613 858798711 650990283 793291205 645094664 686884353 660095934 56927881 931086800 718980624 29069209 246221518 918225489 19911869 887794841 767187616 396806189 907095826 456956861 726620654 712346140 396937914 656623172 588034909 186285312 485509833 125204206 38304068 592639233 140551765 305068796 708053570 101231409 182214511 884059813 789617647 931013644 815123402 268759041 758889515 804406873 251367294 328462418 232177196 877167702 601740259 723661847 566125822 922858580 686884353 375066210 369306500 156817178 426814174 887794841 726950461 681930584 971549242 581063820 256866745 562773407 970911538 254203892 715957434 750563611 683621666 769327548 393120342 289918211 983373150 305990981 155241439 746092812 689757867 512614298 885000402 917795074 249820698 876263470 815123402 597206610 152314280 548748527 942899938 387176309 29473993 941586175 996943901 550336314 403519778 695599688 186244437 499057158 587179274 201717402 63192647 956815883 739696834 430101007 764459345 586446680 282751746 289918211 635302209 685702028 601740259 286037808 175507355 152523810 27735709 583924389 378961655 77819776 550322314 308142020 360743135 53226850 989729323 604968568 290474734 514650194 359714925 208625324 604881661 801623766 997329398 601630030 923715439 705548145 630629857 190929591 854243215 50241607 285947848 203331888 968755777 746992914 792822959 190979155 787269565 950673785 256866745 969294148 220576148 123073176 179981178 74587532 938705675 884059813 638790258 512614298 38304068 949084393 800460688 275202504 10369081 687988023 515426984 626932919 494336936 590208882 29473993 38338132 390275103 954677909 136412292 190979155 527595027 274113481 506919968 219054502 307060809 422532994 143200457 770594967 874297853 73848009 771803404 533455280 172894131 152866011 310726569 623398671 577673184 705304879 630629857 765027062 246058339 201717402 601740259 471393875 940381563 407510599 349644605 429277230 968755777 331638088 636434256 691982506 424974082 931086800 625664180 78649514 682170984 128188331 330274784 480361743 387703244 478351140 237172271 917795074 719601437 284588557 732245352 103733806 324986193 632014852 393120342 949084393 838803091 195957995 775682536 913521589 635302209 196106606 287239117 542382913 573449906 958668995 852107700 247221668 266583970 546679009 754133002 824770361 786320493 773781000 232177196 679463383 817743547 598543708 850484222 109369069 448881532 783513992 48746678 801623766 618355033 840130613 250832323 702364434 543945175 408395896 995876182 247841801 682170984 242186770 635302209 41538784 792822959 559014304 829614460 274113481 88335614 773781000 749497174 645094664 51457589 776352608 560327459 78649514 990121035 809429735 19911869 539381059 205387898 969294148 613596687 98824830 831380531 358401766 376448548 498840912 451551269 203331888 632378665 511330454 250749017 802009078 775682536 683406807 732559957 927806038 727827821 60750487 55108095 545538425 735891721 215977916 674446970 78649514 495854210 975337465 992169078 931013644 140551765 444897967 635302209 554222239 38304068 136384659 29473993 850386354 762749463 219054502 394791153 244528344 902464469 31215478 516175014 808866527 145885851 237389399 975478549 982370833 687055288 783513992 223299794 927806038 795472528 876868627 851829959 407510599 313272965 862177563 931005739 451817798 51457589 931086800 786320493 298727845 79523589 311613451 246058339 896571061 872434540 915330573 859168292 950673785 981996224 237389399 729868696 286037808 735891721 94279561 334932282 884072178 452156279 465759767 119279869 854902633 750978759 681930584 485509833 77819776 688177128 1926282 713146141 74587532 514768035 430284321 850484222 830619816 699230813 860377902 781246194 610834602 896029805 553368896 656191811 835339516 592970093 6720560 975478549 843005594 1736950 101231409 746394036 568104980 996943901 334299650 207844781 430284321 887548285 862254110 488788762 640849273 624819674 950673785 625664180 932584021 515426984 922858580 103219970 888553258 968755777 533864165 607965234 878442641 209497607 215981255 511277493 257214051 225858850 619842427 134801439 600441802 711455867 242530683 98231977 590208882 749497174 117931902 225858850 681930584 248642173 809429735 2575238 101231409 997329398 109369069 841780337 910850066 140725908 581063820 729868696 760231333 836376015 592639233 427184372 525347105 963141978 332834875 215289803 242530683 1736950 49317804 299994808 228290502 2076768 50241607 641231120 922858580 668964848 49317804 310726569 628523361 882804101 206036522 396937914 269911067 458363994 860377902 1736950 808866527 128450928 774489082 225771141 681765297 852604705 994877696 943793512 757850417 403519778 296305836 808838846 49317804 995876182 900116034 722013570 305068796 912948600 93651148 361002681 966683628 932715562 367026304 788118407 783513992 531135820 926044257 688177128 489612980 749497174 174140940 841210236 412979540 451551269 242186770 288072509 264750083 193515742 601630030 160287690 174140940 306597948 862177563 910818482 268759041 252792947 456956861 146573202 632014852 121069546 936312210 853903669 80485362 732559957 774489082 266583970 674485068 750750593 595030753 172382592 140129038 787269565 247221668 324986193 830619816 896029805 776820092 522663253 900796599 145885851 678884863 727245017 637939784 136412292 751925989 792822959 177689820 252792947 514650194 98231977 292696118 866337119 949084393 694954883 293192373 186244437 553191189 713146141 592639233 400218902 723661847 310726569 60750487 128450928 950497221 829983432 257214051 505061211 396050095 353964006 43970470 627110568 244528344 37275245 135975430 232177196 193648030 337153847 776352608 852755974 99294732 835198840 183440003 713146141 709613471 850484222 931640418 983113723 941586175 338631458 681765297 972710252 488295044 543865019 688534928 283321520 719307635 618355033 464130920 938080232 38338132 969494113 302151126 143200457 302151126 426814174 774489082 812414090 954677909 196460706 770864525 942866882 432089082 250832323 926045944 451551269 270237875 459617527 814295984 789617647 261683638 405444604 254203892 241184545 47290536 841210236 806664207 36265302 954227928 566554997 93651148 882804101 351424753 962430008 396050095 4519262 303230482 4519262 862254110 328764419 156817178 349076114 838331644 896072909 553191189 750750593 23973553 708053570 247234349 557710104 768561257 403519778 547547687 112390393 10475035 556619020 953882020 764116955 424594759 810021050 691982506 994587826 98824830 656191811 748408317 20148474 264408147 601740259 492009082 539035187 991073887 66490779 215981255 604181881 802009078 143200457 911302173 592981604 656623172 582273012 293192373 310726569 941586175 282751746 299113502 587179274 602396426 276676140 638516505 130160246 344620844 136412292 298727845 327773233 575023903 272303478 451817798 994587826 603931167 338631458 681765297 509664709 885995802 554242697 151506993 266583970 640849273 852107700 956815883 433921335 10475035 650036494 740882715 195733178 430101007 592981604 896571061 896072909 308142020 668964848 42657625 636434256 156817178 77685914 595030753 764459345 806664207 290474734 562773407 764116955 838655651 209497607 514650194 699230813 29069209 674446970 748408317 137529801 60750487 266583970 219054502 32954995 795549341 509144872 675472009 647733367 740882715 792846009 862177563 396632533 430101007 548964093 581063820 162904272 228290502 134971740 887794841 981996224 215977916 713146141 131323888 36265302 795549341 983113723 814295984 630629857 303230482 831241130 53525809 960796073 211958450 53195413 799588075 448881532 953882020 446968233 885995802 488788762 31215478 310726569 705548145 143200457 424594759 338312978 546679009 732245352 83066601 137529801 67831588 264297813 592639233 557710104 295606018 463496366 438183310 573449906 456956861 458363994 575023903 531333917 878442641 81337657 969294148 635302209 982370833 853903669 982353486 298050322 152523810 815123402 583924389 55018341 786380583 812414090 958668995 248642173 678884863 757709512 931966477 793291205 511330454 68748842 610447918 746394036 748408317 912948600 484158080 15903366 422532994 726620654 538810384 646710523 710224239 566554997 854902633 708053570 630201811 520071928 719307635 829983432 540394532 218611070 736237188 399037712 430101007 396632533 429277230 726620654 292972503 764116955 396743027 163229392 638516505 187104147 877167702 860708299 451817798 4519262 581063820 396937914 926044257 907721720 567774282 252792947 874124920 699733109 451817798 251367294 650990283 475344103 950497221 702745028 344876805 27735709 938140278 397928982 806664207 543945175 904800517 764459345 586370291 324129364 136384659 81337657 878442641 852107700 553368896 581831913 797746066 764459345 586370291 793291205 846351340 582273012 15037608 252792947 82689280 1736950 471393875 776835194 47290536 250832323 568104980 399037712 590208882 507016471 417074904 262406489 900796599 250749017 691982506 53966525 290117216 699733109 471393875 509664709 936312210 697742034 163769090 812414090 420052652 990121035 219054502 390793037 457149478 213097363 926045944 378961655 196106606 400178823 433686203 2575238 286037808 371179314 186285312 327773233 23973553 697742034 854969794 282751746 174140940 866337119 843005594 960543625 190979155 638790258 632014852 19715614 401452903 942866882 858127225 475344103 941586175 902464469 214650974 485063015 28363157 195019158 542382913 378961655 547547687 462394151 430101007 590918818 206036522 851759377 770993588 850484222 462762217 413592826 32806834 68748842 228290502 179991869 23973553 667313812 638516505 781246194 361435434 29473993 958668995 888259120 41538784 581831913 533455280 186244437 722768643 252792947 293192373 613596687 626932919 944573659 43970470 602832600 270237875 205387898 917795074 172382592 971894015 506178629 550336314 739696834 93651148 546141085 60750487 812044550 230662076 37275245 572588387 179981178 886149363 441621000 575895835 359859765 570764323 787269565 954227928 694954883 24188768 713146141 532803593 56927881 274113481 342116147 152523810 694954883 695599688 172894131 527654256 337153847 485153920 266583970 387176309 390275103 876263470 997329398 567774282 315343704 776352608 686335042 539957336 485262404 264408147 795472528 719307635 836376015 850386354 944573659 750563611 475344103 298727845 588034909 478351140 250749017 375066210 732559957 619842427 782533040 251188854 35128915 760231333 32954995 490344724 252792947 302151126 792846009 806664207 138442062 683406807 140551765 539381059 727827821 292149520 687055288 932584021 590918818 128702236 789617647 915330573 984047482 876868627 891279504 795549341 620243558 994877696 758889515 858127225 953267424 922706719 993091440 931966477 907721720 808866527 835198840 255644658 140551765 754580366 835212499 39220584 554242697 354807942 708053570 492009082 990121035 886149363 852755974 652018277 427184372 431406787 722013570 203331888 613596687 927806038 859168292 568104980 33511708 736237188 781246194 548748527 907721720 855636134 4519262 115509283 604181881 23973553 2076768 264750083 81553943 637939784 829614460 795549341 592981604 568104980 866568903 874124920 925555858 471393875 620243558 816971086 396937914 936312210 556619020 940188502 727245017 838655651 266583970 660765062 282751746 311613451 729868696 60750487 338312978 259646582 218611070 553191189 463496366 931013644 459617527 966683628 464444922 618542887 559957428 932584021 627110568 956815883 376974209 206036522 916956968 765027062 607965234 920628541 53966525 540976336 522332929 214650974 78775552 975337465 285947848 484158080 441621000 23262398 943235508 425392410 699230813 375066210 360743135 831467447 983113723 538810384 800460688 944068218 507016471 554222239 272303478 292149520 778123726 553368896 121069546 271484655 451551269 595030753 994587826 592639233 53966525 303230482 858798711 904800517 942899938 334299650 732559957 266213579 248642173 884059813 582273012 266213579 522663253 39220584 806744033 298727845 750978759 152523810 252962990 949084393 52243955 259646582 353964006 653201202 764116955 540976336 342116147 583924389 514768035 83066601 885000402 303230482 40131409 884059813 726950461 322974842 737945381 315747769 573449906 78649514 984047482 922858580 29473993 929504680 940381563 681930584 853170454 181668423 317751260 138393155 806744033 969294148 172894131 296305836 969494113 982353486 213097363 700560235 860708299 702364434 708046990 140129038 494336936 746092812 298050322 862177563 968670974 538810384 251367294 704431513 627110568 938140278 918521256 632402794 931005739 840130613 342116147 152523810 676975489 637939784 641231120 29069209 404152565 568104980 248642173 630775839 117210451 860377902 727245017 490344724 172894131 760370490 475344103 38844979 207844781 503666498 420636144 407091770 509144872 746992914 664041213 511330454 290474734 808866527 887548285 587469038 556619020 186285312 852107700 877088774 590918818 101231409 165821462 202477791 888259120 786380583 399037712 637769046 636434256 311613451 172382592 542382913 989729323 830619816 627110568 736624310 262406489 941586175 789617647 455539394 288072509 125829791 688177128 286037808 160287690 344876805 641231120 545538425 573449906 64420967 145885851 513440742 134971740 931966477 853903669 332834875 604881661 98824830 727578179 776820092 978947655 546679009 531333917 927806038 699230813 786380583 713146141 704431513 241184545 242028021 175507355 133739154 307060809 765027062 792822959 67700412 448881532 201717402 546141085 540394532 630629857 304621545 939725993 292149520 458156391 407510599 778123726 652018277 984047482 214650974 40131409 771321738 571019028 64420967 806744033 950497221 810021050 854969794 87392830 53525809 451521521 645094664 749497174 570764323 630629857 940188502 891279504 705304879 397928982 650990283 117210451 760231333 330205547 628523361 459617527 915330573 382210484 464130920 49948206 292149520 668964848 550336314 443960759 771321738 831241130 562773407 858040709 956286779 667313812 743614603 841780337 757850417 587179274 553368896 942866882 512614298 334211676 321628921 328764419 424594759 334211676 601630030 662972501 862177563 570796148 955501918 60017144 570764323 831380531 425392410 792846009 438183310 938456692 275202504 209497607 152243323 443960759 802009078 396632533 480361743 55018341 82689280 250749017 140129038 399037712 152523810 437743643 915330573 117210451 257214051 267829614 271484655 889608806 583924389 885000402 98824830 369306500 944068218 167276070 603931167 566554997 539381059 103219970 751925989 53966525 99294732 47349911 321628921 360743135 860477160 264297813 743614603 408032939 244528344 306597948 838655651 393120342 367026304 732559957 438183310 475344103 736624310 81553943 740340897 650036494 302151126 613596687 704431513 250832323 878442641 995876182 626833449 942899938 128188331 618355033 39220584 296751278 710224239 851759377 115509283 882804101 696443558 662972501 778074990 55018341 492009082 981996224 674485068 175507355 887794841 140725908 884072178 623206361 201717402 566554997 315747769 140725908 860377902 858798711 43970470 708094860 610447918 667844649 303230482 587179274 425392410 812414090 562773407 352092606 247006479 112090095 547547687 566125822 123073176 965948435 74587532 218611070 804406873 40131409 548748527 266583970 498840912 514768035 864016134 790270533 572588387 934824360 234980621 317751260 598543708 175060805 125829791 630629857 465759767 938456692 464130920 109054120 944068218 664041213 334299650 662972501 633573519 317751260 82689280 40131409 604968568 970320952 50241607 266583970 295366548 160287690 626833449 175507355 154538466 884952974 685702028 687055288 956815883 225771141 917452919 352092606 559014304 852107700 540976336 462394151 363976852 588034909 885995802 159828635 824770361 630629857 539381059 187104147 293192373 543865019 103733806 808838846 650697444 757709512 135975430 53195413 264408147 543945175 422532994 427184372 837690635 1736950 770864525 249670598 53525809 241184545 950497221 592970093 618542887 433921335 80415088 160287690 936312210 456137963 601630030 616057762 132556595 733642252 610447918 307403622 546679009 328764419 257214051 246221518 806664207 283321520 598426014 509370562 877167702 992169078 675472009 296751278 480361743 262406489 638516505 792846009 484158080 726620654 645094664 887548285 603931167 337153847 824770361 888259120 746092812 24089615 387176309 581831913 703490607 750750593 131323888 35128915 773781000 887548285 788737791 250832323 363976852 55108095 56154381 697742034 527654256 943793512 140129038 396632533 780870754 556619020 302151126 754133002 862177563 315343704 931086800 885647994 931640418 676975489 954227928 378961655 247221668 397928982 550336314 87392830 602396426 143200457 295366548 287239117 703490607 943793512 586370291 403519778 268759041 727245017 154538466 328764419 884059813 851829959 214244685 307060809 264750083 718980624 296305836 694954883 145559297 835212499 264408147 620243558 710224239 735891721 284588557 405444604 177689820 775682536 268759041 393120342 982353486 735891721 911302173 668964848 513440742 462394151 527654256 371179314 358401766 360743135 830619816 607760956 765027062 359714925 103669472 620243558 206036522 960796073 533455280 247822207 308142020 264100442 31615284 630977998 920628541 638790258 295606018 371179314 489612980 36055646 31615284 315343704 103669472 938456692 117931902 992169078 971894015 359714925 591292508 145885851 931966477 311808379 900796599 767839638 126695727 850484222 982416551 991615550 259646582 475344103 215977916 400218902 326469359 174335822 502849508 960796073 567774282 960796073 830619816 984047482 480361743 758889515 539381059 29473993 311613451 495854210 967417280 252962990 74587532 810021050 42657625 970911538 268759041 841210236 74587532 835198840 138393155 485063015 927806038 315297566 992001870 459617527 862177563 888259120 103733806 79523589 553368896 225771141 595030753 581831913 77819776 896072909 799588075 215052415 838655651 852107700 540976336 128450928 527654256 812414090 125204206 852107700 568104980 623206361 904800517 604181881 846351340 276676140 887794841 546141085 661321016 858798711 696443558 732245352 293192373 953267424 82689280 488788762 700560235 33511708 696443558 750978759 814295984 349644605 602396426 853903669 74587532 539035187 723661847 858798711 215981255 767187616 53525809 853170454 738612855 767187616 874124920 647733367 920628541 550322314 498840912 764116955 304621545 456137963 757850417 162904272 633573519 851759377 464130920 764116955 428572243 68748842 814295984 719601437 598426014 896029805 425392410 170938835 559014304 983113723 286037808 207844781 591292508 788118407 202477791 167276070 581063820 829614460 994877696 757709512 539957336 77685914 721418370 7807006 750563611 452156279 748408317 668964848 462762217 152314280 947413305 251367294 637769046 592981604 954227928 464444922 626932919 616796881 850386354 250885472 513440742 478892468 799588075 462394151 93478833 359859765 78649514 975478549 982416551 37275245 153196022 968670974 99294732 172382592 242186770 972710252 295366548 983373150 367026304 727578179 326469359 307403622 50241607 806792339 366854683 979750308 638516505 306597948 567948101 912948600 929504680 248642173 296305836 972710252 145559297 891279504 831467447 195019158 432089082 618355033 98824830 851759377 275349681 787269565 93478833 989729323 994877696 317751260 954227928 32954995 700560235 35128915 202477791 310726569 660765062 775682536 420052652 424974082 591292508 942866882 489130642 735710261 688534928 835198840 559014304 851759377 154538466 451551269 10475035 858040709 251188854 699230813 926044257 831380531 465697134 306597948 917452919 889608806 838331644 764116955 131323888 60017144 577970627 128450928 251042004 938080232 862254110 459452716 82689280 190323279 484158080 762749463 710224239 854243215 700560235 607965234 551289217 247822207 80415088 307060809 567343883 456137963 750563611 858040709 696443558 475344103 80415088 735710261 295606018 520071928 74587532 627110568 618542887 485509833 430284321 942899938 6720560 250749017 801623766 667844649 455539394 858798711 920721173 806792339 255644658 449022331 780870754 885353274 513440742 570796148 407629453 396138845 768561257 338312978 830619816 632378665 926044257 488788762 31615284 24089615 56154381 647733367 638516505 40131409 74587532 527595027 542382913 459452716 424594759 77685914 904800517 694954883 738855203 858798711 860477160 167276070 801623766 223299794 722768643 282751746 947413305 579757115 746992914 727578179 275202504 866337119 396050095 250749017 480361743 860708299 913521589 250749017 846351340 638790258 950497221 667313812 540976336 209497607 64420967 735891721 334299650 215289803 215792516 996943901 163769090 858040709 40448245 896029805 947413305 601740259 210621083 851829959 103669472 498045048 645094664 88335614 884072178 49614749 295366548 19911869 788737791 520071928 93478833 246058339 195957995 134801439 575895835 667844649 575895835 836376015 745200166 573480571 31215478 38085353 471393875 979750308 942999703 55108095 992001870 87392830 966683628 646710523 492009082 307060809 632014852 715957434 177689820 315343704 598426014 10369081 31215478 130160246 922858580 476912096 971894015 55108095 748408317 359714925 735696627 573449906 296305836 636434256 533864165 5299425 138393155 51457589 103733806 858798711 931966477 727827821 28363157 413592826 203331888 761330904 854902633 413592826 705548145 112090095 553368896 307060809 242028021 79509313 163769090 808614164 83066601 708046990 572588387 997329398 586446680 889608806 887794841 781246194 663971090 912948600 663670886 630238886 422532994 581831913 920628541 872434540 691982506 49614749 723661847 376974209 275349681 390275103 696443558 539035187 884072178 676975489 305068796 996943901 53525809 7807006 417074904 767839638 788737791 852755974 885995802 735891721 882364001 650036494 994877696 860708299 42657625 750750593 492009082 733642252 814662325 810021050 581063820 858798711 271484655 912948600 975337465 944573659 547547687 47529701 132556595 516175014 942999703 896029805 485153920 404152565 266213579 520071928 286037808 170941326 512614298 117210451 763431295 522663253 67700412 507016471 214650974 49948206 408395896 246221518 545538425 225771141 211958450 290474734 183440003 252792947 778074990 938456692 31615284 597784477 99294732 983373150 722768643 248642173 760370490 190323279 633573519 53195413 835339516 588034909 234980621 338312978 254203892 972710252 306258744 970911538 795549341 775682536 955501918 209497607 940188502 24089615 24188768 960543625 954227928 463496366 920721173 285947848 117931902 842970782 662421393 403519778 774489082 960796073 770594967 394791153 674485068 737945381 289918211 449022331 275349681 943793512 433686203 160287690 590208882 285947848 306607837 485262404 795549341 459452716 292149520 793291205 645094664 891279504 186285312 750978759 489612980 767839638 746992914 577673184 695599688 408032939 202477791 2575238 633587956 250885472 770594967 853170454 117931902 708053570 770594967 682170984 1926282 943235508 181668423 376974209 700560235 174335822 554222239 800460688 941586175 337153847 289736829 441621000 874124920 727578179 703490607 835198840 162062292 87392830 994877696 121069546 295366548 400218902 786380583 711532060 721418370 815123402 862254110 735710261 687988023 324986193 958668995 934824360 637769046 426814174 98824830 689757867 242186770 543865019 876263470 566554997 128188331 509019925 264408147 285947848 776352608 437743643 660095934 325554372 956286779 376448548 29069209 962073361 936312210 247822207 885995802 568142039 269911067 573480571 760231333 134971740 183440003 103219970 840130613 718980624 457149478 577673184 743614603 250749017 567948101 369306500 366854683 781246194 136384659 557710104 920628541 376448548 228290502 396138845 489130642 896072909 6720560 994587826 586446680 750750593 696443558 405444604 98287438 33511708 904800517 138442062 554222239 543865019 920721173 764116955 703514531 771803404 640925332 939725993 754580366 463496366 38844979 582273012 430284321 112390393 936312210 250749017 1926282 788118407 539957336 79509313 60750487 968670974 131323888 458156391 884059813 607965234 13112382 53195413 950673785 831241130 654830523 170938835 660095934 175060805 600441802 306597948 637939784 509370562 152243323 514768035 247841801 507016471 688534928 853903669 953882020 2076768 274113481 686884353 763431295 969494113 967417280 571019028 302151126 448881532 674485068 287239117 211958450 953267424 746992914 130160246 465759767 159828635 969294148 109054120 806664207 722013570 298727845 835198840 917452919 943793512 953882020 616057762 982416551 4519262 918225489 859168292 704431513 732245352 162062292 582273012 23973553 872434540 854902633 678474526 773781000 852604705 876868627 310726569 876263470 910818482 583924389 727827821 553368896 912948600 140129038 535533605 840130613 175060805 587469038 581831913 303230482 668964848 840075867 937158597 710224239 737945381 877088774 620243558 882364001 463496366 774489082 2379379 98287438 505061211 719307635 918521256 31615284 607041944 77819776 711532060 465697134 313272965 424594759 711532060 745200166 664041213 538025980 727245017 433686203 708046990 462762217 808614164 444897967 174335822 361435434 250832323 640925332 246058339 186285312 437743643 992001870 313272965 660095934 792846009 53525809 506178629 407510599 408032939 911302173 506919968 438183310 630629857 196106606 550322314 295366548 446968233 633587956 33511708 50241607 992169078 674485068 441621000 151506993 60017144 293192373 960543625 656623172 592970093 247841801 732245352 652018277 38085353 202477791 960796073 921198791 314069534 831467447 531333917 1926282 942866882 610447918 969494113 499057158 2076768 586370291 627110568 128188331 960796073 705548145 866337119 808866527 437743643 936312210 852604705 538025980 942899938 60750487 638790258 174140940 330205547 650990283 942899938 587469038 516175014 550336314 732245352 49317804 376974209 938140278 607041944 128702236 694954883 940188502 137529801 748408317 225771141 632014852 172894131 251042004 888259120 893019475 359714925 862177563 577673184 637657473 2575238 585165457 775682536 533455280 349644605 619842427 872434540 653201202 52243955 567774282 601740259 181668423 885647994 628523361 342116147 455539394 587179274 663670886 167276070 808866527 179991869 264408147 636434256 131323888 51457589 884059813 287768226 931086800 934824360 799588075 940381563 38338132 749497174 242186770 87392830 202477791 997329398 344620844 632378665 123073176 650036494 407091770 205387898 115090276 995876182 992001870 399037712 366854683 990121035 396743027 288072509 603931167 196460706 292149520 378961655 774489082 726950461 264408147 338631458 284588557 311808379 780870754 667844649 271484655 79523589 539957336 514768035 257214051 604881661 966131311 246221518 637657473 559957428 746992914 143200457 753419354 223299794 430284321 205387898 679463383 311808379 967417280 815123402 721418370 315297566 862177563 662972501 94279561 686884353 429277230 81337657 23973553 853170454 455539394 635302209 864016134 577673184 931640418 732245352 42657625 170938835 809429735 872434540 354807942 602832600 553368896 511277493 148087911 566554997 592639233 387703244 74587532 910818482 975337465 850484222 600441802 786320493 465759767 767187616 678884863 727578179 532803593 722013570 542382913 556619020 966131311 459452716 480361743 960796073 809429735 630977998 209789164 394791153 298727845 896072909 351424753 726950461 936312210 396937914 577970627 2379379 801623766 851829959 860477160 682170984 214650974 531333917 115509283 910818482 982416551 250832323 956286779 697742034 303230482 330205547 745200166 509664709 53525809 808614164 864016134 140725908 533455280 559957428 683406807 79523589 675472009 27735709 922858580 630977998 913521589 590918818 331638088 403519778 691982506 287768226 840075867 835212499 289918211 315297566 955501918 53966525 586446680 831241130 736624310 968670974 465759767 566554997 538025980 396632533 926044257 458290565 311613451 996943901 736237188 757709512 533455280 446968233 864016134 588034909 296305836 613596687 661321016 382210484 163769090 413592826 31215478 77685914 654830523 887548285 162062292 650036494 375066210 276676140 722768643 485262404 448262245 63192647 424594759 815123402 408395896 396632533 484158080 607760956 138393155 399037712 465759767 306597948 38844979 264297813 814295984 24089615 886917295 859168292 618542887 767839638 827311105 186244437 563678994 780061015 942999703 735891721 860377902 462394151 553368896 647733367 286037808 5299425 94279561 2379379 550336314 485509833 955501918 225771141 193648030 63192647 408395896 170941326 886149363 424974082 125204206 620243558 633587956 376448548 804406873 387703244 641635851 888259120 591292508 87392830 637769046 780061015 481894295 382904427 39220584 452156279 802009078 88335614 840130613 78775552 407091770 376974209 888699423 674446970 550336314 992169078 738612855 98231977 15037608 910818482 462762217 306597948 538810384 757709512 691982506 625664180 946916156 155241439 244528344 317751260 407510599 262406489 918225489 566554997 660765062 388085842 293192373 342116147 904771946 688177128 876868627 993091440 851400664 618355033 24188768 852604705 656623172 686884353 548748527 152314280 816971086 267829614 662421393 276676140 572588387 81553943 931966477 694954883 451817798 404152565 801623766 808614164 511330454 664041213 247234349 282751746 854969794 729868696 527654256 729868696 448262245 77685914 878442641 378961655 103733806 476912096 431406787 140551765 429277230 400218902 298727845 632378665 610447918 635302209 163769090 182214511 738612855 757709512 640925332 838803091 662421393 485509833 430088921 995876182 152523810 205387898 788737791 476912096 991073887 27735709 93651148 390275103 753419354 136412292 904800517 718980624 15037608 47349911 835339516 66490779 922858580 775682536 77819776 262406489 152866011 771803404 152866011 315297566 746092812 29473993 499057158 851829959 53226850 193515742 884059813 249670598 719307635 646710523 128188331 399037712 979740237 687055288 430284321 119279869 286037808 800460688 303230482 288072509 969294148 287768226 546679009 159828635 23262398 923715439 465697134 535533605 610447918 349076114 641635851 488788762 56154381 968755777 15037608 597784477 886149363 478892468 412979540 934824360 332834875 140551765 768561257 678474526 696443558 938705675 305068796 310726569 230662076 962430008 513440742 459452716 745200166 437743643 148087911 990121035 857535330 882804101 215977916 128450928 975337465 420636144 485153920 494336936 602396426 296751278 567343883 932715562 140129038 581831913 702364434 630977998 751925989 806744033 757850417 566554997 154538466 317751260 396050095 307403622 126695727 172894131 854969794 349076114 295606018 162904272 900116034 140725908 264408147 715957434 145559297 912948600 922858580 746394036 838655651 79523589 202477791 48746678 305068796 420636144 82689280 667844649 93651148 159828635 292149520 252792947 77819776 579757115 298727845 910818482 396050095 170938835 926044257 196460706 765027062 81553943 885995802 560623000 407091770 522663253 637657473 737945381 214244685 324986193 753419354 767187616 922706719 771803404 465697134 943235508 637939784 850484222 215977916 390275103 527654256 841210236 748408317 667844649 152866011 750978759 214650974 889608806 838331644 771803404 619842427 315297566 525347105 456137963 209789164 77685914 261683638 119279869 29069209 979750308 575023903 727578179 942999703 396937914 271484655 602832600 465759767 719601437 133739154 968755777 797746066 106790696 979740237 146573202 575895835 968670974 944068218 884952974 41538784 934824360 489612980 571019028 551289217 592970093 237389399 47529701 864016134 943793512 641635851 641231120 228290502 353964006 780870754 159828635 366854683 37275245 748408317 237172271 334299650 121069546 311613451 186244437 40656291 87392830 563678994 662972501 715779797 732245352 750563611 282751746 286037808 509019925 991073887 962430008 773781000 607041944 567948101 288072509 152866011 138442062 196106606 182214511 540976336 719601437 32075030 635302209 303230482 781242822 547547687 223299794 201717402 662972501 407629453 152314280 103733806 2076768 626932919 571019028 835339516 496698204 705304879 264100442 776352608 359859765 738855203 288072509 268759041 735891721 432089082 396138845 234980621 252962990 98824830 588034909 851400664 207442482 954227928 78775552 56154381 19715614 115509283 850484222 331638088 934824360 722768643 630629857 148087911 708046990 911302173 426814174 538810384 106790696 956286779 964902255 885549757 638790258 152866011 836376015 190929591 338929165 72820570 727827821 950497221 571019028 911302173 443960759 750563611 163229392 422532994 276676140 432089082 968670974 177689820 112390393 430101007 721769014 261683638 964902255 407629453 697742034 432089082 790270533 956815883 47349911 420052652 767839638 855636134 218611070 32806834 337153847 650697444 664041213 630201811 77685914 266213579 713146141 244528344 775682536 567774282 352092606 814295984 570796148 47290536 638790258 266213579 160287690 527654256 338631458 570764323 624819674 788737791 702745028 264750083 983113723 82689280 733642252 39220584 620243558 214244685 145885851 210621083 306597948 958668995 907721720 38844979 359859765 917795074 509370562 654830523 349076114 331638088 806744033 193648030 290474734 804406873 662972501 592639233 630238886 950673785 808614164 617908997 87392830 769327548 708094860 457149478 764116955 315747769 860708299 750563611 51457589 663971090 582273012 190979155 757709512 754580366 1736950 900116034 334211676 430101007 708046990 675472009 650036494 816971086 128450928 23973553 630238886 215774690 543945175 774489082 223299794 321628921 953267424 156817178 983113723 190929591 866337119 366854683 359714925 824770361 923715439 292972503 2575238 738612855 387703244 592639233 882804101 592639233 788118407 954227928 733642252 1926282 613596687 855636134 852604705 877088774 49948206 736237188 697742034 202477791 588034909 712346140 496698204 982370833 836376015 292972503 1736950 82689280 688177128 315747769 63192647 654830523 310726569 259646582 225858850 259646582 808838846 181668423 396632533 681765297 338929165 23262398 138442062 485153920 587179274 955501918 938705675 326469359 315343704 953882020 352092606 688534928 737945381 854969794 459452716 425392410 613596687 632402794 887548285 117931902 394791153 464130920 993091440 136384659 623206361 816971086 338312978 921198791 810021050 795549341 907721720 982416551 288873549 700560235 376974209 13112382 225771141 247006479 5299425 704431513 88335614 982370833 889608806 344620844 49614749 797746066 960543625 736237188 778123726 123073176 994587826 610834602 853903669 597206610 854243215 23262398 225771141 152523810 656191811 831467447 556619020 637939784 775682536 425392410 396138845 412979540 2076768 877167702 746394036 854969794 786320493 824770361 808838846 315747769 193515742 979740237 10369081 503666498 568142039 230662076 577673184 28363157 338312978 904771946 968670974 289918211 507016471 363976852 288072509 420052652 287239117 567774282 24089615 210621083 750750593 214244685 616057762 358401766 376974209 513440742 175507355 396806189 38085353 275202504 349076114 601630030 750750593 115090276 604181881 874124920 732245352 992001870 314069534 247234349 699230813 533864165 838803091 705548145 984047482 103733806 378961655 623398671 205387898 760370490 638790258 862177563 721769014 738612855 353964006 209789164 592970093 877167702 686335042 351424753 282751746 132556595 378961655 259646582 186244437 920721173 896072909 32806834 749497174 538810384 548964093 344620844 711455867 926044257 462394151 757850417 32954995 451817798 674446970 652018277 475344103 773781000 496698204 681765297 232177196 401452903 829983432 24188768 506178629 234980621 56927881 816971086 511277493 67831588 37275245 773781000 715957434 956815883 806744033 893019475 858798711 675472009 968670974 563678994 338631458 103669472 550322314 162062292 938456692 780870754 991615550 929504680 778123726 740340897 554242697 93651148 918521256 457149478 458156391 926045944 715957434 67831588 246058339 211958450 516175014 679463383 852604705 887794841 119279869 72820570 732245352 553191189 388085842 145559297 247822207 174140940 249670598 788737791 298050322 407629453 19715614 550336314 815123402 286037808 209497607 637769046 715957434 876868627 130160246 768561257 686884353 802009078 250885472 678884863 313272965 257214051 971549242 133739154 49948206 954677909 866337119 533455280 771803404 783513992 112390393 47290536 509144872 982353486 413592826 807117750 352092606 72820570 942899938 802009078 699733109 539381059 573449906 751925989 485509833 719307635 866568903 975337465 810021050 768561257 970320952 128702236 923715439 783513992 835212499 302151126 646710523 266213579 19715614 754580366 656191811 109369069 285947848 10475035 10369081 401452903 557710104 451817798 128450928 765027062 495854210 471393875 266583970 545538425 775682536 429277230 835198840 156817178 37275245 927806038 174335822 533455280 573480571 344620844 942866882 128702236 810021050 489130642 143200457 215977916 771803404 532803593 451551269 292972503 829614460 67700412 20148474 367026304 24089615 630775839 556619020 770864525 52243955 922706719 983113723 797746066 369306500 887794841 249670598 827311105 451521521 623398671 464444922 275349681 775682536 771321738 579757115 532803593 4519262 471393875 327773233 860477160 978947655 292972503 334211676 42657625 109054120 430101007 114409323 740340897 338929165 254203892 137529801 123073176 140551765 835339516 27735709 40448245 975478549 332834875 170938835 67831588 215052415 492009082 250885472 617908997 781246194 877167702 53195413 284588557 175507355 533864165 607760956 722768643 618355033 456956861 767187616 209789164 170938835 101231409 686335042 950673785 506178629 251188854 841780337 331638088 451521521 885995802 990121035 145559297 984050047 299113502 130160246 311613451 68748842 464130920 79523589 618542887 686335042 242530683 786320493 966131311 288072509 760231333 360743135 321628921 182214511 656623172 767839638 132556595 215052415 874124920 746394036 776352608 699230813 721418370 360743135 132556595 121069546 932584021 249670598 679463383 990121035 743614603 193515742 93478833 981996224 289918211 353964006 202477791 249820698 598543708 925555858 550336314 853903669 247841801 246058339 597206610 190323279 456956861 698320352 302151126 405444604 923927991 775682536 484158080 953267424 929504680 272303478 854969794 35128915 387176309 859168292 641635851 590918818 585165457 413592826 927806038 408032939 492009082 991615550 835339516 232177196 284588557 667844649 498840912 711455867 311613451 327773233 132556595 448881532 53525809 750978759 295366548 130160246 274113481 317751260 598426014 566125822 709613471 52243955 492009082 577673184 705548145 485262404 931966477 81553943 946612927 324986193 306258744 984047482 675472009 509664709 757815664 138442062 513440742 300892929 780870754 647733367 617908997 910818482 432089082 53966525 40448245 226492467 809429735 960796073 547547687 394791153 652018277 944573659 284588557 972710252 478351140 829614460 660095934 405444604 153196022 195019158 484158080 511277493 938140278 866337119 128702236 979750308 746092812 781246194 456956861 186244437 284588557 767187616 40448245 858040709 219054502 543945175 687988023 60017144 275202504 241184545 23262398 981996224 101231409 246221518 77819776 324129364 148087911 522332929 407629453 727578179 215792516 48746678 760370490 98231977 56154381 965948435 610834602 98231977 465697134 24089615 586446680 140725908 675472009 427184372 131323888 128450928 735696627 589760538 375066210 711532060 917795074 960543625 202477791 15903366 675472009 1736950 618542887 387703244 73848009 223299794 78649514 146573202 80485362 526944836 920721173 27735709 754580366 790270533 630201811 37275245 662421393 808838846 760231333 636434256 660095934 870201182 193648030 968670974 705548145 448881532 598426014 394791153 64420967 650036494 581063820 325554372 860477160 498045048 888699423 494336936 771321738 960543625 628523361 300892929 464130920 162904272 922858580 602832600 128188331 789617647 408395896 522663253 750563611 782533040 321628921 146573202 21190596 573480571 773781000 179991869 641635851 433921335 723661847 246221518 675472009 7807006 358401766 572465104 407510599 744008188 209789164 250832323 721418370 981996224 967417280 993091440 877167702 771803404 518384931 237172271 585165457 522332929 125829791 887548285 598426014 758889515 485153920 589760538 831467447 668964848 39220584 835212499 292972503 979750308 801623766 686884353 196106606 174335822 797746066 140725908 103733806 162904272 650697444 535533605 511330454 750978759 900796599 866337119 206036522 396632533 151364594 694954883 367026304 775682536 632402794 711455867 23973553 459617527 674485068 554242697 512614298 592981604 953882020 938456692 242530683 812044550 93478833 172382592 259646582 77685914 738855203 964902255 570764323 557710104 687988023 969494113 23973553 485509833 67700412 451521521 862254110 196460706 538025980 539035187 600441802 399037712 748408317 152314280 864016134 694954883 72820570 627110568 575023903 781246194 39220584 597784477 567948101 451551269 315747769 307403622 513440742 984047482 43970470 778123726 740340897 264297813 190979155 485262404 306258744 582273012 306607837 896072909 289736829 559957428 788737791 969494113 567343883 172894131 40448245 557710104 816971086 934824360 610447918 47349911 332834875 808614164 209789164 276676140 511330454 531135820 554222239 112390393 598543708 888259120 922706719 727578179 753419354 311808379 396806189 972710252 525347105 79523589 877088774 850484222 539957336 711532060 938140278 485063015 215977916 885353274 429277230 812044550 927806038 163229392 638516505 764459345 966131311 647733367 926045944 968755777 966131311 808614164 465697134 249820698 210621083 627110568 802009078 812414090 633587956 404152565 128188331 175507355 623398671 829614460 74587532 352092606 133739154 509664709 540394532 573449906 464130920 186244437 922858580 167276070 215977916 251367294 103669472 79523589 585165457 249820698 888553258 498045048 830619816 264100442 29069209 531333917 857535330 114409323 39220584 55018341 128188331 592970093 840130613 282751746 540976336 103219970 982353486 338312978 979740237 995876182 103669472 400218902 884059813 408032939 641635851 664041213 884072178 859168292 77819776 872434540 831467447 250832323 152618584 134971740 539957336 842970782 786380583 376974209 271484655 972710252 831467447 165821462 311613451 359859765 966131311 852755974 511330454 79523589 60750487 299994808 488295044 140725908 407091770 733642252 878442641 456137963 603931167 896072909 152243323 36265302 702364434 635302209 837690635 607760956 827311105 307060809 797746066 420636144 949084393 88335614 209789164 387703244 214244685 896029805 82689280 2379379 125829791 98231977 722768643 912948600 877088774 884952974 884072178 485262404 429277230 781242822 926045944 79523589 151364594 812044550 746992914 910818482 351424753 408032939 177689820 698320352 626932919 850484222 721418370 299462930 632014852 359859765 966131311 604181881 683406807 162904272 344876805 566554997 82689280 577673184 695599688 630629857 637657473 887548285 854969794 170941326 567948101 225858850 49317804 55018341 991073887 220576148 774489082 87392830 788737791 896072909 462762217 187104147 209789164 925555858 322974842 965948435 705304879 800460688 299113502 719601437 942999703 577673184 269911067 711532060 210621083 835198840 567343883 590918818 154538466 29473993 705548145 729868696 633573519 36055646 38844979 522663253 918225489 931005739 293192373 300892929 797746066 405444604 38338132 981996224 152618584 866568903 408395896 218611070 492009082 989729323 575895835 400178823 768561257 577673184 886149363 298050322 151506993 699733109 424594759 850484222 663971090 299462930 275202504 334211676 290117216 607760956 358401766 209497607 854969794 708046990 305990981 757709512 932584021 476912096 177689820 220576148 315747769 664041213 893019475 20148474 660765062 463496366 24188768 708046990 748408317 989729323 268759041 806792339 840130613 134801439 567948101 232177196 559014304 983373150 154538466 870201182 944068218 737945381 745200166 167276070 632402794 485509833 548748527 160287690 132556595 852755974 328462418 604881661 567774282 889608806 492009082 858798711 269911067 860708299 788737791 597784477 940188502 66490779 678884863 446968233 806664207 79509313 28363157 587179274 770993588 10369081 99294732 934824360 103733806 328764419 303230482 138442062 950497221 24089615 151506993 114409323 900796599 330205547 162062292 853903669 721418370 195019158 215977916 424974082 490344724 718980624 738612855 535533605 949084393 885141769 269911067 394791153 683406807 624819674 626932919 520071928 518384931 515426984 633573519 969494113 610447918 451521521 471393875 968755777 490344724 223299794 109369069 835212499 174140940 737945381 210621083 775682536 572588387 299462930 275349681 464444922 886149363 36265302 174140940 630977998 145559297 676975489 746092812 970911538 941586175 978947655 432089082 764116955 31215478 496698204 295606018 788118407 860377902 218611070 126695727 735710261 266213579 884952974 806664207 4519262 623398671 829983432 633587956 570796148 630201811 371179314 430284321 378961655 115509283 754133002 799588075 667844649 949084393 134971740 306607837 907721720 938140278 186244437 773781000 570796148 888553258 10369081 244528344 733642252 489612980 978947655 754580366 995876182 982416551 394791153 637657473 687055288 547547687 694954883 448262245 581831913 776820092 557710104 710224239 556619020 138393155 739696834 623398671 426814174 40448245 306597948 600441802 413592826 982370833 63192647 31215478 757709512 209789164 29473993 255644658 601740259 303230482 446968233 654830523 488788762 628523361 656191811 632402794 970320952 954227928 641231120 202477791 732559957 893019475 36265302 547547687 496698204 679463383 896029805 1926282 994587826 525347105 136412292 196106606 509370562 462762217 220576148 464130920 413592826 407510599 630977998 553191189 49614749 455539394 130160246 932584021 942899938 451817798 942866882 994877696 781242822 886149363 193515742 927806038 662972501 583924389 427184372 547547687 485509833 465759767 237172271 514650194 812044550 776352608 885353274 857535330 969494113 575023903 790270533 738612855 40131409 918225489 87392830 553191189 349644605 577970627 955730659 363976852 735891721 824770361 592981604 864016134 792846009 719307635 896072909 270237875 159828635 633573519 775682536 633587956 378961655 740340897 393120342 953882020 543945175 242186770 629101079 332834875 456137963 945394518 7807006 804406873 708046990 162062292 266583970 562773407 750750593 115090276 443960759 740882715 853903669 115090276 587179274 321628921 719601437 533455280 708094860 152523810 776835194 654830523 56927881 887794841 984050047 738855203 334211676 481894295 179991869 465697134 942899938 152523810 241184545 979740237 630238886 31615284 515426984 814662325 10369081 938140278 907095826 575023903 162904272 433686203 516175014 757850417 972710252 432089082 764459345 230662076 20148474 242186770 315297566 322974842 726620654 946612927 939725993 888699423 121069546 768561257 889608806 215981255 459452716 585165457 451521521 525347105 396138845 38844979 103219970 581063820 962430008 47290536 858798711 991073887 87392830 922706719 437743643 788737791 943793512 645094664 682170984 953882020 729868696 882364001 393120342 98824830 49948206 138393155 262406489 438183310 225771141 846351340 325554372 884072178 53966525 745200166 882804101 77819776 727578179 433686203 397928982 641635851 119279869 846351340 49614749 532803593 971549242 917452919 885353274 688577702 459617527 932584021 630629857 855636134 767839638 763431295 324986193 553191189 218611070 304621545 721769014 247006479 635302209 650990283 246221518 117931902 249670598 214244685 306597948 617908997 806744033 830619816 515426984 47290536 858040709 295366548 896072909 67831588 36055646 412979540 962430008 82689280 15903366 806664207 520071928 190929591 387703244 128702236 313272965 862254110 566125822 808866527 378961655 41538784 172894131 738855203 213097363 598426014 931005739 72820570 531333917 344620844 285947848 202477791 207442482 322974842 620243558 292696118 376448548 64420967 918521256 827311105 2076768 927806038 808838846 816971086 79523589 247221668 607041944 967417280 613596687 917795074 264297813 971894015 267829614 464130920 498045048 83066601 953267424 305990981 678474526 47290536 764116955 209789164 509144872 893019475 866337119 771321738 522663253 814662325 494336936 40448245 152314280 956286779 874297853 641635851 787269565 13112382 771803404 298727845 937158597 126695727 993091440 83066601 806792339 581063820 288072509 539381059 1736950 941586175 396632533 305990981 618355033 80415088 324129364 886917295 962073361 10475035 937158597 691982506 983113723 979740237 850484222 715779797 852107700 947413305 37275245 215981255 983373150 430284321 251367294 471393875 81337657 770594967 458363994 773781000 767187616 24188768 601740259 538810384 299462930 695599688 160287690 73848009 288873549 151364594 511277493 958668995 459617527 885549757 2076768 99294732 943235508 923927991 907721720 39220584 800460688 177689820 800460688 131323888 546141085 681765297 635302209 152866011 667844649 247221668 298050322 982416551 604181881 575895835 587179274 527654256 56927881 40448245 866568903 135975430 831241130 568104980 812044550 533455280 858040709 858127225 713146141 125829791 792846009 328462418 754133002 56154381 960796073 140129038 514768035 917452919 494336936 568104980 205387898 780870754 369306500 117931902 462394151 956815883 121069546 590208882 831241130 598543708 635302209 656623172 137529801 967417280 247822207 1926282 248642173 133739154 98231977 598543708 298050322 843005594 352092606 955501918 750750593 888699423 182214511 503666498 310726569 138393155 942899938 490344724 806792339 598543708 604181881 824770361 885647994 305990981 789617647 99294732 750978759 305068796 307403622 284588557 550322314 538810384 789617647 885995802 140725908 201717402 193515742 201717402 182214511 129724737 746394036 40448245 287239117 751925989 49614749 754580366 27735709 638516505 874297853 538810384 66490779 626932919 60017144 351424753 48746678 757850417 960796073 203331888 853903669 211958450 324129364 548748527 556619020 922858580 708046990 489612980 163229392 259646582 37275245 941586175 117210451 138393155 602832600 152243323 315297566 851400664 978947655 936312210 51457589 242028021 838803091 284588557 251367294 251042004 757709512 98824830 205387898 702364434 325554372 462762217 249670598 135975430 87392830 763431295 938456692 992001870 831241130 780870754 287768226 778074990 433921335 662421393 912948600 553191189 140551765 858127225 543945175 203331888 476912096 465759767 786320493 438183310 939725993 290117216 334932282 247006479 852604705 814295984 179981178 736237188 744008188 210621083 249820698 638516505 916956968 652018277 509019925 900796599 792846009 769327548 527595027 190979155 498045048 128188331 145885851 64420967 771803404 956286779 726950461 266213579 15903366 583924389 195733178 923927991 485063015 904771946 446968233 103669472 48746678 678884863 775682536 295606018 81553943 567948101 746394036 98824830 638790258 407510599 732559957 843005594 285947848 774489082 686884353 156817178 767187616 807117750 338929165 60750487 327773233 802009078 405444604 465759767 943235508 98287438 983373150 93478833 995876182 162062292 172894131 723661847 739696834 688534928 223299794 326469359 790270533 946916156 451551269 31215478 1736950 917452919 735891721 251042004 324129364 688534928 554242697 597206610 762749463 351424753 4519262 60750487 522663253 548748527 858798711 489130642 992169078 455539394 458156391 715779797 388085842 518384931 683621666 275349681 548964093 196106606 874297853 255644658 853903669 722768643 990121035 215774690 812414090 334299650 37275245 688534928 853170454 645094664 629101079 215774690 835212499 598543708 548964093 944068218 866337119 331638088 338631458 926045944 207442482 827311105 647733367 50241607 698320352 195957995 557710104 99294732 962430008 533864165 2575238 261683638 937158597 982370833 112390393 876868627 554242697 592639233 782533040 302151126 68748842 602396426 776835194 511330454 566125822 926045944 781242822 151506993 296751278 77819776 735710261 292696118 186244437 193648030 896072909 489130642 307060809 401452903 589760538 583924389 829983432 838655651 174862116 663971090 121069546 303230482 338929165 72820570 925555858 663670886 778123726 247221668 382904427 932584021 601740259 660765062 507016471 292972503 872434540 412979540 566125822 703490607 808838846 546679009 852107700 628523361 613596687 719307635 853170454 830619816 170941326 215977916 315297566 444897967 800460688 581063820 324986193 774489082 969494113 430101007 47349911 533864165 668964848 38844979 667313812 532803593 733642252 738612855 727578179 375066210 516175014 944068218 81553943 430088921 175060805 490344724 602832600 208625324 488788762 430284321 117210451 308142020 190323279 302151126 896072909 50241607 515426984 490344724 739696834 129724737 160287690 448262245 225858850 862254110 397928982 478351140 207442482 882364001 143200457 152618584 554242697 247841801 494336936 927806038 587179274 268759041 711532060 31615284 352092606 768561257 744008188 610447918 288072509 723661847 989729323 525347105 437743643 683406807 810021050 457149478 764459345 270237875 426814174 696443558 114409323 760231333 114409323 950497221 990121035 123073176 515426984 640925332 79509313 656623172 778123726 884072178 262406489 567774282 963141978 21190596 582273012 598426014 196460706 420052652 979750308 940188502 527595027 142903358 420636144 465759767 315343704 722768643 942866882 331638088 405444604 917452919 761330904 412979540 997329398 228290502 334932282 913521589 579757115 540976336 940381563 641635851 78775552 186285312 360743135 956815883 262406489 864016134 52243955 181668423 241184545 876868627 931005739 417074904 577673184 533864165 315297566 93478833 817743547 922706719 327773233 628523361 448881532 653201202 485509833 944068218 174862116 1926282 581831913 321628921 390275103 145559297 570796148 548748527 408032939 827311105 349644605 780870754 405444604 430101007 77685914 736624310 509019925 209789164 607041944 592639233 441621000 215977916 182214511 700560235 408032939 275349681 831380531 835339516 866337119 638516505 38085353 862177563 137529801 837690635 732245352 484158080 907095826 366854683 630238886 499057158 836376015 328462418 315297566 804406873 88335614 98824830 136412292 770594967 106790696 230662076 252962990 511330454 888259120 979740237 829983432 125204206 60017144 850386354 390275103 705548145 249670598 202477791 287768226 67700412 98231977 305990981 942866882 757815664 535533605 949084393 382904427 251188854 739696834 691982506 664041213 215774690 307403622 770993588 854243215 234980621 369306500 186285312 476912096 210621083 931005739 512614298 209497607 687988023 918521256 417074904 338312978 480361743 715957434 268759041 250749017 681765297 786320493 40656291 866568903 289736829 711532060 492009082 732559957 518384931 248642173 628523361 718980624 502849508 953267424 600441802 817743547 351424753 338312978 455539394 896072909 31615284 566554997 900796599 324129364 251188854 939725993 429277230 179991869 904800517 732245352 539381059 686884353 264750083 451551269 94279561 788118407 736237188 7807006 704431513 462394151 567774282 735891721 771321738 682170984 511330454 735710261 29069209 140725908 1926282 160287690 982416551 485262404 196106606 226492467 975337465 713146141 806664207 965948435 289736829 87392830 652018277 702745028 195957995 623206361 247841801 49948206 242028021 522663253 760370490 694954883 407510599 264100442 568104980 851759377 305990981 53966525 688534928 939725993 292972503 732559957 896571061 262406489 601630030 2379379 753419354 87392830 947413305 310726569 214244685 66490779 242028021 49948206 326469359 19911869 138393155 889608806 480361743 835212499 305068796 727578179 886917295 137529801 623398671 19715614 949084393 167276070 448262245 137529801 295366548 682170984 451817798 174862116 874124920 539035187 464130920 334932282 652018277 790270533 148087911 638790258 438183310 872434540 814295984 852604705 567343883 531135820 152243323 195733178 293192373 546141085 602396426 984047482 424594759 757709512 278160655 812414090 587469038 613596687 40448245 781242822 270237875 852107700 982370833 907721720 913521589 1736950 488295044 629101079 448262245 711455867 211958450 616057762 855636134 829983432 43970470 112090095 43970470 186244437 650697444 733642252 28363157 437743643 917452919 963141978 201717402 836376015 949084393 726620654 922858580 170941326 778074990 33511708 920628541 250885472 215977916 689757867 247006479 962430008 465759767 121069546 712346140 778123726 424594759 515426984 877167702 910818482 195957995 713146141 67700412 764459345 366854683 106790696 23262398 708053570 152866011 630629857 465759767 256866745 770594967 359859765 488295044 134971740 663670886 495854210 884072178 726950461 206036522 81337657 958668995 451521521 704431513 990121035 94279561 535533605 484158080 296751278 740882715 146573202 513440742 136412292 835339516 266583970 60750487 981996224 138393155 526944836 464130920 732559957 471393875 47529701 214244685 433921335 43970470 396937914 242186770 990121035 331638088 815123402 814662325 718980624 485153920 387703244 581063820 63192647 877167702 441621000 302151126 40131409 770993588 806792339 743614603 635302209 991073887 506178629 80415088 112390393 585165457 790270533 922706719 577673184 553191189 506178629 489130642 572465104 456956861 77685914 129724737 983373150 215981255 249820698 704431513 858798711 840075867 81337657 407510599 981996224 944068218 806744033 915330573 726620654 274113481 991615550 769327548 146573202 334299650 196460706 539381059 912948600 931966477 896029805 219054502 250832323 254203892 136412292 926044257 282751746 80485362 140551765 511330454 338631458 284588557 866568903 809429735 282751746 303230482 315297566 206036522 256866745 358401766 306597948 602396426 315343704 626833449 953267424 885995802 400178823 321628921 66490779 230662076 53195413 259646582 140725908 630775839 505061211 247006479 314069534 295366548 722013570 687988023 940381563 56154381 592981604 575023903 195019158 946612927 781242822 567948101 405444604 203331888 971549242 456956861 307060809 80415088 20148474 654830523 174862116 979740237 571019028 274113481 630977998 518384931 535533605 626833449 103219970 135975430 729868696 43970470 63192647 23973553 851759377 367026304 835198840 315747769 806744033 931640418 970320952 950673785 788118407 101231409 749497174 830619816 207442482 498840912 130160246 428572243 737945381 53525809 112390393 50241607 223299794 228290502 854243215 358401766 68748842 129724737 778123726 743614603 451521521 946916156 757709512 619842427 404152565 532803593 592970093 966131311 729868696 208625324 778123726 757850417 771803404 332834875 689757867 641635851 629101079 152243323 361002681 702364434 441621000 546679009 408032939 264750083 587179274 945394518 938080232 783513992 53195413 465759767 997329398 201717402 853170454 824770361 485262404 637657473 400218902 947413305 943235508 431406787 328764419 944068218 516175014 264750083 792846009 878442641 38304068 293192373 29473993 562773407 514768035 652018277 426814174 13112382 387703244 259646582 63192647 587469038 550322314 893019475 48746678 602396426 160287690 292696118 299994808 610834602 775682536 244528344 762749463 971894015 662972501 932584021 667844649 32806834 522332929 215981255 996943901 489612980 965948435 683406807 337153847 712346140 858040709 768561257 47529701 274113481 931005739 93651148 394791153 32075030 459617527 681765297 943235508 650990283 916956968 736624310 195019158 430284321 932715562 136384659 172382592 547547687 812044550 38338132 451521521 769327548 56927881 425392410 632378665 663670886 250832323 471393875 981996224 261683638 978947655 900796599 522332929 539381059 543865019 982370833 749497174 53226850 874297853 38338132 311808379 846351340 376448548 681930584 38304068 354807942 829983432 575895835 349644605 286037808 992169078 661321016 604181881 538810384 378961655 32806834 630238886 56154381 721769014 645094664 526944836 47290536 160287690 115509283 32954995 888553258 32954995 862254110 48746678 956815883 570796148 783513992 616057762 1926282 496698204 109369069 87392830 929504680 163229392 587469038 112390393 721418370 636434256 992001870 172894131 140129038 174335822 331638088 310726569 237389399 581831913 885995802 885141769 203331888 134801439 367026304 307403622 559014304 817743547 73848009 396632533 745200166 942899938 295366548 960543625 913521589 121069546 251188854 272303478 152523810 817743547 363976852 620243558 598543708 866568903 722768643 539035187 882364001 718980624 242028021 616057762 797746066 20148474 540976336 276676140 433686203 250832323 860377902 361002681 332834875 970911538 778074990 744008188 703490607 248642173 876868627 676975489 654830523 179981178 547547687 866337119 284588557 360743135 947413305 49948206 896571061 310726569 193648030 971549242 407629453 860708299 570764323 808838846 151364594 616057762 23262398 907095826 840075867 247822207 408395896 896029805 888699423 382904427 604968568 53195413 228290502 88335614 67700412 249670598 949084393 266583970 774489082 463496366 955501918 940381563 577970627 727827821 769327548 507016471 688534928 854243215 795549341 995876182 503666498 589760538 303230482 829983432 215977916 686335042 653201202 885353274 702364434 451521521 488295044 35128915 710224239 546141085 481894295 841210236 228290502 960543625 40656291 136412292 947413305 997329398 885995802 36265302 268759041 162904272 760370490 172382592 888699423 749497174 344620844 496698204 956286779 426814174 10475035 531333917 619842427 554242697 401452903 902464469 422532994 582273012 311613451 220576148 208625324 812414090 771321738 587179274 888553258 962073361 705304879 718980624 489130642 119279869 763431295 771803404 950673785 136412292 769327548 60017144 498840912 990121035 600441802 885647994 954677909 287239117 931640418 400178823 354807942 686335042 255644658 581831913 448262245 721769014 769327548 81553943 234980621 965948435 770594967 831380531 674485068 215289803 994877696 103219970 746092812 299462930 675472009 10369081 407091770 98231977 804406873 140725908 82689280 514768035 234980621 942866882 760370490 299994808 774489082 369306500 753419354 902464469 53226850 225771141 304621545 262406489 351424753 602832600 289918211 800460688 936312210 506178629 887794841 106790696 587469038 944573659 456956861 560327459 296305836 932715562 457149478 559957428 448262245 607760956 123073176 630977998 351424753 420636144 769327548 604881661 152866011 1736950 430101007 771803404 753419354 835198840 203331888 359714925 591292508 78775552 80485362 937158597 115509283 155241439 305068796 808838846 363976852 559957428 678884863 646710523 927806038 764116955 503666498 175060805 131323888 140551765 807117750 764116955 275202504 851829959 299113502 907095826 259646582 408032939 10475035 767187616 858127225 175060805 60750487 393120342 538025980 942866882 31615284 887548285 831467447 287239117 136384659 165821462 632402794 371179314 488295044 160287690 722768643 535533605 451817798 225771141 982416551 338312978 738612855 758889515 878442641 587179274 203331888 907095826 786380583 983113723 816971086 247822207 715779797 668964848 154538466 476912096 966131311 35128915 457149478 937158597 878442641 968670974 921198791 220576148 344876805 968670974 887794841 902464469 215981255 573480571 824770361 337153847 77819776 556619020 502849508 664041213 21190596 232177196 247221668 970911538 691982506 143200457 15037608 179991869 837690635 478892468 424594759 78775552 80415088 390275103 332834875 997329398 831467447 7807006 786380583 10369081 703514531 287768226 215774690 33511708 366854683 371179314 304621545 618355033 358401766 786320493 946612927 674446970 743614603 310726569 824770361 196460706 24188768 939725993 936312210 220576148 922858580 682170984 838655651 103219970 956286779 571019028 904800517 556619020 190929591 808614164 547547687 117210451 177689820 79509313 538025980 63192647 874124920 520071928 887794841 711532060 745200166 285947848 93478833 397928982 896571061 256866745 650697444 511277493 567948101 337153847 533864165 60017144 408395896 443960759 251188854 860708299 366854683 767839638 736237188 975478549 860477160 587179274 430101007 686884353 208625324 582273012 920721173 623206361 42657625 907721720 98824830 109054120 471393875 792822959 840075867 874297853 219054502 49614749 129724737 2379379 900116034 296751278 290117216 638790258 117931902 874297853 152243323 249820698 211958450 836376015 538810384 298050322 278160655 995876182 417074904 267829614 628523361 78775552 994877696 325554372 685702028 4519262 780870754 256866745 430284321 689757867 296305836 708094860 831467447 337153847 546679009 426814174 49317804 182214511 298727845 991615550 203331888 87392830 264750083 851829959 763431295 175060805 215792516 138442062 546679009 750750593 801623766 788118407 656623172 546141085 484158080 963141978 757815664 53966525 254203892 885647994 888699423 264100442 78649514 932715562 304621545 918521256 632014852 792822959 878442641 970911538 917795074 138442062 41538784 989729323 401452903 507016471 251042004 550322314 177689820 458290565 982370833 36055646 921198791 955730659 688534928 29473993 407091770 152314280 41538784 662972501 862177563 771803404 328462418 918521256 514650194 940381563 298727845 962430008 804406873 842970782 101231409 718980624 489612980 507016471 425392410 993091440 101231409 896072909 292149520 396632533 367026304 330205547 586446680 314069534 538025980 737945381 938140278 750978759 581063820 970320952 922706719 390275103 824770361 246058339 331638088 559957428 597206610 757709512 827311105 984047482 715779797 195019158 860477160 688177128 257214051 607965234 770993588 539035187 292696118 282751746 299113502 140551765 955501918 63192647 936312210 515426984 876263470 140551765 498840912 98231977 202477791 787269565 956286779 505061211 257214051 715957434 407629453 313272965 21190596 727827821 562773407 694954883 886917295 138442062 675472009 554242697 525347105 885353274 40656291 121069546 547547687 996943901 363976852 579757115 247234349 625664180 513440742 841210236 562773407 298050322 215792516 937158597 306607837 870201182 306607837 494336936 950673785 7807006 128188331 174335822 660765062 780061015 401452903 38304068 269911067 252962990 956815883 352092606 31215478 296751278 31215478 960796073 80415088 570796148 568104980 378961655 602396426 256866745 152618584 979750308 688577702 602832600 626932919 52243955 954677909 885000402 396743027 390793037 254203892 51457589 438183310 531135820 375066210 539035187 430284321 775682536 638516505 841780337 306607837 860708299 154538466 775682536 679463383 678474526 53226850 63192647 562773407 632378665 598543708 315343704 242028021 853903669 208625324 452156279 956286779 463496366 462762217 767839638 585165457 782533040 577970627 209497607 407091770 237172271 448262245 250885472 133739154 400218902 183440003 767839638 921198791 495854210 945394518 38085353 332834875 548964093 311613451 299994808 640925332 128450928 991073887 390793037 633587956 315343704 994877696 962430008 678884863 792822959 32075030 983373150 703490607 403519778 334299650 860708299 407510599 668964848 311613451 854243215 126695727 396138845 268759041 311808379 193648030 531135820 559014304 938705675 862254110 311808379 190979155 404152565 230662076 249670598 619842427 592981604 251188854 835198840 80415088 207844781 886917295 739696834 660765062 668964848 663971090 601740259 846351340 522332929 645094664 300892929 103733806 285947848 874124920 193515742 430284321 250832323 814662325 627110568 451817798 330274784 650697444 625664180 428572243 140725908 857535330 874297853 927806038 361002681 936312210 618355033 751925989 2076768 862177563 36055646 478351140 520071928 332834875 994587826 292972503 408032939 152866011 38304068 809429735 209497607 230662076 960543625 920628541 942866882 471393875 582273012 572588387 182214511 966683628 459452716 942999703 408032939 858127225 98231977 824770361 515426984 710224239 688177128 882364001 630629857 306607837 298050322 723661847 462394151 674485068 960543625 488295044 509144872 554222239 646710523 860477160 570796148 598426014 87392830 6720560 262406489 293192373 4519262 538025980 764116955 885995802 989729323 525347105 426814174 633573519 699230813 31615284 399037712 286037808 155241439 804406873 729868696 375066210 907095826 788737791 55018341 633573519 778123726 128702236 2076768 922706719 485063015 23262398 249820698 886917295 604881661 559014304 835198840 396050095 970320952 940188502 939725993 801623766 352092606 807117750 179991869 302151126 698320352 567948101 179981178 255644658 835212499 982370833 910818482 47290536 697742034 219054502 427184372 958668995 250832323 763431295 313272965 958668995 267829614 539957336 1736950 190929591 509144872 954677909 708046990 587469038 63192647 760231333 459452716 945394518 764116955 448262245 990121035 344620844 882804101 202477791 923715439 922858580 786320493 289918211 780061015 407629453 852604705 610834602 103219970 918225489 33511708 23262398 237172271 293192373 884952974 242530683 134801439 586446680 140551765 926044257 437743643 152866011 996943901 860377902 934824360 966131311 566125822 763431295 589760538 610447918 213097363 877088774 697742034 247841801 218611070 979740237 539035187 703514531 708053570 123073176 981996224 396050095 874297853 954677909 978947655 548748527 896072909 396806189 978947655 275202504 616057762 955501918 686335042 56154381 307060809 363976852 29473993 949084393 51457589 969294148 912948600 688577702 19911869 28363157 106790696 332834875 369306500 806664207 735710261 567343883 613596687 296305836 397928982 514650194 172382592 278160655 992169078 306258744 870201182 215977916 581831913 854969794 889608806 862177563 32954995 430088921 400178823 98824830 625664180 257214051 602832600 126695727 970320952 129724737 923715439 396050095 859168292 663670886 172382592 538810384 128450928 562773407 349644605 247841801 918521256 128702236 174335822 911302173 970320952 586446680 251367294 67831588 478892468 125204206 441621000 286037808 859168292 586446680 968670974 43970470 806792339 663670886 426814174 151364594 51457589 125204206 887548285 753419354 953267424 457149478 721769014 23973553 209497607 687988023 330205547 640925332 186244437 431406787 664041213 683406807 841780337 931966477 815123402 251042004 174862116 835339516 393120342 548748527 942866882 896571061 163229392 586446680 667844649 471393875 764459345 695599688 718980624 499057158 205387898 702364434 446968233 776820092 667844649 583924389 241184545 681765297 667313812 936312210 140725908 538810384 433921335 702364434 885647994 145559297 514768035 553191189 604181881 123073176 641231120 586370291 682170984 874124920 854243215 723661847 179991869 814295984 77685914 430101007 360743135 196106606 299462930 234980621 995876182 431406787 630629857 911302173 182214511 344620844 726950461 663971090 853903669 570764323 572465104 502849508 496698204 78649514 250885472 407091770 715957434 142903358 806792339 269911067 7807006 215792516 66490779 681765297 288072509 837690635 620243558 846351340 47349911 67831588 130160246 602396426 378961655 780870754 207844781 893019475 174862116 328462418 889608806 499057158 938080232 242530683 688177128 715779797 121069546 559014304 478892468 854902633 842970782 424594759 55018341 344620844 485509833 77819776 163229392 358401766 979750308 663670886 711532060 444897967 237172271 888699423 152314280 304621545 620243558 663971090 338631458 444897967 829614460 638516505 327773233 15037608 870201182 982370833 10369081 215981255 812044550 652018277 993091440 56154381 376974209 585165457 836376015 994877696 616796881 885549757 739696834 190929591 342116147 735696627 810021050 13112382 853170454 23262398 889608806 753419354 636434256 367026304 299462930 979740237 735710261 270237875 458363994 23262398 689757867 598426014 267829614 538025980 607760956 242530683 338929165 306607837 737945381 559014304 249820698 982353486 972710252 290117216 664041213 884072178 630238886 656623172 170938835 428572243 353964006 922858580 250832323 295606018 514768035 266213579 376448548 429277230 325554372 465759767 160287690 363976852 757709512 21190596 19715614 598543708 496698204 700560235 629101079 626833449 590918818 148087911 885353274 60750487 342116147 660095934 399037712 152523810 780061015 740882715 218611070 851400664 885353274 140129038 252792947 308142020 806792339 525347105 298050322 597206610 750750593 807117750 390793037 492009082 853903669 652018277 739696834 471393875 767839638 705304879 726950461 153196022 520071928 721418370 117210451 681765297 746394036 247841801 978947655 234980621 349644605 568104980 264297813 760370490 938705675 136384659 815123402 396743027 789617647 481894295 629101079 151506993 522663253 49317804 167276070 375066210 15903366 915330573 376974209 109369069 597784477 123073176 902464469 242186770 554242697 926044257 246058339 295366548 996943901 696443558 267829614 93651148 937158597 542382913 866337119 559014304 858040709 722768643 232177196 830619816 98231977 953882020 726620654 846351340 215289803 776352608 604881661 242530683 968670974 286037808 128450928 633573519 711532060 1926282 836376015 154538466 607965234 490344724 155241439 946916156 531333917 98287438 646710523 991073887 711455867 910850066 711532060 431406787 896029805 101231409 186244437 855636134 324129364 117931902 888259120 431406787 942899938 966683628 51457589 540976336 152314280 438183310 526944836 514650194 739696834 40656291 764116955 921198791 618355033 709613471 136412292 177689820 352092606 941586175 607041944 896571061 944573659 966683628 448881532 585165457 328764419 887794841 112090095 809429735 196460706 540976336 134801439 103669472 630238886 203331888 815123402 955501918 872434540 954227928 456137963 98824830 616796881 255644658 10369081 527654256 330205547 931640418 744008188 598426014 727578179 465697134 349644605 109369069 582273012 244528344 452156279 210621083 940381563 131323888 187104147 73848009 60017144 23262398 300892929 206036522 485063015 115090276 630977998 289918211 732245352 289736829 170941326 117931902 727245017 598543708 571019028 797746066 249670598 219054502 613596687 275349681 330205547 760231333 983113723 148087911 218611070 278160655 885000402 366854683 650036494 428572243 853903669 396743027 604881661 186285312 77685914 757850417 143200457 695599688 182214511 917452919 241184545 484158080 722013570 344620844 77685914 417074904 858040709 214244685 996943901 257214051 424974082 864016134 51457589 67831588 539035187 750563611 872434540 637939784 4519262 874124920 571019028 242530683 573449906 375066210 624819674 638516505 121069546 610447918 812044550 269911067 806744033 138393155 978947655 303230482 625664180 396806189 426814174 691982506 806792339 177689820 754133002 13112382 213097363 80415088 250885472 366854683 722013570 595030753 359714925 244528344 424974082 770993588 98231977 854969794 592970093 31215478 749497174 709613471 786320493 292696118 266583970 746992914 87392830 814295984 371179314 295606018 66490779 705304879 838803091 174140940 420636144 757850417 106790696 525347105 787269565 808866527 972710252 801623766 290474734 840075867 390793037 375066210 250885472 750563611 566554997 780870754 984050047 617908997 942899938 802009078 788118407 926045944 24089615 911302173 969494113 31215478 687055288 735696627 247822207 748408317 607965234 966131311 858040709 896571061 970320952 896571061 522663253 884072178 317751260 992001870 570796148 770993588 413592826 269911067 496698204 302151126 891279504 430101007 556619020 525347105 382210484 630775839 311808379 770993588 781242822 527654256 408032939 830619816 963141978 746992914 186244437 296305836 307403622 31215478 251367294 247006479 514768035 920721173 475344103 975337465 618355033 40448245 968755777 546679009 220576148 286037808 858040709 361435434 38085353 201717402 20148474 860477160 979750308 152866011 852755974 950673785 40131409 10475035 939725993 78649514 49614749 587469038 172382592 206036522 159828635 274113481 711455867 247234349 179981178 808866527 858798711 367026304 866568903 208625324 965948435 492009082 498045048 715779797 522332929 183440003 225771141 878442641 170938835 67700412 568142039 757815664 170941326 681765297 205387898 539381059 55108095 351424753 896072909 306258744 353964006 275349681 616057762 753419354 396937914 807117750 371179314 802009078 306597948 553368896 462394151 190979155 786320493 567343883 630629857 618542887 733642252 366854683 896029805 585165457 726950461 50241607 488788762 31615284 299462930 843005594 283321520 678884863 360743135 745200166 758889515 42657625 960796073 679463383 767187616 140129038 441621000 738612855 810021050 321628921 394791153 678884863 557710104 904771946 325554372 640849273 989729323 196106606 795472528 795549341 733642252 860477160 437743643 140129038 10369081 857535330 187104147 598543708 851759377 214244685 960796073 177689820 371179314 637769046 923715439 776352608 307403622 152243323 891279504 98824830 566554997 885995802 550322314 736624310 994587826 862254110 806792339 660095934 559957428 628523361 446968233 401452903 831241130 177689820 155241439 640925332 896029805 15037608 119279869 420052652 315297566 771321738 852755974 38844979 462394151 567343883 711455867 82689280 792846009 286037808 588034909 77819776 781242822 738855203 382904427 562773407 991615550 186285312 459452716 214244685 522663253 547547687 163229392 904771946 882804101 234980621 361002681 637939784 729868696 21190596 962430008 590208882 40131409 448262245 103219970 710224239 193515742 885995802 19715614 15037608 459617527 806664207 106790696 344620844 88335614 911302173 754133002 559014304 396138845 361435434 697742034 595030753 607041944 430101007 775682536 949084393 729868696 72820570 330205547 691982506 964902255 884059813 842970782 457149478 744008188 862177563 624819674 633573519 808838846 740340897 27735709 214650974 405444604 814295984 307060809 451817798 459617527 247234349 556619020 568104980 446968233 738855203 514768035 401452903 249670598 814662325 694954883 163769090 882804101 533864165 715957434 955501918 165821462 15037608 248642173 942999703 806744033 49317804 664041213 703514531 315297566 489130642 88335614 80485362 737945381 626932919 831380531 540976336 989729323 547547687 650036494 23973553 145885851 786380583 853170454 808866527 918521256 247221668 968755777 911302173 446968233 153196022 571019028 942999703 66490779 780870754 509019925 47290536 683621666 546679009 546141085 321628921 382210484 202477791 735891721 545538425 138442062 430101007 307403622 864016134 387703244 211958450 215052415 38844979 262406489 103669472 376448548 230662076 630238886 632402794 938456692 814662325 757709512 955501918 159828635 420052652 758889515 922706719 119279869 884059813 778123726 64420967 112090095 518384931 872434540 923927991 330205547 196106606 686335042 358401766 130160246 125204206 462394151 738855203 313272965 289918211 942899938 451817798 757709512 562773407 196460706 703514531 831241130 840130613 413592826 955501918 112390393 695599688 727245017 290117216 106790696 586370291 330274784 215792516 106790696 145559297 250832323 838331644 47349911 760231333 5299425 929504680 636434256 457149478 317751260 626833449 449022331 190929591 172382592 590208882 266583970 966683628 866337119 215774690 226492467 254203892 870201182 831467447 462394151 656623172 353964006 645094664 10369081 289736829 916956968 270237875 943793512 295606018 718980624 840130613 390275103 53525809 960543625 979740237 175507355 678884863 616057762 295366548 749497174 422532994 172382592 700560235 405444604 331638088 656191811 922858580 702745028 931086800 932715562 746092812 53966525 808866527 134801439 920721173 781246194 275202504 478892468 763431295 325554372 215792516 175060805 944068218 749497174 196106606 713146141 705548145 713146141 512614298 68748842 956286779 981996224 704431513 808614164 125829791 213097363 900116034 1736950 513440742 160287690 533864165 571019028 840130613 511277493 332834875 306597948 275202504 298050322 109369069 397928982 913521589 789617647 1926282 792846009 640925332 137529801 41538784 299994808 145559297 396937914 958668995 360743135 801623766 604181881 806664207 249670598 275349681 426814174 344876805 458156391 710224239 140725908 688534928 711455867 780870754 808614164 115090276 859168292 366854683 971549242 142903358 597784477 678884863 32954995 678884863 300892929 577970627 776835194 363976852 60017144 633587956 311808379 808866527 891279504 740882715 683621666 554222239 854243215 944068218 587179274 10475035 146573202 840130613 349644605 94279561 923715439 152523810 607041944 47290536 338631458 637939784 485063015 93478833 866337119 773781000 310726569 156817178 506178629 783513992 207844781 857535330 790270533 465697134 288873549 837690635 53195413 512614298 587179274 955501918 249670598 138393155 932715562 308142020 266583970 354807942 991615550 735696627 427184372 953882020 209497607 186285312 498045048 617908997 694954883 932584021 559957428 42657625 388085842 83066601 636434256 601630030 459617527 931966477 382904427 940188502 698320352 83066601 459617527 538810384 427184372 797746066 970911538 136384659 979750308 80415088 989729323 736624310 426814174 553368896 327773233 242028021 767187616 885549757 625664180 816971086 98231977 918225489 330274784 181668423 993091440 653201202 568142039 247841801 885141769 675472009 817743547 743614603 592981604 645094664 81337657 662421393 287768226 451817798 601740259 151506993 267829614 597206610 702745028 525347105 334932282 838655651 334211676 228290502 842970782 56154381 932715562 835339516 699230813 982416551 446968233 289736829 735891721 151506993 338929165 40656291 456137963 942999703 7807006 271484655 531135820 156817178 283321520 254203892 87392830 292696118 325554372 938140278 971549242 38338132 853903669 448262245 607965234 304621545 635302209 429277230 686884353 929504680 638790258 553191189 174335822 407091770 390275103 917452919 750978759 920628541 835198840 917452919 509370562 195957995 522663253 131323888 792846009 911302173 786320493 292972503 697742034 637939784 443960759 183440003 496698204 946612927 49948206 632402794 209497607 242186770 559957428 568104980 896072909 210621083 121069546 837690635 485063015 814662325 543945175 82689280 186244437 126695727 159828635 967417280 248642173 650697444 264297813 502849508 249820698 540394532 463496366 966131311 938705675 499057158 808838846 503666498 995876182 585165457 624819674 966131311 55108095 575895835 140551765 532803593 53966525 532803593 7807006 568104980 287768226 361435434 400218902 626932919 349644605 885995802 213097363 82689280 910818482 637769046 2575238 322974842 247822207 429277230 996943901 190929591 307060809 83066601 109054120 746992914 729868696 674485068 713146141 471393875 689757867 814295984 829614460 654830523 607965234 860477160 590918818 407510599 300892929 334299650 2076768 354807942 400178823 202477791 989729323 275202504 668964848 38844979 749497174 162062292 88335614 219054502 990121035 700560235 353964006 691982506 175060805 269911067 400178823 885549757 688177128 438183310 506919968 23262398 246058339 705548145 276676140 31215478 60017144 125204206 288873549 838655651 397928982 181668423 960543625 830619816 850484222 966683628 79509313 174140940 299994808 696443558 964902255 547547687 851759377 769327548 708046990 827311105 121069546 888699423 841210236 567774282 851759377 481894295 376974209 154538466 451521521 736624310 923715439 103733806 943793512 562773407 970320952 462762217 19911869 431406787 938705675 770993588 267829614 926044257 220576148 835339516 140551765 103733806 307060809 228290502 607965234 702364434 686335042 271484655 776835194 448262245 727827821 703514531 146573202 927806038 907721720 214650974 285947848 551289217 590918818 72820570 939725993 837690635 186244437 982416551 866337119 214650974 313272965 41538784 2575238 645094664 732245352 663971090 112090095 705548145 396138845 786380583 47349911 29069209 2575238 32075030 37275245 428572243 509019925 855636134 667313812 740882715 686335042 592639233 907721720 874124920 195733178 885995802 866337119 125829791 163229392 296305836 165821462 64420967 613596687 230662076 155241439 765027062 650036494 854902633 38085353 920628541 526944836 674485068 159828635 650990283 170938835 489612980 764459345 628523361 136412292 98287438 29473993 954227928 396937914 886917295 405444604 174140940 688177128 802009078 36055646 754580366 462394151 900796599 579757115 484158080 186244437 109369069 446968233 244528344 509370562 591292508 885000402 887794841 337153847 306258744 79523589 586446680 965948435 186285312 382210484 885549757 597784477 882364001 590918818 140129038 130160246 994877696 993091440 991073887 32954995 931966477 841210236 274113481 369306500 259646582 650036494 498840912 836376015 950673785 668964848 931640418 267829614 938140278 506178629 855636134 196460706 190979155 426814174 156817178 19715614 947413305 793291205 471393875 165821462 23262398 19911869 778074990 509370562 396743027 761330904 518384931 35128915 918225489 400218902 568104980 722013570 837690635 174862116 73848009 790270533 966131311 300892929 704431513 996943901 502849508 15903366 259646582 160287690 264408147 7807006 944068218 60017144 955501918 121069546 542382913 761330904 133739154 515426984 652018277 991615550 125204206 324129364 361435434 733642252 630201811 592981604 969294148 476912096 575895835 627110568 568104980 713146141 695599688 872434540 251188854 27735709 979740237 858040709 511330454 852755974 242028021 446968233 125204206 349076114 295606018 509664709 598543708 638790258 950497221 516175014 598543708 509664709 38844979 711532060 864016134 138442062 94279561 618355033 546679009 572465104 538025980 749497174 807117750 427184372 289736829 719601437 640849273 991615550 661321016 786320493 326469359 829614460 776352608 776835194 298727845 718980624 539381059 2379379 255644658 910818482 610447918 520071928 567774282 607965234 956815883 250749017 547547687 787269565 807117750 781242822 679463383 960543625 896571061 754133002 904771946 38304068 462762217 984050047 136384659 674446970 10475035 433921335 177689820 140551765 754580366 378961655 553368896 667313812 788737791 427184372 663971090 359859765 268759041 699230813 126695727 449022331 125829791 981996224 242530683 616057762 618542887 872434540 598543708 134971740 126695727 789617647 760231333 750978759 581063820 601740259 931086800 400218902 29069209 509019925 489130642 607760956 704431513 624819674 598543708 250885472 979740237 19715614 255644658 527595027 926044257 623206361 135975430 944573659 931966477 522332929 136384659 272303478 375066210 458290565 432089082 767839638 946916156 852755974 840130613 464444922 776820092 225771141 678884863 636434256 650697444 15903366 93651148 179981178 920721173 732559957 751925989 795472528 783513992 965948435 152618584 662972501 768561257 186244437 490344724 678474526 760370490 789617647 838331644 601740259 481894295 650036494 539381059 215289803 527654256 459617527 954677909 981996224 696443558 520071928 553368896 250832323 484158080 940381563 234980621 916956968 681765297 708046990 950673785 451551269 750563611 109054120 786380583 972710252 630201811 607760956 31615284 674446970 660765062 394791153 633587956 962430008 152618584 577673184 807117750 979750308 885549757 317751260 387176309 632378665 780870754 627110568 136384659 800460688 770864525 262406489 743614603 616057762 738855203 390793037 448262245 509144872 953882020 829983432 807117750 520071928 641635851 650036494 630775839 708053570 618542887 378961655 128702236 573449906 945394518 629101079 702364434 910818482 6720560 750750593 660095934 349076114 259646582 390275103 407629453 405444604 855636134 968670974 72820570 698320352 234980621 507016471 254203892 991615550 401452903 516175014 610834602 557710104 575895835 969494113 311613451 782533040 512614298 616057762 887794841 749497174 722768643 979750308 10475035 63192647 660765062 175060805 754580366 77685914 920628541 441621000 913521589 943793512 598426014 349644605 242028021 962430008 814295984 559957428 770594967 249670598 626932919 15903366 650990283 79509313 407510599 694954883 49317804 570796148 760231333 775682536 201717402 369306500 553191189 32954995 630201811 276676140 481894295 960796073 332834875 581831913 888553258 882804101 498840912 776835194 148087911 314069534 264750083 996943901 152866011 732245352 691982506 288072509 736624310 829614460 581063820 573449906 763431295 579757115 193648030 923715439 230662076 47529701 145559297 790270533 230662076 989729323 50241607 159828635 396806189 526944836 21190596 780061015 42657625 250749017 710224239 40131409 851400664 249670598 151364594 884952974 911302173 996943901 361435434 232177196 795549341 686884353 966131311 866337119 129724737 559957428 145559297 744008188 135975430 872434540 788737791 175507355 888699423 630629857 850386354 604881661 117931902 349644605 705304879 687055288 304621545 778123726 512614298 288873549 715779797 40131409 538025980 560623000 308142020 330274784 650990283 963141978 430101007 602832600 738855203 719601437 581063820 140551765 757815664 165821462 23973553 607041944 862254110 764459345 745200166 112390393 67700412 746394036 922706719 727827821 750563611 287239117 363976852 885141769 877167702 979750308 547547687 196460706 344620844 282751746 632402794 812044550 886917295 66490779 971894015 397928982 547547687 719601437 583924389 246221518 830619816 495854210 740882715 413592826 610834602 282751746 292149520 931005739 773781000 288873549 862254110 288072509 681930584 938456692 456956861 20148474 457149478 836376015 24188768 433921335 131323888 808838846 712346140 106790696 946916156 607760956 938140278 689757867 38844979 437743643 148087911 140725908 430101007 88335614 586446680 88335614 420052652 829983432 532803593 888259120 41538784 262406489 929504680 462394151 430088921 121069546 586370291 174862116 162062292 63192647 83066601 338312978 654830523 860708299 982370833 568142039 886149363 241184545 215774690 314069534 123073176 795472528 922706719 981996224 548748527 991615550 971894015 369306500 929504680 449022331 922706719 53195413 982416551 852755974 601630030 24089615 575895835 866568903 264408147 458290565 247234349 676975489 38844979 923715439 230662076 330205547 230662076 287768226 862177563 267829614 259646582 79523589 610447918 19911869 678884863 968670974 234980621 78775552 918225489 134801439 538025980 330274784 244528344 885141769 438183310 38304068 592639233 464444922 152866011 842970782 41538784 727578179 857535330 49614749 93651148 51457589 760370490 686335042 174140940 485063015 126695727 971549242 586370291 764459345 304621545 441621000 705304879 190323279 705548145 983113723 511330454 299994808 802009078 396937914 640925332 713146141 511330454 853170454 719307635 88335614 645094664 252792947 838655651 48746678 304621545 514768035 328462418 464444922 778074990 103219970 451817798 276676140 190979155 829983432 931640418 49614749 42657625 505061211 289918211 702745028 632014852 79523589 954227928 509664709 738855203 498045048 433686203 485509833 786380583 330205547 878442641 806744033 590208882 175507355 49317804 248642173 214244685 396937914 917795074 616796881 808866527 29473993 464130920 209497607 735696627 2076768 47290536 792822959 39220584 174335822 152618584 835198840 567774282 218611070 242186770 247822207 80415088 939725993 206036522 49948206 433686203 852107700 738612855 719601437 247234349 359714925 126695727 264100442 795549341 713146141 431406787 485063015 885549757 53195413 344876805 68748842 56154381 337153847 254203892 604181881 109369069 494336936 840075867 299994808 862254110 226492467 295366548 711532060 633573519 287239117 306607837 852755974 776820092 145885851 886149363 852107700 219054502 78775552 407629453 727827821 481894295 984047482 148087911 172382592 152243323 627110568 814295984 285947848 193648030 733642252 148087911 103219970 926045944 708046990 954677909 1736950 709613471 858040709 209789164 858798711 39220584 577673184 214244685 32954995 67831588 853170454 585165457 993091440 857535330 972710252 940188502 146573202 512614298 997329398 663670886 526944836 547547687 739696834 757850417 750978759 675472009 699733109 757850417 330274784 98824830 800460688 854969794 38304068 757815664 531333917 597206610 272303478 429277230 342116147 688577702 746394036 709613471 325554372 835339516 938456692 401452903 352092606 430284321 931005739 274113481 458363994 575895835 812414090 846351340 992169078 807117750 143200457 630201811 744008188 886917295 573449906 679463383 172382592 293192373 130160246 471393875 19715614 774489082 449022331 743614603 388085842 795549341 36265302 776352608 636434256 559014304 509144872 632402794 762749463 760231333 109054120 132556595 764116955 553368896 789617647 640925332 19715614 776352608 408032939 215774690 782533040 270237875 36055646 93478833 2379379 502849508 543865019 433686203 451521521 888553258 711455867 602396426 328764419 971894015 607760956 286037808 266583970 540976336 478892468 918225489 369306500 765027062 923715439 632014852 546141085 311613451 170938835 269911067 378961655 568104980 514768035 553368896 390275103 843005594 15903366 920628541 134801439 247006479 526944836 704431513 509144872 538025980 509370562 132556595 664041213 562773407 443960759 704431513 522332929 878442641 382904427 125204206 266583970 21190596 256866745 432089082 53195413 751925989 711532060 814662325 388085842 278160655 602832600 736237188 726620654 354807942 758889515 42657625 387703244 321628921 841780337 251188854 972710252 780870754 836376015 979740237 749497174 753419354 624819674 128702236 815123402 831467447 37275245 929504680 313272965 626833449 300892929 926045944 190323279 203331888 962073361 420052652 981996224 827311105 376974209 746992914 426814174 242530683 165821462 24188768 451521521 247006479 601740259 305068796 721769014 570764323 330205547 420052652 353964006 719307635 910818482 532803593 746394036 299113502 570796148 920721173 250749017 499057158 37275245 39220584 246221518 303230482 359714925 778074990 789617647 153196022 159828635 838655651 650036494 882364001 581831913 215792516 369306500 82689280 592970093 795549341 719601437 628523361 841210236 202477791 835212499 148087911 616057762 888699423 556619020 512614298 109054120 917452919 628820972 623398671 56927881 645094664 495854210 704431513 664041213 99294732 858040709 567774282 573480571 603931167 792846009 396806189 215052415 305068796 688177128 851400664 296751278 814662325 506919968 215774690 53195413 640925332 607965234 259646582 79509313 103733806 464444922 424594759 937158597 600441802 866337119 765027062 509370562 944068218 349644605 674485068 808838846 247006479 764459345 266213579 590918818 230662076 859168292 617908997 815123402 326469359 806792339 975337465 140551765 915330573 852107700 567343883 786320493 540976336 854243215 862254110 971549242 567774282 353964006 637769046 674446970 888699423 98231977 550336314 495854210 247234349 237172271 422532994 829983432 877167702 711455867 559014304 726620654 896571061 667844649 72820570 557710104 514650194 140725908 900796599 167276070 553191189 953267424 298727845 556619020 915330573 965948435 98287438 689757867 98824830 889608806 261683638 38085353 936312210 193515742 650697444 975478549 128702236 790270533 412979540 56927881 956286779 767839638 679463383 686335042 83066601 992169078 142903358 220576148 247841801 404152565 331638088 387703244 547547687 506178629 103669472 223299794 540976336 143200457 492009082 267829614 322974842 252962990 190929591 764459345 203331888 138442062 575023903 835212499 98824830 526944836 254203892 934824360 703514531 174335822 802009078 790270533 451817798 53966525 640925332 688177128 430101007 448881532 546679009 145885851 254203892 713146141 966683628 972710252 854902633 735710261 938140278 885000402 299113502 597784477 745200166 2076768 80485362 795472528 617908997 629101079 38844979 397928982 326469359 858798711 887794841 789617647 15037608 298050322 662421393 559957428 950673785 66490779 702364434 19911869 922706719 264297813 417074904 618355033 610834602 750750593 803588261 448881532 695599688 66490779 640849273 408032939 481894295 620243558 98287438 656191811 562773407 179991869 691982506 841780337 136384659 780061015 900796599 708046990 448262245 776835194 306607837 443960759 975337465 388085842 559014304 426814174 760370490 174862116 401452903 475344103 773781000 207442482 42657625 884952974 451817798 767187616 551289217 60017144 858127225 288873549 617908997 641231120 56154381 165821462 876868627 390793037 685702028 35128915 215981255 852604705 600441802 715957434 532803593 165821462 723661847 485262404 652018277 786320493 430284321 808838846 941586175 179981178 586370291 788118407 326469359 207844781 840130613 939725993 547547687 307403622 904800517 722013570 971894015 647733367 929504680 938456692 653201202 220576148 244528344 573480571 133739154 719601437 562773407 687055288 838331644 413592826 215977916 838803091 736624310 902464469 942999703 79509313 946916156 424974082 101231409 77685914 633573519 296751278 428572243 729868696 103669472 506178629 860477160 140725908 24188768 77685914 286037808 711455867 328462418 78775552 465759767 349076114 878442641 762749463 884072178 7807006 738855203 225858850 550336314 338929165 13112382 607965234 206036522 620243558 490344724 109054120 247234349 964902255 484158080 437743643 581063820 668964848 396806189 232177196 587469038 51457589 855636134 781246194 954227928 136412292 860377902 697742034 567343883 522663253 303230482 592970093 299113502 699230813 24188768 851759377 234980621 775682536 228290502 520071928 765027062 841210236 140129038 781242822 740340897 842970782 50241607 186244437 942999703 571019028 746992914 539035187 837690635 172894131 103669472 997329398 412979540 851829959 322974842 360743135 900796599 737945381 575895835 923715439 73848009 237172271 321628921 607760956 133739154 128450928 575895835 79523589 600441802 577673184 700560235 53966525 940188502 48746678 247221668 990121035 209789164 938080232 261683638 907095826 854969794 378961655 893019475 448881532 878442641 52243955 538025980 726620654 705548145 376974209 126695727 251367294 183440003 842970782 653201202 896029805 603931167 625664180 503666498 342116147 773781000 831241130 814295984 298050322 843005594 241184545 99294732 854243215 396050095 656191811 864016134 531333917 650990283 159828635 748408317 686884353 512614298 2076768 807117750 172382592 645094664 506919968 776820092 953267424 618542887 314069534 513440742 971549242 455539394 459617527 860477160 627110568 74587532 56927881 292696118 98231977 321628921 896072909 254203892 48746678 662421393 288873549 183440003 53966525 548748527 205387898 38338132 317751260 38338132 942899938 295606018 962430008 864016134 938456692 685702028 68748842 270237875 218611070 982370833 968670974 72820570 464444922 142903358 205387898 514650194 246058339 617908997 193515742 512614298 215289803 955501918 424974082 776352608 646710523 637939784 522332929 38338132 686884353 211958450 588034909 653201202 196460706 628523361 19911869 623398671 390275103 457149478 334932282 675472009 478892468 444897967 786320493 736237188 589760538 31615284 424974082 23262398 963141978 132556595 573480571 38844979 426814174 203331888 361002681 485153920 330205547 581063820 179981178 429277230 334211676 830619816 38304068 751925989 495854210 882364001 689757867 575895835 408032939 278160655 902464469 74587532 885353274 242530683 983113723 152866011 699230813 954677909 162904272 617908997 557710104 944068218 942899938 623398671 66490779 153196022 36265302 931013644 990121035 269911067 628820972 675472009 371179314 32075030 138442062 206036522 170941326 41538784 699733109 39220584 727245017 702364434 582273012 126695727 968755777 954227928 556619020 527654256 307060809 177689820 786320493 488295044 79509313 190979155 266583970 148087911 624819674 242530683 5299425 966683628 276676140 103669472 47349911 163769090 264297813 209789164 458363994 485153920 262406489 151506993 397928982 780870754 2575238 387176309 47349911 525347105 49948206 874124920 870201182 148087911 399037712 32806834 852604705 942999703 556619020 926045944 146573202 420052652 40131409 710224239 522332929 885995802 872434540 152618584 732245352 464130920 119279869 153196022 885647994 623398671 771803404 67700412 831380531 257214051 942899938 331638088 543945175 736624310 267829614 83066601 762749463 757850417 515426984 465697134 694954883 512614298 758889515 740340897 860708299 53525809 324129364 181668423 246221518 638516505 27735709 862254110 984047482 746092812 515426984 527654256 196460706 855636134 266583970 93651148 604881661 703514531 215289803 994877696 601740259 375066210 630238886 289736829 744008188 148087911 858798711 700560235 937158597 917452919 624819674 783513992 276676140 484158080 47529701 554222239 251367294 656623172 266583970 876263470 155241439 688534928 582273012 586446680 885141769 237389399 829614460 202477791 739696834 954677909 975478549 575895835 858798711 492009082 359859765 498840912 925555858 926045944 55108095 738855203 283321520 455539394 37275245 230662076 307403622 488295044 170938835 32075030 630629857 982416551 527595027 770864525 592970093 424594759 808838846 242530683 836376015 920721173 187104147 242028021 902464469 738612855 20148474 886917295 464444922 850386354 754133002 539381059 476912096 39220584 225771141 563678994 699230813 396743027 726950461 151364594 114409323 306258744 638790258 806664207 858798711 56154381 300892929 186285312 788118407 773781000 47349911 181668423 128450928 660095934 456137963 763431295 581831913 219054502 371179314 938140278 577673184 1926282 352092606 190979155 711532060 53226850 638790258 966131311 885353274 431406787 287239117 299113502 182214511 637769046 137529801 481894295 588034909 940188502 40131409 661321016 19715614 407091770 179981178 746992914 854243215 921198791 550322314 289736829 134801439 251188854 767839638 448262245 943793512 888699423 543945175 660095934 592970093 982370833 174862116 954227928 817743547 663670886 573449906 156817178 36055646 242028021 106790696 270237875 607965234 142903358 330274784 802009078 859168292 540394532 767187616 915330573 248642173 663971090 315297566 42657625 437743643 148087911 2379379 637657473 225771141 660095934 458290565 597206610 983113723 518384931 699733109 855636134 114409323 242028021 7807006 99294732 749497174 703514531 535533605 354807942 981996224 303230482 205387898 768561257 963141978 830619816 786320493 751925989 962430008 292696118 604881661 308142020 887548285 53525809 984047482 13112382 485509833 93651148 531333917 177689820 979750308 101231409 623206361 407091770 543945175 195957995 718980624 64420967 543865019 214244685 371179314 946916156 134801439 152243323 630238886 548748527 382904427 991073887 136412292 598543708 582273012 662421393 795472528 28363157 727578179 93651148 172894131 888699423 342116147 503666498 907095826 242028021 78775552 255644658 602832600 547547687 170941326 637939784 708053570 696443558 396937914 498840912 699733109 259646582 515426984 47290536 250885472 15037608 776835194 776820092 630238886 630201811 727245017 581063820 449022331 538025980 38085353 270237875 290474734 254203892 923715439 632014852 990121035 186285312 288873549 103669472 944573659 488295044 713146141 266213579 130160246 396743027 698320352 586446680 737945381 840130613 589760538 757850417 836376015 471393875 778123726 255644658 767187616 678884863 729868696 840075867 831241130 862254110 426814174 64420967 726620654 251042004 376974209 499057158 55018341 148087911 505061211 80485362 978947655 465697134 51457589 367026304 285947848 632014852 241184545 946916156 630238886 109369069 451521521 420052652 746394036 885549757 509664709 586446680 215052415 623398671 625664180 21190596 494336936 527654256 912948600 650990283 850484222 850386354 324986193 551289217 989729323 770594967 77685914 125829791 390793037 917795074 476912096 152618584 369306500 936312210 315343704 904800517 66490779 956815883 940381563 387176309 758889515 286037808 962073361 559014304 437743643 99294732 668964848 145559297 970911538 289918211 441621000 367026304 686884353 770594967 800460688 195957995 509370562 196106606 68748842 80415088 650036494 774489082 870201182 363976852 812044550 206036522 427184372 586446680 923715439 938140278 739696834 234980621 496698204 645094664 623206361 195957995 835198840 740340897 140725908 568104980 872434540 771321738 793291205 715779797 81553943 247841801 299462930 771321738 815123402 82689280 237172271 464130920 174335822 982416551 963141978 503666498 627110568 444897967 688177128 430101007 215289803 683406807 496698204 874124920 27735709 703490607 247822207 877088774 790270533 575023903 79509313 992001870 458156391 559014304 506178629 583924389 78775552 292149520 699733109 956286779 806744033 683406807 175060805 15037608 942899938 904800517 476912096 181668423 925555858 136384659 543865019 567948101 509664709 247006479 678474526 302151126 160287690 261683638 87392830 632014852 87392830 947413305 713146141 740882715 625664180 683406807 218611070 29069209 923715439 242186770 939725993 630201811 390275103 444897967 249820698 610834602 5299425 481894295 531135820 840130613 866568903 703514531 155241439 136384659 889608806 13112382 121069546 619842427 475344103 921198791 424974082 567774282 683621666 257214051 298050322 99294732 296751278 80415088 266583970 47290536 577673184 656623172 427184372 760231333 972710252 830619816 36265302 921198791 52243955 679463383 338312978 855636134 19715614 525347105 984050047 770993588 527595027 944068218 252962990 490344724 49614749 420052652 601740259 900116034 943235508 206036522 266583970 941586175 56927881 401452903 676975489 982370833 767187616 840130613 49948206 688577702 806744033 93651148 829614460 603931167 749497174 163769090 446968233 877088774 315297566 484158080 49614749 361435434 2379379 425392410 937158597 396743027 78775552 499057158 128450928 358401766 7807006 619842427 983373150 660765062 721769014 422532994 448881532 904771946 543945175 878442641 592970093 387176309 902464469 278160655 35128915 830619816 134971740 877088774 507016471 13112382 689757867 1926282 78775552 138393155 68748842 514650194 53966525 278160655 49614749 488295044 938080232 581063820 170938835 412979540 360743135 884059813 232177196 462762217 808838846 637657473 970320952 877167702 719601437 305068796 376974209 920721173 968670974 956815883 543945175 332834875 852604705 900116034 495854210 115509283 112390393 551289217 2076768 922858580 283321520 140129038 566125822 695599688 376974209 306607837 582273012 211958450 140551765 824770361 404152565 736237188 179981178 428572243 405444604 274113481 55018341 47290536 939725993 56154381 10369081 838331644 535533605 242530683 307060809 807117750 557710104 746992914 682170984 982370833 437743643 82689280 128450928 678884863 971549242 681930584 808838846 650990283 299462930 206036522 943235508 448262245 485509833 215792516 264100442 43970470 378961655 610834602 397928982 888553258 722013570 56154381 715957434 547547687 582273012 884072178 711532060 876263470 995876182 289736829 993091440 67831588 761330904 56154381 835198840 321628921 764459345 93478833 965948435 765027062 842970782 771321738 298050322 956815883 103219970 696443558 478892468 771321738 106790696 654830523 390793037 299113502 246221518 760370490 984047482 950673785 396632533 917452919 790270533 982353486 186244437 967417280 744008188 840130613 207844781 710224239 19715614 432089082 907721720 840075867 543945175 688577702 498045048 598426014 288072509 660095934 248642173 484158080 396937914 321628921 38085353 633587956 112090095 835339516 888259120 417074904 170941326 710224239 727827821 663971090 506178629 80415088 314069534 31215478 744008188 56154381 812044550 210621083 328764419 804406873 334932282 306607837 451551269 688534928 548964093 428572243 970911538 244528344 462394151 971894015 306597948 32806834 387703244 932584021 851829959 270237875 990121035 247841801 448881532 242028021 554242697 598543708 627110568 750563611 939725993 860477160 955730659 133739154 56927881 633587956 767839638 190929591 912948600 736624310 674446970 540394532 604181881 527654256 616796881 290117216 739696834 72820570 282751746 237389399 749497174 857535330 37275245 264408147 413592826 499057158 601740259 757815664 938456692 425392410 250749017 542382913 726950461 321628921 526944836 73848009 727578179 982370833 387703244 292696118 842970782 6720560 246058339 721418370 744008188 918225489 711455867 712346140 310726569 331638088 923715439 13112382 272303478 322974842 223299794 299113502 27735709 715779797 10369081 128702236 942899938 292972503 997329398 254203892 722013570 269911067 918521256 610834602 4519262 367026304 162904272 40448245 554242697 575895835 145885851 803588261 896072909 259646582 226492467 765027062 808614164 247006479 625664180 650990283 835212499 32075030 179981178 257214051 638790258 900796599 2575238 456956861 387703244 884072178 361002681 275349681 866568903 275202504 628820972 518384931 852755974 539381059 5299425 270237875 313272965 321628921 543865019 601630030 727245017 251188854 960796073 884059813 623206361 244528344 570796148 601630030 87392830 601630030 808838846 480361743 427184372 151506993 582273012 992001870 458290565 311613451 646710523 746092812 334211676 242530683 382904427 83066601 170941326 922706719 266583970 808866527 247822207 862254110 515426984 567948101 636434256 234980621 376974209 444897967 581831913 498840912 842970782 401452903 852755974 247221668 629101079 311613451 970911538 846351340 775682536 788737791 509370562 162062292 186244437 904800517 509664709 109369069 128450928 750563611 838803091 554222239 19911869 688534928 800460688 274113481 163229392 956286779 7807006 103669472 112090095 542382913 885000402 407510599 860708299 920721173 404152565 115509283 557710104 247006479 942866882 788737791 60017144 691982506 944573659 131323888 174862116 808866527 601740259 47290536 570796148 311613451 925555858 244528344 761330904 396743027 550322314 778074990 970911538 484158080 250885472 49317804 505061211 936312210 588034909 540394532 249670598 215981255 287239117 21190596 979750308 53226850 252792947 956815883 792846009 49317804 688177128 128702236 2575238 328462418 209497607 43970470 456137963 780870754 628820972 103733806 52243955 545538425 683621666 638516505 996943901 485153920 298050322 77819776 315343704 992001870 128450928 547547687 36055646 760231333 146573202 602396426 780061015 770993588 667313812 654830523 143200457 264408147 250885472 585165457 667313812 481894295 266583970 650697444 874297853 949084393 548964093 936312210 10369081 433686203 557710104 247221668 134801439 941586175 515426984 740340897 782533040 488295044 27735709 683406807 246058339 927806038 53966525 843005594 246221518 455539394 56927881 918225489 276676140 640925332 47529701 587469038 393120342 481894295 182214511 600441802 396138845 230662076 641231120 854902633 437743643 50241607 572465104 982353486 330205547 133739154 87392830 788737791 764459345 982370833 400218902 888699423 771803404 926045944 138442062 219054502 167276070 103669472 390275103 922706719 496698204 553191189 866337119 101231409 262406489 115509283 35128915 660095934 249670598 128702236 128450928 567948101 463496366 538025980 882804101 562773407 697742034 480361743 451521521 923927991 932715562 858127225 708046990 136384659 140725908 396743027 635302209 917452919 498045048 471393875 408032939 807117750 789617647 478351140 937158597 430101007 579757115 966683628 327773233 269911067 858798711 663670886 548964093 451817798 507016471 43970470 313272965 887794841 694954883 598426014 750978759 632402794 775682536 514650194 630238886 247234349 27735709 776820092 33511708 311613451 689757867 142903358 441621000 931640418 88335614 846351340 918521256 292696118 441621000 269911067 52243955 151506993 970320952 115509283 993091440 814295984 960543625 234980621 175060805 430284321 969494113 660765062 994587826 840130613 806744033 215774690 376974209 366854683 462394151 274113481 128450928 123073176 4519262 982353486 570796148 765027062 337153847 567948101 984050047 774489082 577673184 444897967 334932282 945394518 907721720 920721173 509019925 604968568 708094860 738612855 972710252 770864525 33511708 753419354 109054120 583924389 33511708 292149520 35128915 29069209 676975489 259646582 647733367 633573519 506919968 882364001 761330904 538025980 87392830 156817178 78775552 24188768 220576148 206036522 764459345 808866527 196460706 850386354 885353274 778074990 970320952 502849508 531135820 547547687 60017144 687988023 174335822 456956861 288072509 652018277 829983432 305068796 938705675 49317804 27735709 860377902 896072909 438183310 607965234 678884863 282751746 304621545 249670598 585165457 808614164 533455280 548964093 626932919 789617647 946612927 408032939 740340897 247822207 484158080 170941326 931086800 776835194 681765297 267829614 489130642 287768226 73848009 134971740 626833449 792846009 153196022 566554997 931086800 53195413 862254110 858040709 705304879 143200457 753419354 775682536 885995802 764116955 145559297 19715614 305068796 35128915 299113502 851829959 358401766 249670598 757850417 601740259 49317804 32954995 261683638 476912096 923927991 996943901 700560235 109054120 269911067 781242822 275349681 835212499 210621083 79523589 969294148 831380531 904800517 36265302 67831588 698320352 53525809 48746678 654830523 968670974 938140278 112390393 271484655 792846009 481894295 186244437 278160655 155241439 804406873 172382592 637769046 174335822 809429735 315343704 32806834 433921335 705548145 476912096 40448245 708046990 53226850 744008188 311613451 853170454 763431295 627110568 292696118 175060805 82689280 859168292 80485362 195019158 196106606 990121035 247221668 334932282 195957995 719601437 247841801 851759377 617908997 997329398 109369069 981996224 206036522 79523589 562773407 938705675 603931167 579757115 49317804 117210451 305990981 732559957 721418370 207442482 910850066 314069534 637769046 812044550 196106606 167276070 553191189 137529801 645094664 103219970 99294732 592970093 913521589 338929165 43970470 134971740 151506993 49614749 135975430 531135820 598426014 616057762 640849273 396632533 151364594 918521256 991073887 662972501 254203892 618355033 685702028 667313812 563678994 711455867 610447918 780061015 931013644 128450928 83066601 854243215 211958450 451521521 24188768 535533605 877167702 159828635 162062292 531333917 740882715 938705675 944068218 394791153 721418370 63192647 770864525 287239117 153196022 396937914 152866011 781246194 691982506 413592826 969294148 866568903 499057158 167276070 42657625 838803091 966131311 376448548 361435434 119279869 455539394 207442482 540394532 780061015 145559297 872434540 860377902 711532060 214650974 776835194 129724737 36265302 186285312 539035187 462762217 361002681 610447918 223299794 858127225 246221518 760231333 546141085 202477791 2379379 511330454 328764419 138393155 213097363 685702028 727827821 334299650 163229392 598543708 668964848 208625324 829614460 632402794 427184372 425392410 112390393 632402794 441621000 618542887 646710523 396743027 960543625 298727845 15903366 591292508 972710252 203331888 307060809 305990981 138442062 488295044 638790258 201717402 613596687 876263470 806792339 598426014 923715439 888699423 722013570 857535330 539035187 247006479 546141085 31215478 225858850 259646582 997329398 950673785 971549242 837690635 889608806 554222239 984047482 206036522 225858850 455539394 36265302 600441802 667313812 687988023 938705675 422532994 939725993 125829791 624819674 407091770 829614460 660765062 588034909 344620844 732245352 513440742 647733367 660095934 252962990 885549757 746394036 679463383 767839638 40448245 719601437 417074904 24089615 366854683 458363994 783513992 758889515 736237188 334211676 539381059 526944836 563678994 850484222 125829791 37275245 514650194 808614164 502849508 975478549 148087911 299462930 723661847 735710261 278160655 488788762 604968568 682170984 259646582 689757867 814295984 250885472 151364594 464444922 367026304 55108095 190979155 337153847 98824830 371179314 163769090 727245017 206036522 607965234 420052652 550322314 551289217 780061015 67700412 699230813 776352608 338312978 917452919 711532060 289736829 193515742 456956861 317751260 417074904 155241439 947413305 938705675 315747769 686884353 361435434 117210451 488295044 190323279 559014304 36055646 196106606 114409323 956815883 887548285 979740237 851829959 251042004 267829614 32806834 256866745 290117216 441621000 771321738 509144872 575023903 476912096 151506993 636434256 214244685 727827821 802009078 764116955 601630030 907095826 653201202 962073361 623398671 938456692 840130613 711455867 295366548 699230813 306258744 602832600 230662076 515426984 982353486 170941326 769327548 195733178 602396426 458363994 278160655 47529701 926045944 2076768 215774690 678474526 67831588 990121035 433686203 842970782 877088774 458290565 489130642 509019925 430101007 112090095 430284321 314069534 480361743 786320493 797746066 225858850 567774282 522663253 619842427 775682536 539957336 66490779 142903358 315343704 942999703 938080232 760231333 495854210 583924389 272303478 295366548 79509313 769327548 891279504 967417280 317751260 590208882 962430008 193648030 213097363 915330573 981996224 835339516 678474526 31215478 943793512 247841801 613596687 214650974 994587826 740882715 88335614 354807942 662972501 407510599 984050047 401452903 992169078 6720560 942899938 583924389 413592826 308142020 872434540 814662325 137529801 181668423 371179314 264408147 960796073 77819776 885647994 637657473 882804101 308142020 32954995 448262245 288873549 748408317 638790258 177689820 134971740 900796599 782533040 407629453 829614460 610447918 459452716 598543708 103219970 885995802 686884353 827311105 390275103 637657473 145885851 830619816 509370562 858127225 944573659 982353486 172382592 50241607 226492467 736624310 786320493 152866011 938456692 109369069 338631458 451817798 750978759 502849508 140725908 251188854 128450928 457149478 420636144 115090276 296751278 244528344 20148474 31615284 582273012 602396426 852107700 929504680 247822207 42657625 207844781 39220584 494336936 950497221 790270533 946916156 272303478 770594967 531333917 776820092 205387898 591292508 635302209 601630030 315343704 136384659 307060809 115509283 979750308 261683638 780061015 128702236 902464469 206036522 478892468 206036522 252962990 736237188 349076114 247221668 535533605 215977916 478892468 885995802 891279504 904800517 938080232 67831588 800460688 931640418 896072909 663670886 943793512 299113502 938456692 888553258 531333917 910850066 761330904 982370833 390793037 967417280 812044550 843005594 851829959 719307635 179991869 838331644 338312978 152866011 668964848 284588557 247822207 215981255 522663253 174140940 604881661 539381059 213097363 654830523 979750308 303230482 711532060 215977916 506178629 366854683 505061211 783513992 970911538 885549757 288873549 83066601 267829614 533455280 488788762 38338132 733642252 183440003 721769014 527654256 2575238 485153920 4519262 208625324 5299425 709613471 996943901 715779797 485262404 527654256 119279869 131323888 851829959 586370291 264297813 860477160 702745028 424594759 965948435 705304879 79509313 602396426 874297853 637939784 851759377 675472009 313272965 32806834 330274784 882364001 570796148 840075867 252792947 361435434 315297566 743614603 162904272 858127225 496698204 705304879 485063015 703490607 38085353 760370490 193515742 679463383 632378665 292972503 641231120 305990981 424974082 214650974 174335822 99294732 2575238 771321738 456137963 696443558 313272965 650990283 887548285 31615284 88335614 837690635 314069534 489612980 686884353 886149363 272303478 910850066 81337657 855636134 795472528 700560235 47349911 270237875 620243558 705304879 602832600 351424753 925555858 296305836 162904272 746092812 997329398 375066210 170938835 876868627 248642173 660765062 256866745 590208882 630629857 802009078 7807006 31615284 252962990 72820570 522332929 982353486 566125822 15037608 689757867 39220584 400218902 814662325 223299794 306258744 137529801 31615284 307060809 148087911 155241439 315747769 632378665 98824830 195733178 21190596 970320952 795549341 683621666 837690635 140551765 126695727 300892929 305990981 394791153 746092812 650036494 740882715 36265302 186285312 458363994 931966477 984047482 431406787 330205547 492009082 459617527 662421393 939725993 264750083 507016471 39220584 968670974 304621545 300892929 292149520 560623000 982370833 577673184 769327548 298050322 862177563 983113723 809429735 592970093 626833449 907721720 40656291 53195413 660765062 836376015 211958450 360743135 275349681 213097363 774489082 98231977 270237875 20148474 846351340 458156391 917795074 984047482 23262398 601740259 687988023 733642252 43970470 352092606 623398671 715957434 586446680 995876182 83066601 369306500 830619816 145885851 738612855 443960759 803588261 338312978 955501918 762749463 595030753 934824360 542382913 866568903 358401766 509019925 931013644 327773233 488295044 315297566 878442641 79523589 679463383 587179274 311613451 896072909 527654256 264297813 804406873 408032939 740882715 53966525 13112382 361002681 152243323 885647994 448262245 81553943 254203892 396632533 645094664 413592826 913521589 179991869 202477791 349644605 778074990 762749463 857535330 220576148 94279561 678474526 23973553 925555858 956286779 282751746 773781000 940381563 971894015 187104147 637939784 252792947 754580366 137529801 835339516 478892468 53226850 627110568 322974842 616796881 490344724 349076114 719307635 678474526 650990283 735891721 292696118 767839638 344876805 711532060 830619816 885000402 21190596 47529701 42657625 117210451 860477160 109054120 214244685 106790696 269911067 226492467 49317804 353964006 163769090 290474734 723661847 134801439 499057158 36055646 860377902 506919968 82689280 726950461 131323888 79523589 704431513 360743135 72820570 522663253 156817178 163229392 920628541 413592826 637657473 676975489 685702028 992169078 128188331 829614460 927806038 52243955 464130920 424974082 885549757 711532060 799588075 109054120 567948101 902464469 550336314 835198840 83066601 971549242 633573519 288873549 489612980 607760956 247006479 103219970 315747769 195019158 412979540 602832600 926044257 390793037 214244685 993091440 550336314 170941326 60750487 63192647 115090276 589760538 917452919 842970782 38338132 443960759 640925332 287239117 723661847 780061015 42657625 35128915 681930584 37275245 585165457 971549242 931013644 960543625 295366548 616796881 462762217 36055646 850386354 393120342 885549757 33511708 210621083 971549242 975337465 979750308 126695727 506919968 927806038 338929165 408395896 607760956 591292508 225858850 305068796 298050322 769327548 739696834 219054502 382904427 778074990 806744033 662421393 443960759 610447918 964902255 770993588 744008188 628523361 400178823 135975430 910818482 876263470 641231120 591292508 427184372 770864525 325554372 837690635 324129364 1926282 48746678 656623172 943793512 93651148 656191811 808866527 285947848 735696627 942866882 827311105 49948206 344876805 554242697 888699423 285947848 264408147 531135820 131323888 568142039 575895835 404152565 920628541 451551269 846351340 934824360 610447918 694954883 770864525 394791153 387176309 2076768 210621083 907721720 533455280 874297853 750563611 968755777 931640418 328764419 771321738 604881661 456956861 992169078 40448245 215289803 15037608 112390393 67831588 808838846 653201202 572465104 548748527 859168292 533455280 250749017 808866527 587179274 878442641 854243215 685702028 960796073 956286779 829614460 424594759 225858850 306258744 266583970 704431513 979750308 148087911 287239117 640925332 662972501 915330573 866337119 94279561 996943901 886917295 887548285 991073887 942899938 550336314 632378665 293192373 145885851 763431295 78775552 289736829 387703244 941586175 285947848 73848009 787269565 814295984 306597948 966683628 887548285 228290502 972710252 660095934 983113723 966131311 896072909 735696627 179991869 209789164 334211676 152618584 299994808 117931902 968755777 292972503 943793512 910850066 711455867 553191189 577673184 991073887 931005739 581063820 20148474 917795074 589760538 163769090 476912096 230662076 646710523 927806038 711455867 774489082 727245017 24188768 1736950 735696627 870201182 1926282 47529701 797746066 854243215 109369069 531135820 757815664 376448548 663971090 288072509 292696118 458363994 920628541 907095826 705304879 285947848 247006479 441621000 931640418 686335042 306258744 264297813 653201202 266583970 82689280 789617647 600441802 225771141 652018277 10369081 153196022 896072909 366854683 907095826 630201811 793291205 966683628 889608806 438183310 560327459 966131311 215289803 860377902 885000402 135975430 307403622 745200166 990121035 98287438 506178629 181668423 404152565 920628541 27735709 597206610 749497174 375066210 325554372 709613471 944573659 430101007 48746678 591292508 762749463 247006479 554242697 763431295 195733178 425392410 207442482 214244685 713146141 910850066 98231977 247006479 38304068 438183310 49948206 687988023 983113723 922706719 506178629 597206610 369306500 931013644 907095826 876868627 942866882 938140278 267829614 422532994 758889515 23262398 315297566 602396426 393120342 911302173 33511708 334299650 509144872 922858580 808838846 138393155 405444604 743614603 20148474 628523361 744008188 465759767 145885851 598543708 397928982 923927991 546141085 931640418 20148474 816971086 792846009 577970627 566125822 208625324 859168292 304621545 559957428 598426014 448881532 67831588 795472528 177689820 458363994 408395896 884952974 597206610 557710104 177689820 205387898 103669472 539035187 74587532 288072509 581063820 616057762 219054502 225858850 893019475 884952974 268759041 451521521 715779797 218611070 195957995 252962990 660095934 604181881 633573519 891279504 884059813 19715614 830619816 338312978 396743027 750750593 757815664 195019158 876868627 509664709 548748527 790270533 56154381 174862116 618542887 550322314 181668423 829983432 41538784 566554997 242530683 143200457 920628541 462394151 835339516 851759377 570764323 287239117 840075867 324129364 162062292 19911869 489130642 338631458 31215478 138442062 261683638 874297853 206036522 250832323 736624310 831380531 910850066 860708299 117931902 324986193 944068218 478892468 760370490 607965234 542382913 708053570 626833449 964902255 748408317 160287690 153196022 972710252 738612855 918521256 685702028 984047482 969294148 965948435 703490607 27735709 266213579 806792339 201717402 60017144 553368896 604881661 765027062 32954995 295606018 246058339 41538784 40131409 950497221 912948600 247841801 246221518 931966477 207844781 876868627 250832323 215981255 889608806 687988023 330274784 1926282 117210451 683406807 359714925 208625324 554242697 709613471 256866745 637769046 81553943 242186770 754133002 50241607 396632533 518384931 437743643 603931167 602832600 132556595 792846009 760231333 509144872 344620844 573449906 67700412 996943901 675472009 494336936 936312210 2575238 193648030 697742034 994877696 152314280 407629453 686884353 539957336 40131409 567774282 109054120 257214051 683621666 663971090 495854210 363976852 509370562 915330573 267829614 202477791 727578179 824770361 349644605 954677909 121069546 41538784 310726569 304621545 592970093 754580366 854243215 592639233 942899938 654830523 507016471 801623766 975478549 305990981 882804101 929504680 918521256 215977916 338929165 705304879 888259120 289918211 338929165 831467447 32954995 152523810 726620654 129724737 726950461 42657625 506919968 884059813 983373150 152866011 405444604 938140278 514768035 269911067 162904272 153196022 288873549 946612927 907095826 799588075 800460688 268759041 507016471 600441802 400178823 242186770 29473993 242530683 296751278 656623172 317751260 567948101 970911538 918225489 334932282 545538425 781246194 638516505 282751746 721418370 170941326 864016134 112090095 181668423 940381563 247234349 215052415 633573519 485262404 695599688 338929165 637939784 668964848 746092812 1736950 797746066 907721720 626833449 187104147 765027062 117210451 298727845 225858850 295366548 597784477 210621083 20148474 138393155 636434256 926045944 757709512 637939784 396632533 142903358 939725993 857535330 943235508 590208882 506919968 299113502 571019028 652018277 53195413 630201811 174335822 991073887 2076768 788737791 800460688 190929591 443960759 532803593 934824360 840130613 338929165 499057158 571019028 776352608 88335614 786380583 616796881 83066601 778123726 831467447 225858850 946916156 215052415 254203892 400218902 251042004 923715439 295606018 667313812 433686203 2379379 610834602 88335614 920721173 737945381 303230482 315343704 917452919 52243955 683406807 702745028 854902633 641231120 723661847 616796881 656623172 77685914 407629453 437743643 967417280 256866745 465759767 795472528 136384659 458363994 801623766 160287690 151364594 19715614 662421393 884952974 982416551 207844781 660765062 462394151 539381059 81553943 154538466 735710261 98824830 559957428 38338132 778123726 545538425 702745028 284588557 560623000 806664207 81553943 247841801 146573202 269911067 81553943 331638088 688177128 38338132 56927881 835339516 1736950 286037808 624819674 840075867 989729323 140129038 426814174 503666498 360743135 123073176 587179274 837690635 109054120 640925332 771803404 795549341 182214511 595030753 315297566 21190596 458156391 455539394 313272965 358401766 732245352 705304879 360743135 757850417 597784477 315747769 601740259 797746066 604881661 266213579 698320352 917452919 970320952 598426014 628820972 618542887 496698204 401452903 885141769 950673785 737945381 681930584 994587826 757850417 835198840 553191189 175060805 949084393 68748842 290117216 732559957 783513992 841780337 215792516 566125822 941586175 641231120 846351340 282751746 969294148 726620654 950497221 404152565 308142020 984047482 831467447 162904272 946916156 390275103 681765297 441621000 255644658 106790696 152523810 757709512 295366548 112090095 598426014 646710523 982416551 433921335 982370833 160287690 424594759 889608806 587469038 962430008 950673785 630629857 570764323 918521256 953882020 353964006 444897967 507016471 125204206 338929165 695599688 852604705 464130920 443960759 292149520 737945381 920628541 160287690 931086800 764459345 153196022 7807006 103669472 749497174 888699423 587179274 860477160 330205547 259646582 852107700 542382913 310726569 275349681 841780337 214650974 953267424 80415088 299462930 533455280 623206361 268759041 629101079 271484655 514768035 38338132 546141085 830619816 49614749 637769046 721769014 598543708 155241439 305990981 836376015 966131311 250749017 610834602 962073361 840130613 324986193 10475035 781242822 553368896 597784477 982353486 627110568 645094664 592981604 809429735 165821462 946916156 79523589 857535330 209497607 527654256 860708299 284588557 841780337 754580366 382210484 954677909 815123402 586370291 478892468 786380583 324129364 886917295 686884353 679463383 397928982 884059813 390275103 193648030 1736950 956286779 196460706 931640418 664041213 275202504 592970093 738855203 160287690 444897967 220576148 926045944 838803091 514650194 205387898 950497221 136412292 814662325 550322314 412979540 767839638 31615284 252792947 432089082 587179274 401452903 872434540 854902633 509144872 53525809 35128915 539381059 119279869 946916156 806792339 387176309 570796148 315747769 511277493 786380583 359714925 641635851 607041944 626833449 290474734 900796599 299994808 920628541 170938835 921198791 193515742 846351340 382904427 860377902 109054120 946916156 359859765 966131311 78775552 884059813 60017144 837690635 721769014 444897967 338312978 247841801 625664180 465697134 145885851 99294732 506919968 587469038 781242822 430284321 451551269 492009082 225771141 954677909 382210484 67700412 509370562 43970470 264100442 83066601 498045048 80415088 327773233 886917295 566125822 539957336 285947848 637657473 932715562 344620844 174335822 430101007 52243955 799588075 623206361 931966477 288873549 855636134 938705675 251188854 52243955 567343883 938456692 72820570 729868696 954227928 52243955 148087911 656191811 1926282 456137963 626932919 325554372 746992914 349076114 966683628 686884353 910850066 891279504 626833449 931005739 748408317 458363994 915330573 990121035 298727845 338312978 254203892 287768226 115509283 396632533 769327548 699230813 601630030 506919968 289918211 32954995 575023903 543945175 831467447 223299794 936312210 789617647 760231333 902464469 430284321 531333917 630201811 112090095 768561257 452156279 838655651 872434540 878442641 627110568 83066601 831380531 807117750 630629857 770993588 965948435 140129038 140551765 40656291 535533605 152618584 664041213 305990981 560327459 514650194 349076114 860477160 55018341 499057158 694954883 83066601 943793512 396050095 984050047 652018277 163229392 950673785 923715439 98287438 117210451 740340897 962430008 710224239 186244437 99294732 721769014 660095934 29473993 885549757 918521256 451817798 172894131 802009078 964902255 211958450 225858850 214650974 539035187 947413305 604181881 140129038 226492467 53226850 458363994 308142020 7807006 882364001 812044550 53525809 160287690 457149478 732245352 929504680 851759377 498840912 831241130 979740237 306597948 884072178 505061211 208625324 165821462 927806038 4519262 551289217 968670974 152618584 448881532 270237875 215052415 152866011 870201182 896571061 829983432 489130642 713146141 660095934 218611070 617908997 307403622 678884863 566554997 799588075 186244437 152866011 77685914 514650194 689757867 567774282 587179274 152523810 413592826 770993588 829614460 78649514 4519262 29069209 932715562 32806834 476912096 827311105 5299425 949084393 850484222 299113502 426814174 814295984 485063015 554222239 195019158 893019475 874297853 900796599 307060809 769327548 337153847 538025980 388085842 358401766 495854210 783513992 250749017 915330573 241184545 610447918 577673184 991073887 458156391 431406787 396138845 738612855 403519778 136384659 581831913 917795074 866568903 831467447 543945175 163769090 223299794 931013644 938705675 40448245 47529701 375066210 727827821 424594759 79509313 152523810 792846009 275202504 636434256 610447918 179981178 156817178 290474734 74587532 87392830 215977916 754133002 98824830 285947848 954677909 829614460 700560235 955730659 979740237 81337657 302151126 607041944 633587956 337153847 201717402 841780337 774489082 338312978 975337465 546141085 814295984 590918818 562773407 79509313 152866011 589760538 975337465 66490779 490344724 256866745 332834875 992169078 13112382 989729323 617908997 888259120 31615284 694954883 328462418 531333917 601630030 223299794 954227928 978947655 148087911 252962990 448262245 112390393 745200166 983373150 700560235 984047482 874124920 400178823 710224239 506919968 554222239 408032939 888553258 859168292 633587956 53195413 533455280 841780337 769327548 49614749 135975430 632378665 640925332 424974082 572588387 587179274 274113481 678474526 133739154 396632533 490344724 448881532 234980621 870201182 206036522 735891721 840075867 170938835 151506993 815123402 56154381 539035187 94279561 964902255 679463383 971549242 956815883 925555858 444897967 446968233 683406807 573449906 53525809 140551765 140129038 711455867 514650194 829614460 321628921 162904272 228290502 324986193 663670886 452156279 572588387 476912096 142903358 2575238 570764323 353964006 683406807 225771141 858127225 806744033 917452919 136412292 532803593 786320493 358401766 888259120 587469038 246221518 944068218 509144872 420052652 207442482 851400664 155241439 499057158 550322314 876868627 852755974 129724737 338929165 958668995 981996224 322974842 330205547 432089082 579757115 117931902 478892468 296305836 266583970 242028021 629101079 78649514 573449906 799588075 788118407 882364001 36055646 688534928 15903366 545538425 520071928 206036522 55018341 661321016 495854210 211958450 841780337 590208882 866337119 751925989 186244437 559014304 187104147 982353486 285947848 630201811 213097363 448262245 310726569 860477160 721769014 326469359 458290565 679463383 403519778 653201202 103219970 887794841 592970093 533864165 884952974 637939784 250832323 195957995 463496366 292696118 623206361 745200166 485509833 575895835 264100442 778074990 78775552 514650194 353964006 652018277 566554997 595030753 882804101 554222239 396632533 900796599 495854210 882364001 968755777 554222239 338631458 770864525 719601437 417074904 172382592 190929591 543945175 326469359 390793037 53226850 213097363 888699423 859168292 125829791 780061015 763431295 687055288 174140940 572465104 255644658 858040709 109369069 400178823 420052652 625664180 498840912 413592826 533455280 969494113 43970470 831241130 662421393 53966525 583924389 160287690 932584021 708053570 215977916 989729323 438183310 854243215 131323888 744008188 444897967 371179314 23973553 462394151 966131311 79523589 93651148 955730659 244528344 859168292 738855203 662972501 83066601 361002681 922706719 636434256 83066601 506919968 745200166 307060809 562773407 15903366 645094664 237172271 640925332 718980624 638516505 694954883 367026304 52243955 705304879 5299425 814295984 630977998 43970470 66490779 215792516 588034909 915330573 396632533 23262398 721769014 886149363 458156391 215981255 678474526 455539394 965948435 735696627 979750308 808866527 81553943 21190596 174862116 396743027 420636144 186285312 912948600 619842427 299462930 151364594 923715439 723661847 40131409 451817798 137529801 269911067 338312978 480361743 459617527 678884863 114409323 489130642 535533605 700560235 767839638 125204206 485063015 387176309 969494113 854902633 686335042 760370490 56927881 181668423 667313812 857535330 889608806 432089082 38304068 514650194 650036494 266213579 628820972 705304879 408032939 367026304 965948435 982370833 729868696 422532994 860708299 940188502 514768035 533864165 140551765 125829791 934824360 604968568 209497607 568104980 509144872 746992914 726950461 769327548 566125822 837690635 223299794 485153920 225771141 201717402 694954883 703490607 506919968 98824830 762749463 103733806 507016471 674485068 114409323 695599688 750750593 703514531 588034909 432089082 718980624 214244685 554242697 311613451 715957434 802009078 215289803 650990283 507016471 745200166 852755974 156817178 36265302 559014304 806744033 24188768 916956968 967417280 220576148 444897967 852604705 757815664 369306500 931966477 978947655 145559297 403519778 286037808 175060805 128188331 940381563 633587956 325554372 151364594 205387898 838655651 686335042 533455280 342116147 115509283 592970093 420052652 975478549 471393875 330205547 809429735 205387898 431406787 556619020 940188502 996943901 211958450 376974209 855636134 338929165 938140278 616796881 603931167 907721720 633573519 531333917 640925332 732559957 308142020 581831913 709613471 841780337 703490607 464444922 284588557 324129364 637657473 446968233 93478833 964902255 78649514 296751278 363976852 979750308 259646582 719601437 637939784 656191811 32075030 313272965 489612980 792846009 888699423 934824360 303230482 114409323 247841801 463496366 31215478 656191811 208625324 842970782 938140278 476912096 663670886 103219970 633587956 36055646 247221668 678474526 704431513 2379379 513440742 119279869 125829791 662972501 80415088 448881532 802009078 918521256 202477791 262406489 740882715 311808379 420052652 170938835 602396426 37275245 753419354 744008188 754580366 739696834 21190596 539035187 152618584 995876182 688534928 170941326 152866011 934824360 640925332 527595027 553368896 266583970 308142020 459617527 992001870 81553943 128188331 548964093 662421393 52243955 251188854 842970782 860477160 762749463 650697444 52243955 10475035 359714925 234980621 7807006 640849273 307060809 926045944 60017144 210621083 764116955 583924389 571019028 290117216 726950461 298727845 282751746 181668423 991615550 769327548 792822959 271484655 750978759 42657625 403519778 98287438 400178823 681765297 767839638 306258744 462394151 803588261 246221518 931640418 943235508 306258744 262406489 484158080 795472528 878442641 975478549 751925989 256866745 591292508 713146141 590208882 138442062 610447918 990121035 98824830 397928982 251042004 996943901 270237875 721769014 431406787 314069534 860377902 582273012 425392410 452156279 268759041 520071928 630775839 437743643 760231333 213097363 922858580 582273012 770864525 145885851 284588557 128450928 816971086 359859765 656623172 264100442 540976336 851829959 994877696 964902255 931013644 7807006 214650974 942899938 67700412 625664180 896571061 207442482 603931167 719601437 135975430 112090095 567948101 597784477 462762217 218611070 942999703 359714925 776820092 984050047 98287438 554242697 932584021 146573202 603931167 835212499 215977916 223299794 876868627 220576148 632402794 754133002 23262398 424974082 600441802 352092606 751925989 762749463 228290502 452156279 304621545 349644605 751925989 963141978 610834602 338929165 554222239 424974082 882364001 698320352 481894295 205387898 275349681 589760538 703514531 338929165 38844979 721769014 562773407 831380531 456956861 119279869 80485362 213097363 862177563 697742034 633587956 590918818 269911067 729868696 550336314 572465104 743614603 496698204 575023903 735710261 47290536 735891721 64420967 10369081 992001870 647733367 109369069 10369081 663971090 443960759 858127225 330205547 740882715 613596687 305068796 916956968 586446680 758889515 540976336 137529801 38844979 990121035 32075030 516175014 885549757 195733178 53226850 942899938 257214051 272303478 583924389 20148474 702364434 942899938 407510599 5299425 471393875 172894131 321628921 963141978 653201202 376448548 457149478 934824360 663670886 186244437 214244685 548964093 101231409 145885851 115090276 636434256 626932919 311808379 514650194 592981604 721418370 588034909 290117216 781242822 662421393 264100442 244528344 713146141 696443558 246058339 638516505 687055288 270237875 938705675 103733806 252962990 129724737 732559957 266213579 829614460 32075030 225858850 125204206 360743135 295366548 37275245 982370833 223299794 525347105 112090095 946916156 215289803 499057158 722013570 938140278 170938835 721418370 790270533 430284321 458156391 637769046 624819674 117931902 63192647 757815664 300892929 145559297 396632533 73848009 916956968 703490607 793291205 432089082 727827821 632402794 910818482 567774282 172894131 38844979 761330904 129724737 815123402 653201202 812044550 598543708 459617527 922706719 646710523 462762217 943235508 795549341 433921335 242028021 420636144 932584021 581831913 854969794 463496366 344876805 396632533 702364434 676975489 816971086 557710104 396806189 870201182 888699423 589760538 152866011 20148474 15037608 47529701 857535330 138442062 302151126 630629857 913521589 79523589 663670886 55108095 153196022 458290565 332834875 88335614 451817798 702745028 32806834 866568903 966131311 413592826 633587956 506178629 679463383 459617527 678884863 441621000 98287438 1736950 363976852 128450928 293192373 506919968 786380583 607760956 254203892 182214511 38338132 668964848 851400664 49614749 215792516 193515742 553191189 983373150 877167702 288072509 247234349 781242822 931966477 526944836 366854683 632378665 289918211 687055288 215977916 349644605 585165457 835198840 242028021 960543625 432089082 938456692 302151126 984047482 704431513 63192647 539957336 478892468 255644658 337153847 511330454 965948435 662421393 989729323 457149478 853903669 177689820 353964006 920721173 186244437 885995802 403519778 982370833 969494113 954227928 969494113 38844979 744008188 840130613 213097363 422532994 960543625 911302173 664041213 425392410 938705675 633587956 427184372 745200166 49948206 650697444 852755974 926045944 780061015 72820570 246058339 93478833 37275245 432089082 420636144 687988023 310726569 882364001 330274784 802009078 172894131 687988023 556619020 484158080 678474526 219054502 33511708 804406873 979750308 211958450 313272965 401452903 678474526 751925989 983373150 953882020 531135820 975337465 623206361 278160655 400178823 803588261 531333917 626833449 587179274 152243323 727578179 838655651 597784477 203331888 334932282 770594967 630238886 888699423 668964848 765027062 744008188 802009078 674446970 652018277 853903669 559014304 140725908 567948101 667844649 754580366 437743643 190979155 970911538 438183310 458290565 975337465 106790696 132556595 937158597 830619816 408032939 148087911 215052415 633573519 134801439 586446680 939725993 432089082 505061211 266213579 559957428 923927991 163229392 687988023 37275245 361435434 613596687 77819776 140725908 765027062 167276070 770993588 896029805 931966477 989729323 753419354 776835194 547547687 687055288 547547687 965948435 502849508 459452716 967417280 369306500 193648030 978947655 503666498 750750593 135975430 207844781 292972503 441621000 103733806 888259120 931013644 775682536 920721173 786320493 874124920 494336936 190979155 382210484 827311105 960543625 563678994 579757115 803588261 246058339 860477160 121069546 681930584 630238886 757850417 36265302 950497221 732559957 835339516 522332929 123073176 408032939 358401766 458363994 67700412 975478549 270237875 167276070 202477791 854243215 992001870 896072909 757815664 315343704 604968568 806792339 538810384 592970093 31615284 382210484 917452919 522663253 275349681 995876182 688534928 459617527 430101007 790270533 242186770 572465104 401452903 664041213 656623172 403519778 662421393 55108095 831467447 359859765 807117750 424974082 598426014 874297853 103669472 962073361 944068218 53195413 401452903 808838846 195957995 88335614 683406807 159828635 941586175 918521256 540976336 688177128 628523361 282751746 247221668 560623000 595030753 516175014 433686203 993091440 685702028 307403622 577970627 719601437 600441802 762749463 302151126 581831913 932584021 979750308 214650974 426814174 776820092 63192647 31615284 463496366 548748527 581831913 215977916 175060805 23973553 624819674 193648030 283321520 575023903 543865019 882364001 443960759 156817178 382210484 862177563 232177196 511330454 5299425 428572243 337153847 244528344 997329398 600441802 874297853 704431513 989729323 190929591 427184372 257214051 776835194 835339516 882804101 884059813 27735709 363976852 793291205 138393155 787269565 94279561 10369081 98824830 394791153 660765062 79523589 683406807 167276070 617908997 334932282 783513992 604181881 931966477 349644605 619842427 186244437 824770361 446968233 770993588 163229392 32075030 616796881 430088921 55018341 831467447 307403622 332834875 942866882 514650194 624819674 688534928 140551765 82689280 722013570 40656291 10369081 289736829 858040709 920721173 984050047 982370833 394791153 575895835 267829614 396806189 215289803 581063820 792846009 163769090 225858850 904771946 195019158 591292508 378961655 40448245 838803091 877088774 602832600 857535330 628820972 23973553 629101079 940188502 7807006 518384931 137529801 803588261 146573202 840075867 441621000 264750083 711532060 209789164 27735709 21190596 942866882 154538466 866568903 131323888 464444922 878442641 984047482 24188768 267829614 237389399 711455867 78649514 746394036 783513992 128450928 152523810 225771141 938140278 509370562 630775839 852604705 230662076 121069546 770594967 334932282 722768643 699230813 884059813 507016471 685702028 581831913 700560235 925555858 633573519 699733109 632402794 225771141 920628541 53195413 464130920 902464469 271484655 1736950 610447918 136412292 882364001 140725908 854969794 138442062 242028021 635302209 683406807 960543625 299113502 134971740 685702028 63192647 38844979 699733109 735696627 866568903 125829791 310726569 765027062 792846009 480361743 382904427 619842427 667313812 261683638 836376015 408395896 352092606 877088774 247822207 464130920 121069546 806664207 808838846 799588075 296751278 484158080 667313812 982416551 19715614 115509283 140551765 152618584 313272965 538025980 548964093 202477791 776835194 773781000 620243558 47290536 494336936 208625324 134971740 683406807 698320352 40448245 399037712 551289217 618355033 855636134 509370562 481894295 983373150 135975430 550322314 816971086 571019028 862177563 767187616 641635851 252792947 922706719 923715439 31215478 573449906 40656291 215289803 674485068 299462930 570764323 737945381 209789164 795472528 181668423 831241130 471393875 667844649 31615284 616057762 567343883 761330904 637939784 842970782 125204206 800460688 538810384 287768226 152866011 195733178 115509283 38304068 757850417 638790258 695599688 159828635 954677909 729868696 626932919 47349911 109369069 393120342 876868627 841210236 882364001 739696834 264750083 566554997 723661847 683621666 748408317 931005739 886917295 207844781 683406807 330205547 610834602 87392830 740340897 77685914 431406787 885000402 354807942 205387898 131323888 668964848 244528344 56927881 133739154 338312978 219054502 968670974 93651148 174335822 292149520 186244437 748408317 488788762 678884863 324129364 653201202 328764419 632402794 311808379 835339516 570796148 885995802 405444604 637769046 761330904 269911067 835212499 202477791 283321520 876868627 556619020 797746066 727827821 498840912 299462930 660095934 896029805 567343883 196460706 577970627 165821462 910850066 249820698 464130920 232177196 152618584 163229392 195957995 478892468 947413305 152314280 992001870 507016471 547547687 992169078 877088774 632378665 975337465 795472528 257214051 699733109 626833449 656191811 591292508 522663253 660765062 52243955 242530683 726950461 247234349 283321520 850386354 378961655 429277230 604881661 941586175 400218902 214650974 155241439 481894295 543865019 295606018 758889515 586446680 896029805 917452919 870201182 306258744 232177196 67700412 53966525 242530683 324129364 464130920 195019158 854902633 938080232 115090276 218611070 485153920 522663253 735696627 808614164 950497221 53966525 43970470 361002681 49317804 775682536 637939784 187104147 623398671 557710104 900116034 727245017 979740237 288072509 162062292 207442482 864016134 56927881 498840912 788118407 331638088 579757115 42657625 376448548 946612927 334211676 542382913 2076768 877088774 63192647 922858580 225858850 921198791 251367294 31215478 404152565 430284321 647733367 735696627 597784477 877088774 155241439 425392410 369306500 32075030 299462930 746092812 134801439 538025980 776835194 98287438 60017144 456956861 449022331 13112382 885141769 78649514 79523589 900116034 786320493 361435434 78775552 797746066 942899938 83066601 330205547 837690635 88335614 882364001 193515742 42657625 2575238 617908997 514768035 581063820 458363994 295366548 778123726 539957336 854243215 351424753 311808379 946916156 625664180 757815664 719601437 991073887 485509833 650697444 750750593 562773407 767839638 41538784 907721720 306258744 842970782 53226850 299462930 430088921 283321520 809429735 310726569 247841801 353964006 10475035 944573659 911302173 317751260 358401766 505061211 637657473 996943901 885549757 572465104 254203892 35128915 492009082 735891721 428572243 310726569 860477160 746394036 572588387 854243215 513440742 885353274 23973553 498045048 23973553 247822207 480361743 338631458 966131311 835212499 857535330 106790696 328462418 186244437 299113502 311808379 190929591 757709512 773781000 968670974 687988023 573480571 211958450 568142039 455539394 885141769 154538466 764116955 931086800 860708299 138393155 495854210 430284321 641231120 117931902 780061015 583924389 800460688 654830523 55018341 292149520 629101079 763431295 972710252 546679009 38085353 465697134 128450928 882364001 298050322 135975430 968670974 687988023 750978759 396743027 2076768 917452919 841210236 585165457 817743547 575895835 53966525 538025980 771803404 887794841 390275103 938140278 682170984 956815883 781246194 152866011 225771141 900116034 749497174 481894295 874297853 966131311 56927881 554222239 781246194 13112382 458363994 619842427 458156391 650990283 715957434 511330454 931005739 481894295 63192647 361435434 983373150 992001870 408032939 40656291 592981604 308142020 841210236 74587532 713146141 610447918 572465104 559014304 37275245 637939784 103219970 887794841 313272965 911302173 475344103 38844979 172894131 884072178 397928982 32075030 860708299 860377902 77685914 462762217 48746678 49317804 531135820 950497221 285947848 674485068 252792947 595030753 754133002 195957995 522332929 783513992 990121035 722768643 29473993 830619816 505061211 600441802 338631458 490344724 627110568 103733806 213097363 193648030 186244437 604968568 361002681 917452919 427184372 597206610 566554997 745200166 446968233 618542887 300892929 860477160 676975489 242028021 159828635 592639233 757709512 82689280 400178823 93478833 52243955 289918211 955730659 60750487 143200457 38338132 226492467 94279561 627110568 950673785 721769014 554222239 310726569 237389399 250749017 840075867 557710104 746092812 646710523 209789164 390793037 290117216 548964093 344620844 835212499 687988023 885353274 675472009 885000402 152523810 325554372 210621083 841780337 295366548 727578179 623398671 520071928 28363157 420636144 292972503 699733109 135975430 496698204 93651148 520071928 210621083 896072909 830619816 885141769 408395896 324129364 135975430 174862116 115509283 287768226 230662076 2379379 757815664 960543625 363976852 246221518 567774282 789617647 633587956 246221518 546679009 872434540 490344724 737945381 545538425 399037712 254203892 902464469 926045944 314069534 64420967 205387898 101231409 713146141 550336314 246058339 750563611 581831913 286037808 496698204 502849508 330274784 39220584 831380531 135975430 56927881 247221668 943793512 83066601 630629857 942999703 299994808 244528344 683621666 679463383 449022331 545538425 539035187 632402794 925555858 154538466 938456692 803588261 298050322 135975430 831380531 653201202 10369081 626932919 106790696 913521589 172382592 774489082 307403622 465759767 353964006 982353486 539035187 650990283 885000402 210621083 602832600 604968568 196460706 21190596 175507355 264750083 396937914 181668423 225771141 757815664 582273012 884059813 942899938 858127225 220576148 585165457 449022331 38338132 225858850 581063820 400218902 877088774 831380531 211958450 667844649 656623172 167276070 617908997 686335042 186285312 984047482 83066601 172894131 195957995 790270533 257214051 282751746 53525809 632378665 15037608 960543625 140129038 36055646 532803593 571019028 408395896 32954995 751925989 531333917 13112382 390793037 53525809 527595027 331638088 307060809 502849508 209497607 387176309 79523589 630201811 573480571 50241607 359859765 417074904 112390393 953882020 571019028 581063820 749497174 268759041 36055646 93478833 543945175 862177563 853170454 43970470 739696834 74587532 994587826 855636134 223299794 407510599 495854210 21190596 560327459 455539394 810021050 663670886 557710104 292696118 838803091 430101007 140725908 429277230 990121035 498840912 174335822 190979155 79523589 786380583 792822959 877167702 495854210 860377902 535533605 444897967 960796073 128702236 992169078 292696118 287768226 860477160 307060809 244528344 749497174 946612927 938705675 740340897 624819674 920628541 330205547 619842427 137529801 512614298 674446970 73848009 522332929 1926282 812414090 489612980 851829959 1926282 79523589 585165457 451551269 136384659 702745028 174140940 140725908 292149520 77685914 931013644 456137963 269911067 806792339 590208882 56927881 344876805 288072509 358401766 143200457 553368896 711532060 215792516 325554372 103733806 427184372 266213579 299462930 396743027 152314280 28363157 786320493 242186770 884952974 131323888 205387898 203331888 625664180 900116034 630629857 590208882 579757115 259646582 972710252 751925989 250832323 942999703 570796148 778074990 52243955 259646582 359859765 982353486 715957434 485153920 143200457 152523810 403519778 769327548 81337657 592639233 338312978 271484655 394791153 98824830 79523589 465697134 546141085 687988023 40131409 705304879 579757115 860377902 713146141 786380583 170941326 610834602 37275245 115090276 79523589 712346140 618355033 966131311 570796148 971894015 602832600 637769046 241184545 632402794 981996224 808866527 413592826 807117750 829614460 886149363 134971740 920721173 566125822 328462418 647733367 326469359 607041944 396806189 939725993 98287438 932715562 136384659 526944836 93651148 687055288 854902633 683621666 674485068 851759377 547547687 32954995 645094664 981996224 202477791 53966525 675472009 964902255 854902633 727245017 344876805 247822207 264750083 314069534 308142020 170938835 854969794 250749017 40448245 237172271 286037808 400218902 663971090 971549242 270237875 896029805 824770361 885141769 422532994 992169078 776820092 885353274 53525809 983373150 303230482 51457589 776352608 382904427 546679009 63192647 926045944 699733109 32075030 831380531 512614298 220576148 712346140 327773233 885549757 778123726 931966477 983373150 430101007 667313812 39220584 997329398 799588075 808838846 632014852 369306500 641635851 498045048 958668995 396138845 407510599 315297566 652018277 780061015 152523810 719601437 835339516 727578179 695599688 249670598 98287438 630629857 652018277 699733109 877088774 288072509 982353486 962073361 78649514 891279504 478351140 456137963 640849273 625664180 47290536 400178823 50241607 162904272 53525809 174862116 286037808 727827821 42657625 835198840 151364594 841210236 563678994 891279504 913521589 511277493 577970627 812044550 838655651 667313812 47290536 337153847 430088921 47349911 904800517 283321520 538025980 496698204 840130613 359714925 595030753 485509833 6720560 288873549 298727845 140725908 540976336 376974209 931966477 854243215 32075030 458290565 786380583 452156279 911302173 775682536 242530683 965948435 498840912 35128915 1926282 249670598 420052652 566554997 215977916 975478549 101231409 607760956 41538784 307060809 640925332 241184545 920628541 874297853 982416551 560623000 488295044 729868696 688577702 963141978 687988023 463496366 551289217 851759377 652018277 52243955 885995802 79509313 431406787 36265302 860477160 209497607 913521589 207844781 23262398 727245017 125204206 382210484 128188331 452156279 438183310 726950461 740340897 592970093 681930584 771803404 966131311 535533605 917795074 396937914 878442641 179991869 814662325 393120342 581063820 137529801 929504680 349076114 41538784 960543625 628523361 831241130 705548145 778123726 278160655 687055288 247221668 2575238 740340897 160287690 151506993 560327459 583924389 735891721 456956861 786320493 13112382 708053570 991073887 79509313 547547687 885353274 306258744 413592826 156817178 246058339 412979540 152314280 858127225 426814174 444897967 587179274 851400664 458363994 896571061 620243558 142903358 972710252 567343883 925555858 74587532 66490779 292972503 47529701 126695727 247822207 878442641 526944836 675472009 955730659 551289217 307403622 975337465 870201182 251042004 170938835 514650194 103219970 662421393 806792339 93478833 891279504 6720560 314069534 257214051 664041213 41538784 167276070 703514531 522332929 408395896 47529701 953882020 623206361 354807942 984050047 428572243 870201182 152523810 155241439 771321738 215289803 261683638 459452716 992001870 262406489 247841801 727245017 302151126 79509313 484158080 246058339 292696118 49948206 80415088 616057762 776352608 592970093 539381059 207442482 840130613 27735709 251042004 841780337 538025980 522332929 268759041 152314280 954227928 359859765 407510599 664041213 548748527 757709512 201717402 186244437 551289217 962430008 431406787 247822207 109369069 267829614 982353486 195733178 743614603 916956968 675472009 771803404 492009082 215052415 705304879 267829614 591292508 688177128 926045944 262406489 740882715 579757115 464130920 699230813 617908997 134971740 518384931 114409323 433686203 152314280 840075867 607760956 145559297 55108095 715779797 175060805 950497221 842970782 653201202 1736950 927806038 962073361 242028021 88335614 830619816 1736950 328462418 388085842 502849508 607041944 101231409 179991869 219054502 550322314 982370833 159828635 433686203 727245017 840130613 160287690 430101007 55108095 396050095 557710104 481894295 992169078 572588387 475344103 190979155 604881661 854969794 859168292 900796599 213097363 215774690 836376015 736624310 352092606 915330573 359714925 703490607 795472528 876868627 2379379 567948101 531135820 745200166 539035187 827311105 602832600 538810384 119279869 786380583 786320493 13112382 246221518 305068796 459452716 904800517 806744033 538025980 850484222 77819776 581831913 630201811 458363994 67831588 872434540 490344724 778123726 268759041 592970093 921198791 478892468 174140940 7807006 74587532 448881532 662421393 667313812 431406787 325554372 351424753 955730659 24188768 272303478 234980621 764459345 77819776 215289803 10475035 989729323 876263470 852604705 123073176 53966525 311613451 758889515 650990283 241184545 640849273 962430008 633587956 19911869 757815664 838803091 129724737 376974209 151364594 891279504 857535330 327773233 610834602 829614460 363976852 960796073 604968568 981996224 289918211 68748842 568104980 539035187 946612927 835198840 931966477 361002681 209789164 874297853 151364594 965948435 855636134 174862116 617908997 338312978 827311105 187104147 264750083 121069546 128702236 587179274 407510599 494336936 302151126 781246194 407629453 2076768 448262245 841210236 577970627 581831913 425392410 136412292 886149363 397928982 700560235 48746678 73848009 400218902 214650974 601740259 289736829 806792339 617908997 729868696 586370291 943235508 723661847 607760956 41538784 938705675 982416551 597784477 193648030 885647994 994877696 1736950 266213579 939725993 884059813 762749463 681930584 800460688 780870754 218611070 994877696 2575238 994877696 66490779 603931167 852604705 41538784 775682536 174140940 962073361 50241607 767839638 464130920 514768035 322974842 623206361 322974842 885353274 674485068 325554372 583924389 601740259 956286779 607965234 748408317 686335042 354807942 776835194 489130642 964902255 428572243 207442482 904771946 49614749 129724737 860708299 420052652 250832323 269911067 399037712 917452919 646710523 53525809 940381563 484158080 688177128 738612855 77685914 855636134 566125822 98824830 396138845 407510599 196460706 396050095 570796148 982370833 624819674 32806834 780061015 234980621 554242697 678884863 750978759 922706719 49614749 152618584 757709512 133739154 686884353 255644658 938080232 174140940 315297566 862177563 635302209 93651148 420636144 74587532 359714925 577970627 870201182 562773407 458290565 271484655 918521256 31215478 226492467 685702028 683621666 663971090 10369081 992001870 49948206 745200166 781242822 630201811 627110568 366854683 342116147 955501918 441621000 932584021 942866882 292696118 241184545 786380583 38085353 40448245 938456692 540394532 298050322 242530683 925555858 740340897 965948435 851400664 485063015 864016134 159828635 650697444 597784477 740882715 330205547 675472009 63192647 641635851 152314280 311613451 554242697 788737791 327773233 955501918 939725993 50241607 979750308 947413305 376974209 723661847 590918818 572588387 463496366 332834875 248642173 478351140 182214511 358401766 732559957 721418370 620243558 93651148 134801439 802009078 79523589 804406873 860708299 885549757 842970782 264750083 938456692 542382913 853903669 626932919 887548285 940188502 205387898 292972503 852755974 152866011 623206361 975337465 907095826 570764323 955730659 886917295 24089615 428572243 241184545 678884863 859168292 687988023 808838846 264408147 938705675 603931167 739696834 917795074 627110568 896571061 307060809 878442641 994587826 257214051 806744033 424594759 128450928 700560235 514768035 776352608 543865019 736237188 170938835 760231333 630629857 740340897 896072909 838331644 313272965 929504680 299994808 824770361 991615550 375066210 727245017 598543708 727827821 851400664 522332929 115509283 732245352 334299650 964902255 261683638 767187616 334299650 795472528 888699423 963141978 481894295 835198840 257214051 527595027 344876805 970320952 592639233 114409323 162062292 213097363 587469038 496698204 748408317 382904427 797746066 842970782 154538466 267829614 600441802 283321520 430101007 607760956 538025980 1736950 804406873 960796073 499057158 138442062 527654256 441621000 152243323 782533040 80415088 1736950 688577702 607760956 432089082 735710261 74587532 458156391 438183310 853903669 967417280 891279504 577970627 509144872 247841801 964902255 783513992 925555858 430101007 778123726 428572243 667844649 661321016 338631458 944068218 778123726 135975430 215289803 723661847 424974082 771321738 942866882 753419354 944573659 50241607 252792947 430088921 140551765 590208882 664041213 855636134 560327459 209789164 687055288 358401766 744008188 540394532 313272965 254203892 571019028 174140940 764116955 575895835 215052415 303230482 726620654 540976336 334211676 917452919 485063015 956286779 195733178 830619816 761330904 80415088 146573202 652018277 872434540 305068796 427184372 581063820 396632533 83066601 620243558 56154381 604181881 953882020 664041213 396743027 396937914 181668423 515426984 633573519 378961655 979740237 902464469 351424753 943793512 949084393 33511708 518384931 983113723 797746066 630629857 47290536 36055646 559014304 196460706 539381059 943235508 244528344 509664709 326469359 870201182 152243323 764116955 60750487 722013570 451817798 338929165 590208882 981996224 838655651 299994808 940188502 997329398 67831588 338929165 407510599 866568903 514650194 531333917 156817178 806792339 763431295 686884353 60750487 516175014 308142020 338631458 722768643 699733109 922858580 266583970 623398671 19911869 457149478 170941326 858127225 495854210 846351340 311808379 215977916 448881532 295606018 159828635 860377902 63192647 547547687 983113723 929504680 249820698 740882715 408032939 396806189 852604705 126695727 19911869 251042004 163229392 41538784 995876182 290117216 963141978 757815664 509019925 293192373 478892468 396806189 509019925 581063820 193515742 915330573 287768226 465759767 907095826 922858580 506178629 801623766 387703244 303230482 560327459 540394532 694954883 47290536 780061015 740340897 758889515 956815883 962073361 429277230 735891721 344620844 590918818 206036522 196460706 99294732 531333917 74587532 625664180 289918211 306597948 923927991 718980624 954677909 682170984 196106606 668964848 553368896 735710261 913521589 390275103 264408147 887548285 709613471 571019028 575023903 330205547 430284321 577673184 876868627 602832600 269911067 746394036 464130920 963141978 242186770 128450928 407510599 19911869 422532994 114409323 745200166 509370562 814662325 506178629 783513992 979750308 215981255 19715614 601630030 683621666 548748527 311808379 932584021 160287690 135975430 628820972 837690635 324986193 533455280 330274784 553191189 907095826 885549757 19715614 876263470 739696834 195957995 315343704 696443558 205387898 700560235 397928982 840075867 726950461 292149520 711532060 498840912 550322314 40656291 226492467 913521589 514768035 938140278 117210451 886149363 579757115 208625324 19911869 946612927 713146141 956815883 170941326 478351140 165821462 481894295 145885851 991073887 767187616 72820570 38304068 215977916 190323279 6720560 159828635 936312210 403519778 688577702 338312978 32075030 272303478 210621083 310726569 653201202 708046990 715779797 390275103 953882020 790270533 23262398 382904427 331638088 458156391 776820092 337153847 321628921 324986193 209789164 56927881 626833449 939725993 420052652 433921335 913521589 874297853 115090276 711455867 255644658 396138845 289918211 708094860 39220584 449022331 703490607 782533040 804406873 10369081 462762217 79523589 617908997 836376015 74587532 195019158 126695727 20148474 396806189 858798711 174140940 646710523 115509283 944573659 286037808 55108095 618542887 970320952 663971090 130160246 683406807 602832600 809429735 548964093 499057158 68748842 757815664 758889515 538025980 841210236 478351140 566554997 601630030 334211676 604968568 33511708 128702236 160287690 154538466 405444604 247841801 306597948 931013644 762749463 681765297 53966525 760231333 750750593 153196022 668964848 931013644 40131409 723661847 225771141 41538784 744008188 967417280 858040709 550336314 762749463 783513992 858798711 464130920 213097363 654830523 137529801 264750083 485509833 570764323 577673184 740340897 128450928 567343883 307403622 428572243 448881532 424594759 246058339 877167702 47529701 289918211 299462930 456956861 907095826 431406787 944573659 763431295 52243955 632402794 776835194 366854683 546141085 117931902 390793037 917452919 812044550 455539394 167276070 645094664 359859765 24188768 859168292 598543708 757709512 992001870 853903669 770594967 550322314 428572243 505061211 738855203 543865019 72820570 764116955 77819776 495854210 702364434 207844781 422532994 396632533 674485068 182214511 1926282 498045048 545538425 918521256 47290536 427184372 193648030 32954995 878442641 767839638 885995802 629101079 485153920 708046990 40448245 800460688 877088774 984047482 208625324 376448548 13112382 311808379 254203892 195019158 126695727 134971740 247841801 252962990 795549341 727578179 703514531 630977998 862177563 106790696 967417280 624819674 40448245 726950461 838331644 5299425 780870754 420636144 210621083 232177196 715779797 36265302 290117216 400218902 700560235 1736950 630775839 841780337 795549341 896029805 763431295 522332929 489130642 359714925 602396426 396937914 228290502 195733178 290117216 390793037 786380583 889608806 73848009 246221518 334299650 996943901 738612855 315343704 751925989 195733178 412979540 860708299 562773407 851759377 801623766 938456692 911302173 556619020 269911067 66490779 804406873 33511708 838655651 817743547 538810384 916956968 590208882 256866745 966683628 817743547 23262398 944573659 328462418 790270533 209789164 449022331 946916156 505061211 138393155 24089615 203331888 744008188 311613451 475344103 129724737 568142039 929504680 306597948 548748527 835198840 804406873 884952974 78649514 888259120 738612855 505061211 696443558 47529701 344620844 858798711 931640418 630238886 142903358 328764419 270237875 984050047 949084393 646710523 827311105 968755777 920721173 175060805 896571061 713146141 64420967 874297853 577970627 589760538 575023903 983113723 886149363 307060809 917795074 2379379 247841801 800460688 738612855 668964848 886917295 713146141 93651148 505061211 136384659 676975489 465759767 79523589 929504680 299462930 50241607 993091440 878442641 668964848 174140940 788118407 303230482 288873549 215977916 232177196 203331888 535533605 610834602 448881532 332834875 314069534 115509283 566554997 946916156 140551765 465759767 52243955 247221668 543865019 559014304 33511708 484158080 485063015 351424753 400178823 760370490 187104147 926045944 390275103 806664207 252792947 862177563 24089615 306258744 246058339 133739154 420636144 617908997 446968233 73848009 708046990 743614603 601740259 546679009 667844649 816971086 572465104 950673785 413592826 954677909 771803404 103733806 607041944 660765062 248642173 830619816 650036494 598543708 572465104 954227928 29473993 835339516 735710261 776352608 601740259 548748527 997329398 533455280 498045048 864016134 962073361 242186770 937158597 133739154 458290565 489612980 570796148 570764323 306597948 757815664 207442482 293192373 806792339 982416551 87392830 215977916 103219970 296305836 24089615 768561257 535533605 801623766 283321520 154538466 968755777 247841801 36055646 430088921 885141769 654830523 420636144 941586175 841210236 559014304 288072509 922858580 397928982 955501918 509664709 448262245 287768226 637769046 225771141 808866527 910818482 451817798 628820972 28363157 250885472 306258744 36265302 289736829 49614749 407629453 324986193 396743027 218611070 438183310 739696834 303230482 708094860 618542887 860708299 633587956 735710261 768561257 53195413 575023903 887548285 675472009 24089615 32075030 792822959 332834875 307403622 480361743 47529701 917795074 806744033 363976852 36055646 696443558 506919968 862254110 812044550 650990283 495854210 53226850 296751278 527654256 557710104 344876805 405444604 843005594 607041944 991073887 520071928 743614603 2575238 843005594 81553943 261683638 885647994 814295984 543865019 264408147 764459345 855636134 397928982 234980621 984047482 407510599 404152565 306607837 382210484 922858580 601740259 551289217 496698204 715779797 288072509 920628541 992169078 94279561 24089615 430284321 810021050 547547687 616796881 533864165 602832600 942999703 404152565 242028021 792846009 456956861 887548285 567343883 678474526 807117750 52243955 412979540 165821462 926044257 250832323 420052652 778123726 73848009 112090095 831467447 812044550 783513992 405444604 931966477 581831913 363976852 79509313 843005594 754133002 289736829 722013570 32806834 885000402 203331888 858798711 843005594 727578179 888699423 359714925 695599688 140725908 181668423 334211676 652018277 32954995 567343883 812414090 251188854 628820972 228290502 817743547 202477791 360743135 163769090 572465104 650990283 727245017 103733806 298050322 878442641 506919968 396743027 167276070 1926282 250832323 915330573 209497607 311613451 205387898 153196022 121069546 306607837 485509833 691982506 225771141 94279561 485262404 923927991 282751746 705548145 667844649 31215478 727245017 656623172 850484222 1926282 851829959 430284321 128450928 203331888 249820698 40656291 955730659 617908997 155241439 769327548 462394151 888699423 711532060 769327548 767839638 702364434 616796881 315747769 349076114 308142020 546141085 887794841 396632533 598543708 866337119 595030753 515426984 264408147 109054120 492009082 885647994 174140940 397928982 802009078 616057762 203331888 885647994 946612927 4519262 214244685 456137963 994877696 505061211 587469038 287768226 407510599 627110568 675472009 459617527 966683628 607965234 183440003 616796881 656623172 859168292 193648030 776835194 884059813 179981178 211958450 582273012 931013644 458156391 950497221 250885472 322974842 812044550 745200166 315297566 480361743 19715614 53525809 556619020 854969794 288873549 471393875 963141978 311613451 851759377 367026304 160287690 575895835 983113723 31615284 735710261 80415088 623206361 681765297 311808379 884059813 590918818 884072178 735710261 610447918 182214511 932584021 620243558 954677909 604181881 298727845 687055288 705548145 531135820 183440003 112090095 954227928 314069534 215774690 841210236 306258744 328764419 295366548 2575238 430088921 732559957 498840912 934824360 553368896 7807006 21190596 353964006 103733806 314069534 264750083 560327459 553191189 726950461 595030753 299994808 28363157 205387898 542382913 420636144 334299650 896029805 702364434 891279504 53226850 554242697 498840912 726620654 430088921 315343704 292149520 145885851 773781000 625664180 123073176 15903366 770993588 218611070 196106606 382904427 632014852 711532060 32806834 721769014 597206610 711455867 465697134 939725993 945394518 678474526 770993588 420636144 499057158 7807006 738612855 378961655 816971086 19715614 420052652 972710252 23973553 718980624 334299650 835212499 109369069 334211676 808866527 607041944 887794841 852604705 949084393 698320352 162062292 35128915 838331644 776835194 598426014 962073361 581063820 299462930 254203892 162904272 101231409 667844649 289736829 195733178 640849273 972710252 215977916 52243955 696443558 938080232 31215478 815123402 838655651 10369081 21190596 394791153 268759041 494336936 770864525 995876182 478351140 47529701 840130613 835212499 29069209 735891721 886917295 509370562 115090276 960543625 23973553 885000402 688534928 870201182 82689280 247822207 860477160 285947848 42657625 647733367 885549757 187104147 424594759 464444922 201717402 237172271 433686203 749497174 877088774 494336936 628523361 77685914 550336314 307403622 888553258 641231120 904800517 726950461 275202504 978947655 412979540 53195413 489130642 446968233 431406787 112390393 478351140 136412292 430284321 175060805 42657625 223299794 618542887 853903669 705304879 256866745 183440003 143200457 941586175 77685914 244528344 781242822 412979540 854243215 888699423 592970093 451817798 694954883 949084393 689757867 681765297 646710523 917795074 636434256 838331644 29473993 975337465 953267424 932584021 775682536 884072178 119279869 769327548 944573659 946612927 1736950 420052652 937158597 992001870 51457589 93478833 581831913 748408317 478892468 723661847 726620654 464130920 962430008 32806834 334211676 72820570 515426984 763431295 590918818 936312210 732559957 532803593 754133002 715779797 330274784 681930584 592981604 626932919 55018341 632014852 981996224 911302173 396138845 311613451 699733109 268759041 338929165 858127225 249670598 723661847 190323279 478351140 505061211 540976336 698320352 945394518 451521521 332834875 781242822 760370490 620243558 31615284 896072909 237389399 458156391 43970470 458290565 696443558 632378665 538025980 698320352 215977916 456137963 214650974 175060805 837690635 990121035 753419354 983373150 99294732 767839638 563678994 992169078 298727845 218611070 688577702 7807006 502849508 298050322 129724737 288873549 567774282 179981178 532803593 137529801 683406807 170938835 917452919 87392830 958668995 761330904 956286779 939725993 967417280 782533040 691982506 718980624 228290502 616796881 710224239 812044550 681930584 781246194 302151126 910818482 215981255 570796148 774489082 53195413 955501918 55018341 115509283 559957428 132556595 338312978 797746066 485509833 322974842 103219970 255644658 134801439 136384659 808838846 633573519 174862116 630201811 179981178 637657473 970911538 904771946 47529701 387176309 781246194 264750083 842970782 38338132 683621666 949084393 403519778 824770361 981996224 931640418 646710523 700560235 732245352 74587532 979750308 691982506 36265302 553191189 394791153 723661847 136412292 630201811 32954995 53525809 737945381 23973553 616057762 151364594 708046990 913521589 978947655 10475035 981996224 344620844 196460706 145559297 841210236 602396426 136412292 502849508 4519262 244528344 719601437 562773407 376974209 489612980 761330904 806664207 630629857 570764323 27735709 559014304 597784477 98824830 77685914 115509283 624819674 946916156 782533040 219054502 246221518 228290502 812414090 32075030 835212499 24188768 66490779 674485068 195019158 911302173 971549242 797746066 616057762 763431295 250885472 24188768 683621666 308142020 49614749 992001870 35128915 681765297 55108095 585165457 604181881 617908997 713146141 131323888 287239117 950673785 324986193 660095934 112090095 949084393 179991869 721418370 925555858 843005594 711455867 429277230 138442062 685702028 793291205 679463383 526944836 32806834 624819674 799588075 272303478 770594967 896029805 186285312 662972501 306607837 592970093 244528344 397928982 387176309 641231120 358401766 310726569 40656291 851829959 228290502 38085353 511330454 891279504 518384931 792822959 490344724 36055646 43970470 687055288 854969794 10369081 295366548 582273012 502849508 627110568 275349681 81337657 585165457 232177196 568104980 394791153 94279561 829983432 457149478 112090095 862254110 912948600 326469359 960543625 183440003 140725908 259646582 495854210 681930584 683621666 293192373 556619020 53226850 668964848 936312210 136412292 696443558 618355033 751925989 376974209 24188768 196460706 923927991 338312978 577970627 592970093 877167702 726950461 154538466 943235508 286037808 390793037 72820570 726620654 1926282 732245352 911302173 146573202 617908997 968755777 489130642 978947655 125204206 607041944 660765062 960796073 156817178 836376015 862254110 938080232 808866527 916956968 56154381 160287690 926044257 543945175 876263470 560327459 854969794 36055646 795549341 251367294 801623766 106790696 396806189 49614749 559014304 215052415 10475035 573449906 203331888 298050322 966131311 509664709 975337465 98231977 923927991 550322314 135975430 223299794 201717402 119279869 705304879 550322314 286037808 554242697 626833449 678474526 786380583 989729323 876868627 376448548 967417280 852107700 315747769 754133002 846351340 2379379 29069209 485509833 797746066 732559957 806664207 232177196 917452919 249670598 633573519 719601437 592639233 939725993 275349681 996943901 428572243 758889515 656623172 964902255 617908997 36055646 247221668 636434256 703490607 625664180 824770361 646710523 938140278 443960759 455539394 762749463 131323888 889608806 465759767 441621000 193648030 20148474 660765062 965948435 715779797 509664709 163769090 37275245 703490607 306597948 215981255 114409323 864016134 722013570 626833449 448881532 99294732 989729323 931966477 676975489 846351340 937158597 941586175 38304068 545538425 349644605 801623766 408032939 74587532 781242822 215981255 726950461 695599688 850484222 778074990 2379379 586446680 55018341 295366548 992169078 41538784 459452716 488295044 463496366 809429735 225858850 864016134 636434256 862177563 694954883 289918211 48746678 896571061 35128915 478351140 38304068 269911067 722013570 641635851 52243955 702364434 448881532 274113481 630629857 429277230 220576148 151364594 721769014 921198791 683621666 131323888 990121035 78649514 568142039 152618584 394791153 851400664 732559957 432089082 602832600 38844979 509664709 539381059 674446970 215774690 628820972 663971090 396632533 910850066 607041944 514650194 635302209 407091770 170938835 257214051 938456692 633573519 330205547 882364001 757709512 950497221 546141085 375066210 485262404 259646582 636434256 969294148 36265302 757850417 735891721 53226850 143200457 292696118 215289803 954227928 979750308 553191189 296751278 763431295 623206361 302151126 155241439 103733806 403519778 633587956 114409323 562773407 195733178 375066210 52243955 904771946 452156279 610834602 134971740 687988023 870201182 117931902 853903669 193648030 306597948 93651148 250832323 464130920 248642173 274113481 310726569 888699423 624819674 770993588 87392830 653201202 7807006 540394532 727578179 703490607 668964848 40448245 38304068 174140940 767839638 6720560 588034909 949084393 885353274 567948101 601740259 219054502 836376015 653201202 780061015 115090276 835212499 78649514 514768035 882364001 288873549 408395896 757709512 480361743 962430008 887794841 934824360 257214051 311808379 735696627 885353274 332834875 300892929 570764323 531333917 577970627 939725993 954677909 313272965 230662076 860708299 42657625 570796148 195957995 812414090 259646582 925555858 532803593 953267424 322974842 160287690 455539394 806792339 64420967 49948206 831467447 56927881 610834602 636434256 98287438 953267424 926045944 817743547 806664207 246058339 67831588 992169078 23262398 88335614 743614603 842970782 702364434 137529801 302151126 337153847 375066210 735891721 804406873 404152565 816971086 972710252 878442641 283321520 735696627 554242697 763431295 971549242 430088921 896029805 567948101 452156279 808866527 841210236 237389399 960543625 270237875 36265302 931966477 860708299 715779797 315297566 67831588 382904427 514650194 850484222 29069209 852604705 74587532 324129364 896571061 79523589 583924389 53966525 602396426 55018341 893019475 522663253 259646582 841780337 575023903 515426984 936312210 112090095 885995802 623206361 31215478 907095826 215792516 388085842 407629453 792846009 835339516 934824360 190979155 522663253 499057158 623206361 539957336 193515742 430088921 750978759 816971086 215052415 511330454 433921335 503666498 78775552 15037608 566125822 575895835 162904272 633573519 721769014 93478833 735710261 740340897 627110568 862177563 554242697 32806834 456137963 835339516 218611070 630775839 568142039 242028021 526944836 274113481 507016471 942999703 647733367 196106606 789617647 884059813 979750308 251042004 451551269 407510599 870201182 808866527 337153847 13112382 896029805 428572243 735710261 650697444 506178629 274113481 195733178 945394518 757709512 953882020 433921335 567948101 495854210 326469359 996943901 425392410 394791153 408395896 299462930 152866011 134971740 424594759 382210484 633573519 896072909 626833449 850484222 525347105 187104147 73848009 506178629 132556595 87392830 685702028 790270533 485153920 979750308 103669472 88335614 760370490 36055646 53226850 992169078 208625324 459617527 148087911 285947848 131323888 699733109 344876805 33511708 129724737 630238886 214650974 400178823 286037808 137529801 83066601 721769014 696443558 159828635 145559297 361002681 152866011 965948435 196106606 378961655 992001870 960543625 553368896 902464469 24188768 310726569 884059813 311808379 38338132 456137963 851400664 721769014 80415088 494336936 591292508 405444604 539381059 577673184 900116034 916956968 837690635 514768035 292972503 170938835 247221668 49614749 131323888 49614749 562773407 638790258 652018277 433921335 645094664 458363994 292149520 993091440 746092812 287768226 275349681 581831913 518384931 539035187 292696118 620243558 854969794 636434256 603931167 400218902 152866011 995876182 918225489 708046990 942999703 81553943 654830523 711455867 954227928 708053570 780870754 699733109 754580366 452156279 877088774 872434540 700560235 726620654 151506993 207844781 722768643 182214511 572588387 750978759 128188331 40131409 617908997 618355033 705304879 983373150 152243323 349644605 969294148 560623000 882364001 38085353 770864525 256866745 295606018 727245017 465697134 646710523 103669472 514768035 234980621 866337119 488295044 267829614 228290502 559957428 465697134 711455867 358401766 207442482 603931167 223299794 99294732 543945175 797746066 10369081 464130920 387703244 351424753 112390393 129724737 607760956 931966477 396138845 142903358 767187616 740340897 978947655 778074990 750978759 705304879 907095826 455539394 264100442 840130613 315343704 954227928 963141978 746092812 979750308 900796599 647733367 650697444 963141978 862254110 138442062 407091770 602832600 754580366 885647994 816971086 220576148 808866527 682170984 206036522 371179314 840075867 782533040 74587532 711455867 177689820 311808379 575023903 918521256 795549341 581831913 700560235 664041213 681765297 557710104 103733806 737945381 917452919 579757115 944068218 887548285 765027062 870201182 757815664 338312978 617908997 664041213 290117216 196460706 361435434 711455867 186285312 448881532 270237875 971549242 430088921 299994808 926045944 247822207 949084393 246058339 138393155 732559957 303230482 994587826 862254110 509144872 425392410 662972501 42657625 78775552 424594759 215289803 259646582 896029805 674485068 207844781 803588261 163229392 23973553 641231120 527654256 688177128 305990981 506178629 886917295 735891721 438183310 808614164 770864525 795472528 67700412 630238886 215977916 396138845 326469359 764116955 617908997 81337657 587469038 934824360 138393155 960796073 21190596 607965234 695599688 79509313 208625324 623206361 502849508 296751278 462762217 119279869 770594967 112390393 637769046 699733109 721418370 307060809 315747769 247822207 886917295 103219970 417074904 713146141 958668995 597784477 417074904 250885472 456956861 311808379 23262398 288873549 32806834 143200457 242530683 187104147 619842427 237172271 816971086 776835194 814662325 732559957 632014852 984050047 884059813 836376015 407629453 975478549 215981255 349644605 645094664 989729323 783513992 996943901 518384931 262406489 148087911 446968233 363976852 311808379 183440003 68748842 586370291 172382592 760370490 48746678 28363157 463496366 757850417 852107700 480361743 968755777 214650974 566554997 363976852 625664180 929504680 882804101 215977916 250832323 546679009 962073361 857535330 937158597 774489082 55018341 145559297 307060809 600441802 485509833 183440003 780061015 23262398 40131409 417074904 902464469 954677909 806744033 653201202 408032939 292972503 140725908 49317804 735891721 275349681 36055646 757850417 112090095 630201811 220576148 261683638 451551269 691982506 49948206 326469359 338631458 722768643 543865019 289918211 971549242 302151126 250832323 598543708 975478549 854902633 287768226 431406787 424974082 687988023 630977998 838655651 27735709 911302173 145885851 944068218 225771141 966683628 40131409 945394518 884952974 512614298 314069534 583924389 757709512 950497221 247822207 38338132 729868696 40448245 4519262 47290536 172382592 430284321 683621666 807117750 509664709 32075030 324986193 966683628 458290565 816971086 896072909 80485362 328764419 628523361 810021050 940188502 624819674 743614603 737945381 196106606 55108095 860377902 182214511 29069209 757709512 640925332 136412292 23973553 726620654 722768643 812414090 462762217 727578179 293192373 458290565 136384659 795472528 296305836 568142039 703514531 249820698 884072178 55108095 478351140 509144872 656623172 581831913 653201202 250885472 846351340 896029805 736237188 498045048 261683638 170941326 315747769 597784477 804406873 515426984 590208882 337153847 237389399 285947848 289918211 854243215 966131311 910818482 190929591 531135820 103733806 458290565 619842427 494336936 618542887 618355033 757815664 939725993 244528344 787269565 498840912 971549242 488295044 994587826 885549757 371179314 563678994 509019925 650990283 699230813 911302173 708046990 776820092 539035187 773781000 505061211 626833449 424974082 874124920 516175014 854969794 426814174 628523361 943235508 190979155 554242697 982370833 682170984 174140940 698320352 685702028 311808379 367026304 342116147 484158080 145885851 771321738 390275103 163769090 992169078 489612980 778123726 480361743 307403622 688577702 190323279 610447918 51457589 269911067 870201182 992001870 838803091 570764323 218611070 152618584 573480571 563678994 283321520 860477160 602832600 151364594 588034909 67831588 975478549 490344724 359859765 618542887 272303478 83066601 225771141 840130613 607760956 769327548 896029805 271484655 662972501 511330454 853903669 484158080 831241130 678884863 353964006 284588557 546141085 513440742 708094860 326469359 732245352 109369069 249670598 115090276 246221518 652018277 782533040 922858580 975478549 532803593 526944836 567948101 812044550 650990283 719601437 539957336 196460706 512614298 400178823 292149520 531333917 527654256 162904272 719307635 163229392 774489082 256866745 936312210 668964848 911302173 186244437 148087911 81553943 687988023 686335042 991073887 571019028 101231409 459617527 334299650 5299425 518384931 678474526 663670886 732559957 946916156 53195413 190979155 962073361 94279561 79523589 884072178 992169078 214650974 397928982 855636134 256866745 275202504 310726569 586370291 387703244 887794841 708094860 540976336 63192647 617908997 427184372 540976336 387703244 884072178 2379379 567774282 715957434 587469038 588034909 760231333 249670598 499057158 854243215 691982506 464444922 748408317 112390393 723661847 625664180 428572243 992169078 331638088 299462930 257214051 400178823 417074904 87392830 663670886 646710523 550336314 225771141 904800517 754133002 958668995 165821462 920721173 408032939 586370291 831241130 950673785 573480571 125829791 328764419 31215478 686335042 31215478 531135820 215981255 607760956 705304879 172382592 577970627 853170454 242186770 560327459 705548145 338631458 271484655 656191811 702364434 992169078 94279561 938080232 590208882 400178823 181668423 299462930 331638088 306597948 931013644 838803091 904800517 620243558 633587956 628820972 946612927 250885472 921198791 718980624 617908997 990121035 40448245 88335614 295606018 307403622 196106606 750750593 956815883 511277493 637657473 778123726 540394532 667313812 746092812 570796148 152523810 732245352 633573519 463496366 967417280 506178629 770993588 315297566 518384931 128450928 209789164 325554372 740340897 2575238 73848009 165821462 917452919 682170984 662421393 885000402 551289217 509019925 846351340 858798711 548748527 624819674 492009082 47529701 944068218 400218902 101231409 79523589 640925332 938456692 542382913 676975489 801623766 137529801 590208882 196460706 851400664 79509313 610447918 81553943 567343883 737945381 247221668 87392830 710224239 806792339 633587956 782533040 904800517 851829959 705304879 829983432 15037608 81553943 456956861 735891721 363976852 48746678 911302173 509144872 586446680 932715562 299113502 860708299 705304879 475344103 10475035 420636144 703514531 388085842 623398671 761330904 721418370 220576148 931640418 997329398 550336314 874297853 503666498 515426984 126695727 306597948 887794841 207844781 947413305 400178823 598543708 371179314 966683628 812414090 74587532 535533605 797746066 53966525 40656291 276676140 268759041 443960759 80485362 163229392 203331888 413592826 942999703 49614749 757815664 413592826 721418370 916956968 271484655 520071928 674485068 63192647 305990981 531333917 430088921 225858850 430101007 971549242 922858580 573480571 24188768 98231977 211958450 121069546 98824830 494336936 264408147 627110568 247221668 267829614 293192373 47349911 242186770 556619020 215792516 160287690 900796599 815123402 462762217 376974209 292696118 938080232 994877696 994587826 770993588 77685914 637939784 891279504 786380583 815123402 480361743 858040709 50241607 925555858 94279561 452156279 117931902 571019028 623398671 163229392 50241607 276676140 982370833 923715439 788737791 459617527 840075867 511277493 407629453 394791153 975337465 5299425 703514531 79509313 982353486 359859765 548748527 252792947 451817798 943235508 140129038 397928982 331638088 119279869 628523361 625664180 244528344 992169078 28363157 812414090 321628921 694954883 32806834 686335042 704431513 638790258 32075030 299994808 305990981 683621666 840075867 771803404 407629453 250749017 264750083 932715562 923927991 711532060 128702236 376448548 675472009 835198840 982416551 2379379 31215478 47529701 942999703 225858850 128702236 971549242 619842427 566554997 465697134 495854210 527654256 831241130 633587956 776835194 915330573 838803091 247221668 505061211 874124920 970911538 286037808 836376015 946916156 478892468 862254110 136412292 50241607 55018341 38844979 601740259 525347105 732559957 266213579 285947848 361435434 288072509 750563611 307403622 387176309 792846009 290117216 882804101 430088921 226492467 641635851 300892929 710224239 888259120 6720560 697742034 151506993 276676140 563678994 195733178 210621083 63192647 814295984 732559957 949084393 535533605 862177563 207844781 753419354 287239117 610447918 249670598 712346140 885141769 40656291 896072909 80415088 934824360 251188854 618355033 138393155 187104147 982370833 776835194 591292508 607760956 210621083 806792339 152866011 683621666 956286779 361002681 837690635 464444922 125829791 360743135 953882020 60017144 776820092 307060809 465759767 330274784 201717402 579757115 802009078 52243955 485153920 195733178 50241607 290474734 432089082 664041213 24188768 981996224 950497221 506178629 570764323 713146141 705304879 334211676 115090276 250749017 753419354 781242822 705548145 369306500 15037608 155241439 885995802 754133002 650990283 624819674 575895835 403519778 201717402 179991869 401452903 582273012 15037608 713146141 77819776 371179314 656623172 566125822 776820092 556619020 293192373 918521256 953882020 560327459 931013644 800460688 39220584 403519778 736624310 170938835 417074904 835212499 660765062 448881532 662421393 735710261 860477160 866337119 950673785 842970782 94279561 829614460 783513992 306597948 887794841 121069546 888553258 376448548 488295044 918521256 485153920 800460688 215981255 962430008 242028021 462394151 151506993 944573659 623398671 559957428 851400664 539035187 835339516 179991869 958668995 324129364 306607837 771803404 451817798 568142039 638516505 636434256 929504680 459617527 979740237 543945175 202477791 546141085 630775839 172894131 28363157 215289803 567774282 568142039 831467447 459617527 553191189 112390393 598426014 36265302 234980621 27735709 432089082 88335614 567343883 885353274 129724737 853903669 131323888 601740259 133739154 315343704 546679009 942866882 736624310 613596687 904771946 636434256 688577702 282751746 705304879 940381563 60750487 990121035 922706719 218611070 117931902 342116147 969294148 885141769 219054502 965948435 854902633 620243558 21190596 790270533 768561257 632378665 780870754 437743643 129724737 944573659 73848009 376448548 927806038 128450928 783513992 282751746 827311105 539035187 630775839 697742034 396806189 990121035 42657625 628820972 31615284 835198840 269911067 851759377 539957336 172382592 295606018 560327459 210621083 689757867 430088921 403519778 770993588 361002681 950673785 522332929 623398671 509370562 740340897 396632533 738855203 853170454 932584021 393120342 956286779 514768035 247234349 170941326 128702236 458363994 683406807 694954883 888699423 1736950 944068218 456137963 715779797 566554997 575895835 979750308 465697134 656191811 770594967 841780337 623398671 349076114 299113502 215289803 626932919 771803404 885995802 815123402 548748527 249820698 765027062 627110568 640925332 81553943 900796599 337153847 592639233 732559957 911302173 128450928 982370833 662972501 305068796 400218902 15037608 170938835 428572243 535533605 132556595 20148474 259646582 448881532 776352608 68748842 363976852 969494113 795549341 627110568 554222239 128450928 242186770 78775552 982416551 682170984 931640418 531135820 640849273 713146141 425392410 307403622 780870754 249820698 417074904 907721720 326469359 509664709 190929591 79509313 991073887 459452716 950497221 800460688 550336314 678474526 6720560 288072509 131323888 307403622 430088921 907721720 736237188 592981604 926045944 296751278 735696627 52243955 183440003 852107700 513440742 175060805 407629453 77685914 456956861 543945175 652018277 334932282 585165457 860708299 254203892 452156279 78649514 789617647 38338132 923715439 878442641 165821462 751925989 635302209 50241607 581831913 152523810 66490779 628523361 2076768 269911067 359859765 587469038 77685914 302151126 866568903 538810384 812414090 735696627 940381563 247221668 938705675 776820092 2076768 211958450 19715614 417074904 559957428 215977916 896072909 583924389 2076768 882364001 138442062 209789164 744008188 444897967 307060809 503666498 531333917 152243323 964902255 854902633 780061015 931013644 19911869 464130920 836376015 242530683 114409323 512614298 300892929 31215478 485063015 128188331 577673184 438183310 7807006 992001870 300892929 770993588 382210484 401452903 592981604 623398671 616057762 652018277 842970782 738612855 628820972 850386354 464444922 201717402 516175014 513440742 140551765 840130613 852107700 478351140 27735709 533864165 137529801 663670886 81337657 563678994 140725908 215774690 590918818 525347105 330274784 975337465 53966525 539957336 88335614 577970627 664041213 932584021 835212499 31215478 711455867 941586175 912948600 858127225 757709512 242028021 711532060 688577702 427184372 489130642 853170454 921198791 324986193 186285312 968670974 662421393 225771141 490344724 121069546 132556595 338929165 931966477 315343704 344620844 808838846 190979155 624819674 702364434 252792947 489130642 299994808 542382913 568142039 778074990 780061015 203331888 715957434 485153920 2379379 152243323 515426984 797746066 870201182 289918211 767187616 855636134 726620654 660765062 334932282 266213579 205387898 334299650 858798711 619842427 732245352 771321738 327773233 763431295 560327459 705304879 852755974 293192373 376974209 538025980 223299794 807117750 590918818 540394532 852755974 738855203 220576148 804406873 48746678 688534928 708053570 876263470 498045048 886917295 179981178 41538784 330274784 911302173 859168292 904800517 140551765 814662325 597784477 920628541 964902255 598426014 570796148 50241607 246058339 115509283 870201182 32806834 485509833 597206610 282751746 753419354 971549242 807117750 463496366 498840912 145885851 958668995 860708299 835339516 55018341 610834602 592981604 50241607 179981178 53525809 520071928 857535330 307403622 532803593 620243558 628523361 543945175 489612980 780061015 177689820 548964093 696443558 829614460 93651148 56927881 292149520 588034909 586370291 963141978 954227928 806792339 770594967 554242697 151364594 858798711 344876805 891279504 527654256 963141978 570764323 739696834 29069209 969494113 700560235 424974082 850386354 397928982 344876805 806744033 140129038 708046990 626932919 53195413 489612980 850484222 931640418 196460706 979740237 241184545 814295984 338631458 456956861 860708299 132556595 885141769 321628921 522663253 553368896 404152565 438183310 896029805 932584021 60017144 619842427 627110568 577970627 296751278 195957995 51457589 270237875 993091440 917452919 324986193 80485362 359714925 181668423 359859765 950497221 607041944 619842427 160287690 492009082 276676140 679463383 511277493 745200166 376974209 489612980 175060805 296305836 114409323 882364001 851829959 954677909 393120342 431406787 51457589 831467447 334211676 807117750 106790696 710224239 568142039 387176309 806744033 966131311 134801439 598543708 764116955 244528344 79523589 840130613 931005739 910850066 68748842 678884863 885353274 293192373 713146141 40656291 808838846 299113502 902464469 623398671 970911538 563678994 866337119 456956861 708094860 358401766 942899938 585165457 515426984 910850066 155241439 562773407 463496366 424594759 207844781 660765062 88335614 736237188 24089615 542382913 215289803 567774282 981996224 152866011 342116147 177689820 307060809 109369069 788118407 768561257 382210484 938140278 792822959 103669472 40131409 746992914 792846009 242186770 656191811 548748527 163229392 936312210 667313812 305990981 852107700 23973553 175507355 271484655 859168292 956286779 726620654 215981255 223299794 328462418 687055288 132556595 918521256 685702028 27735709 264750083 215289803 904800517 628820972 244528344 315297566 637769046 744008188 941586175 250885472 695599688 687055288 306607837 47349911 465697134 103219970 431406787 264297813 776352608 764116955 94279561 404152565 422532994 300892929 771321738 916956968 93651148 225858850 878442641 251367294 432089082 699733109 843005594 781242822 770993588 2379379 929504680 452156279 904771946 792846009 420052652 78775552 550336314 934824360 481894295 548964093 430101007 767187616 585165457 511277493 926044257 708046990 292972503 984047482 753419354 496698204 80415088 632378665 885549757 38304068 904800517 971549242 824770361 616796881 210621083 630238886 735696627 498045048 326469359 638790258 533455280 937158597 305990981 582273012 776820092 306597948 915330573 314069534 911302173 78775552 602396426 520071928 136384659 509019925 768561257 404152565 502849508 607965234 917795074 19911869 24188768 290474734 653201202 815123402 13112382 729868696 448262245 835212499 638516505 953267424 455539394 393120342 886149363 282751746 210621083 638790258 304621545 2379379 328462418 387703244 929504680 888259120 802009078 195733178 696443558 854243215 640925332 337153847 401452903 632378665 600441802 252962990 251042004 209497607 295366548 686335042 299113502 51457589 539381059 251367294 444897967 121069546 683406807 55108095 451817798 56927881 215792516 462394151 966683628 413592826 754580366 907095826 154538466 727245017 900116034 213097363 949084393 426814174 485153920 727245017 311613451 298050322 746992914 451551269 489130642 441621000 49317804 49948206 430088921 451521521 215981255 475344103 247841801 746394036 954227928 249820698 401452903 338312978 595030753 175060805 296305836 788118407 942999703 601740259 685702028 215289803 56154381 858798711 604968568 573449906 304621545 186244437 950673785 962430008 932584021 87392830 679463383 560327459 831467447 842970782 451817798 290474734 490344724 485262404 433686203 338929165 261683638 589760538 462762217 938080232 430088921 983113723 601630030 938705675 854902633 256866745 769327548 218611070 465759767 718980624 298727845 699733109 228290502 729868696 652018277 688177128 82689280 420636144 994877696 630238886 286037808 393120342 691982506 550322314 152618584 232177196 247006479 978947655 244528344 618355033 190929591 299462930 270237875 889608806 407629453 554242697 546679009 103219970 705548145 767187616 471393875 427184372 884072178 87392830 575023903 35128915 53525809 246221518 626833449 572465104 583924389 995876182 334299650 781246194 570764323 313272965 438183310 256866745 306607837 790270533 247234349 896072909 967417280 590918818 652018277 251367294 945394518 175060805 396050095 47349911 703490607 708046990 428572243 475344103 773781000 960796073 885549757 103219970 769327548 841780337 946612927 778123726 653201202 686335042 408395896 944573659 623398671 393120342 242530683 874297853 401452903 456137963 73848009 623206361 807117750 761330904 547547687 2076768 652018277 376974209 955501918 459452716 148087911 852604705 499057158 117210451 103669472 143200457 31215478 647733367 562773407 456137963 843005594 288873549 242186770 5299425 982370833 762749463 193648030 979750308 237389399 776835194 278160655 708046990 244528344 393120342 492009082 795472528 190979155 841210236 196106606 858798711 920628541 775682536 562773407 252962990 950673785 592981604 278160655 140725908 610447918 63192647 237389399 923715439 215774690 790270533 424594759 708046990 854902633 841210236 331638088 851829959 126695727 618355033 326469359 313272965 154538466 984047482 722768643 509144872 640849273 413592826 23973553 220576148 562773407 338929165 43970470 727245017 851400664 912948600 857535330 656191811 994877696 98231977 177689820 789617647 284588557 376448548 23262398 885353274 311613451 566554997 683406807 511277493 465697134 859168292 177689820 376448548 190929591 841780337 462762217 360743135 591292508 866337119 954227928 119279869 610447918 750750593 401452903 918521256 567343883 424974082 633587956 441621000 695599688 249820698 152866011 674446970 994877696 424974082 638516505 404152565 53525809 250832323 876868627 667844649 183440003 944573659 876263470 993091440 163769090 87392830 208625324 478892468 344876805 943235508 126695727 686884353 465759767 246221518 969294148 764459345 900116034 938705675 577970627 396632533 675472009 165821462 366854683 912948600 638516505 789617647 269911067 635302209 457149478 56927881 920721173 334932282 292696118 498045048 888699423 829614460 255644658 885141769 740340897 938705675 587469038 33511708 53226850 885353274 904800517 601740259 633587956 79523589 47290536 885000402 885995802 182214511 705304879 117210451 109369069 338312978 215977916 225771141 306607837 699230813 292149520 792822959 927806038 49614749 936312210 989729323 448262245 579757115 955501918 607760956 808866527 522332929 259646582 787269565 753419354 891279504 344876805 207442482 799588075 854243215 128702236 676975489 15037608 476912096 626833449 812044550 332834875 852107700 774489082 668964848 242028021 190323279 53525809 137529801 568104980 587179274 637657473 983113723 754580366 424974082 527654256 910818482 429277230 300892929 949084393 485063015 29069209 451551269 896571061 708053570 760370490 697742034 211958450 970320952 947413305 81553943 247841801 136412292 53525809 938080232 586446680 266583970 660095934 568142039 305990981 896072909 938140278 994587826 538810384 570796148 142903358 324986193 208625324 993091440 637657473 195733178 264408147 394791153 464130920 841780337 275202504 252792947 546679009 790270533 932584021 750750593 940188502 795472528 296305836 979750308 570764323 939725993 132556595 376448548 633573519 213097363 126695727 790270533 444897967 674446970 255644658 448881532 407510599 172382592 653201202 520071928 24188768 134801439 428572243 607760956 770993588 19911869 721418370 400218902 956286779 938080232 877167702 664041213 396050095 382904427 72820570 750750593 886149363 573449906 255644658 896029805 604968568 220576148 23262398 98231977 816971086 885647994 946916156 334932282 15037608 808614164 982353486 249670598 344620844 5299425 306607837 726950461 757850417 902464469 592639233 52243955 251188854 581831913 619842427 77685914 956286779 554242697 290117216 36265302 940188502 836376015 814662325 782533040 746992914 860708299 575895835 776835194 926044257 179981178 148087911 872434540 746992914 884952974 548748527 628820972 138393155 994587826 431406787 509664709 181668423 338312978 28363157 667313812 183440003 190323279 304621545 662972501 358401766 527595027 840130613 287768226 211958450 829983432 900796599 592981604 430284321 19715614 407629453 15903366 361435434 984047482 660095934 726620654 29069209 387703244 743614603 560623000 115090276 152314280 696443558 996943901 830619816 918521256 638516505 698320352 931966477 616796881 72820570 972710252 553368896 896072909 550336314 711532060 774489082 37275245 363976852 145885851 967417280 885647994 129724737 88335614 1926282 835198840 471393875 376974209 93478833 4519262 296305836 250749017 195957995 505061211 597206610 831380531 992001870 835212499 244528344 382210484 874124920 252962990 877167702 47349911 876868627 548964093 632402794 451551269 653201202 792846009 795549341 667313812 396806189 138442062 202477791 4519262 802009078 739696834 738855203 314069534 451817798 496698204 722768643 246221518 257214051 170938835 311613451 249670598 152866011 646710523 760370490 514768035 705548145 506919968 740340897 397928982 776352608 47349911 719307635 687055288 695599688 506178629 715779797 721769014 827311105 507016471 712346140 852604705 757815664 338929165 592639233 451521521 743614603 682170984 219054502 4519262 292149520 134801439 581063820 403519778 93651148 722013570 750563611 667844649 15037608 764116955 152243323 557710104 938140278 800460688 910850066 781242822 43970470 635302209 553191189 984047482 13112382 852107700 132556595 51457589 431406787 613596687 695599688 589760538 691982506 866337119 135975430 778123726 567948101 896072909 546679009 841780337 247234349 352092606 396806189 997329398 315747769 485509833 261683638 726620654 587469038 953267424 151506993 587179274 295366548 841780337 640925332 119279869 125204206 990121035 237389399 408032939 799588075 396632533 840130613 182214511 660095934 315297566 663670886 983113723 247841801 452156279 877088774 19715614 860477160 757709512 328462418 788118407 950673785 433921335 618542887 983373150 550336314 732559957 311613451 874297853 163769090 708046990 289918211 970911538 117931902 737945381 259646582 103219970 888699423 792822959 650697444 130160246 138393155 940381563 926044257 146573202 850386354 196460706 498840912 441621000 803588261 121069546 117931902 371179314 920721173 943793512 480361743 554242697 971894015 33511708 585165457 427184372 950673785 267829614 638516505 250885472 855636134 786320493 862254110 19715614 290117216 427184372 807117750 400178823 31615284 394791153 966131311 889608806 738855203 590918818 242028021 566125822 344876805 604881661 746092812 458290565 585165457 213097363 936312210 408032939 514650194 566125822 284588557 330205547 991073887 942866882 769327548 5299425 688577702 145885851 911302173 543865019 195957995 382904427 512614298 494336936 322974842 800460688 591292508 812414090 82689280 314069534 568104980 667844649 430284321 781246194 10475035 186244437 768561257 912948600 363976852 686884353 975337465 325554372 484158080 55018341 626932919 32954995 117931902 360743135 601630030 635302209 553368896 349076114 652018277 225858850 575023903 978947655 740340897 446968233 525347105 635302209 133739154 400178823 763431295 145885851 135975430 907721720 969294148 317751260 190929591 359859765 430101007 172382592 547547687 209497607 72820570 623206361 876263470 607965234 431406787 112090095 617908997 248642173 315747769 960543625 808866527 195019158 630775839 758889515 917795074 630629857 877088774 676975489 586446680 790270533 776820092 931005739 367026304 992169078 295606018 711532060 290117216 167276070 575895835 543945175 982370833 981996224 922858580 810021050 904771946 509019925 917452919 112090095 489612980 452156279 628523361 708094860 770993588 708046990 913521589 413592826 408395896 859168292 109369069 559957428 156817178 851829959 738855203 311808379 971894015 778123726 322974842 36055646 942999703 632378665 704431513 196460706 527654256 641231120 214244685 47349911 874124920 792846009 131323888 781242822 931013644 119279869 196106606 36265302 99294732 77685914 254203892 800460688 830619816 452156279 931640418 592981604 525347105 424974082 448262245 112090095 32075030 475344103 488295044 762749463 271484655 587179274 712346140 739696834 931013644 137529801 210621083 788118407 228290502 944573659 932584021 764116955 396806189 771803404 152523810 498045048 641635851 810021050 286037808 249820698 462762217 841780337 878442641 943235508 21190596 237172271 152618584 77685914 103669472 744008188 770864525 327773233 154538466 19715614 640925332 535533605 39220584 560327459 128188331 761330904 542382913 66490779 38338132 175060805 971894015 288873549 776352608 722013570 242028021 338312978 638516505 314069534 754580366 119279869 953882020 793291205 656623172 337153847 135975430 852604705 533864165 452156279 645094664 49614749 776820092 851829959 600441802 488788762 860377902 885141769 876868627 860708299 73848009 68748842 876263470 885000402 257214051 699230813 722768643 932715562 610447918 426814174 412979540 853170454 876868627 885647994 177689820 5299425 132556595 800460688 553368896 81553943 488295044 579757115 488295044 781246194 979740237 121069546 135975430 218611070 480361743 940381563 878442641 815123402 585165457 687055288 278160655 543865019 807117750 48746678 900116034 52243955 302151126 215052415 125204206 262406489 351424753 49614749 430088921 992169078 503666498 485509833 142903358 687055288 837690635 283321520 211958450 991615550 958668995 250885472 332834875 264100442 598426014 114409323 941586175 300892929 481894295 505061211 230662076 282751746 396743027 888259120 878442641 623206361 774489082 708046990 408395896 252792947 128702236 896072909 975337465 531135820 24188768 494336936 38338132 449022331 628523361 32954995 465759767 732559957 559014304 588034909 533864165 195019158 681765297 15903366 577970627 579757115 675472009 776835194 942999703 630238886 921198791 571019028 215774690 109054120 662421393 283321520 831467447 522332929 417074904 771803404 60750487 397928982 702364434 573480571 979740237 841780337 860477160 713146141 637657473 943235508 148087911 55018341 864016134 616057762 610834602 369306500 292696118 964902255 575895835 560327459 131323888 968755777 489612980 630977998 361435434 686884353 953882020 387703244 93651148 812414090 533455280 749497174 550336314 907721720 481894295 776835194 514650194 121069546 456956861 764116955 691982506 931005739 929504680 27735709 926044257 520071928 366854683 859168292 751925989 250749017 363976852 850484222 140129038 246221518 196106606 782533040 679463383 349076114 366854683 246221518 196106606 838803091 831467447 283321520 366854683 607965234 498840912 207844781 305990981 314069534 738612855 464444922 709613471 937158597 774489082 912948600 857535330 923715439 862177563 964902255 80415088 750750593 740340897 601740259 691982506 121069546 575023903 829614460 31615284 735891721 131323888 850484222 351424753 588034909 918225489 590918818 408395896 506919968 242186770 607041944 23262398 458156391 125204206 509370562 177689820 650036494 551289217 300892929 31615284 324129364 783513992 800460688 351424753 789617647 21190596 81337657 174140940 441621000 931013644 328764419 704431513 282751746 570764323 971549242 953882020 573480571 322974842 806792339 969294148 579757115 551289217 607041944 117931902 249820698 675472009 352092606 457149478 361002681 915330573 399037712 23973553 852755974 215792516 87392830 878442641 582273012 797746066 299462930 298727845 509664709 803588261 872434540 271484655 37275245 922858580 394791153 289918211 494336936 215774690 507016471 219054502 393120342 480361743 984050047 269911067 32954995 723661847 283321520 840130613 699733109 228290502 767187616 292149520 641231120 591292508 128450928 626833449 405444604 637939784 550322314 575023903 944573659 632402794 859168292 754580366 531333917 284588557 668964848 860377902 767187616 954677909 694954883 465697134 179991869 783513992 543945175 601630030 53195413 77819776 970320952 696443558 829983432 151364594 349076114 769327548 713146141 660765062 4519262 858127225 668964848 559014304 727827821 882364001 5299425 950673785 727578179 215792516 573480571 80415088 925555858 174140940 130160246 328462418 775682536 264750083 650036494 619842427 506178629 532803593 337153847 425392410 397928982 703490607 399037712 765027062 114409323 946916156 29473993 202477791 812044550 551289217 776835194 190929591 516175014 816971086 853903669 567774282 829983432 186285312 667313812 618542887 459617527 133739154 36055646 40448245 324129364 206036522 975478549 271484655 218611070 430101007 98231977 931086800 250885472 412979540 246058339 206036522 754133002 966683628 49614749 152243323 884952974 770993588 962073361 125204206 570796148 702364434 509144872 931086800 866337119 770594967 190323279 74587532 572465104 351424753 708053570 776352608 560623000 638516505 842970782 361435434 550322314 451817798 79523589 922706719 831380531 154538466 106790696 210621083 172382592 806664207 478892468 923927991 699733109 40448245 632378665 679463383 931005739 125829791 506919968 618542887 349076114 430284321 943235508 78649514 635302209 712346140 55018341 735696627 396632533 927806038 531333917 623398671 186244437 888699423 390275103 190929591 33511708 135975430 566125822 99294732 838803091 215792516 979750308 751925989 288072509 32075030 137529801 778074990 625664180 568104980 163229392 93651148 597784477 32806834 509019925 600441802 404152565 354807942 983113723 154538466 420636144 247234349 515426984 154538466 315343704 567948101 708094860 660095934 396632533 661321016 328764419 115509283 762749463 234980621 859168292 681765297 138442062 15037608 338312978 292696118 858040709 295606018 209497607 264408147 137529801 498840912 250749017 778074990 592970093 877088774 36055646 604968568 566554997 328462418 313272965 98287438 266583970 430088921 589760538 101231409 970911538 816971086 891279504 600441802 531135820 888699423 282751746 917795074 509019925 691982506 250885472 723661847 106790696 298727845 732245352 803588261 781246194 956286779 20148474 920628541 103219970 992001870 19715614 488295044 130160246 581063820 369306500 274113481 307060809 745200166 264297813 465697134 162904272 640925332 81337657 332834875 975478549 814295984 10369081 956286779 10369081 438183310 632378665 600441802 896029805 334299650 140725908 884072178 449022331 938140278 727245017 979740237 36055646 938140278 325554372 554222239 241184545 888553258 817743547 641635851 306597948 807117750 792846009 587469038 15903366 481894295 196460706 770993588 505061211 746992914 853903669 838331644 782533040 946916156 573480571 420052652 509370562 230662076 299462930 351424753 664041213 927806038 353964006 575023903 516175014 719307635 282751746 464130920 249820698 982416551 970320952 115090276 55108095 619842427 288072509 610834602 272303478 926044257 40131409 583924389 687055288 553191189 396138845 485153920 313272965 196106606 475344103 654830523 338312978 590208882 19715614 140129038 758889515 674485068 382210484 247841801 955730659 98824830 186244437 619842427 581831913 448262245 808838846 675472009 699230813 864016134 213097363 247841801 307403622 885549757 955730659 911302173 964902255 654830523 353964006 567774282 841210236 854969794 272303478 354807942 342116147 269911067 554242697 702364434 403519778 760231333 556619020 695599688 24089615 904800517 195733178 851400664 560623000 115090276 970320952 768561257 776835194 215981255 629101079 31615284 896029805 502849508 587179274 886917295 134801439 1926282 175060805 904800517 776835194 632402794 888259120 60750487 387703244 518384931 134801439 42657625 744008188 704431513 307403622 650697444 128450928 247841801 179981178 656623172 548964093 142903358 912948600 712346140 353964006 640849273 662972501 533864165 641231120 645094664 27735709 540394532 808838846 214244685 328764419 712346140 750978759 261683638 698320352 152243323 179981178 877088774 394791153 215977916 451551269 955501918 983373150 774489082 592970093 550336314 647733367 215977916 287239117 806664207 128450928 255644658 812044550 78649514 215052415 797746066 404152565 183440003 910818482 254203892 697742034 855636134 137529801 274113481 782533040 577970627 750978759 334299650 522663253 115090276 806744033 53525809 732559957 532803593 543945175 920628541 907721720 40656291 47529701 603931167 788118407 570764323 515426984 154538466 668964848 151364594 378961655 860477160 494336936 776820092 128450928 559014304 451521521 688534928 19911869 687988023 780061015 135975430 507016471 882364001 476912096 264408147 852755974 125829791 152314280 653201202 896072909 941586175 746394036 637657473 361002681 103733806 829983432 610834602 912948600 366854683 196460706 23262398 47529701 595030753 686884353 502849508 918521256 485153920 852107700 94279561 636434256 598426014 984047482 802009078 488788762 533864165 256866745 64420967 885647994 196106606 315297566 746092812 923715439 306607837 962073361 31215478 607041944 954677909 628820972 860377902 282751746 806664207 361002681 886917295 388085842 743614603 140551765 292972503 907095826 929504680 458363994 290117216 338631458 675472009 531135820 740882715 266583970 387176309 87392830 601630030 405444604 882364001 250885472 251188854 155241439 592639233 767187616 652018277 165821462 618542887 506919968 858127225 616796881 50241607 172894131 269911067 764116955 740882715 38304068 860477160 37275245 117931902 404152565 306258744 604181881 138393155 290474734 570764323 103219970 542382913 543865019 888553258 420636144 546679009 315343704 148087911 931005739 896571061 405444604 710224239 451551269 82689280 970320952 936312210 853170454 358401766 757709512 190979155 963141978 626833449 252962990 559014304 287239117 563678994 250749017 228290502 577673184 942999703 582273012 214244685 735891721 23973553 37275245 299113502 114409323 98824830 433921335 429277230 984050047 264408147 2076768 757850417 448881532 183440003 711455867 38338132 896072909 878442641 112090095 471393875 98231977 838331644 300892929 407510599 209497607 407091770 994587826 893019475 117210451 132556595 925555858 678884863 970320952 702364434 884952974 67831588 984047482 547547687 618355033 687988023 376448548 351424753 978947655 746092812 249820698 215774690 250749017 628523361 968670974 705304879 207844781 422532994 942866882 992001870 459452716 719307635 771803404 604968568 923715439 913521589 33511708 945394518 179981178 931013644 405444604 770993588 795472528 354807942 850484222 600441802 32954995 602396426 38304068 688534928 841780337 433686203 732245352 153196022 446968233 259646582 764459345 604968568 727827821 920721173 376448548 554222239 5299425 809429735 907095826 153196022 750750593 181668423 506919968 109369069 140551765 947413305 458363994 568104980 641231120 840130613 404152565 551289217 29473993 931640418 749497174 103669472 337153847 82689280 925555858 268759041 276676140 206036522 505061211 929504680 287768226 610447918 566125822 704431513 711532060 982370833 249670598 562773407 727245017 991073887 262406489 754580366 613596687 6720560 781242822 485153920 287239117 736237188 572465104 944068218 290474734 254203892 885141769 99294732 87392830 770864525 592981604 956286779 543945175 502849508 485262404 303230482 137529801 652018277 378961655 757815664 172382592 152618584 498045048 367026304 758889515 299113502 749497174 783513992 918521256 138393155 981996224 876868627 613596687 801623766 264297813 208625324 969494113 807117750 207442482 202477791 732245352 540394532 891279504 663670886 349644605 710224239 5299425 915330573 514768035 797746066 560327459 577970627 708053570 567774282 721769014 40448245 451551269 73848009 604181881 430088921 590918818 502849508 20148474 190979155 668964848 29069209 727578179 773781000 145885851 430101007 638790258 23262398 451551269 407629453 349076114 53226850 727245017 109369069 49948206 193648030 378961655 703490607 590918818 489612980 841210236 882364001 838803091 305990981 918521256 230662076 721769014 888699423 858798711 590208882 262406489 770864525 134971740 23973553 349076114 982416551 33511708 969294148 507016471 539381059 174862116 860377902 588034909 982353486 664041213 619842427 509370562 306258744 193515742 632402794 241184545 401452903 288873549 295366548 182214511 931640418 300892929 568104980 835198840 830619816 337153847 303230482 573449906 284588557 186244437 838331644 550322314 190929591 771803404 140129038 376448548 396806189 388085842 424594759 942866882 115090276 733642252 581063820 925555858 270237875 186244437 514650194 485509833 242028021 885141769 846351340 620243558 465759767 746394036 444897967 885647994 133739154 215289803 735696627 559957428 126695727 969494113 835339516 667313812 886917295 792822959 709613471 739696834 632402794 854243215 586446680 334932282 660765062 531333917 886917295 806744033 259646582 993091440 315747769 35128915 539381059 315297566 770864525 315343704 858127225 464444922 152618584 884952974 878442641 715957434 254203892 732559957 430088921 566554997 675472009 334932282 50241607 630977998 982370833 51457589 687988023 604881661 886917295 667844649 512614298 694954883 721418370 582273012 675472009 793291205 264750083 729868696 956286779 566125822 367026304 313272965 640925332 937158597 745200166 902464469 550336314 163229392 128702236 394791153 709613471 750978759 429277230 628820972 484158080 338631458 72820570 963141978 545538425 324129364 586446680 866568903 125829791 630977998 674485068 317751260 843005594 560327459 632014852 179991869 64420967 53195413 932584021 317751260 151364594 746394036 230662076 995876182 462762217 359714925 910850066 539035187 525347105 971549242 700560235 624819674 931640418 808838846 21190596 925555858 428572243 698320352 47290536 36265302 208625324 330205547 575023903 737945381 640925332 328764419 363976852 792846009 126695727 408032939 661321016 632378665 284588557 452156279 577970627 494336936 827311105 285947848 705304879 361002681 39220584 978947655 743614603 767839638 746092812 359859765 328462418 485262404 98824830 226492467 429277230 602832600 480361743 589760538 210621083 394791153 551289217 250749017 53525809 964902255 918225489 775682536 344876805 475344103 807117750 27735709 982353486 750978759 209789164 307060809 64420967 223299794 632014852 36055646 142903358 400178823 703490607 940381563 129724737 636434256 831467447 382904427 830619816 52243955 539957336 556619020 429277230 647733367 567948101 942899938 840130613 369306500 50241607 77685914 802009078 349644605 408395896 618355033 568104980 145885851 433686203 250885472 581063820 314069534 738612855 36265302 67831588 162904272 53226850 250832323 21190596 342116147 244528344 923715439 292696118 79509313 292149520 163229392 736624310 667313812 702364434 613596687 311613451 287239117 177689820 175060805 955501918 475344103 40656291 4519262 131323888 449022331 145559297 858040709 206036522 573449906 295366548 786320493 305990981 426814174 431406787 938456692 109369069 130160246 208625324 831241130 945394518 307403622 67831588 264100442 311613451 311808379 763431295 636434256 136384659 79509313 827311105 938080232 247841801 616796881 630775839 475344103 860477160 136412292 547547687 546141085 451817798 32954995 765027062 220576148 261683638 859168292 940188502 63192647 858127225 237172271 753419354 399037712 650697444 310726569 43970470 592981604 151364594 573480571 814295984 699733109 618542887 476912096 807117750 315297566 361435434 138442062 992001870 288873549 921198791 51457589 768561257 902464469 745200166 962073361 862177563 800460688 918225489 607041944 683406807 215289803 295606018 902464469 804406873 761330904 760370490 559957428 190929591 916956968 80485362 179981178 877167702 526944836 274113481 767839638 696443558 488788762 921198791 592970093 654830523 641231120 598543708 163229392 910850066 195733178 38844979 817743547 994877696 195019158 125829791 782533040 835339516 37275245 703514531 618355033 949084393 290474734 135975430 874297853 929504680 587179274 499057158 806792339 80415088 589760538 650697444 571019028 425392410 689757867 816971086 175060805 920721173 390793037 600441802 727578179 478351140 687055288 210621083 48746678 396050095 735710261 633587956 426814174 931086800 548964093 302151126 938456692 982353486 376974209 884072178 601740259 311613451 103219970 502849508 866337119 751925989 835212499 480361743 494336936 900116034 942899938 681765297 36055646 662421393 159828635 148087911 170941326 67700412 767839638 572588387 852604705 765027062 452156279 900116034 983373150 289736829 24089615 80415088 330274784 152866011 882804101 940188502 441621000 128188331 668964848 115509283 324129364 876868627 296751278 886149363 841780337 484158080 152314280 768561257 29473993 32075030 382904427 289736829 179981178 257214051 812414090 559014304 266583970 533455280 250885472 525347105 764116955 570764323 727827821 862177563 750750593 663670886 699230813 533864165 616057762 211958450 218611070 740882715 53195413 49317804 601740259 499057158 520071928 638516505 588034909 947413305 66490779 275349681 170941326 774489082 739696834 874124920 795472528 214244685 938080232 991073887 715957434 554222239 522332929 630775839 2379379 444897967 33511708 654830523 112090095 688577702 81337657 882364001 511277493 769327548 408032939 444897967 686884353 958668995 464444922 650697444 441621000 247221668 676975489 954677909 408032939 545538425 298050322 328462418 579757115 485153920 943793512 719307635 749497174 929504680 676975489 367026304 627110568 53525809 858798711 679463383 167276070 412979540 981996224 806664207 616057762 396743027 130160246 746992914 625664180 661321016 29473993 653201202 40131409 42657625 195019158 430284321 912948600 331638088 146573202 302151126 98231977 156817178 288072509 129724737 516175014 652018277 5299425 407510599 975478549 140129038 299994808 527654256 165821462 553191189 831380531 264408147 853170454 862177563 711532060 430101007 441621000 174140940 437743643 660095934 55018341 80485362 682170984 675472009 403519778 183440003 570796148 553368896 2379379 292696118 942899938 723661847 266583970 289736829 912948600 215792516 264297813 554222239 215052415 888553258 699733109 259646582 527595027 511330454 400218902 696443558 686335042 331638088 630629857 190929591 249820698 947413305 597784477 299113502 53195413 321628921 452156279 806664207 667313812 830619816 854243215 663971090 451551269 598426014 968670974 946916156 923715439 308142020 246058339 927806038 778123726 769327548 572465104 765027062 393120342 904771946 382210484 862254110 531333917 53525809 311808379 275202504 207844781 619842427 870201182 93478833 311808379 478351140 152314280 911302173 708053570 31215478 338929165 632402794 130160246 326469359 942866882 451817798 451521521 93478833 193515742 214650974 330274784 941586175 872434540 920628541 674446970 628523361 424974082 770993588 715957434 548748527 315343704 527654256 170938835 773781000 997329398 264750083 426814174 292696118 404152565 843005594 750978759 103669472 459617527 47290536 910818482 401452903 604881661 38844979 506178629 753419354 885353274 583924389 678474526 203331888 607760956 780870754 459452716 292149520 535533605 626833449 664041213 43970470 780061015 275202504 754133002 641635851 566554997 366854683 932715562 653201202 836376015 251042004 112390393 271484655 891279504 456956861 276676140 917452919 53966525 361435434 485509833 490344724 937158597 712346140 10369081 109369069 694954883 308142020 916956968 809429735 220576148 74587532 662972501 575023903 568142039 780870754 246058339 210621083 337153847 422532994 266583970 451817798 841780337 140129038 629101079 152618584 462394151 992001870 29473993 877088774 207442482 13112382 140725908 148087911 687055288 40656291 960543625 814662325 324129364 709613471 213097363 910850066 872434540 760231333 994587826 946612927 476912096 103669472 841780337 626833449 635302209 214650974 213097363 156817178 446968233 581063820 246058339 956815883 249820698 270237875 338631458 840130613 119279869 966131311 325554372 771321738 207442482 888553258 963141978 251042004 81337657 247841801 815123402 540976336 858040709 900116034 170938835 93651148 338929165 196106606 88335614 920628541 970320952 626932919 509144872 242028021 396937914 358401766 910818482 358401766 195019158 893019475 969494113 540976336 560623000 295366548 713146141 512614298 287239117 938140278 938705675 38844979 498045048 264408147 103219970 420052652 852107700 462762217 146573202 877167702 970911538 151506993 790270533 551289217 810021050 425392410 458363994 455539394 378961655 295606018 650036494 929504680 128450928 278160655 792822959 428572243 252792947 929504680 509144872 268759041 579757115 854902633 726620654 286037808 866337119 361435434 554242697 893019475 965948435 206036522 854243215 864016134 498045048 431406787 972710252 920628541 378961655 242028021 925555858 854902633 324986193 190929591 778123726 748408317 68748842 93651148 792846009 32806834 232177196 855636134 170938835 290117216 970911538 326469359 397928982 783513992 459617527 799588075 443960759 98824830 195019158 637939784 29473993 807117750 688177128 886149363 87392830 80485362 566125822 637769046 962430008 190979155 232177196 736624310 207442482 148087911 727578179 32806834 590918818 780870754 79523589 858127225 831241130 554222239 138442062 163769090 509664709 407510599 311808379 931086800 349644605 306258744 162904272 808866527 656191811 887794841 225858850 465697134 506178629 954227928 186244437 967417280 682170984 855636134 638790258 38844979 10369081 375066210 535533605 237389399 872434540 971894015 858798711 490344724 313272965 795549341 815123402 367026304 66490779 803588261 806744033 244528344 792846009 637939784 313272965 942999703 195733178 722768643 456137963 153196022 112390393 654830523 317751260 322974842 968755777 920721173 55108095 662421393 781246194 464130920 287768226 183440003 342116147 420052652 910818482 920628541 604881661 917452919 780061015 626833449 296751278 41538784 764116955 234980621 187104147 177689820 885647994 289736829 788118407 559014304 165821462 215977916 307060809 783513992 963141978 695599688 509664709 946612927 52243955 396050095 667313812 363976852 488788762 806664207 47349911 430284321 767187616 299113502 98231977 538025980 885000402 843005594 63192647 877167702 859168292 275202504 907095826 776820092 632378665 632014852 175060805 966683628 984047482 982370833 960543625 538810384 207844781 94279561 311808379 408395896 225771141 230662076 858040709 783513992 29473993 328462418 112090095 765027062 317751260 851400664 767187616 736624310 604181881 31215478 636434256 688577702 983373150 31215478 314069534 151364594 36265302 592639233 522663253 290117216 456137963 295606018 390275103 840075867 387703244 745200166 267829614 326469359 33511708 949084393 338312978 82689280 193515742 763431295 342116147 748408317 853903669 478351140 87392830 74587532 531135820 967417280 187104147 860477160 330274784 511330454 300892929 321628921 359714925 688577702 143200457 387176309 172894131 703490607 290474734 788737791 870201182 242028021 324986193 719307635 38304068 433686203 223299794 366854683 446968233 598543708 708053570 407629453 664041213 396806189 778123726 786380583 509370562 645094664 854243215 547547687 179981178 740340897 764116955 950497221 597784477 681930584 371179314 721418370 686335042 650697444 727827821 177689820 130160246 538810384 1736950 247234349 568142039 955501918 382210484 527654256 464444922 768561257 888259120 456956861 140725908 753419354 984047482 29069209 566125822 275202504 7807006 299113502 850484222 840075867 47349911 499057158 19911869 911302173 266583970 736237188 735710261 751925989 727245017 554222239 68748842 186285312 262406489 786380583 907095826 42657625 256866745 153196022 835198840 133739154 793291205 806664207 218611070 430284321 588034909 201717402 53195413 688577702 464444922 488295044 726620654 49317804 786320493 982416551 531333917 982416551 476912096 1926282 55018341 709613471 66490779 532803593 182214511 396806189 387703244 72820570 860708299 623398671 746394036 583924389 721769014 878442641 394791153 498840912 993091440 854902633 393120342 215792516 315297566 140129038 749497174 431406787 310726569 247006479 306597948 64420967 315297566 632402794 885141769 846351340 179981178 94279561 56927881 274113481 160287690 206036522 739696834 923927991 592970093 72820570 33511708 401452903 721769014 910850066 635302209 740340897 81337657 760370490 247822207 40656291 885000402 485153920 437743643 80485362 889608806 237389399 970320952 489130642 726950461 992001870 494336936 247006479 682170984 39220584 334932282 886917295 916956968 23262398 338631458 753419354 668964848 876868627 81337657 932584021 546141085 15037608 396138845 688534928 140725908 722768643 566125822 994877696 516175014 700560235 251367294 457149478 688177128 610834602 338631458 802009078 800460688 991073887 853170454 431406787 650036494 563678994 2076768 268759041 568142039 946612927 750978759 846351340 424974082 32075030 960796073 351424753 884952974 430088921 408032939 82689280 81337657 824770361 382210484 420052652 296751278 590208882 114409323 816971086 964902255 332834875 739696834 910850066 287768226 72820570 462394151 60750487 971549242 911302173 835198840 618542887 264100442 525347105 727827821 910850066 38304068 931966477 179991869 920628541 866337119 795549341 522663253 242028021 506919968 430284321 328764419 592639233 146573202 971894015 664041213 78649514 758889515 315747769 638790258 407091770 325554372 918225489 870201182 802009078 282751746 602396426 939725993 47290536 195733178 940188502 390793037 633573519 852755974 1926282 970911538 595030753 399037712 663670886 735710261 947413305 727827821 129724737 646710523 196106606 276676140 195957995 29473993 827311105 485063015 757850417 7807006 140129038 405444604 592639233 424974082 488295044 792822959 954677909 195019158 125204206 722013570 851400664 854243215 956815883 426814174 746992914 983113723 311613451 160287690 284588557 378961655 575895835 687055288 637657473 780061015 679463383 506178629 131323888 109054120 93651148 88335614 738612855 852107700 429277230 727827821 290117216 262406489 591292508 708094860 567343883 625664180 533455280 852604705 481894295 931005739 630775839 668964848 917452919 739696834 814295984 397928982 195957995 698320352 455539394 787269565 586446680 992169078 754580366 882804101 740340897 241184545 1926282 81553943 424594759 531135820 82689280 962430008 838331644 942866882 206036522 247822207 721418370 359714925 455539394 550322314 783513992 288873549 140129038 860708299 876868627 638790258 174140940 896072909 80485362 376974209 780870754 448881532 412979540 767187616 40448245 689757867 765027062 918521256 257214051 49614749 860477160 138442062 838655651 458363994 770864525 515426984 366854683 376974209 632014852 687055288 660765062 566125822 878442641 175060805 186285312 266583970 80485362 170938835 464130920 509370562 502849508 718980624 82689280 607760956 992001870 782533040 274113481 10369081 306258744 51457589 154538466 778123726 567774282 507016471 663971090 215289803 750563611 205387898 148087911 403519778 877088774 699733109 99294732 179981178 254203892 121069546 428572243 708046990 302151126 38085353 140129038 79523589 940188502 853903669 480361743 708053570 709613471 209497607 93651148 324986193 302151126 313272965 363976852 667844649 181668423 98231977 633573519 88335614 408395896 174862116 683406807 237172271 922858580 778123726 271484655 140725908 876868627 250885472 876263470 618355033 518384931 938456692 921198791 727245017 610447918 589760538 653201202 997329398 142903358 992169078 351424753 983113723 23973553 88335614 783513992 511277493 78649514 931005739 595030753 114409323 719307635 694954883 480361743 708046990 570764323 762749463 913521589 647733367 456956861 616796881 125829791 218611070 332834875 708053570 438183310 623206361 132556595 767839638 457149478 55108095 768561257 531135820 13112382 324986193 955501918 19715614 351424753 995876182 982416551 938456692 438183310 613596687 687988023 495854210 73848009 560327459 47290536 413592826 298727845 159828635 592639233 237172271 431406787 324986193 780870754 36265302 274113481 313272965 681765297 262406489 591292508 394791153 630201811 250749017 417074904 32954995 860477160 535533605 193648030 215289803 215792516 587179274 969294148 205387898 196106606 566554997 757815664 441621000 47290536 136412292 799588075 36055646 498840912 885353274 876263470 252962990 954677909 711455867 448262245 15903366 480361743 729868696 958668995 943793512 465759767 218611070 705304879 307403622 920628541 859168292 367026304 572465104 854902633 727827821 931966477 119279869 982416551 885000402 261683638 573480571 23262398 516175014 887794841 841780337 601630030 195019158 433686203 531135820 98824830 841210236 808866527 327773233 953882020 939725993 675472009 420636144 807117750 225771141 723661847 27735709 234980621 509370562 630201811 38085353 332834875 726950461 321628921 298050322 884072178 109054120 396050095 726620654 938140278 885141769 193648030 618355033 776352608 459617527 286037808 19715614 788737791 190323279 332834875 146573202 430284321 732245352 457149478 264100442 49317804 267829614 982353486 400178823 533864165 403519778 927806038 287768226 429277230 15903366 918225489 548964093 518384931 620243558 663670886 498045048 583924389 288072509 396806189 252962990 133739154 458363994 203331888 616796881 956815883 885647994 641635851 925555858 152618584 938456692 857535330 36265302 603931167 361002681 396806189 744008188 743614603 989729323 74587532 727578179 763431295 942899938 53525809 458290565 801623766 907095826 480361743 488788762 884059813 754133002 703514531 842970782 638516505 10369081 630201811 688177128 266213579 376974209 255644658 143200457 73848009 441621000 917452919 975478549 572588387 359714925 462762217 587179274 723661847 668964848 255644658 850484222 765027062 507016471 456956861 607965234 751925989 56927881 554222239 866568903 931966477 175507355 6720560 338929165 270237875 262406489 626833449 577673184 854902633 835212499 456956861 968755777 773781000 252962990 29069209 520071928 550336314 249820698 154538466 560327459 640849273 32954995 843005594 613596687 42657625 931005739 274113481 112390393 900796599 288072509 886149363 488788762 292972503 134971740 637939784 764459345 603931167 187104147 257214051 676975489 563678994 317751260 946916156 792822959 610834602 79509313 575023903 616796881 723661847 630977998 876868627 851759377 430101007 636434256 128188331 718980624 533864165 315343704 630201811 764116955 448262245 342116147 577970627 313272965 681765297 850484222 864016134 459452716 152243323 604881661 958668995 36055646 480361743 568142039 918225489 955730659 956286779 207442482 931640418 571019028 971894015 287239117 975337465 246221518 926044257 943235508 321628921 396632533 877088774 761330904 743614603 134801439 640849273 33511708 882364001 778123726 152523810 462394151 80415088 587179274 485153920 616796881 626932919 167276070 797746066 334211676 215792516 592970093 38338132 223299794 795549341 616796881 485153920 686335042 803588261 831241130 94279561 686335042 488295044 572465104 938140278 315297566 407629453 996943901 448262245 916956968 878442641 782533040 911302173 264100442 548748527 699230813 156817178 376974209 774489082 159828635 941586175 369306500 799588075 978947655 219054502 719601437 211958450 515426984 876263470 109054120 904800517 223299794 295366548 812044550 93651148 968670974 163769090 433921335 128188331 971549242 128188331 674446970 162062292 60017144 884072178 940381563 862177563 272303478 512614298 35128915 38844979 852755974 412979540 77685914 660765062 226492467 586446680 997329398 215792516 636434256 568104980 349644605 654830523 134971740 598426014 851759377 261683638 579757115 247221668 885647994 412979540 630238886 430088921 456137963 465697134 140725908 850386354 128450928 954677909 506178629 637769046 20148474 451817798 735891721 255644658 163229392 838331644 572465104 247841801 735710261 598426014 66490779 514650194 625664180 722768643 715957434 938140278 4519262 559014304 400218902 900116034 817743547 770864525 697742034 652018277 128450928 278160655 167276070 72820570 51457589 950673785 400218902 900796599 81553943 53525809 225858850 464130920 938456692 93478833 152314280 743614603 806792339 601630030 852107700 840075867 664041213 921198791 764459345 136384659 136412292 743614603 746394036 956815883 775682536 691982506 2076768 945394518 478892468 259646582 896072909 53525809 836376015 705548145 775682536 806664207 509144872 286037808 776835194 632402794 866337119 64420967 456137963 885549757 24089615 926045944 152314280 735696627 249670598 721418370 860708299 23973553 972710252 931086800 400178823 786380583 858798711 542382913 394791153 23973553 300892929 592639233 668964848 840130613 330205547 489130642 459617527 498840912 456137963 151506993 667313812 702364434 1736950 284588557 463496366 858127225 140725908 533455280 494336936 208625324 196460706 559014304 246058339 293192373 88335614 431406787 995876182 610447918 546141085 195957995 134971740 633587956 462394151 417074904 989729323 292972503 37275245 538025980 630238886 153196022 314069534 710224239 983113723 702364434 550322314 661321016 852604705 478351140 781242822 679463383 170941326 125204206 79523589 660765062 676975489 295606018 170938835 632402794 1736950 128188331 860708299 955501918 711532060 921198791 506919968 837690635 762749463 490344724 29473993 688534928 290474734 430088921 815123402 795549341 546141085 50241607 566554997 662421393 182214511 927806038 841210236 295606018 852604705 274113481 727245017 715779797 237172271 757815664 808838846 687988023 165821462 598543708 912948600 551289217 498045048 771321738 556619020 125204206 172382592 808866527 885000402 513440742 870201182 854902633 137529801 799588075 87392830 41538784 388085842 953882020 405444604 740340897 36265302 67831588 252962990 969294148 968670974 140129038 167276070 214244685 940381563 602396426 835212499 32806834 140725908 703514531 213097363 50241607 232177196 123073176 613596687 736624310 360743135 1926282 969494113 918225489 620243558 215981255 298050322 203331888 299462930 797746066 246058339 154538466 376974209 115509283 698320352 135975430 19715614 498840912 527595027 770993588 874297853 190979155 792822959 736624310 806792339 946916156 938080232 956815883 853903669 623398671 851829959 457149478 699733109 195957995 866337119 954227928 376448548 750563611 359714925 913521589 36055646 637939784 427184372 539957336 767187616 195957995 835212499 838331644 38085353 922706719 641231120 600441802 793291205 837690635 960543625 874124920 187104147 585165457 60017144 754580366 635302209 465697134 299994808 151506993 566554997 954227928 112090095 306258744 860708299 602396426 247822207 931086800 629101079 50241607 971549242 860377902 162904272 514650194 566554997 6720560 573480571 77819776 699230813 546679009 186244437 206036522 749497174 298727845 923715439 840075867 315297566 736624310 87392830 553368896 506178629 855636134 55018341 244528344 835212499 640925332 781242822 215792516 885141769 938140278 205387898 186285312 307060809 56154381 338631458 456956861 382210484 242530683 36055646 554222239 550322314 855636134 134801439 917452919 953267424 271484655 721769014 295606018 290474734 586370291 689757867 932584021 708094860 595030753 79523589 679463383 515426984 882364001 218611070 98287438 306597948 814662325 589760538 183440003 63192647 234980621 174862116 488295044 509664709 512614298 719601437 215774690 251367294 637657473 964902255 264750083 2379379 864016134 938705675 539957336 733642252 306607837 464444922 303230482 831380531 255644658 662972501 431406787 746394036 653201202 579757115 396050095 338631458 270237875 786320493 660095934 629101079 946612927 996943901 685702028 130160246 196106606 170941326 776820092 836376015 145559297 656191811 53525809 424974082 485153920 160287690 31615284 732245352 322974842 885647994 801623766 570796148 211958450 353964006 799588075 925555858 455539394 831241130 770594967 970911538 145559297 400218902 38338132 711532060 949084393 795472528 125829791 509144872 32075030 841780337 637939784 382904427 215977916 550322314 396806189 369306500 938140278 955730659 502849508 588034909 994877696 37275245 532803593 128450928 806664207 556619020 302151126 393120342 860377902 56927881 270237875 601740259 254203892 543865019 126695727 938080232 702364434 968670974 311613451 812414090 803588261 98231977 429277230 786320493 408395896 55108095 344620844 983373150 884059813 795472528 117931902 931005739 39220584 488788762 82689280 324986193 456956861 60017144 674485068 990121035 688577702 140725908 947413305 186244437 162062292 287768226 674485068 711455867 208625324 47529701 630775839 589760538 982416551 174862116 600441802 722013570 577970627 885647994 626833449 19715614 966131311 248642173 687988023 860708299 193648030 994587826 641635851 646710523 38338132 960543625 308142020 451551269 215774690 458156391 40448245 793291205 202477791 632378665 940188502 601740259 661321016 601740259 770993588 866337119 860377902 53195413 572588387 60017144 854969794 757709512 527654256 992169078 900796599 960543625 896571061 984050047 211958450 394791153 548748527 874297853 135975430 975478549 740340897 761330904 917795074 579757115 490344724 573480571 602396426 390275103 807117750 835212499 563678994 475344103 292149520 885141769 638516505 737945381 211958450 891279504 154538466 396937914 603931167 866337119 774489082 960543625 80415088 405444604 408395896 718980624 540394532 543945175 201717402 912948600 966131311 860708299 750563611 327773233 396806189 324129364 140129038 577673184 322974842 338631458 966131311 427184372 746092812 543865019 877088774 163229392 904800517 369306500 125204206 349644605 886917295 145885851 31215478 885000402 56154381 250749017 893019475 81553943 206036522 842970782 931640418 5299425 886917295 628820972 215774690 448881532 982416551 938080232 465697134 68748842 31615284 708094860 480361743 874297853 431406787 349644605 773781000 5299425 203331888 656191811 982370833 965948435 298727845 296751278 738612855 588034909 366854683 762749463 931966477 19911869 830619816 81553943 21190596 620243558 966131311 174862116 740340897 641231120 946916156 408032939 702364434 624819674 774489082 885000402 123073176 984050047 638516505 762749463 50241607 36265302 109369069 531333917 654830523 2076768 705548145 15903366 74587532 220576148 358401766 232177196 929504680 390275103 586446680 808614164 488295044 647733367 123073176 697742034 770993588 662972501 945394518 55018341 776820092 248642173 237389399 390793037 451817798 40131409 650990283 938456692 40656291 683621666 638516505 507016471 251188854 140725908 904771946 451551269 931086800 162904272 956815883 688177128 592639233 808614164 751925989 870201182 438183310 527595027 334299650 520071928 214244685 35128915 721418370 581831913 922706719 79523589 768561257 78775552 432089082 812414090 982416551 516175014 583924389 507016471 776820092 971549242 681765297 676975489 234980621 459617527 451817798 390275103 332834875 656191811 417074904 726620654 877167702 582273012 850386354 688177128 640925332 597784477 911302173 207844781 797746066 2379379 753419354 249820698 540976336 38304068 736624310 310726569 586370291 143200457 115090276 359714925 498840912 443960759 855636134 550322314 601630030 19911869 753419354 37275245 152523810 112390393 251188854 408032939 994877696 2379379 511330454 282751746 740340897 888259120 719307635 962430008 882364001 98231977 264750083 463496366 306258744 167276070 308142020 718980624 126695727 376974209 920721173 106790696 29069209 789617647 681765297 462394151 292696118 264297813 900116034 32954995 630775839 771803404 583924389 114409323 156817178 559957428 745200166 838803091 587469038 764459345 303230482 981996224 843005594 53195413 123073176 522663253 28363157 81553943 98824830 390793037 98824830 478892468 632402794 559957428 132556595 327773233 827311105 627110568 550336314 968755777 788737791 557710104 292696118 592981604 219054502 788118407 746092812 750750593 499057158 543865019 396743027 975478549 685702028 757709512 451817798 250749017 489130642 267829614 67700412 514768035 633573519 732245352 396743027 172382592 702364434 24089615 583924389 689757867 60750487 140725908 60750487 623206361 814295984 49614749 941586175 215289803 827311105 207844781 80415088 891279504 864016134 560327459 685702028 597784477 298727845 7807006 705304879 359859765 760370490 81337657 568104980 509370562 956815883 854243215 40448245 970320952 101231409 205387898 884072178 858798711 652018277 750978759 745200166 854243215 816971086 424974082 142903358 509019925 610834602 24089615 628523361 767839638 967417280 866337119 539381059 887548285 311613451 607965234 956286779 165821462 275202504 812414090 877088774 400178823 136384659 2379379 31615284 361002681 125204206 907095826 780870754 328764419 938140278 997329398 41538784 49948206 888553258 829983432 586370291 781246194 705304879 81553943 877167702 953267424 926044257 579757115 581063820 376974209 572588387 399037712 193648030 250832323 38844979 938456692 681765297 241184545 874124920 975478549 498840912 831380531 101231409 996943901 247006479 55018341 322974842 835198840 40656291 778123726 712346140 475344103 835339516 195019158 601630030 592981604 511330454 907721720 125204206 2379379 945394518 400218902 499057158 667313812 73848009 394791153 264750083 668964848 545538425 568142039 74587532 88335614 748408317 829614460 654830523 573449906 967417280 771803404 289736829 19911869 131323888 711532060 888553258 285947848 478351140 806744033 921198791 145885851 286037808 387703244 931013644 726620654 488295044 737945381 876868627 607965234 769327548 888259120 485153920 338312978 489130642 573480571 135975430 733642252 760370490 334932282 888553258 36055646 882364001 983113723 703514531 103219970 407510599 623206361 702364434 35128915 234980621 683621666 663670886 496698204 911302173 623206361 162062292 872434540 455539394 686335042 247841801 618355033 783513992 264100442 132556595 136412292 926044257 983113723 264750083 969494113 254203892 252962990 247841801 970320952 548748527 557710104 533455280 313272965 750563611 1736950 80485362 931005739 271484655 808838846 152618584 902464469 489130642 174335822 567343883 682170984 152243323 311808379 570764323 114409323 498840912 63192647 956815883 781242822 296305836 746394036 422532994 764459345 72820570 996943901 308142020 778123726 289736829 607041944 41538784 667844649 305990981 851759377 922858580 310726569 770594967 66490779 32806834 902464469 548748527 213097363 783513992 689757867 911302173 667844649 228290502 597784477 637769046 371179314 687988023 993091440 331638088 509019925 215981255 353964006 174140940 942899938 43970470 334932282 550336314 55018341 430088921 907095826 93478833 686335042 946612927 694954883 932584021 195019158 489612980 516175014 271484655 953267424 786380583 328764419 407629453 866568903 115090276 509370562 904771946 32954995 21190596 285947848 151364594 962430008 451817798 36055646 979740237 287768226 269911067 509144872 247006479 778123726 604968568 1736950 190979155 831241130 887794841 698320352 855636134 718980624 630201811 543865019 663670886 795472528 640925332 889608806 60750487 678474526 575895835 394791153 430284321 686335042 286037808 264297813 99294732 207844781 308142020 285947848 681765297 812044550 645094664 225771141 804406873 51457589 6720560 251367294 28363157 353964006 550336314 887548285 702364434 359714925 610834602 686335042 129724737 162904272 490344724 433921335 830619816 413592826 900116034 702745028 129724737 359714925 525347105 195019158 334299650 300892929 138393155 249820698 242028021 396138845 29069209 708053570 641635851 866568903 975337465 162904272 685702028 647733367 638516505 283321520 247234349 390275103 583924389 213097363 570764323 52243955 911302173 121069546 518384931 937158597 271484655 636434256 31615284 940381563 585165457 298050322 135975430 324129364 152523810 327773233 799588075 630977998 293192373 27735709 152866011 727827821 430088921 678474526 540394532 944573659 208625324 852604705 773781000 806744033 956815883 119279869 299113502 488788762 242028021 647733367 254203892 971549242 619842427 19911869 617908997 167276070 292696118 485509833 511330454 288072509 42657625 664041213 32806834 378961655 478351140 535533605 703490607 884952974 864016134 485063015 768561257 400178823 471393875 527595027 757850417 218611070 585165457 726620654 882364001 249820698 799588075 560327459 195957995 931005739 31215478 195019158 602396426 668964848 266213579 943793512 322974842 940381563 715779797 953267424 654830523 283321520 941586175 195733178 542382913 451521521 540976336 146573202 148087911 983373150 489130642 250885472 115509283 526944836 604968568 488788762 745200166 256866745 788737791 589760538 367026304 981996224 807117750 451551269 451817798 571019028 13112382 854243215 704431513 215052415 736624310 63192647 776820092 220576148 808866527 441621000 215981255 424974082 795549341 548964093 264750083 349644605 940188502 543865019 757815664 250832323 396743027 246221518 662421393 498045048 626932919 464444922 278160655 1736950 562773407 902464469 575895835 266583970 721418370 853170454 776352608 496698204 311613451 306597948 837690635 697742034 681765297 488788762 462762217 134971740 290117216 55018341 23262398 342116147 917795074 767839638 991073887 781246194 304621545 220576148 56154381 767187616 938140278 939725993 43970470 984047482 936312210 711532060 675472009 317751260 923927991 81553943 407510599 746394036 203331888 195019158 244528344 984047482 15037608 968670974 816971086 711532060 206036522 727827821 28363157 852755974 831467447 607041944 538810384 792846009 6720560 162904272 209789164 511277493 738612855 114409323 630201811 715957434 893019475 5299425 600441802 251367294 975337465 891279504 921198791 37275245 464130920 676975489 328462418 699230813 750563611 854243215 994877696 761330904 917795074 35128915 163769090 965948435 306607837 267829614 807117750 991615550 653201202 382904427 926045944 656191811 814662325 49948206 858127225 399037712 735696627 726950461 992001870 727245017 854902633 616796881 424594759 979750308 275349681 566125822 953882020 49948206 527654256 249820698 94279561 520071928 527654256 620243558 814662325 88335614 797746066 485262404 754580366 56927881 570764323 109054120 215981255 60017144 67700412 841210236 152523810 841780337 53226850 694954883 361435434 36055646 806664207 812414090 814295984 137529801 42657625 458363994 304621545 858798711 982416551 78775552 548748527 159828635 67700412 396937914 679463383 694954883 885995802 342116147 824770361 531135820 917795074 315343704 6720560 509019925 363976852 686335042 444897967 509144872 489130642 902464469 242530683 283321520 709613471 761330904 429277230 19911869 292696118 7807006 851400664 496698204 887794841 246221518 748408317 476912096 251188854 310726569 597206610 636434256 40448245 887548285 407629453 103219970 685702028 382210484 882364001 687055288 331638088 299994808 840075867 764116955 193648030 287239117 211958450 128450928 971894015 49614749 292696118 20148474 604968568 870201182 67700412 874297853 420052652 573449906 306258744 36055646 705548145 776835194 286037808 810021050 545538425 993091440 514650194 588034909 577970627 462394151 538810384 509370562 831467447 98231977 563678994 852107700 887794841 835198840 322974842 324986193 780870754 923715439 837690635 778123726 32075030 630238886 705304879 851759377 776352608 780061015 992001870 543945175 303230482 27735709 38338132 20148474 904771946 792822959 763431295 859168292 876263470 81553943 650697444 938080232 926044257 456137963 82689280 872434540 286037808 397928982 82689280 757709512 31615284 48746678 471393875 790270533 128702236 888259120 567774282 136412292 177689820 806792339 354807942 458290565 994877696 750750593 464130920 187104147 306607837 376974209 938140278 872434540 806664207 997329398 776352608 698320352 640849273 968755777 703490607 451521521 154538466 689757867 21190596 589760538 709613471 49614749 407629453 520071928 802009078 925555858 492009082 942899938 768561257 887548285 874124920 994587826 910850066 509019925 41538784 193515742 422532994 241184545 431406787 40131409 945394518 514768035 893019475 205387898 242186770 324129364 765027062 630629857 13112382 376448548 850386354 746394036 242028021 405444604 913521589 47529701 652018277 359714925 99294732 267829614 788737791 568142039 946612927 496698204 640925332 866568903 679463383 47349911 10475035 121069546 67700412 225858850 674485068 121069546 795549341 143200457 527654256 128450928 190929591 884952974 592639233 311808379 554222239 587179274 837690635 296751278 705548145 388085842 275349681 81553943 511330454 589760538 138393155 2076768 56154381 307403622 259646582 790270533 893019475 854243215 774489082 507016471 202477791 964902255 431406787 925555858 602396426 152314280 78649514 458290565 904771946 981996224 687988023 424974082 674485068 559957428 129724737 912948600 485153920 647733367 152523810 509019925 148087911 590918818 396743027 334932282 251188854 635302209 396806189 496698204 140129038 338312978 433686203 646710523 949084393 557710104 736237188 87392830 586446680 7807006 490344724 53195413 598543708 290474734 886149363 205387898 745200166 37275245 674485068 859168292 954677909 88335614 877167702 925555858 944068218 788118407 953882020 963141978 788737791 311808379 444897967 970911538 884059813 288873549 773781000 349076114 597206610 623206361 862254110 992169078 296305836 800460688 83066601 103219970 315747769 667313812 750563611 378961655 490344724 981996224 610447918 627110568 982416551 727578179 361435434 571019028 93478833 620243558 663670886 315343704 745200166 792822959 438183310 676975489 98287438 683621666 490344724 196460706 681765297 55018341 675472009 602832600 428572243 885353274 626932919 283321520 760370490 186244437 344620844 448881532 598543708 831380531 546679009 722013570 575895835 33511708 723661847 568142039 947413305 382210484 874124920 174862116 551289217 531135820 331638088 981996224 586370291 369306500 115090276 446968233 456956861 554242697 858127225 56927881 304621545 991615550 595030753 891279504 932584021 829983432 583924389 287768226 99294732 246058339 424594759 854243215 417074904 943235508 946612927 934824360 295606018 968670974 630201811 55108095 193648030 689757867 650990283 249820698 237389399 697742034 854902633 592970093 289736829 496698204 884059813 464444922 152523810 1736950 942999703 195019158 109369069 650036494 546679009 975478549 299113502 853903669 261683638 19715614 932584021 378961655 511330454 937158597 757815664 860708299 757850417 912948600 702364434 88335614 152243323 771803404 322974842 437743643 750563611 186244437 705304879 478892468 293192373 207844781 251188854 400178823 722768643 349644605 490344724 601740259 23973553 793291205 838331644 378961655 290117216 209497607 632014852 775682536 954227928 646710523 244528344 727245017 125829791 458156391 604968568 572465104 103669472 907095826 361435434 781246194 257214051 636434256 722768643 993091440 652018277 689757867 917452919 683621666 585165457 226492467 581063820 495854210 850386354 299994808 637939784 539035187 809429735 119279869 904771946 851829959 738855203 758889515 387176309 140725908 219054502 616796881 922706719 625664180 563678994 548964093 525347105 223299794 586370291 299994808 570764323 581831913 953882020 452156279 290117216 2076768 942999703 858040709 206036522 511277493 431406787 175060805 42657625 960543625 396050095 324129364 208625324 806792339 700560235 943793512 465759767 207844781 21190596 694954883 215981255 962073361 587469038 887548285 74587532 602832600 918225489 2379379 429277230 207442482 992001870 509664709 876263470 776835194 567948101 727827821 753419354 218611070 583924389 186244437 40656291 860708299 417074904 314069534 215981255 531333917 15037608 607041944 532803593 459617527 533455280 378961655 295366548 721769014 950497221 891279504 750563611 678474526 125204206 629101079 816971086 213097363 40448245 573480571 247221668 975478549 293192373 817743547 650990283 937158597 765027062 806792339 743614603 60017144 321628921 624819674 128188331 437743643 788737791 179981178 808866527 485509833 860477160 858798711 804406873 983113723 956815883 841210236 123073176 462394151 860377902 683621666 242028021 854243215 527654256 507016471 816971086 38304068 332834875 396138845 344620844 737945381 771321738 984047482 428572243 106790696 660095934 507016471 422532994 38085353 806664207 688177128 950497221 114409323 465759767 543945175 656623172 902464469 954227928 548964093 133739154 369306500 407629453 134971740 710224239 196460706 247234349 607041944 465697134 902464469 115509283 546141085 142903358 371179314 802009078 678474526 275349681 172894131 295606018 972710252 93478833 20148474 662421393 571019028 703490607 688177128 958668995 226492467 292696118 636434256 876868627 975478549 328462418 778123726 259646582 494336936 553368896 459452716 954227928 337153847 660095934 744008188 29069209 831241130 334299650 138442062 532803593 317751260 931966477 509370562 344620844 106790696 921198791 215052415 39220584 40131409 750563611 604181881 944068218 983373150 696443558 860708299 681765297 758889515 808866527 729868696 23262398 859168292 80485362 568142039 966131311 458290565 64420967 577673184 586370291 556619020 420052652 24089615 396743027 872434540 255644658 393120342 156817178 560327459 407510599 699733109 195957995 179991869 375066210 394791153 396806189 795472528 502849508 267829614 770594967 215052415 539381059 276676140 332834875 266583970 201717402 815123402 858127225 590918818 270237875 49948206 687988023 618355033 93651148 726620654 633573519 325554372 958668995 758889515 941586175 775682536 292696118 548964093 50241607 592981604 757815664 397928982 750563611 983373150 125829791 403519778 966131311 907095826 835339516 249670598 292696118 560623000 115090276 49614749 148087911 559957428 946612927 458363994 623398671 888259120 773781000 369306500 135975430 686335042 202477791 298050322 757850417 969494113 259646582 112090095 254203892 750750593 735696627 887548285 430088921 972710252 788737791 588034909 946612927 686335042 760231333 300892929 540394532 514768035 778074990 616057762 270237875 810021050 688534928 778123726 876263470 459452716 757850417 437743643 32075030 19715614 874124920 38304068 640925332 907095826 660765062 853170454 131323888 288072509 455539394 829983432 480361743 505061211 292972503 298050322 797746066 687055288 190929591 979750308 956815883 539035187 788737791 674446970 539381059 732559957 422532994 646710523 296305836 790270533 886917295 786320493 278160655 554242697 78649514 767187616 292972503 817743547 735696627 36055646 656623172 650036494 533455280 38304068 490344724 285947848 152523810 478892468 780870754 604181881 975337465 577673184 154538466 566554997 927806038 527595027 358401766 750978759 992001870 662972501 757815664 314069534 876868627 699230813 407510599 145885851 757815664 997329398 602396426 944573659 363976852 854243215 455539394 464444922 780870754 937158597 858127225 359859765 801623766 522663253 117931902 735710261 691982506 247822207 455539394 522663253 931013644 36265302 193648030 193515742 31615284 939725993 215792516 338631458 242028021 505061211 966131311 859168292 367026304 509370562 23262398 808838846 748408317 750750593 140129038 630977998 757815664 887548285 244528344 937158597 650990283 485262404 50241607 106790696 138393155 330205547 799588075 590918818 428572243 282751746 827311105 134971740 261683638 932715562 700560235 793291205 306258744 507016471 915330573 852755974 795549341 15903366 326469359 604181881 60750487 4519262 858127225 163229392 838655651 782533040 610834602 38304068 768561257 334932282 109369069 53195413 457149478 152314280 660765062 943793512 125204206 1736950 275202504 246058339 637657473 498045048 743614603 390793037 780870754 5299425 653201202 310726569 485153920 195019158 795549341 590918818 877167702 250832323 876263470 566125822 681765297 117210451 540394532 719601437 920628541 252792947 129724737 119279869 135975430 328764419 887794841 888259120 430101007 195019158 577970627 887548285 64420967 587179274 290117216 369306500 600441802 159828635 41538784 451521521 591292508 334932282 215774690 285947848 462762217 330205547 877167702 449022331 306258744 488788762 570764323 300892929 675472009 452156279 626932919 476912096 546679009 396632533 38338132 262406489 950673785 165821462 824770361 119279869 888553258 925555858 704431513 494336936 123073176 955730659 484158080 902464469 214650974 787269565 344620844 317751260 489612980 290474734 128702236 494336936 525347105 68748842 247234349 405444604 958668995 831380531 1926282 635302209 923927991 896072909 56154381 146573202 77819776 793291205 633587956 390793037 941586175 172382592 47290536 283321520 203331888 592970093 858127225 570796148 538025980 170941326 354807942 307060809 152243323 299994808 292149520 749497174 151364594 866337119 982353486 516175014 860477160 761330904 703490607 494336936 133739154 112390393 234980621 38085353 247234349 993091440 740882715 732245352 512614298 114409323 484158080 313272965 854969794 311808379 656623172 836376015 637769046 907095826 103669472 314069534 771321738 81337657 132556595 835212499 840130613 376448548 888553258 874297853 103733806 678474526 305068796 859168292 257214051 485262404 145559297 49614749 736624310 800460688 125829791 943235508 884059813 990121035 704431513 349644605 210621083 36055646 126695727 441621000 254203892 328764419 769327548 674446970 78649514 969494113 893019475 266583970 776820092 226492467 247006479 290474734 763431295 732245352 969294148 246058339 840075867 338312978 850386354 854243215 131323888 498045048 230662076 509664709 598426014 889608806 640849273 77685914 275349681 458363994 480361743 464444922 969294148 939725993 950673785 314069534 140129038 29473993 679463383 618355033 10475035 800460688 215981255 870201182 203331888 167276070 760231333 853903669 538025980 334932282 247221668 925555858 306607837 955730659 926044257 2575238 630775839 98231977 278160655 808614164 292972503 496698204 103669472 443960759 334299650 942899938 152618584 250832323 824770361 494336936 678884863 359714925 266213579 388085842 551289217 205387898 878442641 215052415 598543708 55018341 527654256 382210484 931086800 577673184 540976336 965948435 152523810 272303478 926044257 842970782 623398671 852604705 331638088 931005739 600441802 138442062 215977916 940381563 920721173 190323279 917452919 413592826 306258744 960543625 712346140 337153847 431406787 732245352 448262245 806744033 830619816 152314280 247841801 831241130 109369069 475344103 478351140 338631458 601630030 962430008 854902633 478892468 681930584 516175014 610447918 934824360 929504680 568142039 661321016 494336936 982370833 408032939 632402794 990121035 740340897 252962990 23973553 808614164 600441802 509664709 814662325 557710104 94279561 5299425 630201811 815123402 268759041 607760956 480361743 925555858 750563611 746394036 623398671 550322314 94279561 506178629 904800517 349076114 278160655 662972501 42657625 683621666 151364594 237172271 513440742 761330904 24188768 452156279 152523810 891279504 843005594 792846009 156817178 782533040 490344724 916956968 554222239 964902255 746992914 607760956 206036522 925555858 610834602 163229392 83066601 20148474 885549757 535533605 554222239 970320952 420052652 570796148 876263470 647733367 123073176 262406489 598543708 573449906 38844979 334932282 538025980 207844781 769327548 749497174 586370291 727245017 553191189 543865019 816971086 498045048 695599688 505061211 264408147 604181881 503666498 53966525 630201811 942899938 539381059 325554372 129724737 109054120 275202504 182214511 681765297 38085353 396806189 287768226 710224239 979750308 585165457 1736950 98824830 750978759 628523361 962073361 650990283 376448548 958668995 694954883 696443558 393120342 98824830 187104147 251188854 641231120 196106606 360743135 98824830 87392830 153196022 516175014 264408147 249820698 846351340 625664180 956815883 218611070 837690635 750978759 900796599 531135820 709613471 722013570 396806189 1736950 598426014 287239117 56154381 902464469 971894015 831241130 67831588 55108095 254203892 88335614 433686203 902464469 786380583 252962990 862177563 968755777 488295044 970911538 804406873 225858850 637939784 853170454 366854683 850484222 532803593 817743547 637769046 226492467 244528344 630977998 753419354 630238886 546679009 630629857 306607837 505061211 60750487 390275103 704431513 250749017 126695727 209497607 50241607 334211676 196106606 543865019 43970470 262406489 471393875 247822207 306607837 174335822 462762217 338929165 771321738 52243955 581063820 943793512 750563611 24089615 786380583 19911869 860377902 276676140 295366548 687055288 264408147 776835194 650990283 459452716 799588075 931005739 602396426 815123402 626932919 764116955 125829791 589760538 843005594 853903669 950497221 543865019 837690635 376448548 888699423 88335614 626833449 38304068 770864525 509664709 695599688 842970782 757850417 588034909 251042004 458156391 465759767 968670974 490344724 376448548 177689820 136412292 228290502 506178629 738855203 582273012 117931902 299462930 99294732 993091440 430088921 787269565 994877696 629101079 129724737 543865019 751925989 496698204 650990283 325554372 814295984 20148474 247841801 505061211 193648030 852604705 251188854 754133002 595030753 165821462 128702236 841210236 186285312 613596687 674485068 647733367 807117750 560327459 489130642 579757115 142903358 579757115 408395896 754133002 887794841 382904427 489130642 187104147 538025980 103219970 525347105 686335042 551289217 81337657 830619816 287239117 21190596 548964093 215774690 817743547 923927991 337153847 846351340 931005739 567774282 854243215 932584021 315343704 910850066 668964848 837690635 790270533 206036522 36265302 72820570 566125822 858127225 852107700 408395896 964902255 140129038 735891721 32075030 88335614 32806834 324129364 592639233 618355033 738612855 674446970 760370490 371179314 840075867 143200457 396050095 962430008 757815664 338631458 814295984 163229392 750563611 708046990 966683628 337153847 554222239 761330904 430101007 195733178 650697444 112390393 838331644 2575238 831467447 943793512 610834602 246058339 944068218 889608806 591292508 2076768 640925332 459452716 850386354 764116955 94279561 539035187 50241607 306597948 587469038 937158597 478351140 719601437 344620844 667844649 567343883 207442482 920628541 792846009 753419354 607760956 115090276 307403622 932584021 662972501 242028021 683621666 512614298 630238886 321628921 686884353 945394518 722013570 931966477 764459345 927806038 556619020 490344724 960543625 754580366 546141085 660765062 902464469 10475035 607041944 570764323 162904272 592639233 207442482 135975430 992169078 630201811 509664709 484158080 256866745 807117750 806792339 481894295 352092606 422532994 962430008 768561257 287239117 679463383 592981604 94279561 352092606 936312210 786320493 471393875 808838846 715779797 488788762 215792516 762749463 190929591 353964006 490344724 137529801 637769046 767187616 193648030 325554372 67700412 170941326 595030753 338929165 917452919 66490779 546679009 314069534 628523361 891279504 922706719 256866745 705548145 744008188 992001870 727827821 210621083 573449906 854902633 19715614 704431513 776835194 190929591 539035187 40448245 932715562 195957995 163229392 292149520 452156279 562773407 968670974 575023903 601740259 652018277 405444604 602396426 88335614 152243323 404152565 152618584 256866745 354807942 989729323 206036522 771803404 295606018 179991869 786380583 994587826 900796599 721769014 73848009 449022331 808866527 907721720 539381059 146573202 830619816 686884353 545538425 313272965 887794841 49948206 408395896 829983432 770993588 145885851 931966477 572465104 50241607 764116955 271484655 215052415 354807942 29473993 663670886 699733109 632402794 630629857 598426014 531135820 38844979 616796881 757850417 349644605 28363157 79523589 888553258 852755974 292149520 478892468 769327548 296751278 430284321 237172271 47290536 121069546 604968568 175060805 457149478 970320952 138393155 485509833 991073887 960796073 31615284 884952974 136384659 68748842 438183310 369306500 678884863 625664180 115509283 420636144 835339516 155241439 367026304 443960759 679463383 630629857 67700412 667844649 215792516 535533605 219054502 981996224 921198791 874297853 884059813 325554372 888699423 853170454 428572243 187104147 334299650 506919968 430088921 515426984 922706719 250885472 946612927 272303478 795549341 965948435 931013644 579757115 512614298 388085842 743614603 195019158 857535330 315343704 802009078 850484222 857535330 550322314 994877696 36055646 918225489 27735709 163769090 68748842 247221668 49948206 551289217 983113723 709613471 307403622 195957995 674446970 637939784 859168292 626932919 251367294 888553258 942866882 328462418 942899938 438183310 916956968 351424753 36055646 838655651 781242822 512614298 376974209 295606018 2076768 412979540 942899938 311613451 464444922 38338132 744008188 219054502 737945381 640925332 396632533 703514531 495854210 862254110 2379379 586370291 625664180 518384931 485509833 770594967 996943901 93651148 689757867 551289217 520071928 271484655 708094860 24188768 884952974 610834602 36055646 43970470 682170984 539957336 571019028 633573519 247822207 465759767 359714925 926045944 851759377 289918211 613596687 982353486 112090095 623398671 708046990 757850417 592970093 927806038 853170454 332834875 36055646 835339516 635302209 603931167 267829614 498840912 968755777 23973553 87392830 53226850 241184545 838331644 451551269 955501918 4519262 42657625 556619020 750563611 937158597 209789164 842970782 532803593 767187616 641635851 209497607 850386354 531333917 490344724 699230813 750563611 601740259 746992914 689757867 190929591 782533040 893019475 647733367 533864165 885141769 950497221 955730659 913521589 939725993 465697134 568142039 242186770 850484222 344620844 729868696 539381059 771803404 992001870 427184372 38844979 163229392 630201811 36055646 78649514 249670598 542382913 136412292 923927991 733642252 770594967 589760538 587469038 775682536 10475035 290474734 78649514 719601437 719307635 762749463 56154381 426814174 843005594 997329398 15037608 338631458 626833449 721769014 626833449 616796881 619842427 330205547 595030753 838803091 750563611 722013570 735696627 708053570 926045944 310726569 484158080 686335042 738612855 511277493 209789164 715957434 117931902 248642173 740340897 635302209 162062292 330205547 485153920 624819674 633587956 485509833 10475035 602832600 545538425 872434540 949084393 175507355 215774690 962073361 598543708 252962990 190929591 727827821 251188854 282751746 209789164 396138845 553368896 572465104 927806038 938080232 131323888 607965234 219054502 19911869 770594967 925555858 563678994 953267424 32806834 543945175 583924389 485509833 947413305 806792339 208625324 630629857 545538425 109054120 278160655 19911869 900116034 592981604 42657625 526944836 417074904 557710104 53525809 313272965 136384659 697742034 540394532 732245352 610834602 852107700 967417280 526944836 138393155 509144872 885549757 205387898 931086800 20148474 387176309 782533040 39220584 781242822 237389399 515426984 675472009 330274784 125829791 944573659 982370833 246058339 67700412 155241439 38844979 55018341 562773407 588034909 700560235 128450928 687988023 311808379 489130642 842970782 885995802 334932282 641635851 754133002 548748527 702745028 838331644 88335614 117931902 627110568 481894295 20148474 946916156 2575238 181668423 543865019 215977916 981996224 795549341 635302209 433686203 352092606 21190596 458290565 208625324 390275103 31215478 556619020 652018277 400218902 73848009 167276070 982353486 667313812 592639233 186244437 563678994 762749463 843005594 446968233 101231409 390793037 917795074 359859765 632014852 140551765 498840912 972710252 126695727 992169078 681765297 146573202 311613451 287768226 50241607 831380531 151506993 810021050 884072178 60017144 814662325 66490779 831467447 750750593 740340897 449022331 270237875 458290565 595030753 325554372 662421393 963141978 43970470 359714925 776820092 359714925 678884863 193515742 801623766 775682536 858127225 979750308 471393875 630238886 801623766 719601437 73848009 735891721 637939784 942899938 748408317 859168292 420052652 403519778 637939784 790270533 941586175 338929165 142903358 252962990 215792516 806744033 242186770 812044550 886149363 885141769 430284321 972710252 587469038 831241130 292696118 137529801 917452919 250885472 931086800 896029805 488295044 264100442 123073176 232177196 321628921 607041944 264750083 968755777 286037808 78775552 554222239 53966525 109369069 172382592 67831588 686335042 652018277 388085842 201717402 688177128 43970470 938456692 623398671 729868696 132556595 456137963 931966477 601740259 885995802 40131409 407510599 338631458 73848009 152314280 770993588 464444922 511330454 334932282 396743027 993091440 264750083 808838846 464130920 687055288 123073176 721769014 539381059 991615550 152243323 287239117 958668995 983113723 219054502 732559957 851400664 733642252 29069209 746394036 148087911 971549242 763431295 459452716 917452919 186244437 538025980 687055288 244528344 718980624 661321016 635302209 922706719 688177128 412979540 604181881 1926282 739696834 551289217 831241130 710224239 218611070 743614603 953267424 215981255 627110568 292972503 349076114 162062292 162904272 539957336 175060805 921198791 485262404 237389399 762749463 926045944 719601437 679463383 249820698 602396426 718980624 982416551 463496366 471393875 162904272 738855203 218611070 623398671 850484222 637769046 592970093 259646582 550322314 193648030 458156391 430088921 441621000 736237188 983373150 575895835 910818482 738855203 7807006 946612927 215052415 82689280 324129364 268759041 942866882 428572243 581831913 156817178 938456692 53226850 476912096 275202504 36265302 237389399 708046990 430088921 792822959 94279561 88335614 132556595 727245017 292149520 713146141 888699423 557710104 604968568 841780337 954227928 965948435 183440003 232177196 600441802 994587826 295366548 854243215 776820092 520071928 554222239 288873549 685702028 226492467 911302173 48746678 630775839 264297813 361435434 721769014 738612855 448881532 567774282 806744033 457149478 252792947 228290502 10369081 74587532 604181881 332834875 810021050 931640418 352092606 740340897 361002681 723661847 531135820 485153920 247822207 640849273 394791153 123073176 581831913 142903358 667844649 156817178 193515742 931966477 298050322 292972503 554242697 954677909 15903366 492009082 744008188 840075867 793291205 540394532 970320952 430101007 711455867 572588387 352092606 448262245 885353274 308142020 943793512 603931167 288072509 572588387 300892929 247006479 19911869 918225489 616796881 652018277 866568903 687988023 566554997 152618584 165821462 954677909 433921335 931086800 858040709 911302173 55018341 181668423 527595027 417074904 885000402 931013644 437743643 331638088 550322314 498840912 942866882 804406873 896072909 28363157 167276070 190979155 573480571 876263470 420636144 855636134 632378665 542382913 674446970 740340897 885141769 237389399 140725908 770594967 625664180 769327548 942899938 251042004 979750308 103669472 146573202 31615284 815123402 290117216 993091440 278160655 896029805 295366548 226492467 831467447 662972501 247234349 505061211 77819776 215052415 816971086 735891721 816971086 732245352 630201811 134801439 203331888 478892468 64420967 317751260 154538466 641231120 230662076 353964006 630201811 838803091 251042004 667844649 478351140 441621000 432089082 559957428 804406873 835198840 816971086 79509313 882364001 942899938 295606018 143200457 492009082 559957428 595030753 554242697 567343883 815123402 511330454 327773233 712346140 495854210 598426014 276676140 53226850 981996224 953882020 246221518 290117216 353964006 827311105 592981604 917795074 683621666 202477791 441621000 49317804 970911538 955501918 522332929 583924389 112390393 50241607 744008188 982370833 916956968 748408317 2379379 799588075 376974209 652018277 396632533 567948101 708046990 992001870 713146141 358401766 754133002 247234349 572465104 982416551 143200457 917452919 767187616 407091770 272303478 617908997 266583970 922858580 298050322 702364434 629101079 850386354 327773233 559014304 330205547 887794841 172894131 21190596 516175014 915330573 403519778 103733806 520071928 570764323 800460688 93478833 887548285 242530683 276676140 610834602 984050047 214650974 400218902 270237875 764116955 918225489 311808379 1926282 860708299 780870754 792846009 640925332 699230813 32806834 509144872 663971090 942866882 735696627 207442482 321628921 641231120 203331888 349076114 354807942 136412292 840130613 750750593 214650974 699733109 586446680 175507355 860477160 708046990 904771946 939725993 174140940 399037712 675472009 128450928 583924389 942866882 623398671 531333917 99294732 674446970 32806834 829614460 662421393 972710252 456956861 568142039 1926282 495854210 503666498 776835194 396050095 764116955 151364594 63192647 511330454 264100442 202477791 620243558 604968568 103219970 851400664 475344103 193648030 334211676 884059813 722013570 261683638 334932282 746992914 327773233 195957995 955730659 876868627 400218902 577970627 459617527 498840912 252792947 601630030 485262404 949084393 476912096 715779797 968670974 743614603 134971740 145559297 750978759 586370291 394791153 135975430 815123402 838655651 885000402 31615284 495854210 140129038 88335614 32075030 896072909 888699423 420636144 884059813 570796148 464130920 7807006 292149520 618355033 688534928 338929165 746092812 613596687 938140278 2076768 512614298 186244437 433686203 727578179 6720560 560623000 743614603 437743643 602396426 995876182 38844979 252792947 31215478 721769014 412979540 726620654 598426014 613596687 603931167 140725908 251042004 310726569 417074904 885647994 40448245 592970093 950497221 267829614 617908997 953267424 271484655 727827821 480361743 456137963 554222239 288072509 840075867 604881661 688534928 264100442 769327548 960543625 289736829 896029805 132556595 613596687 663971090 757709512 284588557 795472528 885995802 352092606 691982506 616057762 278160655 566125822 299113502 349076114 982353486 390275103 887794841 550322314 407091770 413592826 481894295 789617647 99294732 841780337 518384931 971549242 768561257 965948435 770993588 613596687 93478833 19715614 274113481 726950461 904800517 300892929 807117750 853903669 704431513 98231977 638516505 688177128 570764323 721769014 462762217 60017144 128188331 159828635 838331644 307403622 786380583 979750308 193648030 56927881 967417280 638790258 151506993 220576148 979740237 251367294 946612927 715957434 31615284 159828635 247841801 393120342 98824830 570796148 650697444 776835194 678884863 943793512 190979155 371179314 808866527 931005739 344620844 114409323 591292508 515426984 738855203 252792947 559014304 314069534 633587956 361002681 663971090 699733109 502849508 689757867 478351140 737945381 900796599 754133002 375066210 902464469 503666498 172382592 681930584 250749017 269911067 330205547 876263470 970320952 838331644 515426984 662421393 543865019 264408147 163229392 567948101 960796073 478351140 782533040 598543708 979750308 305068796 195733178 770594967 248642173 702364434 732245352 623398671 990121035 954677909 625664180 322974842 313272965 803588261 566554997 269911067 218611070 511330454 775682536 303230482 527595027 228290502 53966525 465697134 443960759 23973553 182214511 47290536 140551765 292972503 249670598 125204206 767187616 302151126 15903366 123073176 387703244 304621545 732559957 553191189 509144872 195957995 526944836 900116034 790270533 770993588 35128915 305068796 359859765 326469359 758889515 162062292 835212499 591292508 98231977 884059813 509664709 375066210 441621000 982353486 218611070 563678994 806744033 626932919 40131409 247221668 776835194 152866011 711455867 656623172 942866882 315747769 761330904 289736829 361002681 709613471 623206361 109369069 746394036 98824830 325554372 721418370 488788762 31615284 682170984 77819776 810021050 586446680 757709512 886917295 19715614 513440742 382210484 882364001 795472528 21190596 27735709 771321738 733642252 702364434 852755974 286037808 539035187 328462418 38085353 835339516 81553943 904800517 506178629 610447918 854243215 992001870 975478549 804406873 79523589 966131311 978947655 93651148 29473993 778074990 262406489 21190596 249670598 431406787 505061211 721418370 179981178 131323888 117210451 15037608 554242697 982416551 313272965 193648030 953267424 480361743 47349911 94279561 767839638 585165457 121069546 539381059 396937914 940188502 597784477 920721173 866568903 703514531 636434256 681765297 349076114 28363157 556619020 190929591 369306500 843005594 485063015 1926282 522332929 242186770 573449906 195957995 190323279 358401766 179981178 838331644 49614749 422532994 601740259 13112382 984050047 623398671 963141978 431406787 560327459 736624310 708046990 595030753 623206361 290117216 831380531 202477791 778123726 722768643 916956968 722768643 136412292 748408317 775682536 115090276 77685914 840075867 548964093 80485362 264100442 950673785 733642252 548748527 433921335 98287438 413592826 492009082 190323279 610834602 138442062 344620844 509144872 947413305 505061211 28363157 134801439 367026304 112090095 691982506 182214511 242186770 182214511 877088774 546141085 49317804 81553943 242186770 179991869 814662325 2575238 247006479 79509313 251188854 498045048 913521589 215052415 797746066 170938835 202477791 478892468 123073176 342116147 214650974 582273012 592639233 778123726 420052652 213097363 703514531 775682536 513440742 638790258 920721173 49614749 296305836 285947848 572588387 831380531 255644658 20148474 637657473 66490779 214650974 853903669 936312210 38304068 73848009 48746678 32075030 160287690 954227928 970320952 918225489 582273012 927806038 49948206 956815883 498045048 99294732 694954883 862254110 812414090 712346140 953267424 926044257 128450928 940188502 810021050 242028021 885000402 735696627 20148474 586446680 627110568 237389399 485063015 546679009 485262404 242186770 686335042 32806834 288072509 920628541 778123726 763431295 656191811 375066210 786320493 456956861 207442482 257214051 307403622 1926282 155241439 913521589 146573202 322974842 405444604 760370490 767839638 797746066 509664709 788737791 630977998 270237875 570796148 776820092 449022331 93478833 159828635 328462418 983113723 278160655 509019925 754580366 334211676 760370490 426814174 572588387 313272965 932584021 77685914 21190596 7807006 876868627 590918818 617908997 2379379 299113502 726620654 156817178 53195413 264408147 342116147 103669472 175507355 778074990 349076114 780870754 195733178 228290502 63192647 431406787 992169078 299113502 560623000 598543708 795472528 966131311 143200457 710224239 800460688 598543708 889608806 82689280 641231120 271484655 146573202 251042004 174335822 929504680 749497174 674485068 944573659 512614298 218611070 944068218 650036494 448262245 338631458 770594967 775682536 878442641 437743643 538810384 910818482 806664207 810021050 736624310 1736950 432089082 315297566 296305836 853170454 715779797 241184545 67700412 225771141 700560235 750978759 490344724 522663253 600441802 579757115 947413305 130160246 862254110 995876182 704431513 708046990 183440003 866568903 804406873 607041944 550336314 463496366 193648030 462394151 814295984 251367294 328462418 939725993 882364001 607965234 49317804 885000402 387176309 597784477 478351140 446968233 567774282 246221518 743614603 475344103 886149363 560623000 31615284 433921335 292972503 241184545 237389399 33511708 28363157 887548285 958668995 145885851 361435434 806792339 462762217 543945175 264408147 787269565 575895835 193515742 451817798 990121035 956286779 810021050 438183310 4519262 840075867 955730659 955501918 788118407 251042004 452156279 50241607 647733367 315747769 251367294 255644658 330205547 251042004 328764419 195957995 246058339 138393155 140725908 623398671 288072509 641635851 40131409 638516505 53966525 886917295 726620654 117931902 155241439 653201202 215052415 654830523 146573202 746992914 337153847 244528344 817743547 264750083 136412292 219054502 287768226 927806038 63192647 954227928 143200457 681930584 896072909 806664207 683621666 969294148 10369081 538810384 972710252 602396426 971549242 49317804 582273012 597206610 448881532 956286779 53966525 344876805 667313812 274113481 726620654 550336314 400218902 857535330 788118407 884059813 546141085 835339516 134971740 773781000 699733109 247841801 852604705 128702236 424974082 956286779 531135820 196106606 632378665 585165457 995876182 257214051 264297813 326469359 630977998 860377902 686335042 683406807 241184545 412979540 719601437 465697134 758889515 947413305 546141085 266213579 359714925 24188768 4519262 533455280 60017144 923927991 656191811 322974842 566554997 315747769 507016471 451817798 241184545 553191189 196460706 938140278 478892468 401452903 288072509 855636134 287768226 128188331 953267424 807117750 968755777 982370833 20148474 154538466 882804101 425392410 995876182 546679009 10369081 481894295 607760956 489130642 527595027 125204206 282751746 492009082 37275245 915330573 496698204 547547687 338312978 601630030 237172271 900116034 993091440 802009078 307060809 38338132 531333917 546679009 888259120 954677909 446968233 311613451 775682536 632402794 582273012 315747769 478892468 527654256 49614749 846351340 40131409 900116034 983113723 799588075 1736950 387176309 962430008 722768643 146573202 152523810 750750593 788737791 965948435 753419354 328764419 703490607 2076768 592639233 984050047 650697444 968670974 13112382 944573659 193648030 647733367 838655651 656191811 632014852 327773233 548748527 699733109 617908997 968670974 396050095 162904272 786380583 2076768 944068218 79509313 568104980 836376015 783513992 727827821 915330573 979750308 215977916 556619020 808866527 573480571 306607837 543945175 208625324 272303478 444897967 162904272 675472009 451521521 814295984 607965234 687988023 507016471 929504680 995876182 884072178 400218902 884072178 939725993 824770361 943793512 738855203 448881532 230662076 727245017 838655651 145885851 618542887 426814174 49317804 699230813 269911067 163229392 73848009 232177196 941586175 456137963 745200166 215052415 838655651 568142039 703490607 49614749 50241607 887548285 807117750 727578179 407629453 800460688 710224239 531333917 334299650 390275103 806664207 35128915 858127225 405444604 77819776 971549242 954677909 629101079 947413305 664041213 587469038 852604705 311613451 128450928 478351140 764459345 518384931 369306500 567948101 396632533 917795074 49614749 326469359 205387898 471393875 464444922 136384659 298050322 804406873 506178629 910850066 349644605 590208882 509019925 650990283 708053570 678884863 572465104 145559297 888259120 465759767 778123726 757850417 252962990 638516505 427184372 328462418 55018341 148087911 560327459 278160655 232177196 292149520 889608806 712346140 299462930 771321738 602832600 311613451 573449906 900116034 187104147 354807942 314069534 862254110 727245017 358401766 2379379 942999703 991615550 949084393 390793037 786380583 732559957 82689280 37275245 305990981 708094860 270237875 630977998 896571061 678474526 511330454 515426984 154538466 163229392 142903358 520071928 271484655 2076768 286037808 708053570 407629453 885353274 490344724 971549242 296305836 463496366 652018277 103219970 638516505 51457589 738612855 175060805 675472009 160287690 293192373 983113723 31615284 170941326 740882715 359714925 920628541 589760538 21190596 522663253 640849273 838803091 748408317 360743135 214244685 475344103 251042004 250885472 40448245 310726569 602396426 841210236 321628921 33511708 6720560 32954995 430101007 885353274 688534928 193515742 77819776 27735709 938140278 962430008 344876805 404152565 326469359 726620654 600441802 396937914 776352608 81337657 67700412 628820972 572588387 37275245 292972503 396138845 650990283 628820972 846351340 789617647 860377902 310726569 941586175 697742034 650990283 515426984 618542887 836376015 186285312 264100442 703514531 285947848 840075867 733642252 6720560 476912096 626932919 543865019 215977916 630629857 876868627 458290565 326469359 134971740 920721173 838803091 630201811 338929165 152618584 788118407 650697444 299994808 334299650 885647994 835339516 213097363 971894015 990121035 929504680 140551765 910850066 616057762 932584021 399037712 430088921 754133002 163769090 968755777 786380583 548964093 490344724 330274784 855636134 458290565 885549757 353964006 700560235 55018341 366854683 771803404 595030753 601740259 595030753 686335042 776820092 808838846 736624310 179981178 918225489 735891721 344876805 264297813 432089082 970911538 251042004 213097363 247221668 507016471 923927991 146573202 736237188 702745028 917452919 885647994 208625324 618355033 623398671 2575238 797746066 475344103 765027062 396138845 736237188 112390393 572588387 376448548 969294148 616057762 328462418 49614749 67831588 196460706 602396426 858798711 422532994 997329398 6720560 810021050 958668995 979750308 776820092 708094860 80415088 638790258 857535330 938456692 638516505 937158597 201717402 495854210 942999703 589760538 305990981 112090095 344876805 38085353 126695727 338631458 101231409 607965234 219054502 971549242 955501918 912948600 572588387 256866745 53226850 349076114 21190596 315343704 736237188 972710252 878442641 353964006 230662076 443960759 128188331 550322314 942999703 539035187 660765062 638790258 28363157 579757115 926045944 718980624 387176309 872434540 770993588 618355033 39220584 994587826 271484655 546141085 190979155 780061015 539381059 371179314 128188331 32954995 244528344 307060809 945394518 636434256 354807942 338312978 712346140 767839638 746992914 630629857 691982506 1736950 633573519 573449906 428572243 396138845 830619816 252792947 525347105 758889515 211958450 170938835 13112382 749497174 956286779 543865019 770993588 338631458 115509283 962430008 485153920 829983432 911302173 56927881 457149478 597784477 344876805 623206361 464130920 955730659 438183310 114409323 900116034 965948435 251188854 885000402 663670886 38085353 215981255 732559957 982353486 896029805 878442641 776835194 814662325 934824360 247841801 299994808 921198791 404152565 633587956 676975489 663670886 119279869 126695727 505061211 15037608 136412292 138393155 251367294 776352608 159828635 938140278 646710523 763431295 449022331 123073176 361002681 74587532 349644605 211958450 744008188 545538425 602832600 778074990 516175014 703514531 937158597 255644658 48746678 559014304 789617647 361435434 726620654 64420967 629101079 936312210 353964006 770993588 866568903 941586175 667844649 575895835 604881661 94279561 841210236 715779797 764116955 975337465 836376015 128702236 190323279 551289217 328764419 650990283 195733178 688577702 902464469 32806834 874297853 721418370 607760956 28363157 896072909 598543708 939725993 456956861 315343704 10475035 207442482 489612980 509144872 538025980 624819674 567948101 815123402 610447918 334211676 824770361 327773233 306258744 121069546 600441802 443960759 209789164 522332929 926044257 727245017 623398671 290474734 583924389 252792947 344876805 907095826 539957336 829614460 709613471 170938835 156817178 307403622 103733806 36265302 632402794 290474734 21190596 808838846 931086800 853903669 429277230 624819674 83066601 448881532 296305836 582273012 396050095 29473993 123073176 960796073 502849508 831241130 931966477 458363994 809429735 507016471 773781000 522332929 949084393 315297566 408395896 989729323 77819776 995876182 994877696 940381563 802009078 296751278 315747769 314069534 846351340 979750308 944068218 975478549 949084393 509370562 745200166 36265302 591292508 668964848 592639233 984047482 152618584 713146141 254203892 376448548 783513992 735710261 710224239 604881661 548748527 165821462 918225489 464444922 540394532 223299794 931013644 934824360 464130920 559957428 688577702 352092606 293192373 983373150 484158080 800460688 527654256 991615550 765027062 854243215 424594759 196460706 770993588 990121035 264750083 550322314 462762217 387703244 286037808 172894131 854902633 942899938 858127225 296751278 24188768 943793512 712346140 638790258 99294732 613596687 148087911 40131409 539957336 424974082 247841801 694954883 855636134 475344103 806664207 40131409 947413305 764459345 601630030 836376015 154538466 859168292 259646582 138442062 553191189 190323279 539381059 788118407 910850066 405444604 478351140 885141769 457149478 112390393 542382913 531135820 261683638 835212499 771321738 635302209 824770361 63192647 770993588 334211676 590208882 674446970 700560235 213097363 417074904 842970782 876263470 938456692 498840912 635302209 230662076 942899938 211958450 137529801 255644658 282751746 129724737 371179314 595030753 225771141 80415088 249670598 838655651 984047482 722768643 577673184 994877696 780061015 540394532 507016471 407510599 427184372 132556595 29473993 135975430 841210236 991073887 267829614 864016134 962430008 430284321 413592826 305990981 767187616 215774690 604181881 234980621 699230813 331638088 223299794 586446680 683621666 920721173 851829959 511330454 195733178 363976852 994587826 887794841 963141978 306258744 891279504 28363157 109054120 38338132 531135820 274113481 912948600 824770361 520071928 41538784 968670974 746092812 272303478 591292508 315297566 234980621 942899938 630775839 485509833 923927991 764116955 375066210 152314280 824770361 554242697 660765062 557710104 920721173 485063015 922858580 195019158 746092812 781242822 595030753 708053570 499057158 172382592 926045944 143200457 264408147 353964006 710224239 711532060 944068218 77685914 858127225 718980624 619842427 727827821 550336314 601740259 132556595 328764419 203331888 35128915 251042004 2379379 448262245 2575238 780870754 400178823 82689280 727827821 954227928 780061015 778074990 327773233 860477160 515426984 900116034 29473993 53226850 557710104 712346140 983373150 864016134 891279504 736624310 997329398 927806038 2575238 567343883 548964093 74587532 858040709 685702028 195733178 769327548 808614164 874124920 456137963 768561257 405444604 586370291 882804101 489612980 795472528 944068218 458290565 679463383 106790696 115090276 505061211 753419354 404152565 299113502 793291205 29069209 77685914 306607837 106790696 559014304 315343704 840075867 79523589 681930584 582273012 489612980 287768226 874124920 209497607 700560235 732559957 774489082 721769014 835339516 812414090 135975430 726620654 637939784 607041944 685702028 708094860 498840912 620243558 598543708 852107700 244528344 349076114 401452903 27735709 601630030 371179314 992001870 618355033 140129038 7807006 417074904 10369081 129724737 5299425 457149478 587179274 830619816 37275245 663670886 629101079 53226850 404152565 32806834 872434540 638516505 167276070 840130613 539035187 244528344 282751746 926045944 250832323 546679009 507016471 499057158 858040709 247234349 962430008 950497221 831241130 917452919 831241130 956286779 352092606 264750083 750750593 154538466 207442482 788737791 550322314 910850066 424974082 586370291 324986193 201717402 962430008 602396426 896029805 783513992 349644605 80415088 996943901 723661847 2575238 771321738 307403622 562773407 359859765 1926282 573449906 982353486 990121035 366854683 137529801 284588557 252792947 210621083 400178823 575895835 55018341 675472009 800460688 807117750 252962990 688534928 311808379 6720560 266583970 430101007 522663253 138393155 337153847 430088921 780061015 888553258 159828635 401452903 687055288 462762217 775682536 78649514 984050047 247841801 195019158 660095934 806792339 78649514 382904427 513440742 516175014 971894015 145885851 38844979 215289803 214244685 732245352 595030753 117210451 302151126 264100442 774489082 620243558 152866011 87392830 814662325 446968233 60750487 353964006 242028021 560327459 860377902 48746678 581063820 885141769 592639233 63192647 305990981 33511708 367026304 815123402 712346140 963141978 746992914 79523589 527654256 587179274 115509283 616057762 806664207 635302209 966683628 697742034 332834875 668964848 275349681 764459345 831467447 573449906 652018277 112090095 801623766 664041213 546679009 342116147 247841801 256866745 931013644 831241130 559014304 313272965 931086800 829614460 254203892 317751260 31215478 49948206 29069209 52243955 803588261 587179274 131323888 991615550 228290502 910818482 893019475 515426984 94279561 250885472 358401766 568142039 432089082 160287690 289918211 15903366 799588075 972710252 206036522 776835194 261683638 426814174 128188331 49948206 932584021 313272965 884059813 568142039 757850417 990121035 795549341 984047482 50241607 325554372 361435434 616796881 278160655 237172271 215774690 98231977 598426014 287768226 251042004 262406489 1926282 60017144 152618584 215289803 807117750 478892468 289918211 978947655 152618584 758889515 597206610 56927881 305068796 990121035 807117750 627110568 572588387 382904427 641635851 10369081 542382913 664041213 630775839 872434540 275349681 852755974 295366548 128450928 864016134 38085353 700560235 459452716 816971086 146573202 920628541 507016471 210621083 838803091 715779797 607041944 268759041 338631458 768561257 997329398 99294732 836376015 703490607 581831913 431406787 984047482 804406873 776835194 465759767 604181881 630201811 937158597 824770361 458156391 840075867 134801439 354807942 396138845 23262398 106790696 514650194 458290565 49317804 38085353 850386354 306597948 533864165 852604705 151364594 134971740 533864165 746394036 626833449 916956968 595030753 371179314 688534928 349076114 29069209 218611070 115509283 250832323 830619816 247822207 128188331 38304068 956286779 831380531 539957336 656191811 484158080 475344103 746992914 307403622 904771946 140551765 922858580 49948206 444897967 764459345 638516505 162904272 757850417 762749463 955501918 2379379 387176309 727827821 645094664 207844781 773781000 792822959 816971086 907095826 610834602 213097363 770993588 515426984 551289217 568142039 799588075 722013570 661321016 143200457 860377902 866337119 946916156 298050322 586370291 624819674 295606018 916956968 896571061 942866882 264750083 776835194 101231409 81337657 763431295 299462930 944068218 396632533 715779797 571019028 41538784 902464469 215981255 943793512 210621083 47349911 738612855 560327459 210621083 288873549 24188768 694954883 982353486 970911538 546679009 623206361 211958450 910818482 949084393 907095826 740882715 972710252 417074904 98231977 994877696 55018341 289736829 620243558 592639233 399037712 979740237 137529801 585165457 722013570 32806834 193515742 133739154 179981178 619842427 306597948 548748527 800460688 738855203 975478549 540976336 388085842 838655651 338312978 407629453 251367294 884072178 938080232 311613451 112090095 595030753 852107700 704431513 943793512 992001870 630629857 598426014 52243955 545538425 4519262 778074990 581831913 778074990 311808379 774489082 300892929 306258744 618355033 900116034 602832600 858127225 874297853 465759767 300892929 462762217 276676140 401452903 324129364 215981255 550322314 275349681 888259120 857535330 250749017 691982506 342116147 966683628 888259120 838655651 647733367 618542887 767187616 247221668 172382592 546679009 272303478 878442641 337153847 862177563 420636144 186285312 739696834 661321016 285947848 884059813 47529701 219054502 225771141 286037808 29473993 548748527 399037712 950497221 48746678 215792516 514768035 201717402 496698204 514650194 187104147 322974842 550322314 196106606 808614164 77819776 761330904 334299650 587179274 797746066 249820698 103733806 689757867 123073176 63192647 255644658 288873549 344620844 215289803 366854683 891279504 492009082 182214511 931640418 972710252 142903358 170941326 484158080 443960759 954227928 79509313 945394518 556619020 735696627 732245352 824770361 548964093 920628541 726950461 78649514 193515742 982370833 342116147 806664207 531333917 679463383 851829959 254203892 361002681 888699423 179991869 80415088 674446970 837690635 522663253 586446680 163229392 488295044 806744033 292972503 49614749 308142020 485262404 662421393 252962990 754580366 287239117 80415088 686884353 827311105 140551765 186285312 509664709 457149478 749497174 32075030 145885851 837690635 52243955 511330454 896029805 183440003 607041944 306258744 937158597 920628541 573480571 778074990 806792339 292149520 579757115 305068796 739696834 274113481 750978759 471393875 387703244 601630030 53966525 650697444 781242822 156817178 35128915 570764323 942866882 710224239 179991869 568104980 859168292 982416551 943235508 661321016 165821462 135975430 378961655 214244685 285947848 738612855 462394151 298727845 972710252 289736829 187104147 882364001 256866745 15037608 509664709 595030753 37275245 115509283 342116147 931086800 781242822 808866527 288072509 864016134 37275245 513440742 589760538 846351340 179991869 49317804 965948435 424594759 247822207 396806189 175507355 209789164 282751746 966131311 884952974 492009082 944573659 776352608 531135820 321628921 138442062 678884863 539035187 678884863 334211676 129724737 282751746 778074990 750750593 153196022 134801439 292149520 866337119 884072178 330274784 946612927 874297853 827311105 495854210 50241607 207442482 850386354 287239117 21190596 607041944 41538784 635302209 778074990 587179274 215977916 588034909 626833449 47529701 264750083 885647994 67700412 543945175 929504680 394791153 814295984 934824360 56154381 103219970 83066601 630238886 931640418 688177128 546679009 602832600 275202504 159828635 751925989 1736950 885549757 396138845 32075030 464444922 896571061 806744033 893019475 511277493 795549341 352092606 289736829 196460706 306258744 686884353 650990283 817743547 152618584 246058339 956815883 520071928 632402794 852755974 748408317 456137963 125829791 668964848 936312210 874297853 982416551 81337657 259646582 288873549 228290502 509019925 145559297 850484222 797746066 60017144 824770361 560623000 809429735 179981178 958668995 2379379 53226850 448881532 778074990 163229392 546679009 369306500 539381059 708046990 215977916 522663253 746992914 852604705 563678994 400178823 334299650 314069534 502849508 758889515 746992914 960543625 757815664 29473993 361435434 179981178 751925989 571019028 1926282 646710523 298727845 835212499 675472009 48746678 915330573 506919968 783513992 371179314 835339516 223299794 295606018 495854210 286037808 885000402 632402794 831241130 295606018 399037712 533455280 285947848 931013644 81553943 93651148 888259120 183440003 311808379 630775839 378961655 40656291 732245352 721418370 130160246 760370490 459452716 264408147 267829614 633587956 299994808 757850417 516175014 949084393 836376015 966683628 522663253 432089082 449022331 877167702 307403622 563678994 817743547 94279561 40131409 424594759 866568903 135975430 475344103 640849273 938080232 152523810 702745028 244528344 505061211 94279561 842970782 142903358 456137963 244528344 676975489 954677909 735710261 630201811 694954883 214244685 509019925 215977916 404152565 936312210 241184545 723661847 560623000 177689820 925555858 462762217 369306500 851400664 907095826 201717402 732245352 632014852 174335822 303230482 276676140 884059813 885141769 306607837 718980624 387176309 241184545 354807942 588034909 39220584 887548285 125829791 739696834 877167702 702745028 760370490 87392830 41538784 315343704 550336314 462394151 154538466 237172271 148087911 539035187 525347105 682170984 499057158 81337657 814662325 283321520 776352608 247822207 296305836 556619020 354807942 175507355 181668423 888259120 103733806 337153847 219054502 136412292 292696118 225858850 554222239 338312978 679463383 393120342 490344724 997329398 765027062 539035187 103733806 912948600 533455280 298050322 23262398 266583970 43970470 138442062 321628921 400178823 538810384 624819674 430284321 19911869 152618584 505061211 597206610 37275245 633587956 35128915 244528344 509019925 219054502 962073361 465697134 841780337 700560235 573449906 681930584 992169078 261683638 114409323 854969794 761330904 950497221 934824360 358401766 896029805 24188768 496698204 214650974 249820698 292149520 572465104 674485068 458156391 295366548 325554372 929504680 2076768 128702236 970320952 929504680 267829614 854902633 943793512 637939784 938080232 154538466 761330904 83066601 910818482 843005594 299994808 858127225 119279869 695599688 647733367 99294732 806792339 846351340 885141769 736237188 858040709 850386354 155241439 885549757 19911869 623398671 646710523 632014852 711455867 567343883 978947655 915330573 205387898 545538425 735710261 656623172 993091440 887794841 266583970 13112382 838803091 190979155 36265302 417074904 121069546 770864525 531333917 598543708 942899938 156817178 187104147 750563611 887548285 80415088 159828635 201717402 37275245 264750083 213097363 592639233 943793512 776820092 990121035 306258744 676975489 640849273 324986193 632402794 526944836 533455280 604181881 351424753 451551269 746092812 78775552 328462418 38304068 31615284 349644605 251042004 806792339 945394518 522663253 602396426 330205547 38844979 448881532 78649514 136412292 152523810 396138845 214244685 262406489 367026304 792822959 269911067 778123726 915330573 306597948 334299650 531135820 271484655 509664709 751925989 943793512 10475035 718980624 56154381 581831913 128702236 88335614 358401766 182214511 424594759 317751260 358401766 317751260 429277230 313272965 255644658 119279869 289918211 267829614 740340897 963141978 994877696 179981178 128188331 831241130 542382913 582273012 786380583 995876182 827311105 478892468 77819776 829983432 56154381 638790258 128188331 266583970 296305836 711532060 864016134 78775552 190979155 761330904 215792516 754133002 322974842 590918818 768561257 757709512 950673785 969494113 760370490 378961655 559014304 485509833 913521589 817743547 809429735 81553943 632014852 174862116 640925332 792846009 154538466 175507355 862177563 758889515 74587532 36055646 98287438 334211676 640925332 264297813 278160655 625664180 375066210 310726569 367026304 478892468 215981255 557710104 50241607 179991869 255644658 937158597 918225489 918521256 837690635 134971740 920721173 749497174 917452919 623206361 396806189 616796881 922706719 573449906 921198791 317751260 145559297 232177196 432089082 560327459 888553258 328764419 284588557 860708299 900116034 970320952 367026304 931005739 586370291 250885472 567948101 509370562 292149520 511277493 776352608 52243955 804406873 446968233 921198791 396632533 753419354 963141978 60750487 179981178 814295984 174862116 603931167 49948206 448262245 256866745 637657473 68748842 190979155 361002681 604968568 215052415 966131311 190323279 942999703 459452716 926044257 287239117 77819776 854243215 39220584 175507355 498840912 711532060 598543708 767187616 344876805 838803091 864016134 582273012 465759767 47349911 274113481 170938835 581063820 968670974 931086800 288072509 660095934 186244437 947413305 616057762 633587956 10369081 795549341 678474526 994877696 613596687 750563611 582273012 358401766 146573202 628523361 334211676 628523361 960796073 743614603 579757115 292696118 456137963 163769090 353964006 64420967 560623000 760231333 514768035 874124920 495854210 465697134 475344103 562773407 353964006 816971086 145885851 691982506 682170984 195957995 250885472 876868627 264297813 735696627 138442062 745200166 338929165 602396426 112390393 886149363 916956968 148087911 462394151 396743027 674446970 831467447 4519262 211958450 246221518 955501918 213097363 244528344 568142039 662421393 209497607 971894015 495854210 760370490 310726569 685702028 726620654 28363157 656191811 261683638 182214511 539957336 789617647 290117216 543945175 305990981 56927881 101231409 249820698 920628541 708094860 31615284 568142039 874124920 361002681 38338132 627110568 804406873 896029805 215981255 15903366 949084393 195733178 553191189 735891721 448262245 938456692 591292508 485262404 809429735 758889515 214650974 475344103 685702028 262406489 23973553 376974209 610834602 682170984 753419354 771803404 490344724 47529701 193648030 140551765 332834875 165821462 840075867 190323279 969294148 299462930 776820092 382210484 40656291 668964848 64420967 715957434 809429735 560327459 215774690 764116955 753419354 782533040 904771946 722013570 956286779 566554997 142903358 225858850 83066601 588034909 904771946 788118407 41538784 780061015 268759041 376974209 129724737 990121035 982370833 38085353 746092812 300892929 275202504 764459345 862177563 494336936 128702236 53966525 570764323 290474734 585165457 174862116 152243323 174335822 946916156 995876182 209789164 934824360 183440003 49614749 481894295 506919968 807117750 746394036 685702028 970320952 860377902 170938835 38338132 215052415 736624310 589760538 830619816 960543625 638516505 56927881 562773407 641231120 910850066 912948600 956815883 112090095 595030753 983373150 641635851 771803404 488295044 404152565 43970470 109054120 215977916 853903669 967417280 806744033 375066210 812414090 151506993 87392830 969294148 458156391 177689820 109054120 691982506 400218902 489130642 382904427 602396426 174862116 480361743 889608806 595030753 29473993 50241607 315297566 896571061 509664709 806664207 458290565 994877696 884952974 595030753 287768226 465697134 792846009 969294148 369306500 50241607 560327459 929504680 989729323 840075867 33511708 60750487 400218902 140129038 780061015 966131311 172894131 802009078 647733367 31615284 934824360 982353486 543865019 712346140 250749017 326469359 172382592 876868627 282751746 661321016 522332929 539957336 592970093 292696118 136412292 553191189 287239117 953882020 186244437 412979540 539035187 862177563 396937914 838331644 853170454 773781000 314069534 123073176 390275103 6720560 674446970 806664207 327773233 334299650 588034909 478351140 554242697 751925989 448881532 237389399 735710261 315747769 172894131 117931902 835212499 408395896 285947848 619842427 307403622 499057158 522663253 860477160 390793037 126695727 475344103 10475035 81337657 773781000 463496366 328462418 623206361 954227928 15903366 595030753 729868696 619842427 522663253 838655651 179991869 553368896 786320493 215792516 476912096 808866527 251367294 950673785 938705675 457149478 984050047 15037608 36265302 361435434 7807006 748408317 349076114 602396426 910818482 296305836 938456692 653201202 246058339 10475035 708053570 598426014 902464469 851400664 464444922 247221668 625664180 860377902 507016471 633587956 775682536 481894295 376448548 618542887 241184545 650697444 888259120 351424753 732245352 601630030 602832600 195957995 209497607 598426014 806744033 944068218 762749463 719307635 396937914 210621083 708094860 29069209 112090095 721418370 836376015 67831588 968755777 577970627 179981178 923927991 121069546 774489082 511277493 862254110 923715439 975337465 831241130 955501918 931005739 681765297 962073361 420052652 452156279 626833449 390793037 278160655 587179274 444897967 937158597 190979155 992169078 626932919 687055288 109369069 334932282 47290536 548964093 321628921 396937914 31215478 359859765 678884863 943235508 174140940 241184545 904800517 885000402 602396426 130160246 654830523 388085842 21190596 337153847 278160655 252792947 513440742 943235508 735696627 288873549 982353486 979750308 846351340 170938835 931086800 382904427 753419354 81553943 363976852 249670598 551289217 667313812 210621083 780061015 991073887 853903669 746092812 573480571 503666498 854243215 887794841 829983432 653201202 462394151 328462418 964902255 567774282 226492467 489130642 327773233 765027062 727578179 753419354 520071928 31215478 570796148 128188331 451521521 592639233 780061015 876263470 932715562 31615284 955730659 72820570 81337657 591292508 266583970 904800517 509144872 893019475 338929165 396743027 884952974 683406807 119279869 806664207 119279869 305068796 496698204 888699423 37275245 885995802 298050322 29069209 498045048 242186770 404152565 264408147 885647994 201717402 288072509 151364594 874297853 806664207 207442482 540394532 196460706 850386354 47529701 610834602 167276070 746092812 38304068 49317804 943793512 514650194 786320493 396743027 577673184 640849273 252792947 947413305 515426984 946612927 853903669 567948101 962073361 49317804 79509313 138393155 907095826 662421393 858040709 513440742 630977998 592639233 937158597 888553258 560327459 56154381 984050047 942999703 656191811 944068218 735891721 152243323 170938835 691982506 992169078 478351140 910818482 264750083 589760538 628523361 88335614 740340897 942866882 920628541 656191811 904800517 509019925 765027062 604881661 824770361 451521521 499057158 396937914 38338132 757709512 953882020 896029805 156817178 625664180 661321016 87392830 858127225 632378665 351424753 119279869 23262398 248642173 60750487 896072909 50241607 851829959 115509283 413592826 211958450 15903366 628523361 288072509 264750083 106790696 709613471 458363994 786380583 179991869 428572243 38085353 80485362 733642252 215981255 393120342 563678994 250885472 723661847 338312978 115509283 117210451 293192373 394791153 242028021 688177128 311613451 478892468 302151126 459452716 551289217 573480571 654830523 852604705 738855203 2379379 431406787 78775552 138393155 359714925 602396426 215052415 683406807 315297566 570764323 249670598 117931902 535533605 203331888 808614164 893019475 38085353 401452903 514768035 203331888 581831913 830619816 112390393 587469038 37275245 430101007 437743643 295606018 408032939 396806189 209497607 938140278 290474734 911302173 87392830 28363157 145885851 840075867 729868696 803588261 993091440 945394518 962430008 228290502 968755777 264750083 560623000 115090276 283321520 80415088 426814174 72820570 896029805 958668995 47529701 242530683 866568903 430284321 209497607 425392410 889608806 480361743 433921335 247234349 78775552 125829791 369306500 955501918 686884353 681930584 842970782 743614603 786320493 710224239 632378665 809429735 109054120 760370490 938456692 630201811 896072909 696443558 248642173 750563611 369306500 788737791 808838846 931086800 38085353 876263470 884952974 663670886 262406489 896571061 237172271 563678994 426814174 799588075 160287690 595030753 63192647 53226850 509144872 274113481 403519778 954677909 359859765 910850066 662972501 942999703 249670598 78649514 121069546 913521589 117210451 876868627 789617647 979740237 315343704 715779797 360743135 770993588 559957428 115090276 170941326 214650974 754133002 290117216 334211676 47290536 983113723 843005594 152314280 577970627 559957428 103733806 607760956 922706719 757709512 533455280 699230813 808866527 888259120 840130613 708046990 190929591 968755777 587469038 130160246 763431295 698320352 949084393 526944836 953882020 36055646 49317804 324986193 776820092 668964848 396050095 607760956 806664207 413592826 512614298 520071928 956815883 88335614 888553258 458156391 587469038 786320493 308142020 992169078 190979155 887548285 375066210 330205547 32806834 56927881 31215478 338631458 835339516 63192647 743614603 604881661 234980621 213097363 675472009 630629857 135975430 451551269 679463383 451521521 201717402 187104147 748408317 870201182 696443558 494336936 936312210 114409323 581063820 509019925 251042004 629101079 237389399 968755777 806664207 531135820 945394518 572465104 429277230 851759377 994877696 687055288 10475035 870201182 13112382 790270533 783513992 616796881 305990981 996943901 637657473 601740259 663670886 190323279 876263470 938080232 954227928 174862116 331638088 298050322 623398671 342116147 660765062 623206361 705304879 252792947 949084393 962073361 918225489 889608806 652018277 573480571 126695727 338929165 922858580 225771141 289918211 727245017 633573519 689757867 753419354 602832600 32075030 546141085 298727845 317751260 931013644 570796148 322974842 708053570 289918211 662972501 481894295 463496366 876263470 891279504 598426014 960543625 632014852 225771141 268759041 369306500 991073887 943235508 610447918 396138845 966131311 719601437 424594759 396937914 43970470 462394151 920628541 353964006 994877696 698320352 103669472 437743643 838331644 396632533 838655651 989729323 570764323 53195413 525347105 587179274 488295044 226492467 138393155 338631458 299113502 688177128 803588261 860708299 626833449 506919968 425392410 923715439 835339516 40131409 548748527 852604705 610834602 196460706 678884863 388085842 769327548 983113723 583924389 815123402 735696627 771803404 214244685 458156391 135975430 667313812 438183310 969494113 354807942 285947848 567948101 781242822 586370291 887548285 545538425 699733109 542382913 604881661 804406873 283321520 432089082 870201182 242530683 36265302 215792516 220576148 15037608 968755777 123073176 311808379 43970470 754133002 361435434 509144872 78649514 602832600 678884863 288873549 153196022 792822959 513440742 688177128 82689280 146573202 266213579 317751260 991073887 570796148 153196022 509664709 922706719 509019925 488295044 788118407 237389399 938705675 275349681 353964006 131323888 247822207 702364434 995876182 567774282 994587826 123073176 910818482 824770361 613596687 72820570 360743135 451817798 960796073 632014852 324986193 882364001 160287690 331638088 944573659 123073176 300892929 545538425 667313812 911302173 328764419 43970470 170938835 893019475 727578179 545538425 376448548 358401766 187104147 242028021 531135820 941586175 718980624 6720560 175507355 64420967 262406489 862177563 815123402 315747769 393120342 6720560 190323279 888553258 656191811 292972503 727827821 358401766 571019028 719307635 35128915 920628541 923715439 151364594 359714925 809429735 689757867 783513992 932715562 936312210 488788762 857535330 400178823 838655651 298050322 877167702 220576148 735696627 405444604 93651148 441621000 109369069 975478549 132556595 282751746 586446680 172894131 234980621 342116147 123073176 451521521 230662076 207844781 765027062 218611070 770993588 708094860 703490607 647733367 736624310 36055646 551289217 81553943 49317804 35128915 67831588 249820698 396050095 361002681 420052652 962430008 429277230 835212499 266213579 452156279 29069209 103219970 598426014 882804101 678884863 934824360 637939784 676975489 830619816 829614460 298727845 186244437 920628541 858798711 358401766 852755974 60750487 630629857 303230482 984050047 851400664 620243558 257214051 678474526 553191189 68748842 268759041 247822207 679463383 226492467 751925989 507016471 630775839 390793037 769327548 602832600 911302173 298050322 893019475 817743547 136384659 630977998 190979155 509664709 940188502 306597948 151506993 656191811 778074990 808838846 824770361 942899938 854902633 195019158 595030753 509019925 602396426 433921335 31215478 866568903 721418370 174335822 462762217 910818482 152618584 446968233 816971086 587179274 292696118 733642252 542382913 572465104 98824830 539035187 203331888 990121035 128188331 739696834 554222239 613596687 886917295 378961655 816971086 997329398 814662325 781246194 938140278 733642252 499057158 815123402 215981255 328764419 502849508 448881532 98287438 812414090 289736829 632378665 499057158 965948435 888699423 485262404 284588557 35128915 478351140 249820698 637657473 299462930 626833449 983113723 151506993 662972501 101231409 852604705 251042004 136412292 688534928 776835194 801623766 426814174 632014852 251367294 586370291 942899938 367026304 175060805 900116034 134801439 971894015 764116955 917452919 334211676 539957336 697742034 499057158 984047482 946612927 582273012 152866011 496698204 361435434 267829614 21190596 19911869 242186770 698320352 290117216 155241439 502849508 400218902 884059813 531135820 78649514 420636144 878442641 146573202 750563611 682170984 174140940 543945175 38338132 174862116 617908997 516175014 430101007 121069546 215977916 241184545 21190596 686884353 750563611 175060805 722768643 186244437 456956861 337153847 425392410 338312978 610834602 750978759 540976336 130160246 862177563 2575238 956815883 994587826 183440003 223299794 430088921 53966525 770594967 979750308 489130642 607041944 982416551 572465104 550336314 981996224 678884863 462394151 125204206 708094860 681765297 186244437 645094664 674446970 688577702 420636144 808866527 24089615 72820570 559957428 153196022 792846009 151364594 767187616 923927991 79509313 945394518 5299425 950673785 232177196 591292508 789617647 641635851 560327459 944068218 698320352 850386354 134971740 203331888 307403622 264408147 396138845 228290502 382210484 610447918 285947848 991073887 702745028 23262398 727578179 592639233 509370562 921198791 678474526 702364434 572465104 595030753 962073361 949084393 114409323 67831588 790270533 637939784 953267424 251188854 835212499 685702028 24089615 992001870 226492467 806664207 396632533 956815883 860708299 123073176 170941326 885995802 462394151 115509283 817743547 125204206 896029805 28363157 735710261 456956861 288873549 920628541 592981604 64420967 938456692 630775839 737945381 860477160 51457589 206036522 721769014 884059813 699230813 135975430 727578179 304621545 789617647 152618584 570796148 363976852 978947655 626932919 726620654 617908997 250749017 864016134 334211676 769327548 676975489 884072178 607965234 358401766 408032939 663971090 136412292 550336314 694954883 214244685 19715614 23262398 498045048 721418370 458290565 514650194 267829614 900796599 882804101 719307635 858798711 926045944 620243558 743614603 808614164 284588557 313272965 877167702 613596687 190929591 136412292 641635851 592981604 21190596 907095826 203331888 509370562 430088921 143200457 115509283 298050322 152523810 459617527 617908997 782533040 462762217 566554997 101231409 327773233 407629453 121069546 663971090 568142039 538810384 841780337 525347105 77685914 736237188 509019925 886149363 462394151 211958450 546141085 211958450 630977998 125829791 597784477 888553258 53195413 630775839 220576148 738612855 463496366 67831588 571019028 354807942 24089615 289918211 511277493 103669472 330274784 583924389 953267424 32806834 891279504 956815883 485063015 98287438 315343704 284588557 310726569 424594759 618355033 808866527 739696834 407510599 218611070 305068796 870201182 738855203 835212499 802009078 983113723 950497221 36055646 931086800 888259120 874124920 739696834 366854683 121069546 814662325 143200457 305068796 38304068 776352608 288873549 145559297 667313812 896571061 841780337 115509283 498045048 654830523 937158597 583924389 978947655 422532994 732559957 967417280 232177196 41538784 636434256 401452903 393120342 125204206 835212499 40656291 981996224 705304879 923715439 203331888 992169078 203331888 916956968 750563611 66490779 893019475 835198840 181668423 896029805 219054502 134801439 321628921 507016471 831467447 232177196 602396426 359859765 932584021 464444922 927806038 667313812 786380583 352092606 125829791 136412292 922706719 463496366 688577702 138442062 946916156 98231977 922706719 160287690 788737791 885141769 305990981 938705675 547547687 722013570 831467447 394791153 456956861 727827821 743614603 165821462 286037808 628820972 603931167 119279869 736624310 891279504 148087911 190323279 630201811 923715439 941586175 193515742 982353486 382210484 264408147 175507355 591292508 287768226 876263470 662972501 830619816 812044550 617908997 114409323 193648030 708053570 559014304 134971740 115090276 81337657 274113481 858040709 156817178 885141769 681765297 485509833 568104980 607041944 38844979 478892468 630775839 248642173 6720560 427184372 64420967 764116955 884072178 193515742 623398671 757709512 304621545 205387898 917795074 505061211 900796599 641231120 275202504 359859765 117931902 266583970 923927991 359859765 407091770 187104147 630201811 285947848 481894295 851829959 302151126 808838846 80415088 509144872 484158080 36055646 703514531 607760956 931966477 400218902 274113481 543865019 918225489 676975489 328462418 923715439 769327548 806744033 753419354 163229392 40448245 817743547 244528344 938456692 550336314 267829614 242028021 618355033 950673785 443960759 645094664 112090095 67831588 601740259 587469038 334211676 610834602 325554372 548748527 531333917 740340897 526944836 366854683 699733109 704431513 727245017 760231333 79509313 215977916 330205547 228290502 205387898 408395896 744008188 567948101 324129364 21190596 650036494 652018277 539035187 803588261 393120342 193648030 732559957 956815883 337153847 587469038 311808379 201717402 767839638 882364001 55108095 278160655 678474526 600441802 635302209 723661847 889608806 771321738 400218902 799588075 37275245 920721173 616057762 674485068 35128915 577970627 250749017 936312210 944573659 982416551 780061015 553191189 943793512 53226850 162904272 271484655 209497607 539957336 726950461 228290502 38304068 539381059 522332929 306258744 117210451 152523810 647733367 949084393 718980624 203331888 981996224 67831588 568142039 592639233 338631458 922706719 36055646 940188502 511277493 590208882 688177128 321628921 713146141 53525809 962073361 322974842 400178823 21190596 446968233 703514531 38304068 539957336 994587826 929504680 404152565 547547687 388085842 803588261 10369081 503666498 539035187 942999703 688177128 154538466 98231977 548748527 136412292 860477160 971549242 585165457 592970093 603931167 859168292 29069209 250749017 654830523 632378665 551289217 382904427 801623766 78775552 429277230 382904427 703490607 970320952 751925989 607760956 129724737 662972501 38844979 870201182 366854683 754133002 126695727 196460706 773781000 852107700 322974842 376974209 857535330 314069534 274113481 618355033 527654256 592981604 210621083 737945381 181668423 237172271 687988023 942866882 247841801 891279504 428572243 604881661 740882715 708094860 945394518 393120342 774489082 708053570 237389399 338631458 618542887 975478549 214244685 506178629 499057158 400218902 131323888 589760538 503666498 896029805 885549757 360743135 94279561 376448548 757850417 786320493 539381059 338929165 858127225 560623000 503666498 682170984 683406807 267829614 73848009 140725908 602396426 556619020 481894295 378961655 438183310 2575238 532803593 698320352 23262398 313272965 115090276 853170454 484158080 750978759 674485068 781246194 757850417 729868696 774489082 781242822 567774282 121069546 740882715 213097363 661321016 310726569 67831588 382210484 663670886 396632533 660765062 550322314 807117750 485063015 572588387 396937914 703490607 989729323 931086800 15903366 947413305 859168292 630775839 334932282 809429735 937158597 215774690 53966525 455539394 990121035 431406787 338631458 944068218 505061211 152243323 77685914 710224239 721769014 967417280 114409323 23262398 767839638 691982506 266583970 931966477 979750308 296305836 458290565 799588075 996943901 769327548 136412292 23973553 112390393 585165457 891279504 181668423 682170984 662421393 162904272 502849508 778123726 306258744 79509313 38844979 739696834 949084393 121069546 809429735 996943901 412979540 195019158 577970627 252962990 290117216 103219970 824770361 307060809 938140278 629101079 776352608 970911538 451817798 896072909 242028021 953267424 32806834 55018341 451817798 727245017 228290502 889608806 840130613 2575238 38338132 942866882 860477160 462394151 969294148 441621000 266213579 853903669 991073887 613596687 746992914 207844781 47290536 172894131 23262398 808614164 691982506 207442482 769327548 53966525 740882715 338312978 13112382 498045048 23262398 507016471 183440003 786320493 610834602 782533040 771321738 776835194 765027062 750750593 269911067 290474734 705548145 7807006 420052652 943793512 38338132 623206361 375066210 396632533 152243323 247822207 251042004 352092606 855636134 49614749 850386354 694954883 922858580 539035187 660765062 616796881 915330573 396138845 50241607 446968233 32806834 38085353 652018277 252962990 632014852 630629857 462762217 543865019 814295984 522663253 814295984 396138845 162062292 860708299 484158080 408032939 778074990 485063015 773781000 872434540 396050095 182214511 619842427 369306500 322974842 607965234 247221668 994587826 351424753 495854210 801623766 248642173 251042004 396138845 548748527 708053570 851400664 735710261 685702028 838803091 208625324 719601437 874124920 306597948 816971086 682170984 257214051 932715562 966683628 353964006 771321738 960796073 683406807 361002681 966131311 607041944 893019475 607760956 299113502 668964848 553191189 400178823 966683628 795472528 242186770 485509833 884059813 628820972 911302173 650036494 760231333 664041213 274113481 838803091 101231409 852755974 956286779 49614749 237389399 969494113 827311105 715957434 498840912 907095826 152866011 334211676 691982506 172894131 24188768 396937914 780870754 925555858 830619816 870201182 700560235 205387898 917795074 51457589 284588557 458156391 396743027 838803091 485153920 955730659 210621083 604881661 760231333 298050322 401452903 806744033 778074990 566554997 156817178 727578179 587469038 163229392 874124920 702745028 572588387 349644605 633573519 298050322 135975430 283321520 344620844 37275245 257214051 587179274 542382913 916956968 942999703 597784477 722768643 589760538 123073176 459617527 975337465 527595027 304621545 349076114 774489082 251367294 591292508 441621000 650697444 650036494 637657473 496698204 603931167 459617527 315747769 106790696 152243323 426814174 298727845 853170454 29069209 842970782 151364594 138442062 641635851 853170454 626833449 896029805 115509283 808838846 40448245 630238886 581063820 138442062 266213579 60017144 946612927 965948435 358401766 573480571 518384931 359714925 151506993 299994808 125829791 907721720 135975430 449022331 93478833 112390393 715779797 382904427 575023903 607760956 247221668 613596687 750563611 2379379 93651148 49948206 214244685 835212499 387176309 182214511 433686203 870201182 696443558 872434540 98824830 476912096 597206610 53195413 540976336 52243955 562773407 852755974 293192373 441621000 577970627 68748842 257214051 288072509 975337465 962430008 736237188 678474526 936312210 587179274 135975430 298050322 354807942 63192647 77819776 441621000 911302173 140551765 275349681 390793037 196106606 812044550 900796599 207844781 74587532 213097363 837690635 262406489 292149520 334211676 140129038 250749017 688577702 981996224 915330573 566554997 769327548 885141769 480361743 371179314 539381059 767187616 581063820 992169078 590208882 241184545 152618584 970320952 190929591 711455867 786380583 306597948 638516505 78775552 98287438 77685914 74587532 836376015 489612980 237172271 603931167 635302209 917795074 324129364 10475035 81553943 653201202 812414090 923927991 175507355 32075030 300892929 623398671 953267424 125204206 698320352 886149363 687055288 152243323 683621666 808866527 708053570 512614298 960543625 846351340 767187616 237389399 727245017 633573519 970320952 181668423 732245352 548748527 907095826 808866527 226492467 900116034 509370562 953882020 424974082 827311105 629101079 387176309 960796073 814662325 792822959 982370833 896072909 754580366 674446970 40448245 853170454 645094664 997329398 432089082 68748842 401452903 842970782 587469038 182214511 702364434 810021050 864016134 443960759 806664207 225771141 80415088 722013570 332834875 338929165 583924389 907721720 583924389 694954883 904800517 246221518 128188331 938080232 396743027 559957428 206036522 984047482 681765297 334932282 174140940 711532060 783513992 195733178 831467447 852604705 572588387 989729323 1926282 885647994 778074990 451551269 502849508 485063015 261683638 424974082 656623172 464444922 39220584 352092606 303230482 613596687 247221668 88335614 420052652 27735709 770864525 667844649 632014852 997329398 857535330 79509313 751925989 49948206 946612927 550322314 407091770 315297566 704431513 937158597 98824830 49614749 592639233 371179314 979740237 940381563 581063820 247822207 128188331 2076768 570764323 509370562 618542887 283321520 769327548 646710523 43970470 866337119 705304879 711532060 268759041 718980624 99294732 112390393 945394518 272303478 298727845 424974082 408395896 397928982 13112382 390275103 640925332 632378665 540394532 965948435 979740237 81553943 971894015 103219970 946916156 727827821 289736829 851829959 630775839 733642252 955501918 852107700 554222239 527595027 662421393 387703244 334299650 4519262 132556595 53195413 838655651 750978759 941586175 543945175 570764323 539035187 799588075 330274784 743614603 943235508 954677909 396632533 525347105 981996224 585165457 632378665 42657625 112390393 626833449 400178823 854902633 353964006 695599688 625664180 640849273 902464469 455539394 249670598 911302173 527595027 485153920 165821462 78649514 579757115 705548145 683621666 740882715 68748842 595030753 145885851 547547687 858040709 514650194 247822207 946916156 237172271 21190596 246221518 195957995 40131409 264408147 960543625 757815664 592970093 201717402 128450928 464130920 686335042 129724737 338631458 128702236 288072509 484158080 853903669 292149520 338929165 748408317 458290565 851400664 882804101 306607837 117210451 354807942 338631458 641635851 237172271 941586175 426814174 268759041 264100442 654830523 48746678 683406807 860708299 151506993 307060809 645094664 604181881 82689280 478892468 275202504 103219970 13112382 160287690 723661847 888259120 284588557 852604705 425392410 172382592 465759767 394791153 326469359 613596687 540976336 729868696 704431513 175507355 900796599 831241130 743614603 969494113 67700412 19911869 457149478 975478549 926044257 24089615 835339516 664041213 745200166 387703244 723661847 812414090 917452919 592970093 816971086 866568903 99294732 299462930 533455280 726620654 305990981 780061015 660095934 641231120 654830523 324986193 946612927 458156391 67831588 334932282 152523810 330274784 773781000 781246194 332834875 979750308 598543708 52243955 274113481 975478549 773781000 641231120 257214051 37275245 98287438 299462930 295606018 971549242 94279561 739696834 723661847 835212499 401452903 396937914 876868627 252962990 298727845 251367294 42657625 627110568 736237188 196460706 502849508 193515742 877167702 851829959 550336314 488788762 838331644 938080232 786380583 175507355 163769090 520071928 770864525 981996224 814295984 635302209 904771946 403519778 420052652 800460688 219054502 687055288 72820570 806744033 289918211 193515742 940188502 817743547 577970627 597784477 778074990 79523589 966131311 360743135 206036522 607760956 592639233 711532060 931013644 543945175 770594967 630977998 56154381 186244437 554222239 526944836 196106606 539035187 109369069 702745028 824770361 299994808 583924389 984050047 278160655 942866882 743614603 47529701 641635851 167276070 292696118 162904272 704431513 247822207 247234349 299994808 540976336 870201182 567774282 962073361 840130613 795472528 858127225 656191811 151506993 979750308 128188331 33511708 830619816 396632533 209789164 978947655 128188331 307060809 269911067 390793037 518384931 664041213 619842427 167276070 911302173 459617527 804406873 854243215 305068796 841780337 518384931 676975489 53226850 535533605 827311105 550322314 740340897 155241439 407510599 485262404 465759767 241184545 190979155 991615550 156817178 130160246 886917295 727827821 424594759 607760956 637939784 179991869 754580366 758889515 396050095 573449906 575023903 678474526 478351140 831380531 73848009 806792339 123073176 550322314 140129038 592970093 843005594 413592826 481894295 872434540 982353486 315343704 255644658 179991869 982416551 852604705 428572243 485509833 632402794 382904427 719307635 888259120 807117750 697742034 778074990 307060809 911302173 349644605 270237875 953267424 770864525 780061015 438183310 396937914 814662325 587179274 539381059 7807006 603931167 960543625 917452919 590918818 982370833 287239117 298727845 342116147 562773407 476912096 539381059 969494113 854969794 570796148 949084393 938456692 363976852 907721720 162062292 699733109 123073176 437743643 478351140 190323279 722768643 394791153 214650974 507016471 750563611 441621000 251188854 172382592 503666498 944573659 940188502 215052415 396806189 494336936 50241607 247822207 53525809 896029805 645094664 744008188 931966477 360743135 922858580 618355033 885549757 55108095 808866527 955730659 567343883 800460688 242028021 37275245 931086800 338929165 683406807 592970093 540976336 572465104 971894015 713146141 967417280 835212499 242028021 991615550 296305836 628820972 586446680 81553943 723661847 573449906 50241607 283321520 806664207 851829959 923927991 174862116 148087911 604881661 196106606 215052415 885549757 399037712 264408147 860708299 760370490 767187616 444897967 812044550 247841801 66490779 885549757 891279504 125829791 382210484 512614298 264100442 408395896 570796148 214650974 694954883 430088921 667313812 577970627 916956968 133739154 506178629 864016134 579757115 431406787 570796148 748408317 403519778 82689280 632378665 308142020 885647994 975337465 193515742 661321016 972710252 946916156 996943901 922858580 965948435 864016134 970320952 465759767 592970093 295366548 494336936 804406873 972710252 567948101 437743643 723661847 588034909 886149363 98231977 302151126 858798711 140129038 287239117 696443558 509019925 129724737 55018341 40656291 713146141 538810384 81337657 770594967 207442482 956286779 399037712 816971086 413592826 489130642 718980624 803588261 143200457 67831588 676975489 955501918 79509313 722768643 38304068 637769046 775682536 190979155 838803091 322974842 145885851 688577702 40131409 103733806 163229392 533864165 994587826 334299650 251367294 982353486 782533040 83066601 159828635 428572243 984047482 855636134 451551269 604968568 934824360 688534928 749497174 780870754 251367294 885549757 718980624 626833449 324986193 492009082 19715614 953882020 19911869 305068796 573480571 128188331 152314280 619842427 963141978 23262398 190323279 502849508 566125822 830619816 215052415 904800517 5299425 264408147 884952974 630775839 145885851 922706719 376448548 148087911 262406489 956815883 494336936 126695727 437743643 123073176 33511708 799588075 451551269 275202504 910818482 186285312 112390393 210621083 403519778 115090276 955730659 770594967 37275245 626932919 225771141 303230482 334932282 638516505 711455867 484158080 103219970 638516505 885353274 886917295 708094860 74587532 496698204 922706719 128450928 478351140 978947655 835339516 32954995 838331644 697742034 242028021 628820972 242186770 577673184 430284321 5299425 662421393 781242822 650697444 719601437 126695727 369306500 950673785 361002681 190979155 835212499 547547687 786320493 831467447 810021050 932584021 866568903 538025980 888259120 846351340 916956968 806664207 458156391 975337465 943235508 567343883 630238886 966683628 516175014 971894015 79523589 82689280 393120342 502849508 299462930 77819776 620243558 618542887 172382592 131323888 2379379 885995802 209497607 551289217 778123726 769327548 733642252 920628541 10369081 917452919 737945381 918225489 448881532 850386354 984047482 604968568 349076114 840075867 128450928 215981255 526944836 103733806 81337657 702364434 560327459 502849508 505061211 546679009 735891721 295366548 15903366 94279561 836376015 190979155 399037712 206036522 727245017 230662076 767839638 498840912 396937914 128188331 969494113 954227928 638790258 396050095 378961655 513440742 588034909 722768643 522332929 604968568 722013570 783513992 664041213 40448245 285947848 525347105 943235508 547547687 446968233 824770361 790270533 363976852 1736950 334299650 699230813 518384931 943235508 893019475 215289803 824770361 60017144 602396426 625664180 201717402 711455867 773781000 68748842 688577702 810021050 703490607 315343704 808866527 193515742 788737791 287239117 623398671 842970782 748408317 664041213 47290536 509019925 623398671 55108095 83066601 964902255 13112382 515426984 153196022 452156279 424594759 978947655 904800517 388085842 292696118 172382592 133739154 81337657 886149363 32954995 103733806 829614460 956815883 196460706 396806189 853170454 489612980 907095826 28363157 991615550 719307635 53195413 877088774 459617527 904800517 793291205 196106606 715957434 292972503 172894131 637769046 315297566 900116034 978947655 465759767 509370562 715779797 138442062 719307635 630238886 966683628 727578179 242028021 940381563 98287438 994587826 722768643 464444922 103733806 853170454 619842427 708046990 553191189 588034909 13112382 49614749 129724737 566554997 259646582 172894131 215977916 688177128 776820092 746394036 298727845 943793512 162062292 806744033 128702236 808614164 703490607 604181881 633587956 382904427 917795074 885141769 721418370 400178823 633573519 638790258 862254110 313272965 540976336 858798711 306607837 162904272 660095934 112390393 215981255 19911869 444897967 56927881 681930584 112390393 910850066 387703244 93651148 943793512 712346140 727245017 768561257 119279869 650990283 754133002 619842427 713146141 921198791 582273012 950497221 866568903 162062292 788118407 47290536 531333917 457149478 400178823 975337465 984047482 275349681 812414090 838655651 36265302 854902633 732245352 67700412 38304068 846351340 47529701 586446680 283321520 152866011 997329398 511330454 49614749 575895835 405444604 77819776 143200457 306258744 597784477 31215478 964902255 645094664 516175014 675472009 146573202 617908997 560623000 804406873 520071928 591292508 995876182 183440003 349076114 203331888 781242822 679463383 179981178 967417280 750978759 334299650 979750308 82689280 249670598 53226850 912948600 623398671 979750308 602396426 588034909 797746066 137529801 206036522 458156391 539957336 2575238 663971090 511277493 292149520 573449906 230662076 939725993 275202504 571019028 626833449 727827821 366854683 7807006 760370490 252792947 876263470 205387898 704431513 993091440 156817178 718980624 56154381 290474734 917795074 851759377 60750487 458156391 481894295 19911869 567774282 276676140 332834875 662972501 152866011 573480571 746992914 396138845 40448245 256866745 209789164 163229392 814295984 458363994 660765062 708053570 953882020 7807006 702364434 160287690 922706719 627110568 183440003 334211676 953882020 668964848 82689280 708046990 638516505 708053570 264750083 990121035 568104980 136412292 704431513 678474526 567948101 810021050 210621083 175507355 424594759 81553943 850386354 138442062 882364001 172894131 77819776 815123402 293192373 771803404 626932919 478892468 32075030 944573659 206036522 136412292 570764323 196460706 396806189 307060809 896571061 19911869 585165457 780061015 444897967 376974209 448262245 896029805 444897967 38085353 753419354 403519778 109369069 968755777 586446680 874297853 498840912 782533040 780870754 757709512 203331888 629101079 261683638 887548285 292696118 509019925 266213579 506919968 736624310 250749017 746992914 109054120 799588075 888259120 255644658 624819674 407091770 449022331 32806834 938705675 367026304 754133002 211958450 165821462 876263470 744008188 275349681 851759377 542382913 327773233 408395896 852755974 358401766 399037712 610447918 338929165 193648030 68748842 838655651 852755974 511330454 597784477 583924389 369306500 38338132 667844649 738612855 944573659 206036522 451551269 553368896 764459345 721418370 601740259 807117750 934824360 80415088 475344103 50241607 812414090 700560235 225858850 145559297 495854210 778074990 315297566 181668423 361002681 910850066 764459345 637939784 2379379 302151126 989729323 600441802 688177128 527654256 134801439 922706719 464444922 148087911 925555858 53226850 167276070 808866527 249820698 485153920 699230813 152618584 55108095 261683638 885000402 271484655 399037712 774489082 134801439 28363157 943793512 926044257 806744033 251042004 485509833 344620844 932715562 595030753 182214511 931013644 396632533 610834602 887548285 696443558 604181881 600441802 325554372 401452903 51457589 640925332 984047482 266213579 932715562 123073176 390793037 331638088 925555858 126695727 29473993 292149520 727245017 190929591 285947848 247234349 328764419 299113502 283321520 67700412 902464469 488295044 134801439 234980621 134971740 538810384 174335822 401452903 912948600 42657625 349076114 799588075 764459345 40656291 288072509 53525809 546141085 67831588 134801439 982353486 767187616 344876805 812044550 877167702 246058339 806664207 715957434 750563611 579757115 572588387 887548285 604968568 15903366 568104980 885353274 152866011 735710261 619842427 393120342 637769046 853903669 760231333 485063015 396806189 371179314 429277230 162904272 632402794 962073361 407091770 495854210 539957336 607965234 304621545 729868696 351424753 806744033 484158080 404152565 545538425 427184372 745200166 993091440 709613471 592981604 562773407 464444922 678884863 19911869 652018277 761330904 326469359 448881532 982353486 993091440 803588261 775682536 824770361 387703244 154538466 152314280 705548145 858040709 806664207 49948206 433686203 789617647 83066601 627110568 142903358 656191811 602396426 507016471 586370291 923715439 929504680 970320952 650697444 187104147 626833449 932715562 540394532 246221518 949084393 607965234 77819776 310726569 228290502 196460706 78649514 944573659 753419354 112090095 162062292 757709512 78649514 778123726 917795074 713146141 920721173 812414090 681930584 531135820 292149520 390275103 900796599 964902255 125204206 179981178 396806189 854243215 623398671 138442062 628523361 53195413 681930584 616796881 763431295 885000402 944068218 781246194 992001870 330274784 808866527 965948435 548748527 764116955 540394532 334211676 289918211 582273012 703514531 452156279 803588261 48746678 801623766 780061015 630775839 207442482 237389399 887548285 156817178 531333917 219054502 349644605 788737791 943235508 131323888 112090095 425392410 627110568 464130920 288873549 583924389 996943901 457149478 965948435 424594759 179991869 82689280 47349911 215792516 330205547 151506993 531333917 570764323 635302209 422532994 702745028 457149478 174862116 465759767 338631458 13112382 522332929 264408147 697742034 913521589 170941326 278160655 495854210 125204206 138442062 843005594 762749463 47290536 498045048 142903358 604181881 101231409 51457589 451817798 505061211 583924389 708094860 533864165 78775552 284588557 170941326 595030753 307060809 874124920 334211676 705304879 378961655 56154381 167276070 923927991 159828635 773781000 187104147 929504680 56927881 145559297 989729323 888553258 983113723 215774690 330205547 284588557 831241130 532803593 546141085 795549341 910818482 539381059 207844781 760370490 780061015 354807942 190323279 489130642 838803091 215792516 165821462 315747769 376974209 351424753 81553943 553368896 79523589 598543708 607965234 53226850 782533040 465697134 997329398 802009078 815123402 456956861 266583970 921198791 579757115 586446680 475344103 814662325 317751260 884059813 989729323 591292508 786320493 709613471 103219970 563678994 592981604 278160655 121069546 920721173 38085353 630201811 571019028 736237188 776835194 306258744 560623000 135975430 937158597 746992914 786320493 921198791 248642173 354807942 145885851 586446680 232177196 917452919 463496366 533864165 462394151 840130613 225771141 954677909 405444604 532803593 226492467 663971090 193515742 922706719 299994808 261683638 63192647 632402794 307403622 942999703 859168292 292696118 334932282 745200166 79509313 103669472 531333917 551289217 718980624 451817798 218611070 598543708 698320352 896571061 509019925 702364434 496698204 545538425 835212499 882364001 250832323 247234349 727245017 884059813 896029805 736237188 969494113 575023903 361002681 843005594 400178823 645094664 38085353 6720560 628820972 900796599 248642173 846351340 907095826 637769046 860708299 688577702 276676140 129724737 711455867 705548145 299994808 637657473 246058339 702364434 592970093 855636134 112090095 41538784 249670598 230662076 750750593 553368896 36265302 275349681 750750593 328462418 792822959 591292508 662972501 304621545 182214511 799588075 836376015 145559297 781246194 633587956 40131409 375066210 109054120 843005594 582273012 527654256 841780337 429277230 413592826 740882715 795472528 840075867 535533605 809429735 53195413 696443558 647733367 295366548 762749463 138393155 404152565 259646582 272303478 893019475 573480571 632402794 458363994 546679009 792822959 271484655 247822207 289736829 771803404 396050095 167276070 151506993 780061015 940188502 369306500 289736829 548964093 650990283 808614164 23973553 314069534 683406807 193515742 840075867 382904427 490344724 315297566 50241607 939725993 797746066 400178823 428572243 288072509 215977916 2076768 770993588 918521256 695599688 616796881 788737791 757709512 757850417 531333917 228290502 330274784 115509283 427184372 567343883 812044550 567774282 51457589 502849508 511277493 234980621 761330904 771321738 607965234 641635851 938705675 302151126 727245017 201717402 252792947 953882020 485262404 503666498 397928982 24188768 543865019 932584021 965948435 757815664 993091440 430284321 114409323 753419354 938080232 499057158 727245017 709613471 694954883 269911067 186244437 982416551 509370562 656623172 792846009 420052652 667313812 209789164 376448548 743614603 546141085 854969794 299462930 298727845 786320493 153196022 456137963 136384659 858798711 31215478 522332929 39220584 754133002 804406873 531135820 542382913 249820698 103733806 514768035 430284321 226492467 950673785 315343704 618542887 838803091 862254110 592981604 760231333 10369081 783513992 607041944 174140940 195733178 518384931 522332929 72820570 571019028 547547687 630977998 705548145 382210484 140129038 923715439 264408147 885141769 702364434 60017144 553368896 758889515 190979155 874297853 259646582 36055646 776820092 394791153 412979540 48746678 942999703 338929165 230662076 570796148 77819776 121069546 687988023 866337119 289736829 963141978 546679009 831241130 788737791 448881532 64420967 112390393 270237875 459452716 527654256 662972501 542382913 146573202 553368896 328764419 723661847 831380531 595030753 722013570 837690635 112090095 585165457 349076114 705548145 795472528 361435434 556619020 363976852 778123726 554222239 589760538 417074904 55108095 488295044 509019925 354807942 103219970 623398671 722013570 760370490 896029805 305990981 403519778 539381059 650036494 712346140 232177196 807117750 767187616 884072178 786320493 911302173 112390393 215792516 266583970 855636134 232177196 967417280 668964848 827311105 330205547 193648030 307403622 653201202 138442062 801623766 676975489 757815664 729868696 289918211 451521521 480361743 573480571 840075867 299462930 723661847 767187616 592639233 413592826 553368896 764116955 816971086 494336936 464130920 607965234 432089082 776835194 679463383 836376015 598426014 618355033 234980621 939725993 712346140 656191811 966683628 860708299 492009082 250832323 650990283 396937914 152866011 858798711 306258744 446968233 877088774 888259120 10475035 571019028 590208882 853903669 885995802 778123726 738855203 246058339 771321738 737945381 219054502 851759377 247006479 560623000 332834875 858040709 982370833 526944836 251188854 485262404 940188502 789617647 490344724 960796073 586370291 218611070 602396426 35128915 967417280 604881661 140129038 683621666 78649514 27735709 942999703 887548285 540394532 53966525 513440742 708046990 896571061 582273012 456956861 165821462 719307635 248642173 602396426 205387898 746992914 722013570 47290536 451551269 186285312 241184545 425392410 393120342 551289217 476912096 703514531 543865019 39220584 446968233 481894295 1736950 851400664 182214511 547547687 831380531 663971090 387703244 637939784 531333917 215977916 628820972 691982506 485509833 133739154 1736950 328462418 396632533 73848009 852604705 135975430 485262404 754580366 885353274 746992914 187104147 38338132 676975489 93478833 79523589 838331644 866568903 430088921 808838846 950497221 287239117 786380583 735710261 595030753 485063015 499057158 382210484 361435434 359859765 562773407 940381563 663971090 793291205 661321016 237172271 661321016 702745028 527654256 793291205 387176309 330274784 918225489 938456692 286037808 288072509 152523810 163229392 877167702 248642173 290117216 968670974 904800517 195019158 931640418 815123402 268759041 388085842 208625324 781246194 533864165 604181881 760231333 288873549 600441802 990121035 721418370 287239117 553191189 970320952 417074904 1736950 488295044 79523589 982370833 187104147 43970470 762749463 918225489 776835194 803588261 795472528 328462418 573449906 931640418 726950461 6720560 968755777 630775839 190323279 770594967 546141085 598426014 739696834 257214051 400218902 396806189 628820972 433686203 205387898 736624310 708094860 201717402 733642252 518384931 226492467 932584021 520071928 927806038 396138845 757850417 979750308 886149363 932715562 809429735 674446970 162062292 732559957 140129038 400218902 305990981 159828635 115090276 940381563 538025980 306597948 633573519 494336936 215774690 750978759 41538784 241184545 42657625 592981604 936312210 970911538 237389399 290474734 702364434 979750308 484158080 119279869 780870754 337153847 315747769 746394036 40448245 960543625 366854683 711455867 332834875 923715439 154538466 170941326 203331888 426814174 41538784 53195413 53226850 4519262 177689820 688177128 598543708 426814174 795549341 172894131 103669472 378961655 703490607 983113723 247841801 165821462 971894015 47529701 947413305 656191811 843005594 718980624 975337465 287239117 770864525 882804101 163769090 325554372 681765297 983373150 298727845 806744033 186285312 556619020 862254110 962073361 592639233 762749463 304621545 288072509 396806189 866568903 431406787 382210484 303230482 462394151 210621083 733642252 754580366 299994808 206036522 2379379 878442641 32954995 202477791 630238886 913521589 505061211 15037608 433921335 846351340 360743135 264750083 968670974 768561257 971549242 354807942 88335614 145559297 587179274 864016134 462394151 683406807 916956968 949084393 349644605 502849508 252792947 539957336 781242822 201717402 397928982 533864165 726620654 533455280 885141769 650990283 459617527 540976336 324986193 703490607 535533605 740340897 932715562 946612927 225858850 29069209 207844781 681765297 698320352 553368896 650036494 190929591 699230813 637769046 838803091 721418370 628820972 640925332 792822959 67831588 174335822 773781000 874297853 626932919 38085353 840075867 694954883 705548145 145885851 703514531 462394151 361435434 616057762 946916156 38304068 311613451 136412292 302151126 721769014 797746066 624819674 598543708 570796148 148087911 786320493 931640418 638790258 518384931 925555858 920721173 650036494 840130613 138442062 917452919 817743547 703490607 912948600 575023903 77685914 926045944 174335822 284588557 842970782 637939784 10369081 430088921 81553943 293192373 190323279 527654256 767839638 994877696 172894131 163769090 831241130 29069209 174862116 31615284 686335042 152618584 866337119 862177563 48746678 299113502 851759377 145559297 778123726 344876805 337153847 740340897 130160246 396743027 397928982 757850417 4519262 478351140 604881661 274113481 852755974 344876805 32954995 860477160 394791153 275202504 758889515 31615284 942899938 289918211 307403622 982416551 984050047 546679009 568142039 306258744 708046990 532803593 130160246 804406873 607965234 292972503 870201182 851400664 290474734 151506993 885000402 830619816 262406489 910850066 256866745 638516505 213097363 540394532 962430008 145559297 38304068 72820570 79509313 502849508 404152565 788737791 778123726 750563611 159828635 846351340 458363994 776352608 650036494 773781000 315297566 193648030 165821462 551289217 215052415 201717402 396937914 485153920 396138845 567774282 573449906 600441802 975478549 575023903 761330904 31215478 841210236 247221668 246221518 428572243 87392830 814662325 662972501 760370490 852107700 321628921 325554372 640849273 464444922 776352608 885141769 502849508 53195413 783513992 7807006 945394518 186244437 942999703 607965234 43970470 390275103 32075030 912948600 451817798 577673184 681930584 969494113 242530683 478892468 152523810 624819674 877088774 543945175 904771946 441621000 135975430 488788762 770594967 860708299 203331888 800460688 932584021 737945381 770864525 829983432 754580366 276676140 768561257 592970093 512614298 37275245 712346140 829983432 927806038 539035187 242530683 464444922 214244685 556619020 950673785 515426984 255644658 618355033 722768643 853170454 704431513 831380531 412979540 33511708 601630030 852755974 942999703 325554372 876868627 885141769 228290502 962073361 746992914 535533605 926045944 134971740 215792516 604881661 735696627 140551765 837690635 616796881 776820092 646710523 23262398 885647994 942999703 276676140 488295044 548964093 567343883 964902255 931013644 859168292 637939784 400178823 230662076 694954883 830619816 937158597 712346140 160287690 514650194 352092606 193648030 607965234 433686203 296751278 32806834 207442482 480361743 726620654 814295984 787269565 502849508 806792339 958668995 33511708 679463383 629101079 109369069 112390393 911302173 334932282 242530683 225771141 304621545 601740259 771321738 662972501 259646582 310726569 581063820 831380531 513440742 4519262 862254110 592970093 830619816 735891721 214650974 750750593 547547687 560623000 950497221 812044550 242186770 568142039 275202504 207442482 135975430 647733367 152243323 24089615 770864525 485262404 776820092 307403622 857535330 361002681 289736829 427184372 156817178 750978759 587469038 620243558 215981255 735891721 152618584 287768226 133739154 934824360 94279561 220576148 956286779 776835194 715779797 726950461 900116034 449022331 878442641 858798711 966683628 145885851 103669472 800460688 542382913 443960759 804406873 441621000 429277230 729868696 623398671 387703244 888553258 413592826 266213579 266583970 23973553 38304068 735696627 708046990 804406873 145885851 420052652 697742034 598543708 907721720 131323888 815123402 145559297 852107700 645094664 885141769 293192373 256866745 982370833 515426984 67831588 361002681 936312210 662972501 344620844 330274784 685702028 134971740 860477160 841210236 366854683 787269565 843005594 539035187 850386354 38085353 633573519 1736950 840130613 250885472 626932919 912948600 152243323 310726569 922858580 907095826 776820092 134971740 619842427 27735709 604968568 554242697 67831588 689757867 74587532 623206361 663670886 396138845 138393155 810021050 15037608 641231120 638516505 424974082 923927991 559957428 568104980 702745028 471393875 686335042 484158080 369306500 802009078 225771141 887794841 953267424 183440003 137529801 583924389 382904427 242028021 103219970 771321738 272303478 433686203 737945381 835339516 405444604 846351340 907721720 816971086 266583970 804406873 750750593 763431295 912948600 900796599 352092606 295606018 852107700 152866011 506178629 922706719 315297566 311613451 232177196 455539394 241184545 128188331 851759377 862254110 290474734 931966477 163229392 886149363 63192647 632014852 808614164 153196022 624819674 183440003 338929165 931966477 750978759 773781000 60017144 547547687 15903366 953882020 968670974 215792516 970911538 953882020 646710523 654830523 306597948 559014304 2379379 251188854 629101079 183440003 19715614 201717402 81553943 855636134 624819674 838331644 400178823 954677909 972710252 770864525 174862116 603931167 399037712 215977916 134801439 840075867 338929165 407510599 964902255 219054502 969494113 585165457 792822959 743614603 2379379 681930584 831241130 967417280 56927881 292972503 808838846 31615284 267829614 900116034 307060809 719307635 249670598 39220584 408032939 424594759 167276070 448262245 572465104 854902633 514768035 190979155 300892929 838655651 739696834 140129038 420636144 432089082 932715562 640925332 727578179 358401766 866337119 591292508 817743547 462762217 616057762 715779797 387703244 203331888 975478549 885549757 514768035 603931167 514768035 396743027 516175014 751925989 916956968 448262245 452156279 768561257 476912096 163769090 887548285 375066210 162904272 858127225 571019028 499057158 560327459 553368896 403519778 804406873 689757867 681765297 789617647 687988023 155241439 125204206 515426984 109369069 942899938 499057158 79523589 955501918 829983432 396743027 160287690 126695727 744008188 38338132 352092606 567774282 860708299 688534928 516175014 602396426 729868696 331638088 264297813 769327548 53195413 289736829 997329398 910850066 792846009 601630030 190323279 527654256 266583970 955501918 526944836 923927991 38304068 979740237 458290565 305068796 55108095 971894015 852755974 451817798 19911869 228290502 835212499 991073887 841780337 49317804 252962990 286037808 352092606 900116034 889608806 420052652 140551765 760231333 788118407 60750487 699230813 154538466 143200457 94279561 33511708 303230482 36055646 663670886 53966525 917452919 458363994 966683628 32954995 831467447 902464469 117931902 616057762 322974842 388085842 103669472 872434540 975337465 831380531 278160655 787269565 748408317 997329398 632014852 735710261 125829791 396138845 949084393 396632533 407510599 989729323 42657625 334932282 931640418 885353274 367026304 851829959 575023903 556619020 674485068 264100442 663971090 327773233 546679009 334211676 259646582 646710523 237389399 378961655 688534928 443960759 838655651 136412292 93651148 727578179 703490607 79523589 991073887 250749017 215981255 970911538 78649514 152314280 765027062 349644605 904771946 616057762 975337465 964902255 886917295 726950461 289918211 29473993 387176309 334932282 757850417 134801439 163769090 226492467 769327548 588034909 271484655 49948206 553368896 852755974 268759041 464444922 770864525 788118407 931086800 138442062 740882715 800460688 162062292 560623000 125829791 114409323 653201202 193515742 254203892 795472528 190979155 408032939 920628541 754133002 748408317 516175014 950497221 143200457 115509283 404152565 129724737 167276070 448262245 209497607 860477160 485509833 183440003 307060809 438183310 179991869 795549341 573449906 115509283 884952974 736237188 885647994 286037808 307060809 181668423 953267424 586446680 983113723 929504680 650036494 567774282 604881661 926044257 812414090 142903358 667313812 691982506 943793512 332834875 288072509 953882020 587179274 601630030 996943901 710224239 433921335 598426014 795472528 123073176 618355033 286037808 573480571 295366548 750978759 917795074 923715439 266213579 152314280 295606018 47349911 979740237 207442482 757850417 932715562 132556595 808838846 40448245 522332929 780870754 767839638 308142020 971549242 550336314 19911869 511330454 159828635 311613451 727578179 162062292 187104147 103669472 338929165 42657625 509144872 292149520 767187616 344876805 853170454 910850066 571019028 38338132 910818482 478351140 688177128 292972503 310726569 975337465 52243955 550336314 246221518 991073887 750750593 954677909 800460688 650990283 758889515 244528344 53966525 128188331 573449906 465759767 548964093 932584021 767187616 209789164 708046990 56154381 220576148 152523810 128450928 592639233 170938835 433686203 136412292 83066601 739696834 396743027 464444922 152243323 711455867 637939784 152314280 575023903 138442062 904800517 250885472 43970470 7807006 797746066 324986193 740882715 771803404 366854683 694954883 247006479 1736950 884059813 175507355 650990283 360743135 296305836 571019028 193648030 400178823 6720560 143200457 174140940 119279869 215977916 172382592 154538466 458363994 722768643 507016471 884072178 815123402 770594967 404152565 882364001 53966525 539381059 446968233 533864165 145885851 306258744 587179274 922706719 488788762 140129038 560327459 956286779 607041944 824770361 627110568 465697134 511277493 915330573 630629857 98287438 630977998 831467447 172382592 489130642 361002681 854902633 870201182 660095934 632378665 944068218 620243558 177689820 997329398 581063820 938705675 438183310 866568903 533864165 511277493 138393155 38085353 662421393 726950461 678884863 287768226 740882715 140725908 618542887 143200457 420052652 20148474 78649514 349076114 214244685 776835194 43970470 592970093 645094664 641231120 586370291 400218902 289918211 51457589 424594759 942899938 982370833 885000402 304621545 448881532 518384931 307403622 788737791 616796881 595030753 225858850 778074990 337153847 244528344 404152565 211958450 287239117 760370490 55018341 918225489 213097363 736237188 630977998 210621083 349644605 74587532 250885472 662421393 334932282 610447918 604181881 367026304 433921335 893019475 215052415 152523810 223299794 640925332 628820972 53525809 272303478 554222239 618355033 351424753 262406489 133739154 225858850 480361743 300892929 681930584 885353274 947413305 694954883 93478833 175060805 328462418 315343704 921198791 155241439 152243323 970911538 687988023 841780337 40448245 408032939 215774690 353964006 533455280 604881661 215981255 713146141 540394532 20148474 950497221 520071928 770594967 965948435 244528344 560623000 429277230 237172271 966683628 299462930 838331644 711455867 654830523 98231977 795549341 369306500 49317804 47349911 860377902 732245352 214244685 938705675 492009082 750750593 850386354 515426984 949084393 515426984 710224239 307403622 840130613 882804101 736624310 390793037 687988023 550322314 653201202 256866745 126695727 907721720 950673785 817743547 954677909 854243215 101231409 955730659 854969794 992169078 290117216 916956968 145559297 866337119 540394532 882804101 429277230 641231120 38844979 771803404 396743027 448881532 910850066 112090095 931640418 662972501 247221668 965948435 455539394 750750593 927806038 764459345 770993588 134801439 603931167 290474734 29069209 885000402 266213579 476912096 740340897 459452716 456956861 213097363 264750083 625664180 73848009 376974209 412979540 996943901 723661847 47529701 843005594 629101079 490344724 441621000 456956861 790270533 306607837 764459345 783513992 38304068 773781000 81553943 683406807 121069546 674485068 119279869 471393875 520071928 949084393 664041213 142903358 36055646 125204206 393120342 770864525 854243215 854902633 721769014 681765297 209497607 660095934 775682536 602396426 79509313 778074990 925555858 152243323 729868696 512614298 581831913 251042004 79509313 915330573 630238886 251042004 831241130 424594759 37275245 430088921 572465104 154538466 495854210 887794841 306597948 858127225 232177196 407510599 628820972 211958450 795472528 140129038 853903669 683406807 393120342 888553258 146573202 860377902 991615550 840130613 262406489 797746066 237172271 40656291 888259120 284588557 526944836 598543708 361002681 422532994 159828635 407629453 2575238 685702028 548964093 286037808 829614460 261683638 337153847 228290502 145885851 498840912 121069546 774489082 458156391 131323888 602832600 740882715 478892468 662421393 196460706 305990981 607965234 864016134 220576148 650697444 207442482 850386354 388085842 344620844 960543625 637657473 668964848 572588387 788118407 738612855 979750308 269911067 938456692 203331888 485063015 877167702 560623000 947413305 896029805 858127225 607965234 575023903 806792339 814295984 859168292 947413305 689757867 944068218 870201182 152618584 852107700 407629453 943793512 93478833 568142039 387176309 699733109 854902633 888259120 465759767 647733367 396743027 315343704 275349681 262406489 326469359 778123726 816971086 535533605 433686203 588034909 696443558 851829959 275349681 887548285 77819776 405444604 786380583 264100442 663670886 817743547 640925332 371179314 538810384 463496366 193648030 103219970 858127225 792846009 654830523 330274784 41538784 413592826 816971086 604881661 795549341 246221518 93651148 47349911 765027062 732559957 982353486 744008188 465759767 509664709 183440003 943235508 910850066 145885851 292972503 647733367 975337465 241184545 838655651 992169078 619842427 463496366 366854683 588034909 215977916 112390393 21190596 726620654 748408317 195733178 489612980 896072909 152866011 165821462 177689820 485262404 448262245 812414090 181668423 37275245 876263470 978947655 922706719 962073361 840075867 27735709 590208882 328764419 878442641 885141769 551289217 650036494 838331644 620243558 633587956 266583970 982416551 786320493 190929591 81553943 955501918 285947848 637657473 250832323 885995802 196460706 751925989 462394151 284588557 699230813 840130613 495854210 136384659 2575238 53525809 806792339 786380583 48746678 407510599 887548285 740340897 162904272 135975430 338312978 696443558 556619020 140129038 117210451 465759767 918521256 1926282 912948600 539381059 817743547 923927991 359714925 979740237 112090095 640849273 732559957 645094664 662972501 754580366 851829959 780870754 835198840 776820092 413592826 210621083 241184545 387176309 812414090 896571061 209497607 1926282 781246194 553191189 146573202 854902633 53966525 334299650 496698204 681930584 543945175 432089082 2076768 334299650 556619020 101231409 627110568 715779797 767839638 49317804 535533605 80485362 582273012 315747769 851829959 363976852 396632533 640849273 851759377 703514531 5299425 177689820 835198840 864016134 2575238 633587956 170941326 662421393 441621000 117931902 68748842 498840912 37275245 559014304 376448548 455539394 812044550 922858580 792822959 278160655 702745028 893019475 581831913 808866527 19911869 893019475 744008188 183440003 618355033 994877696 388085842 302151126 1736950 838331644 940381563 743614603 404152565 771321738 664041213 103733806 793291205 551289217 994587826 696443558 400178823 640925332 140725908 299113502 573449906 884059813 296751278 77819776 902464469 553191189 51457589 738612855 962073361 465697134 213097363 408395896 209497607 135975430 399037712 991073887 488788762 598543708 689757867 42657625 167276070 816971086 307403622 145559297 130160246 602396426 7807006 945394518 526944836 763431295 984050047 518384931 317751260 740882715 223299794 202477791 887548285 40448245 426814174 465759767 727578179 663971090 955730659 546679009 2076768 202477791 299462930 840130613 353964006 295366548 195019158 254203892 965948435 6720560 786320493 396806189 630629857 982353486 616057762 862254110 441621000 47290536 5299425 367026304 506919968 966683628 376448548 502849508 943235508 190929591 781246194 888553258 408032939 303230482 972710252 685702028 630629857 878442641 338312978 926044257 543865019 950497221 708094860 850386354 662972501 710224239 851829959 923927991 179981178 23262398 984050047 115509283 940381563 653201202 912948600 209789164 476912096 49317804 399037712 774489082 218611070 254203892 207442482 432089082 780061015 703490607 638790258 681765297 587179274 966131311 732245352 910850066 87392830 259646582 232177196 103733806 313272965 876263470 607760956 422532994 195733178 131323888 630629857 363976852 732245352 814662325 459452716 247221668 283321520 771321738 338312978 628523361 47529701 140129038 140725908 292972503 885000402 428572243 451551269 1926282 264100442 619842427 505061211 431406787 196460706 31215478 624819674 195957995 630629857 292972503 56927881 877167702 694954883 740340897 689757867 270237875 287239117 462762217 754133002 489612980 841780337 125204206 248642173 261683638 288072509 98824830 607760956 674485068 732245352 712346140 688177128 533455280 338929165 738612855 15903366 215981255 891279504 254203892 859168292 444897967 831241130 638516505 195019158 743614603 36265302 545538425 841780337 433686203 246058339 257214051 328764419 583924389 788118407 284588557 130160246 190979155 590918818 430284321 349076114 637657473 630238886 851400664 33511708 745200166 858040709 947413305 732245352 481894295 337153847 946916156 994587826 830619816 19715614 163769090 56927881 190929591 831380531 830619816 272303478 98824830 103219970 882364001 136412292 967417280 427184372 546679009 573449906 215792516 119279869 53226850 170941326 485153920 554242697 186285312 393120342 994877696 559957428 539381059 850484222 431406787 931005739 736237188 656191811 738612855 494336936 28363157 53966525 575895835 782533040 428572243 19911869 266213579 968755777 554222239 852755974 444897967 252792947 633587956 940381563 326469359 746394036 862254110 739696834 746992914 885141769 326469359 729868696 940188502 451551269 480361743 163229392 740340897 764459345 464130920 749497174 332834875 582273012 712346140 376448548 626833449 852107700 816971086 143200457 145559297 623206361 920628541 451521521 203331888 577673184 931013644 539035187 511330454 992169078 641635851 317751260 299113502 613596687 760231333 531333917 917795074 858798711 274113481 776835194 284588557 694954883 305068796 896072909 115090276 775682536 332834875 256866745 816971086 359714925 259646582 451521521 567774282 137529801 938140278 962073361 247234349 601740259 610834602 943793512 514650194 968670974 527654256 750750593 765027062 225771141 862254110 325554372 660095934 858798711 242530683 140725908 760370490 623206361 626833449 207442482 770864525 711455867 956286779 494336936 814662325 590918818 950673785 140725908 1926282 215052415 269911067 831380531 98287438 232177196 344876805 960796073 592639233 136412292 24188768 737945381 539957336 566125822 663971090 638790258 471393875 174335822 234980621 296751278 31615284 559957428 361435434 396138845 533455280 579757115 663971090 250885472 24188768 138442062 958668995 36265302 274113481 53195413 39220584 353964006 595030753 589760538 884059813 808838846 98287438 288873549 302151126 907721720 286037808 750750593 598543708 478892468 539381059 53966525 40656291 872434540 715779797 220576148 247221668 498045048 488295044 630629857 101231409 160287690 780870754 68748842 602396426 325554372 115090276 310726569 481894295 35128915 47290536 424974082 502849508 630977998 334299650 36265302 311613451 628820972 481894295 361002681 448262245 330274784 840130613 636434256 499057158 313272965 490344724 78775552 295606018 888259120 846351340 874297853 181668423 88335614 292696118 63192647 138393155 163229392 142903358 852604705 958668995 40131409 654830523 854243215 214244685 939725993 723661847 36265302 533864165 433921335 929504680 300892929 465697134 15903366 203331888 459617527 824770361 780061015 618542887 159828635 743614603 140725908 831467447 387703244 944068218 459617527 633587956 68748842 688534928 485262404 438183310 566554997 929504680 623206361 757815664 858798711 136384659 686884353 82689280 476912096 115509283 729868696 484158080 287768226 685702028 159828635 940188502 451521521 82689280 806792339 958668995 942899938 152243323 902464469 1926282 4519262 862254110 735891721 953882020 514768035 125204206 641231120 274113481 994587826 438183310 571019028 145559297 786320493 228290502 767839638 581063820 918521256 917795074 978947655 738855203 29473993 806664207 566125822 795549341 152314280 492009082 746394036 709613471 315343704 32075030 19911869 286037808 40131409 858127225 557710104 101231409 138442062 23262398 306597948 982416551 400178823 835339516 790270533 430101007 458290565 763431295 485509833 577970627 990121035 696443558 288873549 633587956 324129364 72820570 262406489 215981255 676975489 266213579 686884353 47290536 7807006 471393875 896029805 407629453 842970782 196106606 689757867 619842427 495854210 305068796 396632533 876263470 251367294 41538784 38085353 53525809 907721720 967417280 792822959 703490607 587179274 259646582 413592826 715779797 733642252 824770361 557710104 653201202 397928982 206036522 559957428 975337465 937158597 136384659 79523589 78649514 403519778 814662325 853903669 575023903 888259120 396806189 81337657 133739154 451551269 567948101 282751746 886917295 290474734 940188502 334932282 553368896 250749017 98824830 997329398 183440003 699230813 126695727 916956968 234980621 727245017 567948101 396937914 827311105 795472528 40656291 522663253 201717402 923715439 931086800 60017144 274113481 831380531 431406787 721769014 293192373 352092606 80485362 739696834 298727845 597784477 255644658 310726569 546679009 32954995 292149520 349644605 488295044 272303478 132556595 556619020 428572243 485262404 776820092 241184545 885549757 872434540 885995802 515426984 940188502 449022331 266213579 403519778 375066210 334932282 553368896 313272965 550336314 314069534 99294732 79509313 854969794 299994808 876263470 831241130 979740237 248642173 640925332 226492467 196106606 590918818 760370490 589760538 67700412 53195413 518384931 590918818 696443558 315343704 662421393 103219970 264750083 134971740 915330573 172894131 268759041 944573659 32075030 522663253 428572243 338929165 209789164 554242697 28363157 729868696 24188768 699733109 969294148 686335042 838655651 641231120 703490607 207844781 464130920 52243955 926044257 682170984 64420967 337153847 315747769 687055288 854902633 262406489 797746066 577673184 23973553 79509313 876868627 56927881 633573519 337153847 407091770 112090095 654830523 664041213 913521589 315343704 538810384 215052415 259646582 699733109 776352608 968755777 955501918 989729323 575023903 56927881 448262245 737945381 190929591 960543625 512614298 262406489 840130613 186244437 562773407 732559957 953882020 676975489 855636134 352092606 138393155 400218902 39220584 299462930 251042004 688177128 162062292 396138845 904771946 829614460 816971086 288072509 140129038 934824360 251042004 509370562 548748527 993091440 674485068 792822959 882364001 299994808 950497221 968755777 591292508 296751278 918225489 165821462 896571061 205387898 736624310 592970093 219054502 996943901 284588557 664041213 98824830 554242697 361435434 889608806 917795074 641231120 72820570 852107700 746092812 226492467 770864525 641231120 602396426 315297566 757850417 376974209 770594967 638790258 878442641 859168292 101231409 2076768 967417280 458290565 465759767 478892468 177689820 793291205 206036522 10369081 407091770 858798711 587469038 170941326 640925332 912948600 850386354 152314280 592639233 509144872 854969794 114409323 429277230 20148474 533455280 750978759 703490607 788118407 251042004 246058339 795549341 330274784 806664207 506178629 753419354 408032939 296305836 630977998 512614298 993091440 975337465 835212499 926045944 449022331 407629453 396632533 132556595 396937914 490344724 938456692 950497221 272303478 553191189 708094860 78649514 925555858 396806189 767187616 40448245 207442482 72820570 311808379 632402794 647733367 196106606 674446970 926045944 485063015 864016134 942866882 67700412 944573659 736237188 762749463 31615284 678474526 417074904 764459345 269911067 984050047 214244685 912948600 893019475 441621000 633587956 112390393 209789164 172382592 577970627 175060805 125204206 267829614 745200166 215289803 183440003 495854210 982416551 727245017 215774690 232177196 32806834 781242822 595030753 938456692 602396426 427184372 308142020 996943901 203331888 628820972 451817798 495854210 174140940 404152565 975337465 172382592 77819776 424974082 760231333 267829614 492009082 656191811 98287438 968670974 138393155 938456692 152866011 382904427 546679009 458290565 328462418 968670974 661321016 353964006 567948101 885000402 638516505 718980624 932584021 782533040 929504680 708053570 958668995 674446970 687988023 937158597 874124920 577673184 662421393 964902255 492009082 968755777 456956861 371179314 514650194 638790258 603931167 943235508 567343883 458290565 151506993 727827821 991073887 682170984 305990981 509019925 760231333 250832323 679463383 338929165 640849273 424974082 628523361 98231977 290117216 446968233 886917295 232177196 814295984 531333917 575023903 451551269 40656291 515426984 80485362 907095826 215981255 662972501 424594759 628820972 695599688 667313812 247006479 792822959 942999703 495854210 407091770 860708299 430101007 159828635 278160655 506178629 862254110 443960759 206036522 509144872 82689280 55108095 900796599 441621000 808866527 390275103 982353486 324129364 780870754 978947655 931013644 361002681 117931902 733642252 148087911 907095826 598543708 38304068 420052652 464444922 433686203 587179274 570764323 607760956 125829791 781246194 663670886 852107700 407629453 604881661 234980621 66490779 326469359 689757867 344620844 841210236 633573519 858798711 975337465 514768035 67831588 66490779 455539394 668964848 538810384 174862116 581063820 459452716 115509283 815123402 944068218 757709512 215774690 443960759 878442641 186244437 941586175 327773233 941586175 179991869 209789164 207844781 268759041 750750593 151364594 733642252 927806038 317751260 567343883 650036494 93478833 215052415 293192373 858040709 945394518 885353274 913521589 68748842 363976852 943793512 587469038 522332929 128188331 287239117 740340897 938456692 922706719 589760538 407629453 601740259 420052652 732245352 490344724 451551269 575023903 965948435 268759041 960543625 247841801 535533605 554222239 56927881 295606018 55018341 926044257 186244437 679463383 146573202 640849273 995876182 630201811 960543625 992001870 962430008 719307635 668964848 637769046 160287690 838331644 732245352 396806189 543945175 269911067 179991869 209789164 7807006 270237875 568142039 481894295 310726569 407091770 215052415 431406787 55018341 462762217 404152565 975337465 103219970 950673785 53966525 546679009 509664709 722768643 19715614 99294732 937158597 955501918 252792947 838655651 207442482 206036522 249820698 93651148 570796148 910850066 636434256 215977916 327773233 799588075 2076768 518384931 19911869 289918211 810021050 274113481 15903366 994877696 349076114 271484655 382210484 190929591 458156391 888699423 4519262 854969794 732559957 757815664 324986193 922706719 686335042 802009078 852604705 568104980 995876182 152866011 686335042 917795074 353964006 860477160 620243558 740340897 359859765 425392410 29473993 464130920 172894131 387176309 106790696 298727845 48746678 162062292 676975489 926044257 866568903 72820570 995876182 126695727 592970093 432089082 48746678 590208882 458290565 284588557 625664180 738612855 970320952 177689820 535533605 303230482 588034909 152618584 699733109 831467447 970911538 480361743 757709512 926044257 896072909 292696118 962430008 743614603 850484222 835339516 630238886 417074904 737945381 954227928 616057762 64420967 195019158 696443558 792822959 971894015 981996224 927806038 506919968 145559297 36055646 208625324 137529801 862254110 620243558 201717402 48746678 292149520 991615550 67831588 656191811 306607837 396937914 292972503 969494113 344620844 713146141 704431513 296751278 211958450 559957428 809429735 506919968 602396426 196460706 242186770 509370562 969294148 195019158 190979155 287768226 900796599 334211676 234980621 697742034 332834875 918521256 32806834 535533605 539381059 942899938 638516505 248642173 247221668 597784477 432089082 526944836 887794841 543865019 652018277 451551269 660095934 854243215 945394518 223299794 499057158 507016471 354807942 310726569 201717402 641231120 527654256 708053570 295606018 656191811 430088921 664041213 151506993 573449906 128188331 616057762 40656291 47349911 67831588 79509313 722768643 972710252 38338132 179991869 488295044 264297813 289736829 943793512 545538425 324986193 597206610 378961655 40448245 448881532 967417280 505061211 804406873 806792339 824770361 128450928 703490607 162904272 975337465 262406489 42657625 589760538 884072178 476912096 888699423 721769014 311613451 207442482 663670886 162904272 278160655 399037712 268759041 732559957 575023903 570796148 837690635 965948435 455539394 872434540 618542887 174862116 553191189 789617647 429277230 376974209 809429735 727578179 264408147 962073361 538025980 831241130 637939784 35128915 808866527 764459345 131323888 252792947 929504680 117210451 367026304 256866745 581063820 588034909 407510599 56927881 736624310 264297813 809429735 618355033 72820570 87392830 877088774 446968233 82689280 581831913 637657473 313272965 109369069 207844781 753419354 246221518 203331888 711455867 740340897 662972501 331638088 859168292 478351140 248642173 366854683 708094860 366854683 577673184 654830523 338929165 488295044 327773233 28363157 29473993 920721173 446968233 512614298 953267424 685702028 287239117 626932919 359714925 269911067 888259120 750563611 388085842 140129038 630629857 760231333 250749017 946612927 727245017 979740237 143200457 860477160 628820972 860477160 272303478 422532994 962073361 103669472 522332929 215981255 29473993 754580366 475344103 652018277 88335614 103733806 841210236 326469359 885353274 650990283 290474734 632402794 137529801 53226850 781246194 738855203 451551269 292972503 587179274 132556595 604181881 641635851 315343704 78649514 464444922 926044257 806792339 722768643 735710261 152243323 405444604 900796599 130160246 982353486 175060805 942999703 56927881 407510599 66490779 251042004 2076768 619842427 891279504 685702028 780061015 428572243 972710252 956815883 972710252 619842427 109054120 138393155 338312978 98824830 5299425 982353486 874297853 846351340 995876182 709613471 688177128 553191189 207844781 499057158 750978759 38844979 806792339 757815664 207844781 735696627 764116955 753419354 134801439 31215478 159828635 567343883 918521256 568104980 566125822 982353486 296751278 266213579 789617647 190929591 413592826 64420967 994587826 396806189 165821462 539957336 874297853 969294148 970320952 982353486 573480571 527654256 342116147 958668995 711455867 654830523 55108095 885995802 134801439 311613451 310726569 602396426 762749463 514650194 983373150 619842427 962073361 922706719 787269565 979740237 938080232 931013644 885141769 786380583 735891721 687988023 676975489 877167702 674446970 675472009 887548285 286037808 764459345 950673785 195019158 545538425 338312978 765027062 252792947 208625324 885000402 268759041 554242697 407510599 19715614 931086800 310726569 465697134 776835194 420052652 522663253 704431513 213097363 208625324 403519778 705548145 167276070 595030753 630238886 929504680 52243955 32806834 77685914 886917295 983373150 174140940 923715439 131323888 433921335 215981255 390275103 109369069 902464469 982353486 885353274 946916156 170941326 539957336 860708299 705548145 371179314 432089082 984050047 795549341 290474734 888553258 955730659 738612855 252792947 745200166 324129364 77819776 382904427 488295044 290474734 292149520 764116955 982416551 557710104 420052652 313272965 485153920 498045048 653201202 485262404 299113502 601740259 242530683 940381563 210621083 19715614 757815664 160287690 920628541 138442062 740882715 205387898 679463383 51457589 840075867 850484222 950497221 249820698 760231333 787269565 503666498 179981178 776820092 138442062 878442641 737945381 73848009 49614749 931640418 627110568 302151126 137529801 518384931 942866882 115090276 727578179 757850417 667313812 992001870 515426984 754580366 953267424 751925989 568142039 887794841 232177196 971894015 535533605 803588261 5299425 751925989 458290565 302151126 978947655 885549757 841780337 553191189 88335614 913521589 885141769 640849273 635302209 922706719 853170454 553368896 40131409 128702236 556619020 295606018 997329398 518384931 506178629 351424753 246058339 142903358 20148474 498840912 404152565 858127225 306597948 15037608 520071928 315747769 396632533 553368896 767839638 887794841 996943901 203331888 38085353 351424753 458156391 533455280 887548285 271484655 907721720 77819776 726620654 945394518 835198840 422532994 708046990 259646582 735891721 465759767 667313812 195957995 452156279 559014304 860708299 538810384 342116147 396050095 498045048 921198791 604881661 592639233 287768226 929504680 965948435 992001870 572465104 882364001 267829614 884072178 543865019 306607837 581831913 344620844 960796073 73848009 163229392 581063820 732245352 854969794 172894131 641635851 587179274 481894295 226492467 854969794 754133002 201717402 938456692 125829791 514768035 292972503 7807006 661321016 792822959 305068796 325554372 597206610 722013570 328462418 581831913 595030753 664041213 269911067 232177196 546679009 627110568 888553258 463496366 332834875 404152565 43970470 252792947 289918211 972710252 489612980 835212499 592639233 396632533 581063820 338929165 751925989 810021050 885995802 932715562 950673785 405444604 814295984 708053570 305068796 330274784 640849273 582273012 251042004 732245352 255644658 781242822 938140278 566554997 992001870 604881661 271484655 349644605 807117750 767839638 862177563 891279504 601630030 505061211 21190596 283321520 691982506 174862116 151364594 938080232 181668423 15903366 247841801 858040709 753419354 786320493 738855203 495854210 920721173 851759377 991073887 727245017 559014304 556619020 49317804 361002681 264408147 509144872 331638088 514768035 80485362 81337657 465759767 636434256 637657473 103219970 551289217 984047482 840130613 838803091 539381059 607965234 601630030 2076768 234980621 394791153 630775839 939725993 660765062 53195413 567774282 405444604 888699423 808838846 299113502 739696834 228290502 400218902 840075867 925555858 49317804 571019028 911302173 990121035 152618584 808614164 298727845 732559957 740882715 288072509 290117216 835198840 923927991 237172271 326469359 992169078 344620844 52243955 132556595 205387898 776352608 831241130 715779797 806792339 877167702 635302209 478351140 630977998 532803593 2076768 234980621 112090095 77819776 165821462 244528344 800460688 797746066 330274784 656623172 190323279 936312210 727578179 850386354 554242697 712346140 130160246 93478833 711532060 98824830 938705675 295606018 686884353 270237875 870201182 750563611 485509833 904800517 463496366 128188331 394791153 900116034 397928982 532803593 420636144 679463383 117210451 674485068 571019028 101231409 560623000 215774690 396138845 190929591 842970782 464130920 172382592 776820092 315343704 425392410 983113723 366854683 338312978 264750083 38304068 947413305 172382592 653201202 597784477 586370291 995876182 900116034 910818482 746992914 650036494 814662325 396937914 911302173 853903669 575895835 630238886 931966477 51457589 145559297 732559957 396050095 786320493 546679009 496698204 514650194 413592826 292149520 570796148 511330454 560623000 854902633 5299425 956815883 559957428 351424753 195733178 942999703 566125822 15037608 992169078 575895835 134971740 738855203 186244437 21190596 698320352 251188854 334932282 396743027 566125822 289736829 449022331 679463383 174862116 206036522 112090095 247006479 884952974 696443558 955730659 420052652 196460706 932584021 36055646 525347105 403519778 806664207 571019028 74587532 806792339 50241607 853903669 650697444 817743547 492009082 866568903 401452903 399037712 481894295 140551765 407091770 972710252 633587956 36265302 923927991 678474526 760231333 566554997 572588387 79523589 840130613 394791153 947413305 138442062 920628541 396138845 674485068 53966525 125204206 535533605 774489082 516175014 738855203 338929165 242186770 733642252 13112382 732559957 687988023 667313812 209789164 324129364 703514531 49948206 162062292 494336936 776352608 923715439 650697444 215289803 72820570 781242822 247234349 167276070 663670886 296751278 151506993 874297853 299113502 36055646 770594967 667313812 311613451 852107700 618542887 458156391 540976336 167276070 115090276 983373150 13112382 162904272 769327548 476912096 877088774 396937914 471393875 196460706 532803593 604881661 242530683 299994808 23262398 938705675 117931902 891279504 298727845 223299794 73848009 520071928 73848009 241184545 858127225 7807006 632014852 103219970 592639233 888259120 527654256 213097363 590208882 396937914 32075030 713146141 884059813 382904427 654830523 686884353 40448245 246058339 215981255 36055646 654830523 47349911 457149478 527595027 174140940 589760538 695599688 735710261 886917295 172382592 196106606 60017144 567774282 475344103 678884863 780061015 814295984 361002681 125204206 397928982 885995802 505061211 604968568 604881661 125204206 674446970 538025980 866568903 156817178 226492467 195957995 981996224 94279561 624819674 502849508 338312978 630775839 628820972 554222239 376974209 942999703 160287690 575895835 971549242 407629453 943235508 73848009 965948435 922706719 81337657 887794841 531333917 703490607 509144872 927806038 79509313 153196022 137529801 77819776 60017144 640925332 851829959 67700412 307403622 604968568 246221518 193648030 342116147 31215478 762749463 367026304 520071928 489612980 282751746 887794841 746394036 94279561 174862116 387176309 762749463 893019475 937158597 177689820 943793512 532803593 334211676 696443558 925555858 465759767 607041944 719307635 891279504 407091770 979750308 485153920 688177128 210621083 342116147 154538466 852604705 354807942 232177196 215981255 170941326 513440742 682170984 503666498 290474734 315747769 722013570 64420967 733642252 592639233 889608806 533455280 620243558 583924389 556619020 298727845 299994808 38338132 984050047 275202504 667844649 261683638 568142039 513440742 424974082 67831588 817743547 553191189 711532060 215792516 371179314 284588557 426814174 39220584 632378665 303230482 788118407 457149478 459617527 950497221 970911538 422532994 629101079 94279561 885647994 774489082 800460688 484158080 996943901 814662325 79509313 527654256 812044550 366854683 638790258 401452903 32954995 931640418 624819674 888699423 889608806 117931902 1736950 93478833 264297813 542382913 315297566 966131311 698320352 299113502 249670598 425392410 550322314 264750083 393120342 195957995 916956968 264750083 299994808 298727845 557710104 795549341 138442062 103669472 587179274 688534928 20148474 602396426 656191811 548748527 196460706 931013644 932715562 488295044 527595027 575023903 764459345 583924389 858798711 975337465 853170454 862177563 727578179 354807942 762749463 74587532 7807006 661321016 607760956 151506993 650036494 264750083 866568903 23973553 56927881 438183310 907095826 688577702 750750593 425392410 511277493 626833449 718980624 145559297 325554372 401452903 732559957 877088774 792822959 274113481 179981178 306258744 29473993 396743027 433921335 678884863 79523589 532803593 225771141 133739154 592970093 103733806 647733367 921198791 509019925 969294148 568142039 760231333 276676140 601630030 667844649 931966477 264297813 619842427 81553943 876263470 60017144 950497221 997329398 295606018 733642252 700560235 443960759 43970470 413592826 208625324 516175014 420052652 592981604 430284321 522332929 799588075 170941326 354807942 572465104 770993588 49614749 98824830 831241130 585165457 841210236 538810384 307403622 481894295 246221518 830619816 49948206 808866527 112090095 780870754 683621666 162062292 52243955 525347105 53195413 525347105 806792339 196106606 573449906 966131311 887548285 721418370 266583970 332834875 620243558 626833449 757709512 746092812 405444604 736624310 145885851 32075030 854243215 575895835 390275103 700560235 715957434 215977916 20148474 650697444 729868696 931640418 570796148 195957995 711532060 763431295 456137963 125829791 852755974 660095934 167276070 760231333 378961655 754580366 283321520 208625324 831380531 604968568 694954883 663670886 697742034 921198791 568142039 617908997 762749463 444897967 53195413 640925332 349076114 941586175 698320352 247841801 702745028 975337465 582273012 982370833 225858850 923927991 388085842 407510599 792822959 878442641 396138845 162062292 382210484 186285312 397928982 322974842 761330904 72820570 298050322 94279561 420636144 893019475 38304068 408395896 683621666 407629453 713146141 994877696 40131409 548748527 522332929 922706719 299462930 210621083 543865019 251188854 205387898 679463383 938080232 931640418 174862116 247841801 15903366 98287438 81337657 896571061 285947848 311613451 592981604 603931167 511277493 462762217 403519778 266213579 250832323 768561257 498045048 128188331 932715562 444897967 306597948 264408147 866568903 6720560 511277493 979740237 573449906 681930584 859168292 803588261 15903366 768561257 852755974 603931167 613596687 947413305 620243558 6720560 842970782 242186770 943793512 177689820 968755777 94279561 859168292 533455280 636434256 334299650 589760538 551289217 708046990 610447918 388085842 375066210 451521521 591292508 56927881 751925989 630977998 888699423 193515742 660095934 179991869 982370833 441621000 247221668 249670598 743614603 509019925 115090276 715957434 471393875 910818482 151506993 494336936 433686203 264297813 915330573 458290565 662421393 522332929 152523810 994587826 72820570 195733178 994877696 338631458 862254110 983373150 703514531 750750593 401452903 53195413 885995802 858040709 304621545 232177196 979740237 338631458 630201811 708053570 886149363 623206361 247006479 276676140 878442641 962073361 592639233 205387898 567774282 396632533 862254110 283321520 913521589 866568903 145559297 630238886 93651148 694954883 311613451 851829959 275202504 972710252 129724737 628820972 21190596 496698204 936312210 559957428 131323888 195019158 533864165 866337119 304621545 334932282 242530683 885647994 950497221 938705675 575895835 38085353 351424753 968670974 430101007 851829959 219054502 835198840 430088921 60017144 638516505 781242822 465759767 767839638 542382913 884952974 292972503 632378665 125829791 965948435 540976336 48746678 177689820 167276070 617908997 870201182 661321016 112090095 575023903 829983432 956815883 187104147 53226850 494336936 257214051 296751278 542382913 560623000 703490607 448881532 306258744 589760538 156817178 165821462 396806189 812414090 203331888 872434540 125204206 246058339 247006479 572465104 251042004 817743547 778074990 49948206 662421393 250885472 83066601 390793037 991073887 53195413 632402794 991615550 305990981 4519262 186285312 778123726 518384931 851759377 814295984 19715614 854969794 810021050 837690635 776835194 738612855 246058339 568104980 376448548 882364001 152314280 43970470 300892929 750563611 984047482 610834602 193515742 723661847 764459345 492009082 601740259 396806189 570796148 878442641 250885472 538810384 37275245 803588261 145885851 344620844 186244437 98287438 476912096 882364001 938705675 211958450 852107700 38844979 896072909 101231409 918521256 888699423 726950461 251042004 400178823 326469359 907095826 215774690 264297813 305068796 226492467 401452903 403519778 311613451 683621666 751925989 47529701 408395896 187104147 931086800 396632533 675472009 476912096 602396426 632378665 432089082 106790696 654830523 196460706 786380583 207844781 771321738 859168292 864016134 282751746 652018277 800460688 601630030 590918818 778074990 36265302 838331644 48746678 926044257 708053570 770864525 812044550 28363157 727245017 575895835 112390393 183440003 992169078 591292508 388085842 915330573 361002681 322974842 764116955 738855203 47349911 850386354 27735709 797746066 968755777 257214051 852107700 685702028 749497174 991073887 589760538 656623172 560623000 846351340 330274784 617908997 361002681 117931902 727578179 663670886 938456692 540394532 394791153 334299650 859168292 971894015 771803404 786380583 250749017 633587956 835212499 156817178 627110568 851400664 722013570 366854683 175060805 575023903 711532060 551289217 744008188 109369069 382904427 797746066 325554372 591292508 630977998 126695727 170938835 422532994 522663253 292149520 923715439 93478833 888259120 637657473 478892468 691982506 912948600 954677909 32954995 736624310 60017144 38338132 376974209 286037808 683621666 598426014 746394036 42657625 699230813 29069209 225858850 363976852 109054120 23973553 506919968 567343883 858040709 917795074 300892929 72820570 220576148 21190596 207442482 183440003 787269565 407091770 570796148 31615284 627110568 632402794 114409323 685702028 195019158 532803593 160287690 152618584 942899938 864016134 668964848 247841801 251367294 743614603 978947655 488295044 223299794 538025980 625664180 28363157 841210236 548748527 119279869 215792516 744008188 203331888 162904272 816971086 327773233 797746066 964902255 503666498 359714925 956286779 992169078 950497221 33511708 99294732 943793512 533864165 912948600 41538784 60017144 412979540 252962990 783513992 721769014 6720560 179981178 795549341 360743135 947413305 789617647 503666498 918521256 464130920 923715439 244528344 689757867 99294732 963141978 860377902 722013570 430101007 250749017 214650974 215289803 982416551 793291205 153196022 550322314 780870754 40131409 174140940 114409323 966683628 687055288 931640418 636434256 93651148 602832600 632014852 943235508 572588387 290474734 539957336 932715562 831467447 979750308 645094664 778123726 586446680 485262404 563678994 842970782 956286779 506919968 567774282 78775552 162062292 795472528 513440742 962430008 618542887 324129364 152618584 965948435 877167702 400218902 190929591 4519262 125829791 52243955 93651148 134971740 946612927 112390393 290117216 49948206 950673785 193515742 293192373 98231977 705304879 393120342 128188331 396138845 942999703 938456692 125204206 989729323 888553258 708094860 946916156 78775552 967417280 349076114 367026304 702745028 838655651 628820972 893019475 446968233 80415088 806744033 940188502 1736950 640849273 79509313 32075030 276676140 82689280 300892929 539957336 51457589 936312210 87392830 688534928 539035187 958668995 106790696 893019475 676975489 602396426 994587826 888553258 944573659 431406787 285947848 264408147 771803404 299113502 787269565 654830523 256866745 776820092 475344103 586370291 505061211 854902633 618355033 721418370 404152565 587469038 195733178 502849508 667313812 814662325 485509833 499057158 853903669 778074990 735891721 117931902 458363994 857535330 588034909 738612855 172894131 295606018 853903669 133739154 907721720 801623766 4519262 274113481 250749017 40448245 937158597 602396426 970911538 885549757 850484222 254203892 750978759 748408317 317751260 994877696 249820698 550336314 776835194 471393875 338929165 511330454 324129364 257214051 852755974 295606018 859168292 922706719 403519778 264408147 664041213 551289217 137529801 619842427 910818482 109369069 852107700 538025980 315343704 931966477 984050047 910850066 546141085 743614603 451551269 215981255 237172271 214244685 607965234 854902633 327773233 577970627 359714925 769327548 29473993 128702236 36055646 992001870 764459345 591292508 907721720 637939784 781246194 215977916 579757115 663670886 882804101 512614298 788118407 1926282 112390393 152866011 859168292 751925989 520071928 661321016 307060809 430284321 252962990 40656291 939725993 64420967 968670974 32806834 984050047 275202504 2076768 201717402 792822959 803588261 40131409 877088774 912948600 407629453 7807006 645094664 638790258 885995802 775682536 896571061 252962990 743614603 334211676 769327548 624819674 264408147 38304068 115509283 167276070 553368896 2076768 604968568 687055288 219054502 678474526 600441802 459452716 618542887 916956968 953882020 737945381 237389399 938080232 710224239 934824360 840075867 250749017 115090276 68748842 117931902 207442482 926044257 792822959 920628541 60017144 465759767 36055646 893019475 306597948 206036522 307060809 553368896 969494113 802009078 330274784 56154381 968670974 289736829 51457589 292972503 812044550 53226850 548964093 230662076 433921335 904771946 334211676 763431295 726620654 640925332 330205547 687988023 516175014 247221668 170941326 920628541 916956968 618542887 342116147 931966477 938705675 115509283 48746678 911302173 138442062 864016134 990121035 703490607 78775552 456956861 808838846 412979540 624819674 979740237 686335042 581063820 112390393 298727845 566125822 600441802 587179274 982416551 726950461 145559297 20148474 56154381 349644605 31615284 546141085 407510599 560623000 533864165 252962990 296305836 396937914 305068796 970911538 480361743 52243955 219054502 953267424 917452919 396138845 444897967 475344103 332834875 207844781 201717402 729868696 743614603 311808379 429277230 378961655 259646582 52243955 321628921 790270533 513440742 251367294 956815883 767187616 637657473 400178823 431406787 694954883 778074990 835212499 525347105 33511708 632402794 36055646 994877696 246058339 922858580 687055288 603931167 838803091 783513992 81553943 295366548 52243955 604968568 463496366 926045944 944573659 363976852 767187616 783513992 393120342 801623766 896029805 835339516 636434256 709613471 128450928 302151126 647733367 827311105 119279869 926044257 315343704 115509283 694954883 704431513 628820972 131323888 739696834 195957995 953267424 702364434 789617647 295606018 629101079 922706719 815123402 838331644 885000402 630775839 962073361 498840912 196460706 28363157 404152565 366854683 49614749 546679009 984047482 462762217 117210451 877167702 509019925 67831588 443960759 632014852 972710252 695599688 334211676 740882715 638790258 922706719 960543625 885995802 812044550 408395896 990121035 799588075 571019028 115090276 588034909 695599688 782533040 888699423 63192647 151364594 334211676 417074904 884952974 129724737 400178823 982370833 535533605 53226850 19715614 840130613 175507355 662421393 750750593 656623172 572465104 736237188 531333917 214650974 526944836 854969794 907721720 266213579 77685914 603931167 810021050 152618584 860708299 254203892 678474526 457149478 884952974 538025980 262406489 407629453 464444922 152866011 196460706 358401766 237172271 592639233 112390393 278160655 866568903 750563611 771803404 264408147 155241439 138393155 727245017 211958450 317751260 675472009 522663253 745200166 667844649 922858580 81553943 583924389 771803404 795549341 24089615 803588261 885353274 797746066 250832323 428572243 60017144 947413305 117210451 753419354 841210236 860477160 66490779 888699423 515426984 28363157 299994808 366854683 757709512 831467447 678474526 719307635 246058339 982370833 369306500 585165457 942866882 43970470 476912096 275202504 733642252 23262398 246221518 982416551 942899938 512614298 896072909 433686203 726620654 73848009 55018341 570764323 400178823 681765297 983113723 203331888 851759377 696443558 587179274 484158080 938456692 955501918 718980624 587469038 636434256 604968568 388085842 705304879 891279504 877088774 145885851 850386354 729868696 274113481 934824360 351424753 943235508 28363157 780061015 858127225 943235508 98824830 726620654 884059813 786320493 803588261 543865019 163769090 390275103 776352608 40131409 640849273 246058339 575023903 866337119 425392410 10369081 645094664 858040709 123073176 172382592 490344724 114409323 926044257 817743547 284588557 338312978 195957995 939725993 331638088 7807006 568104980 767187616 563678994 535533605 600441802 170941326 512614298 786320493 661321016 792846009 567343883 349076114 760370490 531135820 302151126 179981178 295366548 733642252 958668995 708094860 765027062 33511708 888699423 841780337 154538466 334211676 715779797 788118407 215981255 349076114 156817178 516175014 966131311 117210451 754580366 250885472 513440742 960796073 597206610 789617647 874124920 117210451 814295984 543945175 619842427 632378665 757815664 162904272 824770361 334932282 882364001 727245017 586446680 732559957 843005594 918521256 654830523 718980624 305068796 925555858 540394532 145885851 136384659 687055288 601630030 246058339 93478833 554242697 944068218 36265302 215774690 29473993 215792516 984050047 944068218 237172271 148087911 942866882 660765062 509664709 219054502 910818482 688577702 749497174 351424753 721769014 922858580 19911869 770864525 708053570 101231409 252792947 433686203 750750593 332834875 546141085 247221668 515426984 563678994 315343704 896571061 507016471 917452919 264100442 481894295 298050322 947413305 459452716 215792516 225858850 551289217 793291205 203331888 296751278 603931167 246058339 195957995 853170454 770864525 179981178 562773407 841780337 831467447 79523589 295606018 647733367 803588261 205387898 326469359 51457589 202477791 733642252 547547687 872434540 982416551 299994808 932584021 424974082 321628921 49948206 129724737 155241439 950497221 162904272 674485068 136412292 685702028 162904272 503666498 35128915 854902633 732559957 888553258 485063015 39220584 315343704 920721173 249820698 771321738 2379379 982370833 962073361 602396426 476912096 344620844 965948435 702364434 195019158 311613451 991615550 851400664 408032939 645094664 630629857 740340897 570796148 230662076 662972501 958668995 885647994 723661847 918521256 23973553 174862116 140129038 509144872 264408147 874297853 575895835 722013570 715779797 543865019 857535330 764116955 190979155 509019925 626932919 955730659 944068218 256866745 311613451 390275103 396050095 522663253 10475035 527595027 915330573 969494113 47290536 146573202 456956861 688177128 190979155 812414090 617908997 20148474 915330573 451521521 407629453 155241439 518384931 190323279 688577702 944573659 125829791 38304068 363976852 514768035 830619816 114409323 926045944 382904427 587469038 858040709 674485068 506919968 922706719 726620654 41538784 24089615 979740237 413592826 947413305 887548285 632014852 708053570 663971090 767187616 982416551 854243215 129724737 577673184 152618584 708094860 67831588 978947655 513440742 938456692 650697444 884952974 562773407 969494113 838331644 789617647 637657473 464444922 41538784 400178823 900116034 452156279 328462418 711455867 47290536 835198840 67700412 817743547 922858580 942866882 387176309 968755777 877088774 757709512 712346140 916956968 539381059 494336936 457149478 24089615 816971086 573480571 464130920 160287690 465697134 764116955 430101007 746394036 900796599 543865019 597206610 858040709 499057158 509144872 311613451 588034909 103733806 315343704 259646582 290474734 803588261 505061211 882364001 793291205 125829791 758889515 637657473 338631458 444897967 767839638 162062292 581831913 678884863 195733178 498840912 750750593 344620844 750978759 177689820 55018341 407091770 566554997 674485068 324986193 843005594 330205547 432089082 507016471 302151126 507016471 745200166 315343704 567343883 902464469 590208882 458156391 854969794 112390393 824770361 209497607 551289217 241184545 862177563 918521256 824770361 676975489 979740237 682170984 709613471 424974082 72820570 767839638 264750083 676975489 10475035 382904427 261683638 688177128 760231333 376448548 527654256 764116955 202477791 506178629 771321738 686335042 595030753 674446970 956815883 891279504 32806834 992169078 780870754 754133002 498840912 713146141 464130920 338929165 920628541 554242697 592639233 299462930 203331888 960543625 32806834 632378665 855636134 19911869 408395896 485063015 334299650 328764419 533864165 458290565 938140278 888259120 936312210 475344103 954227928 788118407 6720560 290474734 152618584 10369081 430101007 264297813 247234349 56927881 888553258 396632533 109369069 256866745 525347105 378961655 700560235 806744033 660765062 628820972 274113481 249820698 195957995 579757115 603931167 51457589 367026304 601740259 533455280 315343704 38338132 2076768 247221668 393120342 545538425 314069534 177689820 327773233 331638088 872434540 424594759 554242697 769327548 160287690 553191189 172382592 653201202 112090095 214650974 613596687 422532994 390275103 31215478 852107700 215977916 458156391 700560235 382904427 99294732 940381563 156817178 630629857 738612855 117210451 638516505 334211676 575023903 205387898 502849508 248642173 129724737 889608806 351424753 744008188 628523361 55018341 538810384 306597948 538810384 170938835 514650194 209497607 750563611 38304068 770864525 550322314 514650194 223299794 567948101 841210236 64420967 463496366 652018277 885353274 465759767 543865019 15037608 509019925 142903358 776835194 887794841 604881661 548748527 962073361 610834602 349076114 358401766 213097363 738612855 249670598 745200166 511277493 431406787 266583970 955501918 160287690 24188768 405444604 268759041 726950461 153196022 853170454 568104980 806744033 547547687 937158597 295606018 852755974 367026304 324986193 926045944 910818482 315747769 543865019 181668423 506178629 695599688 522332929 600441802 134971740 247841801 511277493 163769090 896072909 540394532 170941326 305068796 488788762 31615284 53966525 298727845 49948206 753419354 2575238 153196022 590918818 850386354 248642173 306258744 931005739 93651148 776835194 765027062 522332929 704431513 970320952 129724737 520071928 208625324 175507355 809429735 1736950 270237875 317751260 128188331 638790258 851400664 962430008 190929591 250749017 412979540 702745028 783513992 778123726 656623172 870201182 971894015 781246194 344876805 715957434 396806189 509664709 21190596 103219970 876263470 674446970 228290502 782533040 837690635 507016471 23262398 620243558 773781000 762749463 315747769 850484222 82689280 616057762 900796599 266583970 806664207 179981178 128188331 296751278 650990283 860708299 638516505 607965234 696443558 971549242 807117750 250832323 292149520 112090095 298727845 170941326 946916156 566554997 831467447 299994808 882364001 746394036 455539394 942866882 678884863 727827821 888553258 47529701 586446680 559957428 736237188 287239117 99294732 641231120 306607837 35128915 975337465 535533605 586370291 836376015 23973553 276676140 753419354 543865019 6720560 352092606 681930584 193515742 650990283 463496366 917452919 515426984 650697444 287768226 950673785 699733109 695599688 449022331 896571061 687055288 888699423 750750593 117931902 662972501 133739154 556619020 247841801 47349911 306607837 495854210 322974842 984047482 751925989 314069534 115509283 853903669 915330573 852604705 138393155 443960759 920628541 36055646 982416551 112390393 261683638 592981604 247006479 968755777 710224239 38304068 570764323 806744033 840075867 488788762 480361743 327773233 322974842 618355033 74587532 607760956 251042004 571019028 754580366 789617647 151506993 607965234 358401766 972710252 683406807 87392830 945394518 758889515 425392410 137529801 94279561 276676140 98287438 607965234 572588387 853903669 650697444 581831913 954227928 36055646 429277230 307403622 94279561 884952974 344876805 225771141 190979155 866337119 244528344 182214511 884072178 984050047 82689280 130160246 129724737 307060809 284588557 509144872 688577702 328764419 117931902 288873549 581063820 546141085 886149363 160287690 770864525 582273012 485153920 509019925 125204206 77685914 152866011 641231120 351424753 817743547 640849273 299462930 448262245 172382592 967417280 433921335 630201811 630238886 946916156 630629857 780870754 854243215 877167702 516175014 308142020 573480571 214650974 726950461 47290536 984050047 128188331 975478549 857535330 746394036 931640418 459452716 570764323 475344103 39220584 970911538 138393155 496698204 705548145 739696834 465759767 190323279 305990981 764116955 679463383 112090095 598426014 399037712 921198791 918521256 98824830 287768226 131323888 727578179 745200166 907095826 148087911 400178823 650697444 32954995 681765297 787269565 770864525 170938835 73848009 112390393 152243323 349076114 538025980 570796148 786380583 718980624 956815883 452156279 860477160 568142039 351424753 543945175 567343883 488788762 913521589 330205547 946916156 697742034 408395896 186244437 953882020 630629857 215792516 887548285 674485068 678474526 503666498 27735709 955501918 511277493 681930584 902464469 982370833 943793512 640925332 910818482 982370833 722013570 31615284 866568903 904771946 448881532 630775839 488788762 854902633 55018341 38844979 972710252 632014852 793291205 788737791 667313812 801623766 790270533 13112382 831380531 261683638 446968233 181668423 451521521 632014852 938705675 430284321 852755974 630201811 531333917 703490607 727245017 885549757 140551765 438183310 789617647 748408317 134801439 768561257 543945175 31615284 662972501 174140940 535533605 703490607 215052415 640849273 393120342 900796599 509370562 567343883 627110568 886917295 359859765 931966477 262406489 306258744 495854210 814295984 548964093 480361743 694954883 932584021 937158597 956286779 613596687 830619816 390793037 550336314 667313812 581063820 5299425 932584021 647733367 884059813 629101079 183440003 498045048 429277230 699733109 688534928 970320952 538025980 20148474 153196022 902464469 940188502 437743643 80415088 420636144 632402794 792822959 28363157 557710104 824770361 887548285 269911067 250832323 788737791 866337119 430088921 287768226 679463383 52243955 640925332 781246194 932584021 778123726 219054502 522663253 305990981 300892929 809429735 808614164 305068796 506178629 132556595 55018341 195957995 424974082 99294732 938705675 904771946 776835194 93651148 836376015 302151126 162904272 674485068 32954995 533455280 334211676 485153920 907095826 485153920 338631458 913521589 667313812 214650974 618355033 656623172 33511708 67831588 972710252 407510599 912948600 80415088 19911869 816971086 172382592 660765062 570796148 590208882 298050322 688534928 607965234 484158080 932715562 623398671 560623000 417074904 829983432 28363157 870201182 538025980 232177196 886917295 36265302 334299650 526944836 946612927 109054120 181668423 287239117 864016134 342116147 904800517 963141978 650990283 66490779 488295044 342116147 269911067 750750593 994877696 310726569 954677909 923715439 966683628 727827821 831467447 851829959 610447918 733642252 878442641 488788762 151506993 458156391 773781000 726950461 971894015 24089615 38844979 699230813 654830523 163229392 888553258 589760538 674485068 399037712 910850066 788118407 827311105 624819674 80485362 557710104 407091770 589760538 953882020 35128915 78649514 727578179 656623172 2575238 214244685 991615550 601630030 256866745 770864525 970911538 675472009 566554997 638516505 792822959 481894295 252962990 610447918 207442482 740882715 732559957 982416551 831380531 678884863 522663253 488295044 858040709 67831588 715957434 499057158 394791153 921198791 360743135 770864525 68748842 83066601 628820972 929504680 328764419 156817178 729868696 927806038 48746678 900796599 629101079 74587532 650036494 776352608 638790258 652018277 137529801 539381059 247822207 547547687 399037712 480361743 995876182 786380583 806792339 967417280 778123726 444897967 452156279 710224239 4519262 954227928 808614164 237389399 307060809 64420967 726950461 82689280 137529801 917795074 404152565 128188331 207442482 956286779 288873549 950673785 360743135 884059813 775682536 366854683 647733367 358401766 812044550 152243323 207844781 597206610 689757867 802009078 885141769 583924389 36265302 814662325 727578179 264750083 267829614 904771946 36055646 583924389 775682536 581063820 388085842 183440003 226492467 289736829 382904427 583924389 938705675 430088921 252962990 193648030 390275103 567948101 160287690 53226850 114409323 703490607 426814174 163769090 112090095 28363157 739696834 587469038 140551765 969294148 990121035 292972503 907721720 271484655 443960759 259646582 984047482 994877696 128450928 757815664 172894131 969294148 266583970 688577702 662972501 803588261 969494113 814662325 896029805 886149363 145885851 274113481 81337657 190929591 81337657 886149363 405444604 186285312 172382592 738855203 955730659 982353486 146573202 533864165 328764419 328462418 160287690 181668423 910818482 567948101 573480571 186285312 495854210 257214051 498045048 753419354 550322314 610447918 15903366 831467447 554242697 971894015 175507355 209789164 885141769 429277230 604181881 922706719 727245017 156817178 287768226 855636134 359859765 595030753 984047482 247841801 910818482 654830523 978947655 877088774 299462930 603931167 550322314 6720560 396937914 583924389 885353274 750563611 573449906 545538425 396138845 266213579 581831913 795549341 522332929 915330573 984050047 455539394 476912096 874124920 485509833 131323888 516175014 904771946 568142039 788737791 36265302 538810384 978947655 456956861 884952974 931013644 625664180 305990981 550322314 660765062 888259120 290117216 829614460 40448245 761330904 562773407 285947848 512614298 851759377 13112382 334211676 152523810 727245017 131323888 647733367 136384659 647733367 874124920 68748842 941586175 223299794 862177563 433921335 540976336 842970782 936312210 19911869 29069209 396632533 640925332 994587826 922858580 433921335 31215478 250749017 776352608 582273012 478351140 938705675 757815664 979750308 455539394 627110568 430101007 789617647 72820570 458363994 918225489 559957428 148087911 248642173 190979155 237172271 488295044 213097363 598426014 288873549 862254110 400218902 396806189 112390393 412979540 276676140 696443558 697742034 152243323 7807006 163769090 589760538 862254110 68748842 966683628 509019925 827311105 382904427 38338132 566125822 101231409 175507355 687988023 334932282 289918211 776835194 326469359 885647994 219054502 495854210 455539394 509144872 39220584 464444922 15037608 996943901 740882715 174862116 575895835 117210451 900796599 37275245 261683638 195019158 570764323 719601437 931966477 697742034 932584021 437743643 590208882 604881661 846351340 548964093 551289217 592981604 953882020 761330904 587469038 808614164 237389399 310726569 575895835 449022331 678884863 163229392 886149363 78775552 956286779 36265302 47290536 282751746 886917295 568142039 886917295 722013570 462762217 860708299 570764323 317751260 920628541 79523589 563678994 52243955 931086800 296751278 877088774 635302209 270237875 252962990 610447918 2379379 778074990 992169078 242530683 4519262 955501918 324986193 512614298 891279504 109369069 686335042 941586175 907721720 743614603 559957428 264408147 623206361 23973553 306597948 136384659 667313812 101231409 38085353 215977916 145885851 910850066 109054120 722768643 682170984 814295984 315297566 855636134 971549242 407091770 887548285 946612927 359859765 586446680 288072509 275202504 330205547 601630030 464444922 703490607 711455867 292972503 196460706 969294148 475344103 193648030 119279869 619842427 359714925 931086800 299994808 420052652 155241439 719307635 498045048 567948101 47529701 595030753 121069546 640925332 831241130 47290536 241184545 247234349 602832600 969294148 520071928 284588557 388085842 533864165 934824360 653201202 47349911 595030753 408032939 946916156 678474526 201717402 983373150 683406807 852107700 140129038 353964006 917452919 713146141 954677909 852107700 806664207 325554372 162062292 109054120 913521589 995876182 358401766 88335614 1926282 630629857 799588075 251367294 527654256 311808379 480361743 79523589 547547687 55018341 73848009 650036494 23973553 543865019 32806834 932715562 540976336 371179314 945394518 163229392 926045944 458156391 244528344 934824360 745200166 676975489 753419354 376974209 604968568 396937914 259646582 458363994 886149363 516175014 931013644 515426984 289918211 984047482 763431295 498045048 877167702 20148474 295606018 182214511 125829791 128450928 53525809 252962990 587469038 601740259 771321738 109054120 430088921 506919968 228290502 836376015 162062292 735891721 598426014 47529701 695599688 143200457 587469038 708094860 932584021 613596687 771321738 535533605 590208882 475344103 814662325 311808379 230662076 781246194 286037808 925555858 138393155 170938835 837690635 557710104 971894015 836376015 776352608 209497607 228290502 2379379 190929591 36265302 151364594 970320952 219054502 732245352 900796599 520071928 854902633 942866882 806664207 264100442 595030753 851759377 967417280 581831913 740882715 376974209 910850066 452156279 709613471 566554997 757850417 776835194 641635851 353964006 80415088 762749463 751925989 369306500 115090276 117210451 214650974 79509313 602396426 781246194 917795074 662972501 401452903 119279869 650697444 697742034 700560235 396937914 700560235 831380531 887794841 378961655 103733806 282751746 21190596 400178823 936312210 735891721 284588557 835212499 920628541 632378665 788737791 40131409 982370833 708053570 230662076 47349911 321628921 635302209 41538784 938456692 922858580 404152565 38844979 527595027 67700412 721769014 43970470 140551765 512614298 907721720 765027062 543945175 481894295 19715614 417074904 800460688 691982506 146573202 513440742 566125822 211958450 352092606 255644658 506919968 662421393 550322314 542382913 267829614 23262398 78775552 103733806 970320952 915330573 960796073 332834875 543945175 953882020 172894131 430088921 49614749 162062292 963141978 292149520 787269565 154538466 397928982 202477791 616057762 600441802 121069546 432089082 506178629 289736829 170938835 80485362 997329398 532803593 376448548 73848009 196460706 550336314 676975489 922706719 232177196 126695727 792846009 131323888 170941326 123073176 1736950 723661847 711455867 502849508 842970782 746992914 7807006 432089082 266583970 854969794 771803404 49317804 812414090 738612855 787269565 332834875 618355033 455539394 397928982 660765062 2575238 681765297 287239117 286037808 983373150 444897967 841210236 788737791 835198840 135975430 749497174 911302173 507016471 444897967 276676140 862254110 582273012 219054502 205387898 626932919 458290565 489612980 7807006 831467447 207442482 264408147 808614164 838655651 337153847 696443558 641231120 103733806 393120342 183440003 207844781 950673785 566554997 982370833 852107700 540976336 349644605 770594967 838803091 917795074 226492467 210621083 907095826 559014304 568142039 28363157 130160246 210621083 592981604 814662325 338929165 28363157 330274784 979740237 604181881 851400664 207844781 129724737 146573202 358401766 962430008 931966477 53966525 591292508 852755974 513440742 572465104 776352608 190323279 215981255 276676140 652018277 771803404 753419354 590918818 736624310 851829959 570764323 338312978 743614603 852604705 553191189 620243558 186285312 841210236 481894295 218611070 886917295 404152565 926045944 137529801 306258744 264100442 816971086 727245017 292972503 749497174 247234349 939725993 738855203 400178823 809429735 458290565 550336314 965948435 525347105 400218902 696443558 786320493 743614603 775682536 801623766 715957434 786380583 162904272 757815664 885353274 602396426 972710252 455539394 420636144 131323888 262406489 827311105 162904272 430101007 248642173 630201811 641231120 247221668 103219970 554222239 399037712 975337465 955730659 927806038 571019028 938140278 390793037 254203892 776835194 640849273 81553943 367026304 630629857 456956861 136412292 746992914 288072509 882364001 252962990 278160655 539035187 195957995 167276070 603931167 817743547 681930584 285947848 101231409 587179274 886149363 531135820 637769046 394791153 72820570 790270533 136384659 119279869 64420967 686884353 498840912 641231120 991073887 207844781 575023903 218611070 610447918 607965234 539957336 396138845 60750487 997329398 904771946 925555858 663670886 2575238 633587956 283321520 244528344 246221518 751925989 87392830 295606018 762749463 32806834 514768035 532803593 359714925 148087911 376974209 797746066 226492467 215774690 376448548 598426014 916956968 700560235 638790258 39220584 882804101 920721173 656191811 490344724 390793037 633573519 32954995 196106606 66490779 247006479 393120342 533864165 817743547 28363157 817743547 354807942 390275103 298727845 579757115 269911067 782533040 602396426 923715439 64420967 394791153 745200166 938080232 590208882 313272965 242530683 582273012 854969794 647733367 854902633 978947655 603931167 885647994 858127225 134801439 152243323 117210451 540976336 509370562 929504680 81337657 743614603 360743135 703514531 143200457 913521589 232177196 344620844 223299794 202477791 916956968 53226850 527595027 546679009 187104147 485153920 531135820 163769090 193515742 979740237 509664709 511330454 179981178 710224239 103219970 633573519 616057762 503666498 193515742 936312210 330205547 654830523 699733109 420052652 983113723 498840912 24089615 74587532 678474526 567774282 852604705 681930584 49948206 862177563 698320352 228290502 174862116 915330573 79523589 28363157 858040709 797746066 604181881 719307635 337153847 271484655 81553943 142903358 195019158 653201202 182214511 830619816 792846009 396050095 79523589 630775839 582273012 947413305 543945175 308142020 934824360 548748527 953267424 633587956 557710104 540976336 674446970 809429735 627110568 769327548 195019158 219054502 573449906 23262398 53966525 237389399 360743135 862254110 516175014 640849273 405444604 799588075 938456692 190929591 264100442 503666498 140725908 679463383 527595027 637939784 140551765 344620844 515426984 886149363 494336936 563678994 853903669 876263470 511277493 637939784 393120342 652018277 793291205 151506993 550322314 814295984 786320493 855636134 835198840 151364594 251367294 567343883 20148474 931013644 776835194 299113502 647733367 650697444 20148474 740882715 446968233 284588557 792822959 548748527 38304068 408395896 24089615 967417280 170941326 947413305 215289803 922706719 566125822 135975430 694954883 215774690 573449906 900796599 944573659 736237188 66490779 592639233 851829959 67700412 761330904 156817178 338929165 186285312 559957428 98287438 196460706 888699423 686335042 430101007 485262404 334299650 172382592 361435434 2575238 799588075 676975489 387176309 226492467 920628541 764116955 109369069 726950461 153196022 888259120 626932919 885000402 396050095 485509833 602396426 968670974 746992914 781242822 290117216 853170454 808866527 711532060 123073176 310726569 862254110 589760538 195957995 196460706 257214051 923715439 407629453 232177196 874124920 128450928 464130920 458156391 425392410 968670974 422532994 889608806 152618584 249670598 586446680 267829614 687988023 349076114 626833449 708053570 595030753 505061211 774489082 896072909 514650194 831241130 950673785 711532060 396806189 361002681 50241607 699733109 38844979 841780337 592639233 514768035 888553258 448881532 396050095 112090095 72820570 767187616 53525809 891279504 247006479 106790696 886149363 159828635 562773407 494336936 590208882 522663253 854969794 699230813 206036522 288873549 783513992 485063015 430101007 140551765 626932919 349076114 840130613 449022331 142903358 812414090 464130920 334211676 663670886 172894131 271484655 408032939 662421393 636434256 757815664 403519778 923927991 573449906 82689280 195019158 806664207 250832323 135975430 853903669 268759041 896029805 637769046 931005739 407510599 256866745 653201202 264100442 992001870 806744033 40448245 620243558 979740237 589760538 722768643 582273012 142903358 66490779 640849273 459617527 492009082 112390393 195957995 250832323 542382913 371179314 719307635 718980624 979740237 174862116 533455280 376448548 396050095 119279869 215981255 226492467 247006479 732559957 133739154 689757867 918225489 860708299 854969794 874297853 428572243 852755974 202477791 247822207 367026304 761330904 177689820 256866745 763431295 853170454 900796599 727578179 361435434 597784477 679463383 10369081 888553258 225858850 633587956 251367294 298727845 781246194 23973553 786320493 940188502 590918818 950497221 66490779 32806834 812414090 242028021 47529701 23973553 942866882 514650194 711455867 637657473 566554997 430088921 989729323 322974842 866568903 40448245 539035187 806664207 145885851 358401766 112390393 93478833 996943901 40448245 616057762 637769046 650036494 860377902 667313812 709613471 223299794 626833449 841780337 525347105 668964848 140129038 427184372 268759041 624819674 533455280 560327459 888553258 566554997 489612980 399037712 645094664 964902255 738855203 371179314 771321738 143200457 548748527 241184545 49317804 962073361 992001870 514768035 93651148 196460706 148087911 531333917 101231409 590918818 83066601 711455867 538025980 866337119 366854683 81553943 681765297 155241439 154538466 891279504 860477160 560623000 806664207 969494113 43970470 213097363 801623766 511277493 396050095 853903669 886149363 889608806 809429735 581831913 201717402 458290565 480361743 476912096 274113481 1736950 295606018 835212499 746092812 27735709 992001870 607760956 966131311 607965234 585165457 420636144 456956861 160287690 802009078 360743135 305990981 604881661 274113481 112090095 444897967 458156391 563678994 311808379 632014852 699230813 128188331 831380531 862177563 616796881 932584021 757709512 816971086 215289803 430284321 403519778 931086800 668964848 358401766 33511708 750563611 721769014 125829791 314069534 28363157 207442482 887794841 167276070 913521589 250832323 444897967 361002681 109369069 29473993 633587956 762749463 542382913 566125822 585165457 179981178 703490607 527595027 242530683 668964848 602396426 2076768 367026304 15903366 438183310 190323279 269911067 885000402 292972503 314069534 275349681 884952974 827311105 81337657 401452903 509019925 769327548 984047482 195957995 831380531 887794841 662972501 275202504 459452716 575895835 241184545 710224239 159828635 49317804 767839638 652018277 390275103 633573519 885000402 126695727 225858850 23262398 678474526 190929591 49948206 422532994 676975489 917452919 160287690 305990981 225771141 275349681 205387898 126695727 795472528 135975430 195019158 448262245 352092606 29069209 972710252 886149363 713146141 953882020 754133002 94279561 397928982 704431513 290474734 885995802 630238886 101231409 762749463 586370291 266583970 637769046 247822207 489612980 994587826 783513992 964902255 152243323 256866745 448262245 250832323 799588075 932715562 429277230 872434540 538025980 896029805 595030753 793291205 407629453 557710104 630775839 810021050 242028021 288873549 148087911 983113723 838331644 993091440 735696627 494336936 138393155 882804101 261683638 179991869 129724737 396937914 760231333 566125822 499057158 376448548 927806038 376448548 270237875 566125822 219054502 812044550 931966477 109054120 488295044 246221518 67700412 193515742 242186770 452156279 73848009 451521521 412979540 327773233 940188502 396937914 702364434 940381563 275349681 299462930 138393155 866337119 691982506 962073361 562773407 220576148 979740237 729868696 334299650 994587826 788737791 789617647 268759041 683621666 304621545 727827821 361435434 225858850 396806189 853903669 757815664 589760538 193648030 616796881 679463383 130160246 247006479 646710523 255644658 2076768 430101007 338631458 174140940 250885472 56154381 121069546 209789164 559957428 757850417 641231120 938140278 394791153 328462418 993091440 687988023 159828635 448262245 24089615 39220584 10369081 255644658 24089615 428572243 836376015 451817798 556619020 117931902 378961655 681930584 179991869 681765297 841210236 838655651 175507355 610834602 249820698 710224239 175060805 788737791 571019028 637769046 620243558 816971086 272303478 244528344 841780337 83066601 838803091 743614603 887548285 597206610 910818482 695599688 246058339 305068796 515426984 148087911 761330904 851400664 134801439 6720560 852755974 125829791 984047482 129724737 616796881 590208882 588034909 760231333 215289803 315747769 452156279 696443558 885000402 632014852 991615550 354807942 522663253 242028021 686884353 407510599 2575238 138393155 36055646 101231409 394791153 801623766 175507355 688577702 264100442 931013644 496698204 132556595 667313812 344876805 566125822 177689820 53195413 154538466 872434540 73848009 337153847 910850066 175507355 23262398 885141769 539957336 588034909 835339516 623206361 801623766 458156391 234980621 264100442 210621083 299994808 244528344 495854210 688577702 628820972 215977916 969494113 931640418 359714925 465759767 2379379 808866527 776835194 637939784 441621000 633573519 559957428 39220584 780061015 156817178 509370562 740340897 853170454 513440742 979750308 299113502 117210451 824770361 942866882 321628921 969494113 654830523 136412292 715779797 342116147 242530683 896072909 553368896 342116147 950497221 251367294 274113481 193515742 480361743 449022331 242186770 995876182 53226850 130160246 753419354 170941326 746092812 88335614 923927991 566554997 922706719 20148474 465759767 702745028 465759767 829983432 663971090 866568903 539381059 750978759 278160655 711532060 719307635 462394151 464130920 218611070 42657625 641231120 633587956 668964848 93478833 885353274 344620844 758889515 32075030 327773233 783513992 815123402 626833449 604181881 637657473 662972501 152523810 249670598 949084393 187104147 328462418 249820698 396743027 607965234 156817178 749497174 131323888 327773233 128702236 885000402 922858580 369306500 776352608 20148474 490344724 962073361 570764323 459617527 289736829 179991869 264408147 506919968 966683628 971549242 38338132 746394036 255644658 627110568 538025980 15903366 363976852 162904272 992001870 650036494 64420967 978947655 695599688 546141085 740882715 964902255 602396426 119279869 816971086 836376015 152866011 527595027 944068218 361002681 242186770 981996224 681765297 459617527 929504680 437743643 162062292 55108095 559014304 560623000 917452919 405444604 518384931 36055646 887794841 246058339 807117750 232177196 471393875 138442062 366854683 543945175 795549341 535533605 746992914 624819674 949084393 112390393 444897967 638790258 255644658 992169078 140129038 874297853 572588387 420636144 99294732 272303478 719307635 744008188 539381059 376448548 786380583 7807006 311613451 66490779 39220584 841210236 956815883 165821462 40448245 252962990 583924389 635302209 776820092 531135820 64420967 795472528 592639233 106790696 344876805 459617527 60750487 506178629 115090276 812044550 876868627 452156279 254203892 771803404 53226850 556619020 292696118 975478549 174140940 925555858 748408317 962430008 885549757 953267424 746092812 441621000 702364434 306597948 306607837 313272965 396050095 19715614 769327548 205387898 117931902 334932282 503666498 939725993 254203892 727827821 464130920 571019028 797746066 213097363 735696627 509664709 854902633 543945175 688534928 940381563 513440742 155241439 93478833 317751260 489130642 4519262 80485362 288873549 862177563 582273012 202477791 174862116 10475035 20148474 538025980 978947655 471393875 607965234 412979540 573449906 712346140 970320952 417074904 543945175 6720560 885141769 765027062 353964006 553368896 735891721 876868627 592981604 275349681 103219970 302151126 527595027 31215478 5299425 746992914 616796881 748408317 330274784 255644658 792846009 575895835 252792947 186285312 981996224 887794841 907721720 917452919 37275245 854969794 793291205 876263470 572465104 230662076 267829614 882364001 711455867 746092812 629101079 913521589 449022331 982370833 758889515 489612980 187104147 268759041 51457589 292972503 955730659 637939784 836376015 921198791 722013570 438183310 485063015 98287438 404152565 407091770 162904272 247006479 607041944 126695727 456137963 40656291 775682536 860377902 190323279 645094664 311808379 885549757 771803404 603931167 19715614 956286779 790270533 723661847 604881661 431406787 405444604 363976852 390793037 98824830 159828635 503666498 566554997 893019475 388085842 967417280 136412292 808866527 896072909 780870754 267829614 344620844 604181881 407091770 420636144 696443558 287239117 455539394 505061211 931966477 175060805 145559297 960543625 13112382 955730659 115090276 337153847 740882715 850484222 702364434 912948600 82689280 588034909 203331888 735710261 743614603 207442482 876868627 629101079 675472009 713146141 321628921 193515742 969294148 907095826 753419354 225858850 774489082 629101079 654830523 902464469 302151126 838803091 932584021 885647994 275202504 505061211 151364594 604881661 60750487 786320493 598426014 225771141 663670886 573480571 746992914 237172271 47290536 568142039 808866527 114409323 681765297 334211676 195957995 52243955 518384931 835198840 940188502 464444922 115509283 735891721 82689280 140725908 858127225 325554372 745200166 337153847 776820092 408032939 922858580 859168292 83066601 98231977 887794841 992169078 567343883 330205547 154538466 382210484 786380583 272303478 858127225 128450928 806664207 163229392 765027062 47529701 617908997 535533605 550336314 812414090 824770361 27735709 321628921 266583970 78649514 311808379 862177563 970320952 745200166 19715614 80485362 572465104 101231409 170941326 660765062 251367294 946612927 573449906 396806189 40131409 292696118 835212499 274113481 2076768 695599688 38085353 788737791 735891721 878442641 616796881 209789164 514768035 538810384 885647994 915330573 495854210 704431513 726620654 926045944 888259120 703490607 288072509 551289217 782533040 361435434 607965234 700560235 446968233 196106606 49614749 862254110 793291205 29069209 349644605 715779797 570796148 855636134 831380531 82689280 464444922 654830523 550322314 430101007 975478549 595030753 721769014 73848009 859168292 43970470 623206361 931086800 47349911 938140278 433921335 183440003 317751260 992001870 138442062 966131311 250832323 32075030 130160246 407091770 953267424 553191189 838803091 746092812 353964006 931013644 136412292 926044257 98231977 932584021 582273012 771321738 359859765 926044257 808838846 230662076 359714925 38338132 371179314 492009082 932715562 275202504 134971740 210621083 995876182 94279561 353964006 60750487 953267424 351424753 841210236 284588557 940381563 638516505 360743135 954227928 505061211 776352608 570796148 304621545 750750593 617908997 159828635 746092812 866568903 163769090 923715439 539381059 979750308 407510599 767839638 540976336 543865019 688534928 190323279 750563611 866568903 757815664 19715614 886917295 272303478 572588387 938080232 954227928 299994808 480361743 396632533 757815664 452156279 688577702 446968233 900796599 408032939 703490607 991615550 429277230 916956968 567774282 266583970 567343883 937158597 638516505 400178823 31215478 872434540 125829791 888259120 637939784 5299425 481894295 396138845 196106606 638790258 271484655 754133002 803588261 399037712 67700412 38085353 857535330 632378665 230662076 592970093 738612855 314069534 854902633 699733109 132556595 852604705 592639233 624819674 735696627 27735709 424594759 885647994 721418370 889608806 966131311 932715562 804406873 885000402 539957336 458156391 344620844 262406489 695599688 668964848 967417280 996943901 637769046 53195413 746092812 573449906 975337465 87392830 432089082 167276070 738855203 130160246 196106606 623206361 949084393 4519262 814662325 48746678 778074990 641231120 650697444 604181881 703490607 205387898 887794841 566125822 637657473 112090095 712346140 117210451 15037608 315297566 735696627 359714925 142903358 458156391 862254110 249820698 196106606 885647994 67831588 632378665 704431513 330274784 860377902 727827821 563678994 968670974 807117750 241184545 947413305 787269565 617908997 983113723 196106606 352092606 958668995 815123402 774489082 33511708 401452903 970320952 638516505 579757115 913521589 739696834 941586175 938456692 575023903 708046990 326469359 889608806 567948101 334211676 151364594 764116955 407510599 940381563 835339516 767187616 292696118 841210236 827311105 267829614 917452919 327773233 140129038 237172271 804406873 566554997 956286779 51457589 633587956 187104147 53525809 420636144 428572243 300892929 396743027 359859765 24188768 831241130 652018277 732559957 824770361 509019925 771321738 248642173 98824830 852755974 128702236 978947655 763431295 283321520 480361743 146573202 788737791 560327459 953882020 506178629 6720560 195019158 154538466 250749017 568104980 282751746 136384659 506178629 991073887 369306500 562773407 88335614 824770361 79509313 210621083 702745028 140129038 262406489 626833449 887548285 688534928 145885851 860477160 266583970 542382913 338631458 74587532 749497174 931966477 252792947 780870754 162904272 931013644 138442062 264750083 459617527 209789164 627110568 190979155 324986193 722768643 887548285 230662076 727827821 864016134 601740259 305068796 390793037 917795074 884952974 882364001 2575238 610447918 155241439 783513992 462394151 735696627 337153847 583924389 548964093 462762217 87392830 886917295 624819674 876263470 859168292 770993588 792846009 186285312 938456692 80485362 647733367 553191189 721769014 915330573 252792947 653201202 746394036 923927991 170941326 152618584 400178823 215977916 953267424 23262398 27735709 234980621 841780337 151506993 884952974 955501918 885141769 763431295 630629857 251042004 852604705 770864525 2379379 745200166 699733109 354807942 378961655 783513992 983373150 275202504 458156391 864016134 781242822 211958450 507016471 971894015 283321520 838655651 220576148 956286779 989729323 284588557 282751746 637939784 761330904 152243323 145885851 190979155 27735709 428572243 495854210 38338132 112090095 23973553 548964093 28363157 885141769 512614298 983113723 769327548 38085353 769327548 485262404 619842427 994587826 920628541 733642252 148087911 53195413 298727845 19715614 554222239 19715614 991073887 995876182 808866527 143200457 489130642 918521256 259646582 464444922 56154381 179991869 77819776 359714925 719307635 516175014 484158080 568142039 920721173 989729323 850386354 361002681 788737791 19715614 115509283 449022331 931013644 989729323 551289217 400218902 174140940 812414090 705304879 464444922 994877696 250885472 512614298 789617647 683406807 485262404 344620844 853903669 740882715 630629857 923927991 128450928 855636134 51457589 806664207 996943901 559014304 776835194 936312210 573449906 927806038 767839638 685702028 87392830 931966477 912948600 650990283 781246194 39220584 630629857 570764323 627110568 163769090 554242697 432089082 35128915 29069209 20148474 940188502 140725908 484158080 307403622 396050095 155241439 407629453 371179314 259646582 29473993 982370833 979750308 303230482 925555858 67831588 896072909 547547687 984047482 956815883 427184372 950497221 859168292 660765062 330205547 757850417 226492467 430088921 137529801 83066601 2076768 656623172 566554997 640849273 338631458 293192373 764459345 603931167 573449906 884059813 531333917 740340897 953267424 156817178 597784477 915330573 939725993 401452903 735710261 864016134 781246194 840075867 426814174 921198791 172894131 424594759 662972501 464130920 674446970 206036522 522663253 971894015 788118407 888699423 55108095 407510599 851759377 942999703 307060809 73848009 205387898 361435434 160287690 286037808 138442062 152523810 121069546 705304879 604181881 704431513 249820698 396806189 2575238 266213579 778123726 334299650 852604705 601630030 727827821 770993588 187104147 750563611 815123402 950673785 103219970 679463383 682170984 550336314 554242697 632402794 638790258 660095934 182214511 47290536 420636144 538810384 114409323 358401766 287239117 190979155 775682536 49317804 387703244 838331644 66490779 746092812 526944836 590208882 964902255 251188854 287768226 271484655 625664180 931086800 267829614 740882715 859168292 215977916 557710104 633573519 10369081 931086800 636434256 396050095 165821462 809429735 49948206 471393875 978947655 809429735 754133002 703514531 476912096 465759767 722013570 82689280 396632533 754580366 850484222 630775839 399037712 936312210 560327459 214244685 866337119 610834602 902464469 757850417 376448548 931966477 505061211 99294732 711532060 932584021 842970782 257214051 885647994 203331888 213097363 572588387 815123402 43970470 160287690 843005594 49948206 807117750 632378665 211958450 722013570 703490607 548964093 799588075 195733178 401452903 656191811 807117750 397928982 567343883 735891721 429277230 806792339 778074990 452156279 570764323 571019028 654830523 965948435 663971090 5299425 93478833 938080232 837690635 955730659 448262245 853903669 637657473 602832600 975337465 767839638 53525809 516175014 904800517 944573659 292972503 572465104 743614603 314069534 129724737 509664709 797746066 896072909 332834875 902464469 484158080 399037712 542382913 638790258 927806038 19715614 67700412 546141085 804406873 885647994 15037608 353964006 633573519 722013570 586370291 964902255 675472009 607760956 757815664 749497174 926045944 167276070 464130920 854243215 858127225 515426984 886917295 729868696 953882020 829614460 478351140 307060809 882364001 485063015 31615284 829614460 174140940 330274784 640925332 464444922 992001870 2379379 344620844 464444922 125829791 560327459 214244685 888259120 788737791 103219970 626833449 566125822 931640418 667313812 760231333 885141769 206036522 546141085 408395896 548964093 148087911 509019925 769327548 885000402 971894015 388085842 745200166 300892929 206036522 29473993 142903358 179991869 703490607 577673184 151506993 300892929 53226850 780061015 430284321 702745028 503666498 931005739 259646582 624819674 860377902 193515742 917452919 193515742 736624310 462394151 322974842 15903366 736237188 607760956 554222239 296751278 540976336 215289803 296305836 812044550 982416551 955730659 550336314 978947655 432089082 632378665 247221668 885141769 632014852 992169078 583924389 29473993 32806834 205387898 598426014 888259120 956286779 251367294 228290502 616057762 525347105 764459345 590208882 687055288 969294148 739696834 186285312 52243955 864016134 850484222 630201811 353964006 247221668 686335042 838655651 225771141 913521589 650036494 545538425 349076114 662421393 628820972 830619816 831380531 103733806 792846009 746992914 464444922 251188854 852604705 31615284 767839638 480361743 870201182 455539394 138442062 967417280 683621666 740340897 1736950 412979540 68748842 695599688 2575238 215792516 330274784 215981255 213097363 485153920 885353274 401452903 55108095 498840912 940381563 858127225 996943901 837690635 505061211 425392410 775682536 837690635 66490779 994877696 983373150 214650974 56927881 921198791 514768035 289918211 623206361 918225489 399037712 953882020 272303478 754580366 931005739 115090276 965948435 151506993 433921335 480361743 128450928 696443558 249670598 681765297 299462930 396743027 885353274 478351140 630629857 773781000 965948435 451817798 800460688 31615284 962430008 135975430 737945381 533864165 686884353 575895835 359714925 1926282 885141769 838331644 632378665 913521589 702745028 958668995 225858850 637939784 776835194 710224239 628820972 254203892 841780337 950497221 735710261 430284321 463496366 275349681 175507355 931966477 699230813 177689820 495854210 632014852 885647994 723661847 399037712 994877696 854243215 257214051 408032939 945394518 134801439 874124920 972710252 228290502 179981178 953882020 79523589 688534928 602832600 920721173 963141978 123073176 36055646 882364001 33511708 663670886 793291205 757815664 571019028 74587532 592970093 956286779 68748842 722768643 360743135 754580366 829614460 602396426 664041213 887794841 792846009 602396426 299462930 303230482 543945175 900116034 342116147 429277230 485509833 512614298 252962990 190979155 136412292 462762217 266583970 129724737 456137963 760370490 808838846 938140278 282751746 683406807 711455867 949084393 984047482 637939784 955730659 748408317 965948435 887794841 112390393 628523361 729868696 770993588 225858850 904771946 175060805 387176309 494336936 203331888 896072909 152866011 78775552 296305836 349076114 765027062 647733367 255644658 808614164 133739154 979750308 129724737 24089615 746092812 912948600 308142020 884952974 206036522 870201182 525347105 866337119 264750083 249820698 230662076 207442482 533864165 601740259 142903358 925555858 797746066 984047482 511330454 885647994 876868627 943793512 696443558 498045048 776352608 762749463 429277230 984047482 420052652 795472528 533455280 382904427 499057158 232177196 633587956 443960759 264408147 995876182 298727845 443960759 971894015 174335822 954677909 338929165 93651148 887548285 954227928 290474734 422532994 722013570 705304879 570796148 709613471 2076768 900796599 793291205 770993588 182214511 814662325 727245017 632402794 829983432 268759041 359859765 195957995 98231977 138393155 327773233 151364594 449022331 286037808 764116955 375066210 405444604 303230482 560623000 193648030 218611070 885995802 56927881 662421393 579757115 704431513 218611070 15037608 735891721 270237875 2076768 945394518 650036494 28363157 866337119 10475035 806792339 567774282 910818482 650990283 247822207 770864525 187104147 481894295 592981604 904800517 190323279 835339516 838803091 367026304 806792339 305990981 726950461 211958450 27735709 32806834 4519262 860377902 463496366 947413305 715957434 73848009 307403622 401452903 727578179 53525809 539035187 215792516 27735709 913521589 267829614 126695727 687055288 455539394 870201182 275202504 496698204 82689280 963141978 408395896 160287690 835339516 290474734 429277230 29473993 151364594 942866882 72820570 686335042 43970470 858798711 931966477 342116147 29069209 607965234 162062292 475344103 292149520 852107700 572588387 33511708 152618584 686884353 154538466 858798711 492009082 121069546 876868627 232177196 542382913 896029805 29069209 539035187 548748527 568142039 485153920 978947655 723661847 782533040 67700412 970911538 115509283 806744033 703490607 443960759 601630030 225858850 940188502 112090095 43970470 859168292 237389399 989729323 93478833 400218902 626932919 767839638 538025980 47529701 211958450 130160246 490344724 963141978 808866527 155241439 93478833 896029805 502849508 81553943 125204206 306597948 776820092 190323279 953882020 750750593 595030753 324129364 660765062 793291205 464130920 338631458 814295984 632378665 215977916 860708299 289918211 587179274 186285312 635302209 527654256 938705675 271484655 970911538 41538784 134971740 21190596 938705675 430284321 625664180 214650974 872434540 661321016 780061015 926045944 708094860 740340897 792822959 363976852 205387898 298727845 78775552 432089082 205387898 156817178 971549242 237389399 226492467 632402794 179991869 31215478 81553943 305990981 352092606 228290502 674446970 513440742 408032939 387176309 485509833 275349681 172382592 888553258 860708299 887794841 620243558 954677909 509144872 691982506 800460688 911302173 361002681 39220584 427184372 982416551 885647994 776352608 641231120 927806038 711532060 851400664 853170454 151364594 718980624 133739154 20148474 195957995 942899938 295366548 943793512 721418370 787269565 610447918 138442062 770594967 514768035 23973553 888259120 855636134 527595027 387176309 458156391 211958450 337153847 64420967 789617647 540394532 860708299 481894295 831380531 538025980 962430008 975337465 433921335 431406787 620243558 946612927 276676140 770594967 349644605 814662325 889608806 344620844 207442482 480361743 68748842 860377902 27735709 74587532 812414090 936312210 767187616 13112382 371179314 514650194 939725993 550336314 550322314 969294148 916956968 700560235 550322314 438183310 965948435 305990981 223299794 598426014 376974209 650990283 571019028 691982506 788118407 41538784 287239117 215981255 496698204 244528344 145885851 40448245 750978759 275349681 405444604 242186770 249670598 387176309 324986193 145559297 831380531 6720560 241184545 361435434 607760956 152243323 972710252 954227928 19715614 181668423 656191811 581063820 872434540 257214051 172894131 532803593 721769014 366854683 782533040 663670886 396937914 10475035 620243558 857535330 931005739 768561257 628820972 298727845 426814174 38338132 656191811 760231333 334932282 640925332 509019925 946916156 711532060 702364434 568142039 151506993 664041213 99294732 969494113 563678994 970320952 654830523 577673184 705548145 829614460 688534928 427184372 13112382 817743547 886149363 925555858 660765062 990121035 786380583 215289803 547547687 449022331 190929591 697742034 308142020 767187616 151364594 256866745 598543708 179981178 40448245 788118407 214650974 983113723 554222239 556619020 687988023 968755777 633573519 485509833 940188502 35128915 131323888 38304068 632402794 972710252 540976336 938456692 401452903 405444604 344620844 850484222 760231333 618355033 979740237 296751278 956286779 650036494 740340897 841210236 795549341 781242822 259646582 397928982 802009078 629101079 886149363 330274784 478351140 546141085 422532994 854243215 704431513 495854210 484158080 134801439 247841801 992169078 257214051 32954995 135975430 989729323 913521589 167276070 598426014 963141978 773781000 923715439 956286779 590918818 98824830 495854210 688534928 560327459 888553258 310726569 210621083 287239117 511330454 568142039 99294732 983113723 361435434 676975489 592639233 559957428 922858580 15903366 770594967 636434256 824770361 597784477 843005594 831380531 430101007 699230813 913521589 337153847 203331888 458363994 626833449 554242697 251188854 592970093 215981255 963141978 525347105 338631458 545538425 78775552 154538466 702745028 838331644 597784477 751925989 47349911 736624310 511277493 675472009 109054120 542382913 735891721 117931902 781242822 152243323 393120342 208625324 715957434 931640418 514768035 814662325 781242822 202477791 328764419 42657625 781242822 303230482 174335822 425392410 702745028 583924389 636434256 306258744 78775552 618542887 628820972 577970627 852755974 922858580 978947655 808866527 306597948 292149520 872434540 572588387 307060809 332834875 995876182 705304879 134801439 920721173 885141769 857535330 2575238 407629453 732245352 862254110 511277493 257214051 749497174 743614603 393120342 492009082 225858850 358401766 912948600 215981255 992169078 568104980 463496366 753419354 852604705 490344724 128450928 407629453 167276070 396743027 620243558 23973553 722013570 661321016 334932282 904800517 511277493 735696627 288072509 736237188 437743643 39220584 226492467 944068218 137529801 626932919 588034909 190929591 907095826 886149363 682170984 425392410 829614460 678884863 396632533 80485362 629101079 931640418 35128915 38338132 630238886 638516505 403519778 181668423 788118407 950497221 874297853 705304879 678474526 950497221 207844781 723661847 646710523 457149478 572465104 857535330 458290565 809429735 49614749 40656291 360743135 174140940 36055646 824770361 56927881 433686203 81553943 211958450 56927881 396050095 317751260 860477160 981996224 768561257 613596687 255644658 866337119 422532994 170941326 855636134 506919968 975337465 307403622 98824830 509019925 163769090 582273012 93651148 175060805 722768643 841210236 736624310 193515742 688534928 806792339 979740237 581831913 840130613 790270533 152866011 128450928 846351340 831241130 653201202 762749463 840130613 128450928 407510599 815123402 131323888 758889515 286037808 715957434 305990981 889608806 344620844 498045048 40656291 978947655 131323888 475344103 125204206 786320493 396050095 266583970 760370490 527595027 618542887 209497607 780870754 134801439 471393875 388085842 275349681 781246194 366854683 764459345 966131311 962430008 929504680 962073361 305990981 635302209 814662325 885647994 67831588 912948600 746992914 942866882 289918211 570796148 78649514 750978759 53525809 560623000 456956861 48746678 129724737 509370562 67831588 167276070 299113502 981996224 251042004 241184545 947413305 970911538 954677909 790270533 73848009 831241130 444897967 831380531 527654256 896029805 583924389 790270533 592639233 989729323 264408147 400178823 457149478 979750308 715779797 850484222 641635851 441621000 1926282 715957434 264750083 452156279 982370833 750978759 284588557 697742034 53226850 560327459 93651148 78775552 215774690 488788762 269911067 597784477 940188502 175060805 550336314 735710261 896571061 449022331 152243323 793291205 41538784 452156279 366854683 140725908 802009078 806744033 275349681 686335042 773781000 678474526 723661847 505061211 618542887 668964848 637657473 853170454 685702028 953267424 78649514 396632533 946916156 975478549 575023903 602832600 610447918 327773233 540394532 853170454 533455280 870201182 721418370 972710252 679463383 330205547 753419354 159828635 773781000 324129364 795549341 288873549 546679009 726620654 304621545 361002681 656623172 315343704 145559297 694954883 637657473 625664180 760231333 786320493 302151126 394791153 80485362 708046990 366854683 556619020 854902633 179991869 931086800 495854210 326469359 359714925 896571061 220576148 804406873 376974209 261683638 458156391 681930584 146573202 334299650 910818482 103669472 325554372 878442641 213097363 601630030 376974209 913521589 686335042 581063820 607760956 831467447 172894131 954227928 630238886 705548145 29473993 653201202 588034909 261683638 531135820 745200166 932715562 617908997 287768226 862254110 531135820 135975430 145885851 808866527 330274784 254203892 300892929 835339516 758889515 80415088 143200457 503666498 488788762 115509283 130160246 135975430 27735709 626932919 916956968 533455280 7807006 858127225 885647994 617908997 668964848 306607837 761330904 774489082 250749017 862254110 993091440 679463383 715957434 131323888 172382592 587469038 81337657 489612980 572465104 214650974 306597948 255644658 984050047 219054502 711532060 838331644 689757867 746092812 459452716 304621545 288873549 286037808 960543625 133739154 781242822 518384931 81553943 10475035 382210484 799588075 494336936 660765062 509370562 308142020 276676140 133739154 588034909 152243323 764459345 917795074 938080232 884059813 140551765 211958450 134971740 550336314 338312978 788737791 971549242 255644658 885647994 193648030 179981178 662421393 960543625 931013644 4519262 918225489 550322314 214650974 485509833 209789164 213097363 632014852 838803091 770864525 311808379 617908997 24089615 922858580 607965234 795549341 400178823 553368896 983113723 306607837 937158597 255644658 981996224 568104980 767839638 969294148 207844781 754580366 172894131 264408147 597784477 575895835 152314280 900116034 496698204 163769090 780061015 709613471 20148474 738855203 250885472 125829791 451521521 214650974 962430008 945394518 771803404 24188768 330274784 681930584 573480571 688577702 36265302 597206610 145885851 513440742 776835194 215792516 850484222 956815883 371179314 492009082 727827821 876868627 396632533 553368896 750750593 553368896 299994808 929504680 408032939 660765062 788118407 598543708 522332929 433686203 349076114 499057158 771803404 885995802 604881661 814295984 902464469 286037808 841780337 478351140 290474734 855636134 699230813 808866527 207442482 295606018 441621000 860477160 543945175 885995802 315297566 202477791 382210484 700560235 582273012 196106606 964902255 911302173 38085353 126695727 190323279 991073887 885647994 563678994 543865019 432089082 887548285 432089082 376448548 641635851 396138845 776352608 688177128 429277230 38304068 422532994 953267424 827311105 138442062 858127225 353964006 604968568 55018341 367026304 117210451 417074904 711532060 754580366 307403622 135975430 53966525 920721173 349076114 795549341 324129364 653201202 241184545 746992914 806744033 202477791 925555858 688534928 990121035 24188768 885141769 32075030 250749017 186285312 207442482 675472009 589760538 553368896 186244437 887794841 53966525 941586175 388085842 776820092 767839638 929504680 53195413 618542887 566554997 917795074 66490779 938140278 237172271 38844979 722013570 115509283 405444604 103733806 579757115 921198791 2575238 674485068 420636144 945394518 152314280 49317804 686884353 546679009 682170984 748408317 789617647 786380583 140551765 140129038 697742034 632402794 896029805 448262245 787269565 101231409 810021050 738855203 607041944 80415088 764459345 498840912 733642252 931966477 943793512 721418370 276676140 211958450 970911538 950673785 726950461 465697134 33511708 407091770 590918818 738855203 19911869 448262245 854243215 795549341 750750593 268759041 119279869 268759041 965948435 215977916 699733109 128188331 495854210 115090276 232177196 922706719 509664709 640849273 515426984 201717402 328764419 202477791 225771141 533864165 47529701 275349681 334211676 21190596 775682536 366854683 620243558 269911067 338631458 448262245 882804101 126695727 835198840 840130613 393120342 807117750 88335614 660095934 509019925 271484655 396937914 430101007 795472528 295606018 174335822 98824830 715957434 306607837 735710261 125204206 778123726 128702236 361002681 540394532 15903366 700560235 193515742 691982506 627110568 654830523 237172271 831467447 778123726 559014304 885000402 917795074 394791153 771321738 2575238 214650974 77685914 480361743 264100442 929504680 396937914 932584021 526944836 538025980 788118407 540976336 248642173 653201202 831380531 47290536 55108095 860377902 744008188 877167702 376448548 956286779 205387898 140129038 841210236 652018277 498045048 295366548 315297566 837690635 812044550 289918211 592981604 271484655 812414090 533455280 400178823 922706719 7807006 915330573 20148474 540976336 891279504 545538425 767187616 966131311 207844781 770993588 708053570 183440003 179991869 637657473 53195413 142903358 190323279 115090276 682170984 637769046 342116147 600441802 215289803 77819776 298050322 465697134 616796881 776352608 459452716 774489082 711532060 527654256 396138845 546679009 81553943 971894015 337153847 478351140 944573659 915330573 225858850 738855203 597784477 768561257 727245017 855636134 509144872 230662076 757709512 465759767 810021050 702364434 451551269 498840912 81337657 691982506 317751260 938140278 656191811 271484655 376974209 936312210 226492467 675472009 328764419 709613471 968755777 776820092 314069534 575895835 841210236 808866527 463496366 465759767 130160246 429277230 250749017 660765062 121069546 553191189 960796073 498840912 965948435 857535330 854243215 917795074 20148474 152866011 334932282 322974842 19715614 877167702 509144872 946916156 548964093 540394532 172894131 929504680 859168292 24188768 744008188 979740237 52243955 401452903 682170984 464130920 68748842 788737791 98231977 128702236 485063015 904771946 396138845 99294732 573480571 918225489 170941326 757815664 992169078 763431295 758889515 156817178 943793512 923927991 52243955 719307635 390275103 922858580 218611070 553191189 55018341 72820570 573449906 465697134 175507355 31215478 49614749 746992914 938705675 271484655 940381563 586370291 721769014 21190596 676975489 590208882 676975489 808866527 349076114 539381059 511277493 679463383 79523589 745200166 885353274 489612980 165821462 637939784 647733367 125829791 806792339 41538784 592981604 858127225 433921335 306258744 775682536 691982506 446968233 795549341 787269565 940188502 775682536 681765297 507016471 304621545 746394036 623398671 112390393 408395896 462394151 645094664 625664180 234980621 858798711 140129038 907721720 814662325 98231977 862177563 53966525 954227928 420636144 623398671 630238886 931966477 970320952 321628921 647733367 991073887 250832323 904771946 866568903 228290502 607041944 247841801 360743135 886917295 390275103 568104980 573480571 950497221 19715614 432089082 942899938 874124920 130160246 683406807 311808379 554222239 190323279 31615284 885141769 691982506 795472528 885549757 179981178 920721173 112090095 748408317 15903366 432089082 588034909 949084393 888259120 715779797 264297813 837690635 155241439 799588075 682170984 154538466 315297566 47290536 995876182 931640418 793291205 152866011 514768035 1926282 325554372 917795074 314069534 151364594 441621000 617908997 290474734 702364434 623206361 455539394 376974209 992001870 790270533 77819776 299462930 773781000 708046990 953882020 87392830 209789164 733642252 275202504 174335822 893019475 983373150 533864165 342116147 835339516 349644605 740882715 282751746 771321738 223299794 712346140 800460688 211958450 531333917 641635851 399037712 982416551 699230813 618542887 808838846 900796599 942899938 763431295 937158597 251188854 390275103 591292508 715957434 306607837 531135820 802009078 607965234 471393875 613596687 174140940 984047482 488295044 174862116 296305836 441621000 799588075 359859765 630775839 495854210 478351140 475344103 922858580 337153847 302151126 117210451 305068796 994587826 228290502 550322314 251042004 387703244 151506993 163229392 532803593 931005739 358401766 992169078 396050095 620243558 275349681 327773233 203331888 546141085 712346140 984047482 387176309 134801439 920721173 793291205 547547687 38085353 553368896 408032939 420052652 938456692 271484655 405444604 572588387 938705675 32806834 996943901 581063820 836376015 101231409 400218902 42657625 597784477 743614603 376448548 936312210 689757867 715779797 978947655 797746066 170941326 896571061 420636144 550336314 907095826 129724737 682170984 420052652 38085353 851400664 616057762 489612980 735891721 757815664 496698204 626833449 134971740 581063820 136412292 429277230 408032939 944068218 117210451 407629453 252962990 586446680 937158597 28363157 220576148 430284321 767839638 831467447 806744033 940188502 761330904 768561257 907095826 163769090 459617527 679463383 786320493 304621545 852107700 29069209 678474526 721418370 443960759 67831588 163229392 941586175 163229392 10475035 698320352 247221668 175060805 554222239 531135820 921198791 607965234 502849508 509664709 525347105 53966525 511330454 630629857 595030753 509370562 292972503 566554997 228290502 140551765 700560235 287239117 913521589 970911538 448262245 307403622 498840912 560327459 982370833 420636144 674485068 408032939 975337465 699733109 302151126 87392830 637769046 940381563 738855203 896029805 214650974 298050322 638516505 170938835 633573519 56927881 31215478 140725908 678884863 674446970 801623766 190323279 750563611 625664180 322974842 237172271 575023903 526944836 498840912 459452716 783513992 325554372 425392410 604881661 991073887 394791153 290117216 128450928 73848009 607041944 633573519 965948435 740882715 992169078 47290536 729868696 275202504 276676140 765027062 885141769 298727845 726620654 154538466 630629857 533455280 4519262 568104980 103219970 266213579 835198840 53525809 32954995 994877696 300892929 152243323 616057762 888553258 387703244 138393155 829983432 131323888 812044550 876868627 884952974 874124920 607965234 954227928 459617527 975337465 718980624 351424753 923715439 154538466 170938835 28363157 625664180 710224239 963141978 877167702 205387898 950673785 912948600 485153920 66490779 1926282 226492467 936312210 715957434 678884863 38085353 305990981 543945175 219054502 853903669 123073176 458290565 562773407 137529801 303230482 647733367 598426014 315297566 163769090 152314280 206036522 853170454 115509283 727578179 305990981 702745028 60750487 888259120 321628921 582273012 650990283 618355033 860377902 397928982 67831588 937158597 640925332 29473993 918225489 140725908 29069209 32954995 991073887 667844649 145559297 143200457 208625324 38085353 760231333 792822959 230662076 52243955 630201811 754133002 926045944 182214511 688577702 570796148 547547687 955730659 215792516 1736950 412979540 193515742 623398671 983113723 590208882 338929165 136384659 195733178 770594967 993091440 602396426 162904272 723661847 437743643 577970627 298050322 21190596 79509313 457149478 573480571 546679009 686884353 922858580 63192647 215977916 464444922 202477791 49948206 628523361 213097363 877167702 632378665 770594967 112090095 545538425 516175014 633573519 627110568 485153920 896029805 966683628 623206361 583924389 509370562 247006479 459617527 590208882 179981178 228290502 187104147 94279561 371179314 637657473 874297853 488295044 78775552 776820092 334932282 567948101 888259120 788737791 810021050 687988023 762749463 803588261 220576148 862177563 962430008 431406787 218611070 484158080 495854210 922706719 971549242 208625324 264100442 745200166 360743135 275349681 307403622 546679009 590918818 623398671 167276070 484158080 808614164 550336314 207442482 738855203 146573202 132556595 872434540 591292508 829983432 547547687 795472528 181668423 446968233 433686203 137529801 691982506 19911869 926045944 427184372 131323888 215289803 623398671 506919968 126695727 907095826 929504680 735891721 128188331 694954883 640849273 494336936 888553258 625664180 28363157 689757867 215977916 568142039 770864525 662972501 142903358 962073361 958668995 174862116 42657625 266583970 264750083 896029805 922706719 32954995 29069209 838803091 835339516 19911869 688577702 571019028 261683638 506919968 269911067 996943901 140129038 38304068 38844979 850484222 600441802 853170454 807117750 874297853 760231333 970911538 806664207 397928982 215792516 953267424 481894295 403519778 751925989 993091440 746992914 33511708 292149520 520071928 838655651 252792947 795549341 943235508 133739154 940381563 736624310 806744033 760231333 815123402 577970627 888259120 923927991 767839638 563678994 32954995 751925989 737945381 950673785 938080232 431406787 888259120 133739154 891279504 181668423 968670974 432089082 448881532 830619816 554242697 407091770 256866745 358401766 850484222 893019475 885353274 540394532 209497607 145559297 968755777 407091770 686884353 591292508 299462930 882364001 882804101 163769090 790270533 743614603 515426984 546679009 885647994 840130613 66490779 887794841 172382592 610447918 241184545 40448245 464444922 80415088 990121035 546679009 522332929 193648030 757709512 816971086 708053570 125829791 458290565 210621083 624819674 630201811 167276070 190929591 36055646 592639233 462394151 650990283 646710523 712346140 485509833 140129038 324986193 154538466 850484222 888699423 509370562 420052652 195733178 938140278 285947848 527654256 170941326 251188854 604881661 683406807 98231977 719307635 408032939 653201202 970911538 145559297 573480571 703514531 817743547 401452903 607965234 196106606 162904272 420052652 708053570 610447918 841210236 835339516 485262404 332834875 721769014 637657473 314069534 590208882 829614460 247221668 446968233 115509283 495854210 156817178 266583970 945394518 49614749 152243323 925555858 408395896 511277493 971894015 478892468 838655651 942866882 831467447 853170454 966683628 607041944 540976336 458363994 967417280 971549242 518384931 446968233 396050095 252792947 328462418 732559957 637657473 140725908 757850417 571019028 98824830 352092606 242028021 636434256 125829791 338631458 979740237 557710104 154538466 2575238 315747769 764459345 554222239 451521521 994877696 560327459 966683628 426814174 424594759 506178629 195957995 757709512 533864165 970320952 954227928 256866745 586370291 476912096 885995802 896029805 900116034 568142039 41538784 708094860 663971090 841780337 966683628 800460688 586370291 571019028 49317804 252792947 679463383 172894131 751925989 315343704 334299650 349644605 721418370 983113723 854969794 55108095 115509283 310726569 858127225 727827821 920721173 597784477 650697444 907095826 545538425 117210451 135975430 352092606 735696627 264100442 653201202 771803404 538810384 896029805 688577702 604881661 21190596 223299794 412979540 155241439 448262245 334932282 375066210 838803091 366854683 885000402 617908997 511277493 568104980 182214511 932584021 174335822 563678994 942899938 293192373 10369081 56154381 225771141 738612855 750750593 949084393 413592826 73848009 220576148 824770361 215052415 407629453 590918818 638516505 250749017 73848009 953267424 862254110 299994808 465697134 570796148 831467447 708046990 321628921 36055646 661321016 371179314 887794841 441621000 876263470 604181881 595030753 248642173 334299650 968670974 619842427 953267424 444897967 509664709 247234349 885000402 679463383 520071928 722768643 361002681 738855203 808838846 15037608 485509833 247006479 313272965 98287438 114409323 115509283 851829959 465697134 78775552 840130613 299994808 628523361 250749017 375066210 498045048 955501918 87392830 354807942 812414090 6720560 581831913 688534928 953267424 177689820 971549242 74587532 52243955 910850066 403519778 296305836 963141978 527654256 400218902 109369069 506178629 590208882 485509833 626932919 287768226 572588387 623206361 802009078 427184372 163769090 746394036 788737791 858798711 274113481 780061015 994877696 607965234 604968568 24089615 396050095 38304068 242186770 841780337 433686203 592970093 773781000 992169078 13112382 452156279 712346140 548964093 633587956 792822959 776820092 359859765 306607837 463496366 401452903 441621000 268759041 296751278 322974842 496698204 955501918 287768226 637769046 287239117 877167702 215289803 630775839 698320352 308142020 566125822 174140940 592970093 788737791 923715439 837690635 361002681 430088921 174862116 296305836 978947655 47290536 601740259 746092812 607760956 885995802 627110568 478351140 616796881 877088774 788118407 152866011 702745028 271484655 841210236 575023903 577673184 125829791 992169078 723661847 66490779 604968568 550322314 722768643 688177128 598543708 400178823 351424753 829614460 587469038 215289803 478351140 722013570 581063820 49614749 145559297 246058339 923927991 408032939 882364001 749497174 444897967 870201182 502849508 509370562 850386354 507016471 72820570 146573202 115090276 616057762 211958450 174862116 926045944 726950461 568104980 934824360 786380583 938080232 532803593 597784477 489130642 167276070 331638088 535533605 712346140 506919968 945394518 207442482 174140940 296751278 753419354 327773233 234980621 103219970 750563611 136412292 43970470 5299425 471393875 330274784 489612980 264100442 126695727 49948206 603931167 581831913 292972503 896029805 538025980 556619020 806664207 463496366 298727845 984050047 846351340 88335614 151364594 262406489 152618584 942866882 247006479 324986193 289918211 371179314 228290502 789617647 201717402 47529701 396050095 462394151 662421393 393120342 992001870 285947848 926044257 713146141 49317804 662972501 768561257 750978759 193648030 601740259 851400664 931005739 838655651 932715562 80485362 155241439 270237875 872434540 93478833 256866745 407510599 780061015 215774690 179981178 417074904 812044550 855636134 165821462 681930584 315343704 710224239 554242697 619842427 458290565 887794841 338312978 774489082 371179314 152866011 780061015 99294732 458290565 230662076 682170984 358401766 983113723 538025980 81337657 215792516 47349911 661321016 630977998 691982506 960796073 354807942 283321520 93478833 808614164 931013644 266583970 554222239 790270533 361435434 33511708 874124920 907095826 709613471 667844649 210621083 452156279 209789164 459452716 950497221 674446970 490344724 762749463 705548145 531333917 575895835 165821462 633587956 713146141 462762217 667313812 971894015 531135820 98824830 56927881 688534928 38304068 94279561 885353274 799588075 708046990 633573519 307403622 765027062 325554372 40448245 618355033 893019475 851759377 128188331 527595027 101231409 938456692 322974842 327773233 72820570 656191811 533864165 835212499 151364594 667844649 488295044 860708299 824770361 607760956 215774690 616057762 567343883 388085842 247841801 121069546 41538784 746394036 464130920 550322314 551289217 48746678 911302173 134971740 428572243 152314280 514650194 543945175 38338132 285947848 275349681 143200457 780870754 607760956 98287438 509144872 214244685 24089615 429277230 896029805 982370833 55018341 50241607 646710523 966131311 249820698 193648030 106790696 778074990 604181881 190929591 143200457 163769090 63192647 302151126 170938835 824770361 361002681 675472009 994587826 234980621 786320493 633573519 195019158 896571061 931005739 663971090 241184545 148087911 782533040 921198791 885353274 32075030 792846009 860377902 35128915 49317804 767187616 551289217 664041213 650697444 866337119 923927991 607760956 115509283 15903366 888699423 719601437 877167702 781246194 448262245 324129364 244528344 160287690 638516505 885000402 750563611 382210484 857535330 531333917 688577702 241184545 874124920 35128915 926044257 361002681 896571061 577673184 910850066 485262404 637657473 53966525 809429735 143200457 748408317 698320352 623398671 170938835 334299650 225858850 266213579 165821462 878442641 750978759 641635851 618355033 860377902 53966525 835339516 937158597 882364001 175507355 67700412 636434256 942999703 943235508 527654256 874297853 214244685 170938835 835339516 117210451 738612855 912948600 783513992 792846009 877167702 764116955 465759767 396138845 547547687 225858850 298727845 485262404 295606018 448881532 929504680 376448548 162062292 394791153 688534928 601740259 662421393 792846009 598426014 352092606 83066601 601740259 975337465 851759377 93478833 969494113 632014852 786320493 888553258 630629857 266213579 400178823 56154381 509144872 257214051 394791153 295606018 376448548 215792516 526944836 196106606 327773233 73848009 872434540 884059813 646710523 471393875 907721720 550336314 896029805 904800517 912948600 966683628 548964093 128188331 960543625 545538425 726620654 778074990 232177196 884059813 456137963 804406873 808838846 900116034 688177128 354807942 112090095 938140278 789617647 748408317 315343704 885549757 114409323 885995802 889608806 257214051 573449906 162062292 686884353 152523810 77685914 539381059 128450928 145559297 732245352 302151126 968670974 117931902 106790696 247234349 232177196 563678994 451521521 600441802 509144872 911302173 667313812 93651148 310726569 1926282 590918818 953882020 79509313 735696627 146573202 840130613 668964848 103733806 630629857 650697444 792822959 703514531 299994808 795549341 172382592 656623172 458290565 679463383 872434540 24188768 145885851 992001870 885353274 735696627 241184545 592639233 32954995 334299650 638790258 804406873 5299425 32806834 420636144 786380583 283321520 637939784 979750308 911302173 334211676 630775839 778123726 843005594 884952974 917452919 757709512 140129038 527595027 640925332 817743547 538810384 382210484 268759041 697742034 430284321 782533040 840130613 733642252 152243323 872434540 498840912 1736950 266213579 40131409 809429735 56927881 585165457 458363994 162062292 852604705 401452903 711455867 769327548 446968233 678884863 719601437 857535330 896029805 230662076 874297853 835339516 943793512 490344724 232177196 152618584 767187616 632402794 708053570 830619816 140551765 242530683 543865019 512614298 464444922 917795074 568142039 551289217 146573202 82689280 152314280 354807942 925555858 654830523 750750593 545538425 942899938 559014304 396632533 74587532 256866745 619842427 767839638 72820570 145885851 268759041 77685914 550336314 334932282 801623766 152314280 304621545 79523589 885995802 548964093 73848009 632378665 857535330 56927881 42657625 662972501 261683638 630629857 827311105 167276070 514650194 955730659 387176309 978947655 630201811 66490779 77819776 516175014 31615284 923715439 780870754 390793037 163769090 114409323 623398671 146573202 28363157 719601437 190929591 841210236 958668995 193515742 247841801 394791153 592639233 405444604 975337465 613596687 261683638 602832600 862254110 371179314 174140940 887548285 538025980 592970093 712346140 697742034 929504680 571019028 591292508 546141085 913521589 334211676 855636134 526944836 40656291 735891721 840075867 686335042 511330454 613596687 152866011 225858850 770864525 560623000 28363157 307403622 64420967 962073361 681765297 213097363 142903358 764459345 801623766 646710523 261683638 117210451 259646582 396632533 695599688 539035187 331638088 604181881 740882715 403519778 367026304 246058339 363976852 353964006 710224239 225858850 264750083 400178823 195957995 923715439 190979155 630629857 597206610 446968233 162062292 47349911 152866011 27735709 408395896 396937914 162062292 812414090 660095934 250749017 638516505 708094860 760231333 579757115 295606018 138442062 244528344 729868696 563678994 795472528 780870754 505061211 602396426 635302209 598426014 38304068 982416551 48746678 502849508 382904427 93651148 698320352 74587532 225771141 492009082 195733178 255644658 550322314 308142020 650036494 850386354 727578179 931966477 866337119 806664207 629101079 878442641 758889515 918225489 49614749 433686203 858040709 696443558 771803404 211958450 396937914 40656291 573449906 703514531 932715562 351424753 456137963 82689280 650036494 142903358 433921335 660765062 396632533 518384931 464444922 50241607 543865019 628523361 182214511 801623766 721769014 559014304 667313812 750563611 213097363 751925989 789617647 910850066 852755974 219054502 735891721 950497221 478892468 292149520 424974082 322974842 891279504 332834875 195733178 773781000 907095826 630775839 446968233 878442641 88335614 563678994 342116147 754580366 810021050 598543708 711532060 251042004 138442062 715779797 885647994 945394518 761330904 592639233 866568903 626932919 507016471 946916156 252792947 926045944 727245017 687988023 889608806 308142020 63192647 640849273 300892929 966131311 965948435 23262398 577673184 286037808 282751746 417074904 276676140 257214051 829983432 886149363 382210484 417074904 711455867 50241607 885000402 103669472 397928982 746092812 853903669 271484655 667313812 610447918 36265302 163769090 338631458 674485068 249670598 835339516 137529801 735696627 315343704 921198791 627110568 304621545 145885851 464130920 360743135 257214051 732559957 567343883 831241130 637939784 315297566 512614298 167276070 396743027 590918818 131323888 981996224 950673785 795472528 247234349 527595027 64420967 758889515 484158080 852755974 838331644 812044550 247234349 698320352 93651148 625664180 237389399 635302209 215774690 925555858 40448245 918521256 715779797 296751278 650697444 972710252 321628921 459617527 954677909 548964093 703514531 408032939 663670886 887548285 878442641 400218902 931013644 68748842 201717402 943793512 286037808 806792339 661321016 896072909 247234349 190323279 770993588 51457589 151506993 77685914 177689820 27735709 247234349 195019158 396806189 568142039 29069209 568142039 770993588 369306500 633573519 63192647 499057158 719601437 626932919 165821462 709613471 557710104 966683628 789617647 757815664 37275245 328462418 266583970 567774282 979750308 877088774 252962990 982353486 56927881 824770361 767839638 513440742 515426984 954677909 688177128 546679009 674446970 884059813 446968233 709613471 285947848 763431295 780061015 920721173 448881532 736624310 79509313 736237188 990121035 23262398 349076114 640849273 196460706 884072178 458290565 748408317 324129364 331638088 727245017 632014852 19911869 917452919 664041213 266213579 1736950 153196022 592970093 295366548 509019925 457149478 187104147 735696627 790270533 896571061 732559957 884072178 19911869 746992914 48746678 882364001 781242822 941586175 771803404 131323888 404152565 982353486 934824360 683406807 307403622 551289217 251367294 266213579 970320952 407510599 7807006 152866011 601740259 417074904 636434256 830619816 522663253 152243323 866337119 553191189 850484222 893019475 246058339 663670886 853170454 745200166 918521256 431406787 968670974 67700412 137529801 215981255 588034909 471393875 179981178 136384659 451521521 465697134 247822207 745200166 708053570 778074990 506919968 264408147 53966525 228290502 887548285 80415088 458290565 757815664 744008188 67700412 735891721 28363157 496698204 799588075 488788762 151364594 394791153 638516505 806792339 456956861 448881532 29069209 256866745 750563611 943235508 525347105 250885472 303230482 121069546 306258744 938705675 982353486 546141085 705304879 942899938 77819776 630977998 478351140 506178629 251188854 81337657 177689820 79523589 464130920 55108095 255644658 674446970 696443558 403519778 994877696 2076768 417074904 719601437 982370833 686884353 202477791 330274784 652018277 607760956 254203892 729868696 736237188 885353274 326469359 35128915 740882715 475344103 21190596 330274784 681765297 616057762 135975430 272303478 366854683 938080232 142903358 136412292 938140278 172382592 98824830 698320352 23973553 719601437 587469038 859168292 532803593 195019158 242186770 218611070 242186770 403519778 637657473 433921335 408395896 597784477 210621083 776835194 24188768 559957428 712346140 667844649 498840912 687055288 133739154 711532060 660095934 134971740 115509283 475344103 387176309 829614460 900116034 79509313 274113481 49948206 637657473 858798711 913521589 815123402 542382913 225858850 284588557 607965234 688534928 932715562 610834602 496698204 538810384 984047482 975337465 758889515 148087911 60017144 93478833 145885851 206036522 507016471 877167702 831380531 862177563 81337657 795549341 311808379 264408147 264100442 633573519 676975489 797746066 996943901 945394518 4519262 918225489 37275245 688534928 441621000 295366548 338929165 32806834 63192647 831467447 746394036 123073176 464444922 776352608 215289803 641635851 272303478 628523361 572465104 190979155 249820698 53525809 218611070 773781000 990121035 705304879 282751746 275349681 667844649 804406873 174335822 862177563 175060805 136384659 264297813 877088774 376974209 503666498 388085842 311613451 656191811 539381059 249820698 202477791 134801439 214244685 963141978 201717402 790270533 921198791 884952974 162062292 761330904 702364434 749497174 135975430 36055646 135975430 112390393 746992914 676975489 140129038 288072509 308142020 207442482 268759041 604181881 776820092 674446970 209789164 943793512 151364594 287768226 840130613 632378665 735696627 79509313 296305836 531135820 39220584 616796881 738612855 969494113 136384659 531333917 910850066 190323279 982416551 32954995 602396426 209497607 591292508 628820972 586370291 114409323 757815664 232177196 763431295 478892468 67700412 288873549 502849508 195019158 358401766 620243558 456956861 396138845 42657625 36265302 955501918 842970782 47290536 98231977 553191189 165821462 893019475 103219970 60750487 556619020 538810384 932715562 492009082 223299794 67831588 589760538 675472009 396937914 843005594 711532060 562773407 507016471 214650974 68748842 98824830 155241439 864016134 602832600 598543708 448881532 269911067 369306500 275349681 396138845 41538784 49614749 626932919 808838846 858127225 850484222 550336314 250885472 941586175 205387898 40656291 527595027 417074904 891279504 860377902 968670974 93478833 842970782 210621083 2575238 753419354 554242697 851400664 711532060 115509283 7807006 703514531 860708299 843005594 458363994 770993588 226492467 926044257 215289803 40448245 103219970 322974842 262406489 303230482 134801439 687988023 196460706 162062292 314069534 953882020 607965234 966683628 964902255 32075030 522332929 804406873 390793037 540976336 288072509 72820570 829614460 396743027 722013570 827311105 247822207 351424753 516175014 326469359 624819674 53226850 405444604 271484655 330205547 514650194 283321520 251042004 641231120 210621083 623206361 662421393 207442482 304621545 916956968 396050095 330205547 247006479 400218902 567774282 838803091 305990981 359714925 268759041 641231120 586446680 338929165 305990981 571019028 1926282 732559957 827311105 664041213 950497221 371179314 688534928 433921335 539957336 264297813 705548145 225858850 72820570 618355033 286037808 167276070 41538784 324986193 705304879 737945381 619842427 63192647 387176309 962073361 259646582 729868696 10475035 808838846 780870754 996943901 162062292 170941326 15037608 729868696 38844979 806744033 266213579 81337657 656623172 975478549 884059813 441621000 430284321 708053570 780870754 838803091 424594759 459617527 685702028 989729323 591292508 464444922 982353486 190323279 709613471 721769014 827311105 587179274 896571061 179981178 958668995 971549242 332834875 888259120 763431295 943235508 73848009 509370562 966131311 338929165 53226850 667313812 858127225 601740259 704431513 896029805 860377902 252792947 275349681 311808379 10475035 330274784 332834875 573449906 626833449 334932282 123073176 874297853 583924389 943235508 422532994 112090095 186285312 475344103 6720560 579757115 94279561 250749017 703490607 193515742 838331644 971549242 876263470 916956968 838331644 290474734 877088774 172894131 1926282 698320352 484158080 509370562 230662076 554242697 525347105 310726569 917795074 676975489 917795074 964902255 80415088 852604705 203331888 686884353 422532994 179991869 843005594 349076114 183440003 638790258 704431513 10369081 884072178 27735709 174140940 735891721 60750487 960796073 503666498 780061015 567948101 24089615 354807942 420636144 738612855 718980624 610447918 581831913 53226850 889608806 128188331 727245017 109369069 298050322 630201811 458156391 602396426 290474734 498840912 978947655 242530683 155241439 215774690 997329398 816971086 48746678 746092812 478892468 432089082 866337119 946612927 175060805 632014852 850484222 947413305 971549242 803588261 404152565 931966477 251367294 754580366 694954883 830619816 55108095 237389399 252792947 275349681 505061211 760231333 388085842 807117750 516175014 136384659 317751260 992001870 27735709 827311105 179981178 431406787 387703244 1926282 925555858 577970627 635302209 49317804 854243215 786380583 932715562 1926282 174335822 303230482 969494113 632402794 764116955 570764323 546141085 946612927 733642252 351424753 509019925 152523810 995876182 28363157 193515742 13112382 165821462 40656291 448881532 753419354 872434540 128188331 641231120 778074990 353964006 586370291 749497174 926044257 48746678 801623766 53195413 292149520 15903366 595030753 48746678 628523361 996943901 824770361 962430008 736624310 349644605 685702028 458290565 548748527 215289803 595030753 628820972 941586175 810021050 532803593 582273012 444897967 539035187 969294148 789617647 702364434 241184545 193648030 509370562 877088774 338312978 553368896 369306500 896571061 299994808 806664207 579757115 567343883 325554372 630775839 587179274 331638088 179991869 74587532 944573659 32806834 650036494 177689820 505061211 527654256 2076768 837690635 943235508 247221668 488788762 840130613 249820698 53226850 79509313 407510599 968670974 884059813 592970093 630775839 317751260 32075030 190323279 183440003 172894131 886917295 505061211 610447918 566554997 196106606 607041944 675472009 496698204 795549341 56927881 396050095 36055646 922858580 638790258 696443558 688177128 954677909 456137963 851400664 7807006 228290502 361002681 13112382 581831913 242186770 938080232 736237188 971549242 401452903 378961655 586446680 689757867 600441802 400218902 617908997 226492467 484158080 359714925 538025980 33511708 585165457 119279869 944068218 136412292 550336314 971549242 98287438 993091440 23973553 475344103 132556595 32954995 152618584 885647994 675472009 978947655 151364594 4519262 585165457 77685914 387176309 2575238 266213579 290474734 840130613 604881661 562773407 889608806 503666498 437743643 735696627 248642173 513440742 938080232 156817178 299462930 702364434 829983432 567343883 789617647 663971090 539035187 186285312 32954995 289918211 388085842 551289217 19715614 799588075 852755974 15037608 451521521 860377902 10369081 598543708 775682536 802009078 334211676 877167702 396937914 946916156 912948600 956286779 520071928 129724737 38085353 23973553 51457589 641635851 934824360 502849508 708094860 969294148 607965234 47290536 750978759 292972503 711455867 650990283 866337119 969294148 405444604 663971090 970320952 64420967 220576148 882364001 543945175 703490607 170941326 539381059 853903669 38338132 688177128 824770361 66490779 101231409 252962990 244528344 853903669 358401766 570796148 660765062 298050322 196106606 145885851 210621083 38085353 351424753 719601437 131323888 40131409 770864525 554242697 484158080 24089615 740340897 866337119 56154381 979750308 626833449 249670598 247234349 729868696 292149520 287768226 831467447 38304068 550336314 288072509 958668995 938456692 910850066 250749017 451817798 688177128 795549341 630238886 882364001 134971740 921198791 788118407 527654256 396632533 757815664 781246194 703514531 885647994 602396426 33511708 201717402 566125822 947413305 629101079 696443558 589760538 140129038 668964848 586446680 782533040 650697444 393120342 533864165 51457589 567948101 215289803 597206610 382904427 923927991 708046990 210621083 226492467 115090276 628820972 99294732 636434256 757850417 943235508 125829791 248642173 809429735 613596687 900116034 408032939 591292508 262406489 888699423 667844649 298727845 79509313 675472009 573480571 292696118 252962990 637657473 403519778 42657625 112090095 538810384 19911869 292696118 27735709 653201202 688177128 920721173 121069546 242028021 630629857 931640418 942899938 162062292 128450928 80415088 808838846 602396426 550322314 539381059 382210484 831467447 63192647 302151126 764459345 464130920 56927881 572588387 68748842 838655651 390275103 196106606 353964006 553191189 942899938 778074990 732559957 304621545 420636144 125204206 264100442 950497221 79523589 982370833 831380531 306258744 47349911 151506993 241184545 214650974 505061211 358401766 159828635 103669472 172382592 540976336 635302209 860377902 870201182 797746066 735891721 757850417 40131409 23262398 711455867 286037808 582273012 203331888 143200457 723661847 737945381 738612855 218611070 129724737 249820698 568104980 597784477 637657473 376974209 215981255 155241439 618542887 726950461 575023903 19715614 663670886 252962990 857535330 943793512 954227928 404152565 628523361 324129364 953882020 256866745 956286779 112090095 618542887 458363994 203331888 282751746 538025980 727578179 29069209 330205547 151506993 566125822 803588261 859168292 293192373 808614164 31215478 330205547 126695727 324129364 457149478 694954883 858127225 888259120 583924389 516175014 140129038 325554372 877088774 942899938 738612855 686335042 286037808 618355033 840075867 29473993 490344724 587179274 966683628 220576148 719307635 4519262 771321738 754133002 117931902 800460688 860377902 994587826 190979155 172382592 193648030 582273012 547547687 852107700 77819776 662972501 687988023 338631458 489130642 775682536 570764323 991615550 722768643 4519262 740882715 698320352 953882020 223299794 242530683 119279869 201717402 287768226 259646582 853170454 109369069 790270533 630775839 10369081 926044257 246221518 153196022 573480571 432089082 815123402 719307635 991615550 331638088 718980624 433686203 806744033 234980621 215052415 133739154 635302209 538025980 997329398 702364434 342116147 723661847 722013570 640849273 40131409 484158080 896029805 284588557 138442062 489612980 831380531 41538784 737945381 979740237 353964006 499057158 708094860 831467447 686335042 93478833 458290565 915330573 872434540 295366548 962430008 292149520 172894131 650990283 264100442 619842427 646710523 803588261 287768226 982370833 282751746 641635851 19911869 125829791 841210236 840075867 361002681 843005594 134801439 492009082 24089615 67831588 328764419 326469359 668964848 42657625 850484222 186285312 812414090 969294148 668964848 931086800 449022331 572588387 360743135 691982506 851759377 640849273 636434256 979740237 810021050 567774282 165821462 597206610 984047482 518384931 112390393 854902633 829983432 103733806 994587826 656623172 808614164 900796599 66490779 840075867 5299425 633587956 317751260 430088921 285947848 780870754 307060809 195957995 55108095 816971086 628820972 28363157 627110568 332834875 764116955 502849508 195733178 257214051 413592826 431406787 628820972 927806038 349644605 927806038 390793037 575895835 592981604 860377902 376974209 675472009 870201182 56154381 506178629 533864165 858798711 255644658 38085353 956286779 912948600 28363157 10369081 13112382 338631458 604968568 630629857 840130613 515426984 760370490 456137963 770993588 910818482 904771946 170938835 575023903 757709512 581063820 702745028 465697134 349076114 618542887 641231120 295366548 934824360 270237875 732559957 786380583 687055288 931086800 371179314 702364434 506178629 306607837 689757867 885995802 246058339 929504680 722013570 215792516 682170984 546679009 390275103 740882715 852604705 50241607 970911538 154538466 618355033 129724737 327773233 857535330 288072509 709613471 163229392 322974842 225771141 103733806 400178823 444897967 179981178 257214051 870201182 911302173 252792947 709613471 646710523 940188502 688177128 306607837 140725908 438183310 942866882 663670886 829614460 851400664 52243955 953882020 307060809 967417280 306597948 603931167 616796881 704431513 24089615 548748527 842970782 840130613 298050322 396050095 223299794 366854683 361002681 268759041 968755777 967417280 404152565 637657473 963141978 181668423 859168292 885995802 539035187 770993588 543945175 6720560 942866882 719307635 817743547 455539394 506919968 304621545 885141769 284588557 750750593 700560235 923715439 328462418 641231120 190929591 47349911 326469359 543945175 117931902 993091440 162062292 4519262 595030753 458290565 862254110 932715562 98824830 448881532 269911067 960543625 28363157 514768035 268759041 764116955 10475035 727578179 830619816 60017144 876868627 962073361 685702028 287768226 80485362 853170454 904771946 983113723 311613451 744008188 771321738 767839638 489612980 726950461 375066210 112090095 696443558 306597948 956286779 944573659 128188331 60017144 366854683 179981178 82689280 522332929 705304879 226492467 827311105 327773233 215774690 623206361 598426014 60017144 770993588 246058339 806664207 315343704 151364594 462394151 994877696 288072509 278160655 984050047 375066210 708094860 638516505 719601437 780870754 938080232 93651148 835198840 882364001 441621000 308142020 249820698 929504680 175507355 53525809 2575238 994877696 394791153 13112382 750750593 138393155 970320952 152866011 390793037 674485068 764116955 77819776 729868696 723661847 554242697 455539394 119279869 259646582 630977998 289918211 602832600 994877696 29473993 700560235 330274784 770993588 885353274 778074990 630629857 480361743 629101079 396806189 249820698 264750083 441621000 886149363 624819674 271484655 462394151 922858580 134971740 28363157 103219970 438183310 458156391 626932919 800460688 860477160 842970782 135975430 170941326 115090276 334932282 67831588 213097363 661321016 485262404 74587532 630977998 770864525 733642252 478351140 993091440 687988023 140551765 786380583 60017144 600441802 128450928 638516505 570796148 888553258 887548285 797746066 299994808 488295044 727245017 946612927 866568903 38844979 488788762 503666498 604881661 748408317 522332929 271484655 2379379 82689280 509370562 938140278 746394036 457149478 207442482 78649514 51457589 663971090 729868696 133739154 702745028 284588557 793291205 306607837 338631458 328462418 885353274 703490607 449022331 133739154 38304068 152243323 750978759 567343883 620243558 674485068 330205547 553191189 815123402 704431513 32954995 462762217 887548285 533864165 667844649 975337465 282751746 215774690 396937914 641635851 79509313 153196022 420636144 210621083 782533040 103733806 137529801 862177563 808838846 275202504 53195413 705304879 112090095 585165457 682170984 929504680 566125822 215774690 587179274 917452919 195019158 920628541 689757867 56154381 650036494 886149363 938705675 117931902 446968233 251042004 577673184 21190596 400218902 462762217 628820972 13112382 307060809 344876805 427184372 275202504 283321520 268759041 172894131 244528344 636434256 703514531 806792339 67700412 237172271 958668995 19911869 99294732 218611070 950673785 972710252 691982506 128450928 303230482 968755777 328462418 981996224 502849508 620243558 703514531 628820972 795549341 970911538 214650974 858798711 877167702 36055646 619842427 209497607 944068218 2575238 801623766 145885851 142903358 835198840 979740237 624819674 303230482 488788762 31215478 505061211 295606018 478892468 6720560 884952974 274113481 324129364 489130642 887548285 344876805 885353274 502849508 246221518 623398671 451521521 290117216 938080232 703514531 338312978 992001870 48746678 663670886 916956968 334299650 388085842 753419354 630629857 156817178 984047482 321628921 566554997 567774282 509370562 425392410 117210451 492009082 495854210 681765297 543865019 28363157 112090095 946916156 136412292 702364434 485063015 547547687 942866882 247221668 179991869 471393875 396138845 604968568 359714925 592639233 543865019 617908997 307060809 710224239 464444922 269911067 623206361 128188331 170938835 927806038 98231977 946916156 267829614 244528344 376974209 760231333 248642173 754580366 543945175 163769090 866568903 797746066 995876182 396806189 342116147 513440742 250885472 645094664 853170454 93651148 456137963 422532994 53966525 47290536 496698204 591292508 485063015 548748527 288072509 992001870 683621666 125204206 678474526 595030753 885647994 840075867 408032939 351424753 942866882 457149478 296751278 709613471 24089615 803588261 287239117 746092812 266583970 931640418 647733367 433686203 620243558 49317804 388085842 133739154 287239117 138393155 788118407 270237875 546141085 768561257 55108095 527654256 616057762 444897967 264297813 334299650 607760956 683406807 858798711 80485362 143200457 53226850 962073361 877167702 33511708 628523361 907095826 585165457 475344103 994877696 205387898 994877696 582273012 247221668 831380531 715779797 134971740 284588557 620243558 942999703 907095826 478351140 134971740 247221668 559957428 736624310 249670598 481894295 994587826 481894295 550322314 696443558 668964848 904771946 498045048 498840912 19911869 264408147 650036494 703514531 781242822 751925989 315297566 498840912 812044550 854969794 498045048 498840912 128450928 929504680 896072909 351424753 24089615 931966477 781242822 193648030 630977998 488295044 602832600 704431513 49948206 74587532 342116147 926045944 237172271 674485068 852755974 954677909 361002681 575895835 506178629 619842427 485509833 334299650 938705675 587469038 155241439 888699423 511277493 138393155 515426984 838655651 396138845 554222239 767187616 304621545 382904427 765027062 726950461 650990283 400178823 786380583 361002681 900796599 27735709 50241607 1736950 688534928 570796148 808866527 476912096 954227928 546141085 311613451 313272965 645094664 851829959 135975430 560327459 941586175 390793037 375066210 387703244 994877696 195733178 637769046 535533605 456956861 334211676 60750487 152314280 816971086 349076114 271484655 589760538 433686203 771803404 770864525 996943901 321628921 789617647 886149363 674446970 417074904 179991869 982416551 464444922 617908997 63192647 862254110 573449906 831467447 570796148 931086800 195733178 592639233 739696834 214650974 607041944 618542887 81553943 603931167 560623000 663971090 697742034 214650974 128450928 920721173 195019158 542382913 478892468 292972503 683621666 264408147 969494113 917452919 560327459 719307635 56927881 738612855 694954883 396050095 2379379 637769046 103219970 152618584 841780337 125829791 963141978 874124920 674446970 275349681 650036494 864016134 249670598 886917295 296751278 214244685 902464469 432089082 458363994 598426014 854243215 681765297 764116955 162062292 353964006 583924389 934824360 746992914 968670974 363976852 330274784 827311105 630238886 838655651 942899938 234980621 997329398 208625324 140551765 361435434 650036494 768561257 306597948 190979155 689757867 234980621 767187616 98287438 630238886 575023903 485063015 572588387 851759377 242186770 632378665 358401766 55018341 887794841 250885472 886149363 699733109 885995802 806792339 572588387 943235508 480361743 557710104 982370833 134971740 512614298 531135820 922858580 812044550 214244685 509144872 956815883 353964006 814295984 78775552 67831588 52243955 626833449 592970093 715779797 514768035 295366548 757709512 816971086 264100442 485153920 63192647 804406873 448881532 926045944 808838846 788737791 464444922 743614603 790270533 425392410 938456692 125829791 19911869 41538784 713146141 591292508 853903669 358401766 722013570 289918211 989729323 814662325 213097363 681765297 984047482 298727845 962073361 247234349 721769014 331638088 399037712 722768643 459452716 773781000 970320952 513440742 246221518 944068218 806792339 295366548 119279869 768561257 207844781 234980621 632378665 601630030 515426984 956286779 732559957 966683628 556619020 740340897 887548285 145559297 88335614 797746066 662972501 548748527 413592826 430101007 7807006 242028021 162904272 950497221 334932282 115090276 19911869 917452919 810021050 430284321 527595027 209789164 36265302 949084393 371179314 387176309 405444604 949084393 494336936 650990283 33511708 298727845 522663253 274113481 56927881 502849508 613596687 540394532 885353274 10475035 287239117 126695727 299994808 31615284 47349911 38338132 313272965 760231333 831241130 387176309 851829959 595030753 106790696 801623766 972710252 56154381 327773233 945394518 63192647 210621083 396632533 60750487 602832600 117931902 252962990 215977916 396937914 50241607 506178629 575023903 32954995 50241607 458363994 215774690 452156279 953882020 589760538 140129038 55108095 628523361 403519778 926044257 762749463 877167702 566554997 941586175 590918818 274113481 851829959 311613451 630238886 705304879 400178823 148087911 781246194 551289217 175507355 710224239 478892468 28363157 317751260 244528344 371179314 242530683 604181881 774489082 767187616 886149363 264100442 254203892 636434256 181668423 509664709 502849508 138442062 956286779 174335822 538810384 960796073 886149363 630238886 971894015 889608806 375066210 968670974 610834602 993091440 136384659 771803404 918225489 246058339 626932919 448881532 215792516 52243955 407510599 641231120 366854683 667313812 354807942 399037712 546679009 172382592 444897967 912948600 274113481 979750308 190979155 667844649 117931902 960796073 854969794 888259120 305068796 910818482 575895835 246058339 652018277 902464469 688534928 842970782 268759041 686884353 29069209 602832600 293192373 997329398 824770361 174862116 850386354 146573202 929504680 310726569 633587956 256866745 950673785 317751260 750563611 955730659 292149520 722013570 770864525 907721720 743614603 337153847 412979540 718980624 181668423 179981178 547547687 400218902 778074990 476912096 39220584 971549242 131323888 735710261 982370833 327773233 628523361 761330904 770594967 136412292 757815664 989729323 417074904 767187616 266213579 207844781 816971086 330205547 284588557 338929165 264750083 324986193 618542887 650036494 950673785 266583970 753419354 932715562 770993588 746394036 592639233 592981604 835339516 522663253 270237875 337153847 334299650 7807006 215774690 831380531 746992914 817743547 109369069 944573659 877088774 360743135 958668995 264297813 688577702 112090095 209789164 299994808 911302173 359859765 289918211 250749017 626932919 247822207 840075867 944573659 570764323 662972501 254203892 283321520 208625324 24089615 637769046 831241130 674485068 969494113 98287438 324986193 860477160 196460706 429277230 965948435 814662325 858040709 661321016 463496366 42657625 338631458 115090276 353964006 581063820 942899938 67700412 51457589 242530683 616796881 527654256 882804101 719307635 592981604 696443558 560623000 637769046 298050322 142903358 311808379 268759041 448881532 650697444 232177196 154538466 970911538 247006479 940381563 553191189 134801439 661321016 888259120 900116034 328764419 471393875 571019028 770594967 732245352 430101007 990121035 663971090 835212499 917795074 702745028 562773407 53195413 702364434 2076768 53525809 328764419 211958450 140725908 257214051 20148474 375066210 698320352 40656291 485262404 292696118 962073361 590208882 393120342 305068796 955730659 712346140 522663253 332834875 459452716 247841801 476912096 570764323 287768226 837690635 560327459 123073176 404152565 38338132 831241130 602396426 376448548 917795074 815123402 387176309 531333917 601630030 838803091 306258744 938080232 195957995 338929165 688534928 77685914 532803593 87392830 290117216 782533040 429277230 817743547 630201811 163229392 56154381 656191811 860377902 647733367 992001870 464444922 465759767 866568903 778074990 175060805 904800517 47529701 630201811 789617647 396050095 812044550 590208882 143200457 940188502 307060809 788737791 145885851 623398671 887548285 660765062 140725908 148087911 296751278 354807942 940381563 923927991 989729323 942999703 817743547 40656291 103219970 757850417 29473993 203331888 737945381 931086800 324986193 408395896 638790258 911302173 792822959 302151126 172382592 387176309 68748842 98824830 907095826 931013644 852107700 753419354 20148474 132556595 531135820 266213579 509370562 760370490 49948206 773781000 313272965 412979540 548964093 955501918 975478549 98824830 98231977 885995802 393120342 735696627 437743643 715779797 446968233 242530683 376974209 956815883 66490779 936312210 884952974 971894015 953267424 264408147 726620654 181668423 397928982 570764323 646710523 407629453 324129364 878442641 509370562 770993588 624819674 152618584 711455867 448262245 394791153 746992914 955730659 806664207 174862116 151364594 98231977 375066210 282751746 261683638 250885472 835339516 207844781 303230482 943235508 931013644 488788762 807117750 942899938 40656291 246221518 721418370 984050047 244528344 388085842 654830523 215052415 562773407 806792339 757850417 711532060 99294732 739696834 255644658 993091440 429277230 288072509 422532994 851829959 932584021 324129364 936312210 112390393 630201811 249820698 904800517 36055646 900116034 424974082 145559297 328764419 538810384 359714925 577970627 786320493 28363157 252792947 586370291 405444604 896571061 232177196 242028021 589760538 247221668 858040709 266213579 560327459 422532994 509144872 532803593 485509833 918225489 744008188 628523361 250832323 358401766 448881532 145559297 338929165 703514531 170941326 527654256 746394036 683406807 618355033 518384931 787269565 788737791 831241130 152523810 310726569 688577702 155241439 770864525 983113723 913521589 179981178 464130920 579757115 215977916 506919968 662421393 187104147 471393875 859168292 115509283 187104147 259646582 40131409 242028021 726950461 591292508 509370562 893019475 789617647 49317804 330205547 31215478 33511708 322974842 248642173 242028021 413592826 712346140 602832600 688577702 934824360 152866011 371179314 696443558 870201182 583924389 686335042 860377902 776835194 776352608 307060809 567948101 426814174 23973553 437743643 358401766 978947655 854969794 19911869 760231333 866568903 877088774 226492467 804406873 535533605 922706719 737945381 946916156 970320952 177689820 918521256 705304879 170941326 512614298 996943901 808866527 506919968 464130920 781242822 598543708 732559957 904800517 587179274 921198791 851829959 753419354 750978759 982370833 963141978 271484655 975478549 295606018 943235508 567343883 560327459 681930584 866337119 886917295 910818482 361435434 744008188 703490607 995876182 806664207 885000402 422532994 128450928 783513992 744008188 214650974 262406489 776352608 761330904 590208882 888259120 21190596 993091440 966683628 250832323 40656291 403519778 695599688 459617527 396806189 15903366 695599688 441621000 209789164 458290565 183440003 646710523 101231409 972710252 740882715 590918818 886917295 851759377 660095934 647733367 931966477 52243955 480361743 159828635 926045944 515426984 433686203 195019158 946612927 170938835 430284321 566554997 195957995 732245352 803588261 60017144 746992914 55018341 877088774 159828635 295606018 708046990 123073176 629101079 485153920 539035187 214650974 403519778 770993588 776835194 904771946 719601437 688577702 159828635 661321016 369306500 456956861 195733178 568104980 121069546 715779797 858798711 597206610 793291205 691982506 250749017 783513992 452156279 936312210 462394151 886149363 546141085 208625324 852755974 838331644 726950461 771321738 342116147 214244685 838803091 286037808 682170984 922706719 994587826 809429735 557710104 966131311 232177196 196106606 19715614 550336314 767839638 367026304 676975489 750563611 19715614 32075030 851829959 958668995 806792339 375066210 851759377 242186770 522663253 28363157 140551765 302151126 352092606 269911067 515426984 211958450 498045048 538025980 607965234 663670886 866337119 827311105 789617647 884072178 708046990 940188502 522332929 72820570 29473993 876868627 968755777 533864165 117210451 305990981 140725908 705304879 315343704 292972503 427184372 334299650 635302209 936312210 223299794 597206610 79509313 904800517 735710261 736237188 729868696 465759767 990121035 926044257 267829614 618542887 806744033 31615284 531333917 417074904 264100442 663670886 449022331 969294148 572465104 884072178 250885472 47290536 20148474 971894015 232177196 953882020 225858850 242530683 972710252 156817178 780061015 210621083 288072509 513440742 264297813 645094664 817743547 876868627 40131409 133739154 860708299 633587956 699733109 115509283 682170984 545538425 441621000 275349681 527595027 40448245 764116955 572588387 165821462 774489082 114409323 269911067 764459345 585165457 647733367 131323888 315343704 94279561 225771141 247006479 359714925 679463383 776835194 292972503 885647994 196106606 597784477 586370291 719601437 292972503 968670974 802009078 841210236 206036522 858798711 448262245 427184372 850386354 940381563 735696627 934824360 259646582 887548285 740882715 808838846 769327548 220576148 550336314 923715439 326469359 559957428 920628541 520071928 292149520 464444922 944068218 427184372 503666498 215052415 721418370 60017144 586370291 237172271 882364001 78775552 101231409 310726569 290117216 896072909 145559297 394791153 900116034 458363994 190929591 729868696 268759041 786320493 751925989 36055646 261683638 388085842 835339516 543945175 577970627 761330904 117931902 287239117 275349681 296751278 581063820 874297853 292696118 925555858 617908997 353964006 590208882 98231977 585165457 476912096 136384659 630629857 917452919 140725908 31615284 689757867 525347105 485262404 195957995 806792339 660095934 572465104 851400664 456137963 958668995 7807006 587469038 448881532 618542887 858798711 650697444 272303478 581063820 218611070 583924389 276676140 788737791 687055288 396743027 475344103 201717402 888259120 653201202 729868696 788737791 396937914 215981255 285947848 230662076 531135820 586446680 397928982 982416551 458363994 904771946 506178629 152523810 571019028 545538425 509370562 126695727 885353274 80415088 790270533 551289217 138442062 674485068 793291205 332834875 732559957 261683638 325554372 518384931 727827821 74587532 587179274 715779797 459452716 674485068 249820698 247221668 981996224 703490607 505061211 685702028 478892468 922706719 835212499 299113502 938705675 77819776 328764419 994877696 349644605 31615284 376448548 202477791 788118407 396806189 220576148 878442641 426814174 831467447 361002681 709613471 494336936 151364594 121069546 586446680 187104147 38338132 678474526 275202504 452156279 251188854 338929165 39220584 943235508 41538784 800460688 590208882 991615550 575895835 792846009 53226850 882804101 431406787 604881661 21190596 678474526 259646582 81337657 751925989 733642252 743614603 283321520 322974842 971549242 430088921 179981178 60750487 81337657 133739154 371179314 457149478 548964093 247841801 205387898 687988023 287768226 637769046 852107700 465697134 369306500 860377902 394791153 366854683 896072909 946916156 708053570 595030753 979750308 750563611 397928982 10475035 324129364 838655651 624819674 244528344 526944836 640925332 378961655 193648030 170938835 567343883 207844781 590208882 682170984 465697134 989729323 944068218 687055288 471393875 187104147 637769046 117210451 920628541 694954883 719307635 602832600 67831588 781242822 98824830 128450928 244528344 838803091 286037808 1736950 736237188 103219970 375066210 172894131 851400664 582273012 331638088 511277493 417074904 721769014 967417280 393120342 32075030 446968233 538810384 767187616 736237188 163229392 512614298 81553943 80415088 522332929 931640418 175060805 196106606 130160246 67700412 727245017 751925989 287768226 38338132 207442482 93478833 708046990 193648030 130160246 618542887 907095826 799588075 577673184 572588387 592970093 363976852 143200457 502849508 27735709 876263470 218611070 186285312 896072909 152523810 708046990 896571061 515426984 650697444 387703244 663670886 488788762 947413305 739696834 304621545 526944836 687988023 338312978 484158080 664041213 583924389 577673184 153196022 463496366 201717402 718980624 214650974 251367294 237389399 859168292 681930584 628820972 932584021 604881661 49317804 485262404 681930584 109054120 131323888 476912096 911302173 310726569 982416551 400218902 244528344 971549242 154538466 285947848 610447918 48746678 99294732 938080232 900116034 36265302 230662076 218611070 162062292 338312978 776352608 167276070 49317804 378961655 296305836 252792947 513440742 60017144 683406807 456137963 247221668 376448548 769327548 282751746 326469359 252962990 230662076 885353274 190979155 715957434 228290502 739696834 367026304 646710523 760370490 396937914 966131311 543945175 527654256 394791153 83066601 789617647 387176309 282751746 156817178 476912096 214244685 128450928 539957336 98231977 78649514 858798711 712346140 630977998 181668423 942899938 773781000 382210484 876263470 27735709 757850417 841780337 685702028 792846009 451817798 306597948 39220584 121069546 407629453 249820698 778074990 79509313 539381059 896072909 746992914 376974209 618542887 451551269 814295984 282751746 125829791 715957434 773781000 327773233 776820092 443960759 49317804 186244437 562773407 427184372 432089082 24089615 913521589 757709512 922858580 662972501 548748527 338312978 542382913 162904272 290117216 174862116 702364434 324986193 268759041 628820972 904800517 338929165 874124920 24089615 878442641 48746678 28363157 620243558 757850417 172382592 73848009 925555858 67700412 925555858 13112382 557710104 67700412 854243215 50241607 682170984 922858580 943793512 538810384 539035187 448262245 252792947 152618584 38085353 186285312 328764419 444897967 424974082 553368896 546141085 814295984 506919968 278160655 225771141 23973553 767187616 910850066 32954995 586446680 815123402 877167702 511277493 586446680 324129364 678884863 307060809 736237188 938705675 242028021 624819674 864016134 162904272 275349681 566554997 42657625 495854210 24188768 207442482 23973553 938705675 1926282 29473993 117931902 589760538 315747769 853170454 261683638 560623000 888699423 983373150 492009082 175507355 511330454 514768035 151506993 557710104 67831588 667844649 723661847 396632533 422532994 458290565 115090276 248642173 913521589 103219970 407510599 237172271 637769046 324986193 884059813 264297813 982370833 338312978 425392410 762749463 32806834 209497607 201717402 79509313 776352608 708094860 650697444 702745028 736237188 852755974 219054502 554242697 944068218 789617647 98287438 560623000 306258744 68748842 251188854 792846009 465759767 749497174 774489082 315343704 109369069 159828635 10475035 307060809 946612927 968755777 754580366 708046990 688534928 382210484 464130920 852755974 98287438 866568903 753419354 451551269 553191189 829983432 774489082 764116955 306607837 60017144 626932919 399037712 982353486 506919968 430088921 993091440 292149520 451521521 958668995 334211676 770864525 55018341 354807942 726620654 583924389 667313812 457149478 251367294 244528344 49948206 623398671 676975489 533455280 140725908 292972503 767839638 797746066 715957434 945394518 283321520 926044257 962073361 681930584 698320352 270237875 433921335 705304879 246058339 940188502 992169078 1926282 891279504 917452919 393120342 306258744 882804101 754580366 237172271 152866011 324129364 43970470 708046990 827311105 424974082 80485362 625664180 598543708 539035187 904800517 697742034 610834602 515426984 408395896 699733109 292972503 912948600 600441802 597784477 814662325 498045048 533455280 782533040 15037608 464444922 982353486 711532060 430101007 787269565 955501918 764459345 430284321 889608806 538810384 991615550 478351140 786320493 712346140 47529701 367026304 63192647 695599688 962073361 151506993 854243215 932584021 577673184 257214051 509144872 705548145 262406489 971894015 859168292 152243323 352092606 465759767 602832600 163769090 934824360 681765297 775682536 31215478 776835194 407510599 49614749 788737791 382210484 24188768 721769014 598426014 831380531 228290502 252792947 432089082 399037712 306607837 590918818 915330573 29473993 31215478 543865019 420052652 399037712 417074904 960796073 109369069 485063015 884059813 360743135 326469359 49614749 567948101 729868696 1926282 36055646 151506993 452156279 553368896 56927881 843005594 162904272 457149478 413592826 663971090 577673184 138393155 975478549 42657625 851829959 628523361 630238886 954227928 910818482 824770361 989729323 311613451 218611070 967417280 787269565 947413305 912948600 94279561 854243215 540976336 650036494 632014852 790270533 328462418 604181881 490344724 324986193 29069209 627110568 98824830 918521256 946612927 850484222 193648030 955730659 641635851 616796881 286037808 604881661 640925332 975478549 702364434 944573659 754580366 209497607 480361743 134801439 138393155 548964093 215792516 241184545 921198791 134801439 681765297 399037712 878442641 932715562 430284321 735891721 1926282 572465104 465697134 739696834 751925989 699230813 424594759 207442482 681765297 682170984 420052652 698320352 451817798 711532060 533455280 778123726 242186770 4519262 640849273 531333917 685702028 991615550 940188502 162904272 736237188 853903669 938140278 698320352 99294732 35128915 750563611 20148474 308142020 850484222 430284321 896029805 681930584 697742034 67831588 969494113 302151126 963141978 444897967 939725993 591292508 400178823 481894295 2379379 814295984 36055646 326469359 56927881 855636134 860708299 420052652 459617527 946612927 256866745 298727845 885647994 926045944 63192647 247221668 205387898 489612980 993091440 80415088 187104147 156817178 225858850 929504680 984050047 904771946 757709512 431406787 852755974 638516505 885141769 499057158 49614749 695599688 349644605 38338132 789617647 946612927 767839638 778074990 932715562 242028021 223299794 72820570 613596687 74587532 997329398 375066210 702745028 969294148 330274784 247841801 413592826 674485068 47349911 850386354 607760956 99294732 607965234 428572243 990121035 598543708 516175014 917795074 581831913 456956861 290474734 311613451 179991869 47290536 962430008 831467447 146573202 982353486 48746678 269911067 592981604 41538784 762749463 292972503 252962990 38844979 458290565 545538425 186244437 610447918 767839638 921198791 112390393 774489082 667844649 945394518 495854210 196106606 582273012 471393875 800460688 840075867 77685914 955501918 55108095 308142020 522663253 431406787 800460688 675472009 485262404 237389399 160287690 760370490 458156391 954227928 408032939 525347105 526944836 136384659 984047482 428572243 624819674 681765297 592981604 430088921 152314280 93651148 938456692 931966477 48746678 953882020 313272965 438183310 152314280 492009082 262406489 763431295 613596687 917452919 874297853 502849508 835212499 311613451 36265302 926044257 969494113 539381059 997329398 93478833 459452716 101231409 488788762 860377902 179981178 271484655 390793037 328462418 764116955 884072178 889608806 358401766 256866745 209789164 656191811 126695727 708094860 748408317 337153847 315747769 2575238 931640418 452156279 809429735 554242697 619842427 943235508 512614298 568142039 195957995 459617527 331638088 870201182 432089082 226492467 770594967 674446970 430284321 907095826 846351340 408032939 322974842 462394151 163769090 130160246 98287438 632378665 705304879 613596687 874124920 964902255 28363157 790270533 769327548 721769014 438183310 225858850 887794841 938080232 754580366 750978759 429277230 296751278 465697134 604881661 214650974 912948600 632014852 572465104 824770361 739696834 511330454 667313812 40448245 496698204 628523361 910818482 661321016 190323279 259646582 962073361 428572243 674446970 567343883 272303478 705548145 968755777 271484655 237172271 193648030 984047482 82689280 136412292 638516505 667844649 776820092 937158597 321628921 722013570 542382913 806792339 940188502 806792339 15037608 53966525 753419354 393120342 886149363 636434256 753419354 112390393 129724737 835198840 904800517 960796073 683406807 249670598 135975430 396138845 946612927 838803091 563678994 522663253 956815883 744008188 575895835 683621666 652018277 190323279 860377902 205387898 148087911 902464469 575023903 172894131 195957995 616057762 780870754 841210236 940188502 554242697 705548145 175060805 29069209 413592826 931086800 98231977 10475035 87392830 540976336 396138845 396806189 994587826 163769090 516175014 499057158 134801439 678884863 52243955 773781000 19715614 685702028 241184545 488295044 750750593 203331888 554242697 748408317 907095826 632014852 451521521 904800517 572465104 709613471 938080232 877088774 560327459 41538784 137529801 464130920 994587826 23262398 359859765 38338132 588034909 600441802 87392830 814662325 32954995 601630030 744008188 322974842 969494113 275202504 179981178 488295044 699230813 126695727 711455867 757815664 991615550 433686203 307060809 768561257 163229392 304621545 683621666 308142020 733642252 358401766 884952974 290117216 143200457 831467447 160287690 918225489 509019925 73848009 758889515 966131311 713146141 855636134 325554372 736237188 938456692 98287438 511277493 254203892 509370562 553368896 835212499 306607837 566554997 650990283 287768226 864016134 762749463 42657625 531135820 966131311 781242822 93478833 334932282 572588387 620243558 660095934 767187616 773781000 581831913 710224239 616057762 683406807 829983432 551289217 937158597 28363157 543945175 538025980 711455867 700560235 556619020 806664207 793291205 306607837 241184545 587469038 19715614 480361743 943793512 862177563 934824360 148087911 152314280 186285312 624819674 142903358 629101079 234980621 559957428 746992914 478892468 738855203 53966525 982370833 938705675 94279561 298050322 982416551 787269565 23973553 607760956 911302173 842970782 209789164 885647994 208625324 573480571 770864525 276676140 538810384 509664709 135975430 63192647 769327548 287239117 542382913 955730659 809429735 396632533 401452903 264100442 109369069 458290565 49317804 607760956 499057158 24089615 234980621 907095826 553368896 287768226 128702236 60017144 628523361 394791153 803588261 896029805 464130920 851829959 743614603 146573202 93651148 427184372 967417280 463496366 874124920 396138845 432089082 687055288 703514531 225771141 539957336 934824360 210621083 66490779 219054502 729868696 451817798 248642173 559014304 77685914 904800517 56927881 586446680 697742034 174140940 313272965 966683628 35128915 270237875 226492467 47290536 749497174 581063820 870201182 769327548 854243215 539957336 539035187 746092812 872434540 533455280 674446970 550336314 237172271 950497221 960543625 645094664 916956968 408395896 175507355 67700412 190323279 922706719 852755974 539381059 337153847 827311105 632378665 604968568 112390393 710224239 577673184 251188854 838803091 15037608 60017144 60750487 317751260 230662076 996943901 783513992 853170454 278160655 485509833 884059813 792822959 177689820 232177196 50241607 749497174 814662325 746394036 814295984 246221518 702364434 509664709 103669472 607965234 915330573 152314280 428572243 462394151 361435434 778123726 542382913 313272965 478351140 342116147 958668995 835212499 840075867 718980624 308142020 361002681 305068796 780061015 451817798 68748842 126695727 624819674 736624310 209497607 598543708 463496366 954677909 616057762 838655651 891279504 705304879 566554997 932584021 771803404 553191189 650036494 920721173 338631458 598543708 970911538 67700412 182214511 64420967 635302209 884059813 264100442 154538466 404152565 736624310 888259120 736624310 548964093 877167702 299462930 975337465 882804101 982353486 647733367 215977916 288873549 109369069 732559957 430088921 306597948 674485068 852107700 768561257 134801439 115509283 735710261 660095934 288873549 678884863 550322314 103733806 853903669 633573519 276676140 738612855 522332929 208625324 944573659 763431295 543865019 587469038 543945175 585165457 112090095 290117216 287768226 738612855 699230813 915330573 682170984 322974842 859168292 824770361 36055646 142903358 396937914 448262245 546141085 321628921 170941326 142903358 399037712 513440742 782533040 653201202 475344103 857535330 404152565 887794841 516175014 570764323 250832323 754580366 852107700 857535330 831241130 292149520 155241439 824770361 498045048 420052652 334211676 455539394 590918818 251042004 853903669 954677909 775682536 47290536 934824360 181668423 995876182 303230482 776835194 367026304 509664709 877088774 858798711 60750487 174335822 857535330 306597948 202477791 746394036 465697134 441621000 247234349 420636144 803588261 441621000 918225489 560623000 740340897 408032939 53226850 506919968 709613471 689757867 438183310 195019158 604968568 7807006 190979155 866568903 264750083 812414090 757850417 831380531 776352608 708053570 748408317 885353274 471393875 531135820 567948101 767839638 927806038 187104147 396050095 989729323 156817178 581831913 24188768 68748842 539957336 729868696 302151126 476912096 938140278 702745028 98287438 789617647 840075867 965948435 128702236 241184545 712346140 272303478 738612855 786320493 438183310 264297813 688577702 79509313 575895835 686335042 219054502 515426984 559014304 722013570 617908997 754133002 29069209 758889515 136384659 285947848 408395896 527595027 773781000 719601437 770594967 496698204 305068796 582273012 38844979 360743135 471393875 546141085 153196022 182214511 481894295 190323279 311613451 627110568 332834875 628820972 328462418 522663253 32806834 413592826 148087911 582273012 465697134 276676140 927806038 831241130 38844979 602832600 13112382 397928982 123073176 737945381 783513992 359714925 471393875 647733367 721418370 290474734 163769090 910818482 736237188 735891721 590208882 109054120 802009078 718980624 430101007 708053570 32075030 287768226 637769046 963141978 271484655 246221518 31615284 35128915 490344724 175507355 289736829 20148474 824770361 112390393 942999703 1736950 931966477 63192647 123073176 852107700 592639233 682170984 941586175 792846009 275202504 290474734 705304879 916956968 887794841 359859765 587469038 38085353 776352608 494336936 926045944 140551765 50241607 522332929 654830523 522332929 954227928 382904427 163769090 359714925 746992914 220576148 215977916 764116955 115090276 885000402 295366548 78775552 966131311 806744033 920721173 509144872 190929591 485509833 72820570 134971740 511330454 852604705 438183310 516175014 877088774 916956968 210621083 446968233 417074904 218611070 125829791 1736950 577970627 330205547 751925989 19911869 946612927 682170984 559014304 781246194 917795074 451521521 242186770 112390393 770594967 426814174 532803593 942866882 151506993 792846009 799588075 858040709 417074904 396632533 275202504 859168292 242186770 616796881 687988023 835198840 275349681 601740259 770993588 963141978 835339516 829614460 632014852 2575238 215792516 179981178 788737791 478892468 38338132 979750308 884072178 390275103 745200166 775682536 837690635 623206361 585165457 732245352 295606018 938705675 590208882 589760538 305990981 962430008 305990981 573449906 888553258 907095826 862254110 989729323 540976336 399037712 215774690 47529701 913521589 808614164 806664207 887548285 862254110 981996224 751925989 708053570 126695727 964902255 50241607 795472528 630201811 7807006 554222239 851759377 125829791 307403622 696443558 965948435 637769046 251367294 704431513 400178823 532803593 662972501 946916156 138442062 753419354 213097363 303230482 882804101 99294732 207442482 591292508 209497607 776352608 241184545 206036522 806792339 920628541 931005739 837690635 788118407 610834602 226492467 740882715 464444922 49317804 771803404 80485362 475344103 322974842 394791153 857535330 205387898 750563611 112390393 954227928 870201182 202477791 232177196 533864165 196460706 688577702 109054120 864016134 160287690 151506993 449022331 78649514 376974209 827311105 250749017 719307635 313272965 237389399 778123726 98824830 47529701 103669472 625664180 387176309 662972501 24188768 140725908 251188854 726950461 268759041 130160246 768561257 994587826 900116034 963141978 598426014 860708299 367026304 852107700 628523361 739696834 783513992 209497607 768561257 750750593 736624310 55108095 814295984 498045048 424594759 47349911 431406787 623206361 967417280 630977998 290117216 38085353 264408147 667844649 982416551 960543625 513440742 397928982 354807942 589760538 922706719 140725908 876868627 324129364 98287438 625664180 703490607 994587826 23262398 667844649 429277230 452156279 303230482 727578179 230662076 546141085 286037808 413592826 632402794 250749017 922858580 49614749 681765297 317751260 638516505 218611070 967417280 962430008 831467447 103219970 949084393 560327459 303230482 656191811 50241607 456137963 431406787 443960759 563678994 557710104 99294732 485063015 215977916 810021050 478351140 420636144 546679009 396937914 920721173 972710252 259646582 991615550 98824830 729868696 431406787 625664180 638516505 630629857 103733806 531333917 72820570 902464469 115509283 349644605 838655651 215289803 72820570 397928982 687988023 51457589 896571061 842970782 502849508 726620654 80415088 394791153 266213579 37275245 64420967 514768035 142903358 650036494 206036522 47529701 602396426 937158597 886149363 195019158 774489082 795472528 991073887 993091440 152866011 287239117 23973553 53966525 783513992 338312978 328462418 134801439 153196022 32954995 38844979 213097363 306258744 726620654 547547687 721769014 257214051 349644605 835339516 509144872 424594759 912948600 465759767 20148474 929504680 767187616 138393155 767839638 550336314 498045048 210621083 531135820 786380583 458290565 78649514 526944836 64420967 953267424 202477791 806744033 489612980 758889515 23973553 874297853 539957336 968670974 539957336 49948206 674485068 174335822 618542887 964902255 750563611 2076768 72820570 582273012 23973553 910818482 83066601 788118407 855636134 249820698 78649514 299994808 433686203 938705675 638516505 896029805 247006479 225771141 32075030 620243558 637769046 452156279 804406873 560327459 979740237 932715562 230662076 896072909 305990981 566125822 966131311 831380531 99294732 981996224 128702236 812414090 183440003 505061211 101231409 792822959 539381059 647733367 953882020 251367294 966131311 464444922 630775839 225858850 592639233 220576148 633573519 328764419 753419354 683621666 940188502 287239117 675472009 220576148 602396426 463496366 125829791 722013570 13112382 420636144 444897967 573449906 702364434 972710252 103733806 554242697 396050095 896029805 407091770 334211676 98824830 944573659 432089082 852107700 512614298 560327459 630775839 19715614 709613471 249670598 74587532 420636144 420052652 842970782 455539394 2575238 590208882 193515742 230662076 618355033 757815664 694954883 39220584 853903669 910850066 451551269 53226850 978947655 424594759 570796148 513440742 1736950 931086800 458156391 408395896 719601437 56154381 393120342 136384659 938705675 296305836 2076768 946612927 981996224 539381059 252792947 858127225 79509313 691982506 526944836 302151126 746394036 827311105 172894131 126695727 604881661 617908997 697742034 931013644 313272965 72820570 697742034 293192373 925555858 311613451 812044550 321628921 812414090 982370833 2076768 685702028 602832600 920721173 165821462 540394532 683621666 332834875 7807006 918225489 667844649 53226850 186244437 595030753 134971740 299113502 817743547 308142020 35128915 295366548 853170454 305068796 360743135 641635851 121069546 950673785 376974209 661321016 750978759 719307635 138442062 675472009 852755974 603931167 841210236 154538466 767839638 804406873 754133002 633587956 137529801 242186770 767839638 662421393 48746678 757815664 2379379 193648030 162904272 938140278 424974082 858127225 315297566 247234349 288873549 293192373 647733367 53226850 620243558 432089082 498045048 298727845 175060805 617908997 963141978 955501918 250832323 691982506 349644605 597206610 138442062 931640418 393120342 484158080 36265302 464130920 960796073 311613451 887548285 464130920 592970093 396743027 146573202 735696627 650036494 498840912 543945175 298727845 939725993 209789164 628820972 546679009 446968233 942999703 424974082 126695727 686335042 306258744 458363994 208625324 970320952 546679009 851759377 966131311 121069546 387176309 942866882 563678994 522332929 922858580 969494113 982353486 912948600 38844979 588034909 50241607 441621000 484158080 128450928 567774282 630629857 254203892 10369081 181668423 448881532 770594967 981996224 344876805 207844781 152243323 325554372 266213579 556619020 910850066 560623000 545538425 393120342 135975430 918521256 420052652 209497607 254203892 215289803 465759767 970320952 877088774 750978759 94279561 376974209 344620844 458290565 683406807 750978759 633587956 636434256 408395896 399037712 637939784 53966525 653201202 311808379 196106606 896072909 610447918 836376015 797746066 831380531 115090276 852755974 326469359 554242697 598426014 256866745 567343883 246058339 843005594 531135820 843005594 327773233 888553258 812414090 295606018 938080232 864016134 638790258 769327548 788118407 969294148 582273012 266213579 790270533 597206610 441621000 94279561 266583970 553191189 697742034 975337465 155241439 211958450 962073361 918225489 983113723 326469359 686335042 50241607 424974082 135975430 38085353 637769046 404152565 484158080 252792947 326469359 573480571 931086800 413592826 321628921 761330904 430284321 635302209 186285312 325554372 617908997 548964093 776352608 476912096 723661847 146573202 41538784 726620654 855636134 896072909 28363157 852604705 797746066 632378665 47290536 522332929 656623172 942899938 858127225 810021050 480361743 276676140 488295044 317751260 125829791 170941326 592639233 324986193 490344724 19911869 769327548 579757115 152618584 441621000 788737791 10369081 93651148 907095826 931640418 287239117 778074990 687055288 465697134 650036494 809429735 939725993 877088774 448881532 835339516 963141978 548748527 571019028 931966477 993091440 464130920 359714925 862177563 352092606 585165457 237172271 656623172 749497174 770864525 382210484 763431295 451521521 93651148 607760956 748408317 56927881 202477791 246221518 261683638 992169078 949084393 623206361 838655651 182214511 598426014 792846009 994877696 264100442 982370833 780061015 751925989 750750593 663971090 592970093 904800517 458290565 783513992 509370562 32075030 554242697 918225489 838803091 598426014 557710104 874124920 1736950 73848009 282751746 754580366 220576148 770594967 314069534 623398671 226492467 23262398 560327459 230662076 137529801 746092812 746394036 275349681 560327459 67700412 590918818 904771946 771803404 41538784 87392830 835339516 676975489 215792516 860708299 597206610 942866882 257214051 283321520 824770361 682170984 860477160 152314280 926045944 186244437 295606018 249820698 702364434 607760956 50241607 786320493 268759041 371179314 206036522 307403622 551289217 616057762 464130920 573480571 920721173 560327459 271484655 138442062 662421393 458290565 270237875 891279504 43970470 781242822 771321738 288873549 685702028 852107700 306607837 795472528 174140940 53195413 271484655 983373150 407510599 885000402 630201811 758889515 525347105 338929165 512614298 858040709 681930584 495854210 738855203 764459345 864016134 708094860 354807942 2575238 982370833 597784477 43970470 68748842 457149478 300892929 214244685 252962990 626833449 674446970 264408147 719601437 40448245 509370562 595030753 35128915 244528344 136412292 286037808 462394151 67831588 543865019 489130642 220576148 954227928 854243215 432089082 737945381 396050095 767839638 518384931 964902255 299113502 687055288 257214051 299994808 53226850 566554997 308142020 829983432 247221668 560327459 797746066 4519262 152243323 636434256 956815883 5299425 128188331 195733178 247841801 775682536 783513992 451521521 858127225 786320493 645094664 775682536 448262245 66490779 885995802 160287690 577970627 851829959 840075867 53195413 334299650 29473993 244528344 287768226 271484655 934824360 40448245 686884353 840075867 686884353 103733806 664041213 809429735 155241439 630775839 735710261 931086800 994587826 763431295 307060809 735696627 5299425 941586175 232177196 838655651 726620654 709613471 531135820 298727845 369306500 904800517 573480571 132556595 749497174 941586175 382210484 465759767 458156391 136384659 732245352 117931902 835198840 946916156 918521256 860477160 836376015 201717402 449022331 10475035 220576148 920628541 325554372 539381059 989729323 242530683 931005739 502849508 476912096 887794841 733642252 650990283 288072509 628523361 590918818 292149520 831380531 950497221 463496366 407091770 262406489 954677909 808838846 502849508 352092606 780870754 732559957 67700412 810021050 994877696 36265302 274113481 232177196 888553258 543945175 969294148 306597948 152618584 604881661 430284321 960543625 754580366 885141769 295366548 744008188 591292508 887548285 654830523 426814174 917452919 2076768 795549341 629101079 242186770 812414090 975337465 812044550 650990283 852755974 663971090 628820972 991073887 400178823 923927991 29473993 429277230 250832323 837690635 559957428 949084393 226492467 753419354 616796881 630201811 485262404 982353486 408032939 125829791 699733109 992001870 40131409 770594967 698320352 480361743 249670598 745200166 390793037 850386354 247822207 559014304 390275103 786380583 931005739 617908997 592970093 738855203 554242697 592639233 602832600 709613471 686335042 408395896 334932282 945394518 713146141 514650194 315297566 807117750 81553943 162062292 163229392 542382913 548964093 21190596 835198840 125829791 376974209 654830523 888259120 770594967 396138845 261683638 112090095 242530683 852755974 492009082 193515742 126695727 38085353 128188331 812044550 145559297 597784477 532803593 15903366 201717402 715957434 947413305 925555858 632402794 361002681 247006479 246058339 774489082 78775552 623398671 884952974 610834602 51457589 911302173 566125822 195957995 232177196 131323888 613596687 969294148 997329398 917452919 788118407 331638088 437743643 117931902 252792947 546679009 727827821 940188502 781246194 196106606 729868696 270237875 353964006 67700412 47349911 237389399 387703244 567774282 618355033 827311105 47529701 396806189 888259120 927806038 387703244 366854683 403519778 38844979 313272965 674485068 172894131 448262245 448881532 783513992 550322314 457149478 939725993 548748527 1736950 153196022 376448548 938140278 543945175 878442641 722013570 929504680 10369081 490344724 889608806 38844979 396138845 163769090 646710523 268759041 689757867 932584021 396632533 201717402 287239117 47290536 887548285 992001870 983113723 910850066 2379379 575023903 38304068 563678994 727827821 931966477 334211676 429277230 850484222 211958450 940381563 740882715 174335822 215981255 902464469 882364001 884952974 809429735 463496366 284588557 570796148 492009082 251367294 125829791 812044550 163769090 283321520 210621083 507016471 922706719 543865019 763431295 566125822 289736829 371179314 567343883 79523589 954227928 349076114 746992914 718980624 592639233 588034909 289918211 509370562 956286779 616796881 954677909 810021050 797746066 571019028 994877696 831241130 73848009 885000402 80485362 182214511 545538425 858798711 770993588 396632533 838655651 485063015 900116034 247822207 237389399 81337657 696443558 850484222 230662076 571019028 932584021 390275103 152243323 40131409 858127225 334211676 581063820 531135820 67831588 884952974 712346140 572465104 719307635 405444604 591292508 746394036 31215478 237172271 344876805 209497607 481894295 134801439 15037608 527595027 303230482 196460706 949084393 287768226 695599688 256866745 328462418 307403622 575895835 475344103 888553258 396937914 874124920 53195413 503666498 179991869 652018277 546141085 21190596 138442062 719307635 195019158 344620844 121069546 860377902 382904427 311613451 285947848 660095934 937158597 837690635 970320952 10475035 656191811 637769046 315343704 824770361 866568903 64420967 256866745 103733806 103219970 42657625 559957428 550336314 114409323 681765297 276676140 743614603 220576148 710224239 953267424 570764323 175060805 773781000 337153847 754580366 476912096 568104980 187104147 533864165 359714925 577970627 885141769 142903358 577673184 703490607 159828635 512614298 413592826 786380583 114409323 709613471 55108095 396806189 399037712 321628921 687055288 874124920 403519778 254203892 726620654 696443558 272303478 208625324 699733109 886149363 48746678 40448245 925555858 50241607 991615550 429277230 324986193 885995802 310726569 488295044 56927881 540394532 726620654 696443558 79523589 546679009 543865019 264408147 112390393 154538466 311808379 547547687 371179314 586446680 458156391 835339516 887548285 776352608 433921335 43970470 891279504 518384931 485063015 920628541 433921335 575895835 352092606 53226850 459617527 774489082 727578179 125829791 664041213 967417280 735710261 74587532 767839638 801623766 708046990 982416551 249820698 420052652 764459345 598543708 932715562 115509283 328764419 247221668 134971740 947413305 698320352 938140278 207844781 936312210 225771141 53525809 299994808 80415088 215289803 548748527 195019158 679463383 485509833 915330573 282751746 23262398 509019925 950497221 885000402 628523361 616796881 858127225 324986193 840075867 962073361 597206610 592970093 803588261 979750308 271484655 870201182 490344724 628820972 408395896 722013570 532803593 572465104 533455280 495854210 152866011 282751746 824770361 81337657 586370291 488788762 259646582 48746678 757815664 1736950 795549341 32954995 152243323 449022331 6720560 616057762 876868627 800460688 292696118 433921335 888553258 51457589 136384659 940381563 638516505 77685914 858127225 667844649 691982506 338631458 628523361 195019158 268759041 582273012 154538466 588034909 750563611 776835194 456956861 767839638 94279561 117210451 503666498 514768035 43970470 628820972 799588075 179981178 947413305 36055646 915330573 535533605 760370490 451521521 67700412 249820698 807117750 727827821 177689820 554242697 955501918 186244437 142903358 2379379 261683638 458290565 876263470 962073361 915330573 853170454 444897967 698320352 140129038 251367294 401452903 815123402 910850066 112390393 78649514 143200457 451817798 699733109 954677909 971549242 710224239 630629857 103733806 408032939 923927991 931005739 457149478 852604705 40656291 812414090 687988023 299994808 153196022 175060805 773781000 475344103 654830523 19911869 586446680 396937914 946916156 858798711 598426014 812044550 407629453 98231977 261683638 719601437 145559297 505061211 874124920 485262404 855636134 437743643 292149520 733642252 760231333 754133002 851400664 990121035 315747769 249670598 854902633 152314280 293192373 48746678 196106606 376448548 652018277 155241439 484158080 246221518 884072178 686335042 6720560 885647994 851400664 252962990 290117216 324986193 685702028 891279504 572588387 511277493 778074990 195019158 438183310 287768226 513440742 940381563 156817178 750750593 177689820 962073361 675472009 360743135 931086800 778123726 763431295 446968233 488295044 995876182 860477160 650036494 551289217 250885472 773781000 456137963 98824830 968755777 712346140 393120342 361435434 729868696 31615284 376974209 533455280 433921335 358401766 103219970 40448245 744008188 630775839 47349911 705548145 650036494 757850417 721769014 420052652 527595027 765027062 782533040 709613471 451551269 740882715 2575238 945394518 560623000 938140278 52243955 328462418 726950461 40656291 400218902 774489082 792846009 13112382 968670974 738612855 307060809 429277230 942866882 723661847 163229392 462762217 788118407 420052652 573480571 950497221 37275245 488295044 37275245 931086800 984047482 489130642 571019028 915330573 307403622 278160655 63192647 538810384 10369081 408395896 307060809 540976336 337153847 878442641 182214511 548748527 390793037 21190596 764116955 691982506 623206361 251042004 531135820 567948101 290474734 93651148 607041944 13112382 426814174 47290536 686335042 601630030 298050322 53226850 925555858 478351140 40131409 99294732 984050047 770594967 627110568 994877696 735710261 242530683 884952974 858127225 396937914 831467447 627110568 760231333 251367294 979740237 991615550 956815883 554242697 597206610 408032939 302151126 342116147 876868627 557710104 148087911 788118407 773781000 175507355 367026304 795472528 125204206 764459345 38844979 337153847 332834875 334211676 942999703 758889515 932584021 56927881 982353486 965948435 712346140 249670598 109369069 870201182 850386354 290474734 638516505 159828635 923927991 106790696 151364594 601740259 633573519 918521256 940188502 682170984 876263470 186244437 735696627 338631458 80415088 393120342 650697444 969494113 581063820 249820698 954677909 112090095 103733806 33511708 917795074 193515742 93651148 891279504 886917295 838803091 946612927 193515742 954677909 498045048 145559297 782533040 736237188 352092606 931966477 646710523 874124920 991615550 32806834 629101079 387176309 592970093 242028021 514768035 38338132 399037712 511330454 360743135 886917295 757709512 572588387 566125822 424594759 698320352 958668995 664041213 153196022 870201182 6720560 396138845 619842427 727578179 645094664 349644605 846351340 130160246 94279561 175507355 274113481 546141085 722768643 694954883 99294732 2076768 266213579 195733178 570764323 896029805 237389399 550322314 938140278 718980624 893019475 250832323 953882020 98231977 860377902 590918818 920721173 145885851 786380583 698320352 247006479 531333917 877167702 889608806 751925989 298050322 840075867 37275245 38338132 732559957 502849508 668964848 271484655 306597948 703490607 388085842 824770361 522663253 860477160 506919968 93651148 810021050 269911067 433921335 679463383 636434256 417074904 360743135 266213579 858040709 190979155 940381563 719307635 627110568 375066210 324986193 163769090 78775552 896571061 996943901 738855203 81553943 490344724 56927881 776352608 992169078 326469359 352092606 514650194 48746678 921198791 623206361 290117216 721769014 444897967 851829959 923927991 226492467 547547687 330274784 407629453 509664709 786380583 566125822 21190596 299462930 257214051 507016471 773781000 400218902 40656291 77685914 527654256 543945175 958668995 413592826 567343883 288072509 587469038 162904272 196106606 195019158 290117216 874297853 15037608 983373150 702364434 458290565 920721173 889608806 679463383 995876182 38338132 674446970 637939784 853903669 417074904 349644605 660095934 732559957 920721173 476912096 430284321 437743643 660765062 241184545 40448245 427184372 947413305 334932282 492009082 4519262 838655651 896072909 950673785 359714925 572588387 462394151 587469038 806792339 917452919 526944836 681930584 317751260 304621545 29473993 814295984 592981604 430284321 795472528 193648030 463496366 947413305 972710252 966131311 443960759 920721173 55018341 432089082 328764419 746092812 507016471 586370291 735891721 257214051 630629857 595030753 47529701 514650194 237172271 827311105 520071928 768561257 190323279 202477791 994587826 878442641 103219970 64420967 182214511 691982506 475344103 850386354 806792339 700560235 79509313 994877696 579757115 425392410 764116955 363976852 923715439 992001870 352092606 603931167 338929165 93478833 601740259 98824830 314069534 326469359 601740259 652018277 613596687 237389399 283321520 98287438 592970093 293192373 213097363 886917295 829983432 992001870 288072509 38338132 60017144 542382913 775682536 270237875 174335822 455539394 749497174 778074990 134801439 196106606 613596687 638516505 160287690 637657473 866337119 900796599 842970782 533864165 793291205 797746066 288873549 154538466 790270533 982416551 215289803 456956861 121069546 266213579 587179274 971894015 130160246 457149478 218611070 831467447 55108095 361435434 776835194 840130613 24089615 303230482 841780337 900796599 686335042 663670886 636434256 230662076 624819674 261683638 674446970 60750487 571019028 840075867 266583970 958668995 792846009 244528344 420636144 503666498 117210451 293192373 506178629 148087911 452156279 846351340 174862116 824770361 342116147 498840912 577673184 465697134 63192647 230662076 140551765 768561257 522332929 315747769 938705675 888699423 964902255 462762217 249820698 674485068 708094860 913521589 992169078 455539394 874297853 572588387 459617527 498840912 388085842 888553258 573480571 760231333 896029805 78649514 996943901 128188331 52243955 760231333 145885851 719307635 272303478 637939784 884952974 193648030 60017144 893019475 376448548 311613451 708094860 214650974 686884353 773781000 174862116 422532994 546141085 492009082 885353274 293192373 287768226 691982506 790270533 396743027 835212499 721418370 324986193 626833449 174862116 302151126 195019158 293192373 735710261 247221668 53195413 947413305 702745028 465759767 535533605 652018277 283321520 211958450 509664709 425392410 960543625 597206610 744008188 129724737 264297813 632402794 962430008 617908997 509664709 40656291 618355033 527654256 699733109 795549341 632378665 407091770 459452716 15037608 103219970 286037808 996943901 306607837 993091440 214650974 283321520 738855203 616796881 932584021 968755777 228290502 475344103 72820570 60017144 407510599 252792947 763431295 459617527 407091770 944573659 83066601 522332929 215792516 103219970 311613451 505061211 885995802 77685914 247841801 215052415 132556595 35128915 186285312 187104147 1926282 616796881 618542887 475344103 264408147 836376015 99294732 852755974 82689280 252792947 274113481 146573202 230662076 307060809 740882715 112090095 13112382 852604705 201717402 55018341 328462418 727578179 492009082 134801439 940188502 138442062 1926282 778123726 99294732 628820972 259646582 641231120 545538425 98231977 946612927 307060809 750563611 697742034 471393875 539035187 214650974 737945381 760370490 175507355 40448245 711455867 328462418 509144872 626932919 711455867 650697444 311808379 715779797 938080232 407629453 452156279 740340897 424974082 679463383 556619020 958668995 789617647 344620844 325554372 247841801 420636144 438183310 437743643 344620844 815123402 753419354 635302209 837690635 858798711 183440003 577673184 801623766 36265302 886149363 896072909 29069209 328764419 705548145 516175014 489130642 923715439 292972503 992169078 305068796 81337657 151364594 647733367 587469038 960543625 862254110 408032939 632402794 360743135 814662325 130160246 274113481 764116955 242530683 889608806 237389399 735891721 244528344 53195413 38844979 266583970 306607837 509144872 289918211 296751278 269911067 509664709 715779797 246221518 428572243 910818482 115090276 408032939 56154381 579757115 298727845 119279869 857535330 850484222 969294148 607041944 42657625 459617527 876263470 359859765 154538466 117210451 306607837 835212499 428572243 400178823 740340897 638790258 814662325 581831913 958668995 697742034 770993588 629101079 806664207 390793037 40448245 882804101 527654256 726950461 315747769 934824360 278160655 505061211 408395896 602832600 601630030 387703244 94279561 387703244 117931902 789617647 215977916 174862116 366854683 4519262 140129038 485509833 174140940 939725993 888553258 37275245 67831588 140551765 115090276 885353274 430088921 338312978 874124920 885000402 417074904 806792339 920628541 719601437 940188502 140551765 53525809 476912096 430088921 382210484 545538425 817743547 542382913 215052415 488295044 771803404 862254110 750978759 503666498 953267424 177689820 587179274 407629453 592981604 254203892 613596687 247221668 592970093 322974842 708094860 954227928 887548285 688534928 916956968 471393875 287768226 40656291 390275103 814295984 853903669 126695727 88335614 840130613 485509833 893019475 560623000 979740237 787269565 904800517 314069534 746992914 750978759 538025980 531135820 681765297 2575238 837690635 498045048 512614298 889608806 858127225 889608806 478351140 325554372 751925989 213097363 804406873 792846009 941586175 968670974 540976336 376448548 420052652 205387898 125204206 708053570 396743027 175507355 304621545 507016471 115090276 885141769 420052652 330274784 753419354 746394036 760231333 792846009 553368896 781242822 746992914 353964006 632014852 496698204 944068218 246221518 994877696 307403622 331638088 378961655 366854683 937158597 769327548 934824360 237389399 37275245 888553258 55108095 632402794 852107700 982370833 968755777 575895835 507016471 591292508 592981604 40656291 850484222 299113502 737945381 877167702 781242822 770993588 448881532 975337465 478892468 465759767 196460706 215977916 433921335 586446680 604881661 567774282 531333917 884059813 938705675 292972503 462394151 630775839 627110568 837690635 746394036 688577702 207844781 809429735 708046990 513440742 330274784 660095934 103219970 771321738 251367294 746992914 165821462 745200166 732559957 328462418 629101079 926045944 288873549 760231333 835212499 757850417 51457589 99294732 311808379 448262245 68748842 650990283 689757867 67700412 632378665 465697134 618355033 542382913 726620654 133739154 970911538 681930584 668964848 244528344 616057762 481894295 496698204 855636134 426814174 650697444 399037712 533455280 891279504 47290536 942866882 654830523 47529701 80415088 300892929 681930584 923715439 554222239 718980624 702364434 896072909 396050095 296751278 840130613 762749463 567948101 87392830 688577702 19715614 547547687 918521256 931086800 713146141 38844979 970911538 492009082 757709512 723661847 155241439 641635851 732559957 696443558 218611070 563678994 509144872 940188502 349076114 242028021 727827821 630775839 179991869 893019475 788118407 814295984 715957434 854969794 77685914 211958450 452156279 417074904 572465104 577970627 507016471 123073176 117210451 527654256 570796148 539957336 702745028 885995802 376448548 567343883 223299794 407510599 597784477 99294732 885000402 264750083 458290565 862177563 992169078 358401766 119279869 710224239 993091440 289918211 182214511 28363157 390793037 770993588 252962990 354807942 452156279 736624310 939725993 490344724 213097363 900116034 566554997 598543708 170941326 746992914 632378665 542382913 526944836 1926282 53966525 795549341 515426984 854969794 288072509 838655651 550322314 931966477 145885851 750563611 81337657 275349681 47529701 275349681 711532060 922858580 912948600 321628921 307403622 237389399 15903366 653201202 560623000 538810384 775682536 363976852 505061211 31215478 390793037 799588075 137529801 186285312 250832323 885995802 587179274 251188854 577673184 78649514 264297813 884059813 443960759 23262398 317751260 746992914 674446970 735696627 49614749 550336314 835212499 610447918 506178629 431406787 887548285 480361743 7807006 559014304 452156279 893019475 727827821 862254110 554242697 190929591 10369081 278160655 764459345 674485068 174862116 770993588 674446970 705304879 963141978 433686203 896072909 83066601 451551269 801623766 448881532 926045944 241184545 540976336 708046990 896571061 249820698 688577702 160287690 293192373 262406489 93651148 396138845 705304879 627110568 430284321 485262404 806664207 220576148 489130642 205387898 553368896 812044550 583924389 767187616 640849273 718980624 138393155 554242697 60750487 984047482 753419354 808838846 982370833 40131409 269911067 767187616 74587532 732245352 559014304 581831913 512614298 726620654 877167702 167276070 215774690 912948600 462762217 55108095 67700412 860708299 432089082 404152565 575895835 213097363 448262245 859168292 64420967 276676140 878442641 5299425 850386354 902464469 117931902 607965234 926045944 531333917 193648030 317751260 181668423 458363994 109369069 727245017 24188768 970320952 619842427 790270533 913521589 687055288 797746066 1736950 499057158 288873549 954227928 891279504 783513992 787269565 575895835 625664180 783513992 338631458 862254110 78775552 652018277 134801439 591292508 330205547 503666498 910818482 855636134 859168292 298727845 874297853 586370291 79509313 99294732 399037712 553368896 77685914 485153920 393120342 125204206 650036494 577970627 829983432 142903358 686884353 407510599 938456692 966131311 338631458 778074990 48746678 567948101 630629857 567948101 795472528 942999703 247822207 298727845 739696834 344620844 314069534 877167702 923715439 503666498 579757115 754580366 458156391 721418370 2575238 203331888 548964093 958668995 932715562 654830523 953267424 719307635 601740259 196106606 337153847 304621545 464444922 681765297 172894131 513440742 10369081 954227928 764116955 366854683 829614460 326469359 121069546 42657625 955730659 938140278 488788762 275202504 750750593 195957995 632378665 462762217 566125822 49317804 237172271 511330454 607965234 884072178 975478549 431406787 359859765 328462418 179991869 251188854 248642173 931086800 306597948 885549757 220576148 900796599 943793512 610447918 588034909 770864525 568142039 638516505 979750308 430284321 721769014 311613451 462394151 626833449 708046990 259646582 817743547 736237188 19715614 1926282 989729323 703490607 405444604 401452903 390793037 877167702 750750593 715779797 556619020 492009082 246058339 271484655 207844781 678884863 963141978 93651148 175507355 654830523 361002681 103733806 47349911 931013644 134801439 695599688 719601437 938140278 943235508 641635851 656191811 215977916 137529801 332834875 934824360 567774282 19715614 969294148 817743547 268759041 47529701 186285312 195733178 926045944 463496366 344876805 829614460 754580366 114409323 628523361 932715562 942999703 159828635 67831588 19911869 73848009 155241439 975337465 195733178 703514531 838803091 637769046 983113723 489130642 885000402 843005594 249820698 128188331 464444922 696443558 715957434 302151126 887548285 808866527 458363994 927806038 515426984 293192373 248642173 428572243 249820698 904800517 334211676 802009078 885647994 754580366 831380531 837690635 496698204 234980621 495854210 678884863 931005739 553191189 37275245 99294732 604881661 953882020 629101079 275202504 2575238 145559297 800460688 94279561 79509313 562773407 226492467 633587956 962073361 306258744 682170984 950497221 420636144 292149520 250885472 567774282 207442482 228290502 726620654 174140940 787269565 760370490 592981604 783513992 620243558 982416551 556619020 387176309 607760956 103669472 215052415 539381059 739696834 518384931 441621000 770594967 778123726 489130642 721769014 125829791 220576148 40448245 852604705 481894295 408032939 264408147 694954883 304621545 776835194 465759767 376974209 305990981 708053570 103733806 420636144 275202504 112090095 407629453 858798711 885995802 314069534 163769090 852755974 401452903 81553943 480361743 448881532 982353486 858040709 234980621 989729323 807117750 912948600 719307635 810021050 816971086 968670974 366854683 581831913 661321016 155241439 196106606 485063015 208625324 854243215 678884863 835198840 563678994 727245017 816971086 960796073 723661847 288873549 128702236 117210451 807117750 853170454 595030753 397928982 770594967 376448548 637939784 223299794 927806038 702745028 540394532 750750593 628523361 79509313 938140278 2575238 190979155 979750308 103733806 63192647 299113502 607760956 125829791 790270533 967417280 324129364 206036522 349644605 251042004 522332929 292972503 607965234 888553258 458363994 545538425 146573202 830619816 307060809 489130642 968755777 920628541 943793512 831467447 667844649 966683628 170938835 492009082 630629857 93651148 767187616 13112382 306597948 663971090 727827821 292696118 991615550 783513992 162904272 545538425 764116955 465759767 726950461 874124920 51457589 638516505 938705675 266213579 458290565 587469038 589760538 242530683 252962990 992001870 852755974 688534928 138442062 838331644 506178629 444897967 338929165 678884863 624819674 271484655 810021050 831467447 81337657 514650194 515426984 858127225 172894131 590208882 215289803 156817178 566125822 254203892 937158597 511330454 314069534 73848009 997329398 153196022 522663253 430284321 746394036 201717402 702745028 992001870 88335614 966131311 218611070 41538784 992169078 237389399 98231977 151506993 394791153 827311105 313272965 242530683 330274784 797746066 944573659 688534928 592981604 551289217 172382592 674485068 27735709 827311105 252962990 242028021 678474526 358401766 272303478 843005594 874297853 286037808 854243215 1926282 896072909 498840912 812414090 838331644 264100442 969294148 602832600 293192373 573449906 554222239 979750308 328462418 539035187 193648030 359859765 688577702 858798711 604968568 172382592 628523361 252792947 215977916 298050322 136384659 296751278 619842427 647733367 678884863 382904427 302151126 635302209 799588075 997329398 735696627 543945175 42657625 426814174 451817798 443960759 478351140 327773233 802009078 334932282 885995802 546141085 633573519 449022331 425392410 60017144 586446680 792846009 32806834 916956968 533864165 249670598 138393155 625664180 375066210 249820698 83066601 616057762 904771946 604881661 438183310 978947655 298727845 338929165 412979540 207442482 840130613 812414090 412979540 248642173 41538784 448881532 425392410 970320952 637657473 459452716 704431513 994587826 152243323 314069534 540976336 37275245 662421393 396632533 770993588 607965234 662421393 77685914 824770361 882804101 488295044 938456692 771321738 629101079 927806038 866337119 583924389 47529701 926044257 376448548 539381059 143200457 913521589 40131409 681765297 851759377 546679009 509019925 15037608 981996224 838331644 68748842 315747769 232177196 857535330 226492467 354807942 726950461 601630030 853170454 900796599 870201182 56154381 554242697 518384931 732559957 331638088 592970093 660765062 246221518 591292508 136412292 215981255 134801439 971894015 205387898 47290536 788118407 663670886 48746678 49317804 689757867 931640418 923715439 763431295 782533040 592639233 872434540 765027062 625664180 98824830 456137963 15037608 382904427 652018277 792846009 215977916 667313812 806664207 934824360 82689280 109054120 101231409 624819674 296305836 509370562 633587956 560623000 876263470 970911538 877167702 186244437 153196022 767187616 254203892 420636144 954227928 317751260 797746066 686335042 465697134 506919968 956286779 970911538 630201811 134971740 430088921 674446970 72820570 103219970 125204206 287239117 688534928 965948435 208625324 296751278 387176309 937158597 721418370 853903669 753419354 885000402 662421393 251367294 738855203 272303478 538810384 160287690 795549341 931005739 451817798 527595027 396806189 718980624 448262245 193515742 247221668 433921335 954677909 727827821 956815883 885000402 539957336 10369081 799588075 458290565 949084393 788118407 654830523 889608806 678884863 251367294 72820570 835212499 750563611 689757867 688577702 852604705 753419354 307403622 688534928 63192647 242530683 641231120 109369069 112090095 854902633 52243955 736237188 674446970 695599688 175060805 540394532 588034909 128188331 554242697 801623766 624819674 911302173 433921335 98287438 506919968 548748527 522663253 949084393 49614749 857535330 193515742 518384931 170941326 949084393 264100442 148087911 708094860 401452903 708053570 219054502 485262404 53226850 2379379 982370833 850484222 215977916 792846009 920628541 136412292 465759767 413592826 255644658 764459345 783513992 38085353 152523810 749497174 457149478 632378665 568104980 554242697 570764323 754133002 242028021 299994808 290117216 282751746 850386354 708046990 407629453 388085842 946612927 630629857 295606018 702745028 295606018 573480571 396806189 382904427 401452903 283321520 49317804 342116147 956815883 885353274 74587532 317751260 929504680 371179314 837690635 225858850 73848009 630238886 24188768 579757115 640925332 68748842 587469038 732245352 723661847 267829614 884072178 749497174 305068796 2379379 882364001 232177196 538810384 117210451 736237188 143200457 547547687 342116147 331638088 2076768 650990283 250832323 10475035 155241439 481894295 732559957 247006479 2379379 738855203 581831913 855636134 338312978 637657473 35128915 893019475 361002681 660095934 885647994 942999703 616057762 193648030 2379379 806664207 604181881 630775839 829614460 315747769 835212499 638516505 324986193 944068218 514768035 315747769 306597948 585165457 923715439 53226850 1736950 292149520 996943901 542382913 815123402 661321016 488788762 850386354 582273012 586446680 711532060 888699423 349076114 407091770 746394036 77819776 852107700 645094664 394791153 396743027 775682536 430088921 250832323 462762217 968670974 932584021 806744033 50241607 808614164 864016134 993091440 270237875 647733367 99294732 771803404 80415088 620243558 947413305 754133002 299113502 250749017 366854683 458156391 298727845 137529801 801623766 276676140 950497221 788118407 814662325 531333917 151506993 369306500 945394518 815123402 298727845 708094860 538025980 566554997 926045944 851829959 444897967 369306500 551289217 761330904 946612927 543945175 795549341 990121035 242530683 647733367 913521589 79509313 490344724 296751278 32075030 994587826 700560235 160287690 929504680 668964848 284588557 495854210 152866011 983113723 942999703 722013570 311613451 891279504 190979155 252792947 630201811 427184372 577970627 726950461 286037808 55018341 840075867 172894131 750563611 896029805 274113481 636434256 958668995 190323279 163769090 812044550 982353486 390793037 247221668 984047482 982416551 907721720 275202504 616796881 808866527 722013570 103733806 727578179 932584021 174862116 773781000 403519778 562773407 390793037 361435434 371179314 538810384 170941326 575895835 172382592 802009078 136412292 275349681 896029805 540976336 943235508 532803593 378961655 430284321 47529701 72820570 342116147 830619816 602832600 128188331 775682536 99294732 607760956 532803593 646710523 884059813 79523589 926044257 872434540 354807942 290474734 115509283 324986193 228290502 226492467 954227928 708046990 700560235 403519778 572588387 726620654 860377902 885353274 788737791 910818482 138393155 984050047 407510599 727578179 931013644 979750308 513440742 983373150 115090276 975478549 67700412 449022331 53226850 683621666 602396426 128450928 851400664 10369081 464130920 739696834 38338132 955730659 206036522 550322314 846351340 788118407 465697134 630629857 151506993 252962990 15037608 969494113 991073887 448881532 712346140 241184545 765027062 152314280 712346140 972710252 603931167 636434256 429277230 968670974 807117750 810021050 910850066 721769014 874124920 459617527 295606018 317751260 722768643 378961655 456956861 515426984 577970627 248642173 80415088 727578179 539957336 960796073 876868627 854243215 154538466 715957434 888699423 531333917 203331888 842970782 917452919 965948435 177689820 38304068 136384659 459452716 514650194 451521521 695599688 939725993 303230482 850484222 723661847 699733109 430101007 324129364 255644658 719601437 24188768 36265302 936312210 390793037 533864165 114409323 78649514 106790696 396743027 853903669 315747769 993091440 366854683 167276070 846351340 246221518 896571061 560623000 786380583 708053570 632014852 152314280 944068218 87392830 39220584 708046990 628523361 167276070 581063820 338631458 289736829 119279869 746092812 190323279 80485362 829614460 162062292 376448548 484158080 5299425 299113502 387703244 295366548 207844781 992001870 396632533 518384931 250749017 799588075 548964093 303230482 47349911 428572243 403519778 242028021 815123402 695599688 36265302 72820570 739696834 123073176 762749463 514650194 835212499 745200166 991615550 900796599 975478549 292696118 2076768 451817798 369306500 598543708 387703244 230662076 870201182 407510599 516175014 214650974 885353274 633573519 310726569 550336314 727578179 387176309 566125822 484158080 965948435 430088921 24089615 67831588 515426984 827311105 630977998 72820570 452156279 433686203 55108095 567774282 98231977 244528344 810021050 202477791 708094860 971894015 792846009 208625324 246221518 921198791 246221518 722768643 509370562 42657625 624819674 465759767 382904427 703514531 891279504 518384931 514768035 661321016 990121035 723661847 581831913 583924389 441621000 321628921 382904427 653201202 589760538 900796599 646710523 431406787 248642173 633587956 459617527 396050095 420636144 803588261 509664709 308142020 602832600 788737791 4519262 306607837 560623000 554222239 140725908 814295984 404152565 956286779 106790696 289918211 359859765 209789164 782533040 640925332 396937914 351424753 330274784 601630030 426814174 587469038 667844649 709613471 522663253 430284321 51457589 650990283 550322314 15037608 5299425 687988023 981996224 559014304 451551269 590208882 546141085 806664207 572465104 610834602 140551765 98287438 338312978 31615284 854243215 518384931 496698204 351424753 283321520 688534928 587179274 242186770 63192647 595030753 896072909 926045944 250885472 23973553 780061015 29069209 313272965 270237875 758889515 98287438 884952974 292972503 624819674 598543708 187104147 269911067 155241439 206036522 283321520 843005594 103219970 623398671 288873549 982370833 172894131 882364001 762749463 904800517 937158597 562773407 478892468 585165457 160287690 125829791 808614164 814662325 215289803 305068796 114409323 982370833 851829959 771321738 656191811 50241607 47349911 247234349 51457589 456956861 732245352 38338132 328764419 448262245 163229392 831467447 163229392 746992914 560327459 802009078 310726569 991073887 996943901 152618584 668964848 428572243 314069534 929504680 505061211 40656291 571019028 955501918 960796073 896571061 573480571 73848009 146573202 518384931 858798711 877167702 932715562 292696118 248642173 577970627 215052415 954677909 713146141 926045944 174862116 736624310 582273012 396806189 36055646 837690635 978947655 992001870 780061015 126695727 175060805 465759767 179991869 966131311 49614749 769327548 106790696 958668995 152314280 700560235 2076768 289918211 324986193 193648030 851759377 152523810 940381563 464130920 159828635 514650194 485063015 15037608 290474734 650990283 349076114 135975430 458363994 893019475 735891721 271484655 359714925 151364594 186244437 125829791 556619020 539957336 382904427 915330573 49614749 23973553 60017144 705304879 310726569 78649514 750750593 661321016 778123726 831467447 937158597 955501918 923715439 315747769 963141978 705304879 887548285 862177563 314069534 255644658 515426984 797746066 572465104 550336314 328764419 563678994 458363994 135975430 579757115 681765297 971549242 242530683 174862116 955501918 812044550 637769046 938705675 956286779 459617527 135975430 98231977 464130920 215052415 598426014 19715614 29069209 117210451 851400664 37275245 396806189 750978759 49317804 852604705 882364001 456137963 719307635 708046990 334299650 252792947 840130613 808614164 230662076 298050322 53226850 128450928 538025980 283321520 662421393 618355033 290117216 371179314 971894015 77685914 82689280 793291205 542382913 993091440 237389399 446968233 98287438 390275103 29069209 223299794 361435434 568142039 768561257 15903366 40656291 882804101 448262245 991615550 471393875 106790696 136384659 638790258 723661847 711532060 533455280 667844649 306607837 509019925 721418370 962073361 115090276 971549242 619842427 588034909 979740237 130160246 489612980 267829614 268759041 726620654 577970627 400218902 966131311 376974209 896571061 456137963 286037808 250749017 444897967 509370562 455539394 463496366 884059813 359859765 465697134 1736950 735696627 781242822 237389399 87392830 858127225 349644605 586446680 52243955 50241607 916956968 663971090 78775552 98824830 324129364 247006479 382904427 513440742 579757115 215774690 842970782 53525809 165821462 876263470 727827821 577970627 506178629 776352608 213097363 375066210 708053570 201717402 858040709 703490607 495854210 551289217 630977998 74587532 165821462 553368896 47529701 215774690 733642252 804406873 996943901 854902633 456137963 31615284 767187616 284588557 885141769 296305836 750750593 674485068 729868696 126695727 711532060 931013644 689757867 31615284 307403622 917452919 299462930 462762217 971549242 152243323 288072509 471393875 60017144 237389399 632378665 214650974 324129364 575895835 325554372 804406873 719601437 946916156 494336936 125829791 767839638 290117216 393120342 888699423 162904272 597206610 165821462 332834875 708094860 299113502 338312978 354807942 775682536 471393875 283321520 286037808 509664709 814662325 698320352 803588261 29473993 247841801 708046990 430284321 996943901 994877696 251367294 575895835 688177128 921198791 667313812 123073176 962430008 885549757 403519778 456956861 400178823 56154381 629101079 128188331 256866745 581063820 991615550 738855203 744008188 518384931 978947655 780870754 812044550 74587532 119279869 289736829 978947655 455539394 299994808 448262245 400218902 929504680 205387898 851400664 174862116 650697444 996943901 610447918 475344103 660765062 806792339 623398671 992169078 428572243 764459345 722768643 838803091 50241607 298050322 884072178 66490779 760231333 971549242 196106606 33511708 465697134 35128915 776352608 146573202 715779797 266583970 583924389 604881661 816971086 420636144 874124920 196460706 481894295 963141978 736624310 114409323 910850066 939725993 831467447 566125822 757850417 943793512 740340897 968670974 559014304 40131409 598426014 630629857 448262245 942866882 103669472 446968233 230662076 573480571 13112382 527595027 540976336 112390393 514650194 193515742 688577702 121069546 681765297 686335042 824770361 52243955 73848009 37275245 344620844 792822959 940188502 338929165 78649514 68748842 532803593 699733109 138393155 722013570 757815664 678474526 595030753 852755974 824770361 758889515 595030753 719601437 946916156 963141978 956286779 711532060 237389399 241184545 39220584 719601437 661321016 174335822 154538466 78775552 251042004 317751260 851400664 587179274 24188768 754133002 860477160 866568903 247841801 939725993 83066601 155241439 539381059 170941326 183440003 325554372 302151126 193515742 77819776 535533605 746092812 566125822 183440003 264100442 900116034 49948206 31615284 49948206 269911067 572465104 195957995 943793512 700560235 581831913 626833449 81337657 803588261 155241439 837690635 37275245 931640418 36055646 215981255 641231120 455539394 205387898 598426014 446968233 910850066 361002681 600441802 788118407 251188854 283321520 148087911 968670974 840075867 969494113 190979155 808614164 101231409 241184545 575023903 806744033 432089082 19715614 740340897 509370562 42657625 590918818 302151126 78775552 148087911 310726569 408395896 456137963 128188331 902464469 887794841 968670974 797746066 155241439 540394532 264100442 846351340 806792339 778074990 630238886 586370291 992169078 592639233 262406489 878442641 400178823 135975430 313272965 637939784 678474526 214244685 498045048 645094664 934824360 196106606 870201182 244528344 981996224 163769090 573449906 293192373 522663253 641635851 267829614 674485068 885353274 39220584 841780337 876868627 754133002 626833449 207844781 745200166 117210451 31615284 587179274 640925332 163229392 514650194 288873549 918225489 349076114 49317804 831241130 366854683 155241439 862254110 607041944 949084393 604881661 850386354 170938835 769327548 852107700 24188768 324986193 203331888 511277493 757815664 330205547 196106606 943235508 831467447 729868696 457149478 376974209 344620844 330205547 230662076 359859765 532803593 708094860 958668995 400178823 67700412 727827821 910850066 506919968 407629453 694954883 838331644 630238886 140129038 851829959 485153920 15903366 538810384 248642173 247234349 792846009 637939784 590918818 950497221 647733367 539381059 870201182 915330573 607041944 705548145 488788762 623398671 858798711 142903358 960543625 956286779 859168292 923927991 266583970 125829791 884952974 431406787 394791153 94279561 526944836 662421393 449022331 126695727 697742034 103733806 152314280 641635851 581831913 492009082 485262404 183440003 550322314 946612927 424974082 315747769 509144872 882364001 979750308 776820092 325554372 538025980 601740259 931013644 60017144 67831588 2575238 148087911 246221518 251188854 646710523 626833449 851829959 632014852 264297813 886917295 793291205 247006479 896072909 251188854 241184545 289736829 78775552 982370833 721769014 321628921 721769014 254203892 735710261 770594967 1736950 946612927 396632533 293192373 697742034 331638088 726620654 765027062 852604705 776820092 727578179 773781000 112390393 293192373 117210451 306607837 163229392 695599688 475344103 140129038 327773233 715779797 678474526 982416551 382904427 140129038 531333917 299113502 310726569 923927991 792822959 31615284 604881661 538810384 721769014 430088921 757709512 778074990 912948600 351424753 859168292 417074904 554242697 429277230 338631458 746992914 29473993 776820092 616057762 211958450 579757115 73848009 315297566 202477791 996943901 745200166 632378665 455539394 514768035 920628541 300892929 271484655 630629857 568104980 975478549 835339516 246221518 438183310 962073361 776820092 965948435 876868627 488788762 284588557 458290565 271484655 885141769 850386354 488788762 270237875 854243215 93651148 15903366 751925989 246058339 234980621 285947848 967417280 604181881 816971086 134971740 931013644 711532060 748408317 979750308 266213579 874297853 893019475 287239117 533455280 328764419 455539394 427184372 653201202 940381563 101231409 971549242 854902633 485262404 162062292 711532060 308142020 446968233 653201202 451521521 115090276 360743135 966131311 792822959 533455280 282751746 595030753 306597948 152618584 934824360 799588075 889608806 290117216 979750308 846351340 912948600 387176309 38304068 721418370 788118407 448262245 978947655 563678994 49948206 270237875 836376015 900116034 732559957 769327548 288072509 802009078 218611070 567948101 808838846 331638088 187104147 387176309 459452716 67700412 87392830 827311105 866568903 563678994 831241130 420052652 88335614 140129038 965948435 738855203 36055646 247221668 207442482 773781000 699230813 695599688 978947655 917452919 902464469 514650194 787269565 581063820 592981604 860477160 674446970 211958450 531135820 774489082 559957428 715779797 943235508 600441802 19911869 429277230 267829614 481894295 993091440 136384659 516175014 396050095 887548285 601630030 817743547 700560235 88335614 855636134 902464469 640849273 10369081 931640418 750750593 922706719 812414090 900796599 190323279 683406807 836376015 654830523 981996224 74587532 786320493 24188768 160287690 637939784 624819674 754580366 938080232 125829791 137529801 700560235 382210484 992001870 762749463 94279561 134801439 941586175 860708299 304621545 838803091 152618584 298050322 630201811 24089615 396743027 938456692 553368896 732559957 56154381 746394036 967417280 182214511 545538425 994587826 512614298 721769014 618542887 146573202 128188331 494336936 663971090 382210484 799588075 19911869 597206610 597784477 626833449 376974209 306258744 688177128 471393875 448881532 854902633 47349911 601630030 215289803 910850066 570796148 854969794 852755974 278160655 387703244 128188331 121069546 39220584 266583970 786380583 971549242 632014852 757709512 101231409 311808379 598426014 771803404 586446680 858040709 230662076 397928982 417074904 223299794 567774282 597784477 289736829 88335614 654830523 568142039 375066210 978947655 802009078 726950461 138393155 853170454 877167702 420636144 270237875 29473993 736237188 907721720 886917295 577673184 931966477 866568903 885995802 190323279 807117750 514768035 955501918 298050322 396806189 459452716 293192373 531333917 886149363 750750593 637657473 689757867 860477160 509019925 465697134 851829959 244528344 630629857 770594967 300892929 585165457 620243558 247221668 943235508 603931167 841780337 28363157 433921335 264408147 390793037 660765062 452156279 878442641 296751278 630775839 195733178 151506993 757709512 685702028 546141085 567774282 885647994 685702028 299462930 958668995 330274784 219054502 109054120 387176309 682170984 264408147 349076114 237389399 179991869 623398671 98231977 917795074 835198840 209789164 488788762 630775839 559957428 661321016 37275245 408395896 441621000 843005594 388085842 109369069 964902255 660765062 506178629 547547687 20148474 809429735 735891721 953882020 808614164 115090276 841210236 745200166 722013570 289918211 771803404 982370833 767839638 685702028 433921335 80485362 106790696 408395896 136412292 590208882 121069546 786380583 266583970 1926282 2379379 32806834 939725993 703490607 338929165 797746066 625664180 215981255 836376015 195957995 686884353 760370490 687055288 675472009 733642252 650990283 885647994 770594967 317751260 710224239 437743643 15037608 522663253 715779797 739696834 691982506 19715614 938140278 851829959 132556595 815123402 206036522 989729323 954677909 668964848 632014852 458156391 910850066 388085842 527654256 60017144 94279561 732245352 632402794 179981178 715779797 831241130 464130920 252962990 900116034 338312978 444897967 781242822 162062292 632378665 702364434 226492467 156817178 708046990 663670886 264297813 103669472 87392830 931966477 991615550 334299650 264100442 650697444 852604705 958668995 51457589 938140278 53966525 827311105 625664180 28363157 792822959 705304879 209497607 123073176 726950461 502849508 441621000 702364434 559957428 768561257 938080232 292149520 433921335 23262398 566554997 945394518 509370562 745200166 560327459 408395896 737945381 387176309 991615550 628523361 220576148 743614603 726620654 662421393 433921335 685702028 310726569 322974842 408032939 514650194 590918818 886917295 937158597 922858580 382210484 797746066 963141978 886917295 860708299 123073176 288072509 304621545 485063015 954227928 775682536 926045944 462394151 80485362 249820698 877167702 505061211 778074990 613596687 305990981 853170454 303230482 697742034 705548145 975478549 949084393 29473993 858127225 196460706 797746066 636434256 344876805 991615550 74587532 831380531 40656291 943235508 181668423 907095826 927806038 788118407 266213579 5299425 774489082 324129364 857535330 137529801 153196022 38085353 953882020 287768226 60750487 35128915 601630030 554242697 704431513 55108095 953882020 718980624 696443558 628820972 490344724 907721720 640849273 887548285 911302173 451521521 31615284 727245017 953882020 808838846 956815883 650036494 56154381 232177196 650697444 792846009 662421393 607041944 532803593 885141769 748408317 887548285 269911067 981996224 886917295 727578179 456956861 979750308 511330454 252962990 641635851 971549242 533864165 650036494 518384931 285947848 74587532 215289803 305990981 978947655 478351140 388085842 675472009 726950461 663670886 940381563 67831588 662972501 966131311 522332929 882364001 896029805 326469359 452156279 703514531 47349911 969294148 68748842 115090276 134971740 568104980 762749463 917452919 718980624 719307635 485063015 581063820 38304068 918225489 433921335 551289217 207844781 637939784 38304068 888699423 459452716 660765062 942866882 931013644 732245352 595030753 226492467 746092812 775682536 774489082 38304068 857535330 566125822 77819776 276676140 685702028 979750308 145559297 249820698 563678994 112090095 456956861 757709512 994877696 630977998 773781000 938456692 923927991 167276070 936312210 808614164 23262398 969494113 358401766 996943901 210621083 282751746 457149478 539035187 156817178 63192647 126695727 511277493 884072178 327773233 719307635 451521521 850386354 739696834 799588075 694954883 502849508 35128915 125829791 325554372 275349681 970911538 129724737 81553943 911302173 885353274 602396426 931005739 911302173 60017144 949084393 708046990 966683628 48746678 275202504 360743135 799588075 937158597 190929591 403519778 293192373 32954995 626932919 405444604 846351340 404152565 32806834 494336936 799588075 276676140 941586175 134801439 80485362 782533040 840075867 708046990 678884863 382210484 553191189 20148474 896571061 587179274 603931167 667313812 904800517 53195413 242186770 719601437 927806038 829614460 722768643 757709512 760231333 573449906 190979155 207844781 854969794 778123726 851400664 616796881 663670886 931005739 50241607 55108095 586446680 272303478 946612927 514768035 47290536 573449906 660095934 896072909 795549341 727827821 888553258 36265302 780870754 522332929 982353486 556619020 917795074 994587826 896571061 298050322 619842427 678474526 801623766 282751746 152866011 140725908 893019475 767187616 247841801 907095826 958668995 4519262 23973553 40131409 567948101 134971740 485153920 726950461 877088774 630977998 570764323 446968233 944068218 81337657 653201202 969494113 67831588 426814174 878442641 1736950 979740237 560623000 271484655 288873549 709613471 387703244 946612927 342116147 183440003 47529701 803588261 853170454 289736829 262406489 23262398 307060809 931086800 942899938 305990981 592970093 736237188 686884353 592639233 983113723 855636134 939725993 306258744 885141769 533455280 426814174 131323888 662972501 641635851 387703244 242186770 33511708 23973553 733642252 396050095 678474526 592639233 88335614 628523361 376448548 234980621 746394036 306607837 213097363 83066601 727827821 846351340 160287690 575023903 172382592 958668995 787269565 214650974 592981604 771321738 729868696 567948101 109054120 80415088 246058339 633587956 315297566 710224239 376974209 154538466 145885851 49317804 207844781 215981255 190323279 770864525 264297813 257214051 307060809 247006479 509019925 10475035 299462930 289736829 376448548 153196022 757709512 864016134 205387898 215774690 397928982 428572243 451521521 927806038 215052415 424594759 300892929 215792516 689757867 568104980 676975489 407091770 885000402 776352608 620243558 628523361 806744033 840130613 885353274 271484655 369306500 710224239 299462930 583924389 630977998 311613451 27735709 548748527 835212499 311613451 902464469 921198791 676975489 154538466 808838846 917795074 252792947 958668995 488788762 513440742 746394036 424594759 955730659 275349681 360743135 860477160 968755777 705304879 735891721 938140278 539035187 712346140 515426984 877088774 625664180 518384931 140725908 838655651 573480571 326469359 394791153 942999703 981996224 712346140 587179274 293192373 179991869 269911067 607965234 783513992 674446970 886149363 853903669 125204206 220576148 763431295 24089615 618542887 885353274 864016134 620243558 754580366 196460706 768561257 140725908 946612927 288873549 878442641 938705675 941586175 962430008 186285312 256866745 835339516 413592826 93478833 77685914 715779797 896072909 982370833 764459345 455539394 852755974 816971086 780061015 675472009 896029805 32075030 711532060 303230482 38085353 145559297 405444604 854969794 338312978 941586175 114409323 10475035 601740259 98287438 458156391 527654256 573480571 949084393 463496366 295606018 382210484 831467447 266583970 209789164 746394036 29069209 713146141 678884863 991615550 247234349 628820972 776352608 324986193 298727845 476912096 363976852 298050322 23262398 325554372 637769046 353964006 492009082 942866882 219054502 405444604 77819776 983113723 626833449 647733367 298727845 625664180 945394518 509664709 103733806 485509833 242530683 7807006 850386354 446968233 367026304 2379379 602396426 962073361 430088921 112390393 854902633 559957428 979740237 196460706 840130613 390793037 237389399 287239117 738612855 841210236 163769090 866337119 760370490 394791153 864016134 250749017 617908997 991615550 955501918 36055646 628523361 916956968 513440742 656191811 315747769 968755777 650697444 556619020 654830523 174335822 387176309 49948206 129724737 981996224 295606018 983373150 640925332 613596687 920721173 20148474 705304879 884952974 358401766 252962990 768561257 2076768 600441802 646710523 214650974 134971740 125204206 520071928 499057158 328764419 652018277 557710104 38844979 989729323 947413305 112390393 451817798 170941326 661321016 938456692 103733806 145885851 40656291 940381563 533864165 618355033 209789164 981996224 858127225 137529801 214244685 315297566 540976336 866568903 15037608 307060809 661321016 965948435 190979155 835198840 877088774 687055288 931086800 361002681 219054502 249820698 322974842 579757115 43970470 215052415 64420967 48746678 745200166 546141085 850386354 629101079 577970627 527595027 420052652 781246194 271484655 495854210 982416551 68748842 681930584 399037712 610447918 852755974 662421393 800460688 931966477 193515742 266213579 159828635 941586175 721769014 247006479 264100442 465759767 88335614 430088921 446968233 344620844 771803404 128702236 931005739 592639233 859168292 687988023 963141978 492009082 256866745 837690635 550322314 514650194 572465104 156817178 427184372 514650194 4519262 152523810 459452716 595030753 632378665 305990981 288873549 650697444 288072509 80415088 708053570 525347105 577673184 840130613 15903366 542382913 852755974 289736829 186244437 877088774 114409323 776820092 282751746 152866011 964902255 814662325 836376015 322974842 923715439 128188331 112090095 814295984 735710261 748408317 514768035 938140278 36055646 302151126 970320952 186285312 49614749 190979155 330274784 662421393 829983432 532803593 387703244 326469359 5299425 328462418 616796881 954227928 475344103 138393155 699230813 838331644 509019925 603931167 708094860 29069209 559957428 195957995 225771141 691982506 786320493 525347105 79509313 850386354 394791153 269911067 68748842 921198791 10369081 567774282 560623000 956815883 543865019 344876805 195019158 754580366 573449906 681930584 330274784 289736829 808838846 328462418 573480571 750563611 55108095 921198791 388085842 931086800 246221518 109369069 451551269 269911067 812044550 840075867 638790258 72820570 932715562 315747769 459452716 366854683 733642252 234980621 272303478 709613471 413592826 783513992 938705675 854969794 337153847 603931167 462394151 645094664 437743643 367026304 282751746 305990981 806792339 736237188 306597948 640849273 607041944 533455280 588034909 183440003 812044550 979740237 732245352 162062292 546141085 270237875 361002681 570764323 620243558 610834602 78775552 451817798 531333917 688577702 458156391 152866011 955730659 888553258 764459345 567343883 872434540 626833449 443960759 768561257 960796073 23973553 207844781 488295044 942899938 855636134 485063015 1926282 940381563 913521589 577673184 840075867 403519778 539381059 539035187 422532994 790270533 456956861 298050322 512614298 449022331 807117750 635302209 230662076 664041213 633587956 581831913 723661847 891279504 799588075 527595027 489612980 592970093 125829791 776835194 24188768 136412292 884059813 272303478 311613451 307060809 628523361 225771141 94279561 646710523 846351340 831380531 433686203 939725993 462762217 711532060 351424753 972710252 211958450 758889515 551289217 53966525 126695727 838803091 721418370 698320352 295366548 250885472 361435434 850484222 876868627 667313812 98824830 330274784 931966477 548964093 590208882 754133002 278160655 907721720 117931902 109054120 652018277 628820972 401452903 462394151 931013644 478892468 332834875 196460706 145559297 79509313 598543708 136412292 533455280 264100442 710224239 361002681 630201811 984047482 681765297 403519778 803588261 267829614 41538784 625664180 177689820 539035187 98287438 462394151 931013644 793291205 955501918 38085353 10475035 399037712 151364594 590918818 292696118 159828635 228290502 841210236 827311105 963141978 846351340 682170984 862254110 560327459 125829791 572465104 539957336 146573202 857535330 400218902 917452919 641231120 125204206 851759377 80485362 771803404 816971086 560623000 305068796 940381563 751925989 29473993 703514531 888259120 311613451 106790696 705304879 943793512 50241607 860708299 242530683 32954995 678884863 887548285 344620844 15903366 308142020 505061211 876263470 571019028 854969794 143200457 29069209 625664180 808866527 835212499 712346140 88335614 29069209 152314280 115509283 60017144 736237188 577673184 266213579 630977998 148087911 307060809 430101007 241184545 926044257 313272965 540976336 246221518 663971090 338312978 619842427 403519778 148087911 128450928 656623172 27735709 117931902 678474526 675472009 984050047 745200166 451521521 721418370 694954883 489612980 721769014 920628541 744008188 540394532 781242822 315747769 437743643 807117750 708046990 704431513 789617647 628523361 175060805 545538425 426814174 228290502 220576148 39220584 112090095 911302173 891279504 456956861 836376015 115090276 213097363 910850066 589760538 286037808 829983432 780870754 195019158 936312210 806792339 433686203 262406489 804406873 182214511 296305836 134971740 132556595 667844649 918225489 764116955 931966477 136412292 407629453 636434256 814662325 829614460 601630030 650036494 877088774 806744033 628523361 667313812 203331888 996943901 101231409 683621666 770594967 601740259 407091770 729868696 47290536 485262404 827311105 638790258 854902633 852107700 40448245 24089615 275202504 53966525 840075867 283321520 929504680 60017144 703490607 870201182 862177563 241184545 710224239 750750593 563678994 781246194 953882020 889608806 926045944 522663253 354807942 792822959 637657473 79523589 295606018 602832600 816971086 36265302 274113481 557710104 351424753 686884353 803588261 972710252 299113502 282751746 242028021 485262404 783513992 130160246 455539394 310726569 776352608 393120342 940188502 630977998 955501918 604881661 874124920 49614749 247234349 47349911 305068796 604181881 190979155 852107700 931086800 831241130 23973553 130160246 705548145 300892929 64420967 808614164 387176309 361002681 321628921 697742034 904800517 964902255 136384659 328764419 740882715 932715562 568104980 413592826 743614603 359714925 214650974 885141769 723661847 53195413 278160655 750978759 181668423 630629857 99294732 359859765 299113502 78775552 64420967 397928982 74587532 590918818 430284321 476912096 126695727 859168292 568104980 140551765 795549341 573480571 152243323 699733109 715779797 761330904 60750487 81553943 264750083 400218902 577970627 972710252 780870754 910818482 656623172 506178629 215774690 106790696 151364594 324986193 511330454 459452716 600441802 686884353 956815883 683621666 637657473 163229392 142903358 397928982 851400664 548964093 751925989 960796073 498840912 290474734 429277230 616057762 321628921 995876182 816971086 140725908 610834602 405444604 255644658 667313812 736237188 145885851 289918211 975478549 840130613 325554372 703514531 10369081 854969794 955730659 851400664 121069546 806664207 628820972 640925332 572465104 278160655 851829959 591292508 246058339 888699423 378961655 266213579 393120342 877167702 485509833 431406787 290474734 422532994 559957428 662421393 937158597 237389399 507016471 211958450 630238886 31215478 568142039 559014304 207442482 326469359 744008188 67700412 531333917 590208882 632378665 674485068 324129364 103733806 55018341 740340897 656191811 806664207 143200457 855636134 808614164 109369069 140725908 601630030 960796073 567343883 566554997 630201811 509144872 412979540 995876182 685702028 942866882 746092812 934824360 126695727 252962990 259646582 775682536 712346140 313272965 877167702 324129364 547547687 568142039 763431295 853903669 210621083 885000402 304621545 134971740 947413305 106790696 152866011 851759377 814662325 602832600 424594759 359714925 601630030 829614460 117931902 870201182 774489082 602832600 804406873 708053570 581063820 36055646 966683628 767839638 688577702 790270533 490344724 404152565 994877696 249670598 545538425 509664709 685702028 314069534 539957336 369306500 773781000 577673184 770993588 688177128 270237875 624819674 503666498 702745028 567343883 573480571 650697444 522663253 850386354 557710104 532803593 577673184 547547687 310726569 770864525 106790696 101231409 604181881 590208882 307403622 540394532 63192647 950673785 746394036 540976336 968755777 93651148 287239117 750563611 694954883 688577702 522663253 131323888 997329398 140129038 134971740 275202504 683621666 80415088 2379379 152866011 699733109 215774690 287768226 538025980 52243955 992001870 885000402 773781000 885647994 47290536 433921335 361435434 835198840 266213579 993091440 247234349 522332929 705548145 405444604 953882020 182214511 595030753 817743547 80415088 179981178 425392410 588034909 234980621 737945381 575895835 20148474 417074904 272303478 568104980 488788762 911302173 581831913 431406787 667313812 431406787 174862116 488295044 2076768 60750487 885647994 884072178 872434540 396806189 687055288 269911067 592970093 29069209 732559957 559014304 885141769 710224239 726950461 219054502 885141769 900116034 251367294 946916156 390793037 715779797 53966525 237389399 792846009 321628921 629101079 361435434 979750308 814295984 535533605 407629453 40131409 887794841 87392830 893019475 112090095 917452919 884952974 49317804 250832323 407091770 588034909 904771946 106790696 131323888 732245352 145559297 15903366 140129038 560623000 42657625 896072909 152618584 27735709 637657473 349076114 101231409 342116147 295366548 511277493 315747769 165821462 83066601 60017144 417074904 991615550 843005594 237172271 425392410 179991869 375066210 49614749 936312210 589760538 550336314 119279869 503666498 337153847 645094664 889608806 586370291 252792947 195957995 256866745 660765062 506919968 745200166 616057762 562773407 337153847 93478833 146573202 412979540 656191811 770993588 891279504 326469359 662972501 366854683 604881661 637769046 630238886 274113481 762749463 876263470 570796148 195957995 38085353 885549757 272303478 678884863 761330904 808866527 853170454 132556595 853903669 396743027 762749463 492009082 393120342 420052652 852755974 247234349 550322314 444897967 81553943 630201811 152314280 80415088 250749017 181668423 786320493 950673785 172894131 103669472 509144872 215774690 78775552 932584021 112090095 633573519 836376015 920628541 29473993 31215478 458156391 351424753 19715614 950673785 910818482 982370833 459617527 736237188 485262404 420052652 829614460 945394518 573449906 888699423 2575238 206036522 520071928 214650974 458156391 367026304 764459345 133739154 808838846 770594967 662972501 740882715 170941326 268759041 934824360 982353486 250832323 567948101 764116955 838655651 359859765 503666498 632378665 540394532 711455867 572588387 638790258 786380583 349644605 678884863 505061211 637939784 327773233 553191189 215289803 275349681 790270533 675472009 778123726 637939784 382210484 931640418 965948435 840130613 267829614 864016134 664041213 38338132 106790696 632402794 160287690 874124920 938456692 954227928 635302209 587469038 882804101 746092812 800460688 740882715 996943901 77819776 315297566 687988023 266583970 152243323 597784477 304621545 48746678 687988023 223299794 554222239 496698204 306258744 163229392 991073887 475344103 709613471 978947655 39220584 241184545 284588557 601740259 109369069 134801439 247841801 750978759 595030753 835212499 748408317 699733109 757850417 514768035 678884863 55108095 743614603 923715439 559014304 925555858 662421393 758889515 695599688 220576148 703514531 719601437 604968568 762749463 539381059 531135820 650990283 338929165 878442641 699230813 242028021 737945381 663670886 360743135 695599688 285947848 768561257 938705675 438183310 140551765 40656291 509144872 679463383 573449906 776820092 624819674 6720560 334932282 268759041 527595027 913521589 944573659 953882020 390793037 322974842 557710104 125829791 850484222 237389399 209497607 40448245 851829959 738612855 196460706 923927991 55018341 949084393 1736950 640925332 324129364 489130642 968670974 344620844 1736950 838331644 664041213 652018277 506919968 630201811 981996224 563678994 193515742 874124920 560623000 641635851 248642173 53226850 858040709 275202504 939725993 553191189 334932282 344876805 248642173 363976852 925555858 632014852 650036494 326469359 789617647 911302173 237172271 754580366 109054120 893019475 187104147 234980621 944573659 738612855 808838846 750563611 382904427 40448245 1736950 814662325 726620654 922858580 376448548 354807942 359714925 511330454 66490779 321628921 215052415 503666498 338631458 650990283 300892929 678884863 715957434 542382913 226492467 83066601 485262404 202477791 972710252 991073887 852604705 67831588 459617527 407510599 592970093 575895835 939725993 926044257 117210451 814662325 163229392 98824830 721769014 125204206 509019925 99294732 114409323 21190596 60017144 705548145 207442482 430101007 851759377 28363157 114409323 567343883 165821462 540976336 400218902 412979540 36265302 915330573 944573659 478351140 749497174 575023903 328764419 295366548 674446970 15037608 775682536 128188331 55018341 590208882 47349911 931086800 975478549 632014852 507016471 971894015 378961655 99294732 159828635 638516505 288873549 321628921 172894131 202477791 311808379 455539394 63192647 152866011 629101079 967417280 887548285 133739154 215052415 128188331 896072909 489612980 937158597 230662076 667844649 854902633 427184372 681930584 175507355 922706719 462394151 994877696 498045048 953882020 324986193 201717402 248642173 887794841 570796148 630201811 251367294 293192373 852604705 292972503 942866882 994877696 495854210 703514531 968755777 760370490 134801439 38844979 249820698 931086800 328764419 567948101 241184545 650990283 997329398 745200166 891279504 757815664 262406489 153196022 81553943 401452903 910818482 918225489 601740259 637657473 719601437 247234349 106790696 746992914 509019925 949084393 174862116 295606018 359714925 247006479 424974082 513440742 205387898 525347105 885647994 840130613 676975489 438183310 697742034 688534928 522332929 154538466 223299794 28363157 174335822 53525809 359859765 807117750 699733109 133739154 79509313 966131311 613596687 941586175 699733109 640925332 488788762 183440003 136412292 640925332 556619020 944068218 851829959 617908997 252792947 242530683 515426984 585165457 853903669 591292508 81337657 982370833 711532060 298727845 997329398 432089082 146573202 585165457 556619020 80415088 361002681 850386354 858040709 540394532 249820698 424594759 550322314 837690635 923715439 748408317 349644605 401452903 858798711 10475035 300892929 366854683 165821462 244528344 287239117 922858580 963141978 688534928 2379379 275349681 511277493 408395896 283321520 567774282 628820972 131323888 726950461 884059813 943235508 893019475 715957434 931086800 866568903 597206610 527595027 757850417 831241130 913521589 718980624 190929591 686335042 275349681 79509313 138393155 462394151 723661847 938456692 215977916 15903366 678884863 136412292 956286779 708046990 854902633 989729323 854969794 247822207 663971090 627110568 242186770 767187616 746092812 778123726 56154381 975478549 886917295 588034909 455539394 128450928 431406787 686884353 23262398 668964848 424594759 311808379 740882715 548964093 586446680 676975489 851400664 543945175 893019475 352092606 422532994 566554997 910850066 19911869 513440742 390793037 926045944 248642173 876868627 342116147 538810384 256866745 768561257 396937914 438183310 51457589 420052652 136412292 940188502 36055646 214244685 225858850 738612855 932715562 177689820 165821462 769327548 711455867 662421393 130160246 499057158 106790696 603931167 174335822 278160655 579757115 21190596 838803091 703490607 19911869 115090276 942866882 478351140 134801439 700560235 390275103 67700412 287239117 480361743 282751746 38338132 405444604 289918211 727827821 429277230 581831913 518384931 859168292 83066601 485509833 103669472 983113723 592639233 641231120 151506993 247822207 174140940 885000402 286037808 49948206 619842427 38304068 637769046 882804101 214650974 767839638 936312210 393120342 331638088 353964006 562773407 163229392 1926282 757709512 251188854 195733178 295366548 781246194 190929591 509019925 23262398 459452716 162062292 792846009 884072178 38304068 489612980 10369081 840075867 938456692 539381059 630629857 929504680 910818482 151506993 761330904 151364594 60017144 979740237 938456692 587469038 79523589 247006479 485063015 771321738 625664180 448262245 266583970 754580366 170941326 303230482 754133002 954227928 884952974 484158080 887548285 533455280 761330904 771321738 32954995 128702236 285947848 645094664 689757867 918225489 571019028 251042004 51457589 354807942 79523589 306258744 451551269 801623766 15903366 247841801 287768226 234980621 535533605 969294148 33511708 546679009 699230813 251042004 522663253 78649514 962073361 396806189 885141769 877167702 246221518 920628541 767187616 142903358 250832323 214650974 970320952 195957995 2076768 80485362 923715439 31215478 103219970 900116034 682170984 67831588 572465104 950497221 910818482 545538425 711455867 344620844 237172271 202477791 812414090 480361743 426814174 956286779 942899938 527654256 190323279 946612927 248642173 900796599 939725993 778074990 727578179 786380583 852107700 408395896 359714925 527654256 250749017 600441802 338312978 303230482 793291205 923927991 400178823 471393875 251367294 876868627 757709512 308142020 522332929 591292508 413592826 851400664 727827821 538810384 400218902 610447918 299994808 801623766 838803091 550336314 276676140 884059813 172894131 551289217 624819674 444897967 29473993 174140940 400218902 32075030 7807006 43970470 459452716 954677909 248642173 740882715 835198840 151506993 223299794 746992914 382904427 152866011 19911869 117931902 646710523 882364001 560327459 49317804 983113723 268759041 408032939 358401766 359859765 28363157 51457589 438183310 40131409 896571061 570796148 885549757 506178629 769327548 993091440 738612855 788118407 302151126 516175014 754580366 527595027 268759041 68748842 38844979 495854210 695599688 315297566 145559297 488788762 633573519 853170454 945394518 854243215 131323888 676975489 145559297 896029805 567343883 960543625 29069209 800460688 920721173 667313812 888699423 885141769 251042004 764116955 637769046 858798711 619842427 831241130 242186770 225858850 407091770 250885472 719307635 215289803 247841801 722013570 490344724 775682536 788737791 866568903 719307635 556619020 429277230 290474734 432089082 190323279 567343883 496698204 831467447 808614164 598543708 667313812 705548145 771803404 688577702 371179314 344876805 424974082 430284321 10369081 855636134 711455867 745200166 970911538 932584021 282751746 322974842 732245352 77819776 786320493 773781000 165821462 709613471 618355033 757815664 618355033 489612980 860708299 921198791 636434256 31215478 683621666 783513992 296751278 448262245 317751260 532803593 66490779 633587956 607760956 743614603 516175014 885995802 68748842 904800517 264297813 619842427 130160246 186285312 729868696 553368896 140725908 502849508 708046990 783513992 683621666 174140940 128450928 604968568 353964006 740340897 223299794 117931902 506178629 770594967 437743643 851400664 629101079 254203892 732245352 512614298 896029805 645094664 36265302 860477160 360743135 941586175 722013570 946916156 387703244 94279561 531333917 465759767 607760956 797746066 112090095 683406807 29473993 681765297 866568903 56154381 557710104 257214051 997329398 900116034 119279869 23262398 128450928 567948101 53195413 887794841 688177128 131323888 509019925 683406807 781242822 60750487 577673184 247841801 52243955 162062292 888259120 428572243 646710523 289736829 636434256 885549757 979750308 31215478 934824360 132556595 806744033 645094664 246221518 480361743 571019028 992001870 179991869 862254110 852604705 715779797 494336936 31215478 678474526 462762217 972710252 688534928 978947655 23262398 851759377 292972503 313272965 39220584 250749017 738612855 249820698 681765297 40131409 886149363 458363994 140129038 851759377 910850066 835212499 39220584 119279869 597206610 128450928 982370833 838803091 21190596 498045048 306607837 806744033 857535330 248642173 751925989 388085842 900796599 896072909 623398671 36265302 888553258 979750308 604968568 963141978 321628921 853170454 650990283 338631458 886917295 298050322 953882020 498045048 456956861 572465104 354807942 993091440 125829791 509664709 715779797 400218902 429277230 485063015 299113502 506919968 190929591 852755974 567343883 51457589 645094664 790270533 843005594 686884353 289736829 458290565 428572243 850484222 23262398 698320352 242028021 382210484 74587532 387703244 82689280 4519262 633573519 888259120 567343883 145885851 773781000 981996224 211958450 175507355 675472009 792846009 538025980 627110568 464130920 866337119 632402794 138442062 850386354 276676140 688577702 588034909 904771946 806792339 163769090 852604705 190929591 32954995 637657473 334932282 15037608 627110568 193648030 835212499 242530683 376448548 123073176 459452716 465697134 285947848 946916156 311808379 931640418 781242822 650990283 955730659 433686203 812414090 931086800 953267424 38338132 241184545 559014304 771803404 788737791 315297566 540394532 137529801 650990283 851759377 430101007 10369081 783513992 175060805 864016134 787269565 334299650 573480571 956815883 175060805 814662325 165821462 264750083 715957434 797746066 902464469 412979540 543865019 736237188 427184372 562773407 114409323 50241607 780061015 915330573 266583970 56154381 944573659 21190596 252792947 797746066 433921335 247841801 215289803 563678994 56927881 814295984 485262404 846351340 806744033 503666498 413592826 326469359 682170984 754580366 616796881 344620844 382904427 407510599 546141085 98824830 337153847 269911067 353964006 492009082 60017144 502849508 970911538 661321016 390793037 591292508 390275103 966683628 955730659 302151126 81337657 109369069 568142039 471393875 24089615 145559297 630977998 78649514 140551765 774489082 853903669 681930584 632378665 904800517 531333917 807117750 618355033 947413305 311808379 940188502 786320493 39220584 694954883 129724737 829983432 351424753 252962990 259646582 969494113 896571061 943793512 396806189 962430008 723661847 735891721 577970627 250832323 527654256 522663253 117931902 29473993 289918211 160287690 163769090 441621000 292696118 635302209 900116034 66490779 637939784 353964006 533864165 376448548 801623766 38304068 306258744 628820972 626833449 573480571 920721173 400178823 103733806 509019925 780870754 866568903 489130642 991615550 289918211 172382592 138393155 2575238 850386354 726620654 900796599 1736950 430284321 446968233 489130642 334211676 32806834 138442062 921198791 163229392 840075867 175060805 480361743 24089615 982370833 247822207 630775839 119279869 136384659 635302209 979740237 388085842 554222239 51457589 308142020 408032939 586370291 338312978 53226850 735891721 663971090 478892468 513440742 507016471 264750083 7807006 577970627 829614460 956815883 727827821 740340897 960543625 103733806 32954995 660765062 866568903 503666498 806792339 214244685 290474734 242530683 550322314 583924389 393120342 618542887 889608806 490344724 970320952 498840912 602832600 425392410 300892929 857535330 792846009 82689280 573449906 804406873 554242697 888553258 353964006 518384931 715957434 575895835 522663253 326469359 885141769 971894015 910818482 361435434 155241439 954677909 970911538 151506993 992169078 32075030 815123402 53226850 307060809 219054502 353964006 982353486 568142039 843005594 187104147 855636134 543945175 322974842 815123402 581063820 119279869 591292508 522332929 804406873 522663253 295366548 601740259 857535330 420636144 201717402 399037712 163769090 656191811 115509283 554242697 142903358 996943901 855636134 761330904 429277230 146573202 966131311 36055646 444897967 459452716 688577702 698320352 56154381 896029805 920721173 891279504 550336314 891279504 363976852 443960759 886917295 306597948 843005594 968755777 595030753 943793512 736624310 910818482 271484655 993091440 722768643 953267424 896571061 566554997 295366548 810021050 94279561 449022331 585165457 806744033 850386354 885647994 650697444 841780337 771321738 739696834 512614298 787269565 567774282 686884353 922858580 630238886 591292508 629101079 618542887 408032939 132556595 588034909 219054502 287239117 971894015 698320352 344620844 485262404 740340897 52243955 740340897 757709512 67700412 371179314 630775839 87392830 917452919 715957434 982370833 607760956 923927991 994587826 922858580 841210236 306258744 711532060 783513992 667844649 289918211 20148474 193648030 604881661 32806834 505061211 597206610 495854210 966131311 359859765 344620844 806744033 950497221 476912096 893019475 682170984 128188331 290474734 331638088 241184545 49317804 722013570 831467447 451551269 917452919 179981178 958668995 708046990 128702236 686335042 979740237 754133002 40448245 195733178 751925989 404152565 331638088 33511708 484158080 334211676 979740237 531135820 786380583 462394151 878442641 509144872 408395896 566554997 799588075 874297853 432089082 55108095 539381059 624819674 953882020 241184545 292149520 841210236 603931167 682170984 601630030 577673184 632014852 307060809 274113481 387703244 710224239 831380531 39220584 566554997 152243323 324986193 135975430 806792339 967417280 37275245 304621545 324986193 502849508 604881661 358401766 708046990 457149478 27735709 269911067 420636144 23262398 420636144 101231409 369306500 214244685 452156279 129724737 215289803 920721173 971549242 128702236 667313812 428572243 662972501 559014304 256866745 78649514 808614164 125204206 272303478 931966477 870201182 745200166 590918818 638516505 334932282 554222239 458156391 628523361 997329398 308142020 296751278 736624310 872434540 465697134 338631458 575023903 582273012 101231409 842970782 600441802 140551765 788737791 543945175 162062292 667313812 322974842 165821462 38844979 174335822 154538466 250885472 942999703 618355033 570764323 330274784 177689820 163229392 661321016 697742034 39220584 79509313 610447918 2575238 971894015 650036494 412979540 51457589 586370291 733642252 28363157 646710523 511330454 630977998 618542887 918521256 553368896 396632533 50241607 702745028 751925989 992169078 438183310 885353274 846351340 119279869 788737791 676975489 956815883 938705675 637657473 775682536 354807942 782533040 271484655 160287690 723661847 205387898 954677909 758889515 407629453 342116147 632402794 885000402 151506993 604881661 408395896 943235508 24188768 592970093 885549757 588034909 115509283 535533605 138393155 749497174 623398671 531135820 211958450 33511708 650990283 761330904 886917295 550322314 430088921 771803404 465759767 494336936 117931902 991615550 929504680 835212499 270237875 464444922 77819776 246221518 721418370 399037712 152618584 767839638 331638088 539035187 28363157 971549242 577970627 509019925 545538425 620243558 715779797 997329398 944068218 953267424 736237188 806744033 946916156 925555858 654830523 996943901 326469359 330205547 860377902 531135820 148087911 249820698 904771946 167276070 740340897 667313812 540976336 682170984 709613471 408032939 38338132 548964093 840075867 140725908 674485068 938456692 910850066 969494113 637939784 636434256 884072178 520071928 637769046 735891721 38844979 662972501 548748527 597784477 296305836 858040709 512614298 349076114 53525809 246058339 929504680 443960759 42657625 79523589 770594967 155241439 660765062 338312978 760231333 970320952 21190596 981996224 152618584 781242822 430284321 806792339 763431295 616796881 598543708 874297853 661321016 587179274 830619816 182214511 354807942 193515742 533864165 767187616 210621083 815123402 429277230 160287690 351424753 990121035 936312210 616796881 938140278 953267424 448262245 397928982 136384659 209497607 783513992 729868696 135975430 146573202 878442641 451551269 133739154 970320952 940188502 694954883 47290536 764459345 603931167 195733178 954677909 464444922 966683628 264100442 691982506 750750593 203331888 190323279 32075030 167276070 650990283 172894131 334299650 485509833 763431295 572465104 940188502 47529701 174140940 337153847 471393875 646710523 885549757 459452716 133739154 573480571 539381059 2076768 10475035 607760956 920721173 775682536 738612855 390275103 234980621 592981604 387176309 627110568 860477160 7807006 498840912 47529701 994877696 750978759 78649514 496698204 344876805 49614749 40448245 629101079 688534928 782533040 498840912 896072909 910850066 870201182 152523810 835198840 401452903 942899938 663670886 443960759 274113481 937158597 602396426 960543625 637939784 526944836 771321738 923715439 456956861 944573659 64420967 866568903 492009082 29473993 618542887 187104147 407510599 390275103 49317804 213097363 932584021 427184372 745200166 829983432 190979155 327773233 632014852 852604705 332834875 405444604 862254110 19911869 375066210 616057762 103733806 560327459 637657473 38085353 344876805 997329398 563678994 550322314 438183310 689757867 581063820 889608806 101231409 732245352 539381059 812044550 864016134 405444604 626932919 550322314 306607837 452156279 598426014 314069534 43970470 668964848 542382913 376448548 630201811 207442482 306258744 694954883 843005594 522332929 831467447 509664709 715779797 872434540 478351140 349644605 101231409 338312978 42657625 708053570 15037608 630629857 630775839 405444604 760231333 137529801 966683628 979750308 559014304 496698204 597206610 225858850 893019475 476912096 38844979 571019028 47290536 771803404 788737791 955730659 215981255 307060809 991073887 984050047 296305836 109054120 367026304 68748842 284588557 726950461 533864165 570796148 645094664 264297813 292696118 272303478 38844979 782533040 768561257 918521256 190979155 324129364 745200166 314069534 750563611 509144872 128702236 616057762 142903358 38304068 583924389 646710523 465759767 182214511 942999703 761330904 857535330 174862116 67831588 664041213 788737791 888259120 958668995 458156391 656623172 121069546 417074904 735891721 484158080 872434540 740882715 573480571 126695727 55108095 797746066 602832600 814295984 910818482 99294732 866568903 502849508 495854210 1926282 601740259 151364594 390275103 396743027 934824360 117931902 338312978 306258744 478892468 367026304 485509833 237389399 51457589 840075867 264297813 765027062 630977998 254203892 79509313 215981255 698320352 259646582 831380531 979740237 767187616 484158080 299994808 660095934 732245352 478351140 427184372 994877696 535533605 982353486 889608806 654830523 940381563 98824830 459452716 24188768 938080232 660765062 325554372 953882020 66490779 804406873 2379379 637769046 35128915 736237188 49948206 21190596 572465104 808866527 172382592 770993588 441621000 740340897 874297853 278160655 597784477 268759041 290474734 215792516 812044550 941586175 579757115 602396426 761330904 630775839 250885472 575023903 382210484 363976852 687055288 195957995 159828635 125829791 182214511 858127225 970911538 230662076 715957434 195957995 979750308 387176309 387703244 776820092 237172271 922858580 739696834 954227928 853903669 326469359 2575238 183440003 396632533 619842427 446968233 420052652 140725908 687988023 136412292 661321016 762749463 481894295 241184545 502849508 750750593 195957995 994587826 769327548 396937914 152523810 404152565 840130613 196460706 215774690 866568903 94279561 817743547 931966477 195733178 712346140 727578179 407629453 509019925 270237875 668964848 877088774 750750593 67831588 566125822 214244685 215052415 6720560 98231977 32075030 420636144 101231409 190323279 367026304 944573659 641635851 494336936 738612855 247822207 514650194 758889515 602396426 859168292 451817798 226492467 783513992 573480571 979740237 646710523 492009082 81553943 862177563 458363994 296305836 330274784 765027062 664041213 83066601 746394036 757850417 394791153 21190596 764459345 117931902 602832600 425392410 573449906 211958450 997329398 838331644 831241130 835339516 315297566 688534928 19715614 709613471 361002681 278160655 159828635 103669472 399037712 663670886 708053570 38844979 283321520 807117750 577673184 432089082 991615550 103733806 49614749 32075030 817743547 462762217 683621666 953882020 267829614 53525809 635302209 633587956 298050322 953882020 218611070 843005594 792822959 215792516 63192647 922706719 112390393 99294732 662972501 854969794 984050047 663670886 20148474 663971090 485063015 532803593 163229392 630201811 404152565 736624310 66490779 354807942 47349911 862177563 711455867 206036522 207844781 587469038 441621000 710224239 650036494 838655651 613596687 140129038 314069534 675472009 970911538 567343883 334932282 735696627 858798711 136384659 790270533 966131311 968755777 73848009 334211676 619842427 568142039 736237188 939725993 610834602 641231120 886149363 559957428 396743027 531333917 922706719 885141769 490344724 838803091 757850417 167276070 750563611 635302209 838331644 543865019 827311105 237172271 885549757 992169078 322974842 299462930 407510599 2379379 956815883 408032939 942999703 112390393 617908997 299994808 567774282 912948600 740882715 650036494 214244685 587179274 123073176 338631458 214650974 689757867 264408147 991615550 152523810 5299425 136384659 49614749 123073176 128450928 917452919 792846009 827311105 995876182 264408147 287239117 843005594 68748842 807117750 852107700 619842427 405444604 700560235 729868696 931013644 256866745 653201202 162904272 783513992 757709512 705304879 978947655 31215478 789617647 735696627 49948206 270237875 629101079 431406787 511277493 786380583 458156391 538810384 325554372 610834602 767839638 140129038 267829614 712346140 841210236 73848009 757709512 308142020 495854210 663971090 764116955 738612855 539035187 498840912 330205547 242530683 399037712 563678994 328764419 971894015 592981604 344876805 298050322 703490607 485509833 425392410 557710104 344876805 841210236 430101007 81553943 757815664 727245017 843005594 896072909 542382913 334211676 292972503 33511708 502849508 400178823 763431295 620243558 133739154 992169078 854969794 912948600 721418370 175507355 6720560 287239117 429277230 117210451 786380583 601740259 562773407 299462930 678884863 902464469 481894295 887548285 746092812 314069534 53525809 298050322 650990283 960796073 278160655 939725993 38338132 464444922 721418370 182214511 619842427 256866745 274113481 509019925 50241607 400218902 650990283 874297853 913521589 882804101 982416551 602832600 837690635 313272965 13112382 443960759 982370833 993091440 6720560 749497174 553191189 7807006 540394532 172382592 884072178 694954883 152866011 382210484 237389399 566125822 776352608 79523589 43970470 448881532 478351140 767839638 254203892 656191811 966131311 636434256 583924389 889608806 431406787 993091440 123073176 382210484 328462418 128450928 28363157 983113723 363976852 272303478 760370490 38085353 876263470 632378665 525347105 145885851 876263470 550322314 67831588 246221518 208625324 311808379 735696627 136412292 422532994 981996224 703490607 207442482 254203892 353964006 884072178 991615550 688534928 174862116 465759767 53195413 888699423 991615550 559014304 664041213 954227928 49948206 257214051 38304068 420052652 531333917 653201202 735710261 465697134 970911538 748408317 942899938 478351140 667844649 195957995 963141978 103669472 78775552 922858580 2575238 858127225 943793512 503666498 885141769 215792516 557710104 837690635 220576148 926044257 459617527 274113481 570796148 610447918 667313812 941586175 334211676 366854683 55018341 735696627 995876182 969294148 711455867 424594759 324129364 679463383 452156279 151506993 955730659 598426014 195733178 251188854 448881532 289918211 566554997 332834875 36265302 132556595 413592826 425392410 940381563 407629453 543865019 430101007 978947655 683406807 68748842 480361743 607041944 177689820 196460706 163769090 888259120 209789164 616796881 499057158 53966525 247221668 841780337 489612980 371179314 433686203 964902255 49317804 509370562 950673785 399037712 28363157 298050322 598543708 32954995 363976852 749497174 915330573 317751260 538025980 509019925 292149520 874297853 511330454 478892468 209789164 60017144 456956861 215289803 93478833 449022331 308142020 539035187 539381059 405444604 804406873 55018341 797746066 667313812 786380583 496698204 760231333 835198840 932584021 573480571 131323888 349644605 654830523 437743643 991073887 172382592 538025980 781242822 259646582 252792947 50241607 762749463 638516505 371179314 10475035 739696834 128702236 20148474 896571061 251367294 674485068 582273012 80485362 266583970 674485068 451521521 567948101 448881532 876263470 138442062 181668423 632378665 302151126 962073361 247006479 995876182 251042004 618355033 183440003 162904272 746092812 288873549 99294732 462394151 196106606 495854210 49317804 842970782 264750083 838803091 60750487 579757115 80415088 307403622 455539394 557710104 590208882 252962990 387176309 767187616 715779797 225771141 278160655 836376015 433686203 5299425 554222239 314069534 637769046 984047482 931966477 488788762 230662076 241184545 254203892 485509833 660095934 509664709 208625324 283321520 570764323 667844649 484158080 687055288 412979540 223299794 78649514 506919968 840075867 592981604 40448245 452156279 424594759 360743135 234980621 310726569 296305836 78775552 675472009 249670598 214244685 835198840 768561257 853170454 554222239 215289803 511330454 762749463 745200166 727827821 757850417 37275245 117931902 853170454 595030753 543865019 587469038 306597948 242186770 991615550 860377902 757709512 994877696 376974209 387176309 635302209 904800517 984047482 850386354 970911538 162062292 299994808 688577702 505061211 645094664 283321520 133739154 543865019 568104980 250832323 190929591 37275245 326469359 247822207 888699423 888259120 455539394 10369081 305068796 971549242 50241607 98231977 38338132 896029805 82689280 749497174 882364001 636434256 428572243 112390393 332834875 686884353 6720560 808614164 251188854 307403622 295606018 646710523 471393875 317751260 958668995 618355033 955501918 573480571 590208882 174862116 920628541 912948600 956286779 983113723 857535330 498045048 591292508 10369081 302151126 509664709 628523361 806792339 98287438 989729323 783513992 853903669 982353486 353964006 675472009 548964093 15037608 699733109 650990283 590918818 640849273 520071928 396806189 2076768 780870754 789617647 315747769 859168292 396050095 451551269 74587532 761330904 769327548 978947655 864016134 896072909 23973553 749497174 920721173 37275245 946916156 810021050 211958450 968755777 215977916 334211676 553368896 225858850 597206610 962073361 769327548 968670974 538025980 426814174 944068218 896029805 152243323 175060805 448262245 522332929 751925989 912948600 242028021 397928982 780870754 79509313 585165457 994587826 913521589 711532060 201717402 793291205 396050095 632378665 152866011 55108095 83066601 509370562 715779797 15903366 488295044 676975489 617908997 451521521 567774282 656191811 292972503 290474734 174140940 215052415 201717402 288873549 103733806 630977998 838331644 390275103 538025980 266583970 322974842 735891721 344876805 225858850 893019475 981996224 932584021 246221518 687988023 962430008 619842427 925555858 15037608 172382592 570764323 650036494 242186770 546141085 663670886 399037712 661321016 47529701 922706719 159828635 640849273 249820698 840130613 463496366 587469038 179991869 451817798 733642252 42657625 995876182 289736829 767187616 53226850 165821462 480361743 117210451 922858580 170938835 641635851 978947655 162062292 205387898 551289217 735710261 946916156 349644605 490344724 361002681 904800517 882804101 851400664 165821462 140129038 404152565 133739154 276676140 862254110 889608806 953882020 687055288 931640418 995876182 128188331 225771141 292972503 494336936 498840912 172894131 540394532 971549242 632402794 195019158 695599688 573449906 455539394 978947655 503666498 264100442 687988023 989729323 770993588 582273012 604968568 205387898 662421393 78775552 922858580 970911538 630775839 77685914 966131311 400178823 632014852 56927881 67831588 509144872 900796599 582273012 129724737 241184545 637939784 629101079 242028021 226492467 559014304 625664180 152866011 119279869 585165457 251367294 656623172 488788762 633587956 20148474 266213579 207442482 538025980 205387898 926044257 195733178 98824830 485063015 31615284 55018341 661321016 531135820 533864165 689757867 488295044 623206361 518384931 907721720 1926282 647733367 40656291 968755777 539381059 782533040 422532994 215289803 567343883 912948600 590208882 325554372 942999703 36265302 602396426 715957434 750563611 940381563 808866527 581831913 67700412 437743643 632014852 625664180 42657625 458156391 211958450 81337657 854969794 686884353 904771946 885647994 407629453 88335614 432089082 390275103 268759041 940381563 827311105 249820698 814662325 790270533 888553258 283321520 982370833 829614460 151364594 225858850 103733806 241184545 115509283 650036494 553191189 994587826 396050095 699733109 751925989 885141769 702364434 387703244 550336314 509664709 797746066 522663253 539381059 256866745 344876805 942899938 512614298 393120342 126695727 806792339 50241607 932715562 53226850 324986193 780870754 77685914 804406873 165821462 274113481 852604705 289736829 195019158 270237875 726620654 498840912 382210484 478351140 241184545 533455280 853903669 322974842 207442482 126695727 726950461 228290502 213097363 67700412 984050047 915330573 628820972 663670886 902464469 23973553 750750593 663971090 632378665 950673785 735891721 366854683 19715614 251042004 808838846 878442641 299994808 808866527 55018341 640925332 689757867 540394532 889608806 31215478 163229392 920628541 225771141 284588557 531135820 846351340 635302209 712346140 960796073 254203892 726950461 563678994 746394036 133739154 300892929 938140278 287768226 751925989 225771141 208625324 984047482 305068796 601740259 546679009 324986193 331638088 788118407 47290536 19911869 740340897 835198840 876868627 106790696 927806038 262406489 140129038 522332929 151506993 539035187 610447918 808614164 266213579 251367294 913521589 582273012 586370291 195019158 831467447 495854210 296305836 36265302 422532994 262406489 598426014 382904427 292696118 776835194 251188854 327773233 275202504 37275245 492009082 566125822 760231333 535533605 966683628 674446970 877088774 40131409 298727845 163229392 38844979 548964093 877088774 349076114 101231409 776835194 42657625 572465104 73848009 543945175 6720560 79523589 42657625 885647994 927806038 629101079 38338132 463496366 209789164 682170984 760370490 498045048 489612980 209497607 864016134 47529701 162062292 960543625 882364001 495854210 457149478 735710261 563678994 20148474 795549341 314069534 412979540 943793512 251188854 182214511 746992914 53966525 932584021 394791153 763431295 448881532 190979155 458363994 876263470 918521256 904771946 968755777 492009082 792846009 838331644 781242822 802009078 884952974 931086800 459452716 645094664 288873549 438183310 943793512 746992914 205387898 152523810 788118407 32806834 587179274 770993588 251367294 344620844 781242822 918225489 506919968 917795074 592970093 617908997 441621000 969294148 972710252 82689280 307403622 921198791 250832323 259646582 543945175 433686203 792846009 303230482 887548285 601630030 458156391 757850417 557710104 533864165 287768226 367026304 860708299 696443558 853903669 770993588 983113723 604968568 589760538 430101007 601740259 590208882 526944836 920628541 315297566 289918211 601740259 375066210 55108095 259646582 577673184 681765297 33511708 148087911 963141978 219054502 207844781 407091770 771803404 806664207 526944836 117931902 860708299 769327548 250832323 135975430 829983432 917452919 548964093 203331888 722013570 807117750 190323279 115090276 963141978 567948101 382904427 637769046 522663253 53525809 507016471 950673785 907095826 484158080 49948206 242530683 910818482 254203892 746394036 660765062 98231977 451817798 732559957 567774282 885353274 595030753 699733109 846351340 970320952 53525809 607760956 661321016 446968233 757815664 850484222 685702028 554242697 417074904 511277493 955501918 306597948 604968568 636434256 598426014 960796073 938140278 613596687 592639233 81553943 490344724 145885851 489612980 155241439 681930584 400218902 770594967 7807006 422532994 746394036 129724737 556619020 745200166 588034909 148087911 852107700 562773407 650036494 750563611 997329398 637769046 313272965 430101007 762749463 994877696 51457589 705304879 382210484 53226850 715957434 628523361 382210484 351424753 568142039 195957995 787269565 688534928 571019028 955501918 290474734 610447918 739696834 210621083 4519262 502849508 413592826 366854683 400178823 882364001 317751260 181668423 520071928 590208882 225858850 610447918 37275245 931966477 546141085 430088921 77685914 254203892 808838846 885995802 264100442 98287438 475344103 802009078 835198840 464130920 526944836 315747769 174862116 49317804 98231977 237389399 114409323 72820570 842970782 125204206 459617527 195957995 390793037 148087911 870201182 953882020 831241130 289918211 835212499 23262398 232177196 802009078 252962990 354807942 4519262 478351140 996943901 448262245 557710104 465759767 964902255 846351340 613596687 944068218 299462930 586446680 215289803 471393875 733642252 53226850 282751746 656623172 739696834 553191189 592970093 788737791 607760956 462762217 940381563 575023903 607965234 650697444 77685914 196106606 925555858 877088774 969494113 455539394 36055646 703490607 232177196 626833449 509019925 242530683 63192647 290117216 247822207 56154381 726620654 619842427 342116147 681930584 464444922 850386354 369306500 923927991 835198840 917452919 630629857 299113502 727578179 652018277 404152565 242028021 390793037 72820570 719601437 663670886 689757867 489612980 829983432 884072178 732245352 950497221 851759377 215977916 858798711 770993588 590918818 956815883 459452716 886917295 315343704 13112382 808838846 858127225 324129364 499057158 557710104 93651148 114409323 29069209 624819674 929504680 817743547 251042004 889608806 874124920 960543625 702364434 276676140 661321016 983373150 542382913 942866882 433686203 249670598 151506993 597784477 712346140 456137963 215774690 225858850 922858580 408032939 695599688 792846009 78649514 543865019 757850417 829614460 831467447 494336936 945394518 885141769 424594759 582273012 295606018 262406489 444897967 225771141 920721173 527595027 653201202 726950461 326469359 361002681 831467447 426814174 151364594 307403622 208625324 112090095 131323888 989729323 533455280 167276070 101231409 885647994 533455280 687055288 275202504 48746678 363976852 887548285 562773407 888259120 78649514 207844781 854902633 220576148 255644658 237172271 915330573 972710252 774489082 408032939 992001870 656191811 992001870 620243558 296305836 874297853 597206610 984050047 765027062 327773233 126695727 667313812 396806189 962073361 788737791 990121035 354807942 241184545 773781000 568142039 807117750 298050322 295606018 449022331 567774282 476912096 816971086 721769014 992001870 686884353 293192373 66490779 687988023 674446970 412979540 970911538 489612980 942866882 109369069 79523589 663971090 994587826 904800517 130160246 430101007 315297566 941586175 32954995 982370833 925555858 982370833 872434540 489612980 226492467 532803593 249820698 979740237 252792947 740340897 579757115 268759041 991615550 773781000 601740259 927806038 776835194 457149478 33511708 490344724 338929165 583924389 885141769 93478833 636434256 29069209 546141085 806664207 990121035 835339516 397928982 992001870 193515742 922858580 732245352 49317804 441621000 499057158 989729323 745200166 38085353 103669472 426814174 162062292 781242822 660765062 776835194 286037808 989729323 748408317 405444604 305068796 174335822 927806038 433921335 857535330 872434540 567343883 787269565 604968568 223299794 298727845 248642173 553191189 891279504 322974842 267829614 306258744 87392830 326469359 630629857 917795074 858040709 942999703 266583970 295606018 531333917 268759041 686335042 982353486 978947655 298727845 330205547 115090276 812414090 650990283 702745028 363976852 885353274 681930584 613596687 31615284 55108095 586370291 638790258 142903358 79523589 396050095 688177128 954677909 128450928 851400664 884952974 334299650 787269565 704431513 625664180 326469359 420636144 115509283 708094860 425392410 218611070 140129038 246058339 882364001 146573202 511330454 207844781 247006479 33511708 40448245 420636144 700560235 782533040 302151126 571019028 969294148 250885472 887794841 196460706 945394518 193515742 67700412 983113723 153196022 207844781 278160655 907095826 151506993 726620654 492009082 1736950 660765062 993091440 101231409 686884353 129724737 359859765 156817178 267829614 396050095 53966525 503666498 452156279 254203892 662972501 518384931 939725993 209789164 667844649 13112382 352092606 292149520 119279869 746992914 155241439 601630030 989729323 23262398 52243955 126695727 52243955 546679009 195019158 53226850 15903366 678884863 485262404 542382913 475344103 567948101 485262404 290117216 134801439 803588261 213097363 654830523 128450928 953882020 195019158 757815664 264297813 650697444 514768035 196106606 514768035 738855203 726620654 809429735 539035187 597206610 884952974 824770361 713146141 830619816 604881661 770993588 550322314 958668995 195019158 270237875 851759377 563678994 715957434 49317804 315297566 858127225 172382592 862177563 376974209 650697444 424974082 533864165 667313812 31215478 441621000 295606018 382904427 129724737 787269565 827311105 984050047 553368896 337153847 257214051 287768226 904800517 667313812 533455280 942866882 60750487 376448548 93651148 382210484 926045944 934824360 567948101 581831913 843005594 764459345 592639233 283321520 432089082 726950461 562773407 853903669 132556595 159828635 929504680 589760538 876868627 485509833 126695727 112390393 32806834 572465104 103733806 789617647 551289217 990121035 540394532 140725908 525347105 451551269 422532994 767187616 862254110 629101079 488295044 902464469 685702028 342116147 942999703 315343704 417074904 327773233 407510599 984047482 652018277 36265302 448262245 531333917 575895835 808838846 480361743 310726569 765027062 55108095 99294732 870201182 42657625 854243215 940188502 757709512 768561257 664041213 152618584 697742034 208625324 49614749 242028021 252792947 247006479 195019158 361435434 636434256 814295984 984047482 858127225 24089615 806664207 400218902 626833449 56927881 420052652 507016471 751925989 262406489 874124920 981996224 904800517 870201182 539957336 448881532 598543708 215289803 900116034 458156391 691982506 311808379 900116034 451551269 893019475 88335614 286037808 729868696 910850066 852604705 760370490 5299425 498840912 226492467 203331888 250749017 151506993 146573202 332834875 310726569 604968568 186244437 654830523 390275103 660765062 112090095 481894295 498045048 163769090 918521256 808866527 592970093 407510599 885141769 568104980 983373150 293192373 509019925 704431513 746394036 801623766 117210451 628523361 854243215 920628541 77685914 306258744 283321520 640925332 388085842 751925989 165821462 211958450 851759377 247234349 408032939 322974842 53195413 247221668 732559957 123073176 841210236 77819776 106790696 857535330 456137963 259646582 405444604 688534928 408032939 351424753 932715562 910850066 53195413 600441802 983113723 751925989 939725993 321628921 715957434 855636134 570796148 431406787 943793512 133739154 520071928 551289217 443960759 562773407 33511708 448262245 858040709 539381059 735710261 600441802 187104147 575895835 896072909 860477160 112390393 765027062 557710104 489130642 165821462 140129038 288873549 190979155 378961655 660765062 207844781 705548145 475344103 478351140 437743643 969294148 860708299 193648030 767187616 904800517 488788762 72820570 750978759 518384931 788118407 47290536 687055288 950497221 761330904 43970470 307403622 131323888 732559957 583924389 592970093 465697134 267829614 568104980 885647994 444897967 566125822 154538466 349644605 645094664 282751746 292696118 496698204 303230482 970911538 678884863 975478549 547547687 315343704 918225489 79509313 922706719 196460706 750563611 317751260 994877696 955730659 196106606 531333917 101231409 983373150 292972503 267829614 264408147 746394036 401452903 688177128 131323888 160287690 367026304 699230813 31615284 27735709 125829791 36265302 103733806 997329398 592639233 885141769 740882715 371179314 190979155 338929165 289736829 942899938 862254110 539035187 41538784 808838846 650990283 252792947 32075030 218611070 237389399 767187616 128188331 937158597 503666498 507016471 628523361 382904427 581063820 353964006 548748527 746394036 944068218 990121035 630775839 767839638 99294732 762749463 598426014 546141085 264408147 806744033 860477160 964902255 490344724 604881661 956815883 328764419 885549757 573449906 407091770 835198840 490344724 342116147 135975430 215052415 471393875 40131409 190929591 590918818 637657473 727578179 315747769 750978759 837690635 761330904 893019475 628820972 254203892 835212499 773781000 334211676 80485362 516175014 663971090 923715439 228290502 970911538 448262245 27735709 710224239 588034909 760370490 179981178 261683638 841210236 123073176 313272965 795549341 426814174 186285312 338631458 705548145 264100442 255644658 424974082 703490607 573480571 266213579 511277493 24188768 459617527 746092812 896029805 857535330 315297566 638516505 328764419 923927991 943793512 101231409 729868696 215774690 349644605 32075030 727245017 687988023 732559957 770594967 850484222 278160655 140551765 623398671 155241439 407091770 515426984 444897967 68748842 652018277 175060805 186285312 427184372 275349681 817743547 874124920 568142039 242530683 117210451 32806834 38304068 967417280 923715439 311613451 182214511 275202504 247822207 433686203 324129364 125204206 550322314 982416551 566125822 302151126 464444922 396743027 511277493 650990283 616057762 855636134 589760538 878442641 557710104 896571061 51457589 992001870 448881532 407629453 910818482 152866011 556619020 23973553 215289803 854902633 968670974 332834875 382904427 78649514 88335614 215774690 698320352 773781000 51457589 626833449 767187616 946916156 713146141 354807942 771803404 904771946 400178823 769327548 314069534 735696627 237172271 982370833 788118407 242028021 641231120 827311105 831380531 602396426 992169078 183440003 2076768 93651148 272303478 757815664 841780337 31615284 992169078 540394532 577673184 931966477 953267424 958668995 170938835 923927991 63192647 773781000 975478549 702364434 711455867 738612855 851759377 587469038 349076114 259646582 984050047 511330454 494336936 748408317 539035187 550336314 342116147 563678994 981996224 481894295 136412292 499057158 944573659 687988023 787269565 80485362 885000402 455539394 853170454 915330573 697742034 922858580 979750308 617908997 646710523 705304879 597784477 428572243 656191811 109369069 992169078 846351340 361002681 956286779 485509833 702364434 182214511 602396426 616057762 101231409 288873549 585165457 688177128 431406787 66490779 56154381 938456692 387176309 983373150 407091770 604881661 931966477 249670598 498840912 708053570 215981255 835212499 206036522 179981178 554222239 511277493 743614603 697742034 931086800 186244437 1926282 369306500 306607837 858798711 74587532 689757867 929504680 790270533 244528344 715957434 774489082 955730659 675472009 722013570 660765062 997329398 268759041 140725908 247006479 771803404 735696627 495854210 746092812 546141085 572588387 896029805 567343883 252962990 888553258 404152565 551289217 627110568 640849273 88335614 305990981 527595027 351424753 134971740 40448245 117210451 632402794 38085353 927806038 264297813 585165457 939725993 840130613 597784477 420052652 817743547 740340897 287239117 190929591 676975489 503666498 744008188 877167702 817743547 554222239 994587826 266213579 47529701 67700412 2076768 931013644 866337119 630201811 155241439 691982506 965948435 210621083 359714925 931013644 163229392 321628921 852107700 215792516 520071928 230662076 441621000 186285312 376974209 864016134 170938835 807117750 715957434 638516505 829614460 661321016 307403622 408395896 627110568 77819776 870201182 637939784 36055646 538025980 250832323 610834602 964902255 67700412 940381563 464130920 167276070 882364001 995876182 809429735 47349911 28363157 815123402 98824830 786320493 640849273 38085353 268759041 182214511 430088921 699230813 145559297 931005739 214244685 942899938 652018277 962073361 700560235 971549242 422532994 589760538 40448245 155241439 6720560 152314280 293192373 729868696 429277230 767187616 575023903 298050322 266213579 968670974 956286779 789617647 545538425 932715562 838331644 307060809 760370490 727827821 289918211 376448548 932584021 776835194 264750083 174335822 32075030 324129364 41538784 944573659 799588075 134801439 840130613 630629857 554222239 87392830 570764323 452156279 292972503 590918818 619842427 310726569 407091770 52243955 23973553 505061211 464130920 267829614 590208882 733642252 215792516 896029805 721418370 559957428 492009082 960543625 641635851 781242822 417074904 888259120 211958450 932715562 681930584 382210484 431406787 246058339 50241607 902464469 931013644 953267424 740882715 852107700 247841801 812414090 109369069 607760956 808866527 629101079 827311105 27735709 311613451 810021050 264750083 155241439 927806038 944573659 551289217 267829614 464130920 732245352 103669472 427184372 49317804 604181881 305068796 514768035 838331644 443960759 835339516 702745028 886917295 20148474 598543708 134801439 695599688 793291205 623398671 942866882 438183310 835212499 326469359 327773233 586446680 509370562 797746066 767187616 917795074 963141978 540394532 602832600 455539394 55018341 10475035 727827821 645094664 47349911 768561257 155241439 743614603 172382592 123073176 891279504 887794841 697742034 464130920 38304068 778074990 767187616 321628921 458363994 115509283 19715614 32075030 539035187 633587956 942899938 595030753 889608806 485153920 739696834 675472009 953267424 254203892 359859765 24188768 616057762 862254110 687055288 705548145 746394036 38338132 162904272 846351340 632378665 138393155 885141769 660765062 531135820 926044257 729868696 740340897 572465104 499057158 618355033 568104980 531333917 115090276 247822207 640849273 121069546 29069209 934824360 619842427 806792339 148087911 252792947 215981255 939725993 547547687 55108095 264408147 441621000 80415088 507016471 591292508 272303478 931640418 264100442 877167702 573480571 885995802 47529701 484158080 215289803 478351140 960543625 587469038 223299794 408395896 697742034 685702028 689757867 358401766 627110568 831467447 786320493 542382913 134971740 703514531 587179274 776352608 220576148 244528344 627110568 838655651 570796148 77819776 66490779 941586175 130160246 838331644 511277493 275349681 597784477 424594759 682170984 748408317 852107700 816971086 629101079 567343883 462394151 290117216 539035187 540976336 780061015 877088774 103219970 484158080 676975489 296305836 607965234 700560235 938705675 595030753 806744033 412979540 266583970 284588557 527595027 132556595 396138845 940188502 446968233 681765297 577673184 969294148 963141978 322974842 152314280 760231333 592981604 138393155 632378665 601630030 953267424 740882715 891279504 721418370 955730659 610447918 252792947 770993588 887548285 695599688 134971740 771321738 390793037 123073176 446968233 138393155 718980624 478351140 250885472 177689820 514768035 308142020 667844649 201717402 458156391 857535330 682170984 533864165 1736950 540976336 689757867 586370291 979750308 271484655 676975489 757850417 577673184 456956861 854243215 455539394 854243215 464130920 36055646 408395896 207442482 546679009 581831913 103733806 342116147 992001870 835198840 553191189 601740259 703490607 694954883 885995802 449022331 210621083 475344103 904800517 241184545 808866527 159828635 115090276 400178823 840130613 854243215 264750083 767839638 270237875 296751278 420052652 939725993 585165457 138442062 15037608 143200457 417074904 382904427 73848009 174335822 247841801 506178629 367026304 698320352 768561257 543865019 136384659 49948206 255644658 267829614 705304879 674446970 129724737 931005739 367026304 708046990 23973553 400178823 650990283 40131409 275202504 264297813 270237875 193515742 913521589 531333917 920721173 570796148 94279561 916956968 630775839 757709512 101231409 103219970 215981255 758889515 433686203 314069534 837690635 390793037 553191189 812044550 743614603 506178629 630201811 939725993 843005594 511277493 738855203 969494113 776352608 400218902 604968568 780061015 562773407 962073361 598543708 79509313 652018277 81553943 203331888 327773233 206036522 172894131 878442641 604881661 138393155 786320493 489130642 213097363 681765297 119279869 920628541 560623000 653201202 324986193 49317804 36265302 915330573 656191811 264750083 721769014 945394518 970320952 637657473 836376015 511330454 163229392 705548145 620243558 674485068 103219970 78649514 330205547 539381059 963141978 559014304 190323279 840130613 246058339 675472009 841780337 132556595 79509313 975337465 910818482 140129038 646710523 757850417 338312978 154538466 571019028 760370490 207844781 396050095 382210484 215774690 979750308 128702236 338312978 675472009 676975489 696443558 509370562 966131311 160287690 430284321 662972501 581063820 708094860 900796599 727245017 539957336 32954995 431406787 349076114 838331644 250832323 835339516 145885851 408395896 662972501 254203892 106790696 274113481 970320952 946916156 866568903 311613451 531135820 292972503 160287690 438183310 522332929 695599688 396138845 840075867 589760538 498840912 636434256 138393155 20148474 533864165 174862116 163769090 938705675 721418370 854243215 181668423 912948600 503666498 630977998 462762217 7807006 80415088 543865019 583924389 488788762 465697134 174862116 681765297 376448548 298727845 851759377 809429735 955730659 247841801 509019925 915330573 140725908 539381059 313272965 533455280 694954883 512614298 478892468 363976852 51457589 597206610 963141978 49317804 953267424 769327548 737945381 581063820 708053570 688577702 732559957 503666498 727578179 201717402 315343704 230662076 330274784 776820092 979750308 219054502 746394036 215981255 858798711 942999703 964902255 1926282 812044550 769327548 7807006 269911067 382904427 354807942 815123402 958668995 978947655 994877696 509144872 546679009 77685914 247006479 620243558 637657473 726620654 64420967 60017144 575023903 579757115 433686203 787269565 503666498 965948435 292972503 24089615 888553258 205387898 654830523 831241130 93651148 143200457 247234349 872434540 210621083 78775552 843005594 324129364 877088774 938456692 278160655 942899938 174140940 136412292 481894295 175060805 654830523 688177128 396050095 134971740 430088921 735891721 151506993 441621000 688534928 885353274 234980621 589760538 771321738 711532060 882364001 420636144 855636134 145885851 577970627 872434540 950673785 155241439 242186770 662972501 760370490 859168292 82689280 10369081 77819776 463496366 850386354 776835194 407510599 514768035 982353486 792846009 203331888 441621000 125829791 452156279 289918211 498045048 422532994 597784477 854969794 749497174 123073176 735891721 926045944 223299794 746092812 485509833 412979540 727578179 831467447 393120342 773781000 983113723 315747769 325554372 854902633 170941326 553191189 754133002 926045944 623206361 681765297 420636144 206036522 172382592 53226850 81553943 234980621 842970782 6720560 77685914 623398671 620243558 251042004 808614164 407091770 882804101 991073887 708053570 904800517 19715614 567774282 964902255 864016134 758889515 210621083 955730659 425392410 337153847 367026304 932715562 539957336 764459345 115090276 179981178 103669472 79509313 255644658 699230813 430101007 808614164 770993588 27735709 941586175 733642252 567343883 851759377 464130920 307403622 334299650 405444604 331638088 448881532 941586175 213097363 583924389 726620654 715779797 636434256 247841801 174335822 533864165 907095826 31215478 754133002 619842427 573480571 131323888 152314280 242186770 732245352 206036522 408032939 344876805 162904272 152866011 488788762 583924389 993091440 715779797 527595027 539957336 511277493 567343883 152314280 271484655 557710104 660765062 737945381 145559297 476912096 135975430 159828635 464130920 103219970 710224239 27735709 774489082 252962990 540394532 160287690 131323888 592970093 546679009 162904272 797746066 722013570 242530683 817743547 82689280 382904427 334299650 965948435 754580366 866337119 264750083 790270533 401452903 78775552 855636134 40131409 448262245 1736950 858127225 394791153 177689820 195019158 268759041 618355033 174140940 78775552 941586175 629101079 511330454 315343704 289918211 764459345 590208882 577673184 559014304 225858850 619842427 390275103 857535330 782533040 295606018 787269565 344876805 53966525 955501918 420636144 780870754 109054120 321628921 836376015 602396426 252962990 311613451 47349911 488295044 667844649 31615284 140551765 512614298 937158597 148087911 179991869 15037608 114409323 941586175 776835194 705548145 781246194 632014852 399037712 656623172 106790696 1926282 310726569 444897967 256866745 703490607 220576148 296305836 459452716 858127225 522663253 837690635 647733367 830619816 475344103 93478833 560623000 632014852 726620654 885549757 298050322 266213579 488788762 547547687 299462930 771321738 458290565 753419354 475344103 888553258 972710252 286037808 831241130 10475035 98231977 604968568 232177196 709613471 175507355 630201811 579757115 702364434 527595027 887794841 646710523 264408147 195733178 136384659 393120342 886917295 750978759 633587956 396937914 152618584 79509313 967417280 213097363 640849273 146573202 29069209 860708299 860377902 5299425 598426014 859168292 776352608 376448548 295366548 109054120 201717402 764116955 295606018 163229392 956815883 758889515 572588387 47349911 982353486 887548285 864016134 907095826 214244685 359859765 128188331 458363994 29069209 571019028 806664207 334211676 328462418 509664709 619842427 451551269 630201811 232177196 38844979 984050047 938140278 923715439 663670886 559957428 911302173 676975489 966683628 27735709 918225489 739696834 38844979 507016471 203331888 668964848 73848009 992169078 269911067 24089615 257214051 522332929 488295044 140551765 858127225 87392830 53525809 590918818 788737791 912948600 745200166 36055646 183440003 172382592 941586175 888259120 237389399 143200457 209789164 298050322 183440003 568142039 854902633 49614749 969294148 995876182 745200166 582273012 275202504 872434540 619842427 307060809 735696627 300892929 514650194 841210236 298727845 931005739 344876805 390275103 801623766 916956968 597206610 761330904 247841801 587179274 135975430 81553943 503666498 476912096 877088774 838803091 936312210 37275245 581063820 581831913 780870754 306597948 140129038 287768226 499057158 433921335 945394518 330274784 502849508 560623000 843005594 993091440 532803593 138442062 43970470 550322314 23973553 662972501 251042004 970320952 572588387 52243955 679463383 464444922 163769090 667313812 591292508 311808379 174140940 581831913 804406873 788118407 947413305 349644605 949084393 437743643 568104980 38085353 128702236 408032939 660765062 918521256 420052652 992169078 438183310 498045048 804406873 437743643 271484655 36265302 824770361 694954883 259646582 140551765 630201811 943793512 351424753 256866745 991073887 732559957 82689280 780061015 430088921 852755974 99294732 557710104 148087911 566125822 101231409 527595027 152523810 400178823 480361743 636434256 884072178 554242697 234980621 841210236 527654256 387703244 103733806 382904427 408395896 686884353 53226850 145885851 770993588 885647994 98287438 140725908 795549341 711455867 151364594 989729323 884059813 573480571 103733806 744008188 920721173 179991869 913521589 566554997 860377902 918521256 56154381 68748842 595030753 746394036 43970470 37275245 944068218 993091440 539957336 449022331 736237188 190323279 358401766 352092606 136384659 577673184 969294148 207442482 422532994 376974209 242028021 960796073 94279561 509144872 148087911 267829614 971894015 36265302 918225489 338631458 900796599 750978759 278160655 15903366 704431513 451551269 38338132 727245017 10475035 983373150 295366548 984047482 344876805 601740259 32075030 918521256 748408317 145885851 430088921 413592826 462762217 426814174 809429735 19715614 679463383 815123402 154538466 554242697 632402794 588034909 637657473 509664709 266213579 247822207 926045944 990121035 326469359 968755777 242186770 782533040 780870754 737945381 148087911 413592826 678884863 449022331 304621545 117210451 499057158 860708299 604968568 732245352 60750487 306597948 827311105 334932282 910850066 47349911 994877696 587179274 757850417 359859765 843005594 462394151 471393875 449022331 630775839 932715562 417074904 315343704 503666498 902464469 954677909 590918818 412979540 960796073 183440003 836376015 546679009 972710252 704431513 942866882 430284321 737945381 807117750 604181881 190929591 476912096 67700412 870201182 610447918 918521256 572588387 853170454 931640418 735891721 42657625 137529801 13112382 722013570 83066601 114409323 271484655 397928982 98824830 207844781 626833449 264100442 6720560 735710261 407629453 808838846 735696627 568142039 603931167 735891721 125829791 130160246 72820570 388085842 874124920 726620654 109369069 359714925 982370833 325554372 946916156 860708299 234980621 382904427 751925989 81337657 630201811 143200457 946916156 656191811 736237188 960543625 53525809 179981178 271484655 459617527 568104980 970911538 603931167 891279504 211958450 250885472 851400664 505061211 922858580 195733178 778074990 732245352 626932919 786320493 420052652 29473993 938140278 369306500 623398671 49614749 251188854 853170454 814662325 568142039 971894015 682170984 361435434 579757115 109369069 170938835 152866011 121069546 31215478 812044550 855636134 775682536 882364001 485509833 896571061 923715439 857535330 522663253 626833449 81553943 174140940 267829614 754580366 152314280 653201202 853903669 703514531 739696834 830619816 290474734 422532994 207844781 840075867 656191811 814295984 51457589 900116034 170941326 910850066 232177196 290117216 983113723 488295044 965948435 795549341 334211676 264750083 324129364 687988023 448881532 788737791 851759377 681930584 888259120 932584021 727827821 592639233 764116955 196106606 121069546 344620844 334932282 971894015 218611070 633587956 572465104 417074904 968755777 750563611 646710523 328462418 48746678 13112382 674446970 712346140 979750308 603931167 789617647 417074904 889608806 920721173 910818482 94279561 515426984 797746066 981996224 305068796 708094860 954677909 152314280 827311105 981996224 780870754 607965234 860477160 995876182 931966477 330205547 215981255 2379379 50241607 79523589 31615284 285947848 630201811 393120342 923927991 390275103 41538784 140725908 991073887 226492467 850386354 789617647 982370833 942866882 688534928 179981178 929504680 968755777 769327548 969494113 257214051 288873549 131323888 496698204 289736829 393120342 688534928 515426984 931086800 408032939 626932919 627110568 502849508 910818482 954227928 732559957 913521589 462394151 290117216 978947655 478351140 733642252 851400664 737945381 652018277 858798711 931966477 382210484 177689820 838803091 292696118 601740259 344620844 566554997 428572243 382210484 305990981 806744033 538025980 780061015 237389399 964902255 824770361 732245352 656623172 764116955 152523810 554242697 735696627 925555858 153196022 106790696 332834875 676975489 465759767 531135820 210621083 582273012 769327548 349076114 354807942 616796881 854902633 566125822 681930584 942899938 691982506 397928982 770594967 328764419 315747769 225771141 882364001 726620654 148087911 953267424 650990283 160287690 133739154 727245017 650697444 174335822 261683638 597784477 478351140 485509833 947413305 676975489 407091770 88335614 539381059 683621666 640849273 478892468 953882020 744008188 617908997 246058339 876263470 858798711 936312210 288873549 877167702 393120342 722768643 635302209 743614603 587179274 23973553 885647994 705304879 885647994 264408147 509370562 750563611 247822207 269911067 408032939 797746066 509019925 292972503 682170984 6720560 509370562 38844979 713146141 514650194 560327459 485153920 790270533 289736829 140725908 40656291 128450928 259646582 342116147 286037808 625664180 302151126 272303478 946916156 2076768 575023903 112090095 685702028 456137963 630775839 604881661 633573519 353964006 73848009 990121035 40656291 841210236 982416551 79509313 950497221 448881532 499057158 140551765 712346140 885647994 956286779 37275245 438183310 938080232 412979540 965948435 547547687 134971740 577970627 307060809 735696627 360743135 60750487 683621666 242028021 287239117 23262398 854243215 457149478 727245017 270237875 451551269 740882715 290474734 484158080 955730659 840075867 767839638 660095934 463496366 641635851 462394151 886917295 978947655 860377902 424974082 619842427 995876182 408395896 223299794 688577702 991615550 67831588 38304068 387176309 137529801 563678994 134971740 623398671 55018341 553368896 172894131 877167702 912948600 257214051 735891721 920721173 288072509 425392410 719601437 93478833 247822207 814662325 262406489 540394532 162904272 503666498 938456692 583924389 51457589 991073887 635302209 211958450 650036494 942999703 984047482 633573519 252792947 705548145 994587826 862254110 494336936 838331644 918521256 38338132 788118407 305068796 187104147 650990283 589760538 465697134 478892468 801623766 324129364 923927991 570796148 156817178 623206361 32075030 509144872 585165457 400178823 553368896 310726569 632014852 953267424 795549341 841780337 289918211 396138845 776352608 676975489 32075030 338929165 80485362 186244437 923927991 36055646 650990283 36265302 74587532 726620654 660765062 130160246 831467447 390793037 712346140 378961655 163769090 698320352 264750083 408032939 994877696 60017144 838331644 506919968 259646582 750978759 306258744 793291205 736237188 313272965 595030753 636434256 837690635 458363994 275202504 744008188 803588261 559957428 691982506 334211676 289736829 172382592 885549757 554242697 882364001 247822207 797746066 360743135 215774690 835198840 966683628 223299794 103669472 546141085 242028021 509144872 633587956 732245352 554222239 992169078 760370490 882804101 532803593 155241439 295366548 137529801 946612927 106790696 804406873 786320493 40448245 485063015 331638088 175060805 893019475 829614460 499057158 413592826 375066210 2076768 548748527 733642252 703490607 130160246 40656291 984050047 311613451 616057762 196106606 53195413 885549757 808838846 763431295 496698204 401452903 296751278 270237875 334932282 691982506 485063015 954227928 688177128 128188331 359859765 219054502 607965234 931640418 400218902 637939784 896072909 214244685 623206361 900116034 405444604 290117216 984050047 702364434 376448548 662421393 531333917 24188768 324129364 290117216 912948600 334299650 613596687 874124920 251367294 900796599 775682536 600441802 27735709 293192373 241184545 183440003 114409323 946916156 746394036 774489082 51457589 186285312 597784477 778074990 635302209 254203892 667844649 451817798 246058339 152243323 287768226 128702236 647733367 480361743 829983432 230662076 992169078 412979540 764116955 293192373 719601437 145559297 424974082 156817178 55018341 308142020 172382592 864016134 223299794 203331888 520071928 489612980 616796881 152243323 456137963 129724737 781246194 991073887 912948600 633587956 307403622 103733806 426814174 770594967 413592826 683406807 285947848 132556595 520071928 650697444 140551765 38844979 403519778 177689820 662972501 39220584 55108095 917452919 971549242 799588075 310726569 585165457 459617527 203331888 618355033 484158080 400178823 29069209 296751278 190929591 250885472 598543708 992169078 572588387 458290565 47290536 699230813 603931167 989729323 982353486 686335042 770594967 604881661 900796599 771803404 917452919 196460706 53525809 36265302 637769046 448881532 991073887 300892929 299113502 852755974 538810384 112390393 451817798 852755974 581063820 143200457 190979155 607965234 674485068 225858850 618542887 548964093 492009082 678474526 663670886 78775552 854969794 851829959 135975430 678474526 860477160 686884353 151364594 359859765 40448245 87392830 123073176 775682536 387176309 678474526 808866527 403519778 464130920 458363994 293192373 891279504 776352608 944573659 511330454 732245352 210621083 7807006 492009082 32954995 795549341 128450928 955501918 667313812 145559297 866568903 424594759 136412292 289918211 413592826 98287438 494336936 776352608 874297853 407091770 727578179 763431295 103219970 40656291 285947848 489130642 590918818 941586175 566125822 125204206 754133002 874124920 475344103 132556595 907721720 745200166 708046990 488295044 887548285 954677909 938456692 74587532 382210484 780870754 776835194 363976852 2575238 843005594 252792947 915330573 307060809 705548145 554242697 103733806 276676140 109369069 15903366 422532994 516175014 293192373 485063015 722768643 925555858 837690635 686335042 328462418 940381563 290117216 650036494 21190596 55018341 932584021 656191811 917452919 789617647 722768643 991615550 303230482 237172271 585165457 776835194 551289217 182214511 751925989 727827821 334299650 246221518 827311105 266583970 142903358 51457589 920721173 694954883 709613471 290474734 688534928 252962990 117931902 337153847 502849508 394791153 840130613 729868696 559014304 968755777 83066601 195019158 210621083 272303478 885995802 708046990 548748527 495854210 687988023 627110568 295366548 776835194 860377902 960543625 499057158 78775552 354807942 134971740 768561257 836376015 43970470 48746678 802009078 397928982 982353486 33511708 662421393 205387898 967417280 426814174 32806834 842970782 931640418 287768226 763431295 249820698 661321016 992169078 551289217 975478549 1926282 195019158 917452919 812414090 115509283 451521521 140129038 165821462 242530683 247822207 518384931 393120342 702364434 835212499 270237875 550322314 363976852 516175014 683406807 795472528 877088774 667313812 721418370 387703244 230662076 396138845 938140278 328764419 60750487 427184372 814295984 400218902 234980621 960543625 598543708 288873549 736624310 699230813 721418370 81553943 656623172 152314280 626932919 360743135 926044257 190323279 942999703 623206361 923927991 938456692 103669472 145885851 533455280 683621666 407510599 458156391 559014304 573480571 375066210 795472528 633573519 776835194 255644658 330274784 771321738 250832323 430101007 37275245 332834875 175060805 660095934 722013570 511330454 215052415 567774282 620243558 575895835 916956968 857535330 287768226 93478833 267829614 681930584 338929165 878442641 860708299 271484655 35128915 284588557 656191811 840130613 19715614 994877696 938080232 633573519 996943901 696443558 758889515 214244685 330205547 80415088 29473993 719307635 597784477 886917295 896072909 745200166 888259120 215981255 232177196 838655651 387703244 610834602 207442482 303230482 516175014 251188854 764459345 788737791 109054120 827311105 835198840 838655651 539035187 344620844 789617647 361435434 964902255 854902633 162904272 152243323 687055288 840075867 964902255 332834875 853170454 922858580 390275103 67831588 983113723 98824830 750750593 193648030 592970093 177689820 607760956 971894015 162904272 770864525 205387898 776352608 248642173 433686203 882804101 60750487 408032939 209789164 829614460 954677909 885647994 72820570 548964093 145559297 808614164 518384931 146573202 271484655 307403622 860477160 388085842 630775839 942899938 163769090 35128915 484158080 727827821 321628921 140725908 424594759 983373150 843005594 452156279 681930584 167276070 587469038 4519262 492009082 831380531 126695727 786320493 478351140 79509313 750563611 507016471 78649514 334932282 738855203 136412292 242028021 114409323 678884863 47349911 637769046 781242822 590208882 376974209 163769090 960543625 455539394 556619020 177689820 560623000 913521589 887548285 956815883 160287690 481894295 485063015 816971086 979750308 514650194 478892468 215977916 629101079 268759041 215289803 274113481 758889515 41538784 226492467 247234349 744008188 292972503 560327459 876868627 889608806 306607837 629101079 117931902 885647994 888699423 134971740 719307635 66490779 587469038 396937914 691982506 638790258 80485362 831241130 244528344 602832600 308142020 20148474 827311105 912948600 274113481 464444922 512614298 981996224 917795074 607965234 632402794 288873549 735696627 546141085 299113502 223299794 214244685 968755777 344876805 112390393 778074990 1736950 465697134 983373150 128702236 338929165 151506993 601740259 816971086 2379379 83066601 413592826 753419354 887548285 653201202 63192647 103733806 360743135 545538425 403519778 945394518 965948435 900116034 282751746 846351340 852755974 917452919 852755974 214650974 338929165 846351340 781242822 662421393 68748842 430284321 155241439 917795074 195019158 966683628 735710261 900116034 739696834 478351140 371179314 904800517 566125822 710224239 969494113 882364001 334932282 128702236 359714925 681930584 806792339 886149363 997329398 628523361 478892468 827311105 78775552 152866011 36055646 803588261 668964848 808866527 232177196 539381059 616796881 888553258 48746678 846351340 732559957 49317804 496698204 722768643 237172271 753419354 587179274 878442641 896072909 268759041 916956968 123073176 969494113 214244685 272303478 527654256 560327459 568104980 560327459 567948101 267829614 688577702 889608806 271484655 722013570 117931902 317751260 874124920 698320352 700560235 965948435 743614603 38304068 275349681 732245352 298727845 353964006 884072178 983373150 840130613 296751278 151364594 405444604 748408317 955730659 499057158 781246194 499057158 310726569 40656291 918521256 195957995 287768226 264408147 968755777 538025980 505061211 304621545 225858850 40656291 623206361 533864165 427184372 950673785 342116147 740882715 866568903 802009078 729868696 103733806 112090095 637939784 694954883 115509283 215289803 753419354 667844649 328462418 20148474 228290502 882804101 799588075 485063015 181668423 155241439 603931167 314069534 956815883 942866882 770594967 299994808 420052652 77685914 358401766 476912096 760370490 866568903 760370490 33511708 78649514 37275245 633573519 462394151 74587532 767187616 675472009 225858850 214650974 496698204 619842427 162904272 511330454 2575238 492009082 885141769 932584021 995876182 840075867 788118407 864016134 568142039 675472009 404152565 363976852 984047482 650990283 38085353 854902633 338312978 275349681 613596687 23262398 264100442 632014852 276676140 186285312 506178629 49317804 103219970 103733806 405444604 82689280 36055646 42657625 220576148 304621545 338312978 203331888 627110568 656623172 282751746 743614603 831241130 498840912 4519262 674485068 55108095 940188502 494336936 538810384 79509313 771321738 225858850 99294732 285947848 407091770 902464469 967417280 726950461 610447918 790270533 23973553 678474526 600441802 997329398 358401766 27735709 151364594 934824360 795549341 328764419 808866527 979750308 982416551 404152565 271484655 688177128 154538466 638790258 156817178 697742034 290117216 140725908 568104980 246221518 181668423 249820698 687988023 458290565 47290536 627110568 876868627 47529701 322974842 836376015 292972503 446968233 412979540 787269565 900116034 175060805 251042004 781246194 125204206 939725993 888553258 49948206 780870754 130160246 738612855 960543625 151506993 963141978 527654256 498045048 799588075 872434540 835339516 36055646 195957995 995876182 538025980 451551269 851400664 55108095 704431513 78775552 244528344 792822959 39220584 746394036 577970627 262406489 259646582 433921335 567948101 866337119 115509283 780061015 131323888 810021050 770864525 527595027 53525809 697742034 43970470 817743547 72820570 550322314 433686203 79509313 878442641 962430008 387176309 193515742 548748527 607965234 31615284 850484222 876868627 506178629 971894015 393120342 854969794 792846009 215792516 771803404 715779797 550322314 705548145 252962990 746092812 334932282 511330454 352092606 809429735 172382592 610834602 170941326 626833449 698320352 67831588 266583970 864016134 767187616 799588075 806744033 931013644 272303478 49317804 506178629 982416551 437743643 763431295 829614460 125204206 781242822 931013644 613596687 480361743 382210484 290117216 674446970 633587956 285947848 838331644 283321520 132556595 324129364 652018277 1736950 492009082 616057762 886917295 68748842 98287438 667844649 275202504 145885851 760231333 995876182 259646582 749497174 538810384 396632533 760231333 539035187 703514531 686335042 103733806 187104147 153196022 781242822 913521589 405444604 278160655 250885472 455539394 995876182 587469038 324986193 743614603 938080232 757850417 330205547 132556595 721769014 292696118 47529701 975337465 174862116 956815883 635302209 533455280 793291205 776352608 509019925 705304879 858040709 601630030 885353274 489130642 137529801 971894015 630238886 289918211 266583970 533455280 616796881 98287438 170938835 788737791 975478549 888699423 306597948 303230482 19715614 955501918 394791153 757815664 394791153 424594759 55108095 592639233 854243215 626932919 979750308 922858580 616796881 39220584 285947848 430088921 424974082 303230482 246221518 830619816 548964093 748408317 205387898 921198791 587179274 754580366 262406489 268759041 307060809 885995802 767839638 685702028 288873549 803588261 852755974 938140278 726620654 407629453 938080232 688534928 182214511 64420967 616796881 753419354 896072909 247234349 852107700 770864525 853170454 152866011 446968233 586446680 577673184 838655651 938456692 803588261 232177196 703490607 29473993 247841801 808614164 946916156 767839638 653201202 114409323 683406807 719601437 202477791 750750593 938140278 287239117 929504680 808614164 290117216 792822959 407091770 207844781 617908997 390793037 770864525 937158597 247841801 854243215 135975430 616057762 806664207 408032939 838655651 968755777 208625324 689757867 803588261 732559957 101231409 193515742 700560235 78775552 774489082 993091440 289736829 338929165 261683638 851759377 94279561 979750308 206036522 686884353 50241607 912948600 74587532 970320952 152243323 237172271 640849273 448881532 740882715 943793512 705548145 334211676 768561257 313272965 125204206 36055646 808866527 276676140 311613451 912948600 286037808 495854210 533864165 573480571 545538425 838803091 425392410 315297566 132556595 38304068 109369069 19715614 931013644 624819674 603931167 860708299 567774282 535533605 438183310 984050047 681930584 79523589 321628921 52243955 430088921 722013570 893019475 246221518 261683638 464444922 363976852 282751746 837690635 650036494 748408317 727578179 562773407 995876182 786380583 711455867 695599688 764116955 293192373 369306500 115090276 388085842 773781000 342116147 559014304 325554372 115509283 330205547 237389399 478892468 255644658 688177128 53525809 396632533 768561257 975478549 601630030 78775552 715779797 543945175 67831588 300892929 630201811 750750593 769327548 568142039 181668423 624819674 481894295 288873549 103669472 496698204 94279561 588034909 632014852 506919968 268759041 851829959 98287438 788118407 738855203 729868696 595030753 313272965 722768643 376448548 956815883 223299794 936312210 885353274 492009082 522332929 773781000 972710252 940188502 117210451 156817178 939725993 334299650 287768226 745200166 896072909 1926282 939725993 774489082 405444604 563678994 616796881 366854683 607041944 417074904 459452716 743614603 885647994 704431513 983373150 274113481 806792339 269911067 264100442 152243323 252792947 809429735 620243558 628523361 251367294 765027062 592981604 808866527 527595027 949084393 960543625 331638088 287768226 366854683 625664180 23262398 916956968 344876805 48746678 858127225 463496366 931640418 2379379 586446680 632378665 247221668 390275103 293192373 55108095 663670886 220576148 514650194 196460706 688534928 478892468 23262398 732559957 851400664 49948206 174140940 972710252 489130642 910818482 259646582 60017144 710224239 579757115 553191189 485509833 896571061 488788762 922706719 2575238 533455280 757709512 32075030 674446970 478351140 572465104 261683638 195733178 703514531 488788762 269911067 396138845 128702236 735710261 563678994 310726569 228290502 276676140 424594759 250749017 93478833 572465104 768561257 829614460 945394518 971549242 208625324 342116147 854902633 767839638 958668995 546141085 208625324 749497174 773781000 506178629 513440742 459617527 24188768 215289803 975337465 298050322 956286779 315343704 600441802 858798711 719307635 739696834 128188331 916956968 302151126 831241130 551289217 938705675 286037808 2076768 428572243 163229392 193648030 836376015 743614603 996943901 152523810 607965234 851400664 300892929 13112382 775682536 975337465 496698204 893019475 592981604 278160655 627110568 688534928 923715439 42657625 587179274 151364594 711532060 783513992 134801439 326469359 152314280 135975430 359714925 783513992 852755974 763431295 852107700 138393155 121069546 455539394 992169078 568104980 835212499 626932919 960543625 941586175 522663253 874124920 852604705 950673785 117210451 492009082 604181881 551289217 2379379 455539394 2076768 257214051 597784477 696443558 27735709 864016134 396937914 650990283 2379379 931013644 896029805 219054502 195733178 304621545 163229392 586446680 607760956 799588075 702745028 799588075 522332929 375066210 251367294 533864165 2076768 703514531 81553943 770993588 388085842 153196022 390275103 771321738 860708299 801623766 965948435 366854683 535533605 645094664 494336936 50241607 810021050 910850066 531333917 886917295 276676140 431406787 399037712 67831588 256866745 28363157 247822207 32075030 972710252 156817178 527595027 618542887 87392830 247841801 433921335 367026304 560327459 715779797 458363994 407629453 79509313 32075030 573449906 650990283 433921335 532803593 488788762 958668995 262406489 296305836 313272965 991073887 629101079 247234349 831241130 93651148 579757115 751925989 812414090 640925332 726620654 750563611 146573202 366854683 498045048 284588557 953267424 72820570 117210451 407510599 378961655 753419354 810021050 219054502 215052415 424594759 307060809 259646582 829983432 303230482 464444922 321628921 172382592 715779797 568142039 32075030 397928982 286037808 338929165 126695727 858040709 783513992 607760956 814662325 996943901 284588557 938456692 512614298 408032939 969294148 750750593 269911067 424974082 465697134 831380531 490344724 579757115 567774282 130160246 73848009 566125822 126695727 750750593 47290536 134801439 801623766 324986193 128188331 850484222 882364001 815123402 234980621 572465104 583924389 888259120 215981255 882804101 736237188 53195413 28363157 98231977 663971090 972710252 417074904 20148474 991073887 205387898 638516505 727245017 887794841 686884353 780870754 146573202 538025980 495854210 438183310 851829959 40656291 49614749 585165457 527595027 663971090 186244437 234980621 179991869 598543708 451521521 663971090 964902255 702364434 220576148 595030753 556619020 799588075 968755777 533864165 662972501 979740237 722013570 103669472 560623000 375066210 338929165 827311105 399037712 296305836 352092606 242186770 195733178 322974842 597784477 50241607 249820698 577970627 971549242 457149478 77685914 183440003 400218902 539381059 485509833 208625324 870201182 525347105 155241439 361435434 145885851 884072178 568142039 255644658 722013570 551289217 252962990 40656291 526944836 181668423 298050322 128188331 854243215 275349681 854243215 270237875 378961655 328462418 404152565 910850066 573480571 230662076 854243215 577970627 841780337 456956861 19911869 570764323 252792947 190979155 307060809 567774282 887548285 78649514 338312978 801623766 32954995 882364001 737945381 6720560 53195413 797746066 55108095 567948101 852107700 661321016 337153847 760231333 588034909 947413305 522663253 412979540 732559957 286037808 36055646 242028021 324129364 363976852 789617647 407091770 114409323 295366548 888259120 598543708 220576148 904800517 396632533 626833449 49948206 478351140 808838846 361435434 5299425 854902633 117210451 857535330 971549242 653201202 627110568 53525809 963141978 264408147 248642173 367026304 38085353 824770361 38085353 660765062 543865019 954677909 369306500 562773407 324129364 650990283 52243955 632014852 249670598 208625324 776835194 855636134 817743547 156817178 1736950 913521589 175507355 275349681 88335614 712346140 792822959 322974842 40131409 563678994 607760956 705548145 130160246 681930584 790270533 259646582 403519778 367026304 571019028 145559297 190323279 293192373 250749017 691982506 330274784 230662076 604181881 703490607 47529701 598426014 841780337 878442641 174862116 28363157 159828635 305990981 750978759 136384659 560623000 806664207 762749463 949084393 789617647 311613451 573480571 575023903 310726569 860477160 47349911 270237875 400218902 93478833 955730659 626833449 942866882 401452903 858040709 432089082 352092606 550336314 29473993 126695727 934824360 918225489 225858850 210621083 463496366 877167702 604881661 661321016 338929165 430101007 246058339 888553258 79523589 799588075 983373150 640925332 237172271 746092812 38085353 950673785 376448548 142903358 792822959 152243323 495854210 448262245 369306500 587469038 570796148 751925989 387703244 857535330 780061015 950673785 694954883 688577702 494336936 77819776 744008188 94279561 109054120 444897967 55108095 637939784 408032939 843005594 170941326 73848009 287768226 128702236 592981604 887794841 854243215 255644658 218611070 6720560 735891721 125204206 889608806 776352608 616796881 931966477 241184545 966683628 630629857 626932919 708094860 424594759 299994808 838331644 427184372 396050095 256866745 29069209 702745028 746092812 160287690 293192373 554242697 424594759 560623000 877088774 702745028 966683628 602832600 255644658 616057762 700560235 997329398 251188854 923715439 888553258 174862116 846351340 241184545 201717402 488788762 303230482 396937914 705548145 267829614 269911067 237172271 152523810 193515742 982353486 560327459 321628921 60017144 877088774 667844649 270237875 225858850 275202504 885000402 201717402 146573202 736237188 687055288 877088774 311808379 688534928 629101079 274113481 250832323 152618584 969494113 982353486 678474526 745200166 515426984 678884863 568142039 202477791 789617647 824770361 782533040 992001870 984050047 888699423 237172271 979740237 601740259 242186770 437743643 809429735 812414090 471393875 938705675 877088774 485509833 757815664 143200457 93651148 451521521 945394518 36265302 743614603 885000402 685702028 306597948 10475035 170941326 583924389 515426984 126695727 887548285 592639233 694954883 38338132 858040709 77819776 618355033 289736829 577673184 802009078 37275245 835339516 568142039 991073887 408032939 247234349 767187616 638516505 629101079 600441802 800460688 704431513 162904272 736624310 771803404 292696118 464444922 481894295 885647994 854902633 527595027 247006479 851759377 13112382 119279869 652018277 288873549 563678994 573449906 545538425 588034909 893019475 60017144 275202504 306597948 850386354 509144872 570764323 983113723 780870754 993091440 745200166 812044550 660765062 885647994 932584021 121069546 681930584 324129364 424594759 872434540 640849273 55108095 215977916 590918818 705304879 761330904 290117216 496698204 808866527 686884353 917795074 990121035 645094664 314069534 602396426 310726569 776352608 282751746 251188854 872434540 709613471 792846009 540976336 226492467 80485362 485262404 979740237 55018341 183440003 516175014 23262398 995876182 926044257 170938835 797746066 560623000 465759767 327773233 619842427 566125822 941586175 459617527 628523361 852755974 123073176 506919968 743614603 932715562 215774690 942899938 135975430 641231120 412979540 853903669 736237188 162904272 567343883 781242822 354807942 788118407 954677909 79523589 858127225 812044550 882364001 686335042 837690635 352092606 553368896 697742034 488295044 732245352 740340897 630629857 918225489 337153847 186285312 938705675 971894015 711532060 858127225 604181881 633587956 32954995 814295984 994587826 94279561 667844649 432089082 938080232 306258744 424974082 654830523 515426984 430101007 853903669 703514531 349644605 430284321 790270533 430088921 955730659 234980621 592970093 308142020 694954883 299113502 241184545 1926282 475344103 303230482 577673184 804406873 478892468 41538784 140551765 244528344 604181881 630775839 396937914 133739154 764459345 827311105 746394036 802009078 361002681 123073176 953267424 80485362 543865019 888699423 923715439 93651148 850484222 637657473 568142039 50241607 937158597 575023903 995876182 490344724 317751260 956815883 771803404 540976336 732559957 592639233 287239117 138393155 509664709 633587956 726620654 259646582 889608806 917795074 298050322 305990981 413592826 133739154 852755974 126695727 272303478 6720560 334211676 407629453 699733109 562773407 872434540 230662076 205387898 215792516 458363994 321628921 248642173 525347105 708053570 38844979 858040709 979740237 475344103 780870754 554242697 740340897 630977998 430088921 668964848 760370490 327773233 295366548 390793037 126695727 607760956 254203892 334932282 67831588 526944836 539957336 29473993 857535330 109054120 302151126 715957434 660095934 382210484 244528344 427184372 876868627 27735709 754580366 729868696 98824830 793291205 331638088 744008188 626932919 778123726 654830523 624819674 941586175 678474526 936312210 628820972 827311105 276676140 148087911 968755777 955501918 627110568 289736829 732245352 31215478 315343704 80415088 387703244 688534928 630238886 387176309 708094860 444897967 282751746 877088774 404152565 660095934 556619020 462762217 682170984 675472009 860708299 958668995 647733367 979740237 476912096 949084393 978947655 947413305 630977998 591292508 636434256 900796599 162904272 542382913 625664180 125829791 995876182 801623766 451521521 215792516 249670598 626833449 719601437 230662076 527595027 292696118 396632533 681930584 566125822 572588387 526944836 126695727 19715614 306258744 175507355 864016134 916956968 598426014 761330904 195957995 602832600 688577702 390275103 562773407 620243558 710224239 388085842 448262245 910818482 464130920 620243558 154538466 2379379 691982506 324129364 183440003 566125822 429277230 722013570 268759041 715957434 247006479 495854210 830619816 315343704 271484655 112390393 40448245 527595027 125204206 761330904 484158080 727578179 513440742 735891721 719307635 708094860 860377902 287239117 991073887 256866745 738612855 543865019 931013644 5299425 154538466 550322314 211958450 427184372 126695727 780061015 538025980 252962990 465697134 746394036 292972503 943235508 979740237 613596687 802009078 53195413 923927991 241184545 542382913 353964006 417074904 137529801 215977916 360743135 814295984 114409323 660095934 36055646 583924389 984047482 326469359 990121035 602396426 299994808 754580366 896072909 760370490 324986193 547547687 369306500 125829791 397928982 831467447 458290565 464130920 636434256 83066601 780061015 567343883 495854210 60750487 396937914 969294148 918521256 975337465 616057762 806664207 852755974 366854683 687055288 864016134 789617647 958668995 889608806 738612855 170941326 944068218 288873549 633587956 829614460 387176309 247822207 131323888 249670598 831467447 767187616 888699423 943235508 816971086 570796148 332834875 630977998 878442641 882804101 546679009 165821462 900796599 459617527 641635851 975478549 533455280 287768226 650697444 56927881 591292508 456137963 735696627 338929165 888699423 975478549 958668995 781242822 292696118 360743135 979740237 623206361 814662325 360743135 195957995 283321520 31615284 852107700 331638088 577673184 387176309 831241130 151364594 592981604 956815883 114409323 623398671 964902255 681765297 514768035 947413305 475344103 911302173 458156391 259646582 627110568 748408317 313272965 969294148 456137963 653201202 592981604 896571061 162904272 814295984 81337657 740340897 256866745 430284321 498045048 358401766 984047482 927806038 172894131 465697134 334932282 553368896 359714925 422532994 632378665 587469038 604881661 117931902 623206361 295606018 620243558 769327548 51457589 269911067 650036494 944068218 782533040 451817798 560623000 660095934 299994808 949084393 737945381 430101007 478892468 47290536 174335822 540976336 328764419 771321738 853903669 966131311 426814174 274113481 352092606 407629453 404152565 296305836 225858850 553368896 972710252 148087911 570796148 587469038 910818482 215774690 983113723 50241607 47529701 626932919 193515742 975337465 686335042 851400664 32954995 938140278 750750593 705548145 885141769 884072178 382904427 56154381 764116955 193648030 718980624 214650974 795472528 539957336 290474734 60750487 627110568 145559297 109054120 527654256 403519778 862254110 223299794 893019475 223299794 626932919 970911538 6720560 250832323 99294732 616057762 851400664 630629857 674485068 433921335 921198791 531333917 244528344 2575238 917452919 866337119 874124920 889608806 773781000 79509313 656623172 249670598 610447918 885353274 538025980 761330904 201717402 388085842 808866527 264297813 242530683 937158597 539381059 992169078 548748527 298050322 660095934 687055288 809429735 573480571 956815883 174335822 896571061 896029805 954227928 324129364 275349681 624819674 837690635 134801439 545538425 866337119 633573519 424974082 846351340 475344103 78649514 787269565 284588557 884952974 132556595 543945175 538810384 607760956 266213579 953267424 954677909 272303478 77819776 138442062 64420967 179991869 196106606 24089615 64420967 451551269 663971090 35128915 753419354 128450928 956286779 628820972 814662325 588034909 6720560 114409323 920721173 256866745 653201202 557710104 117931902 829614460 484158080 264100442 944068218 449022331 877088774 134971740 28363157 174862116 748408317 942866882 660765062 554242697 771321738 874297853 396806189 506178629 430284321 478892468 430088921 160287690 950497221 757709512 430284321 511277493 586370291 582273012 966131311 81553943 492009082 463496366 598543708 858040709 917795074 981996224 843005594 342116147 214244685 193515742 748408317 590918818 305990981 782533040 80485362 495854210 208625324 923715439 444897967 970320952 308142020 249670598 619842427 726950461 630775839 560327459 640849273 907095826 396050095 136412292 514650194 727578179 210621083 478892468 429277230 790270533 958668995 112090095 305990981 607760956 855636134 446968233 650697444 276676140 129724737 313272965 662421393 20148474 28363157 359714925 953882020 337153847 315747769 938080232 884059813 196460706 115090276 276676140 305068796 885141769 101231409 650036494 824770361 971549242 746092812 589760538 900116034 623206361 455539394 390793037 451817798 134801439 275349681 554242697 592639233 179981178 862254110 715957434 237389399 520071928 632402794 953267424 251188854 250885472 525347105 459617527 645094664 352092606 757850417 694954883 678884863 806744033 196106606 478892468 882364001 960543625 478351140 953267424 274113481 390275103 78649514 607965234 780870754 252962990 286037808 937158597 674485068 165821462 289918211 853903669 703514531 128450928 678884863 241184545 958668995 682170984 471393875 570796148 448262245 851759377 840075867 842970782 778074990 782533040 851400664 134971740 80415088 117210451 498840912 767839638 438183310 733642252 145559297 613596687 586370291 629101079 598426014 443960759 190929591 15903366 638516505 35128915 862177563 15903366 705304879 35128915 540394532 252962990 219054502 516175014 920721173 902464469 572588387 403519778 722768643 602832600 691982506 852755974 630775839 498045048 904771946 726950461 152618584 88335614 801623766 476912096 877167702 56927881 286037808 505061211 641635851 298050322 490344724 506919968 396050095 494336936 292149520 682170984 746092812 939725993 286037808 912948600 485153920 630977998 42657625 498045048 274113481 495854210 247841801 283321520 808866527 646710523 206036522 359859765 101231409 664041213 387176309 729868696 206036522 33511708 490344724 226492467 32075030 112090095 47290536 458156391 125204206 250832323 181668423 205387898 533455280 831380531 862177563 829614460 936312210 713146141 864016134 359859765 857535330 775682536 23973553 746394036 750563611 338312978 28363157 400178823 966131311 290474734 38338132 708046990 303230482 330274784 73848009 328764419 804406873 264297813 864016134 852755974 109369069 939725993 637939784 767839638 545538425 560327459 190979155 250885472 633573519 789617647 6720560 207442482 540976336 424974082 431406787 15903366 626932919 943235508 278160655 462394151 457149478 686884353 591292508 667313812 743614603 103219970 152618584 885141769 702364434 476912096 598543708 602832600 315747769 831241130 650990283 47529701 746092812 761330904 344620844 888259120 617908997 923715439 633587956 78775552 696443558 650036494 704431513 970911538 284588557 943235508 152866011 159828635 292696118 250885472 264408147 179991869 462762217 128450928 255644658 758889515 843005594 155241439 132556595 311808379 862254110 792822959 93651148 522332929 432089082 225771141 67700412 829614460 695599688 749497174 656623172 276676140 156817178 702745028 215774690 459452716 499057158 829983432 572588387 656191811 457149478 55018341 771321738 866337119 56154381 531333917 499057158 338929165 289918211 979750308 344876805 983373150 917795074 29473993 650697444 630629857 827311105 207442482 992001870 682170984 991073887 352092606 956815883 298050322 601630030 299994808 797746066 940381563 527654256 668964848 485153920 972710252 407510599 918521256 303230482 226492467 247221668 916956968 887794841 732245352 448262245 792822959 481894295 53966525 254203892 19911869 843005594 138442062 738612855 209497607 219054502 995876182 174140940 424974082 1926282 793291205 211958450 556619020 550336314 128450928 630775839 943793512 886149363 2379379 275349681 831241130 80415088 991615550 366854683 628820972 31615284 437743643 511330454 485509833 835339516 793291205 39220584 250885472 840075867 106790696 703514531 19911869 489130642 806792339 926044257 396138845 640849273 687055288 783513992 451551269 489612980 48746678 13112382 509019925 654830523 485262404 603931167 516175014 492009082 531333917 129724737 382904427 637657473 650036494 465759767 170941326 407629453 668964848 913521589 570796148 637769046 290474734 103669472 394791153 778074990 349644605 444897967 324129364 103669472 352092606 896571061 451521521 13112382 403519778 688577702 808838846 982416551 815123402 617908997 174335822 788737791 390275103 247234349 874297853 270237875 387703244 334299650 535533605 808866527 1736950 559014304 546141085 190979155 213097363 941586175 831241130 489612980 676975489 572588387 711532060 640849273 971549242 553368896 711455867 518384931 53195413 315747769 891279504 269911067 994587826 950673785 174335822 40448245 68748842 481894295 781246194 98824830 970320952 151364594 361002681 142903358 225771141 975337465 232177196 308142020 686335042 938140278 602832600 186285312 420636144 567343883 641231120 660765062 441621000 412979540 63192647 527654256 964902255 780870754 426814174 230662076 601740259 351424753 601740259 626833449 699733109 610447918 522332929 888699423 276676140 982353486 159828635 862254110 972710252 42657625 79509313 115509283 77685914 344876805 426814174 956815883 757709512 525347105 170941326 152523810 264100442 979740237 733642252 215977916 764459345 83066601 121069546 922858580 683621666 854969794 307403622 740340897 607965234 538810384 739696834 518384931 215289803 60750487 400178823 271484655 170938835 719307635 546141085 854902633 953267424 183440003 388085842 67700412 858798711 738612855 458363994 979740237 993091440 152523810 539035187 862254110 55018341 776820092 686335042 913521589 972710252 83066601 342116147 719307635 249820698 637657473 852107700 917795074 456137963 591292508 300892929 923927991 10369081 982353486 757709512 723661847 276676140 203331888 835212499 696443558 687055288 115509283 360743135 214244685 459617527 926044257 396937914 920628541 456137963 425392410 159828635 586370291 795472528 862254110 249670598 465697134 790270533 215792516 620243558 363976852 220576148 332834875 437743643 251042004 744008188 444897967 656191811 247234349 597784477 982416551 708053570 396806189 136412292 478351140 172894131 39220584 160287690 181668423 251367294 876263470 516175014 431406787 52243955 148087911 577673184 242186770 252792947 860477160 938705675 433686203 781242822 125829791 464444922 598543708 296751278 637769046 81337657 617908997 715957434 407091770 400178823 678884863 851829959 645094664 478892468 74587532 495854210 838655651 616057762 703514531 767839638 484158080 746394036 876263470 896029805 208625324 556619020 663971090 761330904 946916156 38085353 598543708 476912096 408395896 812044550 877167702 79509313 876868627 405444604 98824830 134801439 154538466 607760956 366854683 2076768 433686203 353964006 209789164 78775552 886917295 931005739 691982506 218611070 645094664 632378665 922706719 81553943 93478833 299462930 788737791 394791153 765027062 978947655 269911067 196460706 40656291 835198840 47290536 686884353 67700412 338929165 363976852 88335614 738612855 338312978 41538784 237172271 532803593 282751746 242186770 570796148 931086800 907095826 679463383 778123726 610447918 458363994 80485362 788118407 366854683 288873549 585165457 592981604 142903358 246221518 237389399 790270533 640849273 55018341 375066210 306597948 546679009 962430008 548748527 328764419 401452903 77685914 719307635 592970093 770594967 387703244 801623766 112090095 884059813 812414090 633587956 983373150 931086800 983373150 38844979 792822959 941586175 55108095 840130613 885647994 626932919 711532060 982353486 842970782 632014852 831241130 929504680 939725993 628523361 835212499 247221668 910818482 638516505 885647994 975337465 782533040 196106606 853903669 67831588 749497174 740882715 299462930 653201202 128450928 153196022 687055288 331638088 573480571 93651148 307060809 247221668 842970782 60750487 207442482 103733806 485262404 422532994 792846009 926044257 638790258 60750487 324129364 944068218 68748842 601630030 324129364 938140278 66490779 354807942 781242822 802009078 167276070 882364001 647733367 304621545 835212499 247006479 866568903 783513992 866337119 660095934 27735709 807117750 718980624 412979540 5299425 274113481 771803404 855636134 307060809 926045944 51457589 215977916 49948206 358401766 106790696 660765062 699230813 50241607 485262404 660765062 106790696 242186770 971549242 967417280 866568903 687988023 511277493 540976336 568142039 780870754 884952974 592639233 699733109 53525809 571019028 41538784 960796073 750563611 338929165 462762217 446968233 259646582 739696834 838655651 625664180 429277230 721769014 42657625 249820698 946916156 571019028 601630030 128450928 918225489 288072509 840075867 836376015 533455280 376974209 518384931 602832600 47290536 310726569 920628541 311808379 577970627 806792339 295606018 607760956 162062292 841780337 489130642 979750308 958668995 780061015 967417280 172894131 126695727 557710104 242530683 962073361 603931167 55108095 886917295 989729323 306607837 838803091 685702028 885353274 598426014 246058339 292696118 250832323 876263470 394791153 351424753 175060805 575895835 925555858 746092812 664041213 994877696 328764419 567948101 687055288 74587532 907095826 363976852 990121035 586446680 506178629 361435434 299462930 886149363 543865019 617908997 872434540 153196022 49948206 809429735 152314280 750563611 607965234 518384931 972710252 799588075 140551765 654830523 618355033 514650194 420636144 331638088 296751278 674485068 276676140 211958450 729868696 683406807 775682536 67831588 792822959 816971086 778123726 332834875 81337657 115090276 195733178 575895835 179991869 31215478 572465104 98824830 396937914 688577702 394791153 638516505 103219970 884072178 98231977 151364594 939725993 806664207 955730659 994877696 557710104 626932919 776835194 678884863 338929165 956815883 215289803 308142020 433921335 214244685 953267424 292972503 515426984 703514531 646710523 215977916 282751746 242186770 787269565 60750487 424974082 760370490 195733178 715779797 119279869 600441802 667844649 754580366 778123726 290117216 408032939 886917295 390793037 274113481 597784477 545538425 88335614 660765062 757709512 931640418 559957428 619842427 324986193 570764323 604881661 74587532 694954883 448262245 218611070 53226850 613596687 769327548 994587826 407629453 699230813 931013644 782533040 661321016 121069546 39220584 592970093 678884863 560623000 900116034 288072509 886917295 190323279 603931167 128450928 23973553 907095826 654830523 934824360 363976852 780061015 632014852 543945175 303230482 971549242 145559297 539035187 140129038 858040709 808866527 60017144 559014304 754133002 740882715 163229392 705304879 32954995 503666498 866568903 498840912 526944836 305990981 815123402 298727845 618355033 662421393 761330904 15037608 646710523 407091770 885353274 47290536 285947848 503666498 968755777 375066210 137529801 748408317 32954995 215792516 874297853 554222239 853170454 485153920 852604705 688577702 942899938 478351140 732245352 422532994 53195413 704431513 252962990 215977916 324129364 931966477 923715439 209789164 776835194 991073887 806744033 429277230 81553943 456956861 420636144 190979155 349076114 854969794 812414090 152523810 464444922 135975430 1736950 74587532 744008188 99294732 960796073 196106606 732245352 554222239 981996224 586446680 170941326 719307635 404152565 645094664 650036494 289736829 306597948 269911067 485509833 946916156 829614460 193648030 5299425 776352608 172894131 715779797 780061015 743614603 776835194 876868627 831380531 138393155 589760538 247006479 686884353 946612927 190323279 462762217 174335822 101231409 307403622 640925332 121069546 982370833 138442062 163769090 939725993 691982506 688177128 1926282 174862116 704431513 382904427 83066601 485063015 681765297 970320952 769327548 112390393 60750487 535533605 425392410 507016471 572588387 55108095 763431295 808614164 567948101 103219970 704431513 226492467 748408317 4519262 862254110 60017144 926045944 854243215 512614298 699230813 462762217 650036494 295606018 250749017 21190596 810021050 103733806 939725993 746092812 145885851 592639233 775682536 598426014 566554997 581063820 761330904 133739154 625664180 956286779 812044550 10475035 971549242 275349681 907095826 142903358 981996224 695599688 361002681 685702028 764116955 788737791 891279504 538810384 601740259 691982506 708094860 736237188 726950461 420052652 647733367 678884863 495854210 305068796 81553943 910850066 262406489 138393155 729868696 656623172 616057762 31215478 121069546 39220584 27735709 650990283 29473993 264408147 186244437 428572243 891279504 103733806 850484222 163769090 573480571 237389399 495854210 331638088 396138845 955501918 749497174 770594967 247822207 196106606 983113723 876868627 711455867 860377902 79509313 424594759 708053570 942999703 307403622 979740237 699733109 753419354 808614164 586446680 727578179 949084393 459452716 915330573 806792339 305990981 433921335 703490607 136412292 145559297 746394036 803588261 983373150 688534928 48746678 430088921 300892929 299113502 713146141 681930584 884952974 396743027 174335822 946612927 548964093 430101007 891279504 196106606 570796148 215977916 248642173 451817798 207442482 746092812 167276070 876263470 667844649 132556595 400218902 367026304 53966525 539957336 456137963 804406873 629101079 488295044 937158597 807117750 117210451 286037808 441621000 661321016 78775552 502849508 566554997 953882020 697742034 308142020 531135820 115090276 215052415 67700412 140551765 650990283 531333917 740340897 668964848 278160655 851759377 215981255 934824360 567774282 590918818 72820570 689757867 257214051 476912096 152243323 829983432 303230482 582273012 471393875 248642173 838655651 140725908 855636134 382210484 40448245 702745028 211958450 835212499 53226850 630238886 93478833 250885472 289918211 647733367 630201811 526944836 10475035 996943901 326469359 737945381 511330454 573449906 344876805 246058339 321628921 451521521 6720560 360743135 681930584 885000402 28363157 812044550 938140278 250885472 623398671 160287690 632014852 24089615 502849508 625664180 1926282 708046990 138393155 831380531 570764323 758889515 407091770 182214511 705548145 589760538 438183310 750978759 774489082 495854210 431406787 526944836 138393155 522332929 305068796 145885851 471393875 5299425 954227928 960543625 117931902 103219970 904771946 852755974 956815883 49614749 941586175 47349911 745200166 134801439 773781000 907721720 681930584 463496366 259646582 35128915 512614298 607041944 67700412 55018341 432089082 983373150 115090276 130160246 431406787 788118407 917795074 726950461 886149363 806792339 653201202 624819674 125829791 590918818 780870754 56927881 740882715 960543625 142903358 641231120 201717402 750978759 893019475 579757115 361435434 452156279 882364001 664041213 637657473 342116147 117931902 808838846 681765297 134801439 125829791 527595027 882364001 638790258 567948101 560327459 597206610 835212499 687988023 288072509 40656291 767839638 344876805 109054120 93651148 762749463 328462418 984050047 918225489 349644605 140129038 983113723 195957995 324986193 396050095 449022331 619842427 604181881 738855203 688177128 396806189 964902255 306258744 851759377 887794841 249820698 153196022 36055646 181668423 215289803 464130920 77685914 284588557 79523589 632014852 573449906 540394532 2575238 247221668 953267424 753419354 314069534 554222239 114409323 915330573 494336936 958668995 812044550 969294148 702745028 776820092 459452716 771321738 458363994 956286779 940381563 13112382 485262404 115090276 376974209 40656291 250885472 783513992 882804101 982416551 337153847 575023903 934824360 308142020 256866745 740340897 179991869 921198791 299462930 757815664 944573659 6720560 778123726 60750487 56927881 654830523 78775552 982416551 632378665 751925989 902464469 835339516 975478549 587469038 557710104 190929591 667844649 942999703 800460688 292696118 910818482 610834602 983113723 425392410 272303478 992001870 994587826 177689820 475344103 64420967 117210451 407510599 290474734 617908997 866568903 637657473 953267424 302151126 932715562 201717402 272303478 152523810 860708299 354807942 5299425 306258744 735891721 838331644 579757115 975337465 146573202 433686203 390793037 354807942 789617647 941586175 896072909 103733806 810021050 843005594 859168292 306607837 866568903 53525809 114409323 750563611 808838846 567343883 968755777 53226850 179991869 49317804 112390393 190929591 727578179 835339516 531135820 332834875 360743135 465759767 475344103 591292508 971549242 98824830 775682536 219054502 400178823 854902633 159828635 49317804 315343704 308142020 376448548 765027062 225858850 311613451 790270533 904800517 557710104 854969794 37275245 971894015 931005739 38338132 342116147 74587532 509019925 344876805 620243558 610447918 858040709 991073887 618355033 47290536 313272965 623398671 249670598 6720560 708053570 583924389 676975489 661321016 912948600 846351340 443960759 332834875 408032939 807117750 836376015 162062292 885647994 932584021 446968233 570764323 136412292 28363157 66490779 645094664 727827821 850386354 808838846 931086800 56927881 770993588 722013570 152523810 506919968 271484655 808614164 652018277 841210236 438183310 727578179 633573519 548964093 931640418 298050322 858127225 782533040 308142020 506178629 598426014 478892468 770594967 119279869 663971090 172894131 201717402 458363994 702364434 888259120 545538425 579757115 590208882 607041944 567948101 896029805 485153920 630629857 590208882 711532060 532803593 678474526 15037608 35128915 950673785 891279504 518384931 449022331 293192373 767187616 920721173 288873549 289736829 299462930 598426014 726620654 540394532 60017144 412979540 55108095 67831588 757709512 321628921 498045048 723661847 968755777 190979155 186244437 736237188 995876182 430088921 994587826 630775839 937158597 602396426 241184545 857535330 458156391 807117750 902464469 401452903 299462930 94279561 1736950 275202504 539035187 195957995 733642252 396743027 851759377 455539394 912948600 332834875 543865019 133739154 602832600 768561257 729868696 661321016 543945175 268759041 866337119 944068218 601740259 480361743 668964848 156817178 403519778 931640418 641231120 251188854 729868696 38338132 646710523 31215478 835212499 431406787 307060809 268759041 970320952 975337465 884952974 637769046 427184372 751925989 808838846 660765062 970911538 604968568 475344103 308142020 378961655 941586175 838803091 786380583 252792947 966683628 910818482 10475035 550322314 162062292 808614164 174140940 60017144 74587532 193515742 525347105 829983432 186285312 51457589 885995802 885000402 538025980 287239117 490344724 757709512 539381059 24089615 652018277 420636144 1926282 560623000 619842427 488788762 407510599 511277493 660095934 300892929 940188502 589760538 750563611 264297813 632402794 607041944 247234349 841210236 592639233 226492467 363976852 782533040 255644658 727578179 196106606 249820698 814662325 307403622 637657473 405444604 950497221 627110568 640849273 746394036 653201202 719601437 32806834 761330904 562773407 437743643 210621083 835212499 770864525 250832323 303230482 726950461 770993588 604181881 455539394 884952974 542382913 112390393 514650194 495854210 131323888 746394036 162062292 114409323 247841801 5299425 422532994 835212499 803588261 907721720 56154381 874297853 846351340 250885472 331638088 276676140 780870754 300892929 366854683 514768035 448262245 885000402 77819776 40131409 344876805 727578179 953882020 117210451 117931902 758889515 931640418 251367294 748408317 283321520 979740237 970911538 242186770 607760956 498840912 349644605 334299650 162904272 630775839 577673184 630201811 907721720 809429735 117210451 601630030 179991869 328462418 997329398 932584021 81553943 876868627 943235508 900796599 732245352 918225489 420636144 760370490 806744033 941586175 887548285 292149520 597784477 610834602 19911869 264408147 60017144 366854683 63192647 321628921 145885851 954677909 630238886 691982506 112090095 83066601 5299425 228290502 494336936 660095934 267829614 814662325 79523589 93651148 970320952 115509283 628820972 638516505 522663253 67700412 1736950 559014304 630238886 40656291 298050322 893019475 420636144 932584021 134971740 931086800 937158597 660095934 511277493 864016134 764459345 275202504 408032939 234980621 757709512 456956861 390275103 778074990 624819674 610447918 266583970 628523361 968755777 656623172 613596687 660765062 896029805 31615284 686884353 502849508 597784477 900116034 997329398 931640418 121069546 492009082 694954883 778074990 628820972 598426014 997329398 969294148 338312978 60750487 885000402 846351340 478892468 860477160 624819674 489612980 744008188 32075030 786320493 862177563 664041213 412979540 989729323 77819776 732559957 862177563 588034909 174140940 726620654 809429735 960543625 274113481 388085842 153196022 53195413 695599688 604881661 687988023 306597948 311613451 112390393 456956861 889608806 862177563 531135820 6720560 984047482 464130920 587179274 719307635 570796148 49317804 464444922 375066210 522663253 465697134 266583970 190979155 836376015 705548145 396632533 498840912 112090095 1926282 852604705 311613451 975478549 433686203 403519778 797746066 792846009 688577702 506178629 958668995 851829959 946916156 404152565 626932919 223299794 152243323 800460688 674485068 577673184 56154381 854243215 551289217 262406489 306258744 620243558 366854683 299994808 900116034 664041213 455539394 515426984 626833449 190323279 661321016 543865019 877167702 885141769 768561257 727827821 152523810 87392830 969294148 815123402 969294148 47349911 688577702 678474526 209789164 246221518 585165457 19715614 630201811 241184545 637657473 744008188 547547687 266583970 444897967 79509313 502849508 290474734 80485362 338631458 292696118 328764419 855636134 53966525 99294732 288072509 740882715 317751260 904771946 509144872 975337465 306597948 857535330 955730659 660095934 607965234 396806189 829614460 332834875 990121035 971894015 109054120 688534928 420636144 328462418 117210451 940188502 854243215 210621083 112390393 115090276 808838846 10475035 241184545 396806189 119279869 628523361 775682536 331638088 979750308 554222239 960796073 586446680 79523589 128702236 635302209 931086800 420636144 885549757 5299425 776820092 795472528 305990981 630977998 40448245 400178823 186285312 330274784 512614298 750978759 862254110 831380531 803588261 852107700 78649514 427184372 295366548 556619020 850386354 989729323 39220584 400178823 206036522 601740259 637769046 334211676 918225489 426814174 802009078 851829959 257214051 458290565 366854683 662972501 850386354 699230813 242186770 387703244 275202504 912948600 174140940 172382592 296305836 726950461 603931167 394791153 705304879 140551765 801623766 451551269 929504680 757709512 539957336 162904272 489130642 160287690 67700412 968755777 286037808 237172271 251188854 932715562 660765062 288072509 242028021 225771141 177689820 507016471 190929591 241184545 21190596 252962990 156817178 601740259 396050095 689757867 1926282 963141978 604968568 735710261 128702236 781246194 82689280 539035187 28363157 907095826 67831588 272303478 123073176 441621000 577970627 172894131 760231333 550322314 208625324 288873549 938140278 995876182 492009082 196460706 562773407 250832323 490344724 767839638 586370291 907721720 328462418 213097363 757815664 498045048 322974842 337153847 215792516 32954995 884072178 448881532 575023903 223299794 375066210 841210236 827311105 396138845 929504680 579757115 746992914 400218902 547547687 49948206 663670886 782533040 595030753 60017144 78649514 667313812 760231333 509370562 306607837 853903669 53226850 223299794 971894015 376974209 32075030 506919968 688577702 776835194 559014304 604881661 721418370 485509833 422532994 378961655 514650194 403519778 214244685 918521256 652018277 938080232 835339516 48746678 971894015 689757867 275349681 179981178 685702028 744008188 617908997 852107700 760370490 117210451 153196022 248642173 64420967 638790258 109369069 2575238 67700412 247822207 770993588 571019028 540394532 283321520 876868627 103219970 683406807 628820972 499057158 994587826 490344724 630238886 719307635 942899938 992001870 250832323 893019475 81337657 457149478 674446970 306607837 272303478 209789164 160287690 293192373 548964093 936312210 891279504 650990283 338312978 567774282 616796881 610834602 896072909 857535330 708094860 738855203 686884353 152618584 449022331 152243323 276676140 174140940 842970782 598426014 932715562 417074904 437743643 971894015 853903669 23262398 746394036 396743027 170941326 49317804 256866745 186285312 458156391 967417280 860708299 251188854 975478549 29069209 888259120 47290536 452156279 783513992 991615550 538025980 618355033 420052652 831380531 326469359 557710104 206036522 462394151 640925332 711532060 778074990 737945381 831467447 459452716 230662076 516175014 77819776 458363994 633587956 53966525 645094664 476912096 151364594 686335042 183440003 87392830 247234349 451551269 703514531 992169078 904771946 668964848 153196022 215289803 888553258 488788762 886149363 592970093 814295984 968755777 922706719 298050322 954677909 324129364 21190596 195019158 551289217 938456692 154538466 944573659 151364594 744008188 412979540 810021050 954677909 962430008 151506993 889608806 795549341 891279504 738855203 248642173 311613451 337153847 941586175 170938835 190929591 793291205 196106606 390275103 408395896 205387898 489130642 314069534 641635851 205387898 851400664 298050322 722768643 437743643 628523361 179991869 703490607 324986193 801623766 990121035 936312210 81553943 802009078 249670598 366854683 382904427 862254110 393120342 854969794 697742034 489130642 531333917 900796599 252962990 278160655 353964006 923927991 526944836 387176309 155241439 264750083 582273012 295606018 566554997 860477160 359714925 570764323 812044550 585165457 146573202 857535330 237172271 117931902 858040709 32075030 403519778 882364001 313272965 269911067 137529801 663670886 860708299 533455280 246058339 736237188 761330904 947413305 520071928 966131311 396138845 305068796 662972501 214244685 288873549 776352608 618355033 885995802 925555858 736624310 638790258 738612855 143200457 814662325 750750593 304621545 522332929 551289217 256866745 82689280 754133002 181668423 463496366 77819776 29473993 904771946 19715614 210621083 981996224 407510599 708094860 650990283 983113723 228290502 526944836 275202504 735891721 857535330 387703244 637769046 560623000 674485068 218611070 109369069 616057762 209789164 992169078 572588387 20148474 918225489 272303478 860477160 607041944 527654256 775682536 407091770 134971740 590208882 49614749 633573519 475344103 344876805 852604705 816971086 400218902 630775839 160287690 432089082 463496366 304621545 641231120 60750487 296751278 567774282 128450928 681765297 780061015 931966477 806792339 99294732 315343704 228290502 896072909 567774282 515426984 230662076 972710252 860377902 788118407 292972503 215289803 982370833 68748842 765027062 420636144 407091770 812414090 322974842 79509313 920628541 688177128 601630030 560327459 941586175 940381563 38844979 623206361 420052652 485063015 600441802 582273012 917795074 746394036 186285312 601740259 877088774 572465104 838655651 507016471 77819776 196460706 425392410 134971740 211958450 174335822 709613471 172894131 432089082 310726569 748408317 282751746 40656291 838803091 626932919 940381563 838655651 960543625 128188331 249820698 971894015 979750308 208625324 317751260 228290502 885141769 923927991 687055288 567774282 186244437 956286779 334211676 619842427 459617527 292696118 812044550 838331644 288072509 488295044 889608806 662421393 943793512 559014304 535533605 590208882 896072909 148087911 732245352 568104980 715957434 923927991 195019158 721418370 514768035 271484655 817743547 78649514 134971740 292149520 884952974 40448245 246221518 215774690 27735709 687988023 342116147 688534928 550322314 21190596 140725908 679463383 808838846 425392410 307060809 688534928 726620654 947413305 527595027 860377902 324129364 738612855 225771141 617908997 560327459 94279561 850484222 74587532 923715439 600441802 888259120 38844979 264100442 425392410 174862116 551289217 588034909 538025980 296751278 53226850 737945381 456956861 382904427 846351340 250749017 703490607 775682536 38338132 458156391 876868627 514768035 152523810 970320952 451817798 155241439 539957336 694954883 351424753 287768226 663971090 944573659 298727845 885353274 242530683 573480571 67831588 349076114 60750487 476912096 101231409 163229392 575023903 37275245 275349681 757709512 806664207 831241130 637939784 835212499 953882020 887548285 49317804 266583970 152243323 629101079 982353486 324986193 162062292 36055646 539957336 607760956 763431295 334932282 264408147 624819674 969294148 989729323 93651148 376974209 586446680 778123726 944068218 662972501 893019475 36055646 650990283 943793512 289918211 592970093 982370833 109054120 430284321 449022331 979740237 767839638 864016134 264100442 13112382 506178629 884072178 635302209 228290502 793291205 660095934 138442062 98824830 287239117 299113502 636434256 93478833 174862116 126695727 249820698 131323888 195733178 78649514 557710104 533864165 106790696 268759041 81553943 375066210 590918818 947413305 711455867 736237188 531135820 31615284 573449906 687988023 806744033 492009082 841780337 920628541 767839638 286037808 19911869 540976336 138442062 98824830 735891721 315747769 338312978 152618584 458290565 80485362 4519262 814662325 441621000 296305836 953267424 778074990 623206361 917795074 170941326 56154381 625664180 278160655 571019028 888553258 290474734 433686203 237172271 700560235 995876182 174140940 607965234 705304879 420636144 28363157 393120342 769327548 140551765 597206610 267829614 774489082 632378665 268759041 252962990 915330573 349076114 603931167 246221518 132556595 543865019 838331644 315297566 13112382 296751278 640925332 196460706 540976336 296751278 654830523 647733367 884059813 193515742 153196022 226492467 991073887 88335614 703514531 916956968 760370490 835212499 513440742 427184372 308142020 334932282 64420967 485509833 770864525 702745028 831467447 571019028 247841801 262406489 257214051 223299794 601630030 860708299 163769090 458290565 428572243 307060809 10475035 618355033 586370291 761330904 751925989 829614460 922706719 573480571 638516505 888259120 56154381 635302209 53525809 56927881 715779797 806744033 210621083 629101079 538810384 638790258 991073887 968755777 946612927 196460706 982370833 726950461 581063820 866337119 797746066 248642173 801623766 10369081 598426014 790270533 375066210 382210484 641635851 175060805 151506993 983113723 663971090 485262404 656623172 55108095 128188331 962430008 838331644 205387898 498840912 498045048 215792516 413592826 532803593 324129364 154538466 349076114 502849508 179981178 570764323 592981604 623398671 859168292 949084393 566125822 32806834 218611070 129724737 918521256 293192373 656191811 261683638 997329398 247221668 163229392 53525809 213097363 135975430 556619020 103733806 225858850 604968568 394791153 855636134 485262404 618542887 298050322 685702028 718980624 687988023 602832600 431406787 146573202 275202504 694954883 674485068 396937914 142903358 207442482 40656291 36055646 601630030 437743643 736237188 49614749 32806834 87392830 152866011 458363994 955501918 138442062 862177563 722013570 757850417 478892468 215977916 299994808 247221668 969494113 888699423 996943901 874124920 77685914 242186770 711532060 886917295 866568903 595030753 317751260 797746066 266583970 780870754 310726569 255644658 817743547 268759041 989729323 801623766 179991869 109369069 604881661 581063820 793291205 922706719 896072909 163769090 749497174 757815664 630238886 776820092 618355033 757850417 424974082 840075867 382210484 827311105 787269565 770864525 729868696 153196022 53966525 448262245 35128915 82689280 548964093 843005594 721769014 234980621 397928982 654830523 509370562 830619816 678474526 152866011 249670598 208625324 782533040 904771946 635302209 303230482 735891721 268759041 550322314 148087911 573480571 835339516 464444922 136384659 975478549 843005594 223299794 816971086 543865019 583924389 300892929 776820092 369306500 492009082 15903366 740340897 726950461 125204206 647733367 598543708 19715614 705548145 311808379 917795074 507016471 598426014 55018341 628523361 727827821 420052652 307403622 214650974 448881532 585165457 388085842 887794841 931005739 926044257 241184545 953882020 103219970 888553258 560623000 548748527 40131409 53525809 509664709 489130642 437743643 156817178 699733109 660095934 290474734 736624310 405444604 738855203 989729323 23973553 604181881 295366548 812414090 56154381 15903366 855636134 507016471 181668423 841210236 214244685 160287690 710224239 209497607 93478833 970911538 230662076 81337657 876263470 942899938 738855203 699230813 982370833 218611070 740882715 607965234 994877696 175060805 618542887 49948206 926044257 215052415 799588075 629101079 438183310 87392830 306607837 650036494 709613471 812044550 396806189 187104147 32806834 800460688 478351140 249670598 604968568 276676140 601630030 47349911 598543708 213097363 334299650 456137963 247221668 60017144 626833449 40131409 591292508 27735709 687988023 172382592 837690635 207844781 780870754 66490779 38338132 566554997 278160655 788118407 538810384 464444922 745200166 761330904 904800517 77685914 788737791 733642252 462762217 896029805 788737791 112390393 366854683 393120342 854902633 290474734 266213579 134801439 80415088 288072509 255644658 388085842 99294732 195733178 305990981 165821462 328462418 241184545 306258744 853170454 685702028 390275103 138393155 727578179 765027062 250885472 704431513 572465104 862254110 835212499 123073176 218611070 215977916 458290565 896571061 382210484 254203892 140725908 152866011 689757867 455539394 646710523 266213579 314069534 632402794 872434540 420052652 246058339 289918211 338631458 931013644 506919968 575895835 732559957 264750083 923715439 877167702 866568903 971894015 38304068 575895835 607965234 603931167 764116955 942999703 360743135 93651148 711455867 230662076 781242822 846351340 315297566 306258744 852604705 131323888 632378665 292972503 678474526 306258744 4519262 803588261 179991869 654830523 526944836 546679009 762749463 563678994 78775552 480361743 780061015 433686203 48746678 736624310 324986193 247006479 248642173 539381059 522663253 304621545 130160246 94279561 495854210 885549757 790270533 710224239 842970782 538025980 310726569 864016134 697742034 152866011 896029805 174140940 509370562 295366548 87392830 926044257 515426984 448262245 87392830 803588261 858040709 49317804 451521521 570764323 699230813 864016134 209497607 917452919 298050322 918225489 718980624 931013644 283321520 358401766 592981604 691982506 722013570 738855203 874297853 760370490 968755777 860377902 2575238 860377902 179991869 177689820 288873549 490344724 399037712 83066601 686335042 83066601 573480571 736624310 620243558 553191189 256866745 835339516 396138845 860477160 623206361 214244685 396632533 619842427 938080232 650697444 509144872 807117750 505061211 598426014 810021050 32075030 38304068 835339516 443960759 201717402 4519262 6720560 682170984 610447918 831241130 637769046 711455867 255644658 687055288 432089082 708053570 786380583 968670974 93478833 282751746 735696627 636434256 145559297 352092606 920721173 607760956 247006479 36055646 375066210 767839638 650990283 175060805 922706719 831241130 979740237 325554372 117931902 328764419 656623172 288873549 138393155 79523589 630201811 597784477 878442641 767187616 876263470 146573202 681765297 464444922 876263470 636434256 860377902 627110568 874124920 342116147 966683628 252792947 215981255 5299425 489130642 566125822 64420967 885141769 956286779 2379379 43970470 520071928 770864525 433921335 451817798 942899938 284588557 337153847 637769046 993091440 567343883 459452716 162062292 509370562 931966477 749497174 202477791 250885472 770864525 175060805 991073887 722013570 637657473 616796881 284588557 451551269 215792516 711455867 760231333 138442062 425392410 138442062 685702028 629101079 478351140 788118407 770864525 98231977 911302173 170938835 32806834 782533040 837690635 509019925 247006479 698320352 451817798 993091440 527654256 225858850 174140940 117210451 215792516 795472528 214244685 172894131 211958450 382210484 927806038 207442482 186285312 47529701 904771946 727245017 298727845 795472528 401452903 282751746 770864525 396138845 195957995 582273012 422532994 79523589 264750083 172894131 696443558 853170454 202477791 264297813 513440742 662972501 567948101 163229392 40656291 506178629 754580366 369306500 982416551 24089615 931966477 376448548 142903358 458290565 492009082 352092606 814662325 727827821 640849273 910818482 128702236 162904272 770993588 925555858 183440003 732245352 533864165 426814174 407091770 53966525 293192373 451551269 748408317 448881532 354807942 446968233 945394518 507016471 851400664 874297853 799588075 400218902 661321016 582273012 740340897 246058339 929504680 795472528 956286779 896029805 481894295 106790696 511330454 248642173 354807942 531135820 562773407 172894131 630201811 699230813 351424753 829983432 375066210 117210451 274113481 781242822 876868627 128450928 808866527 32954995 152618584 324129364 950497221 334211676 38338132 812044550 773781000 1736950 804406873 589760538 850386354 237172271 135975430 19911869 926045944 792822959 215977916 155241439 115090276 758889515 562773407 702745028 809429735 638790258 770993588 349076114 334299650 850484222 163769090 506919968 843005594 744008188 854969794 170938835 332834875 163229392 626932919 722013570 424594759 478892468 838655651 324986193 931640418 635302209 49317804 960796073 885549757 121069546 140129038 806744033 334299650 103219970 585165457 750978759 900796599 464444922 103733806 842970782 275202504 566125822 553191189 764116955 278160655 103219970 117931902 854243215 814295984 103219970 913521589 607760956 633573519 667844649 242530683 853903669 949084393 232177196 424594759 397928982 954677909 250885472 770594967 49614749 633573519 282751746 211958450 789617647 885995802 842970782 921198791 932715562 298727845 554242697 420052652 749497174 954227928 997329398 640849273 996943901 551289217 771803404 512614298 852604705 773781000 711532060 183440003 968670974 78649514 241184545 862254110 628820972 211958450 782533040 858127225 310726569 471393875 526944836 887794841 300892929 797746066 179991869 604968568 250749017 982370833 522663253 585165457 330274784 920628541 780061015 617908997 792846009 142903358 175060805 626932919 570796148 550336314 726620654 311613451 885000402 850386354 49948206 128188331 209497607 131323888 978947655 633587956 744008188 712346140 991615550 795549341 249820698 966683628 137529801 860377902 334932282 1926282 932715562 563678994 889608806 545538425 623206361 886917295 250749017 322974842 509664709 499057158 984050047 148087911 689757867 774489082 241184545 854969794 979750308 949084393 942866882 542382913 627110568 982416551 582273012 488295044 179981178 956815883 79509313 193648030 15903366 214244685 932715562 940188502 522663253 539381059 996943901 214650974 376448548 900796599 776835194 201717402 485262404 174140940 361002681 971894015 860708299 344876805 571019028 572588387 767839638 154538466 288873549 209789164 360743135 738612855 835212499 417074904 853903669 966131311 955730659 242186770 764459345 488295044 51457589 135975430 314069534 538810384 812044550 776352608 252962990 417074904 175060805 261683638 560327459 334299650 527595027 131323888 860708299 358401766 787269565 735696627 829983432 927806038 306597948 592639233 689757867 750563611 137529801 363976852 790270533 539957336 38085353 424594759 667844649 489130642 835212499 567343883 247822207 736237188 165821462 306607837 981996224 780870754 53195413 10475035 548964093 322974842 424974082 135975430 566554997 351424753 128450928 132556595 746394036 559014304 7807006 478351140 971549242 275202504 726950461 950673785 420636144 344620844 602832600 151364594 697742034 538025980 910818482 244528344 509144872 804406873 394791153 575023903 187104147 854902633 781246194 270237875 121069546 735696627 697742034 40656291 186244437 915330573 885353274 451817798 955730659 876263470 746394036 98287438 577673184 696443558 983373150 363976852 907095826 533864165 298050322 429277230 800460688 858127225 187104147 583924389 396632533 568104980 315343704 228290502 939725993 298727845 47349911 917795074 251367294 632402794 835212499 703490607 764459345 39220584 128450928 598426014 250832323 326469359 478892468 498840912 676975489 546679009 146573202 740882715 981996224 115090276 338631458 295606018 969494113 770594967 781246194 375066210 47529701 757850417 767839638 678884863 984047482 38844979 940381563 768561257 991615550 788737791 842970782 135975430 896029805 926045944 394791153 604968568 568142039 525347105 996943901 610447918 288873549 956286779 420636144 562773407 866568903 922706719 451521521 896571061 246058339 512614298 762749463 776352608 727827821 271484655 620243558 679463383 570796148 751925989 288873549 430088921 790270533 830619816 19911869 770993588 20148474 367026304 266583970 577970627 979750308 858127225 764459345 550336314 750978759 31615284 103219970 429277230 676975489 590208882 32954995 705304879 683621666 860477160 854243215 967417280 511277493 261683638 812044550 797746066 441621000 420052652 495854210 293192373 841780337 801623766 446968233 860377902 87392830 407510599 781242822 979740237 49948206 444897967 37275245 498840912 494336936 407510599 607041944 992001870 852107700 896571061 969494113 835339516 130160246 270237875 992169078 448262245 604181881 923927991 475344103 123073176 81553943 298727845 570796148 132556595 128450928 736624310 841780337 885995802 853170454 407091770 942899938 462762217 953267424 32806834 571019028 177689820 790270533 456956861 937158597 83066601 352092606 918225489 884952974 783513992 761330904 40448245 138442062 77819776 476912096 266213579 771803404 705304879 781242822 695599688 209497607 586370291 313272965 247234349 630238886 910850066 885000402 862254110 527595027 278160655 427184372 840130613 215289803 652018277 829614460 511330454 938456692 93478833 602832600 712346140 451551269 538810384 451551269 38338132 718980624 932584021 800460688 254203892 311808379 954677909 119279869 302151126 733642252 688577702 342116147 396806189 758889515 740882715 325554372 774489082 568142039 136384659 942866882 305068796 15903366 407091770 885141769 311613451 458363994 918225489 887548285 242530683 624819674 954677909 349644605 770864525 47349911 247234349 618355033 53226850 983113723 396806189 885647994 598543708 252792947 950497221 179991869 575895835 964902255 886149363 413592826 237389399 931005739 900796599 396937914 769327548 328764419 331638088 485509833 770993588 554242697 275202504 781246194 21190596 134801439 53525809 726620654 548748527 314069534 431406787 172894131 929504680 885647994 653201202 47529701 512614298 754133002 885549757 48746678 31615284 729868696 774489082 662972501 315747769 288072509 923927991 860708299 874124920 793291205 702364434 285947848 931086800 960543625 396806189 761330904 626833449 808614164 525347105 478892468 685702028 256866745 850386354 983373150 174140940 324986193 885995802 749497174 533455280 835212499 6720560 938705675 268759041 831241130 763431295 267829614 24188768 907095826 662421393 88335614 181668423 476912096 311613451 250832323 702364434 566554997 303230482 307403622 704431513 15903366 688534928 250885472 628523361 568142039 98824830 781246194 601630030 972710252 242530683 49948206 736237188 962073361 917795074 426814174 234980621 396632533 837690635 616057762 768561257 516175014 893019475 971549242 407091770 808838846 695599688 145885851 838331644 566125822 344876805 196460706 932584021 841780337 215977916 443960759 503666498 970320952 230662076 719601437 862177563 382904427 305990981 511277493 967417280 68748842 53525809 885141769 513440742 325554372 723661847 994587826 884072178 572465104 152618584 506919968 358401766 327773233 375066210 604181881 344620844 172894131 489130642 511277493 773781000 667313812 433686203 636434256 94279561 718980624 293192373 498045048 177689820 330205547 900116034 63192647 24188768 850484222 428572243 441621000 778074990 225858850 586446680 98231977 480361743 250885472 304621545 782533040 448262245 944573659 969294148 722013570 42657625 722013570 321628921 737945381 270237875 582273012 153196022 851759377 43970470 996943901 597206610 51457589 931013644 48746678 956286779 437743643 21190596 452156279 982353486 859168292 31215478 32954995 148087911 625664180 884072178 616057762 838331644 426814174 237389399 49614749 586370291 573449906 140129038 994587826 156817178 531135820 946612927 449022331 704431513 36265302 753419354 359714925 215774690 262406489 858127225 997329398 900116034 607041944 154538466 559957428 586446680 109054120 344620844 996943901 23262398 573449906 760231333 627110568 638516505 572465104 326469359 526944836 438183310 170938835 255644658 313272965 210621083 711532060 929504680 550322314 746092812 548964093 457149478 29473993 776820092 938080232 237389399 225858850 412979540 764459345 215981255 733642252 745200166 746394036 408395896 592970093 296305836 937158597 604968568 2575238 367026304 800460688 23973553 179991869 430284321 853903669 586446680 87392830 750563611 996943901 363976852 808838846 295606018 207844781 286037808 907721720 242530683 195733178 140129038 396937914 911302173 851759377 660095934 581831913 152618584 573449906 247221668 781242822 420052652 179981178 366854683 944573659 760370490 943235508 430088921 272303478 931086800 955730659 270237875 7807006 885549757 829614460 396806189 213097363 630201811 866568903 603931167 607041944 115509283 36265302 982370833 511277493 595030753 539035187 40448245 735891721 128702236 733642252 271484655 874297853 610834602 388085842 375066210 88335614 28363157 359859765 215977916 136412292 893019475 488788762 786380583 35128915 304621545 831241130 662421393 851759377 315747769 349644605 261683638 841780337 140129038 990121035 602396426 287768226 539957336 870201182 942999703 975478549 854902633 718980624 704431513 531135820 186285312 678474526 663670886 788118407 746092812 376448548 153196022 396138845 429277230 195019158 982370833 495854210 195957995 535533605 429277230 328764419 661321016 88335614 103733806 800460688 430088921 215052415 910850066 396937914 786380583 726950461 93651148 282751746 115090276 448881532 562773407 937158597 920721173 726950461 533864165 810021050 736624310 686884353 125829791 647733367 214650974 782533040 780870754 47349911 946612927 160287690 407091770 516175014 72820570 172894131 860477160 187104147 553368896 708094860 941586175 676975489 538025980 613596687 303230482 32954995 201717402 179981178 736237188 1736950 904800517 676975489 38338132 314069534 577970627 688177128 73848009 711532060 237389399 32954995 181668423 729868696 885549757 940381563 685702028 694954883 780870754 478892468 780870754 266583970 67831588 852755974 31215478 750750593 568104980 264100442 626833449 726620654 950497221 853170454 512614298 215052415 687988023 218611070 780870754 4519262 80485362 315297566 234980621 516175014 396050095 443960759 619842427 944573659 83066601 49948206 23973553 955730659 979740237 885000402 846351340 602832600 827311105 163229392 311613451 757709512 946916156 337153847 567343883 109054120 215774690 699230813 831467447 119279869 721418370 735710261 163769090 196460706 696443558 408032939 688534928 543945175 478351140 310726569 82689280 307060809 542382913 962430008 776820092 852107700 67700412 353964006 814295984 638790258 778074990 885000402 610447918 656191811 661321016 1736950 322974842 560327459 539957336 866568903 876263470 207844781 430284321 330205547 814662325 601740259 675472009 854243215 808866527 953267424 992001870 390275103 774489082 781246194 485153920 602832600 592639233 636434256 640925332 458156391 533455280 307403622 542382913 396632533 920721173 38304068 773781000 140725908 922858580 620243558 591292508 264100442 765027062 636434256 53226850 573480571 679463383 943793512 857535330 330274784 956286779 792822959 152523810 831380531 429277230 19715614 597206610 887548285 917452919 376448548 305990981 616057762 917452919 647733367 746992914 778123726 295366548 560623000 177689820 866568903 954227928 196460706 293192373 889608806 661321016 618355033 278160655 24089615 886917295 699230813 814662325 623206361 451817798 539035187 922858580 507016471 489130642 963141978 215774690 19715614 591292508 49948206 850386354 262406489 275202504 516175014 242530683 226492467 80415088 223299794 177689820 262406489 237389399 628820972 945394518 938705675 685702028 587179274 688577702 220576148 754580366 121069546 181668423 306597948 603931167 793291205 80485362 607965234 412979540 250832323 538810384 459452716 886149363 940381563 363976852 334932282 251042004 989729323 264750083 315343704 837690635 912948600 269911067 165821462 774489082 264100442 597206610 676975489 628523361 463496366 878442641 36055646 67831588 172894131 80485362 299994808 152866011 330205547 215792516 464444922 344876805 970911538 712346140 250832323 904800517 683621666 10475035 328764419 626833449 248642173 887794841 394791153 637657473 762749463 293192373 388085842 830619816 256866745 254203892 165821462 640849273 485509833 814662325 195733178 586446680 641231120 254203892 458156391 626833449 143200457 174140940 137529801 344620844 324129364 266213579 888259120 401452903 896029805 623398671 718980624 407091770 739696834 598426014 789617647 484158080 225858850 274113481 400178823 967417280 462394151 408395896 872434540 770594967 330274784 186285312 965948435 946612927 296751278 396806189 793291205 776820092 841780337 838331644 174335822 38338132 984047482 396743027 376974209 851400664 462394151 640925332 155241439 264750083 250749017 264408147 516175014 830619816 324986193 31215478 134971740 944068218 850484222 80415088 808614164 451817798 778123726 15037608 531135820 430088921 708053570 827311105 155241439 553191189 992169078 502849508 37275245 882364001 683621666 64420967 762749463 60750487 992169078 444897967 49948206 255644658 283321520 917452919 767839638 326469359 299462930 485153920 317751260 776820092 699733109 575895835 550322314 681930584 983373150 874124920 371179314 715779797 625664180 126695727 676975489 721418370 495854210 703490607 327773233 715779797 629101079 926044257 485509833 128702236 726620654 771321738 955730659 626932919 403519778 315747769 160287690 545538425 570796148 586446680 494336936 926044257 360743135 955501918 907721720 736237188 426814174 860477160 616796881 904800517 174335822 650990283 664041213 575895835 249820698 163769090 963141978 982370833 781246194 32075030 588034909 49317804 527595027 780870754 543945175 633573519 2379379 82689280 711455867 681765297 327773233 860377902 984050047 489130642 112090095 757815664 789617647 931086800 907721720 214244685 485262404 929504680 808838846 640849273 789617647 884072178 55018341 896571061 589760538 917452919 48746678 700560235 970320952 633587956 624819674 920628541 607041944 653201202 81337657 109369069 174862116 103669472 978947655 456956861 404152565 23973553 831380531 82689280 145885851 632014852 330205547 498840912 338929165 630775839 942866882 201717402 114409323 586370291 251367294 735696627 306597948 210621083 991615550 354807942 327773233 703490607 918521256 53525809 79523589 592639233 931005739 712346140 437743643 502849508 390793037 654830523 531135820 804406873 195733178 674485068 19911869 966131311 353964006 801623766 215289803 827311105 400218902 407629453 992169078 367026304 232177196 885995802 220576148 603931167 306597948 559014304 737945381 956286779 170938835 854969794 566554997 904800517 727578179 455539394 507016471 485153920 109054120 546679009 393120342 29069209 509664709 219054502 841780337 328462418 506919968 808866527 808838846 929504680 252792947 860477160 548964093 637769046 601740259 53226850 872434540 587469038 310726569 296305836 934824360 942999703 960543625 77819776 251367294 736624310 119279869 43970470 342116147 705548145 172382592 632014852 968670974 703490607 955730659 138393155 570796148 31215478 944573659 514650194 136412292 840075867 388085842 885549757 426814174 776352608 613596687 344876805 448881532 284588557 371179314 653201202 155241439 488295044 29473993 840075867 889608806 709613471 699230813 306607837 573449906 740340897 458156391 23973553 983113723 992001870 32954995 975337465 960543625 765027062 560327459 247841801 170941326 740882715 812044550 885995802 686335042 455539394 237172271 67831588 112090095 837690635 205387898 465697134 942866882 375066210 98231977 296305836 581831913 498840912 314069534 82689280 138442062 763431295 426814174 945394518 299462930 927806038 577673184 788737791 719601437 719307635 328764419 954227928 708094860 268759041 972710252 932584021 592981604 900796599 117210451 247234349 68748842 31215478 266583970 840075867 506919968 774489082 213097363 888699423 548964093 430088921 162904272 945394518 225771141 190929591 699733109 695599688 313272965 824770361 851759377 786380583 307403622 945394518 806744033 854969794 546141085 944068218 98231977 712346140 79509313 247234349 592970093 138393155 78775552 80415088 686335042 598543708 662972501 945394518 838803091 982370833 853170454 465697134 934824360 538810384 330274784 29069209 182214511 326469359 520071928 32806834 662972501 786380583 686335042 448262245 252962990 886917295 170938835 770594967 53195413 129724737 112090095 39220584 572465104 846351340 170941326 681765297 771803404 331638088 647733367 814295984 757709512 696443558 330274784 923927991 735891721 806664207 98231977 736237188 721769014 215977916 835212499 803588261 2575238 201717402 196460706 774489082 476912096 432089082 256866745 710224239 33511708 408395896 582273012 953882020 19715614 586446680 866337119 242530683 587179274 431406787 912948600 632014852 165821462 950497221 582273012 133739154 888259120 846351340 667313812 132556595 842970782 850386354 699733109 858127225 408032939 630775839 342116147 547547687 114409323 115090276 718980624 940188502 463496366 215977916 916956968 498840912 882804101 554222239 641231120 351424753 288072509 921198791 241184545 770594967 841210236 877167702 515426984 840075867 155241439 623398671 220576148 177689820 902464469 975337465 353964006 882364001 48746678 251042004 698320352 915330573 964902255 709613471 572465104 264408147 589760538 675472009 942866882 126695727 40131409 660765062 249670598 780870754 602832600 783513992 810021050 598543708 353964006 645094664 172894131 80415088 984050047 152866011 2379379 799588075 620243558 917452919 376974209 56154381 396138845 196106606 55018341 765027062 749497174 103733806 179981178 590208882 272303478 275349681 618355033 244528344 174335822 703514531 1736950 511330454 155241439 407091770 831380531 498840912 994587826 942999703 19715614 862177563 573449906 284588557 992169078 214650974 299994808 946916156 55018341 527654256 687055288 304621545 38304068 128702236 174862116 770993588 371179314 795549341 390793037 991073887 179991869 295366548 858040709 632014852 812414090 242186770 581831913 533455280 526944836 931013644 543865019 760231333 735891721 132556595 250832323 298727845 907721720 532803593 509144872 831467447 247822207 275202504 960543625 630201811 792822959 502849508 376974209 156817178 874297853 831467447 962073361 432089082 182214511 331638088 566554997 478351140 361002681 575895835 981996224 685702028 646710523 652018277 722013570 219054502 250749017 763431295 749497174 878442641 449022331 290117216 744008188 685702028 527595027 843005594 296751278 24188768 872434540 433686203 145885851 407629453 841780337 851400664 81337657 304621545 560623000 705304879 314069534 322974842 505061211 830619816 991615550 577970627 667313812 590208882 938456692 270237875 984047482 50241607 225858850 838331644 829983432 513440742 190323279 28363157 531333917 420052652 494336936 991073887 179981178 219054502 782533040 809429735 885353274 430284321 582273012 214650974 527595027 559014304 592970093 190979155 571019028 662421393 19911869 862177563 172894131 590208882 571019028 432089082 767187616 525347105 711532060 67700412 475344103 214650974 968755777 511330454 960796073 163769090 978947655 632014852 737945381 854902633 539035187 115509283 128450928 814662325 866337119 546679009 891279504 322974842 215052415 917452919 246221518 600441802 378961655 630775839 324129364 481894295 964902255 103669472 739696834 73848009 944573659 840075867 992169078 284588557 165821462 857535330 394791153 860377902 369306500 757850417 727245017 862254110 79523589 904771946 247822207 712346140 942866882 82689280 750978759 99294732 829983432 660765062 247822207 407091770 509370562 117931902 859168292 485153920 360743135 562773407 841210236 769327548 607041944 407510599 249820698 662421393 722013570 630775839 968670974 492009082 140725908 489612980 37275245 944068218 979750308 722768643 938080232 152243323 121069546 921198791 55108095 874124920 462394151 407629453 535533605 921198791 780061015 292696118 629101079 93478833 38304068 289736829 931005739 776820092 172894131 438183310 27735709 630775839 978947655 206036522 458363994 675472009 79509313 278160655 573480571 215792516 838803091 893019475 566125822 586446680 885647994 195957995 136412292 344876805 463496366 926044257 27735709 931966477 413592826 969294148 721769014 64420967 683621666 174140940 488788762 396806189 708053570 835339516 49614749 705304879 509144872 13112382 782533040 375066210 808614164 753419354 938456692 247006479 162904272 630201811 307060809 132556595 288873549 559014304 485063015 946612927 325554372 600441802 872434540 591292508 451551269 809429735 991615550 932584021 514768035 274113481 831241130 645094664 376974209 334299650 775682536 234980621 48746678 478351140 775682536 98287438 664041213 215774690 527595027 592639233 852604705 511330454 165821462 230662076 143200457 190979155 441621000 153196022 975478549 770594967 790270533 24188768 349644605 211958450 764459345 93478833 971549242 735696627 607041944 854969794 458156391 835339516 629101079 598543708 396138845 911302173 739696834 932584021 859168292 663971090 527595027 292696118 667844649 431406787 515426984 921198791 601740259 563678994 620243558 886149363 81337657 886917295 174862116 407510599 109054120 80415088 993091440 98287438 686884353 947413305 252962990 663971090 983113723 361435434 566125822 803588261 557710104 719307635 437743643 430088921 264297813 306258744 394791153 292149520 940381563 923927991 509370562 39220584 68748842 428572243 193515742 533864165 885000402 396050095 852107700 186285312 792822959 691982506 193515742 299113502 287239117 540394532 396937914 617908997 128450928 53226850 625664180 947413305 975478549 846351340 667844649 595030753 953267424 931086800 376448548 577970627 953267424 208625324 735891721 553191189 299994808 152866011 476912096 142903358 971549242 201717402 7807006 654830523 446968233 824770361 252792947 142903358 815123402 591292508 451521521 396806189 698320352 540976336 841210236 860377902 851759377 809429735 963141978 888553258 557710104 148087911 815123402 922858580 87392830 125204206 590918818 862254110 758889515 274113481 885000402 587469038 498045048 425392410 387703244 640849273 441621000 802009078 630629857 850386354 299462930 769327548 35128915 886149363 334932282 206036522 509370562 422532994 388085842 850386354 601740259 712346140 287239117 481894295 10369081 950497221 962430008 481894295 698320352 936312210 744008188 691982506 858040709 412979540 299994808 553368896 458290565 211958450 646710523 710224239 597784477 851400664 193515742 513440742 831380531 674485068 7807006 950497221 907721720 271484655 179981178 570764323 853903669 633573519 630629857 577970627 548964093 430088921 324986193 407091770 394791153 152523810 678474526 274113481 330205547 641635851 526944836 913521589 20148474 954227928 342116147 23973553 582273012 885549757 975478549 489612980 138442062 994877696 311808379 738612855 971549242 503666498 788118407 140129038 727578179 751925989 548964093 688577702 931005739 518384931 995876182 31215478 506178629 251188854 800460688 321628921 449022331 955501918 721769014 816971086 993091440 237389399 817743547 932584021 162904272 244528344 539035187 74587532 35128915 917795074 506178629 838655651 307060809 587469038 459617527 215774690 1736950 518384931 246221518 746992914 81337657 991073887 858040709 32806834 296751278 94279561 136412292 893019475 942866882 660765062 698320352 407510599 38304068 42657625 334211676 80415088 349076114 712346140 218611070 142903358 548964093 955501918 314069534 387176309 889608806 936312210 509019925 358401766 638790258 53525809 746394036 551289217 955730659 331638088 588034909 358401766 676975489 932584021 806792339 93651148 117210451 954227928 955730659 138393155 573480571 922706719 778123726 637939784 963141978 154538466 787269565 944068218 209497607 663971090 686884353 703490607 981996224 738612855 641231120 678884863 962430008 843005594 106790696 645094664 456137963 874124920 20148474 28363157 520071928 151506993 997329398 917795074 140551765 803588261 815123402 882364001 498045048 660765062 808838846 559014304 981996224 126695727 910818482 864016134 325554372 946916156 159828635 407091770 334932282 430101007 134971740 489130642 390275103 885995802 667844649 525347105 507016471 98287438 616796881 156817178 708094860 50241607 485063015 162062292 842970782 722768643 485063015 152866011 582273012 753419354 762749463 162062292 990121035 10475035 325554372 878442641 698320352 942999703 627110568 80485362 778123726 595030753 81553943 738612855 854243215 270237875 162904272 567948101 907095826 24188768 636434256 358401766 683621666 115090276 851829959 913521589 399037712 637657473 592981604 681930584 288873549 328462418 250885472 862177563 315297566 305990981 252962990 210621083 246058339 955501918 836376015 465759767 134801439 47290536 170941326 432089082 554242697 704431513 60017144 966683628 451551269 967417280 686884353 567343883 215289803 862177563 249670598 953882020 232177196 128188331 81337657 153196022 916956968 806664207 509370562 490344724 55108095 610834602 668964848 722768643 790270533 830619816 24089615 630201811 338631458 663670886 983373150 710224239 573480571 190979155 396138845 115090276 984047482 630775839 708094860 954227928 758889515 247841801 382210484 618542887 179991869 921198791 749497174 738855203 962430008 736237188 376448548 572588387 535533605 590208882 630977998 242530683 19911869 286037808 475344103 465697134 835198840 375066210 812044550 457149478 155241439 23262398 514768035 24188768 792822959 488295044 522663253 21190596 587179274 921198791 5299425 23973553 509664709 80415088 786320493 751925989 989729323 366854683 587179274 719307635 674446970 675472009 394791153 601630030 708053570 542382913 925555858 641635851 953267424 757850417 371179314 103669472 711532060 547547687 971549242 527654256 66490779 632014852 516175014 922858580 910818482 650697444 505061211 396050095 299462930 299113502 220576148 660765062 196460706 688577702 630629857 586370291 310726569 633573519 953267424 923927991 140725908 93651148 458290565 448262245 888259120 705548145 568142039 735696627 992169078 247841801 51457589 735696627 699733109 921198791 923715439 23262398 968670974 956815883 568142039 358401766 694954883 115090276 907721720 700560235 56927881 295606018 708053570 681765297 290474734 949084393 420636144 637769046 128450928 539957336 531135820 73848009 338929165 1926282 885000402 577970627 172382592 705548145 581831913 311613451 559957428 136384659 767839638 994877696 995876182 305068796 560623000 900116034 24089615 485153920 960796073 887794841 874297853 412979540 604881661 98824830 403519778 215774690 984050047 950673785 338631458 979740237 812044550 992001870 327773233 305068796 531135820 926044257 249820698 140129038 771803404 201717402 390793037 931640418 968755777 234980621 925555858 109369069 907095826 814295984 702745028 490344724 782533040 514650194 452156279 966683628 960543625 700560235 241184545 721418370 106790696 292972503 48746678 704431513 866568903 900116034 918521256 24188768 568142039 938140278 993091440 43970470 78775552 254203892 509144872 53525809 306597948 757850417 698320352 289918211 925555858 485153920 505061211 591292508 627110568 751925989 602832600 773781000 793291205 296305836 459617527 275202504 249670598 835339516 451521521 814662325 396138845 632014852 285947848 152243323 888259120 846351340 702745028 719307635 885141769 489130642 812414090 247841801 806744033 234980621 793291205 971894015 509144872 115509283 556619020 695599688 698320352 306607837 165821462 780870754 298050322 878442641 916956968 215981255 781246194 247234349 114409323 195957995 597784477 40448245 859168292 926044257 359714925 688577702 587179274 917452919 98231977 586446680 193515742 982416551 764116955 115509283 761330904 138393155 475344103 125829791 912948600 286037808 36265302 177689820 761330904 954677909 413592826 305068796 835212499 746092812 793291205 757815664 306597948 709613471 607760956 292972503 397928982 640925332 778123726 723661847 452156279 56154381 162904272 41538784 604881661 396806189 47529701 93651148 27735709 129724737 975478549 60750487 36265302 503666498 872434540 843005594 505061211 814295984 33511708 485153920 925555858 888699423 170938835 128702236 713146141 778074990 300892929 660765062 858798711 518384931 408032939 83066601 607041944 67700412 388085842 862177563 979750308 363976852 2379379 311613451 829983432 703514531 697742034 247234349 991615550 433686203 592981604 660765062 87392830 293192373 390275103 936312210 175060805 490344724 764459345 538025980 29473993 575895835 613596687 195957995 509144872 754580366 225858850 950497221 452156279 674485068 686884353 950673785 137529801 195957995 964902255 587469038 506178629 740882715 516175014 271484655 276676140 807117750 443960759 975337465 349076114 21190596 887548285 152618584 485063015 328462418 793291205 115509283 448881532 424594759 52243955 109369069 390275103 705548145 852107700 201717402 778123726 809429735 902464469 931640418 776835194 757815664 676975489 632014852 282751746 876263470 829983432 407510599 836376015 922858580 324129364 274113481 478892468 887794841 252962990 885549757 51457589 103733806 616057762 266213579 79509313 769327548 498045048 567343883 213097363 156817178 889608806 154538466 77685914 917795074 296751278 237389399 48746678 681930584 485063015 101231409 496698204 214650974 984050047 760370490 636434256 913521589 727827821 923927991 441621000 610447918 317751260 553368896 668964848 237389399 686884353 286037808 338312978 546679009 5299425 808866527 225858850 115509283 778123726 430284321 979750308 877167702 866337119 135975430 767187616 637657473 543945175 838655651 1736950 650697444 81337657 50241607 369306500 259646582 38085353 911302173 511277493 125829791 754133002 662421393 764459345 816971086 134801439 432089082 858798711 183440003 771803404 685702028 451521521 478351140 140725908 271484655 446968233 721418370 896072909 53525809 885000402 261683638 506178629 780870754 29473993 886149363 737945381 740882715 437743643 93651148 963141978 271484655 570796148 203331888 195733178 315747769 969494113 67700412 808838846 904771946 729868696 695599688 55108095 760370490 478892468 546679009 349644605 585165457 686884353 489130642 5299425 858127225 262406489 610447918 49614749 266213579 20148474 837690635 399037712 275202504 831241130 73848009 557710104 513440742 262406489 617908997 996943901 93478833 764116955 956815883 413592826 840130613 56927881 795549341 789617647 489612980 49614749 850386354 463496366 322974842 522663253 947413305 674446970 211958450 485262404 32075030 590918818 838331644 939725993 559014304 459617527 465697134 170941326 971894015 687055288 945394518 459452716 975337465 991615550 131323888 451521521 590208882 353964006 154538466 55108095 923927991 808614164 567948101 371179314 931013644 248642173 264750083 327773233 736624310 808838846 151364594 729868696 109369069 812414090 190929591 382904427 926044257 35128915 956286779 306597948 538810384 711532060 950673785 782533040 548748527 400178823 296305836 735710261 152243323 334932282 740340897 744008188 151506993 990121035 275202504 128450928 193648030 174862116 67831588 159828635 554222239 965948435 103669472 462394151 363976852 708046990 234980621 334932282 945394518 754133002 595030753 276676140 603931167 287768226 464130920 128450928 432089082 20148474 193648030 338929165 632402794 737945381 247221668 984050047 533864165 971549242 946916156 931005739 840075867 251367294 156817178 400178823 211958450 718980624 518384931 795472528 396743027 49614749 295606018 315343704 514650194 910818482 101231409 688177128 60750487 581831913 10475035 968755777 24188768 963141978 626833449 213097363 396806189 713146141 917795074 165821462 502849508 686884353 623398671 835198840 722768643 307403622 93651148 627110568 572588387 662972501 567343883 981996224 736237188 566125822 401452903 193515742 851400664 29473993 652018277 835212499 740340897 885353274 425392410 79523589 904800517 780061015 1926282 984050047 331638088 889608806 799588075 47349911 211958450 315297566 128702236 806792339 533864165 812414090 722768643 761330904 484158080 456137963 247006479 52243955 420052652 252962990 344620844 687055288 115509283 953267424 806664207 53195413 923927991 170938835 628523361 174335822 586446680 145885851 315747769 559957428 219054502 458290565 722768643 509664709 489130642 942899938 929504680 478892468 128702236 667844649 683406807 390275103 927806038 250832323 431406787 646710523 31215478 667313812 264750083 543945175 918225489 306597948 334299650 179981178 31215478 246058339 975337465 781242822 407510599 509144872 152243323 995876182 803588261 53195413 115509283 629101079 539381059 778123726 332834875 817743547 567343883 757709512 572588387 719601437 480361743 852755974 967417280 337153847 195957995 727827821 533455280 815123402 74587532 175507355 567343883 996943901 72820570 337153847 931966477 656191811 201717402 452156279 585165457 205387898 754580366 35128915 838331644 47529701 547547687 250749017 754580366 443960759 242186770 550322314 462762217 570796148 855636134 117210451 604968568 78775552 563678994 902464469 485153920 571019028 982370833 299462930 289918211 276676140 430284321 174862116 862177563 733642252 783513992 885000402 926044257 334932282 586370291 607041944 295606018 623206361 567774282 638790258 174140940 962430008 540976336 195019158 407091770 560327459 462762217 560327459 710224239 78775552 586446680 349644605 533455280 722013570 448262245 556619020 38844979 682170984 735696627 838803091 746092812 607965234 425392410 1736950 275202504 514768035 600441802 764116955 181668423 750978759 351424753 866337119 806664207 33511708 448262245 829983432 295606018 940381563 696443558 780061015 780870754 106790696 618542887 726620654 304621545 607041944 736237188 448881532 152523810 79523589 67831588 143200457 857535330 891279504 936312210 55108095 32806834 739696834 703490607 963141978 308142020 225771141 38338132 252962990 653201202 87392830 502849508 250749017 954677909 137529801 922858580 361002681 567343883 686335042 650990283 762749463 451817798 522663253 685702028 186244437 190979155 313272965 591292508 186244437 660095934 531333917 696443558 852755974 771321738 971549242 396050095 145885851 542382913 630977998 438183310 328764419 39220584 505061211 93478833 130160246 396806189 531333917 498840912 496698204 39220584 674446970 525347105 721769014 585165457 109054120 922706719 613596687 855636134 764459345 412979540 458290565 428572243 907721720 618542887 795472528 633587956 968670974 126695727 522663253 660095934 38085353 553368896 138442062 206036522 36055646 292149520 859168292 896571061 702745028 215977916 667844649 814662325 174862116 480361743 20148474 850386354 179981178 128188331 829983432 456956861 943793512 696443558 722013570 412979540 531333917 457149478 215289803 152866011 390275103 967417280 746394036 50241607 146573202 931086800 808614164 163769090 662972501 681930584 721769014 917452919 137529801 518384931 249820698 152243323 52243955 109369069 808614164 931086800 970320952 133739154 971549242 457149478 5299425 138393155 448881532 93651148 250749017 455539394 932715562 264750083 744008188 966131311 495854210 887794841 179991869 778074990 382904427 920628541 390793037 190929591 625664180 366854683 29473993 308142020 405444604 992001870 282751746 932584021 256866745 183440003 310726569 598543708 382210484 42657625 509664709 913521589 963141978 40656291 55108095 431406787 187104147 591292508 984050047 637657473 656191811 994877696 10369081 244528344 888259120 600441802 732559957 887794841 628820972 74587532 686884353 922858580 443960759 619842427 215289803 429277230 315297566 876263470 35128915 941586175 962073361 808866527 628820972 328462418 226492467 72820570 994587826 292972503 739696834 82689280 451521521 367026304 587179274 754580366 325554372 604968568 969494113 331638088 896029805 407510599 838803091 723661847 79523589 53525809 708094860 600441802 590918818 10475035 35128915 38844979 556619020 298727845 989729323 911302173 315343704 888699423 989729323 637657473 539035187 715779797 112090095 630201811 604181881 93478833 7807006 425392410 715957434 15037608 560327459 489130642 686884353 917795074 912948600 266213579 79523589 430101007 719601437 292149520 971549242 654830523 757709512 709613471 589760538 375066210 674446970 830619816 33511708 753419354 851829959 786380583 940381563 490344724 527595027 751925989 735891721 40656291 264297813 366854683 509019925 597206610 781246194 548748527 623206361 471393875 625664180 431406787 632378665 886917295 338312978 363976852 775682536 109369069 850484222 548748527 786320493 366854683 887548285 932584021 934824360 193648030 775682536 633573519 870201182 786380583 193515742 430284321 376974209 533864165 737945381 163769090 88335614 876263470 79509313 602396426 582273012 604968568 852107700 568104980 971549242 936312210 152314280 896571061 160287690 780870754 388085842 39220584 136412292 210621083 979750308 242186770 509144872 632014852 509370562 904800517 962430008 38844979 19715614 712346140 285947848 215977916 37275245 266213579 872434540 630775839 66490779 73848009 635302209 610447918 456137963 954227928 37275245 617908997 983373150 824770361 601740259 433686203 572465104 994877696 835212499 550336314 47349911 633573519 938705675 763431295 338312978 809429735 276676140 748408317 48746678 67831588 962430008 261683638 306597948 247006479 63192647 633573519 842970782 768561257 761330904 857535330 128450928 152243323 249670598 704431513 815123402 396050095 10369081 363976852 829983432 430284321 310726569 662421393 313272965 331638088 225858850 125204206 965948435 538810384 403519778 843005594 962073361 776352608 726950461 396743027 522332929 271484655 983113723 375066210 307060809 920721173 361002681 804406873 306597948 803588261 682170984 765027062 87392830 910850066 597784477 78649514 918521256 408395896 241184545 885995802 451551269 630201811 249670598 778074990 859168292 455539394 589760538 103669472 256866745 591292508 526944836 703490607 629101079 151364594 764459345 242028021 463496366 650697444 330205547 363976852 970911538 760370490 288072509 683406807 307060809 13112382 616796881 363976852 7807006 991073887 916956968 532803593 750978759 641635851 382210484 803588261 579757115 163769090 668964848 268759041 601740259 641635851 708046990 211958450 155241439 43970470 288873549 688577702 739696834 722768643 792822959 206036522 485509833 650990283 750978759 927806038 616057762 661321016 971549242 927806038 179981178 719307635 317751260 211958450 193515742 953882020 509019925 626833449 10369081 332834875 495854210 738855203 393120342 422532994 979750308 292696118 514768035 257214051 143200457 145559297 568142039 860377902 702745028 315747769 885353274 966683628 866568903 854969794 27735709 247006479 2076768 514650194 190323279 358401766 446968233 884072178 52243955 946916156 960796073 808866527 7807006 896571061 458290565 915330573 664041213 407510599 449022331 215774690 37275245 136384659 937158597 874124920 641231120 80485362 808614164 633587956 522663253 407629453 852755974 275202504 587179274 40448245 613596687 270237875 56927881 103669472 995876182 109369069 984047482 28363157 978947655 548748527 134971740 247841801 882804101 210621083 858798711 257214051 509019925 545538425 722013570 80485362 590918818 31215478 711532060 630775839 478892468 837690635 55018341 954227928 686335042 94279561 960796073 306607837 780061015 626932919 5299425 126695727 761330904 412979540 990121035 877167702 938080232 601630030 831380531 94279561 577673184 302151126 404152565 292972503 535533605 626932919 781242822 203331888 938456692 751925989 32954995 425392410 981996224 855636134 506178629 214244685 923715439 736237188 390793037 575895835 571019028 299113502 196460706 429277230 808838846 626932919 55108095 949084393 925555858 264408147 51457589 645094664 708046990 743614603 910818482 151506993 256866745 982416551 55018341 538025980 246058339 876263470 539035187 882364001 968670974 888699423 764116955 407510599 750750593 266213579 246221518 269911067 393120342 632014852 925555858 533864165 136412292 77819776 514768035 638516505 349076114 328462418 509019925 358401766 991615550 533455280 36265302 183440003 970911538 956815883 276676140 603931167 726950461 703514531 757709512 765027062 140725908 115090276 325554372 700560235 38085353 417074904 195019158 640849273 573449906 306607837 287239117 478351140 962073361 251188854 179981178 502849508 522332929 206036522 452156279 278160655 968670974 214244685 806792339 650990283 841780337 209789164 573449906 269911067 604881661 855636134 815123402 700560235 165821462 618542887 573449906 211958450 678474526 545538425 667844649 982353486 588034909 40656291 560327459 722768643 175507355 553368896 405444604 396743027 165821462 855636134 983113723 637769046 995876182 525347105 287768226 814295984 885353274 911302173 831380531 971894015 970911538 618542887 393120342 886917295 689757867 628523361 498045048 21190596 313272965 831467447 464444922 979740237 515426984 156817178 393120342 498840912 152314280 788737791 376974209 938140278 495854210 10475035 829614460 802009078 944573659 128702236 522663253 746992914 162904272 539381059 328764419 950673785 775682536 480361743 841780337 931640418 249820698 511330454 942866882 67700412 159828635 940188502 134801439 266213579 24089615 444897967 983113723 407091770 315343704 661321016 526944836 444897967 249670598 47290536 866337119 451817798 889608806 992001870 841210236 637657473 509144872 196106606 793291205 210621083 433921335 843005594 962430008 640925332 686884353 193648030 744008188 424594759 543945175 298727845 36055646 681765297 5299425 619842427 719601437 284588557 891279504 663670886 587179274 196106606 272303478 132556595 938705675 396743027 485509833 700560235 718980624 308142020 841780337 949084393 627110568 177689820 641231120 533864165 276676140 953882020 944573659 94279561 382904427 129724737 152314280 206036522 711532060 946916156 172382592 201717402 27735709 827311105 970320952 430101007 19715614 190929591 160287690 946916156 889608806 326469359 353964006 770864525 884952974 760231333 733642252 838331644 376974209 630201811 446968233 662421393 451521521 131323888 382210484 242186770 604881661 548748527 237172271 650697444 213097363 271484655 134971740 138393155 160287690 214244685 994587826 293192373 36055646 860377902 300892929 293192373 604881661 73848009 98231977 305068796 568142039 293192373 87392830 911302173 993091440 927806038 874297853 554222239 962073361 618542887 887548285 736237188 623206361 361435434 49948206 247234349 2076768 760231333 342116147 196106606 812414090 942999703 592970093 967417280 376974209 21190596 179991869 840130613 218611070 846351340 494336936 93651148 750750593 575023903 841780337 295366548 739696834 967417280 885353274 572588387 163229392 554222239 963141978 982416551 968670974 123073176 152314280 592639233 531135820 471393875 328764419 610834602 764459345 786380583 771803404 538810384 456137963 53525809 441621000 696443558 317751260 177689820 459617527 24188768 53966525 412979540 1736950 126695727 682170984 768561257 215052415 464130920 207844781 663971090 616057762 722768643 646710523 547547687 249670598 950497221 808614164 518384931 841210236 838655651 19911869 681765297 630629857 630201811 616796881 633573519 708046990 745200166 601740259 743614603 511277493 801623766 359859765 946916156 781242822 77819776 689757867 303230482 485063015 422532994 771803404 361435434 187104147 72820570 971549242 533864165 49614749 715779797 885141769 595030753 735891721 13112382 187104147 877088774 47349911 153196022 719601437 50241607 889608806 688577702 887548285 444897967 762749463 488295044 396138845 795549341 27735709 247006479 789617647 773781000 109054120 917795074 647733367 650697444 778123726 305990981 498045048 115090276 780061015 740882715 744008188 152618584 2379379 251042004 66490779 286037808 170938835 590208882 522332929 854969794 314069534 308142020 800460688 203331888 456137963 60750487 620243558 215774690 137529801 586446680 786320493 633573519 664041213 602396426 396138845 652018277 570796148 457149478 449022331 581063820 884952974 296305836 51457589 837690635 854243215 994877696 991615550 234980621 140725908 255644658 252792947 358401766 788118407 604968568 20148474 577970627 808614164 306607837 130160246 719307635 686335042 93478833 315343704 581063820 812044550 949084393 119279869 653201202 342116147 539957336 912948600 64420967 841210236 133739154 53195413 499057158 337153847 946612927 119279869 921198791 891279504 527654256 984047482 428572243 179991869 539957336 307403622 662421393 174862116 760370490 307060809 429277230 939725993 696443558 88335614 518384931 778123726 837690635 581831913 387176309 543945175 428572243 835212499 481894295 735891721 128702236 459617527 31215478 10369081 949084393 902464469 740882715 109054120 650990283 568142039 838655651 378961655 623398671 134801439 967417280 647733367 592639233 443960759 799588075 88335614 214244685 81553943 190979155 851829959 311613451 682170984 931013644 885647994 50241607 526944836 230662076 597784477 56154381 145885851 917795074 175060805 109369069 776835194 546679009 721769014 275202504 371179314 591292508 590918818 650697444 10369081 142903358 983373150 709613471 592970093 140129038 718980624 705304879 433921335 40448245 885353274 575895835 399037712 702364434 7807006 298727845 955730659 600441802 51457589 49317804 650036494 955501918 7807006 703514531 353964006 129724737 836376015 746992914 635302209 660765062 727578179 619842427 165821462 203331888 630629857 862177563 338929165 633587956 446968233 632014852 247822207 311613451 60017144 769327548 307403622 830619816 762749463 703490607 282751746 982416551 360743135 917452919 601740259 602396426 137529801 568104980 262406489 257214051 732245352 471393875 754133002 430088921 968755777 814662325 628820972 451817798 851759377 663971090 776835194 788737791 682170984 462762217 590918818 132556595 324986193 93651148 33511708 835339516 708046990 586370291 953267424 428572243 636434256 125204206 218611070 691982506 573449906 274113481 174335822 778074990 787269565 650990283 858040709 550336314 792822959 151364594 978947655 237389399 620243558 704431513 735710261 770594967 885647994 23973553 699733109 375066210 313272965 904800517 662972501 103669472 852755974 958668995 140725908 703514531 972710252 269911067 923715439 554222239 972710252 931966477 306597948 151506993 387703244 547547687 130160246 602396426 249820698 806664207 938080232 485153920 36265302 219054502 498045048 740340897 852107700 190979155 182214511 567774282 338631458 953882020 885647994 305068796 349076114 43970470 727578179 750563611 19911869 641635851 112090095 587469038 560327459 562773407 53966525 922858580 896072909 630775839 625664180 765027062 687055288 78649514 352092606 954227928 251367294 788737791 629101079 757850417 968755777 237389399 788118407 559014304 32954995 816971086 324986193 181668423 256866745 305990981 727245017 602396426 81337657 321628921 971549242 251188854 749497174 626833449 250749017 884072178 674446970 548748527 195733178 306258744 250832323 814662325 970911538 464130920 810021050 786380583 276676140 429277230 627110568 926045944 195733178 920721173 162904272 585165457 943793512 163769090 630238886 770864525 526944836 420052652 330205547 115509283 314069534 448262245 715957434 190929591 121069546 678884863 79509313 846351340 60017144 846351340 162904272 587469038 485063015 900796599 32954995 247221668 496698204 518384931 727245017 922706719 441621000 270237875 782533040 955501918 251367294 687988023 630629857 550336314 400178823 358401766 781246194 210621083 325554372 366854683 646710523 654830523 509144872 247841801 667844649 710224239 623206361 489130642 616057762 774489082 546141085 748408317 858798711 918225489 850484222 295366548 24089615 681765297 296751278 331638088 38085353 736237188 566554997 770993588 317751260 64420967 630977998 420052652 668964848 152523810 579757115 257214051 686335042 554222239 307403622 215774690 394791153 929504680 193515742 971894015 456137963 795549341 560623000 846351340 636434256 886149363 15903366 562773407 396937914 637769046 732559957 24188768 140551765 292696118 388085842 768561257 237172271 954227928 68748842 771321738 750978759 736237188 854243215 654830523 635302209 801623766 969494113 83066601 138442062 577970627 891279504 485153920 812044550 768561257 505061211 746992914 250832323 760231333 24089615 259646582 317751260 797746066 103219970 956815883 522332929 838655651 130160246 946916156 112390393 809429735 218611070 293192373 963141978 80485362 250832323 559014304 618355033 396743027 638790258 740882715 860708299 893019475 2076768 151506993 179991869 83066601 396138845 15037608 577673184 334299650 697742034 98287438 40131409 893019475 638790258 630775839 943235508 56154381 754133002 546679009 81337657 305990981 205387898 712346140 733642252 64420967 592981604 603931167 939725993 152618584 47349911 926045944 750978759 753419354 514768035 763431295 36055646 503666498 960796073 626833449 708094860 913521589 427184372 824770361 396937914 396743027 852604705 888553258 78775552 430088921 48746678 344620844 790270533 268759041 678474526 128702236 579757115 321628921 51457589 23973553 485063015 457149478 758889515 125829791 396937914 950673785 810021050 24188768 325554372 125204206 20148474 681930584 758889515 186285312 838803091 663670886 324986193 703490607 938705675 904800517 992169078 174140940 943235508 21190596 885353274 354807942 213097363 837690635 841780337 705548145 566554997 946916156 47349911 838655651 866568903 663971090 285947848 660095934 215052415 208625324 718980624 514650194 396138845 214244685 625664180 132556595 506178629 553191189 140725908 151364594 676975489 770594967 635302209 407091770 2575238 103733806 299994808 407510599 310726569 610834602 727578179 203331888 835198840 103733806 174335822 203331888 891279504 831467447 526944836 740882715 310726569 32075030 509019925 266213579 506178629 554222239 607760956 321628921 962073361 74587532 882804101 49317804 145885851 884059813 702745028 247841801 179991869 13112382 590918818 838655651 746394036 568104980 137529801 539957336 311808379 190979155 190323279 722768643 458290565 151506993 376448548 920721173 722013570 746092812 296751278 975337465 167276070 485153920 334211676 215977916 237172271 830619816 995876182 308142020 451521521 266213579 981996224 586370291 382904427 806664207 597784477 663971090 543945175 771321738 20148474 776352608 327773233 488295044 953267424 148087911 581831913 630201811 618355033 215981255 452156279 123073176 19911869 679463383 975478549 257214051 570796148 958668995 795472528 922858580 570796148 32806834 53195413 633573519 241184545 38844979 443960759 478351140 613596687 685702028 938080232 448262245 732559957 428572243 934824360 748408317 175507355 412979540 251367294 67700412 485509833 931086800 38304068 103733806 582273012 128702236 995876182 840075867 713146141 966683628 981996224 991073887 965948435 846351340 577673184 765027062 249820698 151506993 853170454 941586175 781242822 628523361 172894131 920628541 975478549 1926282 458363994 888699423 262406489 93478833 170941326 979740237 56927881 512614298 969494113 590208882 288873549 303230482 907095826 743614603 506919968 292696118 687055288 630201811 145885851 637939784 968755777 551289217 226492467 550336314 81337657 13112382 369306500 757815664 516175014 408395896 196460706 567343883 140725908 650990283 992169078 641635851 19715614 950673785 163229392 41538784 163229392 209789164 983113723 858127225 962430008 703490607 496698204 597206610 754133002 296305836 522663253 979740237 19911869 305990981 737945381 424594759 433921335 128188331 572465104 938140278 121069546 808866527 109054120 430284321 984050047 456956861 708053570 768561257 587179274 712346140 288072509 331638088 420636144 424594759 249670598 969294148 159828635 306258744 636434256 15037608 441621000 49317804 359714925 242186770 68748842 72820570 396937914 955501918 288873549 940188502 388085842 858127225 535533605 709613471 49948206 129724737 36055646 567948101 342116147 532803593 891279504 40448245 872434540 174140940 459617527 753419354 885141769 956286779 509664709 548748527 858040709 940188502 604881661 264750083 970911538 444897967 248642173 577970627 451551269 994877696 852604705 940188502 462394151 572588387 48746678 142903358 485063015 954227928 664041213 255644658 793291205 886149363 485262404 264408147 463496366 540976336 20148474 769327548 732559957 807117750 79523589 979740237 667313812 67831588 942866882 546679009 283321520 326469359 413592826 760370490 616057762 967417280 300892929 851400664 241184545 266213579 907721720 638516505 119279869 135975430 539035187 753419354 992169078 645094664 667313812 98824830 788118407 722768643 918521256 286037808 63192647 814295984 579757115 152523810 531135820 251042004 573449906 562773407 735891721 498840912 509144872 354807942 582273012 748408317 246221518 888699423 960543625 456956861 689757867 746992914 918521256 292149520 850484222 485153920 249670598 142903358 896029805 430284321 2575238 502849508 788118407 748408317 767187616 80415088 607760956 885995802 713146141 904771946 682170984 299113502 49614749 128702236 938705675 196106606 989729323 640849273 175060805 567774282 942866882 407510599 570796148 675472009 842970782 884072178 359714925 786380583 205387898 292972503 806744033 835339516 601740259 545538425 646710523 208625324 390793037 77819776 334211676 966131311 195733178 131323888 646710523 293192373 687055288 211958450 792846009 190929591 581831913 456956861 577673184 247841801 965948435 663670886 310726569 546679009 697742034 920721173 884952974 876263470 397928982 786380583 836376015 770594967 79523589 931966477 138442062 931640418 209497607 215792516 248642173 29069209 884952974 546679009 338312978 247234349 885647994 237389399 853170454 583924389 451521521 115509283 119279869 553368896 514768035 567774282 989729323 109369069 852604705 156817178 764459345 215774690 130160246 926044257 193515742 525347105 109054120 234980621 145885851 128188331 193515742 334299650 726950461 971894015 396632533 32806834 342116147 28363157 49614749 430101007 505061211 148087911 647733367 554222239 554242697 247221668 715957434 183440003 313272965 47290536 907095826 941586175 535533605 685702028 443960759 540394532 48746678 488295044 155241439 597206610 581831913 43970470 485063015 585165457 103219970 587469038 249820698 457149478 708094860 539381059 496698204 886149363 10369081 420052652 787269565 840130613 531135820 921198791 527595027 953882020 264297813 328462418 592970093 334299650 449022331 653201202 754133002 152243323 732559957 133739154 63192647 900796599 589760538 284588557 256866745 882364001 24089615 966683628 117210451 278160655 287239117 715779797 604181881 145559297 40131409 152618584 719601437 264408147 630238886 950497221 342116147 438183310 79509313 967417280 349644605 559014304 250885472 98287438 338929165 292696118 667313812 618542887 624819674 778074990 543865019 456956861 285947848 922706719 838803091 760231333 140725908 610447918 511277493 801623766 559957428 42657625 237172271 540976336 841780337 306258744 195019158 577970627 992169078 481894295 249820698 926045944 160287690 23262398 761330904 660765062 182214511 854969794 618355033 234980621 505061211 109369069 325554372 315747769 223299794 722768643 940381563 992001870 146573202 966683628 781242822 619842427 267829614 193648030 983373150 344876805 134971740 484158080 566554997 271484655 2575238 831467447 134971740 430101007 182214511 21190596 727578179 214650974 437743643 946916156 979750308 295606018 218611070 247841801 38304068 74587532 443960759 489130642 248642173 32075030 494336936 969294148 506919968 480361743 463496366 633573519 338312978 971894015 179981178 305990981 179981178 525347105 81337657 586370291 170938835 801623766 970320952 808866527 607760956 422532994 841210236 196106606 400218902 598426014 721769014 152243323 182214511 547547687 213097363 838331644 262406489 269911067 266583970 464130920 376448548 610834602 938705675 900796599 888259120 884072178 641231120 663670886 800460688 251042004 307060809 577970627 394791153 31615284 943793512 736237188 40131409 931966477 792846009 499057158 630629857 67700412 938705675 757850417 749497174 462762217 996943901 776820092 727245017 83066601 146573202 328462418 746394036 162062292 588034909 305990981 623206361 982353486 420636144 688534928 112090095 242028021 764459345 738855203 891279504 950673785 53195413 688577702 885000402 284588557 382210484 464130920 112390393 109369069 970320952 572588387 746394036 857535330 159828635 274113481 215289803 275202504 885353274 712346140 683621666 490344724 754133002 448262245 371179314 295606018 250885472 131323888 885353274 838331644 702745028 840075867 187104147 542382913 1736950 151506993 327773233 702364434 420636144 679463383 35128915 661321016 851759377 857535330 726620654 40448245 815123402 563678994 955730659 945394518 925555858 640849273 516175014 513440742 991615550 438183310 667313812 637939784 744008188 47290536 902464469 219054502 629101079 247234349 943793512 700560235 854243215 259646582 548964093 797746066 452156279 186285312 390275103 326469359 29473993 208625324 531135820 142903358 138442062 254203892 854243215 650697444 808838846 138393155 505061211 429277230 678474526 661321016 884952974 210621083 163229392 203331888 27735709 840075867 522332929 953882020 400218902 637769046 56927881 308142020 130160246 540394532 55108095 275349681 838803091 950673785 636434256 915330573 787269565 633587956 789617647 545538425 249670598 98287438 750978759 140129038 172382592 920628541 324986193 562773407 781246194 932584021 733642252 293192373 810021050 28363157 48746678 247006479 969494113 498840912 630977998 465759767 509144872 746992914 299462930 151364594 548964093 583924389 195019158 688534928 627110568 40656291 874297853 533455280 627110568 967417280 737945381 637769046 997329398 244528344 932715562 201717402 632378665 876868627 307403622 53226850 597784477 269911067 624819674 570764323 812414090 876868627 850484222 617908997 388085842 215774690 944573659 864016134 55018341 10475035 250749017 661321016 708094860 757850417 283321520 351424753 452156279 945394518 498045048 103733806 267829614 304621545 548964093 554222239 109054120 795549341 376448548 760370490 993091440 783513992 896029805 860477160 858040709 553191189 252792947 710224239 698320352 681930584 136412292 489612980 220576148 181668423 570796148 242186770 592970093 513440742 546141085 799588075 299994808 109369069 630977998 234980621 282751746 946916156 172894131 132556595 764459345 554222239 806744033 546679009 910818482 38844979 290474734 358401766 443960759 40656291 808614164 954677909 324986193 858127225 667313812 396743027 136412292 464130920 727827821 900796599 632378665 228290502 404152565 6720560 458363994 736624310 186244437 289736829 360743135 757815664 559957428 814662325 458156391 723661847 56927881 462762217 371179314 920628541 32954995 563678994 488788762 363976852 623206361 876263470 288072509 769327548 972710252 768561257 225858850 702364434 934824360 215774690 953267424 886917295 535533605 674485068 683621666 74587532 232177196 746092812 250885472 920628541 55018341 103669472 506919968 975337465 352092606 433686203 733642252 595030753 4519262 598426014 729868696 190929591 371179314 407510599 394791153 518384931 942899938 662421393 815123402 860377902 831241130 900116034 866337119 760231333 55018341 691982506 808614164 195957995 145885851 420052652 451551269 743614603 287239117 425392410 193515742 464130920 250832323 264408147 52243955 586446680 2076768 82689280 140551765 154538466 527595027 78649514 36055646 206036522 53195413 196106606 931005739 542382913 330274784 575895835 299994808 538025980 249670598 893019475 78775552 251188854 907095826 882364001 969494113 24188768 697742034 228290502 128450928 929504680 729868696 438183310 817743547 685702028 298050322 743614603 155241439 915330573 36265302 456956861 334932282 244528344 629101079 215792516 815123402 28363157 960796073 432089082 694954883 675472009 697742034 196106606 78775552 53525809 475344103 275202504 19911869 887794841 174335822 780870754 360743135 257214051 647733367 298727845 635302209 954677909 226492467 788737791 262406489 795549341 514768035 332834875 145885851 954227928 885647994 145559297 907095826 315747769 698320352 753419354 324129364 40656291 854243215 547547687 852755974 581063820 719601437 140129038 463496366 788737791 196460706 746092812 172894131 854902633 306597948 247006479 767187616 874124920 726950461 152243323 841780337 920628541 352092606 99294732 287239117 244528344 390793037 626833449 509664709 13112382 232177196 424594759 328764419 563678994 433921335 407510599 601740259 586446680 554242697 10475035 27735709 151506993 174862116 932584021 623206361 420052652 978947655 41538784 718980624 228290502 162904272 592639233 485262404 660765062 451551269 274113481 981996224 42657625 601740259 722768643 393120342 975337465 413592826 640925332 509144872 630201811 306597948 966683628 437743643 481894295 938456692 663670886 721769014 489130642 193515742 275202504 550322314 103733806 866337119 289736829 885000402 98287438 535533605 28363157 288072509 123073176 689757867 257214051 38085353 407629453 686335042 771321738 299462930 745200166 287239117 809429735 543945175 533864165 81553943 464130920 750750593 926044257 943793512 920721173 223299794 424594759 964902255 465759767 522663253 645094664 488788762 344620844 287239117 581063820 624819674 630201811 733642252 538025980 424974082 982370833 78775552 396806189 448881532 763431295 953267424 709613471 376448548 152618584 160287690 254203892 989729323 814662325 983373150 610447918 582273012 603931167 597784477 53226850 923715439 598543708 994587826 704431513 114409323 837690635 359714925 862177563 167276070 936312210 15903366 754580366 910818482 769327548 757709512 598426014 817743547 645094664 767839638 13112382 509370562 862254110 632378665 153196022 806792339 954677909 955730659 448262245 699230813 154538466 577673184 367026304 209497607 480361743 735891721 776820092 789617647 768561257 688177128 292972503 360743135 736624310 522332929 202477791 889608806 132556595 762749463 50241607 592970093 424594759 390793037 545538425 942866882 261683638 715957434 41538784 51457589 115090276 458290565 757850417 984047482 438183310 983373150 512614298 907095826 488295044 382904427 10475035 613596687 417074904 592981604 637657473 152314280 43970470 792822959 563678994 836376015 489130642 636434256 438183310 53195413 936312210 325554372 592639233 968670974 567774282 664041213 858127225 167276070 93478833 485262404 271484655 51457589 266213579 330274784 148087911 328764419 308142020 218611070 80485362 628820972 637939784 597784477 292696118 36055646 590208882 145885851 98824830 662972501 617908997 267829614 695599688 729868696 38844979 247822207 917452919 970911538 40656291 382210484 754580366 601740259 587469038 462394151 152523810 708094860 43970470 570796148 193648030 79509313 745200166 458290565 154538466 53966525 456956861 960543625 878442641 433921335 926045944 506178629 837690635 727578179 292696118 889608806 78649514 527595027 465697134 56927881 746992914 408032939 770864525 288873549 956286779 937158597 918225489 727578179 776820092 997329398 920721173 588034909 893019475 527595027 738612855 136412292 401452903 944573659 53226850 20148474 278160655 757709512 650990283 337153847 255644658 77685914 745200166 162904272 663670886 970320952 949084393 24089615 740340897 789617647 548748527 775682536 637939784 577673184 570764323 79523589 550336314 625664180 633573519 625664180 215981255 376448548 723661847 632378665 433686203 628820972 286037808 196460706 533864165 247822207 148087911 650036494 451817798 246221518 572588387 437743643 843005594 282751746 887794841 311808379 703514531 152314280 884072178 790270533 911302173 686884353 215774690 910818482 247221668 252962990 412979540 78775552 917795074 215052415 604968568 376448548 887794841 916956968 53525809 371179314 553368896 338631458 922706719 313272965 685702028 984050047 814295984 462394151 638516505 456137963 590208882 464444922 705548145 792846009 966131311 885000402 780870754 299462930 831467447 36055646 457149478 993091440 492009082 698320352 328462418 77685914 617908997 702745028 82689280 918521256 289918211 315343704 532803593 993091440 695599688 761330904 678884863 688177128 177689820 250832323 387176309 399037712 266213579 994587826 215792516 338312978 915330573 252962990 98824830 40131409 830619816 215289803 923927991 891279504 722768643 495854210 722768643 960543625 922858580 66490779 838655651 737945381 575895835 458290565 640849273 735891721 13112382 79523589 862177563 579757115 696443558 424974082 862254110 618355033 931966477 98231977 910850066 79523589 746992914 972710252 230662076 175060805 82689280 726620654 583924389 607041944 920628541 761330904 407091770 10369081 305990981 656191811 797746066 726950461 854902633 815123402 299113502 682170984 302151126 874297853 257214051 918521256 814662325 939725993 269911067 456137963 306258744 290474734 746092812 762749463 745200166 359714925 292696118 632378665 228290502 806792339 303230482 960796073 284588557 361002681 931086800 902464469 407091770 396632533 115090276 836376015 888553258 788118407 542382913 463496366 688534928 462394151 257214051 175060805 911302173 790270533 770993588 109054120 195957995 993091440 148087911 694954883 305990981 172382592 538810384 32954995 98287438 635302209 547547687 264297813 738855203 866337119 306607837 943793512 42657625 963141978 563678994 172382592 603931167 790270533 21190596 220576148 803588261 842970782 49317804 932715562 94279561 543865019 877167702 507016471 705304879 874297853 298727845 543865019 344620844 689757867 208625324 735710261 802009078 744008188 438183310 464444922 488295044 353964006 115090276 907095826 208625324 732559957 900796599 112090095 888699423 938080232 47290536 943235508 186285312 509144872 254203892 674446970 332834875 24089615 710224239 272303478 83066601 674446970 553191189 806792339 489612980 694954883 975337465 727827821 251188854 546141085 904800517 35128915 43970470 325554372 982353486 441621000 681930584 687055288 885995802 607965234 628523361 589760538 618542887 971549242 831467447 79509313 448262245 963141978 489130642 727245017 858127225 556619020 23262398 112390393 786380583 315343704 234980621 582273012 275202504 138442062 499057158 775682536 354807942 764116955 641635851 885141769 994877696 829614460 797746066 943793512 244528344 205387898 503666498 396138845 264408147 896029805 518384931 520071928 922858580 548964093 850386354 282751746 786380583 722013570 770594967 256866745 326469359 884952974 954677909 620243558 885549757 451551269 851400664 934824360 855636134 252792947 125829791 140551765 802009078 98231977 115509283 338312978 874124920 535533605 941586175 81337657 186285312 252962990 41538784 812044550 795549341 49614749 590208882 117210451 72820570 938456692 251042004 338312978 125204206 592981604 489130642 256866745 595030753 888259120 757850417 49614749 93651148 241184545 955501918 371179314 275202504 852604705 251042004 63192647 843005594 52243955 567343883 570796148 814295984 577673184 723661847 775682536 538025980 602832600 425392410 190323279 751925989 488788762 457149478 136412292 808866527 464444922 148087911 620243558 554222239 853903669 927806038 543945175 936312210 831380531 539381059 554242697 424594759 647733367 715779797 943793512 21190596 978947655 247221668 767839638 568104980 543945175 533455280 776835194 685702028 338312978 641635851 573480571 768561257 506178629 430088921 588034909 838331644 509664709 768561257 851829959 654830523 938456692 162062292 971549242 266213579 2379379 760231333 327773233 626932919 306597948 408395896 167276070 748408317 496698204 24188768 190323279 685702028 806792339 838331644 78775552 931086800 579757115 209789164 109054120 295606018 744008188 652018277 815123402 28363157 778123726 38338132 764459345 278160655 732245352 186285312 792846009 904771946 944573659 770594967 196460706 82689280 970911538 67831588 371179314 840075867 2379379 154538466 359714925 284588557 390275103 851400664 163229392 101231409 711532060 705548145 266583970 575023903 459452716 788737791 174335822 652018277 19715614 202477791 376448548 305068796 638790258 219054502 750978759 656623172 498045048 296305836 353964006 438183310 382210484 306607837 697742034 32806834 607041944 551289217 764116955 396743027 808614164 840130613 299462930 407510599 607965234 29069209 581831913 73848009 399037712 740340897 498045048 783513992 560623000 575023903 195733178 804406873 573449906 858127225 983373150 583924389 683621666 539957336 806744033 56154381 851759377 64420967 678474526 542382913 788118407 28363157 400218902 465759767 369306500 877088774 400218902 816971086 371179314 991073887 812044550 695599688 601740259 125829791 195019158 214650974 117210451 786380583 36055646 802009078 250749017 846351340 983113723 83066601 248642173 992001870 735891721 42657625 771803404 43970470 2076768 630201811 475344103 654830523 771803404 306258744 515426984 177689820 413592826 830619816 103219970 322974842 352092606 696443558 36265302 401452903 137529801 860477160 750750593 128188331 762749463 13112382 990121035 958668995 831241130 927806038 543865019 268759041 960796073 126695727 854243215 581063820 852755974 923927991 787269565 641635851 852107700 920628541 641231120 862177563 2379379 956815883 264297813 219054502 452156279 619842427 764459345 484158080 647733367 696443558 989729323 804406873 299462930 298727845 776835194 738612855 349076114 663670886 907721720 431406787 249820698 321628921 981996224 73848009 463496366 326469359 674446970 289918211 179991869 457149478 1736950 567948101 620243558 142903358 174335822 407091770 248642173 23973553 226492467 101231409 361002681 181668423 969494113 778074990 620243558 681930584 990121035 93478833 795472528 548748527 782533040 945394518 317751260 215774690 334211676 93478833 852755974 654830523 754133002 215977916 792822959 992001870 109054120 15037608 739696834 949084393 889608806 456956861 713146141 136384659 632378665 286037808 727578179 50241607 459617527 918225489 896029805 490344724 328764419 942999703 32954995 162062292 601740259 219054502 215289803 750563611 620243558 247006479 535533605 407629453 902464469 163769090 527595027 705304879 573449906 776820092 662972501 950673785 592970093 640849273 140551765 53226850 713146141 757815664 218611070 975337465 896029805 738612855 764459345 128188331 264297813 290117216 971549242 770594967 641231120 251042004 433921335 471393875 708053570 115090276 829983432 322974842 589760538 152523810 616057762 247841801 138442062 572588387 328764419 882364001 775682536 687988023 134971740 700560235 47529701 93478833 835212499 712346140 360743135 663670886 288072509 13112382 249820698 518384931 459617527 595030753 459617527 991073887 636434256 587469038 762749463 770594967 624819674 846351340 835212499 776352608 579757115 918225489 119279869 675472009 726620654 753419354 98231977 602396426 394791153 567948101 589760538 626833449 884952974 653201202 550322314 738855203 750978759 979740237 103219970 637657473 509019925 575023903 656191811 296305836 727827821 786380583 787269565 163769090 162904272 444897967 285947848 451817798 405444604 311613451 223299794 195957995 588034909 804406873 462394151 806664207 179991869 56154381 632378665 705548145 592981604 21190596 646710523 109369069 282751746 41538784 851759377 278160655 789617647 918225489 485063015 702364434 172382592 539957336 859168292 38338132 638790258 269911067 925555858 855636134 733642252 654830523 566554997 799588075 140725908 949084393 662972501 806664207 676975489 885995802 226492467 723661847 485509833 949084393 145885851 289736829 324986193 570764323 573480571 654830523 382904427 602396426 835198840 780870754 134971740 183440003 782533040 590208882 361002681 525347105 972710252 83066601 891279504 770864525 726620654 886917295 571019028 215792516 831380531 417074904 325554372 540394532 449022331 237389399 2379379 633573519 632378665 540976336 313272965 289736829 735710261 132556595 955730659 956815883 697742034 904771946 754133002 705548145 128450928 837690635 106790696 598426014 137529801 846351340 884952974 553191189 841780337 570764323 664041213 776820092 550322314 547547687 324986193 489130642 451551269 837690635 568142039 332834875 887548285 513440742 781242822 266213579 859168292 681930584 931005739 893019475 806792339 203331888 694954883 251042004 647733367 438183310 35128915 602396426 851829959 801623766 557710104 196106606 579757115 850386354 352092606 109369069 851759377 920721173 459452716 931086800 938080232 904771946 459617527 745200166 727578179 210621083 882804101 931086800 112390393 553368896 708053570 765027062 79523589 831467447 676975489 917795074 7807006 587469038 722013570 422532994 531333917 135975430 241184545 799588075 989729323 807117750 851829959 94279561 891279504 38338132 557710104 884072178 778123726 174140940 990121035 722768643 548964093 949084393 163229392 700560235 983113723 942999703 955730659 874124920 790270533 888699423 887548285 746992914 613596687 809429735 451521521 266213579 566125822 115090276 860708299 703490607 317751260 553368896 744008188 824770361 910818482 911302173 175060805 174140940 874297853 877167702 676975489 719307635 20148474 888699423 287239117 190979155 359859765 151506993 708094860 598543708 568142039 64420967 307060809 152618584 172382592 115090276 694954883 103733806 106790696 746092812 902464469 763431295 632378665 31615284 792846009 203331888 713146141 290117216 962430008 471393875 515426984 931086800 160287690 117931902 560327459 966683628 165821462 862177563 451551269 366854683 252792947 202477791 420636144 125204206 923715439 563678994 646710523 661321016 646710523 126695727 448881532 577970627 446968233 715779797 247822207 591292508 458156391 591292508 689757867 679463383 939725993 918225489 359859765 709613471 506919968 598426014 884952974 886149363 715957434 683406807 646710523 43970470 579757115 23262398 527595027 610447918 887548285 656623172 140725908 946612927 390275103 451817798 767839638 177689820 885000402 966683628 19715614 190979155 218611070 93478833 678474526 884072178 852604705 315747769 618355033 876263470 931005739 703490607 754133002 956286779 390275103 618542887 688177128 946916156 866337119 982353486 687055288 923927991 249670598 292696118 702745028 809429735 68748842 679463383 2379379 201717402 167276070 797746066 887548285 700560235 315297566 638516505 388085842 703514531 647733367 525347105 969494113 408395896 5299425 736237188 885000402 864016134 739696834 293192373 306597948 211958450 866337119 780870754 806792339 451817798 638790258 321628921 103219970 303230482 387703244 269911067 735891721 331638088 853903669 797746066 225771141 640849273 496698204 705304879 568142039 275349681 252792947 431406787 708053570 156817178 831241130 311613451 776835194 920721173 371179314 129724737 247822207 860377902 337153847 128702236 207442482 367026304 252962990 601630030 711532060 860377902 378961655 940188502 787269565 688577702 408032939 266213579 896029805 604968568 288072509 328462418 607041944 843005594 393120342 913521589 884952974 29069209 810021050 590208882 994587826 354807942 146573202 484158080 250832323 862254110 746394036 257214051 866568903 304621545 299462930 745200166 851829959 201717402 195019158 885549757 223299794 481894295 371179314 23262398 359714925 763431295 678474526 103733806 283321520 946916156 338312978 958668995 746394036 953882020 140725908 788737791 299994808 247841801 330274784 575895835 88335614 407629453 607041944 295606018 167276070 956286779 226492467 138393155 249670598 586446680 48746678 931640418 10369081 247221668 288873549 321628921 155241439 736237188 792846009 808866527 53966525 929504680 448881532 754580366 735710261 837690635 944573659 770864525 664041213 656623172 213097363 827311105 718980624 215792516 835212499 502849508 396632533 788737791 424974082 583924389 155241439 296305836 674446970 154538466 683621666 994877696 771803404 40656291 134801439 760370490 485063015 587469038 750750593 855636134 328764419 361435434 485262404 846351340 735710261 851400664 47349911 736237188 810021050 630775839 282751746 663971090 858798711 746092812 960543625 254203892 155241439 838655651 196460706 261683638 896072909 484158080 68748842 209789164 535533605 131323888 427184372 38338132 324129364 247841801 630238886 274113481 32954995 422532994 885000402 264750083 390793037 592639233 829614460 851400664 145885851 633573519 223299794 632402794 618355033 129724737 932715562 857535330 2379379 886149363 285947848 126695727 264297813 284588557 68748842 640849273 179991869 637769046 106790696 788737791 81553943 183440003 458156391 572588387 252962990 982416551 264100442 545538425 732245352 900116034 218611070 799588075 732245352 929504680 174862116 53226850 330205547 247841801 590918818 751925989 662972501 242530683 35128915 911302173 130160246 478351140 746394036 247234349 382904427 967417280 35128915 979740237 934824360 206036522 676975489 920628541 616796881 358401766 252792947 992001870 624819674 654830523 20148474 163769090 424974082 40448245 662972501 428572243 459452716 854969794 232177196 464130920 328764419 913521589 282751746 710224239 662972501 275349681 590918818 38338132 771803404 740882715 858040709 709613471 60017144 936312210 910818482 630201811 397928982 776820092 992169078 931966477 390793037 321628921 996943901 186285312 764116955 877088774 215052415 64420967 859168292 923927991 47529701 322974842 577673184 597206610 664041213 687988023 806792339 746092812 925555858 162062292 458156391 296305836 851829959 154538466 810021050 994877696 313272965 478351140 285947848 652018277 968755777 533864165 789617647 746992914 388085842 40448245 852107700 289918211 456137963 41538784 285947848 886149363 7807006 776352608 463496366 929504680 53966525 591292508 163229392 583924389 338631458 186285312 119279869 877088774 934824360 214650974 369306500 15037608 215052415 527654256 478892468 542382913 668964848 940188502 968755777 315747769 337153847 444897967 52243955 215774690 315343704 305068796 557710104 679463383 388085842 94279561 485063015 292149520 638790258 456956861 560623000 850386354 896029805 888553258 390275103 887794841 708053570 630201811 711532060 132556595 458156391 367026304 735891721 736237188 896029805 770864525 152314280 712346140 134801439 683406807 866337119 23973553 179981178 630775839 165821462 886149363 853170454 626833449 570796148 455539394 134971740 679463383 81337657 570764323 262406489 797746066 112390393 407629453 750750593 322974842 170938835 275349681 7807006 591292508 35128915 797746066 209497607 396806189 781242822 619842427 853903669 1926282 15903366 94279561 186244437 958668995 984050047 302151126 315343704 430088921 195019158 936312210 117210451 214650974 112090095 181668423 764116955 913521589 382904427 115509283 511277493 640925332 338929165 513440742 55108095 769327548 546141085 956815883 912948600 780870754 276676140 568104980 729868696 979740237 15903366 778074990 733642252 23262398 408032939 471393875 4519262 577970627 750750593 780870754 800460688 244528344 361002681 269911067 397928982 366854683 718980624 94279561 249820698 502849508 272303478 567948101 186244437 268759041 175060805 242028021 841210236 264750083 24089615 209789164 726950461 326469359 597784477 770594967 330205547 814662325 155241439 286037808 446968233 675472009 443960759 219054502 984050047 738855203 853903669 540976336 566125822 299113502 686335042 610447918 433921335 702364434 296751278 982370833 446968233 15037608 831380531 926045944 527595027 715779797 623206361 448262245 451551269 532803593 896029805 123073176 694954883 133739154 853170454 931086800 209497607 480361743 288873549 151364594 674446970 6720560 247822207 548748527 342116147 783513992 686884353 887794841 962073361 10475035 272303478 757850417 459617527 103733806 790270533 292972503 750978759 247006479 582273012 633573519 733642252 736237188 249820698 128188331 994587826 572588387 10369081 827311105 970911538 770993588 496698204 358401766 369306500 722768643 721769014 303230482 382904427 768561257 778123726 877088774 205387898 132556595 656191811 1926282 81337657 361435434 842970782 567774282 172382592 438183310 992169078 50241607 397928982 433686203 625664180 266213579 831380531 125829791 902464469 877167702 842970782 888553258 327773233 586446680 167276070 138393155 831241130 93651148 48746678 896571061 399037712 242028021 53966525 923927991 788118407 215774690 55108095 129724737 232177196 47290536 264100442 278160655 393120342 525347105 408032939 481894295 413592826 966131311 579757115 915330573 851759377 598426014 699230813 152243323 496698204 502849508 711455867 886149363 140551765 931013644 36055646 660095934 554242697 804406873 762749463 551289217 387703244 290117216 938456692 465697134 109054120 966683628 858798711 268759041 288873549 553368896 218611070 956286779 708094860 422532994 376448548 163769090 215289803 38338132 349644605 956815883 290474734 73848009 324986193 201717402 874297853 803588261 78775552 525347105 288873549 162062292 678474526 40448245 808838846 922858580 812414090 492009082 754133002 13112382 727827821 949084393 296751278 77819776 448881532 604968568 314069534 922858580 836376015 617908997 505061211 575023903 539035187 626833449 761330904 306258744 160287690 228290502 618355033 38844979 573480571 430088921 378961655 28363157 515426984 650990283 382210484 242530683 342116147 396050095 568142039 745200166 47349911 42657625 891279504 783513992 448881532 568104980 993091440 289736829 330274784 478351140 403519778 946916156 287239117 715779797 248642173 705304879 835212499 860477160 942899938 904800517 786320493 103669472 81553943 367026304 718980624 947413305 885141769 971894015 793291205 422532994 733642252 129724737 300892929 553191189 163229392 735696627 812414090 295606018 220576148 681930584 334211676 527654256 506919968 228290502 443960759 904800517 400178823 922706719 404152565 488295044 15903366 656623172 400218902 361435434 49614749 128702236 788118407 660765062 996943901 82689280 836376015 760370490 207442482 705548145 711532060 904800517 143200457 152523810 587179274 344876805 978947655 28363157 676975489 29069209 604881661 929504680 388085842 954677909 597784477 575895835 287239117 80415088 485063015 289918211 711532060 776352608 396138845 502849508 983113723 32075030 195019158 162062292 604181881 592639233 733642252 103733806 458156391 645094664 560327459 306607837 686335042 237389399 902464469 311613451 630977998 783513992 330274784 219054502 514768035 722768643 560623000 678884863 750750593 626932919 37275245 328462418 650036494 228290502 103219970 674485068 938705675 270237875 697742034 278160655 51457589 760370490 776835194 591292508 187104147 21190596 938456692 705548145 587179274 433686203 330205547 407091770 838803091 630775839 452156279 193648030 137529801 738612855 128450928 854969794 568142039 637769046 327773233 193648030 749497174 776352608 711532060 154538466 990121035 152618584 996943901 286037808 667313812 860377902 485262404 432089082 186244437 511330454 509370562 864016134 944573659 542382913 589760538 743614603 754133002 932584021 630977998 888699423 190323279 15037608 36055646 462762217 509664709 585165457 359859765 290117216 592981604 465759767 53966525 773781000 812414090 131323888 405444604 214244685 167276070 884072178 719601437 274113481 325554372 577970627 744008188 103669472 636434256 835339516 376974209 73848009 592970093 183440003 829983432 600441802 953267424 326469359 311808379 132556595 554242697 465697134 969494113 83066601 960543625 831467447 475344103 746992914 713146141 24188768 79523589 910850066 815123402 181668423 889608806 29069209 841780337 921198791 975478549 489612980 77685914 746992914 719601437 955501918 88335614 23973553 2575238 334299650 338312978 295366548 806792339 93478833 682170984 804406873 396632533 920628541 630629857 23262398 478892468 864016134 853170454 278160655 972710252 214650974 103219970 292972503 995876182 955501918 330274784 228290502 163229392 926044257 165821462 553368896 103219970 464130920 996943901 911302173 858040709 705548145 495854210 719307635 330205547 135975430 251367294 876263470 396632533 412979540 668964848 553368896 780061015 922858580 315343704 430101007 884952974 656623172 290474734 328462418 859168292 478351140 33511708 101231409 448881532